Thad House
938d5379e6
Adds command examples to built examples ( #1062 )
2018-05-15 23:56:03 -07:00
Peter Johnson
7cd15aa049
Re-enable JsonIteratorObjectTest.KeyValue.
2018-05-15 22:31:35 -07:00
Peter Johnson
f8ed48af98
Update json from upstream version 3.1.2.
...
This adds support for ubjson and makes a number of bugfixes.
Binary input and output have switched from strings to uint8_t arrays.
2018-05-15 22:31:35 -07:00
Peter Johnson
c274d1790f
StringRef: Add comparison operators against const char*.
2018-05-15 22:31:35 -07:00
Peter Johnson
6699f86361
Make most StringRef functions noexcept.
2018-05-15 22:31:35 -07:00
Peter Johnson
c2b1ed3edd
ArrayRef: Add value_type typedef like std containers.
2018-05-15 22:31:35 -07:00
Peter Johnson
2c27ad073a
raw_istream enhancements.
2018-05-15 22:31:35 -07:00
Peter Johnson
31bb55c319
Add std::vector and unsigned variants of raw_ostream.
2018-05-15 22:31:35 -07:00
Peter Johnson
dd4230d743
StringMap: Add decrement operations to iterator.
2018-05-15 22:31:35 -07:00
Thad House
cff475c1fc
Moves C++ templates and examples to match gradle setup ( #1065 )
2018-05-15 21:25:24 -07:00
Thad House
d564e19ef3
Only prints the debug binary message once per build ( #1066 )
2018-05-15 21:24:44 -07:00
Thad House
1d6eb629ad
Adds Objective C++ Build capabilities to cscore mac ( #1029 )
2018-05-14 19:34:26 -07:00
Thad House
406e18663d
Switches NotifyListenerVector to SmallVector ( #1004 )
2018-05-14 18:17:34 -07:00
Thad House
ab70220ecf
Makes SPI edge changes more obvious ( #1056 )
...
Rising and Falling mean the opposite when active is set high vs low. Leading and trailing makes much more sense.
Closes #925
2018-05-14 18:16:36 -07:00
Thad House
560123ab7d
Fixes command folder name in templates.json ( #1061 )
2018-05-14 00:19:47 -07:00
Thad House
4e1964156e
Removes 32 bit configs for linux and mac. ( #1060 )
...
For mac, 32 bit will never be supported. Apple has dropped all support.
For 32 bit linux, vscode explicitly does not support it, and it is difficult to find anybody using a 32 bit os.
2018-05-13 23:27:44 -07:00
Tyler Veness
5ff3d837b6
Fix compilation with GCC 8 ( #1051 )
...
The anonymous namespace was renamed due to -Wsubobject-linkage complaining
about a field created in a GTest template class (CborRoundtripTestParam)
being defined in an anonymous namespace. See
https://stackoverflow.com/a/37723265 .
2018-05-13 23:11:13 -07:00
Thad House
74d7107ac6
Add AppVeyor Build Support ( #1013 )
2018-05-13 22:23:35 -07:00
Thad House
e21a246a4d
Make the HAL self initialize when ever any initialization function is called ( #1012 )
2018-05-13 22:02:47 -07:00
Thad House
59a8e9da57
Fixes gradle wpilibj classpath for editors ( #1047 )
2018-05-13 22:00:56 -07:00
Thad House
795c60da01
Adds a testCpp task to all projects ( #1014 )
2018-05-13 22:00:36 -07:00
Thad House
f3db329115
Enables MyRobot project ( #1028 )
2018-05-13 22:00:15 -07:00
Thad House
f07799c67b
Disables unstable and failing unit tests ( #1057 )
2018-05-13 21:59:45 -07:00
Thad House
eec4f53a65
Forces CRLF files to LF ( #1054 )
2018-05-13 19:37:20 -07:00
Tyler Veness
01d8d0c795
Moved C++ header includes out of extern "C" and added missing C header includes ( #1053 )
2018-05-13 19:05:39 -07:00
Tyler Veness
6729a7d6b1
Run wpiformat on merged repo ( #1021 )
2018-05-13 17:09:56 -07:00
Thad House
0babbf317c
Adds CMake Readme ( #1042 )
2018-05-13 14:12:12 -07:00
Thad House
337e89cf6e
Adds JNI Simulator interface and updated Sim API ( #1002 )
...
The simulator was generated by https://github.com/ThadHouse/SimulatorGenerator
2018-05-11 12:38:23 -07:00
Thad House
1046371349
Fixes some JNI issues with method calling and class storage ( #1043 )
2018-05-10 22:38:21 -07:00
Austin Shalit
665a6e356a
Allow users to feed the watchdog contained in drive objects ( #1044 )
2018-05-09 20:18:55 -07:00
Dustin Spicuzza
b7ea481bf9
Notifier: reset updatedAlarm before waiting ( #946 )
...
- If this isn't done, then the wait will always be performed at least twice
2018-05-04 18:29:42 -07:00
Peter Johnson
7a34f5d17d
Check for nullptr return from malloc, calloc, and realloc. ( #1023 )
...
These are used in ntcore and cscore. Add inline null-checking versions
to wpi/memory.h and use them throughout.
2018-05-04 17:55:46 -07:00
Thad House
e8d5759d95
Actually have the cscore examples build, and makes them build only on linux ( #1030 )
2018-05-04 17:54:56 -07:00
Thad House
eeae84c715
Adds cscore examples to builds ( #1027 )
2018-05-04 16:51:50 -07:00
Thad House
dab6f40b46
Moves examples.xml to json, and adds template json ( #1026 )
2018-05-04 16:51:37 -07:00
Peter Johnson
5c2c5ccd07
Remove atomic static shim. ( #1020 )
...
This was only useful for pre-VS2015 and was only being used in one place.
2018-05-04 02:07:27 -07:00
Peter Johnson
8cbfe35bd4
ntcore: Remove MSVC 2013 shim. ( #1018 )
2018-05-04 02:06:45 -07:00
Thad House
954f8c40f5
Adds CMake Builds ( #1015 )
2018-05-02 21:15:30 -07:00
Peter Johnson
6a49173cea
Update cscore examples for llvm to wpi rename. ( #1016 )
2018-05-02 20:56:55 -07:00
Peter Johnson
1043aef7f7
ntcore: Make header actually a C header ( #1007 )
2018-05-01 22:51:28 -07:00
Thad House
f7bcf53059
HAL: wait for all objects to release handle before freeing ( #1011 )
...
This avoids a race on free.
2018-05-01 19:26:25 -07:00
Tyler Veness
6a159c5bd2
Miscellaneous cleanups ( #1008 )
2018-04-30 10:30:16 -07:00
Thad House
a098814ea0
Removes the make_unique shim for c++11 ( #1010 )
...
All of our compilers support c++14 now.
2018-04-30 10:28:34 -07:00
Peter Johnson
a28832e52f
Add backwards compatibility shims for old wpiutil headers.
...
These generate a warning when included, then include the old header.
Note for GCC, #warning is used; this requires -std=gnu++14 instead of
-std=c++14 (otherwise the warning is treated as an error because #warning is
a GNU extension). On MSVC, #pragma message is used, which is a bit
unsatisfactory as the message doesn't say where it was included from.
The llvm shim headers also include a llvm namespace shim.
2018-04-30 10:22:54 -07:00
Peter Johnson
f84018af5f
Move entirety of llvm namespace to wpi namespace.
...
During shared library loading, a different libLLVM can be pulled in, causing
llvm symbols from dependent libraries to resolve to that library instead of
this one. This has been seen in the wild with the Mesa OpenGL implementation
in JavaFX applications (see wpilibsuite/shuffleboard#361 ).
This is clearly a very breaking change. For some level of backwards
compatibility, a namespace alias from llvm to wpi is performed in the "llvm"
headers. Unfortunately, forward declarations of llvm classes will still break,
but compilers seem to generate clear error messages in those cases
("namespace alias 'llvm' not allowed here, assuming 'wpi'").
This change also moves all the wpiutil headers to a single "wpi" subdirectory
from the previously split "llvm", "support", "tcpsockets", and "udpsockets".
Shim headers will be added for backwards compatibility in a later commit.
2018-04-30 10:22:54 -07:00
Tyler Veness
93859eb84f
TimedRobot now uses the Notifier HAL API ( #942 )
...
Fixes #941 .
2018-04-30 00:00:09 -07:00
Tyler Veness
e7cf6bf7c5
Fixed wpilibj GenericHID.getType() ( #969 )
...
It was using array indexing to map the return value of
DriverStation.getJoystickType() to HIDType when the enum should instead be
constructed from the int value. C++ already does this.
Fixes #968 .
2018-04-29 23:56:00 -07:00
Peter Johnson
a8fd88840d
Revert "Uses ComputeDigitalMask function across HAL DIO ( #837 )" ( #1005 )
...
This reverts commit c84bd744c8 .
2018-04-29 21:48:53 -07:00
Thad House
c84bd744c8
Uses ComputeDigitalMask function across HAL DIO ( #837 )
...
less risk for errors in the future.
2018-04-29 21:12:15 -07:00
Thad House
11b99a016a
Removes old version files from git ignore ( #1003 )
2018-04-29 20:28:45 -07:00