Skip to content

Releases: eclipse-glsp/glsp-client

2.1.1 Release

07 Feb 14:25
Compare
Choose a tag to compare

Changes:

  • Align sprotty-protocol version to 1.0.0

Full Changelog: v2.1.0...v2.1.1

2.1.0 Release

23 Jan 12:55
Compare
Choose a tag to compare

Changes

  • [diagram] Fix a bug that prevented correct rendering of projection bars when using GLSPProjectionView #298
  • [a11y] Improved responsibility and feedback when resizing or moving diagram elements with keyboard-only commands #295
  • [diagram] Extends configureDiagramOptions function to also allow partial configuration of ViewerOptions #296
  • [diagram] Remove unused handleSetContextActions from ToolPalette #301
  • [diagram] Deprecate ISModelRootListener API in favor of IGModelRootListener #303
  • [diagram] Ensure that the suggestion container position of the AutoCompleteWidget is rendered correctly #304
  • [feature] Extend ToolPalette/CreateOperation API to support rendering of preview/ghost elements when creating new nodes #301
  • [protocol] Fix a bug in BaseJsonRpcClient to ensure that it can handle multiple open diagram sessions #307
  • [diagram] Restructure some tools to have a more common infrastructure and support helper lines #306
  • [diagram] Fix a bug in SelectionService that caused issues with inversify when injecting certain services (e.g. ActionDispatcher) in SelectionChangeListener implementations #305
  • [diagram] Ensure that the SelectionService does not trigger a change event if the selection did not change on model update #313

Full Changelog: v1.0.0...v2.1.0

2.0.0 Release

09 Nov 13:42
v2.0.0
Compare
Choose a tag to compare

Changes

  • [layout] Improve Layouter to support more dynamic layouts and complex parent/children node structures #187 - Contributed on behalf of STMicroelectronics
  • [diagram] Fix SVG export for nested root elements e.g. GLSPProjectionView #196
  • [diagram] Scope the styles to not break existing application layout #209
  • [routing] Ensure that routes are properly re-calculated when moving a routing point #198
  • [diagram] Fix a bug in the EditLabelUIExtension where the diagram becomes dirty without an actual change. #766
  • [diagram] Extend ComputedBoundsAction definition with routing information. This enables proper forwarding of client-side computed routes to the server #201
  • [DI] The createClientContainer function is now deprecated. Please use initializeDiagramContainer instead. This new function can also be used with ModuleConfigurations which allow a more fine granular configuration by adding new modules and/or removing default modules. #218 #231 #236
  • [diagram] Fix incorrect calculation of decorator popup positions for edges. #221
  • [protocol] Introduce a reusable Disposable type #222
  • [protocol] Introduce reusable utility functions for DI configuration #236#237
  • [diagram] Augment diagram SVG with additional model metadata to enable easier integration tests and accessibility #239
  • [validation] Add and track reason for validation markers (e.g. batch and live validation) #243
  • [protocol] Introduce optional deselectAll flag for SelectActions #257
  • [protocol] Provide the common interfaces and type definitions for TS-based GLSP servers #245 - Contributed on behalf of STMicroelectronics
  • [diagram] Introduce a new set of accessability features for disability-aware conceptual modeling and keyboard-only diagram interactions. (experimental) #240 #241 #242 #254 #276 #279
  • [API] Re-work tool and feedback structure #264 #274
    • Introduce registerListener method on GLSP mouse and key tool to return a disposable for de-registration
    • Adapt registerFeedback method from feedback dispatcher to return a disposable for de-registration
    • Introduce dedicated BaseGLSPCreationTool for tools based on trigger actions
    • Introduce toDisposeOnDisable collection in BaseGLSPTool to register disable handling during enablement
  • [DI] Introduce and consistently use FeatureModules instead of plain inversify ContainerModules #267
  • [diagram] Introduce statusModule that binds UI extension to handle & render GLSPStatusMessages. #272
  • [diagram] Provide generic dirty state handling in EditorContextService #272
  • [diagram] Fix bug that broke edge edit (routing) in certain cases #273
  • [API] Introduce DiagramLoader component + life cycle management #274 #282
    • Integration projects no longer need to manually implement the initial diagram loading. Instead a set of configurationsIDiagramOptions and then the diagram loader
      is invoked and initializes the diagram.
    • Add a onServerInitialized event to the GLSPClientAPI.
    • Introduce IDiagramStartup service. Adopters can multi bind this service to hook into the diagram loading lifecycle and provide additional logic. i.e. dispatching of initial actions.
  • [diagram] Fix a bug that broke edge intersection detection when using the GLSPProjectionView #275
  • [diagram] Fix a bug regarding focus handling when integrated in an application frame like Theia #278

