11## News
2- ** Release 3.11 -- 2022-09 -07**
2+ ** Release 3.12 -- 2022-11 -07**
33
4- We are pleased to announce the release of Copilot 3.11 , a stream-based DSL for
4+ We are pleased to announce the release of Copilot 3.12 , a stream-based DSL for
55writing and monitoring embedded C programs, with an emphasis on correctness and
66hard realtime requirements. Copilot is typically used as a high-level runtime
77verification framework, and supports temporal logic (LTL, PTLTL and MTL),
@@ -10,21 +10,36 @@ clocks and voting algorithms.
1010Among others, Copilot has been used at the Safety Critical Avionics Systems
1111Branch of NASA Langley Research Center for monitoring test flights of drones.
1212
13- This new release introduces a new library copilot-interpreter that exposes the
14- functions related to the interpreter backend, pre-existing functions included
15- as part of copilot-core are now deprecated. It also fixes multiple bugs,
16- removes deprecated elements, hides internal parts of the implementation from
17- the public API, and improves the codebase by re-implementing a function without
18- the use of unsafeCoerce. This release also continues to use our new software
19- engineering process designed to meet the requirements to obtain NASA's Class D
20- software classification. Details are available
21- [ here] ( https://github.com/Copilot-Language/copilot/milestone/15?closed=1 ) .
22-
23- Current emphasis is on facilitating the use with other systems, improving the
24- codebase in terms of stability and test coverage, removing unnecessary
25- dependencies, hiding internal definitions, and formatting the code to meet our
26- new coding standards. Users are encouraged to participate by opening issues and
27- asking questions via our [ github
13+ The main changes in this release are as follows:
14+
15+ - A new library ` copilot-prettyprinter ` exposes functions related to the
16+ Copilot Core pretty-printing backend. Pre-existing functions included as
17+ part of ` copilot-core ` are now deprecated.
18+ - The C99 backend now produces an additional header file with struct
19+ declarations. This file is used by the C implementation file generated by
20+ Copilot to define structs before the declarations of the handlers, avoiding
21+ potential forward declarations that the C compiler cannot resolve. Users of
22+ Copilot can choose to import the same new type declaration header file before
23+ the standard Copilot header file in their hand-written code, or use external
24+ definitions that declare compatible structs. Note that, in the former case,
25+ the header file that declares the structs must be included * before* the
26+ header file that declares the externs, handlers and step function.
27+ - The custom type equality module in ` copilot-core ` is now deprecated in favor
28+ of the definition of type equality in ` base ` .
29+ - ` copilot-theorem ` now includes support for proofs by bisimulation necessary
30+ for future extensions to Copilot.
31+ - ` copilot-core ` now complies with the coding rules established as part of the
32+ process of compliance with NASA's Class D requirements (NPR 7150.2).
33+
34+ This release also continues to use our new software engineering process
35+ designed to meet the requirements to obtain NASA's Class D software
36+ classification. Details are available
37+ [ here] ( https://github.com/Copilot-Language/copilot/milestone/16?closed=1 ) .
38+
39+ Current emphasis is on improving the codebase in terms of stability and test
40+ coverage, removing unnecessary dependencies, hiding internal definitions, and
41+ formatting the code to meet our new coding standards. Users are encouraged to
42+ participate by opening issues and asking questions via our [ github
2843repo] ( https://github.com/copilot-language/copilot ) .
2944
3045## Licence
0 commit comments