|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## [v0.6.0](https://github.com/lf-lang/lingua-franca/tree/v0.6.0) (2024-01-26) |
| 4 | + |
| 5 | +**Highlights** |
| 6 | + |
| 7 | +This release improves the federated execution capability, makes the handling of target properties more modular and robust, and provides various bugfixes and small enhancements. |
| 8 | + |
| 9 | +**🚀 New Features** |
| 10 | + |
| 11 | +- Usage of high-resolution counter device on Zephyr boards. Update to v3.4.0 [\#2007](https://github.com/lf-lang/lingua-franca/pull/2007) (@erlingrj) |
| 12 | +- Bracket list expression for initialization without escaping [\#2003](https://github.com/lf-lang/lingua-franca/pull/2003) (@oowekyala) |
| 13 | +- [C] Self struct made available to initializers of state variables, parameters [\#2014](https://github.com/lf-lang/lingua-franca/pull/2014) (@OmerMajNition) |
| 14 | +- New `--no-source-mapping` switch to disable line directives [\#2092](https://github.com/lf-lang/lingua-franca/pull/2092) (@lhstrh) |
| 15 | +- Ability to specify rti image for dockerized federated programs [\#2144](https://github.com/lf-lang/lingua-franca/pull/2144) (@lhstrh) |
| 16 | + |
| 17 | +**✨ Enhancements** |
| 18 | + |
| 19 | +- Show reaction names in diagrams [\#2030](https://github.com/lf-lang/lingua-franca/pull/2030) (@cmnrd) |
| 20 | +- Generate default values for the user-configurable CMake flags [\#2036](https://github.com/lf-lang/lingua-franca/pull/2036) (@erlingrj) |
| 21 | +- Fix to generate launch script for TS target and print informational message [\#2090](https://github.com/lf-lang/lingua-franca/pull/2090) (@hokeun) |
| 22 | +- Use more explicit include guards for Arduino [\#2102](https://github.com/lf-lang/lingua-franca/pull/2102) (@petervdonovan) |
| 23 | +- Better placement of line directives [\#2101](https://github.com/lf-lang/lingua-franca/pull/2101) (@petervdonovan) |
| 24 | +- String literal allowed as property name [\#2136](https://github.com/lf-lang/lingua-franca/pull/2136) (@oowekyala) |
| 25 | +- Various bugfixes and cleanups in the support for federated programs [\#2140](https://github.com/lf-lang/lingua-franca/pull/2140) (@edwardalee) |
| 26 | + |
| 27 | +**🔧 Fixes** |
| 28 | + |
| 29 | +- Handling of unconnected outputs to avoid segmentation fault [\#2011](https://github.com/lf-lang/lingua-franca/pull/2011) (@edwardalee) |
| 30 | +- Fixed timeout and shutdown in C++ [\#2012](https://github.com/lf-lang/lingua-franca/pull/2012) (@cmnrd) |
| 31 | +- Stabilized LSP diagram genenation and added default expansion option [\#2018](https://github.com/lf-lang/lingua-franca/pull/2018) (@cmnrd) |
| 32 | +- Avoid null pointer exception in diagrams with bodyless reactions [\#2020](https://github.com/lf-lang/lingua-franca/pull/2020) (@cmnrd) |
| 33 | +- Removed "Reaction level" diagram synthesis option [\#2019](https://github.com/lf-lang/lingua-franca/pull/2019) (@cmnrd) |
| 34 | +- Fixed error reporting in the verifier [\#2031](https://github.com/lf-lang/lingua-franca/pull/2031) (@cmnrd) |
| 35 | +- Fixed trimming of the recorded test output [\#2040](https://github.com/lf-lang/lingua-franca/pull/2040) (@cmnrd) |
| 36 | +- Fix problems with assignment serialization in diagrams [\#2038](https://github.com/lf-lang/lingua-franca/pull/2038) (@a-sr) |
| 37 | +- Fixed bug in the C++ reaction dependency analysis [\#2050](https://github.com/lf-lang/lingua-franca/pull/2050) (@cmnrd) |
| 38 | +- Handling of unknown width for multiports [\#2057](https://github.com/lf-lang/lingua-franca/pull/2057) (@edwardalee) |
| 39 | +- Fixed race-condition in `_lf_replace_template_token` [\#2082](https://github.com/lf-lang/lingua-franca/pull/2082) (@erlingrj) |
| 40 | +- Output path specified in JSON used correctly [\#2088](https://github.com/lf-lang/lingua-franca/pull/2088) (@lhstrh) |
| 41 | +- Fix bug in C decentralized execution with small after delays [\#2032](https://github.com/lf-lang/lingua-franca/pull/2032) (@petervdonovan) |
| 42 | +- Use more explicit include guards for Arduino [\#2102](https://github.com/lf-lang/lingua-franca/pull/2102) (@petervdonovan) |
| 43 | +- Fixed mistake in code-generated reaction preamble [\#2105](https://github.com/lf-lang/lingua-franca/pull/2105) (@erlingrj) |
| 44 | +- Fix undetected `scheduler` and `workers` properties [\#2110](https://github.com/lf-lang/lingua-franca/pull/2110) (@lsk567) |
| 45 | +- Fix bug: set length on incoming token [\#2122](https://github.com/lf-lang/lingua-franca/pull/2122) (@edwardalee) |
| 46 | +- Type check error turned into warning [\#2111](https://github.com/lf-lang/lingua-franca/pull/2111) (@lhstrh) |
| 47 | +- Fix minimum spacing of actions and reference to freed event [\#2128](https://github.com/lf-lang/lingua-franca/pull/2128) (@edwardalee) |
| 48 | +- Bugfix for TypeScript in dev mode [\#2130](https://github.com/lf-lang/lingua-franca/pull/2130) (@lhstrh) |
| 49 | +- Parallel compilation disabled to avoid triggering deadlock in concurrent invocations of CMake [\#2145](https://github.com/lf-lang/lingua-franca/pull/2145) (@edwardalee) |
| 50 | +- Python docker parent image fixed at version `3.10` [\#2151](https://github.com/lf-lang/lingua-franca/pull/2151) (@petervdonovan) |
| 51 | +- Fix for cycle detection issue [\#2112](https://github.com/lf-lang/lingua-franca/pull/2112) (@lhstrh) |
| 52 | +- Fixed `hashCode()` implementation in `TimeValue` class [\#2157](https://github.com/lf-lang/lingua-franca/pull/2157) (@lhstrh) |
| 53 | +- Various bugfixes and cleanups in the support for federated programs [\#2140](https://github.com/lf-lang/lingua-franca/pull/2140) (@edwardalee) |
| 54 | +- Removal of image-specific commands in case base image is specified [\#2158](https://github.com/lf-lang/lingua-franca/pull/2158) (@lhstrh) |
| 55 | +- Fix some zephyr build issues [\#2160](https://github.com/lf-lang/lingua-franca/pull/2160) (@erlingrj) |
| 56 | +- Fix for #2087 [\#2147](https://github.com/lf-lang/lingua-franca/pull/2147) (@a-sr) |
| 57 | +- Fixed parameter forwarding for non-trivial types in C++ [\#2164](https://github.com/lf-lang/lingua-franca/pull/2164) (@cmnrd) |
| 58 | +- Fixed generation of preambles for unused imports [\#2165](https://github.com/lf-lang/lingua-franca/pull/2165) (@cmnrd) |
| 59 | + |
| 60 | +**🚧 Maintenance and Refactoring** |
| 61 | + |
| 62 | +- Apply spotbugs plugin [\#2005](https://github.com/lf-lang/lingua-franca/pull/2005) (@cmnrd) |
| 63 | +- Cleaned up test code to fix all test related spotbugs warnings [\#2006](https://github.com/lf-lang/lingua-franca/pull/2006) (@cmnrd) |
| 64 | +- Remove deprecated C schedulers++ [\#2037](https://github.com/lf-lang/lingua-franca/pull/2037) (@erlingrj) |
| 65 | +- Removal of `ulog` from `reactor-ts`, code generator updated to allow this change [\#2052](https://github.com/lf-lang/lingua-franca/pull/2052) (@axmmisaka) |
| 66 | +- Refactoring of target properties and their validation [\#2008](https://github.com/lf-lang/lingua-franca/pull/2008) (@lhstrh) |
| 67 | +- The 'threading' CLI option/build param/target property changed to 'single threaded' [\#1817](https://github.com/lf-lang/lingua-franca/pull/1817) (@patilatharva) |
| 68 | +- Minimal changes to merge reactor-c enclaves [\#2095](https://github.com/lf-lang/lingua-franca/pull/2095) (@erlingrj) |
| 69 | +- Fix file structure for future `networks` option [\#2070](https://github.com/lf-lang/lingua-franca/pull/2070) (@Jakio815) |
| 70 | +- Fix minimum spacing of actions and reference to freed event [\#2128](https://github.com/lf-lang/lingua-franca/pull/2128) (@edwardalee) |
| 71 | + |
| 72 | +**📖 Documentation** |
| 73 | + |
| 74 | +- Updated .github/workflows/README.md [\#2076](https://github.com/lf-lang/lingua-franca/pull/2076) (@Jakio815) |
| 75 | + |
| 76 | +**🧪 Tests** |
| 77 | + |
| 78 | +- Fixed error reporting in the verifier [\#2031](https://github.com/lf-lang/lingua-franca/pull/2031) (@cmnrd) |
| 79 | +- Fixed trimming of the recorded test output [\#2040](https://github.com/lf-lang/lingua-franca/pull/2040) (@cmnrd) |
| 80 | +- Adjustment to test output to show progress [\#2137](https://github.com/lf-lang/lingua-franca/pull/2137) (@lhstrh) |
| 81 | +- Time limits imposed on integration tests [\#2141](https://github.com/lf-lang/lingua-franca/pull/2141) (@lhstrh) |
| 82 | + |
| 83 | +**⬆️ Updated Dependencies** |
| 84 | + |
| 85 | +- Bumped Gradle and Gradle plugin versions [\#2024](https://github.com/lf-lang/lingua-franca/pull/2024) (@lhstrh) |
| 86 | + |
| 87 | + |
| 88 | +### Submodule [lf-lang/reactor-c](http://github.com/lf-lang/reactor-c) |
| 89 | + |
| 90 | +**🚀 New Features** |
| 91 | + |
| 92 | +- Scheduling enclaves [\#242](https://github.com/lf-lang/reactor-c/pull/242) (@erlingrj) |
| 93 | + |
| 94 | +**✨ Enhancements** |
| 95 | + |
| 96 | +- Use real-time sockets in federated execution [\#274](https://github.com/lf-lang/reactor-c/pull/274) (@erlingrj) |
| 97 | +- Progress towards Python 3.11 support [\#255](https://github.com/lf-lang/reactor-c/pull/255) (@cmnrd) |
| 98 | +- Use env command rather than /usr/bin/python3 [\#297](https://github.com/lf-lang/reactor-c/pull/297) (@edwardalee) |
| 99 | +- Priority queue refactoring [\#306](https://github.com/lf-lang/reactor-c/pull/306) (@edwardalee) |
| 100 | +- Detect ZDC in RTI and issue PTAG only for nodes in ZDC [\#311](https://github.com/lf-lang/reactor-c/pull/311) (@edwardalee) |
| 101 | +- Add an option for specifying the time interval of showing messages to the tracing visualizer [\#320](https://github.com/lf-lang/reactor-c/pull/320) (@byeong-gil) |
| 102 | +- Various bugfixes and cleanups in the support for federated programs [\#323](https://github.com/lf-lang/reactor-c/pull/323) (@edwardalee) |
| 103 | + |
| 104 | +**🔧 Fixes** |
| 105 | + |
| 106 | +- Removal of the "waiting for tag" field [\#266](https://github.com/lf-lang/reactor-c/pull/266) (@petervdonovan) |
| 107 | +- Mixed microsteps and time [\#269](https://github.com/lf-lang/reactor-c/pull/269) (@petervdonovan) |
| 108 | +- Fedsd fix self_id [\#271](https://github.com/lf-lang/reactor-c/pull/271) (@ChadliaJerad) |
| 109 | +- Guard against unconnected outputs [\#275](https://github.com/lf-lang/reactor-c/pull/275) (@edwardalee) |
| 110 | +- Fixed argparse for `fedsd` [\#273](https://github.com/lf-lang/reactor-c/pull/273) (@erlingrj) |
| 111 | +- Fixed `GEDF_NP` and removal of deprecated schedulers [\#282](https://github.com/lf-lang/reactor-c/pull/282) (@erlingrj) |
| 112 | +- Fixed overflow bug affecting 32-bit Linux platforms [\#288](https://github.com/lf-lang/reactor-c/pull/288) (@erlingrj) |
| 113 | +- Zephyr: default thread stack size updated to 2KB [\#299](https://github.com/lf-lang/reactor-c/pull/299) (@erlingrj) |
| 114 | +- Bugfix in C decentralized execution with small after delays [\#280](https://github.com/lf-lang/reactor-c/pull/280) (@petervdonovan) |
| 115 | +- Added return for non-void return function for arduino support [\#309](https://github.com/lf-lang/reactor-c/pull/309) (@chacalnoir) |
| 116 | +- Handle messages arriving during initial STA wait [\#316](https://github.com/lf-lang/reactor-c/pull/316) (@edwardalee) |
| 117 | +- Fix minimum spacing of actions and reference to freed event [\#318](https://github.com/lf-lang/reactor-c/pull/318) (@edwardalee) |
| 118 | +- Fix LF_ASSERT [\#324](https://github.com/lf-lang/reactor-c/pull/324) (@erlingrj) |
| 119 | +- Various bugfixes and cleanups in the support for federated programs [\#323](https://github.com/lf-lang/reactor-c/pull/323) (@edwardalee) |
| 120 | +- Fix compiler warning in adaptive scheduler [\#335](https://github.com/lf-lang/reactor-c/pull/335) (@petervdonovan) |
| 121 | +- Fix for silly bug in pretty printing time [\#336](https://github.com/lf-lang/reactor-c/pull/336) (@edwardalee) |
| 122 | + |
| 123 | +**🚧 Maintenance and Refactoring** |
| 124 | + |
| 125 | +- Do not link with thread library when we are compiling for Zephyr [\#272](https://github.com/lf-lang/reactor-c/pull/272) (@erlingrj) |
| 126 | +- Minor cleanups [\#279](https://github.com/lf-lang/reactor-c/pull/279) (@edwardalee) |
| 127 | +- Fixed `GEDF_NP` and removal of deprecated schedulers [\#282](https://github.com/lf-lang/reactor-c/pull/282) (@erlingrj) |
| 128 | +- Zephyr timing implementation refactored into two separate files [\#294](https://github.com/lf-lang/reactor-c/pull/294) (@erlingrj) |
| 129 | +- Clean up warnings and associated docs [\#296](https://github.com/lf-lang/reactor-c/pull/296) (@edwardalee) |
| 130 | +- Use env command rather than /usr/bin/python3 [\#297](https://github.com/lf-lang/reactor-c/pull/297) (@edwardalee) |
| 131 | +- Mentions of "unthreaded" replaced with "single-threaded" [\#250](https://github.com/lf-lang/reactor-c/pull/250) (@patilatharva) |
| 132 | +- Priority queue refactoring [\#306](https://github.com/lf-lang/reactor-c/pull/306) (@edwardalee) |
| 133 | +- Make new directory under `federated` named `network` [\#292](https://github.com/lf-lang/reactor-c/pull/292) (@Jakio815) |
| 134 | +- Update lingua-franca-ref.txt to point to master [\#315](https://github.com/lf-lang/reactor-c/pull/315) (@edwardalee) |
| 135 | +- Fix minimum spacing of actions and reference to freed event [\#318](https://github.com/lf-lang/reactor-c/pull/318) (@edwardalee) |
| 136 | +- LF_ASSERT: Cast to void to avoid unused warnings [\#326](https://github.com/lf-lang/reactor-c/pull/326) (@erlingrj) |
| 137 | + |
| 138 | + |
| 139 | +### Submodule [lf-lang/reactor-cpp](http://github.com/lf-lang/reactor-cpp) |
| 140 | + |
| 141 | +**✨ Enhancements** |
| 142 | + |
| 143 | +- Timeout implemented so that shutdown is invoked only once [\#53](https://github.com/lf-lang/reactor-cpp/pull/53) (@cmnrd) |
| 144 | + |
| 145 | +**🔧 Fixes** |
| 146 | + |
| 147 | +- Timeout implemented so that shutdown is invoked only once [\#53](https://github.com/lf-lang/reactor-cpp/pull/53) (@cmnrd) |
| 148 | +- Build the dependency graph only after establishing all connections [\#54](https://github.com/lf-lang/reactor-cpp/pull/54) (@cmnrd) |
| 149 | + |
| 150 | + |
| 151 | +### Submodule [lf-lang/reactor-rs](http://github.com/lf-lang/reactor-rs) |
| 152 | + |
| 153 | +- No Changes |
| 154 | + |
| 155 | + |
| 156 | + |
3 | 157 | ## [v0.5.1](https://github.com/lf-lang/lingua-franca/tree/v0.5.1) (2023-09-12)
|
4 | 158 |
|
5 | 159 | **Highlights**
|
|
0 commit comments