Releases: nasa/fprime
Release v3.1.1: fprime-util and fprime-tools Hotfix 1
Updated fprime-tools to allow external configuration and update fprime-gds to run without arguments and match the new fprime-tools version!
What's Changed
- Update requirements.txt by @LeStarch in #1616
- lestarch: bump fprime-tools for configuration fix. by @LeStarch in #1622
- Fixing fprime and fprime-gds version mismatch by @kevin-f-ortega in #1627
Full Changelog: v3.1.0...v3.1.1
F´ Release v3.1.0
F´ Release v3.1.0: Release Notes
This release of F´ publishes and baselines native versions of the FPP tools as well as a streamlined CMake system that should enable F´ builds based on FPP to run faster. It includes a number of other improvements including a refined dependency versioning setup, gcovr
for coverage analysis, and more!
Major Changes
- Improved FPP and CMake efficiency.
- Switched to
requirements.txt
for dependency version tracking. Users should use this to install. - ActiveRateGroup, RateGroupDriver now have zero-argument standardized constructors. Users should update topologies. See Ref App.
- CMake autocoders and targets have been refactored for efficiency. Implements should follow: Autocoder Integration
New Contributors
- @capsulecorplab made their first contribution in #1198
- @myint made their first contribution in #1272
- @iw4p made their first contribution in #1240
- @danjwait made their first contribution in #1346
- @Drosaca made their first contribution in #1352
- @inPhraZ made their first contribution in #1322
- @Kronos3 made their first contribution in #1383
- @lnxpy made their first contribution in #1353
- @cadomani made their first contribution in #1423
- @connorfuhrman made their first contribution in #1441
- @aditsachde made their first contribution in #1508
Full Changelog: v3.0.0...v3.1.0
F´ Release v3.0.0
Release 3.0.0: Release and Migration Notes
Version 3.0.0 of F´ comes with several major enhancements to the framework. This release contains an update to use the FPP modeling language and the C++ standard has been updated to C++11. These are fairly substantial changes and users should consult the version 3 migration guide when adopting F´ version 3.
Whats included:
- FPP modeling integration and build system support
- CMake build system refactor
- Extended C++11 support
Note: python3
, java
and C++11
compliant compiler tools are now required.
New Contributors
- @bocchino made their first contribution in #727
- @ThibFrgsGmz made their first contribution in #744
- @Piphi5 made their first contribution in #760
- @AliMuhammadOfficial made their first contribution in #779
- @r9-pena made their first contribution in #809
- @nabcouwer made their first contribution in #821
- @tarampampam made their first contribution in #765
- @Emil808 made their first contribution in #827
- @IvanReznikov made their first contribution in #831
- @astroesteban made their first contribution in #869
- @chaolinyi made their first contribution in #875
- @zachar1a made their first contribution in #883
- @slowy07 made their first contribution in #927
- @gkieszkowski made their first contribution in #935
- @smir45 made their first contribution in #958
- @adityadees made their first contribution in #959
- @ugo94490 made their first contribution in #986
- @thnkslprpt made their first contribution in #1033
- @shubham-shahh made their first contribution in #1079
- @gjwatney made their first contribution in #1111
- @Blabla51 made their first contribution in #1089
- @vietjtnguyen made their first contribution in #1150
- @FabrizioSandri made their first contribution in #1151
Full Changelog: v2.0.0...v3.0.0
F´ Release v2.1.0
This is the final release of the F´ 2.x series before FPP and v3 are released.
What's Changed
- Remove unused const qualifiers by @Joshua-Anderson in #701
- Remove TIMSP standard types by @Joshua-Anderson in #712
- Make assertion file name const by @Joshua-Anderson in #711
- Move string copyBuff from implmentation to string base class by @Joshua-Anderson in #695
- Wrap raw task routine with an platform specific wrapper by @Joshua-Anderson in #700
- Removed Unnecessary .gcov files by @AdvaitDhingra in #708
- Recover/disabled uts by @LeStarch in #726
- lestarch: add in ability to override telemetry time by @LeStarch in #713
- lestarch: fixing health for UTs by @LeStarch in #746
- Fix #743 Redirect to Discussions tab by @ThibFrgsGmz in #744
- Make serializable type getters as const functions by @Joshua-Anderson in #729
- Mark tlmWrite argument const for user types by @Joshua-Anderson in #730
- Compile root cmake project with -Wextra by @Joshua-Anderson in #745
- Correct errors in PolyType toString method by @Joshua-Anderson in #747
- lestarch: making CI log archive always run by @LeStarch in #759
- Add Black Formatting by @Piphi5 in #760
- lestarch: fixing defaults for linux drivers (default build) by @LeStarch in #771
- Update build-test.yml by @LeStarch in #776
- Remove usages of variable length arrays by @Joshua-Anderson in #758
- spelling: received by @eltociear in #766
- Enable AddressSanitizer on CI builds by @Joshua-Anderson in #770
- Enable additional LGTM queries by @Joshua-Anderson in #799
- Fix incorrect deserialization status check by @Joshua-Anderson in #800
- Serializable type for Enums by @rohandkn in #793
- Default values for stuct members and scalar initialization of array members by @rohandkn in #795
- Correct LGTM query selection by @Joshua-Anderson in #804
- for better readability added f-string for formatting by @AliMuhammadOfficial in #779
- Workflow to verify compatibility with GpsApp tutorial by @r9-pena in #809
- lestarch: fixing Fw::Time to allow comparisons across different time … by @LeStarch in #803
- Update check-spelling by @jsoref in #819
- Update tutorial-support.yml by @LeStarch in #823
- Dev/abcouwer/cmake baremetal fixes by @nabcouwer in #821
- In FprimeProtocol.cpp:deframe(), make buffer no larger than requested… by @nabcouwer in #822
- Add missing newlines at ends of files by @nabcouwer in #826
- Update .dockerignore by @tarampampam in #765
- Update Tutorial.md by @Emil808 in #827
- lestarch: adding a ready port to bytestreamdriver and the tcp implementors by @LeStarch in #853
- bugfix-830 by @IvanReznikov in #831
- bugfix-832 by @IvanReznikov in #833
- VxWorks/C++ fixes by @timcanham in #797
- docs: Update Incorrect Ref Executable Path by @astroesteban in #869
- Split CI workflow jobs by @r9-pena in #872
- fix: Autocoders: finishPortH.tmpl, clerical error by @chaolinyi in #875
- fix spellcheck: Add bootlin to dictionary by @Joshua-Anderson in #876
- Cleanup string classes by @Joshua-Anderson in #768
- Bugfix: docs/Architecture related guide materials by @chaolinyi in #880
- lestarch: fixes an overzealous string copy assert by @LeStarch in #890
- Fix #873, allow nullptr as an input with buffer constructor with an a… by @zachar1a in #883
- Bypass master.bash file in CI by @r9-pena in #889
- lestarch: reworking docker by @LeStarch in #894
- Switched to direct use of Dockerhub fprime image by @r9-pena in #895
- Update/cmd sequencer heli by @timcanham in #882
- Fix autodocs github action by @Joshua-Anderson in #914
- Run cmake tests in CI by @Joshua-Anderson in #915
- Import/tlm packetizer by @timcanham in #878
- fix: typo spelling grammar by @slowy07 in #927
- Switch CI to run in VM instead of docker container by @Joshua-Anderson in #924
- Switch autodocs action to use VM instead of container by @Joshua-Anderson in #938
- Cookiecutter docs by @aidan-wagner in #936
- autodocs: check out entire history to avoid errors merging by @Joshua-Anderson in #944
- highlight section order and fix few typos by @gkieszkowski in #935
- Backport 80char replacement by @Joshua-Anderson in #923
- Removed repeated imports by @smir45 in #958
- lestarch: compile options added correctly by @LeStarch in #956
- minor link fixes by @gkieszkowski in #949
- lestarch: removing -lgcov flag to fix macOs unit tests by @LeStarch in #965
- remove unused extraspace and line by @adityadees in #959
- fix: wrong comments by @ugo94490 in #986
- simplifying index.md file by @gkieszkowski in #943
- LinuxSerialDriver: Check for errors when setting interface speed by @Joshua-Anderson in #996
- Hotfix to devel by @LeStarch in #997
- lestarch: allowing GTest to be disabled in UTs by @LeStarch in #1004
- lestarch: adding macOS to CI by @LeStarch in #1007
- lestarch: deframer fix by @LeStarch in #1017
- Fix minor typos in error message strings and descriptive comments by @thnkslprpt in #1033
- docs: Update MathComponent to Reference TestMain by @astroesteban in #1030
- lestarch: reworking posix tasks by @LeStarch in #992
- Fix fprime typos by @thnkslprpt in #1043
- Fix MathComponent Tutorial.md typos by @thnkslprpt in #1053
- Allow removal of text loggers from build with CMake variable. by @nabcouwer in #1071
- small corrections by @shubham-shahh in #1079
- Fixed the override of timebase and context in Time::set() by @metzdigital in #1104
- Added sequence join wait command by @saba-ja in #1084
- lestarch: command response errors to use COMMAND severity, #1095 by @LeStarch in #1117
- System resources by @sfregoso in #1116
- Docs: Updates of the Tutorial documentation by @Blabla51 in #1089
- lestarch: descriptions for commands, events, parameters, and args fix… by @LeStarch in #1132
- Fixed BasicTypes preproc checks for pointer type by @vietjtnguyen in #1150
- Remove redundant null terminate by @FabrizioSandri in #1151
- Fix snprintf by @FabrizioSandri in #1156
- lestarch: update to doxygen file by @LeStarch in #1158
New Contributors
- @ThibFrgsGmz made their first contribution in #744
- @Piphi5 made their first contribution in #760
- @AliMuhammadOfficial made their first contribution in #779
- @r9-pena made their first contribution in #809
- @nabcouwer made their first contribution in #821
- @tarampampam made their first contribution in #765
- @Emil808 made their first contribution in #827
- @IvanReznikov made their first contribution in #831
- @astroesteban made their first contribution in https://github.com/nasa...
F´ Release v3.0.0-RC2
WARNING: this is a pre-release of F´ v3.0.0 for the purposes of F´ team testing. Some stability issues are still being ironed out and issues may be encountered. It is recommended that users outside the F´ team wait for a final release v3.0.0.
This includes several fixes:
- Math tutorial is now updated in this branch
- Extra warning flags added to Ref to improve code quality. Revealed bugs fixed.
See v3.0.0-RC1 for more information on v3.0.0 requirements.
F´Release v3.0.0-RC1
WARNING: this is a pre-release of F´ v3.0.0 for the purposes of F´ team testing. Some stability issues are still being ironed out and issues may be encountered. It is recommended that users outside the F´ team wait for a final release v3.0.0
.
Whats included:
- FPP modeling integration and build system support
- CMake build system refactor
- Extended C++11 support
Note: python3
, java
and C++11
compliant compiler tools are now required.
F´ Release v2.0.1
Hot-Fix Release of F´v2.0.1:
- Correct issue with compilation failing w/ conflicts due to built-in VxWorks definitions
Note: v2.0.x releases will be the last to support VxWorks 6.7 compilers and the GCC 4 toolchain they use.
F´ Release v2.0.0
Release 2.0: Release and Migration Notes
Version 2.0.0 of F´ represents major improvements across the F´ framework. As such, some work may be required to migrate from other versions of F´ to the new
functionality. This section will offer recommendations to migrate to version 2.0.0 of F´.
Features and Functionality:
- New ground interface change improves stability and flexibility
Svc::Framer
andSvc::Deframer
components may be used in place ofSvc::GroundInterface
Svc::Framer
andSvc::Deframer
delegate to a user instantiated framing class allowing use of non-fprime framing protocols
Drv::ByteStreamDriverModel
allows implementing drivers reading/writing streams of bytes using a single model- New IPv4 drivers implement
Drv::ByteStreamDriverModel
allowing choice or combination of uplink and downlink communicationsDrv::TcpClient
is a tcp client that connects to a remote serverDrv::TcpServer
is a tcp server that allows connections from remote clientsDrv::Udp
allows UDP communicationsDrv::SocketIpDriver
may be replaced using a choice of an above component.
Svc::FileDownlink
now supports a queue of files to downlink and a port to trigger file downlinksSvc::FileDownlink
may now be configured to turn off certain errorsSvc/GenericHub
is a basic instantiation of the hub pattern- Bug fixes and stability improvements
Migration considerations:
- F´ tooling (fprime-util and fprime-gds) should be installed using
pip install fprime-tools fprime-gds
Os::File::open
with the mode CREATE will now properly respect O_EXCL and error if the file exists. Pass infalse
as the final argument to override.- Revise uses of
Fw::Buffer
to correct usage of member functions using camel case. E.g.Fw::Buffer::getsize
is nowFw::Buffer::getSize
- The ground interface chain has been refactored. Projects may switch to using
Svc::Framer
,Svc::Deframer
, and any implementor ofDrv::ByteStreamDriverModel
to supply the data. To continue using the old interface with the GDS runfprime-gds --comm-checksum-type fixed
. Svc::BufferManager
has been reworked to remove errors. When instantiating it please supply a memory allocator as shown inRef
.- Dictionaries, binaries, and other build outputs now are written to a deployments
build_artifacts
folder.
Deprecated Functionality: The following features are or will be deprecated soon and may be removed in future releases.
Svc::GroundInterface
andDrv::SocketIpDriver
should be replaced by the new ground system components.- Inline enumerations (enumerations defined inside the definition of a command/event/channel) should be replaced by EnumAi.xml implementations
fprime-util generate --ut -DFPRIME_ENABLE_FRAMEWORK_UTS=OFF
will be removed in favor of futurefprime-util check
variantsAutocoders/MagicDrawCompPlugin
will be removed in a near-term release
F´ Release 1.5.3
This is a release of F´ that corrects a minor issues in the fprme-util
to properly pass in environment variables for customers using fprime-util
to setup their build environment variables. See releases 1.5.x for full release notes.
Note:
- See release 1.5.x for release updates
- fprime python package version updated to 1.5.3, please reinstall with
--upgrade
flag
F´ Release 1.5.2
This is a release of F´ that corrects a minor issues in the CMake system affecting template implementation with custom AcConstants.ini files for unit tests and fixes the -D flags passed to fprime-util generate. See release 1.5.0, 1.5.1 for full release notes.
Note:
- See release 1.5.0 for full feature set
- fprime python package version updated to 1.5.2