escet merge requestshttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests2024-01-15T16:04:17Zhttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/767#38 AsciiDoc HTML TOC now animates collapse/expand.2024-01-15T16:04:17ZDennis Hendriks#38 AsciiDoc HTML TOC now animates collapse/expand.* Solution uses only CSS, no JavaScript.
* The animation makes it more apparent to users what happens. And I personally think it looks really cool :smile:
Addresses #38* Solution uses only CSS, no JavaScript.
* The animation makes it more apparent to users what happens. And I personally think it looks really cool :smile:
Addresses #38v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/765#706 CIF data-based synthesis: rename 'spec' package classes2024-01-12T08:05:03ZDennis Hendriks#706 CIF data-based synthesis: rename 'spec' package classes* Best to review per commit.
* Renamed class in the `spec` package that represent the CIF specification in BDD representations, from `Synthesis*` to `CifBdd*`. Also updates the rest of the plugin to match it.
* This does not rename every...* Best to review per commit.
* Renamed class in the `spec` package that represent the CIF specification in BDD representations, from `Synthesis*` to `CifBdd*`. Also updates the rest of the plugin to match it.
* This does not rename everything that needs to be renamed in the plugin, but focuses on the specification representation, and what refers to or uses that.
Addresses #706v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/764#679 PLCgen: Add automatic enum conversion option.2024-01-18T09:08:14ZAlbert Hofkamp#679 PLCgen: Add automatic enum conversion option.Addresses #679Addresses #679v3.0Albert HofkampAlbert Hofkamphttps://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/763#38 AsciiDoc HTML breadcrumbs now include virtual TOC entries2024-01-10T08:00:20ZDennis Hendriks#38 AsciiDoc HTML breadcrumbs now include virtual TOC entries* Best to review per commit.
* Notes about the changes:
* The breadcrumbs are now based on the TOC, rather than on the page containment. This ensures consistency between the TOC and breadcrumbs.
* The virtual TOC entries that are anc...* Best to review per commit.
* Notes about the changes:
* The breadcrumbs are now based on the TOC, rather than on the page containment. This ensures consistency between the TOC and breadcrumbs.
* The virtual TOC entries that are ancestors of the current page are now also included in the breadcrumb.
* As before, the breadcrumbs end at the current page. Virtual TOC entries within the page are not part of the breadcrumb of that page.
* Note that section headings on a page are never part of breadcrumbs, as they can be in the TOC, but can't have child pages.
Addresses #38v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/761#38 Link virtual TOC entries and their targets.2024-01-09T14:55:29ZDennis Hendriks#38 Link virtual TOC entries and their targets.Some notes about the merge request:
* Best to review per commit.
* Fixed virtual TOC entries linking to the correct targets.
* Also improved virtual TOC entries/targets naming and styling consistency.
* Furthermore, fixed highlighting of...Some notes about the merge request:
* Best to review per commit.
* Fixed virtual TOC entries linking to the correct targets.
* Also improved virtual TOC entries/targets naming and styling consistency.
* Furthermore, fixed highlighting of the home page in the TOC.
* And some other small improvements. See individual commits.
Some notes about the virtual TOC entries:
* We have at certain places virtual TOC entries, wrappers that group a number of child pages:
* Chi documentation: -
* CIF documentation: SBE (2x), language tutorial (10x), reference manual (2x), tools (6x), simulator (5x)
* ESCET development documentation: index (1x)
* ESCET project documentation: -
* Tooldef documentation: reference manual (2x)
* These help to structure the pages under them, but are not actual sections (headings) on pages after splitting to multi-page HTML. Hence, they don't link to anything that exists.
* Potential solutions are:
* Make them real sections. But, the whole point was to have them be wrappers that only exist in the TOC. If they are sections/headings on the page, and there are multiple of them, you'd get them in the TOC, but the actual pages that they contain after all of them, as you can't mix sections and pages.
* Make them real pages. But, then the page needs content. This would lead to duplication, as we would need to duplicate the list of child references on the overview page and each virtual TOC entry turned new page. This would be annoying to maintain. Also, having the lists twice is not very intuitive to the user when navigating.
* Have no such wrappers. But, then we get larger groups of child pages directly under other pages. This is more difficult for users to grasp. It hinders navigation. We have the wrappers for a reason.
* Somehow relate the virtual TOC entries to their intended targets. Give the TOC entries and their targets relatable IDs (`virtual-toc-entry--<something>` and `virtual-toc-target--<something>`). This will work as desired, at the cost of an extra naming convention and some code in the multi-page HTML splitter to make it work.
* I opted for the last solution, as that is best for end users.
Addresses #38v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/760#706 CIF data-based synthesis: introduce settings class + split application/l...2024-01-22T16:54:05ZDennis Hendriks#706 CIF data-based synthesis: introduce settings class + split application/library* Eliminated use of the application framework within the CIF data-based synthesis plugin. The application class, UI command handler class, and options package, still use and depend on the application framework.
* Introduced a `CifDataSyn...* Eliminated use of the application framework within the CIF data-based synthesis plugin. The application class, UI command handler class, and options package, still use and depend on the application framework.
* Introduced a `CifDataSynthesisSettings` class to hold the settings. Changed the code to use that rather than the options.
* I tried to do things in separate commits. There are quite a few. I did forgot a few things, that I added in later commits. Also fixed a regression in a later commit. And made some further improvements in later commits. Not sure whether looking at it per commit or just at the end result is best now.
* The changes are all quite straightforward, I think.
* Some end-user error messages related to options/settings have changed.
* There are more steps to come in #706. This is about the application/library split only.
Addresses #706v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/759#38 Fix TOC item highlighting and expanding for current page section.2024-01-08T16:00:17ZDennis Hendriks#38 Fix TOC item highlighting and expanding for current page section.* Best to review per commit.
* First commit fixes TOC item highlighting and expanding for current page section.
* Second commit puts website JavaScript code in a separate file. This reduces the size of the HTML files, sharing the JavaScr...* Best to review per commit.
* First commit fixes TOC item highlighting and expanding for current page section.
* Second commit puts website JavaScript code in a separate file. This reduces the size of the HTML files, sharing the JavaScript code. Also has some other small improvements/fixes.
* Note that this fixes the TOC highlighting and expanding for TOC items that are sections on pages, rather than full pages. It does not yet fix the TOC for virtual TOC items, items that exist only in the TOC and are not pages or sections on pages. Fixing that is for a next merge request.
Addresses #38v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/758#735 Add CIF to CIF transformation to remove annotations2024-01-05T19:31:38ZDennis Hendriks#735 Add CIF to CIF transformation to remove annotations* Best to review per commit.
Closes #735* Best to review per commit.
Closes #735v3.0https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/757#500 Update license headers for 20242024-01-05T13:02:37ZFerdie Reijnen#500 Update license headers for 2024Closes #500Closes #500https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests/756#593 Allow annotations on discrete variables2024-01-05T12:20:59ZDennis Hendriks#593 Allow annotations on discrete variables* Best to review per commit.
* Allow annotations on discrete variables.
* No more column-aligned code generation in CIF code generator for discrete and continuous variables, for some target languages. Similar to input variables.
* CIF to...* Best to review per commit.
* Allow annotations on discrete variables.
* No more column-aligned code generation in CIF code generator for discrete and continuous variables, for some target languages. Similar to input variables.
* CIF to CIF 'Anonymize names' transformation does not anonymize annotation names and argument names. Made that explicit in the documentation.
* Introduced virtual TOC headings for parts of the reference manual. Similar to language tutorial.
Addresses #593v3.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/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/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/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