Releases: sillydan1/graphedit
v1.5.0
Graphedit version v1.5.0 Release π
Welcome to Graphedit! This is a tool for creating and manipulating vertex-edge graph based syntaxes.
This release brings improvements to the plugin infrastructure as well as a LUA scripting engine, so you can customize your editor experience and even write full plugins in lua.
Simply add a file called init.lua
in the graphedit configuration directory (see below) and start scripting! See the official lua-types repository for details on what is possible.
We encourage you to implement a simple plugin π₯ perhaps one that greets the user on startup using the Toast
api?
If you want to create a java based plugin, take a look at the plugin github template to get a head start!
Most Important Changes
- Lua plugin β¨
You can now write plugins, customize the keyboard shortcuts and much more using the Lua programming language. - A Centralized Plugin repository and a way to download them from inside the editor
If you write a java plugin, you can submit releases to the plugin database and the "Plugin" view will display it for all other Graphedit users available for download! - Undo Tree Visualizer
A new side-panel has popped up. You can now explore and discover your session history as an undo-tree datastructure! - Many bug fixes and internal improvements
Where To Put init.lua
- Windows:
%APPDATA%/graphedit/lua/init.lua
- Linux:
~/.local/graphedit/lua/init.lua
- MacOs:
~/Library/Application Support/Graphedit/lua/init.lua
What's Changed
- Use the graphedit-protobuf package instead of manual copy-pasting (and docs update) by @sillydan1 in #43
- Fix/ignore buildconfig javadoc by @sillydan1 in #45
- fix: only highlight the hyperlinks by @sillydan1 in #47
- Bugfix/keybinds on flt tabs #17 by @sillydan1 in #48
- Feature/undo refactor by @sillydan1 in #49
- Bugfix/focus on non saved elements #2 by @sillydan1 in #50
- Feature/tip of the day #13 by @sillydan1 in #51
- Feature/lua #42 by @sillydan1 in #52
- Feature/plugin manager by @sillydan1 in #53
- Release 1.5.0 by @sillydan1 in #54
Full Changelog: v1.4.0...v1.5.0
v1.4.0
Graphedit version v1.4.0 Release π
Welcome to Graphedit! This is a tool for creating and manipulating vertex-edge graph based syntaxes.
This release introduces support for importing and exporting models from other tools. If you can write a plugin and an importer, you can use your models in Graphedit!
We encourage you to take a dive into the source code and implement a simple plugin π₯. Perhaps take a look at the plugin github template to get a head start!
Most Important Changes
- Import & Export Interfaces β¨
You can now implement importers and exporters by extending theIImporter
andIExporter
interfaces and submitting the implementations in you plugin(s). - gRPC MLSP Fixes πΎ
In addition to a lot of bug fixes, the gRPC MLSP specification now supports the possiblity for servers to self-report if they support the various features in the protocol.
This enables servers to be more backwards compatible when the MLSP specification is expanded and also allows servers to only implement what they need.
Full Changelog: v1.3.0...v1.4.0
v1.3.0
Graphedit version v1.3.0 Release π
Welcome to Graphedit! This is a tool for creating and manipulating vertex-edge graph based syntaxes.
This release is fairly minor and introduces support for grpc based language servers, which makes it easier than ever to integrate a language server. We encourage you to take a dive into the source code and implement a simple plugin π₯.
Most Important Changes
- gRPC Language Servers! - integrate your non-java language server directly π₯
- RunTargets can now restart the editor on successful runs
- Many smaller UI/UX improvements and bug fixes π
- API change to how the
VertexController
view class is instantiated for easier extension
Full Changelog: v1.2.1...v1.3.0
v1.2.1
Graphedit v1.2.1 patch release π¦
This release solves an issue related to plugin loading where the plugins directory was ignored completely.
What's Changed
- Quick fixes by @sillydan1 in #30
Full Changelog: v1.2.0...v1.2.1
v1.2.0
Graphedit version v1.2.0 Release π
Welcome to Graphedit! This is a tool for creating and manipulating vertex-edge graph based syntaxes. This release introduces support for language servers, much inspired by LSP where the language smarts can be directly integrated into the editor experience with lints and notifications. Lints can highlight sections of a model or even sections of space with an info, hint, warning or error-level messages. We encourage you to take a dive into the source code and implement a simple plugin π₯.
Most Important Changes
- Language Servers! - a new interface for better editor integration π₯
- ModelDiff, compare versions of models with each-other on a vertex/edge level. π’/π΄
- Lints, highlight sections of the model and attach a message to them π‘
- Plugin Manager, you can now disable and enable plugins in the "Plugins" sidepanel π
- Many smaller improvements as well such as copy/cut/paste, improvements in editor tools and many bug fixes π
What's Changed
- Feature/lints by @sillydan1 in #22
- Feature/lsp by @sillydan1 in #23
- Feature/plugin manager by @sillydan1 in #24
Full Changelog: v1.1.0...v1.2.0
v1.1.0
Graphedit version v1.1.0 Releaseπ
Welcome to Graphedit! This is a tool for creating and manipulating vertex-edge graph based syntaxes. This release introduces support for third-party plugins via the IPlugin
interface as well as three slightly more useful modelling formalisms. We encourage you to take a dive into the source code and implement a plugin π₯ perhaps a plugin that adds a new syntax with images for vertices? If you run into any issues, please submit an issue on github.
Most Important Changes π―
- Third party plugin support with the
core
package andIPlugin
service interface π - Three new syntaxes to model with
- Labelled Transition Systems (LTS) π·οΈ
- Petri Nets see π§«
- Simple - a simple syntax where vertices with empty labels are circles and otherwise they are automatically resizable rectangles.
- More extensive javadoc for all publicly facing objects for plugins π€
- A LOT of code cleanup π§Ή
What's next? π€
The next iteration of Graphedit will focus on adding better plugin support, more syntaxes and possibly some start on a prototype language server (maybe). If you are interested and want to get involved with graphedit we are very open to ideas so don't hesitate to ask via github issues, pull-requests or discussions.
Keep en eye out on the project kanban board for progress and planned feature set.
Screenshots ποΈ
What's Changed
- Feature: LTS syntax by @sillydan1 in #15
- Feature/pn syntax by @sillydan1 in #16
- Feature/plugin system by @sillydan1 in #18
- Version 1.1.0 release candidate by @sillydan1 in #20
Full Changelog: v1.0.0...v1.1.0
v1.0.0
First Release! π
Welcome to Graphedit! This is a tool for creating and manipulating vertex-edge graph based syntaxes. This initial release provides a simple example syntax that admittedly is not very useful, but this is just the start, and Graphedit's architecture is designed to be extendable, so other syntaxes and/or languages should be relatively straight forward to implement and we encourage you to take a dive into the source code to extend it by yourself. If you run into any issues, please submit an issue on github.
What's Next? π€
Please take a look at the kanban project board for progress, and planned feature set for v1.1.0 and beyond.
The long term plan for the future is that Graphedit is meant to be the go-to IDE of graph editors, meant to be extendable, "smart" with the help of language servers, and easy to use. If you are interested in adding your own extensions we are very open to ideas so don't hesitate to ask via github issues, pull-requests or discussions.
What's Changed
- Initial implementation by @sillydan1 in #7
- Feat/viewmodel as properties by @sillydan1 in #9
- Distribution and packaging by @sillydan1 in #11
Full Changelog: https://github.com/sillydan1/graphedit/commits/v1.0.0