-
Notifications
You must be signed in to change notification settings - Fork 207
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integration Candidate COMBINED 2020-04-29 and 2020-05-06 #692
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Ensure clean build, no warnings on string operations using GCC 9.3.0. Some string ops were genuinely incorrect (particularly in UT) but some were perfectly OK and handled correctly per the C spec. In particular the new "rules" that GCC9 warns about make the strncat library function (and some others) somewhat off-limits even if used correctly.
The CFE_SB_GetMsgId/SetMsgId functions, among others, were implemented as replicas of the actual FSW code. This creates a dependency on the actual definition of MsgId used by the mission. This makes the stub and actual stub. Stubs not actually read/write to the message in any way, they just manipulate a local (stored in the UT framework) out-of-band buffer to hold the metadata about the message. This revealed a few other minor issues in test cases where they were depending on values sitting in globals (fixed).
Move exception handling to a PSP function. In this approach the CFE only logs data after the event as a background job. Replaces the CFE_ES_ProcessCoreException with a simple notification that causes the ES background job to run, which in turn polls the PSP for logged exceptions and writes entries to the ES ER log. Both the PSP execption scan and the ER log file dump are converted to background jobs.
Correct items flagged as warnings in documenation build, and remove now-unused definition in sample platform config
Should be CFE_MISSION_SPACECRAFT_ID
The "CFE_SB_CmdHdr_t" and "CFE_SB_TlmHdr_t" types were not defined such that they would have compatible alignment with (and thereby allow safe casting to/from) a CFE_SB_Msg_t type. This changes the definition to be a union so that the types are aligned correctly.
Update the CFE_ES_ShellTlm_t, CFE_TIME_ToneSignalCmd_t, and CFE_TIME_FakeToneCmd_t to use the CFE_SB_TlmHdr_t/CFE_SB_CmdHdr_t types to define the buffer, rather than a uint8 array. This should not change the size, as it was already defined using sizeof() this structure, but it will make it aligned correctly which resolves the compiler warning. Note that all CMD/TLM should really be defined this way, but this only selectively changes the places that were actually generating a compiler warning about this. There is a risk that padding will be added, but this change should not change the padding or size of messages in 32-bit builds.
Fix #637, Remove old CFE_ARINC653-related tests
Fix #484, Deprecate shell output command
Fix #641, string operations on GCC9
Fix #523, SB Subscription report control on separate MID
Fix #551, Remove duplicate CFE_TIME_Local1HzISR prototype
Fix #676, reference to deprecated CFE_SPACECRAFT_ID
Update the CFE_ES_ShellTlm_t, CFE_TIME_ToneSignalCmd_t, and CFE_TIME_FakeToneCmd_t to use the CFE_SB_TlmHdr_t/CFE_SB_CmdHdr_t types to define the buffer, rather than a uint8 array. This should not change the size, as it was already defined using sizeof() this structure, but it will make it aligned correctly which resolves the compiler warning. Note that all CMD/TLM should really be defined this way, but this only selectively changes the places that were actually generating a compiler warning about this. There is a risk that padding will be added, but this change should not change the padding or size of messages in 32-bit builds.
Fix #411, rework exception handling in CFE
Fix #666, alignment of CMD/TLM message definitions
Fix #618, stubs must not depend on real msgid implementation
Fix #661, TBL events update
Fix #519, Deprecate CFS/FS time conversion APIs
Deletes now unused CFE_ES_CountObjectCallback and CFE_ES_ListResourcesDebug.
Removes untraced capabilities to decompress libraries or apps on load. For non-startup apps, FS can be used. For startup, recommendation is to compress/decompress as part of boot/startup vs individual applications/libs at load. Also fixes #291, by deprecating decompress it can be moved to the FS app. Also makes #135 N/A, static code analysis issues in decompress
Fix #639, Remove ES_APP_DEBUG functionality
Fix #399, Deprecate decompress
Fix #559, Resolve doxygen warnings
skliper
force-pushed
the
integration-candidate
branch
from
May 11, 2020 15:30
e79d2a7
to
7b56b85
Compare
For CFE_SB_SendMsg this was still reading the length directly from the header. It needs to use the metadata value instead.
Fix #491, Add UT macros
astrogeco
changed the title
Integration Candidate: 2020-04-29
Integration Candidate COMBINED 2020-04-29 and 2020-05-06
May 13, 2020
This was
linked to
issues
May 19, 2020
Closed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Describe the contribution
Fix #399, Deprecate decompress
Fix #411, rework exception handling in CFE
Fix #484, Deprecate output to shell commandFix #491, Add UT macros
Fix #519, Deprecate CFS/FS time conversion APIs
Fix #523, SB Subscription report control on separate MID
Fix #551, Remove duplicate CFE_TIME_Local1HzISR prototype
Fix #559, Resolve doxygen warnings
Fix #618, stubs must not depend on real msgid implementation
Fix #637, Remove old CFE_ARINC653-related tests
Fix #639, Remove ES_APP_DEBUG functionality
Fix #641, string operations on GCC9
Fix #661, TBL events update
Fix #666, Change message definitions to ensure alignment
Fix #676, reference to deprecated CFE_SPACECRAFT_ID
Testing performed
See PRs
Bundle CI - https://travis-ci.com/github/nasa/cFS/builds/165726730
Expected behavior changes
PR #638 - No longer automatically decompresses apps/libraries as part of load
PR #646 - Deletes now unused CFE_ES_CountObjectCallback
and CFE_ES_ListResourcesDebug. Flags were unused
PR #640 - Removes all conditional preprocessing blocks related to CFE_ARINC653.
PR #642 - Ensure clean build, no warnings on string operations using GCC 9.3.0.
PR #645 - When
OMIT_DEPRECATED = true
attempt to send output to shell command will result in command error counter increment (unrecognized function code)PR #647 - SBN will need to init command with new MID
PR #648 - Documentation links and references will now work properly
PR #653 - API CFE_ES_ProcessCoreException is removed, replaced with async event.
PR #668 - Removed duplicate prototype in cfe_time_utils.h
PR #669 - Removes unused defines and adds documentation to TBL event defines.
PR #670 - Deprecates CFE_TIME_CFE2FSSeconds and CFE_TIME_FS2CFESeconds.
PR #674 - Unit tests now build and run when MESSAGE_FORMAT_IS_CCSDS_VER_2 is configured.
PR #677 - Build now works with both extended headers and OMIT_DEPRECATED options set.
PR #678 - No more alignment warnings
PR #695 - Adds new unit test macros
System(s) tested on
See PRs
Additional context
Part of nasa/cFS#83
Contributor Info - All information REQUIRED for consideration of pull request
Jacob Hageman, NASA-GSFC
Christopher D. Knight, NASA-ARC
Leor Bleier, NASA-GSFC
Joseph Hickey, Vantage Systems, Inc.
Guillaume Lethuillier, Self