A maintenance release is now available for all supported platforms.
Consider updating if you are using Version 6.0-6.6.1 or older.
New Features
-
Support for *.csv file evaluation:
- added CSV commands to RTTL (FR #19462+#19478; Manual Chap. 18):
@csvColumns, @csvFloat, @csvHeadline, @csvInt, @csvLoop, @csvRead, @csvRows, @csvPrint, @csvStr
- added
@cvs definition option inside @rttPrint
- added examples in DEMO project (
unit-tests/test-07, 08)
-
Fuzzing Support (FR #19308; Manual Chap. 18):
- RTTL keywords and templates for fuzzing
rtt-gen-test creates ./fuzz/sut/ if @fuzz directive is detected
- allow
@throw() to be used in stub @BODY: section
- added
@fuzzClean, @fuzzGen, @fuzzRun, @fuzzLoad and @fuzzCov
as generically expanded commands (implemented in customizable _rtt_fuzz_lib.rts)
- added new example project Fuzz-Demo:
rtt-create-project -u Fuzz-Demo
-
test documentation (rtt-doc-test):
- new optional section
PROBLEMREPORTS to reference
PR identifiers and also URLs (implements FR#19503)
-
Enum types (rtt_prep_enum:
- create functions
myenum_t rttStr2Enum_myenum_t(const char* str_val);
for all PRINT_FUNCTIONS; RTTPrintEnum_myenum_t
If the str_val cannot be matched, then issue a WARNING
in AM log and return -0x7FFFffff (implements FR#19467)
-
license management:
- rtt license daemon now also can handle the
license requests from RTT-MBT (9.5.2 or newer)
- added new feature token:
rtt_compile_only
which covers SWI+HSI:COMPILE
this is intended for use with remote test preparation
(implements FR #19512)
Improvements
-
FMI: (see Mantis-16574):
rtt-fmi2-create-xml.py: only outputs are InitialUnknowns (FMI2.0.1: 2.2.8)
-
Run Logic:
- fixed termination, if
@rttStopTest was called during @INIT:
(the @PROCESS: phase used to be executed nevertheless in this case)
- extensible: run-test assigns the environment variable
RTT_COV_THETEST to the last directory in TP_PATH,
before the cov-script is called;
the cov-script only gets the dir above (TLA) as direct argument,
but knowing the concrete test procedure may be useful.
-
Installer:
- (rpm) remove *.pyc on uninstall, if present
- Windows: remove *.pyc files (if any) on uninstall
-
Scripts:
- for all
*.py scripts, dropped the python2 condition:
they shall work with both python2 and python3
(and newer systems will not have python2)
rtt-swi-info has new option --feature-set
that prints feature information (in json-format) including
- version
- installed packages
- option-list for clean, compile, run, doc
- robustness: change generated code to be compatible with
older compilers (like gcc 2.95.3):
- no var declarations after statements
- extern declarations outside function bodies
- parameter macro always with non-epsilon argument
-
Exectuables:
rttscan_rts (rtt-compile-test): improved error message, if
any of @INIT: / @FINIT: / @PROCESS: is missing
-
Libraries:
- rttisetlib:
added API functions
rttIsetGetLargestEntry()
and rttIsetFromRange(), to convert a string to a set
- strlib:
- added API function rttstr_find_in_specs()
- added standard checksum functions: CRC16, CRC32, MD5SUM
- added substring replacement functions
- added rttstr_split_flat_list()
- stublib:
removed “EXPERIMENTAL” warning for array parameters
(this can be assumed to be operative)
-
Utilities:
- added utility
rtt_invoke_clones (mainly targeted at fuzzing)
rtt_parse_csv: new option --sort @columnName | @number
that will sort the output lines (alphabetically)
according to the content of that column.
rtt_mco now understands gcov lines with "<n>[*]:" markers,
which indicate (for a ‘covered’ line) the persence of
an assembler statement with zero execution count
new option --list-zeros displays these lines on termination
(implements #19466)
rtt-mem-statistics.py got new option --pidfile
which can be useful for starting/stopping as a service
Bugfixes
-
Scripts:
- repaired
abs_path() computation that crippled relative-path
arguments of rtt-get-tc-coverage / rtt-doc-test
if they contained single-character directories (like "/c/")
(fixes #19426)