A maintenance release is now available for all supported platforms.
Consider updating if you are using Version 6.0-6.6.0 or older.
New Features
-
Functional Mockup Interface (FMI-2.0.1) Support:
- Extra Package that supports wrapping a test procedure
to a Functional Mockup Unit (FMUs)
- Includes User Manual (rttester-fmi2) and example Project Demo-FMI2
-
Scripts:
rtt-doc-test: per default, set the niceness to a value 5-19
in order to allow for gentle degradation if multiple doc-test
instances are running at the same time (addresses #18855).
The new option --no-nice overrides this (and runs doc-test with niceness 0)
-
Testing Support (RTTL/Runtime):
- LWP Monitoring: if an AM seems to get stuck,
WARNING (LWP_SANITY) are printed to <stderr>.
AMs that are expected to hog the LWP for a long time can be registered with
rttctxlib_register_longrunning_AM(amId) to suppress that warning.
(implements #18941)
- allow
@rttStopTest() to have an argument (format string)
@rttStopTest now always creates an output
M @rttStopTest <optionally-more>
to the test log of the calling am (implements #18924)
- allow syntax
@rttBeginTestStep(); and @rttStopTest();, which are
equivalent to @rttBeginTestStep; and @rttStopTest;
- ctxlib/performance: the watchdog LWP uses now
sleep(1) instead of nanosleep to check for test termination
which eliminates noticeable overhead on Windows/Cygwin (implements #18939)
-
Testing Utilities:
- added
rtt-mem-statistics.py to record memory usage over time
(depends on Posix utility ‘top’ for the measurement)
rtt-live-sigplot.py: new repeatable option --separate-plot SIG
to put selected signals into separate sub-plots; this mainly caters for rtt-mem-statistics.py, since the LOAD does not mix well with the memory scale
-> use rtt-live-sigplot.py --line --separate-plot LOAD
rtt-live-sigplot.py: new option --replay [duration_of_1_tick]
to re-generate a plot from a file, according to the time stamps
- added
rtt_aux_py_filter to analyse python scripts
Improvements
-
Scripts:
- robustness: warn user, if utility
which is not available
(since this may lead to not finding awk or md5sum)
- all
rtt-*.py scripts are now compatible with python3
-
Libraries:
- ctxlib: harmonized the two variants of suspend/resume
(implements #19189)
-
Cluster support:
- compile aborts with error, if
CNODE configures an LWP that does not exist (improves #18284)
- compile aborts with error, if a
CNODE configures an empty LWP (completes #18284);
documented in manual (Appendix D: Compatibility)
-
Template Projects:
- DEMO suite [V-1.8] includes simple use of LWPs and LWP_SANITY warnings
-
Documentation (Manual):
- added section on python scripts (addresses Mantis-18934)
- added section on cooperative multitasking (and Mantis-18941)
- added documentation for suspend/resume API (#19170)
- added note on calling
fflush(NULL) for system() calls (#19296)
- license management: added documentation/explanation for utility
rtt_aux_user
Bugfixes
-
Scripts:
rtt-doc-test now exits with code 5 (one-page PDF)
if the *.conf file cannot be expanded (fixes #18904)
rtt-run-test now uses robust 'du -b' for option LOG_COMPRESS (fixes #18927)
rtt-run-test inserts "SUM.tags#" self-reference when creating SUM.tags
which will result in valid hyper-refs in verification/*tc_coverage.html
(fixes #18931)
-
RTS lexing (rttprep_rts):
- corrected processing of
'*(' at line start inside
a @printf() statement (fixes #19217)
- harmonise behaviour of
@rttTestError + STOP_ON_FAIL to output
STOP-ON-FAIL as reason for the termination (fixes #19300)
-
Libraries:
- robustness: in
rttstr_append_to_string_buffer_n() and rttstr_safe_ncat()
expect un-terminated or early terminated strings
- robustness: abort with error message, if
OUTPUTMEMORY cannot be allocated
- CADUL: corrected
LOG_LOCATION expansion (fixes #18947)