Peter Johnson
483beb6361
[ntcore] Move CallbackManager to wpiutil
2021-01-31 17:06:37 -08:00
Tyler Veness
aec796b212
[ntcore] Fix conditional jump on uninitialized value ( #3125 )
...
`m_last_flush` should be initialized before it's used at
Dispatcher.cpp:243.
2021-01-25 08:15:08 -08:00
Peter Johnson
cd4a2265b9
[ntcore] Fix NetworkTableEntry::GetRaw() ( #3051 )
...
It was calling value->GetString() instead of GetRaw(), which would assert.
2021-01-04 22:07:50 -08:00
Peter Johnson
f5e0fc3e9a
Finish clang-tidy cleanups ( #3003 )
...
* Add .clang-tidy configuration.
* A separate .clang-tidy is used for hal includes to suppress modernize-use-using
(as these are C headers).
* Add NOLINT where necessary for a clean run.
* Add clang-tidy job to lint-format workflow. This workflow is now only run on PRs.
To reduce runtime, clang-tidy is only run on files changed in the PR.
Two wpilibc changes; both are unlikely to break user code:
* BuiltInAccelerometer: Make SetRange() final
* Counter: Make SetMaxPeriod() final
After these cleanups, the only file that does not run cleanly is
cscore_raw_cv.h due to it not being standalone.
2021-01-01 10:27:49 -08:00
Peter Johnson
be9f725023
[ntcore] NetworkTableValue: Use std::forward instead of std::move ( #3022 )
...
Because these are forwarding references, they could unexpectedly move a
passed lvalue. Using std::forward() makes a copy if an lvalue is passed.
2020-12-31 12:35:02 -08:00
Peter Johnson
b7e46c558f
Include .h from .inc/.inl files (NFC) ( #3017 )
...
This helps both IDEs and linting tools.
Also add some missing braces.
2020-12-31 11:26:53 -08:00
Peter Johnson
a751fa22d2
[build] Apply spotless for java formatting ( #1768 )
...
Update checkstyle config to be compatible with spotless.
Co-authored-by: Austin Shalit <austinshalit@gmail.com >
2020-12-29 22:45:16 -08:00
Peter Johnson
c97c6dc065
clang-tidy: google-readability-casting (NFC)
2020-12-29 14:26:19 -08:00
Peter Johnson
aee4603269
clang-tidy: modernize-pass-by-value
2020-12-29 14:26:19 -08:00
Peter Johnson
6131f4e32b
clang-tidy: modernize-concat-nested-namespaces (NFC)
2020-12-29 14:26:19 -08:00
Peter Johnson
67e03e625d
clang-tidy: modernize-use-equals-default
2020-12-29 14:26:19 -08:00
Peter Johnson
b124f9101b
clang-tidy: modernize-use-default-member-init
2020-12-29 14:26:19 -08:00
Peter Johnson
d11a3a6380
clang-tidy: modernize-use-override (NFC)
...
Add NOLINT to CommandTestBase due to gmock not adding "override" keyword,
which causes warnings on clang.
2020-12-29 14:26:19 -08:00
Peter Johnson
4cc0706b06
clang-tidy: modernize-use-using (NFC)
...
Excludes C-compatible headers
2020-12-29 14:26:19 -08:00
Austin Shalit
6e1919414e
[build] Bring naming checkstyle rules up to date with Google Style guide ( #1781 )
...
Also update Checkstyle to 8.38.
Google changed their style guide from the last time we imported it. This PR brings in those naming changes. The change they made is allowing single letter member, parameter, and local variable names. They also added a lambda naming scheme and I thought it would be good to bring that in too.
2020-12-29 09:27:48 -08:00
Peter Johnson
2aed432b4b
Add braces to C++ single-line loops and conditionals (NFC) ( #2973 )
...
This makes code easier to read and more consistent between C++ and Java.
Also update clang-format settings to always add a line break (even if no braces are used).
2020-12-28 12:58:06 -08:00
Peter Johnson
8f1f64ffb6
Remove year from file copyright message (NFC) ( #2972 )
...
Also update copyright to include "and other WPILib contributors" and clarify
license referral language to not be restricted to FIRST teams.
2020-12-26 14:12:05 -08:00
Peter Johnson
acfbb1a44a
[ntcore] DispatcherBase::Flush: Use wpi::Now()
...
This is faster on some platforms than steady_clock, and will more
consistently support simulation timing.
2020-12-21 09:53:45 -08:00
Peter Johnson
d85a6d8fe4
[ntcore] Reduce limit on flush and update rate to 5 ms
2020-12-21 09:53:45 -08:00
Peter Johnson
f73701239d
[ntcore] Add missing SetDefault initializer_list functions ( #2898 )
2020-11-30 19:20:40 -08:00
Prateek Machiraju
5fe8f9017f
[build] Refactor CMake flags ( #2788 )
...
The CMake enable/disable flags as currently structured are a confusing mix of
WITH, WITHOUT, and USE with odd defaults. This changes the flags to consistently
use WITH and default the build options to everything enabled.
2020-10-22 21:52:24 -07:00
sciencewhiz
f758af826d
[wpilib] Use misspell to find more spelling errors (NFC) ( #2679 )
2020-09-02 19:41:05 -07:00
sciencewhiz
3e41d92c18
[wpilib] Use misspell to fix spelling errors (NFC) ( #2674 )
2020-08-31 00:33:11 -07:00
Tyler Veness
22c0e2813a
[build] Upgrade CI to clang-format 10.0 ( #1961 )
...
MacOS no longer ships 6.0, and Arch Linux's mesa GPU drivers are no longer compatible with LLVM 6.0.
2020-06-27 20:39:00 -07:00
Peter Johnson
67554ef3b0
[build] Add .inl files to styleguide (NFC) ( #2506 )
...
No functional changes.
2020-05-05 18:17:50 -07:00
Thad House
2b188b54d8
[ntcore] Always show StartLocal instances as connected ( #2462 )
...
This is useful for testing things that check IsConnected().
2020-04-02 17:58:07 -07:00
Peter Johnson
6ea13ea8f3
ntcore: Add support for local-only operation ( #2204 )
...
StartLocal() causes future calls to StartServer() or StartClient() to have
no effect. StopLocal() re-enables these calls.
2019-12-29 14:56:41 -06:00
Thad House
0e3b0f3da7
Remove deprecated free() calls ( #1925 )
...
Replaced with the standard close()
2019-10-08 21:30:33 -07:00
Thad House
bc59db5e6f
Rename DEBUG macro to DEBUG0 ( #1871 )
...
This avoids conflicts with the platform DEBUG macro on some platforms.
2019-09-06 20:45:52 -05:00
Austin Shalit
df12fc2a86
Java cleanups ( #1776 )
...
* Remove extra ';'s
* Remove unnecessary conversions to String
* Use StandardCharsets object
* Replace infinite while with check for interrupted thread
* Remove redundant local vars
* Remove redundant throws clause
* Remove redundant primitive wrapping
* Fix malformed Nested class test
* Remove unnecessary unboxing
* Remove unnecessary explicit type argument
* Replace lambdas with method references
* Replace statement lambdas with expression lambdas
* Replace null check with method call
* Replace number comparison with method call
* Fix broken javadoc comments
* Replace Arrays.asList with singletonLists
* Remove excessive lambda usage
* Remove redundant string operation
* Remove redundant type casts
* Remove unnecessary returns
* Remove redundant suppressions
* Fix unresolved file reference
* static analysis fixes
2019-07-31 22:19:48 -07:00
Tyler Veness
62be0392b6
Replace std::lock_guard and std::lock with std::scoped_lock ( #1758 )
...
std::scoped_lock was introduced in C++17 and is strictly better than
std::lock_guard as it supports locking any number of mutexes safely.
It's also easier to use than std::lock for locking multiple mutexes at
once.
2019-07-08 22:58:39 -07:00
Tyler Veness
841ef5d739
Remove template types from lock RAII wrapper usages ( #1756 )
...
C++17 has template type autodeduction. These wrappers include
std::lock_guard and std::unique_lock.
2019-07-07 19:17:14 -07:00
Peter Johnson
60dce66a4f
Remove wpi::ArrayRef std::initializer_list constructor ( #1745 )
...
This can be dangerous as it refers to a temporary, and GCC 9.0 warns about
its use. Instead add std::initializer_list overloads to common places it
was used in an initializer_list sense.
2019-06-29 23:54:02 -07:00
Thad House
221e66f46d
Allow disabling static init of JNI libraries ( #1672 )
2019-06-10 22:29:32 -07:00
Thad House
221011494d
Update for C++17 and fix MSVC warnings ( #1694 )
...
* Update MSVC arguments
* Fix json allocator
* Fix simulation diamond
* Bump gtest
* Remove empty varargs in unit tests
* Replace test case with test suite
* Remove deprecation warning in optional
* Remove need for NOMIXMAX to be defined in wpilib headers
2019-05-31 15:43:32 -05:00
Tyler Veness
f432f65bef
Update copyright year in license to 2019 ( #1524 )
...
Also update clang-format to 6.0.
2019-05-17 17:35:09 -07:00
Peter Johnson
2de3bf7f58
Update LLVM from stable upstream ( #1653 )
...
Replace CheckedMalloc with upstream safe_malloc.
2019-04-27 20:33:08 -07:00
Peter Johnson
0e1f9c2ed2
ntcore: Read ini escaped quotes correctly ( #1579 )
2019-02-01 23:01:00 -08:00
Peter Johnson
ceed1d74dc
ntcore: Strip whitespace from IP addresses ( #1516 )
2018-12-29 14:47:25 -08:00
Thad House
0c3b488e18
Make ntcore instances not smart pointers ( #1485 )
...
During static shutdown, the instances hang on windows 7, so let them leak instead.
2018-12-13 21:33:58 -08:00
Thad House
3d546428ab
Add missing SubTableListener methods to C++ NetworkTable ( #1465 )
2018-12-06 23:27:49 -08:00
Austin Schuh
ac751d3224
Fix unused variable warnings in ntcore ( #1416 )
...
This avoids -Wextra warnings.
2018-11-09 20:02:58 -08:00
Thad House
a8aacd3657
Update build setup for raspbian and debug binaries ( #1384 )
...
- Build both debug and release binaries
- Append "d" to debug libraries in the style of opencv
- Split shared and static classifiers
- Add raspbian support
2018-10-27 00:19:38 -07:00
Thad House
b9fa3a4398
Update to 2019 RoboRIO and 2019 v4 image ( #1352 )
...
Also make updates for Java 11:
* Disable errorprone plugin (currently broken on Java 11)
* Update checkstyle to 8.12
* Update pmd to 6.7.0
2018-10-07 18:11:57 -07:00
Peter Johnson
18c8cce6a7
SafeThread: Avoid use-after-free risk in thread shutdown ( #1355 )
...
Use shared_ptr to keep data alive until the thread has terminated.
2018-10-05 16:32:43 -07:00
Sam Carlberg
175c6c1f01
Add fluent builders for more flexibly adding data to Shuffleboard ( #1022 )
2018-09-28 01:18:18 -07:00
Thad House
1137582a7a
Revert "Move deprecated ntcore classes to wpilibj jar ( #1322 )" ( #1326 )
...
This reverts commit 12c92a822d .
2018-09-21 11:32:11 -07:00
Thad House
12c92a822d
Move deprecated ntcore classes to wpilibj jar ( #1322 )
...
Will allow for modularization
2018-09-20 21:50:30 -07:00
Peter Johnson
025af24523
Make NetworkTableEntry.callRpc and createRpc public ( #1303 )
2018-09-08 21:19:14 -07:00
Peter Johnson
7b95c5341a
ntcore: Change params in Java RpcAnswer from String to byte[] ( #1280 )
...
The underlying protocol uses raw bytes, so they should not be required to be
a valid string.
2018-08-20 13:07:13 -07:00