escet merge requestshttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests2023-05-30T19:00:45Zhttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/597#468 In-place Eclipse upgrade documentation: review comments addressed.2023-05-30T19:00:45ZDennis Hendriks#468 In-place Eclipse upgrade documentation: review comments addressed.* Addressed late review comments from !560.
Closes #468* Addressed late review comments from !560.
Closes #468v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/587#520 Add workset algorithm to data-based synthesis2023-05-30T18:50:19ZDennis Hendriks#520 Add workset algorithm to data-based synthesis* This adds the workset algorithm. Its 2 key ingredients, the edge selection heuristic and edge/event dependency sets, will be improved in later merge requests. See also the step by step plain in #520.
* Best to review per commit.
* I al...* This adds the workset algorithm. Its 2 key ingredients, the edge selection heuristic and edge/event dependency sets, will be improved in later merge requests. See also the step by step plain in #520.
* Best to review per commit.
* I also tested it by running the benchmarks with and without the workset algorithm, and running all tests with the workset algorithm. This didn't reveal any issues.
Addresses #520v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/598#604 ElimMonitors JavaDoc fix.2023-05-29T17:01:47ZDennis Hendriks#604 ElimMonitors JavaDoc fix.* This is also at https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/595/diffs?commit_id=fc588f489ee4713599f1d6ba8098576fb71cafcd, but that merge request probably won't get merged.
Closes #604* This is also at https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/595/diffs?commit_id=fc588f489ee4713599f1d6ba8098576fb71cafcd, but that merge request probably won't get merged.
Closes #604v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/596#603 DEPENDENCIES.txt update for Dash License Check tool output change.2023-05-28T20:07:28ZDennis Hendriks#603 DEPENDENCIES.txt update for Dash License Check tool output change.Closes #603Closes #603v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/588#596 PLCgen: add transition generator skeleton2023-05-25T10:25:28ZAlbert Hofkamp#596 PLCgen: add transition generator skeletonAdds a skeleton for the transition generator, mostly to create a common ground to extend further.
Addresses #596Adds a skeleton for the transition generator, mostly to create a common ground to extend further.
Addresses #596v0.10Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/589#592 Unify cif2plc and plcgen model classes2023-05-25T10:50:13ZAlbert Hofkamp#592 Unify cif2plc and plcgen model classes- Added `PlcTarget` to the writers for access to the model text generator.
- Removed `PlcValue` class.
- Renamed `OutputTypeWriter` to `Writer` class.
The other copied classes seem fine for now (see #592 for a list). Likely the target-s...- Added `PlcTarget` to the writers for access to the model text generator.
- Removed `PlcValue` class.
- Renamed `OutputTypeWriter` to `Writer` class.
The other copied classes seem fine for now (see #592 for a list). Likely the target-specific writers need more work eventually but that seems a bit premature for now.
Addresses #592
Note: "Organize imports" made the following change:
``` diff
index 74a08bd98..59dcc73c9 100644
--- a/cif/org.eclipse.escet.cif.plcgen/src/org/eclipse/escet/cif/plcgen/model/functions/PlcSemanticFuncDescription.java
+++ b/cif/org.eclipse.escet.cif.plcgen/src/org/eclipse/escet/cif/plcgen/model/functions/PlcSemanticFuncDescription.java
@@ -13,8 +13,6 @@
package org.eclipse.escet.cif.plcgen.model.functions;
-import org.eclipse.escet.cif.plcgen.model.functions.PlcBasicFuncDescription.ExprBinding;
-
/** Function description extended with the semantic operation being performed in a function application. */
public class PlcSemanticFuncDescription extends PlcBasicFuncDescription {
/** The semantic operation performed by the function application. */
```
It's needed to avoid a warning in JavaDoc, but it's apparently thus not recognized in for that in the JDT.v0.10Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/586#554 develop to master for v0.10-M12023-05-17T07:17:47ZDennis Hendriks#554 develop to master for v0.10-M1Addresses #554Addresses #554v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/585#554 Updated release notes for v0.10-M1.2023-05-17T06:55:42ZDennis Hendriks#554 Updated release notes for v0.10-M1.Addresses #554Addresses #554v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/583#586 Add edge granularity option.2023-05-16T21:06:09ZDennis Hendriks#586 Add edge granularity option.- Best to review per commit.
Closes #586- Best to review per commit.
Closes #586v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/584#594 Extend `ExprGenerator` with local and temporary variable support.2023-05-16T08:31:30ZAlbert Hofkamp#594 Extend `ExprGenerator` with local and temporary variable support.Small but useful step in expression code generation from last week before the statement copy bug was found.
Closes #594Small but useful step in expression code generation from last week before the statement copy bug was found.
Closes #594v0.10Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/580#588 Copy `cif2plc` classes to `plcgen`2023-05-15T12:35:28ZAlbert Hofkamp#588 Copy `cif2plc` classes to `plcgen`Copying all used cif2plc classes to plcgen to make the latter independent of the former.
Closes #588Copying all used cif2plc classes to plcgen to make the latter independent of the former.
Closes #588v0.10Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/582#585 Add warning for exploring CIF specifications with requirements2023-05-15T07:10:45ZDennis Hendriks#585 Add warning for exploring CIF specifications with requirementsCloses #585Closes #585v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/581#589 Fix PLC statement copying2023-05-13T13:11:51ZAlbert Hofkamp#589 Fix PLC statement copying- Adds debugging output for `ExprGenResult` which is nice to keep.
- Use the right for for copying PLC statements.
- Updates test expectations.
Closes #589- Adds debugging output for `ExprGenResult` which is nice to keep.
- Use the right for for copying PLC statements.
- Updates test expectations.
Closes #589v0.10Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/579#582 Ensure single point of responsibility in generating names and artefacts ...2023-05-12T07:30:31ZAlbert Hofkamp#582 Ensure single point of responsibility in generating names and artefacts in the main programChanges:
1. Make it simpler to access any generator from any generator (that is, discard the non-cyclic dependencies restriction between them).
2. Give the `PlcCodeStorage` ownership of the expression generator to use for generating cod...Changes:
1. Make it simpler to access any generator from any generator (that is, discard the non-cyclic dependencies restriction between them).
2. Give the `PlcCodeStorage` ownership of the expression generator to use for generating code for its main program.
3. Replace the hard-coded variable names in the main program by generated local names to ensure uniqueness.
With respect to the first change, rather than the discussed 3rd option in the issue (explicitly distributing generator links from the target during setup), I opted for the simpler form of storing the links in the active target and allow any generator to retrieve them as needed.
Closes #582v0.10Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/573#418 Initialize state variables2023-05-10T05:02:48ZAlbert Hofkamp#418 Initialize state variablesGenerate initialization code of state variables.
Reading by commit works, although it may not even be needed.
Fixes #418Generate initialization code of state variables.
Reading by commit works, although it may not even be needed.
Fixes #418v0.10Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/578#583 Generalize controller-check cycle finder2023-05-17T08:02:41ZAlbert Hofkamp#583 Generalize controller-check cycle finderI need a simple cycle finder (a simple cycle is a cyclic sequence of nodes that does not cross itself) for sequencing, and decided to generalize the cycle finder in the finite response controller check.
It's not the fastest thing but at ...I need a simple cycle finder (a simple cycle is a cyclic sequence of nodes that does not cross itself) for sequencing, and decided to generalize the cycle finder in the finite response controller check.
It's not the fastest thing but at least it's simple and stable (giving the same results under permutation of the vertices).
Reading by each commit individually is best.
It starts by duplicating the cycle finder and stripping the comments from the generic version, and then slowly refactoring towards a proper generic cycle finder for directed graphs and its controller check application. The second to last commit moves event expansion of an edge from before the search to after detecting a cycle, which can be a big performance gain. The final commit move the generic class to `common.java`.
Closes #583v0.10Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/576#548 Allow omitting 'else' for CIF switch expressions more liberally2023-05-08T21:49:40ZDennis Hendriks#548 Allow omitting 'else' for CIF switch expressions more liberally* Switch expression type checking for switches over non-automata is now similar to the checking for automata.
* Fixed `CifValueUtils.hasSingleValue` JavaDoc.
* Fixed `ErrMsg` constraint comment to allow 'chk.bash' to succeed.
Best to re...* Switch expression type checking for switches over non-automata is now similar to the checking for automata.
* Fixed `CifValueUtils.hasSingleValue` JavaDoc.
* Fixed `ErrMsg` constraint comment to allow 'chk.bash' to succeed.
Best to review per commit.
Closes #548v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/577#580 Data-based synth updates conversion: reverse unchanged vars order.2023-05-08T19:19:52ZDennis Hendriks#580 Data-based synth updates conversion: reverse unchanged vars order.* This improves the performance of synthesis, or rather the conversion of the CIF model to the synthesis representation. See #580 for an explanation why this is the case.
* I'll add benchmarking results in a separate comment.
Closes #580* This improves the performance of synthesis, or rather the conversion of the CIF model to the synthesis representation. See #580 for an explanation why this is the case.
* I'll add benchmarking results in a separate comment.
Closes #580v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/574#577 Change eclipse.org to eclipse.dev2023-05-08T19:17:10ZDennis Hendriks#577 Change eclipse.org to eclipse.dev* Changed `eclipse.org` to `eclipse.dev`, where relevant. I didn't update the namespace URIs of the metamodels, to ensure models stay backwards compatible. Since `eclipse.org` stays registered to the Eclipse Foundation, I don't think we ...* Changed `eclipse.org` to `eclipse.dev`, where relevant. I didn't update the namespace URIs of the metamodels, to ensure models stay backwards compatible. Since `eclipse.org` stays registered to the Eclipse Foundation, I don't think we need to change this.
* Changed `www.eclipse.dev` to `eclipse.dev`. The non-www variant is now the canonical URL, so removed all `www.` parts for `www.eclipse.dev/escet`. This also fixes bugs, as for `www.eclipse.org/escet/<version>` and now `www.eclipse.dev/escet/<version>`, `<version>` was not replaced for URLs with `www.`. For more robustness, now also `www.` URLs are rewritten.
* Removed an outdated comment in CIF documentation sources.
Most easily reviewed per commit, to see similar changes together.
Addresses #577v0.10https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/575#579 Update development setup documentation for JMV172023-05-08T07:30:52ZMartijn Goorden#579 Update development setup documentation for JMV17Closes #579.Closes #579.v0.10