escet merge requestshttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests2024-03-14T21:05:53Zhttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/720#227 Allow assigning input variables via SVG input mapping2024-03-14T21:05:53ZFerdie Reijnen#227 Allow assigning input variables via SVG input mappingIt has been a while since we worked on this. What I want to do:
* Implement idea U1 from https://gitlab.eclipse.org/eclipse/escet/escet/-/issues/203#note_273350 / #227
* Extend metamodel to a minimum
* Update `SvgIn` element, make `e...It has been a while since we worked on this. What I want to do:
* Implement idea U1 from https://gitlab.eclipse.org/eclipse/escet/escet/-/issues/203#note_273350 / #227
* Extend metamodel to a minimum
* Update `SvgIn` element, make `event` optional and make `updates` with \[0..\*\]. Parser should enforce one of the two is present.
* Reuse `Update` element from `Automaton`.
* Extend parser to a minimum
* Allow update to have general name, not just an identifier (was done in !190, that was never merged to develop, I will redo it).
* Implement `@SVGINKW IDKW Expression DOKW Updates OptSvgFile @SEMICOLTK`
* For now, don't implement `@SVGINKW IDKW Expression EVENTKW SvgInEvent DOKW Updates OptSvgFile @SEMICOLTK`
What still needs to be done:
* Everything related to simulator code.
* Everything related to HTML code generation.
* Tests for ~the typechecker~ and merge.
* ~Update Metamodel diagram images.~
* ~Update LaTeX documentation.~
* Update common methods (if applicable).
* Update CIF to CIF transformations and other tools.
* The CIF merger would not be able to merge an `svgin` assignment with another specification that provides a non-input variable to be merged with the input variable, as then the `svgin` mapping would assign a non-input variable.
* Update CIF documentation.
* Update CIF example.
Addresses #227v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/719#712 Lithography benchmark model has duplicate invariants2023-12-19T07:35:45ZFerdie Reijnen#712 Lithography benchmark model has duplicate invariantsCloses #712Closes #712v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/718#652 Update release notes for v2.0-RC1.2023-12-21T00:06:30ZDennis Hendriks#652 Update release notes for v2.0-RC1.Addresses #652Addresses #652v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/717#713 ExprNoSpecificBinaryExprsCheckLevel cif test has mistake for modulus test2023-12-15T12:53:33ZFerdie Reijnen#713 ExprNoSpecificBinaryExprsCheckLevel cif test has mistake for modulus testCloses #713Closes #713v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/715#708 Event-based tools add state annotations to the output CIF models2023-12-11T16:26:54ZDennis Hendriks#708 Event-based tools add state annotations to the output CIF models* Best to review per commit.
* Adding state annotations is configurable using an option, similar to the CIF explorer.
* Added some additional tests, and renamed some tests.
* Fixed DFA minimization to produce results with origin informat...* Best to review per commit.
* Adding state annotations is configurable using an option, similar to the CIF explorer.
* Added some additional tests, and renamed some tests.
* Fixed DFA minimization to produce results with origin information, and thus state annotations (extra commits at the end).
* Updated the documentation. Also improved the documentation with an extra link.
Closes #708v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/714#699 Deploy 'develop' branch as nightly2023-12-14T13:59:16ZDennis Hendriks#699 Deploy 'develop' branch as nightly* Best to review per commit.
* Deploys `develop` as nighly.
* Made a few other small improvements as well.
* I tested it best I could without actually deploying anything.
* This merge request does not close the issue, but only addresses ...* Best to review per commit.
* Deploys `develop` as nighly.
* Made a few other small improvements as well.
* I tested it best I could without actually deploying anything.
* This merge request does not close the issue, but only addresses it, as I want to see `develop` being deployed once (after merging this merge request), and check the results, before closing the issue.
Addresses #699v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/713#709 Fix comments in simplify_values* tests + extend the tests2023-12-11T16:26:37ZDennis Hendriks#709 Fix comments in simplify_values* tests + extend the tests* Best to review per commit.
* Fixed the comments.
* Extended the tests a bit. Was inspired by issues I encountered in #697 and #698.
Closes #709* Best to review per commit.
* Fixed the comments.
* Extended the tests a bit. Was inspired by issues I encountered in #697 and #698.
Closes #709v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/712#697 Additional type checking constraints for state annotations2023-12-16T11:18:10ZDennis Hendriks#697 Additional type checking constraints for state annotations* Best to review per commit.
* Added additional type checking constraints for state annotations.
* Improved/extended the documentation for state annotations a bit.
* Fixed typos in JavaDoc of `AnnotationProblemReporter`.
Closes #697* Best to review per commit.
* Added additional type checking constraints for state annotations.
* Improved/extended the documentation for state annotations a bit.
* Fixed typos in JavaDoc of `AnnotationProblemReporter`.
Closes #697v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/711#698 Fix CIF explorer state annotation argument value type creation (2nd atte...2023-12-18T20:08:07ZDennis Hendriks#698 Fix CIF explorer state annotation argument value type creation (2nd attempt)Closes #698Closes #698v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/710#272 Generate variables and functions for JavaScript export target2023-12-19T09:05:37ZRik Lubking#272 Generate variables and functions for JavaScript export target- Added all required JavaScript implementations for generation of variables and functions for the JavaScript export target.
Addresses #272- Added all required JavaScript implementations for generation of variables and functions for the JavaScript export target.
Addresses #272v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/708#692 Allow annotating a CIF object multiple times with the same annotation2023-12-04T16:39:20ZDennis Hendriks#692 Allow annotating a CIF object multiple times with the same annotation* Best to review per commit.
* Also fixed reference manual index page, as it was missing link to state annotations page.
Closes #692* Best to review per commit.
* Also fixed reference manual index page, as it was missing link to state annotations page.
Closes #692v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/707#684 CifToPlcTrans: configure linearization consistent with precond check2023-12-01T12:18:38ZFerdie Reijnen#684 CifToPlcTrans: configure linearization consistent with precond checkCloses #684Closes #684v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/706#694 CIF codegen TypeInfoHelper: make target-specific data value.2023-11-30T08:20:50ZDennis Hendriks#694 CIF codegen TypeInfoHelper: make target-specific data value.* Best to review per commit.
* `TypeInfoHelper` is not just for Java, so fixed the JavaDoc of that class.
* Don't create hard-coded `JavaDataValue` in `TypeInfoHelper`, but via the context ask the code generator for the specific target.
...* Best to review per commit.
* `TypeInfoHelper` is not just for Java, so fixed the JavaDoc of that class.
* Don't create hard-coded `JavaDataValue` in `TypeInfoHelper`, but via the context ask the code generator for the specific target.
* Also fixed some JavaDocs and made them consistent.
Closes #694v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/705#686 Confluence check: more debug output and more termination checking2023-12-04T09:18:38ZMartijn Goorden#686 Confluence check: more debug output and more termination checkingSolution assumes that termination request cannot be unrequested. Otherwise the tool might return incorrect results.
Closes #686.Solution assumes that termination request cannot be unrequested. Otherwise the tool might return incorrect results.
Closes #686.v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/704#272 JavaScript code generation: generate variables and functions boilerplate2023-12-01T13:43:12ZRik Lubking#272 JavaScript code generation: generate variables and functions boilerplate- Added boilerplate classes and functions in preparation for JavaScript
export feature generating variables and functions.
Addresses #272- Added boilerplate classes and functions in preparation for JavaScript
export feature generating variables and functions.
Addresses #272v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/703#687 Add 'state' annotations and CIF explorer adds them to statespace automata2023-12-14T19:55:12ZDennis Hendriks#687 Add 'state' annotations and CIF explorer adds them to statespace automata* Best to review per commit.
* Changes for this issue:
* Added state annotations, such that they exist.
* CIF explorer gets an option to add state annotations. It is enabled by default.
* Some changes not strictly related to the issu...* Best to review per commit.
* Changes for this issue:
* Added state annotations, such that they exist.
* CIF explorer gets an option to add state annotations. It is enabled by default.
* Some changes not strictly related to the issue at hand:
* I moved some things in the code, to make room for other annotations later, to separate generic stuff from specific annotations, to have options in one place, etc. See commits for details.
* I generalized some documentation to not have to update it again in the future.
* I changed the API of annotation providers a bit, to allow more easily checking on what annotated object an annotation is present.
* Fixes 'starting the program' description in CIF explorer documentation.
* Extended the documentation of the CIF explorer a bit, to describe the 'output as a CIF automaton' a bit more. Adding the annotations is described there as well.
Closes #687v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/702#690 Fix CIF explorer for models with function-typed discrete variables witho...2023-11-27T11:46:55ZDennis Hendriks#690 Fix CIF explorer for models with function-typed discrete variables without an initial valueCloses #690Closes #690v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/701#689 Fix CIF explorer crashing on models with minimum integer value2023-11-27T11:47:04ZDennis Hendriks#689 Fix CIF explorer crashing on models with minimum integer value* Best to review per commit.
* Code changes:
* Fixes JavaDoc of `CifValueUtil.makeInt`.
* Adds `CifValueUtils.makeReal`, similar to `CifValueUtils.makeInt`.
* Fixes `CifEvalUtils.valueToExpr` for negative integer values.
* Fixes ...* Best to review per commit.
* Code changes:
* Fixes JavaDoc of `CifValueUtil.makeInt`.
* Adds `CifValueUtils.makeReal`, similar to `CifValueUtils.makeInt`.
* Fixes `CifEvalUtils.valueToExpr` for negative integer values.
* Fixes `CifValueUtils.getDefaultValue` for integer types that only support negative values.
* End user changes:
* Fixes 'add default init value' CIF to CIF transformation for discrete variables with an integer type that only supports negative integer values.
* Fixes 'simplify values' CIF to CIF transformation to produce correct results for integer expressions that are simplified to the minimum integer value.
* Fixes CIF explorer crash for models with expressions that evaluate to the minimum integer value.
* Fixes CIF explorer crash for variables with integer types that only support the minimum integer value.
* Fixes CIF pretty printer for integer types that only support the minimum integer value.
Closes #689v2.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/700#676 PLCgen: Add documentation.2023-12-14T07:51:53ZAlbert Hofkamp#676 PLCgen: Add documentation.Some plcgen documentation.
Follows the previous art somewhat, but the ideas are different, so rewrote it almost completely.
Not sure the S7 and twincat pages are very useful, at least twincat is ancient (2010), I doubt you'd even get t...Some plcgen documentation.
Follows the previous art somewhat, but the ideas are different, so rewrote it almost completely.
Not sure the S7 and twincat pages are very useful, at least twincat is ancient (2010), I doubt you'd even get that running today.
Probably lots is wrong, but I can't focus anymore. I spend my time fighting 2FA, and I am not winning. It's filling my entire head running in circles and getting nowhere.
Addresses #676v2.0Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/699#272 JavaScript code generation: added UI/CSS2023-11-27T18:31:14ZRik Lubking#272 JavaScript code generation: added UI/CSSAdded UI/CSS & tests:
- Added tests html. Tests html has calls to test all functions in the
utils classes, which can be expanded later to verify output against
hardcoded values (which should then be the same as the Java/C export).
- Adde...Added UI/CSS & tests:
- Added tests html. Tests html has calls to test all functions in the
utils classes, which can be expanded later to verify output against
hardcoded values (which should then be the same as the Java/C export).
- Added minimal css, emulates the ESCET theme.
- UI: Has space reserved for SVG (top half of screen), and has a
resizable/collapsible log pane which allows command input.
* Have not used any external (css/js) resources, since those would not
work offline.
* For the first version of the export, have chosen to export separate
files, rather than put everyting into a single html file (this will be
the second export option, which we can add later).
Discussion, see: https://gitlab.eclipse.org/riklubking/escet/-/issues/27
Addresses #272
Fixed after feedback https://gitlab.eclipse.org/riklubking/escet/-/issues/27:
- Fixed inconsistent indentation.
- Fixed inconsistent capitalization of colors.
- Removed empty lines and incorrect whitespaces.
- Removed fixed widths, use percentages.
- Remove css units when value 0.
- Use > instead of > literal.
- Removed unnecessary </input> tag.
- Refactored show/hide log pane css/js.
- Removed tests template.v2.0