Releases: lf-lang/lingua-franca
Lingua Franca Nightly
Bug Fixes
Commits
Lingua Franca 0.8.2
v0.8.2 (2024-08-02)
Highlights
This patch release includes minor bugfixes and several enhancements of our Docker support. It also adds custom serialization for the Python target and support for the use of target code expressions to specify time values in C++.
🚀 New Features
✨ Enhancements
- Ability to use of target code expressions for time values in C++ #2369 (@cmnrd)
- Do not require libexecinfo in C++ docker images #2372 (@cmnrd)
- Immediate start of federates with STP offset under decentralized coordination & fix target code STP_offset #2368 (@Depetrol)
- Custom Serialization in Python Target #2375 (@Depetrol)
- RTI Docker Hub Continuous Deployment with Multiplatform Support #2384 (@Depetrol)
🔧 Fixes
- Immediate start of federates with STP offset under decentralized coordination & fix target code STP_offset #2368 (@Depetrol)
- Fixed docker support for the Python target #2377 (@cmnrd)
- Fix to get get all preambles in Python + updated tests #2381 (@edwardalee)
- C++ raw strings allowed in target code blocks #2385 (@lhstrh)
🚧 Maintenance and Refactoring
- Renaming
Latest Tag Completed
toLatest Tag Confirmed
#2346 (@byeonggiljun)
Submodule lf-lang/reactor-c
🚀 New Features
- Support for Patmos platform #383 (@EhsanKhodadad)
✨ Enhancements
- Immediate start of federates with STA offset under decentralized coordination #469 (@Depetrol)
- Custom Serialization in Python Target #471 (@Depetrol)
- Optimization of LTC signals #445 (@byeonggiljun)
- RTI dockerfile support for multi-architecture builds #464 (@elgeeko1)
Submodule lf-lang/reactor-cpp
✨ Enhancements
Submodule lf-lang/reactor-rs
- No Changes
Lingua Franca 0.8.1
v0.8.1 (2024-07-14)
Highlights
This patch release includes several minor bugfixes and enhancements, improving Docker support for the C++ target and providing a more complete implementation of watchdogs.
✨ Enhancements
- API to look up source and package directory in Python #2331 (@edwardalee)
- Define self variable so it can be used in instantiations #2353 (@edwardalee)
- Fixed build script support in C++ docker generation #2357 (@cmnrd)
- Diagram support for watchdogs #2356 (@edwardalee)
- Fixed C++ docker generation for when cmake is not installed #2358 (@cmnrd)
- Effects made accessible in watchdog handlers #2359 (@lhstrh)
🚧 Maintenance and Refactoring
- Platform name changed from
Nrf52
tonRF52
#2350 (@edwardalee)
Submodule lf-lang/reactor-c
🚀 New Features
- New Python functions
lf.package_directory()
andlf.source_directory()
#455 (@edwardalee)
🔧 Fixes
- Better error messages when HMAC authentication is attempted by federates when RTI does not support it #461 (@Jakio815)
Submodule lf-lang/reactor-cpp
- No Changes
Submodule lf-lang/reactor-rs
- Remove creusot sources and merge back vecmap into main runtime crate #47 (@oowekyala)
Lingua Franca 0.8.0
v0.8.0 (2024-07-02)
Highlights
This release includes new features including support for the FlexPRET platform and multi-threading on the RP2040 platform. Enhancements include broader and more customizable support for Docker, as well as fixes for various bugs related to C++ ports, nRF52, and Dockerfile generation. Additionally, new tests were added, dependencies were updated, and several bug fixes and enhancements were made across various runtime implementations.
🚀 New Features
- Support for FlexPRET platform #2262 (@magnmaeh)
- Rp2040 multithreaded target support #2178 (@sberkun)
- Support for Docker environment files #2349 (@lhstrh)
✨ Enhancements
- Support for Python 3.9.x #2292 (@jackyk02)
- Fix deadline inference, test GEDF, and remove chain ID #2294 (@edwardalee)
- Improved support for Docker #2234 (@lhstrh)
- Fixed docker generation for images that use /bin/sh #2335 (@cmnrd)
- Safer directory creation in Docker container #2337 (@lhstrh)
- Docker networking enhancements #2345 (@lhstrh)
🔧 Fixes
- Disambiguate set(0) for C++ ports #2302 (@cmnrd)
- Fixed CMake generator for pico platform #2303 (@edwardalee)
- Fixed NRF52 support #2305 (@edwardalee)
- No more support for Python 3.9 #2312 (@lhstrh)
- Make files available in Docker runner image #2327 (@petervdonovan)
- Bugfixes in handling of target properties across imports #2232 (@byeonggiljun)
- Fixed bug in modes with microsteps #2338 (@edwardalee)
- Add
tty:true
to docker-compose.yml #2344 (@lhstrh) - Fixed copying of multiple files in the generated dockerfiles #2348 (@cmnrd)
- Fixes in adaptive scheduler for federated execution #2347 (@petervdonovan)
🧪 Tests
⬆️ Updated Dependencies
Submodule lf-lang/reactor-c
🚀 New Features
- Support for FlexPRET platform #412 (@magnmaeh)
- Rp2040 multithreaded target support #344 (@sberkun)
- Trace deadline violations #457 (@petervdonovan)
✨ Enhancements
- Let pthread detect if the cpu number is valid #436 (@erlingrj)
- Run one worker on main thread #437 (@sberkun)
- Rp2040 multithreaded target support #344 (@sberkun)
- Redesign of GEDF scheduler #433 (@edwardalee)
🔧 Fixes
- Support for hyphens and underscores in rti host name #435 (@erlingrj)
- Redesign of GEDF scheduler #433 (@edwardalee)
- Fix cmake syntax #440 (@edwardalee)
- RP2040 support based on low-level platform API #441 (@edwardalee)
- Suppress error: cast from pointer to integer of different size #448 (@petervdonovan)
- Fixed initialization of the master worker thread id #454 (@cmnrd)
- Increment tag after mode switch rather than set to 1 #459 (@edwardalee)
- Fixes to prevent memory leaks in RTI #446 (@byeonggiljun)
- Fix support for NRF52 #442 (@edwardalee)
- Fix adaptive scheduler #463 (@petervdonovan)
- Make tracing usable for debugging #462 (@petervdonovan)
🚧 Maintenance and Refactoring
- Redesign of GEDF scheduler #433 (@edwardalee)
Submodule lf-lang/reactor-cpp
Submodule lf-lang/reactor-rs
- No Changes
Lingua Franca 0.7.2
v0.7.2 (2024-05-20)
Highlights
This release includes patches of the C runtime only.
Submodule lf-lang/reactor-c
✨ Enhancements
🔧 Fixes
- Fixed preprocessor directives for clock sync #425 (@edwardalee)
- Zephyr: Reset sleeping semaphore and correctly check its return values #431 (@erlingrj)
Submodule lf-lang/reactor-cpp
- No Changes
Submodule lf-lang/reactor-rs
- No Changes
Lingua Franca 0.7.1
v0.7.1 (2024-05-17)
Highlights
This patch release includes bugfixes that address imports, tracing plugins, clock synchronization, and code generation issues.
🔧 Fixes
- Search for imported reactors to include reactors instantiated in modes #2277 (@erlingrj)
- Extensions to the trace-plugin property #2275 (@erlingrj)
- Set annotated layout options for modes. #2267 (@soerendomroes)
- Fixed code generation for nested generic reactor instances #2284 (@cmnrd)
- Code-generator changes required for reactor-c clock-sync fix #2285 (@erlingrj)
Submodule lf-lang/reactor-c
🔧 Fixes
- Fix race condition in lf_watchdog_stop #417 (@erlingrj)
- TracePluginProperty fixes #420 (@erlingrj)
- RTI and federate socket fixes #422 (@erlingrj)
Submodule lf-lang/reactor-cpp
- No Changes
Submodule lf-lang/reactor-rs
- No Changes
Lingua Franca 0.7.0
v0.7.0 (2024-05-01)
Highlights
This release includes several new features, enhancements, fixes, and maintenance/refactoring updates. Notable additions include a new Plugin API for tracing, improved support for Zephyr, and enhancements of the Docker support. Fixes address issues like path conversion on Windows and null pointer exceptions in message reporting. Maintenance efforts focus on test stabilization and dependency updates, with notable enhancements to documentation and codebase cleanliness. Additionally, enhancements and fixes are applied to the reactor-c and reactor-cpp runtime, with updates to platform APIs, memory management, and bug fixes related to tracing and enclave programs. Caution: Breaking changes are included in reactor-c's support for federated execution.
🚀 New Features
- Plugin API for tracing #2192 (@petervdonovan)
✨ Enhancements
- Use login shell so ~/.bash_profile is sourced #2169 (@edwardalee)
- Have colorized outputs from C/Cpp compilers as default #2182 (@erlingrj)
- Change to CLOCK_REALTIME for C target + cleanup #2184 (@erlingrj)
- Add watchdogs to environment struct #2172 (@erlingrj)
- Fixed clang warnings in generated C++ code #2201 (@cmnrd)
- Report unsupported target properties as errors #2217 (@cmnrd)
- More user-friendly Docker support #2198 (@lhstrh)
- Remove list types and list initialization syntax #2235 (@cmnrd)
- Make the Kernel timer the default clock for Zephyr #2248 (@erlingrj)
- IntelliJ run config to start the LS #2260 (@soerendomroes)
🔧 Fixes
- Use Zephyr's CMake extension to correctly build and link reactor-c #2167 (@erlingrj)
- Fixed path conversion on Windows #2174 (@cmnrd)
- Reduced scope for conflicting main reactors check #2180 (@lhstrh)
- Tests that were previously failing re-enabled #2168 (@edwardalee)
- Escape special characters in type arguments. #2186 (@petervdonovan)
- Directory definitions corrected and made to work for federated. #2204 (@edwardalee)
- Fixed
#line
directives on Windows #2220 (@petervdonovan) - Fixed null pointer exception in message reporting #2230 (@cmnrd)
- Fixed code generation for connections involving enclave banks with multiports #2222 (@julianrobledom)
- Include clock sync for federated programs on multiple platforms. #2243 (@edwardalee)
- Fixed clean building federated programs #2247 (@cmnrd)
- Fix in error handling for Docker builds #2249 (@petervdonovan)
- Docker compose also create bin directory if not present #2251 (@erlingrj)
- Fix NPE bug for instance in mode #2270 (@edwardalee)
- Bugfixes in the thread scheduling API #2268 (@erlingrj)
- Fix for validation of target properties dictionaries #2272 (@magnmaeh)
🚧 Maintenance and Refactoring
- Tests that were previously failing re-enabled #2168 (@edwardalee)
- Change to CLOCK_REALTIME for C target + cleanup #2184 (@erlingrj)
- Replace use of deprecated APIs in C tests #2190 (@edwardalee)
- Deflake test #2196 (@edwardalee)
- Directory definitions corrected and made to work for federated. #2204 (@edwardalee)
- Further cleanup #2210 (@edwardalee)
- Use lf_combine_deadline_and_level function #2226 (@edwardalee)
- Removal of the
compiler-flags
target property #2233 (@cmnrd) - Replacement of
javax.inject
withcom.google.inject
#2253 (@soerendomroes)
⬆️ Updated Dependencies
- Xtext bumped to 3.34.0 #2264 (@lhstrh)
- Klighd upgraded to v3.0.1 #2263 (@soerendomroes)
Submodule lf-lang/reactor-c
🚀 New Features
- Plugin API for tracing #342 (@petervdonovan)
- Extend platform API with functions for setting thread scheduling policy, core affinity and priority + remove C11 as platform #355 (@erlingrj)
✨ Enhancements
- Use Zephyr's CMake extension to correctly build and link reactor-c #339 (@erlingrj)
- Put a single event on the recycle queue initially to avoid runtime malloc #351 (@erlingrj)
- Add address query reply message #369 (@Jakio815)
- Print more info when assertion fails #376 (@erlingrj)
- Use SI units in reporting human-readable time #380 (@edwardalee)
- Zephyr make kernel clock default + improvements #400 (@erlingrj)
- Improve handling of timeouts when federates connect to RTI/each other #407 (@erlingrj)
- Unit testing of thread scheduling API + additional fixes #416 (@erlingrj)
🔧 Fixes
- Rename semaphore.h/c to lf_semaphore.h/c #340 (@edwardalee)
- Fix data races for _lf_count_payload_allocations and _lf_count_token_allocations #313 (@erlingrj)
- Cleanup pass removing deprecated reactor-body APIs #353 (@edwardalee)
- Fix watchdog termination #341 (@erlingrj)
- No use of C11 threads on Windows #364 (@petervdonovan)
- Fix #370 #371 (@lhstrh)
- Fix tagged message length from
int32_t
touint32_t
#368 (@Jakio815) - Fix for Clang error #379 (@lhstrh)
- Change ADR_RQ to ADR_QR for correct line drawing in trace_svg.html #377 (@chanijjani)
- Fix tagged message length from int32_t to uint32_t #391 (@Jakio815)
- Add address query reply message #392 (@Jakio815)
- Update RTI dockerfile to match file layout change #399 (@petervdonovan)
- Proper handling of negative value passed in as the number of federates #411 (@chanijjani)
- Fix clock sync init option #414 (@edwardalee)
- Add fix to thread scheduling API #415 (@erlingrj)
🚧 Maintenance and Refactoring
- Further cleanup of assertions #347 (@edwardalee)
- Move to CLOCK_REALTIME introduce clock.h and lf_atomic.h #346 (@erlingrj)
- Cleanup pass removing deprecated reactor-body APIs #353 (@edwardalee)
- Further cleanup #354 (@edwardalee)
- Added lf_combine_deadline_and_level function for use by code generator #381 (@edwardalee)
- Add clang-format and run it on the code-base #384 (@erlingrj)
- Enable all warnings and treat them as errors #387 (@erlingrj)
- Refactoring of event queue #390 (@byeonggiljun)
📖 Documentation
- Fixes to README #345 (@lhstrh)
- Use SI units in reporting human-readable time #380 (@edwardalee)
Submodule lf-lang/reactor-cpp
🔧 Fixes
- Fixed bug that arises when enabling tracing in programs with enclaves. [#55](https://gith...
Lingua Franca 0.6.0
v0.6.0 (2024-01-26)
Highlights
This release improves the federated execution capability, makes the handling of target properties more modular and robust, and provides various bugfixes and small enhancements.
🚀 New Features
- Usage of high-resolution counter device on Zephyr boards. Update to v3.4.0 #2007 (@erlingrj)
- Bracket list expression for initialization without escaping #2003 (@oowekyala)
- [C] Self struct made available to initializers of state variables, parameters #2014 (@OmerMajNition)
- New
--no-source-mapping
switch to disable line directives #2092 (@lhstrh) - Ability to specify rti image for dockerized federated programs #2144 (@lhstrh)
✨ Enhancements
- Show reaction names in diagrams #2030 (@cmnrd)
- Generate default values for the user-configurable CMake flags #2036 (@erlingrj)
- Fix to generate launch script for TS target and print informational message #2090 (@hokeun)
- Use more explicit include guards for Arduino #2102 (@petervdonovan)
- Better placement of line directives #2101 (@petervdonovan)
- String literal allowed as property name #2136 (@oowekyala)
- Various bugfixes and cleanups in the support for federated programs #2140 (@edwardalee)
🔧 Fixes
- Handling of unconnected outputs to avoid segmentation fault #2011 (@edwardalee)
- Fixed timeout and shutdown in C++ #2012 (@cmnrd)
- Stabilized LSP diagram genenation and added default expansion option #2018 (@cmnrd)
- Avoid null pointer exception in diagrams with bodyless reactions #2020 (@cmnrd)
- Removed "Reaction level" diagram synthesis option #2019 (@cmnrd)
- Fixed error reporting in the verifier #2031 (@cmnrd)
- Fixed trimming of the recorded test output #2040 (@cmnrd)
- Fix problems with assignment serialization in diagrams #2038 (@a-sr)
- Fixed bug in the C++ reaction dependency analysis #2050 (@cmnrd)
- Handling of unknown width for multiports #2057 (@edwardalee)
- Fixed race-condition in
_lf_replace_template_token
#2082 (@erlingrj) - Output path specified in JSON used correctly #2088 (@lhstrh)
- Fix bug in C decentralized execution with small after delays #2032 (@petervdonovan)
- Use more explicit include guards for Arduino #2102 (@petervdonovan)
- Fixed mistake in code-generated reaction preamble #2105 (@erlingrj)
- Fix undetected
scheduler
andworkers
properties #2110 (@lsk567) - Fix bug: set length on incoming token #2122 (@edwardalee)
- Type check error turned into warning #2111 (@lhstrh)
- Fix minimum spacing of actions and reference to freed event #2128 (@edwardalee)
- Bugfix for TypeScript in dev mode #2130 (@lhstrh)
- Parallel compilation disabled to avoid triggering deadlock in concurrent invocations of CMake #2145 (@edwardalee)
- Python docker parent image fixed at version
3.10
#2151 (@petervdonovan) - Fix for cycle detection issue #2112 (@lhstrh)
- Fixed
hashCode()
implementation inTimeValue
class #2157 (@lhstrh) - Various bugfixes and cleanups in the support for federated programs #2140 (@edwardalee)
- Removal of image-specific commands in case base image is specified #2158 (@lhstrh)
- Fix some zephyr build issues #2160 (@erlingrj)
- Fix for #2087 #2147 (@a-sr)
- Fixed parameter forwarding for non-trivial types in C++ #2164 (@cmnrd)
- Fixed generation of preambles for unused imports #2165 (@cmnrd)
🚧 Maintenance and Refactoring
- Apply spotbugs plugin #2005 (@cmnrd)
- Cleaned up test code to fix all test related spotbugs warnings #2006 (@cmnrd)
- Remove deprecated C schedulers++ #2037 (@erlingrj)
- Removal of
ulog
fromreactor-ts
, code generator updated to allow this change #2052 (@axmmisaka) - Refactoring of target properties and their validation #2008 (@lhstrh)
- The 'threading' CLI option/build param/target property changed to 'single threaded' #1817 (@patilatharva)
- Minimal changes to merge reactor-c enclaves #2095 (@erlingrj)
- Fix file structure for future
networks
option #2070 (@Jakio815) - Fix minimum spacing of actions and reference to freed event #2128 (@edwardalee)
📖 Documentation
🧪 Tests
- Fixed error reporting in the verifier #2031 (@cmnrd)
- Fixed trimming of the recorded test output #2040 (@cmnrd)
- Adjustment to test output to show progress #2137 (@lhstrh)
- Time limits imposed on integration tests #2141 (@lhstrh)
⬆️ Updated Dependencies
Submodule lf-lang/reactor-c
🚀 New Features
✨ Enhancements
- Use real-time sockets in federated execution #274 (@erlingrj)
- Progress towards Python 3.11 support #255 (@cmnrd)
- Use env command rather than /usr/bin/python3 #297 (@edwardalee)
- Priority queue refactoring #306 (@edwardalee)
- Detect ZDC in RTI and issue PTAG only for nodes in ZDC #311 (@edwardalee)
- Add an option for specifying the time interval of showing messages to the tracing visualizer #320 (@byeong-gil)
- Various bugfixes and cleanups in the support for federated programs #323 (@edwardalee)
🔧 Fixes
- Removal of the "waiting for tag" field #266 (@petervdonovan)
- Mixed microsteps and time #269 (@petervdonovan)
- Fedsd fix self_id #271 (@ChadliaJerad)
- Guard against unconnected outputs #275 (@edwardalee)
- Fixed argparse for
fedsd
#273 (@erlingrj) - Fixed
GEDF_NP
and removal of deprecated schedulers #282 (@erlingrj) - Fixed overflow bug affecting 32-bit Linux platforms #288 (@erlingrj)
- Zephyr: default thread stack size updated to 2KB #299 (@erlingrj)
- Bugfix in C decentralized execution with small after delays #280 (@petervdonovan)
- Added return for non-void return function for arduino support #309 (@chacalnoir)
- Handle messages arriving during initial STA wait #316 (@edwardalee)
- Fix minimum spacing of actions and reference to freed event [#...
Lingua Franca 0.5.1
v0.5.1 (2023-09-12)
Highlights
This release addresses several issues in the C code generator and fixes Docker support for federations.
✨ Enhancements
- Avoid squeezing reaction, method, or preamble bodies onto a single line #1984 (@petervdonovan)
🔧 Fixes
- Fix for setting federates' bank index #1989 (@petervdonovan)
- Default hostname for RTI in dockerized federation changed from "localhost" to "rti" #1993 (@byeong-gil)
- Fix for unconnected multiport and bank reactor bug #1953 (@OmerMajNition)
🚧 Maintenance and Refactoring
- Gradlew not longer used to run dev version of lf cli tools #1988 (@axmmisaka)
- More robust dev scripts and removed util directory #1995 (@cmnrd)
🧪 Tests
- Tests for
lf_set_array
and persistent inputs #1987 (@edwardalee) - Minor fixes for C++ tests #1979 (@revol-xut)
Submodule lf-lang/reactor-c
- No Changes
Submodule lf-lang/reactor-cpp
- No Changes
Submodule lf-lang/reactor-rs
- No Changes
Lingua Franca 0.5.0
v0.5.0 (2023-09-01)
Highlights
This release introduces new syntax for initializers, includes a renovation of the C backend to let it generate more modular code, and brings new features like a watchdog construct, support for generics in C, support for SMT-solver-based formal verification using UCLID-5, and bare-iron support for the Raspberry Pi Pico platform.
🚀 New Features
- Types allowed in reactor type args #1639 (@oowekyala)
- Equals initializer syntax #1580 (@oowekyala)
--json
and--json-file
CLI args add tolfc
#1686 (@patilatharva)- Generated structs exposed in header files, reactions linkable from separate source files, and updated C target preamble visibility #1599 (@petervdonovan)
- Preprocessor definition for
LF_PACKAGE_DIRECTORY
#1720 (@edwardalee) - Enclave connections and enclave coordination in the C++ target #1665 (@cmnrd)
- Mechanism for printing execution statistics #1743 (@cmnrd)
- Watchdog support for the C target #1730 (@Benichiwa)
- Automatically generated .vscode/settings.json file #1759 (@edwardalee)
- C Generics #1681 (@mkhubaibumer)
- Generic params allowed as generic arguments in C target #1804 (@petervdonovan)
- New
--check
flag forlff
#1822 (@cmnrd) - Environments in the C target #1772 (@erlingrj)
lfd
binary for generating diagrams from the command line #1713 (@cmnrd)fedsd
utility updated to make the RTI optional and support enclaves visualization #1870 (@ChadliaJerad)- C math lib always linked for C target #1894 (@cmnrd)
- Critical sections enabled outside of the context of a reactor #1901 (@edwardalee)
- Uclid5-based LF Verifier #1271 (@lsk567)
- Python launch scripts #1914 (@cmnrd)
- Raspberry Pi Pico target support #1831 (@gundralaa)
- Handling cyclic dependencies for TypeScript federated execution #1925 (@byeong-gil)
✨ Enhancements
- Keeplive natively inferred in the C++ runtime #1630 (@cmnrd)
- File access #1715 (@edwardalee)
- Validator rules to check if target supports federation or inheritance #1726 (@cmnrd)
- No more space inserted after
interleaved
keyword by formatter #1846 (@cmnrd) - More natural syntax for reaction declarations #1853 (@lhstrh)
- Fix for extra whitespace around info messages #1879 (@oowekyala)
- TypeScript runtime bumped to
v0.5.0
#1927 (@byeong-gil) - Support for named and bodyless reactions in C++ #1933 (@cmnrd)
- Added layout annotation to add arbitrary layout options an elements #1951 (@soerendomroes)
🔧 Fixes
- Physical connections implemented as AST transformation #1596 (@erlingrj)
- Fix for language server "Build and Run" command #1619 (@petervdonovan)
- Fix for passing of command line options from lfc to the generator #1631 (@cmnrd)
- Fix for validation of target properties #1629 (@cmnrd)
- Fix in validation so that warnings are not reported as errors #1643 (@petervdonovan)
- Fix for NPE in lfc error reporting #1655 (@cmnrd)
- Upstream connection delays now properly handled in the TypeScript federates #1607 (@byeong-gil)
- Fix for authenticated federation #1698 (@Jakio815)
- Bugfixes in handling of
files
target property #1725 (@lhstrh) - Preambles properly inherited from superclasses #1732 (@edwardalee)
- Clean
Correspondence
tags out of generated C code #1737 (@petervdonovan) - Reactor classes in the same file with the same name, up to case differences, are prohibited #1741 (@petervdonovan)
- Fix for ROS serialization #1755 (@petervdonovan)
- Improved line adjustment logic for federated programs #1760 (@petervdonovan)
- Multiple fixes for federated programs with TypeScript target #1752 (@byeong-gil)
- Fix for race condition in
uniqueName
#1815 (@petervdonovan) - Bugfix in integration tests and fixed ROS2 tests #1841 (@cmnrd)
- Formatter fixes #1840 (@petervdonovan)
- Adjustments for running the LF compiler in Epoch #1844 (@a-sr)
- More formatter fixes #1850 (@petervdonovan)
- More formatter fixes #1851 (@petervdonovan)
- Fix for naming collision when generic reactor is instantiated with different parameters #1864 (@petervdonovan)
- Fix for inheritance problem exposed in examples #1891 (@lhstrh)
- Fix verifier error when there is no main reactor #1916 (@lsk567)
- No more use of unordered reactions in federated programs; fix for deadlocks in some federated programs #1684 (@arengarajan99)
- Keyword
extends
added to tokens allowed in reaction bodies #1926 (@lhstrh) - Fix for edge case in which comments are dropped #1924 (@petervdonovan)
- Fix for IllegalArgumentException in diagram synthesis #1932 (@petervdonovan)
- Fix for STP violation #1935 (@petervdonovan)
- Fix for after delays that use user-provided declarations #1959 (@petervdonovan)
- Bugfix for when top-level multiport width in federation depends on parameter #1956 (@petervdonovan)
- Fix compilation error in code for reset state variables with time type #1964 (@a-sr)
- Fixed path issue in generated
docker-compose.yml
for federations #1983 (@lhstrh)
🚧 Maintenance and Refactoring
- Migration of Epoch into separate repository #1482 (@a-sr)
- Improved CLI argument handling using
picocli
#1534 (@patilatharva) - Compile definitions no longer hardcoded in generated CMakeLists.txt #1622 (@petervdonovan)
- Remove unchecked compilation warnings #1638 (@oowekyala)
- Refactoring of part of the federated package #1663 (@lhstrh)
- Removal of the use of non-API global variables in tests #1696 (@edwardalee)
- Gradle bumped to version 8 #1691 (@lhstrh)
- Removal of deprecated
build-lfc
script andbuildLfc
Gradle task #1714 (@cmnrd) - Delete unnecessary complexity from
build-lf-cli
#1745 (@petervdonovan) - C files for Python support retrieved from reactor-c repo #1757 (@lhstrh)
- Google autoformatter applied to all files #1766 (@lhstrh)
- Redesign of the repository layout and gradle configu...