Releases: eclipse-glsp/glsp-server-node
Releases · eclipse-glsp/glsp-server-node
2.5.0 Release
Changes
- [api] Add layout operation as optional parameter to
LayoutEngine.layout#111
Potentially breaking changes
- [layout] Updated GLSPElkLayoutEngine for elkjs > 0.10.1 #109
GLSPElkLayoutEngine: Replace usages of the deprecated and no longer supportedELKPrimitiveEdge. This might affect adopters that use a customization of this class
- [node] Update minimum requirements for Node to >=20 #113
Full Changelog: v2.4.0...v2.5.0
2.4.0 Release
Changes
- [layout] Fix a bug regarding the application of routing point information in
ComputedBoundsActionHandler#103 - [gmodel] Cancel pending progress reporters in
RequestModelActionHandlerif an error occurred #104 - [operation] Improve
OperationActionHandlerto ensure that a new model is only submitted after actual changes #105 - [server] Ensure correct log level logging for
ConsoleLogger#106 - [server] Avoid configuration of winston logger if logging is disabled via options #107
Full Changelog: v2.3.0...v2.4.0
2.3.0 Release
2.2.1 Release
Changes
- [layout] Ensure that model is updated correctly when using
automaticserver layout #74 - [gmodel] Add proper undefined/null handling in GModel builder functions #76
- [launch] Improve Winston-Logger implementation to properly handle non-serializable objects #82
- [layout] Ensure that including
ElkLayoutEngineengine does not error in browser-only server implementations #83 - [gmodel] Introduce new
Resizableinterface that is implemented by allGShapeElementsand allows per-element definition of resize handle locations #84 - [action] Ensure that actions queued with
dispatchAfterNextUpdateare also dispatched after the initialSetModelAction#88
Potentially Breaking Changes
- [protocol] Removed local definition of
GIssueMarkerand reuse it from@eclipse-glsp/protocolinstead #88- =>
GIssueMarkeris now an interface instead of a class
- =>
Full Changelog: v2.1.0...v2.2.1
v2.1.1
2.1.0 Release
Changes
- [operation] Add support for defining ghost elements/templates in
CreateNodeOperationHandler's #65 - [launch] Use "127.0.0.1" as default host to avoid potential IP v4/v6 connection issues #67
- [gmodel] Fix a bug in
GModelDeleteOperationHandlerthat prevented deletion of multiple selected elements #68
Full Changelog: v2.0.0...v2.1.0
2.0.0 Release
Changes
- [elk] Fix a bug in the
GLSElkLayoutEnginethat skipped layouting of certain edges #23 - Contributed on behalf of STMicroelectronics - [launch] The message sent after successful startup now also contains the effective socket port #30 - Contributed on behalf of STMicroelectronics
- [launch] Fix a bug that caused the server to not properly dispose all resources when
shutdownwas called #33 - Contributed on behalf of STMicroelectronics - [diagram] Fix a bug to ensure that the copy&paste feature is working properly #35
- [api] Ensure that all
Promises andMaybePromises have proper rejection handling #36- Contributed on behalf of STMicroelectronics - [launch] Add a launcher component for starting WebSocket based GLSP servers #41
- [validation] Add explicit support and API for live and batch validation #43
- [launch] Launcher components now auto allocate a free port if the port argument is 0 #42
- [server] Add support for server progress reporting #52
- [diagram] Add support for handling reconnection requests to
RequestModelActionHandler#54 - [server] Update
AbstractJsonModelStorageto ensure that Windows file paths are properly converted #55 - [deps] Remove unneeded dependency to
fs-extra#56 - [diagram] Provide generic reusable base operation handlers for JSON-based source models #59
- [diagram] Add support for dynamic edge type hints
- Provide
EdgeCreationCheckerAPI. Adopters can implement this to handle dynamic edge creation validation requests. #60
- Provide
- [model] Introduce new
GForeignObjectElement+ builder class #61
Breaking Changes
- [graph] Align GGraph model with newest changes from glsp-server #22 - Contributed on behalf of STMicroelectronics
- Renamed interfaces:
EdgePlacement->GEdgePlacement(affected classes:GEdgeLayoutable,GLabel)GLayoutContainer->GLayouting(affected classes:GCompartment,GGraph,GNode)GShapePreRenderedElement->GShapedPreRenderedElement
- Renamed interfaces:
- [deps] Update minimum requirements for Node to >=16.11.0 #32
- [api] Restructure
@eclipse-glsp/server-nodepackage to provide entry points for both node and browser-only environments #37- The package has been renamed to
@eclipse-glsp/server. This change affects all import namespaces. - New namespaces for environment specific code:
@eclipse-glsp/server/node@eclipse-glsp/server/browser
- The package has been renamed to
- [operation] Implement Command API and rework OperationHandler to provide an optional command instead of direct execution to allow more execution control (including undo & redo support) #38 #59
- This includes major breaking changes across the whole API:
OperationHandlerhas been refactored from an interface to a common abstract base class. Theexecutemethod now has to return aMaybePromise<Command|undefined>- Refactor
CreateOperationHandlerto an interface instead of a class - Rename the services and handlers of the direct GModel library => consistent use of
GModelprefix - The
ModelStateinterface no longer has anisDirtyflag. Dirty state is now handled by theCommandStack
- This includes major breaking changes across the whole API:
- [server] Default port has changed from 5007 (and 8081 for websocket) to 0, which implies autoassignment by the OS #42
- [server] Refactored
GLSPServerandGLSPServerLauncherAPI #44 - Contributed on behalf of STMicroelectronics- Server type definitions are now consumed from
@eclipse-glsp/protocol GLSPServerimplementation is no longer relies on json-rpc implementation details.- JSON-RPC setup is now done with
JsonRpcGLSPServerLauncher
- Server type definitions are now consumed from
- Provide
CommandStackAPI to support undo/redo of model changes #38 #39 - Contributed on behalf of STMicroelectronicsModelStateno longer has aisDirtyproperty- Breaking refactor of
OperationHandlerAPI
- [deps] Update to inversify 6.x and Typescript 5.x. #48
- GLSP uses a synchronous inversify context this means with inversify 6.x decorator methods (e.g.
@postConstruct) with asynchronous results are no longer supported
- GLSP uses a synchronous inversify context this means with inversify 6.x decorator methods (e.g.
- Revise model loading and client action handling #57 #58
- Refactor
ModelSubmissionHandlerto enable handling ofRequestModelActionas proper request action- Introduce a
submitInitialModelmethod that is called by theRequestModelActionHandler
- Introduce a
- Remove
configureClientActionsfromDiagramModuleas client actions are now implicitly configured viaInitializeClientSessionrequest - Remove
ClientActionHandlerand replace withClientActionForwarder - Rename
ServerStatusAction->StatusActionandServerMessageAction->MessageAction
- Refactor
New Contributors
- @xai made their first contribution in #25
- @rschnekenbu made their first contribution in #30
- @martin-fleck-at made their first contribution in #32
- @eneufeld made their first contribution in #33
- @sdirix made their first contribution in #56
Full Changelog: v1.0.0...v2.0.0
1.1.0 Release Candidate 10
What's Changed
- GLSP-1026 Provide bundle on example server package by @tortmayr in #49
- GLSP-1022: Update to TS5 and inversify 6 by @tortmayr in #48
Full Changelog: v1.1.0-RC09...v1.1.0-RC10
1.1.0 Release Candiate 9
Full Changelog: v1.1.0-RC08...v1.1.0-RC09