Breaking Changes

  • [DI] Injecting an IButtonHandler constructor is now deprecated. Please use configureButtonHandler() instead. #195 - Contributed on behalf of STMicroelectronics
  • [node] Update minimum requirements for Node to >=16.11.0 #210
  • [protocol] Renamed UndoOperation and RedoOperation to UndoAction and RedoAction to match operation specification #216
  • [protocol] Remove dependency to vscode-ws-jsonrpc. The protocol package now directly offers functions to create a websocket rpc connections #215
  • [protocol] The elementIds property of LayoutOperation is now optional. If undefined the entire model will be layouted #232
  • [API] Refactored base API #259
    • Removed the TYPES.SelectionService service identifier. Please directly use the SelectionService class as service identifier instead
    • The SelectionService binding is now part of the defaultGLSPModule. This means the SelectionService remains available even if the selectModule is not configured
    • RootModelChangeListeners are no longer tied to the FeedbackawareUpdateModelCommand instead they are managed by the GLSPCommandStack
    • IMouseTool and TYPES.IMouseTool are no longer available. Directly inject and use MouseTool instead
    • Refactored rank utility functions
      • isRanked() -> Ranked.is()
      • getRank() -> Ranked.getRank()
      • DEFAULT_RANK -> Ranked.DEFAULT_RANK
  • [API] Introduce Event API to replace the old listener/notifier pattern #261
    • Reworked SelectionService, GlspCommandStack & EditorContextService to make use of this new API
    • Removed explicit (de)registration methods for listeners. Use the corresponding event property (e.g. SelectionService.onSelectionChanged) instead
    • Aligned naming of injectable interfaces & service identifiers to consistently use the I prefix
  • [API] Re-work tool and feedback structure #264
    • Remove generic toolsModule and toolFeedbackModule in favor of individual tool modules
    • Rename dispatchFeedback in BaseGLSPTool to registerFeedback to align with feedback dispatcher
    • Switch arguments in deregisterFeedback in BaseGLSPTool for easier de-registration and clean up actions
  • [protocol] Add messages for server-side progress reporting and remove timeout in ServerMessageAction #265
  • [DI] Renamed and aligned prefixes of DI modules. #266
    • Removed glsp prefix from all modules (e.g. glspSelectModule-> selectModule)
    • In addition, the following modules have been renamed
      • defaultGLSPModule-> baseModule
      • modelHintsModule -> typeHintsModule
      • enableDefaultToolsOnFocusLossModule -> toolFocusLossModule
      • glspEditLabelModule -> labelEditModule
  • [websocket] Introduce a reusable GLSPWebSocketProvider class that supports reconnect on connection loss #269
  • [API] Introduce GLSPModelSource as default implementation for sprotty's ModelSourceAPI #272 #287
    • GLSPDiagramServer has been deprecated and is no longer available
    • SelectionServiceAwareContextMenuMouseListener renamed to GLSPContextMenuMouseListener
    • SourceURIAware interface has been removed. No longe required since we only have one GLSPModelSource binding now.
  • [protocol] Revise TypeHints API and introduce possibility to dynamically query the server for complex connection conditions #285
    • EdgeTypeHint
      • sourceElementTypeIds and targetElementTypeIds are now optional. If not provided all connection targets are allowed
      • Introduce dynamic flag. If a hint has this flag enabled connection tools know that the have to query there server in addition
        to checking the default ...
Read more

1.1.0 Release Candidate 10

30 Jun 13:26
Compare
Choose a tag to compare
Pre-release

What's Changed

Full Changelog: v1.1.0-RC09...v1.1.0-RC10

1.1.0 Release Candidate 9

30 May 19:52
Compare
Choose a tag to compare
Pre-release

What's Changed

Full Changelog: v1.1.0-RC08...v1.1.0-RC09

1.1.0 Release Candiate 8

08 May 08:23
Compare
Choose a tag to compare
Pre-release

What's Changed

New Contributors

Full Changelog: v1.1.0-RC07...v1.1.0-RC08

1.1.0 Release Candiate 7

07 Apr 11:21
Compare
Choose a tag to compare
Pre-release

What's Changed

  • Fix definition of LayoutOperation by @tortmayr in #232
  • Ensure tha DrawFeedbackEdgeAction uses correct type for schema by @tortmayr in #233
  • Reformat code & overall cleanup by @tortmayr in #234
  • GLSP-954 Add DI utility to protocol package by @tortmayr in #236
  • GLSP-954 Ensure that bindAsAService also work with the DI container as context by @tortmayr in #237
  • Bump webpack from 5.75.0 to 5.76.0 by @dependabot in #235

Full Changelog: v1.1.0-RC06...v1.1.0-RC07

1.1.0 Release Candiate 6

06 Mar 17:27
Compare
Choose a tag to compare
Pre-release

What's Changed

Full Changelog: v1.1.0-RC05...v1.1.0-RC06

1.1.0 Release Candiate 5

07 Feb 07:14
Compare
Choose a tag to compare
Pre-release

What's Changed

Full Changelog: v1.1.0-RC04...v1.1.0-RC05

1.1.0 Release Candiate 4

12 Jan 16:49
Compare
Choose a tag to compare
Pre-release

What's Changed

New Contributors

Full Changelog: v1.1.0-RC03...v1.1.0-RC04