escet merge requestshttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests2024-01-04T09:20:12Zhttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/754#732 Update DEPENDENCIES.txt for inclusion of Ecore editor in ESCET IDE2024-01-04T09:20:12ZDennis Hendriks#732 Update DEPENDENCIES.txt for inclusion of Ecore editor in ESCET IDE* Also updated `DEPENDENCIES.txt` for Dash License Check tool output change.
Closes #732* Also updated `DEPENDENCIES.txt` for Dash License Check tool output change.
Closes #732v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/753#731 Removed duplicate registration of .cifx/.tooldefx with EMF + no XMI read...2024-01-03T09:24:28ZDennis Hendriks#731 Removed duplicate registration of .cifx/.tooldefx with EMF + no XMI reading for .setext* Best to review per commit.
* Removed duplicate registration of .cifx/.tooldefx with EMF. Since already registered in `.metamodel` projects, removed again from `.io` projects.
* SeText doesn't even have a metamodel, so can't read from X...* Best to review per commit.
* Removed duplicate registration of .cifx/.tooldefx with EMF. Since already registered in `.metamodel` projects, removed again from `.io` projects.
* SeText doesn't even have a metamodel, so can't read from XMI.
Closes #731v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/752#730 CIF simulator: fixed print output to file in non-existing dir.2024-01-03T09:57:14ZDennis Hendriks#730 CIF simulator: fixed print output to file in non-existing dir.Closes #730Closes #730v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/751#679 PLCgen: Give all [CifData]Provider functions and variables a "cifData" n...2024-01-18T15:29:55ZAlbert Hofkamp#679 PLCgen: Give all [CifData]Provider functions and variables a "cifData" name.Rename the last "rootProviders", also rename a few other providers.
Addresses #679Rename the last "rootProviders", also rename a few other providers.
Addresses #679v3.0Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/750#38 Improved AsciiDoctor-generated documentation HTML pages style2024-01-05T15:45:08ZDennis Hendriks#38 Improved AsciiDoctor-generated documentation HTML pages style* Best to review per commit.
* Introduced custom AsciiDoctor stylesheet.
* Various HTML styling improvements/fixes. Also closer to the website style.
* Each docset now has its own theme, similar to the corresponding website theme.
* Redu...* Best to review per commit.
* Introduced custom AsciiDoctor stylesheet.
* Various HTML styling improvements/fixes. Also closer to the website style.
* Each docset now has its own theme, similar to the corresponding website theme.
* Reduced the size of the website by sharing CSS file between pages of each docset (mostly undone by including the full TOC, see below).
* Indicated external links with an icon after it.
* Includes rudimentary TOC interactivity (collapse/expand functionality).
* Include all TOC levels in TOCs of website pages.
* Changed Chi and ToolDef website link color to be same as documentation, and be less close to black.
* Some other changes. See separate commits.
Addresses #38
Fixes #395v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/749#472 Move app.framework exceptions to common.java2024-01-03T12:37:20ZAlbert Hofkamp#472 Move app.framework exceptions to common.javaThe time for bold moves has arrived!
Moving `common.app.framework.exceptions` package to `common.java.exceptions`:
- An Eclipse refactor of all framework exception classes did the trick, and faster than I expected even.
- I ran a check...The time for bold moves has arrived!
Moving `common.app.framework.exceptions` package to `common.java.exceptions`:
- An Eclipse refactor of all framework exception classes did the trick, and faster than I expected even.
- I ran a check on remaining "app.framework.exceptions" occurrences and found a bunch in strings in the CIF compiler, as well as in app.framework documentation.
- I ran the same check except with grep as regular expression, and found `app-framework-exceptions` labels in the app framework documentation.
While my first instinct was to change those as well, I eventually decided not to touch that. The reason is that the exceptions are still "app framework" exceptions, designed to work in an app framework context.
Addresses #472Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/748#715 HTML codegen: support SVG copy/move declarations2024-01-03T13:30:40ZDennis Hendriks#715 HTML codegen: support SVG copy/move declarations* Best to review per commit.
* Also checks that no CIF/SVG declarations get lost during codegen.
* And improves JavaDoc for 'gencodeSvgOut'.
Addresses #715* Best to review per commit.
* Also checks that no CIF/SVG declarations get lost during codegen.
* And improves JavaDoc for 'gencodeSvgOut'.
Addresses #715v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/747#715 HTML codegen: fix and improve print declarations and logging2024-01-03T09:55:38ZDennis Hendriks#715 HTML codegen: fix and improve print declarations and logging* Best to review per commit.
* Fixes:
* Fixed handling of print declaration stdout/stderr/file targets, with red coloring for stderr in HTML log panel. No coloring for browser console logging.
* Fixed string escaping, for among other...* Best to review per commit.
* Fixes:
* Fixed handling of print declaration stdout/stderr/file targets, with red coloring for stderr in HTML log panel. No coloring for browser console logging.
* Fixed string escaping, for among others: log output, certain runtime errors, and state printing.
* Fixed HTML-escaping for logging to log panel.
* Fixed a CSS style with invalid property value (not end user visible): `display` does not support `visible` as value. Changed to `inherit` as counterpart of `none`.
* Improvements:
* Reduced HTML log panel horizontal margin.
* Use Unix newline for log panel, not Windows newlines. The `\r` is not needed.
* Improved empty line logging output. Now: after everything is printed for initial state, and after everything is printed for a transition.
* Introduced variables to control printing state/transition output (enable or disable it).
* Updated/extended JavaScript code generation documentation.
Addresses #715v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/746#715 Fix JS/HTML code generation for tuples2024-01-02T13:12:38ZDennis Hendriks#715 Fix JS/HTML code generation for tuples- Fixed generated tuple constructors.
- Fixed generated tuple copy methods.
- Fixed generated tuple 'toString' methods.
- Use single quotes for strings in generated JS code.
Addresses #715- Fixed generated tuple constructors.
- Fixed generated tuple copy methods.
- Fixed generated tuple 'toString' methods.
- Use single quotes for strings in generated JS code.
Addresses #715v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/745#715 JavaScript/HTML codegen: fix function parameter and local variable refer...2023-12-29T18:23:52ZDennis Hendriks#715 JavaScript/HTML codegen: fix function parameter and local variable references* Best to review per commit.
* Function JS/HTML code generation changes that are the main scope of this merge request:
* Improved exception message.
* Use single quotes for strings in generated JS code.
* No compile errors for unre...* Best to review per commit.
* Function JS/HTML code generation changes that are the main scope of this merge request:
* Improved exception message.
* Use single quotes for strings in generated JS code.
* No compile errors for unreachable statements in JS code, unlike Java.
* Various changes for references, reading variables, writing variables, etc.
* Other non-JS/HTML-specific changes (not end user visible for the other target languages):
* No more references to commented out code to `readOnly` from `VariableInformation`, as that field doesn't exist.
* Removed `VariableInformation.isReference`, as only assigned, copied, etc, but never read.
* Proper and consistent marking of temporary variables.
* Renamed `VariableInformation.targetName` to `targetRef`.
* Renamed `CodeGen.getTargetName` to `getTargetRef`.
* Implement target variable name logic in `getTargetVariableName` instead of in `getTargetRef`. The reference should default to the name, not the other way around. Then also Simulink code generation does not need to override `getTargetVariableName` anymore.
* Renamed `SimulinkCodeGen.simulinkTargetNameMap` to `simulinkTargetRefMap`.
* Renamed `SimulinkCodeGen.setupVarmaps` to `setupVarMaps`.
* Some other renaming etc, for consistency.
* Add `CodeGen.getPrefix()` and use it in `CodeGen`.
Addresses #715v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/744#727 Extend CIF reference manual lexical syntax page.2023-12-28T16:39:26ZDennis Hendriks#727 Extend CIF reference manual lexical syntax page.- Document `.cif` file extension convention.
- Document that CIF files are ASCII files, and use UTF-8 encoding.
Closes #727- Document `.cif` file extension convention.
- Document that CIF files are ASCII files, and use UTF-8 encoding.
Closes #727v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/743#701 Allow reading/writing CIF files as XMI files2024-01-02T17:13:49ZDennis Hendriks#701 Allow reading/writing CIF files as XMI files* Best to review per commit.
* Changes:
* Allow reading CIF, SeText and ToolDef from XMI files.
* Use `.cifx`, `.setextx` and `.tooldefx` file extensions for this.
* Coupled these extensions to the Ecore editor, and gave them a cus...* Best to review per commit.
* Changes:
* Allow reading CIF, SeText and ToolDef from XMI files.
* Use `.cifx`, `.setextx` and `.tooldefx` file extensions for this.
* Coupled these extensions to the Ecore editor, and gave them a customized icon (darkened versions of the regular file icons).
* Added a test for reading/writing `.cifx` files.
* Also improved/fixed the `test_pprint_elim_cdef.tooldef` test script.
* Added documentation for using CIF XMI files.
Closes #701v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/742#310 .gitattributes: more image formats, allow image diffs.2023-12-27T20:30:45ZDennis Hendriks#310 .gitattributes: more image formats, allow image diffs.* Added `.jpeg`, `.tiff` and `.webp` as image file formats.
* Allow image diffs on 8 file formats supported by GitLab. I found them [here](https://gitlab.com/gitlab-org/gitlab/-/blob/e49b9bde26d5d357a067225f0e5f3b7265991d69/lib/gitlab/fi...* Added `.jpeg`, `.tiff` and `.webp` as image file formats.
* Allow image diffs on 8 file formats supported by GitLab. I found them [here](https://gitlab.com/gitlab-org/gitlab/-/blob/e49b9bde26d5d357a067225f0e5f3b7265991d69/lib/gitlab/file_type_detection.rb#L22).
* Note that we won't see that this works, until this is merge request is merged, as I explained [here](https://gitlab.eclipse.org/eclipse/escet/escet/-/issues/310#note_1526888).
Addresses #310v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/741#319 Add sub-plant creation functionality (small improvements)2024-01-03T13:29:37ZDennis Hendriks#319 Add sub-plant creation functionality (small improvements)* Builds on top of !696. To be merged into that.
* Best to review per commit.
* Rather than placing many very small comments, I made this branch and merge request. Hopefully that is more efficient for all involved.
Addresses #319* Builds on top of !696. To be merged into that.
* Best to review per commit.
* Rather than placing many very small comments, I made this branch and merge request. Hopefully that is more efficient for all involved.
Addresses #319v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/740#725 Generated CIF simulator debug code misses exit argument for application.run2023-12-25T08:45:23ZFerdie Reijnen#725 Generated CIF simulator debug code misses exit argument for application.runCloses #725Closes #725v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/739#723 JavaDoc fixes: '{@Link ...}' to '{@link ...}'.2023-12-24T11:52:16ZDennis Hendriks#723 JavaDoc fixes: '{@Link ...}' to '{@link ...}'.Closes #723Closes #723v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/738#715 JS/HTML codegen: fix calls to various real-typed stdlib functions.2023-12-25T07:56:50ZDennis Hendriks#715 JS/HTML codegen: fix calls to various real-typed stdlib functions.- Fixes acos, asin, atan, cos, sin, tan, exp, log, and ln.
Addresses #715- Fixes acos, asin, atan, cos, sin, tan, exp, log, and ln.
Addresses #715v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/737#715 JS/HTML code generation: print model state2023-12-24T13:06:19ZDennis Hendriks#715 JS/HTML code generation: print model state* Best to review per commit.
* Main change, for JS/HTML code generation:
* Log initial state + state after event transitions.
* For HTML: log panel shows horizontal scrollbar, doesn't wrap. Much easier to read then, in case of long '...* Best to review per commit.
* Main change, for JS/HTML code generation:
* Log initial state + state after event transitions.
* For HTML: log panel shows horizontal scrollbar, doesn't wrap. Much easier to read then, in case of long 'state' logging lines.
* Some other related changes as well:
* Fixed `valueToStr` for JavaScript `Symbol`s. `Symbol`s are only used for enumeration literals. `valueToStr` is used in multiple places, such as:
* Error messages such as for index of bounds.
* `fmt` arguments for for `%s` and `%S`.
* String representation of tuple elements.
* Output of print declarations.
* State logging.
* Improved comments in generated code, and text in generated reports, for location pointer variables:
* Include location pointer variables in 'original declaration names' mapping.
* JS/HTML code generation simplifications:
* Simplified code generation of frequency slider code.
* Simplified code generation of logging-related code.
* A 'log' function is always present now, also for JS, not only HTML.
* Prevents having to prefix all JS log calls with 'console.'.
* Unchanged: JS/HTML log to console. Only HTML logs to the log panel.
* Transition logging code is hard-coded in the template now.
Addresses #715v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/736#714 CIF state annotations: ensure all state annotations within an automaton ...2024-01-03T13:33:46ZDennis Hendriks#714 CIF state annotations: ensure all state annotations within an automaton are different* Best to review per commit.
* I opted for a value-based equality/hash wrapper, as that prevents false positives.
Closes #714* Best to review per commit.
* I opted for a value-based equality/hash wrapper, as that prevents false positives.
Closes #714v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/735#719 Prepare Git repo for v3.0 development2023-12-22T15:35:00ZDennis Hendriks#719 Prepare Git repo for v3.0 developmentCloses #719Closes #719v3.0