* Remove FwSignedSizeType from file
* Restoring FwSignedSizeType to seek offsets
* Fixing usages and UTs
* Fixes on Linux
* CI fix
* CI round 3
* CI rev 4
* Fixing code scan errors
* Review fixes - pt 1
* Failed to save
* Adding fallbacks FILE_ID and RELATIVE_PATH asserts. Unit tests implemented but the FILE_ID test is broken. (#2988)
* Consolidating UTs into AssertTypesTest and fixing minor bug in Fw/Test/UnitTestAssert.cpp
* Fixing minor typo in comment
* Add minor improvements to deal with external libraries
* Fix UT_MOD_DEPS usage
* Revert "Add minor improvements to deal with external libraries"
This reverts commit 44803631eee9d152a00bbaabc42124b8404f56de.
* Remove NATIVE_* types from FileUplink
* Remove NATIVE_* types from RateGroupDriver
* Remove NATIVE_* types from ComLogger
* Addressing init function usage of NATIVE_ types
* NATIVE_ types from command dispatcher
* NATIVE_ types from ComQueue
* NATIVE_ types from CmdSplitter
* U32 -> FwOpcodeType in CmdDispatcher
* NATIVE_ types in BufferManager
* NATIVE_ types in LinuxTimer
* NATIVE_ types from BufferAccumulator and renabling UT
* NATIVE_ types from TlmChan
* NATIVE_ types from BufferRepeater
* NATIVE_ types from Active/Passive Rate Group
* NATIVE_ types from ComSplitter and ComStub
* NATIVE_ types from ActiveLogger and fixed ActiveRateGroup sdd
* NATIVE_ types from Dp*
* NATIVE_ types from FileManager and ActiveLogger (missed)
* NATIVE_ types from BufferLogger, FileDownlink, StaticMemory
* Deleting UdpSender/UdpReceiver that lack models and build config
* NATIVE_ types from Health
* NATIVE_ types from CmdSequencer
* NATIVE_ types from TlmPacketizer
* Fixing unit test issues
* POINTER_CAST from Svc
* CI fixes
* CI fixes (Linux)
* Fixing Ref/RPI for RG context
* CI (sp)
* Fixing RPI build for time conversions
* CI fixes (RPI)
* Self review comments
* Removing UDP sender/receiver config
* Review recommendations - pt 1
* Adding format specifier aliases for primitives. Updating documentation. (#3199)
* Changing double format to 'lf' for better compatibility for scanf
* Adding UTs. Removing PRI_F32 as C/C++ always promotes floats to doubles.
* Split Router out of Deframer - initial implementation
* Rename variable to packetBuffer and resolve conversion warnings
* Add test cases for each incoming packet type
* Adjust comments and stuff
* Update Ref topology with Router
* WIP - FrameAccumulator
* Add lightweight deframer
* Working frame detector, accumulator, and fprime packet
* CCSDS implementation and better checksums
* Fixing overly small start word to use SCID as well
* Fixing frame accumulator for new structure
* Minor cleanup to frame detectors
* Add CCSDS Deframers and F´ minimal deframer
* Clean up comments
* Update Ref topology with Accumulator/Deframer/Router
* Update buffer manager
* Upgrade Router.cpp to latest Fw::Logger
* Update RPI deployment to use FrameAccumulator/Router
* Remove CCSDS Deframers
* Add first pass at UTs
* add buffer accumulation testing
* start SDD and rename author
* Fix static analysis warnings and add comments to UTs
* Spelling
* Add FprimeFrameDetector UTs
* Fix CI issue
* Fix test component creation
* Add first pass at SDDs
* Rename FrameAccumulator allocation ports
* Add review comments
* Functional one-off detection
* Fix algorithms and rename Deframer to FprimeDeframer
* Remove file
* Remove templated detectors
* Improve test code
* Rename frame Footer to Trailer, and improve SDDs
* finish renaming footer to trailer and add implementation note
* Fix spelling and CI warning
* Fix test code
* More CI and spelling fixes
* Add back virtual destructor
* appease pedantic warnings
* Fix declaration ordering for safe destruction
* Run formatting and add a few comments
* Add RouterInterface.fppi and use it in Router
* review changes round 1
* Rename Router to FprimeRouter and add test for unconnected unknownDataOut port
* Finish renaming Router -> FprimeRouter
* Use get-target-branch for cookiecutters tests and fix spelling
* fix a few comments, CI warning and formatting
* Update types for compatibility with updated FwSizeType
* Move FprimeProtocol.fpp to Svc/ and update non-compliant UINT types
* Code review recommendations
* Move FrameAccumulator destruction to cleanup() code
* Add frame validation to FprimeDeframer
* Add cleanup() call to test code
* Fix static analysis warnings
* Resolve type warnings and add multiple events in FprimeDeframer
* latest latest v3
---------
Co-authored-by: Michael D Starch <Michael.D.Starch@jpl.nasa.gov>
* NATIVE_INT_TYPE use in toString
* NATIVE_INT_TYPE use in SimpleObjRegistry
* NATIVE_INT_TYPE use in Asserts
* NATIVE_INT_TYPE use in Fw/Comp
* NATIVE_INT_TYPE use in getCapacity
* NATIVE_INT_TYPE use in getEntries
* NATIVE_INT_TYPE use in size/length
* NATIVE_INT_TYPE use in FILE_NAME_ARG
* NATIVE_INT_TYPE use in Fw (misc)
* NATIVE_INT_TYPE use in identifier
* NATIVE_INT_TYPE use in Fw (misc II)
* POINTER_CAST in Buffer
* POINTER_CAST in Serializable
* sp
* Removing no longer used DefaultTypes.hpp
* Fixes to accomidate Fw refactor
* Unit-test and CI fixes
* Fixing review comments - pt 1
* Improve error checking in mutex stub
The default mutex stub is intended to be usable on any platform,
even platforms that do not have threads and cannot block. This stub is
inappropriate for applications that need to contend over mutexes.
However, if inadvertently used in applications in a way that would
result in mutex contention, they would silently allow incorrect and
dangerous behavior. (Notably, they allowed multiple threads to enter the
same critical section.)
The new implementation still works on all platforms, and never blocks.
However, it ensures that only one thread enters each critical section at
a time. Attempting to acquire a mutex that is already taken will result
in a failure to acquire the mutex, and likely an assertion. Because this
should only occur in the case of a coding defect, this is an improvement
over the previous implementation.
* Note mutex identity in lock/unlock status assert
When a mutex fails to be taken or released, and it causes an assertion
to trip, this change makes sure that enough information is provided to
uniquely identify which mutex was at fault.
* Fix assertion cast argument types to be generic
* Create fprime-translations.md
LeStarch on Feb 13, 2025
CollaboratorAuthor
@matt392code these tables you posted are exactly what we need for this issue. Do you want to pull those tables into a PR?
Create:
docs/user-guide/framework/fprime-translations.md
Add all of the tables you put at the top (everything up to "Example Translations").
I will need to go through and edit some of the data, but want to let you get credit for the initial work.
* Reviewing output
* Adding tranlation guide to mkdocs.yml
* Add links and fix typo
---------
Co-authored-by: M Starch <LeStarch@googlemail.com>
Co-authored-by: chammard <thomas.boyer.chammard@jpl.nasa.gov>
* Add fprime-examples repo to CI
* Rename other workflows for consistency
* Rename more CI workflows
* Add correct F´ location
* Address review comments
* Revert to External Repo (External Build might suggest the build process is external)
* added telem packets to JSON dictionary spec
* add telemetry packet examples, cleanup examples
* fix examples
* fix typo
* rename groups to sets
* Add newline after tables, use camel case for component instance names
* update description of deploymentName field
* update deploymentName field description
* fix example
* Improve BufferManager assertion context args
Previously, in some cases, no information or context was provided when
this assertion tripped, which made it harder to identify the cause.
Include more information in several cases.
* Fix assertion argument cast to be generic
* Adding casts for explicit conversion
---------
Co-authored-by: M Starch <LeStarch@googlemail.com>