Releases: AdaCore/RecordFlux
Releases · AdaCore/RecordFlux
v0.21.0
Changed
- Improve error messages for type refinements of non-message types (#383, eng/recordflux/RecordFlux#383)
Fixed
- Generation of uncompilable code in the presence of some Boolean conditions (eng/recordflux/RecordFlux#1365)
- Exception when checking specification in GNAT Studio (eng/recordflux/RecordFlux#1492)
v0.20.0
Added
- Possibility to use multiple initial links in messages to allow the first message field to be defined by parameter values (#764, eng/recordflux/RecordFlux#764)
Changed
- Improve performance of code optimizer (requires SPARK 25; eng/recordflux/RecordFlux#1533)
Fixed
- Parsing of messages that depend on fraction comparisons in PyRFLX (#981, eng/recordflux/RecordFlux#981)
- Installation of VS Code extension (eng/recordflux/RecordFlux#1544)
v0.19.0
Added
- Prevent different casings for same entity (#563, eng/recordflux/RecordFlux#563)
- Code optimizer that removes unnecessary checks in generated state machine code (eng/recordflux/RecordFlux#1525)
Fixed
- Unexpected errors when using different casings for same entity (#562, eng/recordflux/RecordFlux#1506)
v0.18.0
Added
- Pragma marking all generated files as Ada 2012 (#1293, eng/recordflux/RecordFlux#1509)
--no-caching
option torflx
(eng/recordflux/RecordFlux#1488)- Model verification caching to validator
Changed
- Insert/Extract functions accept Byte array instead of access type (eng/recordflux/RecordFlux#1515)
Fixed
- Various inaccuracies in Language Reference (#958, eng/recordflux/RecordFlux#958)
- Erroneous acceptance of consecutive / trailing underscores (eng/recordflux/RecordFlux#1468)
- Fatal error when digit in numeric literal exceeds base (eng/recordflux/RecordFlux#1469)
- Fatal error when unsupported base is used in numeric literal (eng/recordflux/RecordFlux#1470)
- Missing diagnostics provided by language server
--split-disjunctions
options ofrflx validate
- Misleading CLI output about verification (#1295, eng/recordflux/RecordFlux#1522)
v0.17.0
Fixed
- Fatal error when comparing opaque fields (#1294, eng/recordflux/RecordFlux#1497)
- Fatal error when GraphViz is missing (eng/recordflux/RecordFlux#1499)
- Missing rejection of sequences of parameterized messages (eng/recordflux/RecordFlux#1439)
Removed
- Verification of message bit coverage (eng/recordflux/RecordFlux#1495)
v0.16.0
Added
- Support for FSF GNAT 13.2 (eng/recordflux/RecordFlux#1458)
--reproducible
option torflx generate
andrflx convert
(eng/recordflux/RecordFlux#1489)
Changed
- Improve parallelization of message verification (#444, eng/recordflux/RecordFlux#444)
- Improve message verification (#420, #1090, eng/recordflux/RecordFlux#420, eng/recordflux/RecordFlux#1090, eng/recordflux/RecordFlux#1476)
Fixed
- Proving of validity of message field after update with valid sequence (eng/recordflux/RecordFlux#1444)
- Style check warnings for license header (#1293, eng/recordflux/RecordFlux#1461)
v0.15.0
Added
- Support for SPARK Pro 24.0 (eng/recordflux/RecordFlux#1409)
- Support for GNAT Pro 24.0 (eng/recordflux/RecordFlux#1443)
Changed
- Syntax for passing repeated
-i
and-v
options torflx validate
(eng/recordflux/RecordFlux#1441) - Simplify setter code and remove internal
Successor
function (eng/recordflux/RecordFlux#1448) - Improve names of enum literals generated from IANA registries (eng/recordflux/RecordFlux#1451)
Fixed
- User defined
GNATCOLL_ICONV_OPT
environment variable is ignored (#1289, eng/recordflux/RecordFlux#1437) - Fatal errors caused by condition on message type field (#1291, eng/recordflux/RecordFlux#1438)
Removed
- Support for SPARK Pro Wavefront 20230905 (eng/recordflux/RecordFlux#1409)
- Short form field conditions (eng/recordflux/RecordFlux#617)
v0.14.0
Added
- Functions
Valid_Next_Internal
,Field_Size_Internal
,Field_First_Internal
(eng/recordflux/RecordFlux#1382) rflx validate
-v
and-i
options accept multiple directories (eng/recordflux/RecordFlux#1393)rflx validate
-v
and-i
options accept also files (eng/recordflux/RecordFlux#1418)- Caching of successful verification of derived messages and refinements (eng/recordflux/RecordFlux#1421)
Changed
- Removed
Predecessor
field fromField_Cursor
record (eng/recordflux/RecordFlux#1387) - Improve stability and performance of language server (eng/recordflux/RecordFlux#1417)
- Improve performance of model verification
Fixed
- Code generation for accesses to optional fields whose presence is ensured by a condition (eng/recordflux/RecordFlux#1420)
- Error when passing checksum module to validator on the command line
Removed
- Functions
Valid_Predecessor
andPath_Condition
(eng/recordflux/RecordFlux#1382)
v0.13.0
Added
- Support for SPARK Pro Wavefront 20230905 (eng/recordflux/RecordFlux#1403, eng/recordflux/RecordFlux#1409)
Changed
- Reject duplicate optional arguments in
rflx
CLI (eng/recordflux/RecordFlux#1342) - Split the
Valid_Context
into multiple functions (eng/recordflux/RecordFlux#1385) - IANA registries with unsupported content are skipped with a warning (eng/recordflux/RecordFlux#1406)
Removed
- Support for GNAT Pro 20.2 and GNAT Community 2020 (eng/recordflux/RecordFlux#1403)
- Support for SPARK Pro 23.1 (eng/recordflux/RecordFlux#1403)
v0.12.0
Added
- Language server (eng/recordflux/RecordFlux#1355)
- VS Code extension (eng/recordflux/RecordFlux#1355)
- Support for GNAT Pro 23.2
- Logging of required runtime checks during code generation (#1204, eng/recordflux/RecordFlux#1204)
Changed
- Prevent unnecessary runtime checks in generated code (#1204, eng/recordflux/RecordFlux#1204)
- Removal of discriminant in
Field_Cursor
type (eng/recordflux/RecordFlux#1377)
Fixed
- Missing quotes in error messages about invalid aspects (#1267, eng/recordflux/RecordFlux#1267)
- Subsequent errors caused by style errors (#1268, eng/recordflux/RecordFlux#1268)
- Missing type checking in refinement conditions (eng/recordflux/RecordFlux#1360)
- Exception caused by comparing integer field to aggregate (#1251, eng/recordflux/RecordFlux#1251)
- Unexpected errors when using
--max_errors=1
(#825, eng/recordflux/RecordFlux#825) - Incorrect detection of conditions as always true for enumerations with
Always_Valid
aspect (#1276, eng/recordflux/RecordFlux#1276) - Potential name conflicts with internally used identifiers that start with
RFLX_
(#638, eng/recordflux/RecordFlux#638) - Deadlocks during verification caused by forked processes (eng/recordflux/RecordFlux#1366)