You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Issue #222: v1 platform layer
Interim PR here but I wanted to get this through review before it got
too big. Things of interest:
1. Coverage build logic is complete.
2. Better definition around the LVS (Libuavcan Validation Suite)
3. Start of the "media" layer for CAN.
4. More sadness that it isn't five years from now and we could just use
C++14.
* adding compile-time test
* Update ci/native-gcc-build-and-test.sh
Co-Authored-By: Pavel Kirienko <[email protected]>
* Update libuavcan/include/libuavcan/transport/media/can.hpp
Co-Authored-By: Pavel Kirienko <[email protected]>
* Tests, docs, and changes per PR comments.
* Update libuavcan/include/libuavcan/transport/media/can.hpp
Co-Authored-By: Pavel Kirienko <[email protected]>
* updating the docs with media layer design
* cleaning up some codacity warnings
* removed \"porting\" as a term.
* Adding newline to end of media.md.
Portable reference implementation of the [UAVCAN protocol stack](https://new.uavcan.org) in C++ for embedded systems, Linux, and POSIX-compliant RTOSs.
8
9
@@ -25,7 +26,7 @@ You should never rewrite a codebase from scratch. It's a terrible idea. We're re
25
26
26
27
Sorry.
27
28
28
-
The reason we opted for a complete rewrite is that so much is changing. Between the updates to the specification, the abandonment of C++98 support, switching to header-only, removing the drivers from the main repository, adding CAN-FD support, etc, etc, etc; it was obvious that we'd be rewriting everything anyway. The good news is that v0 exists, is fully supported, and will be liberally copy-and-pasted from as this makes sense for v1. What we don't have is any git history tracing from v1 since this would be deceiving. Futhermore, the unit tests in uavcan v0 are a bit of a mess so we'll be writing them in a way that is more sustainable.
29
+
The reason we opted for a complete rewrite is that so much is changing. Between the updates to the specification, the abandonment of C++98 support, switching to header-only, removing the drivers from the main repository, adding CANFD support, etc, etc, etc; it was obvious that we'd be rewriting everything anyway. The good news is that v0 exists, is fully supported, and will be liberally copy-and-pasted from as this makes sense for v1. What we don't have is any git history tracing from v1 since this would be deceiving. Futhermore, the unit tests in uavcan v0 are a bit of a mess so we'll be writing them in a way that is more sustainable.
29
30
30
31
## Documentation
31
32
@@ -42,6 +43,8 @@ The reason we opted for a complete rewrite is that so much is changing. Between
42
43
43
44
**/test/ontarget** - Tests cross-compiled for specific hardware* and run on a set of dedicated test devices. These tests may have strict timing constraints and may require specific physical or virtual busses and other test apparatuses be present. Each on-target test will fully document its requirements to enable anyone with access to the appropriate hardware to reproduce the tests. Furthermore, these tests must be inherently automateable having clear pass/fail criteria reducible to a boolean condition.
44
45
46
+
**/test/compile** – Tests that run in the compiler. Most of these will be tests that pass if they fail to compile. For example, some tests will purposefully define template parameters that will cause static_asserts to fail. Tests that pass if they do compile are less interesting here since such happy paths are normally covered by unit-tests.
47
+
45
48
**/example** - Contains a set of example applications providing real, practical, and tested uses of libuavcan.
46
49
47
50
**/commons** - Reference implementations for parts of the libuavcan library. These implementations are optional but are provided as a convenience to accelerate evaluation and integration of libuavcan.
@@ -128,7 +131,7 @@ To use visual studio code to debug ontarget tests for the S32K146EVB you'll need
0 commit comments