- Renamed from "SysIDE Editor" to "SysIDE Editor Legacy"
- Updated README.md with deprecation status
- Added notification on launch announcing deprecation
- Updated to 2024-12 spec.
- Support for Cross subsetting (
crossesand=>keywords).
- Support for Cross subsetting (
- Switch to Sensmetry fork
of the SysML v2 standard library that fixes some issues
- Users can still opt to using the official library by downloading it manually
and using the
syside.editor.standardLibraryPathsetting, but then validation issues might arise.
- Users can still opt to using the official library by downloading it manually
and using the
- Added
syside.editor.sexp.consolecommand to print out the S-expressions of the selected model node.- Can be triggered either by right clicking on the node and choosing SysIDE Editor: Get S-expression of the current node_ from the SysML category or from the Command Palette
- The output is printed to the Output pane of VSCode, under SysIDE category
- Fix #22 - Context Menu Commands Fail in Eclipse Theia
- Fixed erroneous
validateLibraryPackageNotStandardvalidation errors when using the bundled standard library
- Updated to 2024-11 spec
- New keyword
terminate - New type
TerminateActionUsage
- New keyword
- Renamed command titles from 'SysIDE' to 'SysIDE Editor'
- Added license to the published
syside-languageserver.jswhich is now zipped together with license - Added License Bundler on esbuild
- Updated to 2024-09 spec
- Updated default visibilities of
Imports - Imports need to have explicit visibility now
- Updated default visibilities of
- Users no longer need to manually download the standard library or click the "Download standard library" button in the notification on first run of SysIDE Editor. The extension now bundles the latest standard library.
- Rebranded from "SysIDE CE" to "SysIDE Editor".
- Settings and command prefixes changed from
sysidetosyside.editor. - Existing settings will be automatically migrated.
- Settings and command prefixes changed from
- Updated icon
- Fixed
localesemantic highlighting and TextMate grammar now correctly highlightsREGULAR_COMMENTs, strings and numbers.
- Updated to 2024-02 spec
- Nearly all changes are to validation
- VS Code configuration settings now use
sysidesection name instead ofsysml, existing settings will be automatically migrated
-
VSCode extension now works on the web with a few differences:
syside.standardLibraryPathis ignored, standard library is fetched directly from GitHubsyside.pluginsis ignored
Performance on the web may be degraded as the server has to share resources with other extensions. In addition, selecting SysML language will now provide language server support irrespective of the file extension, KerML files have to have
.kermlextension to get support -
Only relevant standard library files will be downloaded instead of the full repository, greatly improving download
-
Formatter now uses pretty-printer to format documents which can take line width into account through
"[sysml|kerml]": { "syside.formatting.lineWidth": 100 }, "syside.formatting.lineWidth": 100
in VS Code settings. Additional options are available through
syside.formatting.section which can also control optional keyword formatting. Formatting can be disabled by leading notes withsyside-format ignoreinside them which will print the element subtree the note is attached to as-is. Let us know about any issues with the new formatter like notes disappearing or feedback how the formatting style can be improved. -
Added pretty-printer for KerML and SysML models
- Added methods to add and remove owned child elements
- Refactored model building and validation to work on internal model elements instead
- Refactored AST and internal model to store order dependent child nodes in separate fields/properties to allow for easier runtime modifications without having to maintain implicit ordering
- Fixed resolving custom SysIDE path on Windows when it was absolute
- Changed how language server is bundled, resulting in much better performance
- False positive standard library validation in some cases on Windows
- Completion showing suggestions from the current element scope for type and feature relationships when completion is triggered by a related token
- Global scopes are now cached in a single structure, and reference resolution across documents will be done in constant time unless some documents in the workspace contain public imports or unnamed features in root namespace. In that case, reference resolution will fall back to iterating through those documents if name was not resolved. While this does not improve performance much on small projects, it should scale better
- Improved reference resolution performance, should be more than twice as fast now
StateActionUsageandEffectBehaviorUsageparsing which resulted in bad parse trees #9
- Updated Langium to 1.2.0
- Standard library always loaded from an equivalent path on the current drive on Windows #7
- False error when semantic token computation is cancelled #8
- Added configuration options for custom server path and command line arguments which may be used in the future
- Organized sources into workspace with dependant packages
- Fixed type relationships sometimes indented an additional time in unnamed types
- Alias members not showing up in completion suggestions
- KerML validations
- SysML validations
- Subsetting multiplicities and unique names in direct scope validations
- Whitespace issues in some formatting cases
- Excessive indentation in some formatting cases
- Formatter replacing all comment bodies in a scope with the first one
- Bugs discovered while adding validations
allocateis not indented an additional time if the element starts withallocate- Qualified names in suggestions shown from the membership node instead of the suggested element
- Standard library pop up showing on every extension activation after updating compatible standard library
- Updated to 2023-02 spec
- Indexing now uses
#(<sequence expression>)syntax,[...]is now only used for multiplicities and quantities
- Indexing now uses
- Renamed to Systems Modeling IDE (SysIDE)
- Syntax highlighting in markdown fenced blocks with
kermlandsysmlidentifiers - Full auto-formatting. However, there is no configuration for it currently and there is no support for maximum line widths
- Completion not inserting quotes around restricted names if the cursor is on
{ - Automatic indentation
- Completion sometimes returning no suggestions for multi-word unrestricted names
- VS Code extension exports
LanguageClient - Invalid KerML/SysML documents will not be formatted
- Dynamic loading of JS plugins similar to how VS Code loads plugins at start up
for non-intrusively extending server functionality. Plugins are loaded during
workspace initialization through an exported
activate(context: SysMLSharedServices)function. Also seesysml.pluginssetting - Users who have downloaded the standard library through this extension will be prompted to download a compatible standard library again when the compatible version changes
- Updated to 2022-12 spec
- Documentation fixes
- Initial release