11## News
2- ** Release 4.2 -- 2025-01 -07**
2+ ** Release 4.7.1 -- 2026-05 -07**
33
4- We are pleased to announce the release of Copilot 4.2 , a stream-based DSL for
4+ We are pleased to announce the release of Copilot 4.7.1 , 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,45 +10,35 @@ clocks and voting algorithms.
1010Among others, Copilot is being used at the Safety Critical Avionics Systems
1111Branch of NASA Langley Research Center for monitoring test flights of drones.
1212
13- This release introduces several big improvements to Copilot:
13+ This release introduces several improvements to Copilot:
1414
15- - Specifications can now use the same handler for multiple monitors, provided
16- that the arguments to those handlers always have consistent types and arity.
17- This simplifies the code that uses Copilot, since it's no longer necessary to
18- create multiple boilerplate wrappers around the same handling routines.
15+ - Fix corner cases in the treatment of special floating point numbers in the
16+ Bluespec backend and ` copilot-theorem ` .
1917
20- - The use of structs has been vastly simplified. Before, it was necessary to
21- define class instances for structs, whose implementations were, although
22- repetitive, not intuitive especially for users unfamiliar with Haskell. In
23- Copilot 4.2, it is now possible to define those methods automatically by
24- relying on default method implementations that work well for most cases,
25- although users retain the ability to customize those methods if desired.
18+ - Fix errors in examples in ` copilot-theorem ` that use Z3.
2619
27- - We have increased test coverage in ` copilot-core ` , reaching full coverage of
28- the public interface .
20+ - Add to ` copilot-libraries ` a module to perform sanity checks of Copilot
21+ specifications .
2922
30- The interface of ` copilot-core ` has also been simplified, deprecating record
31- fields of an existential type UExpr, which were largely unused outside of
32- Copilot's internals.
23+ - Add to ` copilot-libraries ` a module to facilitate implementing state
24+ machines.
25+
26+ We expect those new modules to grow in the future.
3327
3428The new implementation is compatible with versions of GHC from 8.6 to 9.10, as
3529well as with Stackage Nightly.
3630
37- This release has been made possible thanks to key submissions from Frank Dedden
38- (@fdedden ), Ryan Scott (@RyanGlScott ), and Kyle Beechly (@kaBeech ), the last of
39- which is also a first-time contributor to the project. We are grateful to them
40- for their timely contributions, especially during the holidays, and for making
41- Copilot better every day. We also want to thank the attendees of Zurihac 2024
42- for technical discussions that helped find the right solutions to some of the
43- problems addressed by this release.
31+ This release has been made possible thanks to key submissions from Ryan Scott
32+ (Galois), and Chris Hathhorn (Galois). We are grateful to them for their timely
33+ contributions, and for making Copilot better every day.
4434
4535Details are available
46- [ here] ( https://github.com/Copilot-Language/copilot/milestone/30 ?closed=1 ) ,
36+ [ here] ( https://github.com/Copilot-Language/copilot/milestone/38 ?closed=1 ) ,
4737and
48- [ here] ( https://github.com/Copilot-Language/copilot/releases/tag/v4.2 ) .
38+ [ here] ( https://github.com/Copilot-Language/copilot/releases/tag/v4.7.1 ) .
4939
5040As always, we're releasing exactly 2 months since the last release. Our next
51- release is scheduled for Mar 7th, 2025 .
41+ release is scheduled for Jul 7th, 2026 .
5242
5343We want to remind the community that Copilot is now accepting code
5444contributions from external participants again. Please see the discussions and
0 commit comments