From here, you can access the different versions of the Obeo Studio user manuals, developer manuals or read the release notes.

Documentation

Access the documentation for a specific version by selecting a link below:

Release Notes

Version 2022.3.0

Versions

Obeo Studio version 2022.3.0 corresponds to:

New

Diagram
  • #988 [core] Add support for a post selection

  • #937 [diagram] Add the ability to export diagram as SVG images

  • #779 [diagram] Add support for tools preconditions

  • #781 [diagram] Add support for multiline labels

Compatibility
  • #1018 [compatibility] Add support for the Navigation model operation from Sirius RCP

  • #1026 [compatibility] Add support for OperationAction. The action are converted to regular tools available in the palette of the frontend

Form
  • #695 [form] Add support for links in the form representation

Table
  • [table] Add support for a table representation based on React Table and the table component from Material UI. It features a generic table description available on all objects which will display the properties of the content of the object. It also comes with sorting, pagination, filtering and edition support.

Explorer
  • #1063 [explorer] It is now possible to expand or collapse items in the explorer without selecting them by clicking directly on the expand/collapse arrow icon

Fixed

Diagram
  • #991 [diagram] Restore edge creation tools feedback

  • #962 [layout] Fix an issue preventing nodes from being properly resized when a child node is created

  • #1051 [layout] Fix an issue resizing nodes when a child node was created even if it was not necessary

  • [diagram] Fix an issue preventing the resizing of a node if the cursor had not moved after a previous resizing

  • #1104 [diagram] Fix the image base path during the SVG export

  • #1102 [diagram] Fix the node label positioning (rectangle, list and list item)

Compatibility
  • #1075 [compatibility] Use the proper icon feature for OperationAction

Changed

  • #1054 [diagram] Add missing variables to compute the label of an edge

  • #956 [diagram] Add the border node concept on front-end and implement the border node snap. The user can move the border node only on the side of its parent node. The border node enters its parent node with 8px. The ELK automatic layout is adapated to have the same behavior.

  • #919 [diagram] Support the parent container resize for the border nodes on back-end

  • #1071 [diagram] Add a label for the border nodes

  • #1071 [diagram] Improve the resizing of the border nodes

  • #783 [diagram] Nodes which use images can now also have a border with all the relevant properties: color, size, radius, and line style. This applies to modelers using the compatibility layer and the web-based diagram definitions

  • #837 [layout] Improve the position of the dropped elements

Form
  • #1068 [form] Add support for displaying details on arbitrary element kinds

Explorer
  • #1063 [explorer] It is now possible to expand or collapse items in the explorer without selecting them by clicking directly on the expand/collapse arrow icon

  • #1070 [explorer] When selecting an element or opening a representation (for example from its URL or from the onboard area), it is automatically made visible and selected in the explorer.

Workbench
  • #1067 [workbench] Hide hamburger menu on tree items with no operations

  • #1128 [workbench] Select representation opened from a tab

  • #1081 [workbench] It is now possible to specify the component to display in the main area when no representation is open instead of the OnboardArea (which is still the default when there is no override)

Developer

  • #1025 [diagram] Add a new API to perform tests of our layout algorithm

  • #699 [core] Provide the IEditingContext to find all the RepresentationMetadata for a specific object

  • #1054 [diagram] Add missing variables to compute the label of an edge

Known issues

You can find a list of the known issues (with workaround where relevant) being investigated by our engineering team on the following public bug trackers:

Version 2022.01.0

Versions

Obeo Studio version 2022.01.0 corresponds to:

Obeo Studio does not use Log4J and is not affected by the recent Log4Shell vulnerability.

New

Diagrams
  • #133 A new generic "Connector" tool is available on diagrams. It provides an alternative way to create edges between diagram elements:

    1. choose the generic "Connector" tool from the source node’s palette

    2. select the target node

    3. choose which of the compatible tools to apply in the menu appears. If there only one compatible tool, it will be applied automatically.

Generic Connector Tool

  • #132 It is now possible to drag semantic elements from the explorer on a diagram. The concrete effect depends on how the target diagram is defined, but a typical case is to add a graphical representation of the dropped element on the diagram.

Dropping an element from the explorer on a diagram

  • #925 When a diagram is opened, a "Fit to screen" is automatically performed to ensure all its content is visible. Previously, depending on the coordinates of the elements it could happen that not all of them where visible on open.

Automatic fit-to-screen when opening a diagram

Studio Definitions
  • #726 Nodes can now have a dynamically computed size (using sizeComputationExpression) which depends on the current state of the semantic model. If the expression is present and produces a positive integer, it will be used as both the width and height of the node, in pixels. Currently it is not possible to compute different values for width and height.

  • #596 It is now possible to define border nodes in web studio definitions

  • #924 All text styles supported by Sirius Component can be configured on labels: bold, italic, underline, strike-through.

Sirius Desktop Compatibility
  • #897 The Bordered Node Dot Style is now handled in the compatibility layer.

Fixed

  • #565 Each edge between two nodes now has its own reference points on the source and target nodes, corresponding to the mouse position when the edge was created. Before, the implicit reference point was the center of the source and target notes for all edges, which meant that multiple edges between the sames nodes overlapped. Now, using these reference points each edge can have its own distinct path.

  • In studio definitions, the canonical edge creation tool which was provided when no specific tool was defined was broken for domain-based edges, and has now been fixed.

  • #377 In the workbench, renaming a representation now properly updates the name in the corresponding tab (if it is opened).

  • #868 The initial position of the label for newly created edges was invalid and has been fixed.

  • #425 In diagrams, the routing of edges with the same source and target node (i.e. a "self-loop") when in manual layout has been fixed.

  • #746 In some cases, it was possible for a change in the details view to be lost when the user selected a different element in the explorer before validating the change.

Details View
  • In the details view, when the complete name of the selected element is too long relative to the width of the view, the full label can been seen on the label’s tooltip.

Full object label in the tooltip

Changed

  • Invalid formats are handled more gracefully when editing numeric properties in details view and in forms. If the user enters text which does not represent a number he will get a proper error message.

Enterprise

  • The documentation for Obeo Studio is now hosted at https://docs.obeostudio.com/. It is accessible without authentication.

  • Users trying to access a page while not logged-in are now redirected to that page after their authentication.

  • It is now possible to contribute additional context menus from the backend only. See the new EditingContext.treeItemContextMenus field in the GraphQL Schema for details.

  • #858 All the code of the SubscriptionManager which had a dependency to Spring Security has now been isolated in the SubscriptionManager of Obeo Studio.

  • The GraphQL HTTP endpoint for queries and mutations is now accessible to anonymous (non-authenticated) users. This enables some specific parts of the schema to be publicly accessible. Accessing most parts of the schema (in particular mutations) still requires to be authenticated as before. This change only concerns the HTTP endpoint; the WebSocket endpoint used for subscriptions is still only accessible to authenticated users.

Developer

  • #944 [core] Add the ability to dispose the editing context

  • #896 [diagram] Allow to make specific changes before and after the layout

  • #871 [core] An IEditingContextEventProcessorExecutorServiceProvider can be given to the EditingContextEventProcessor in order to customize the ExecutorService which will be used to handle the processing of the IInput received. This will allow consumers to change the thread management policy of Sirius Components

  • #929 [core] Add support for providing a listener on GraphQLWebSocketHandler operations

  • #858 [core] Remove most of the methods of ISubscriptionManager since they were not really useful

  • #871 [core] Change the constructor of the EditingContextEventProcessor in order to let consumers provide an IEditingContextEventProcessorExecutorServiceProvider

  • #134 [workbench] Switch from a single-selection API to a multi-selection API with some changes to the Selection object of the workbench

  • #878 [core] As specified in the ADR-36, the kind of an object (representation, semantic elements, selection entry of the workbench) is now an URI. All previous kind values have been modified

  • #878 [graphql] The GraphQL argument classId which appeared on some fields has been replaced by kind since it was always the kind of an object. Technically, it is always the kind of a semantic element but that may not be the case forever

  • [core] The method IEditService.findClass() in Sirius Components has been removed. It was only used in the implementation of a data fetcher which now delegates to EditingContextRepresentationDescriptionsEventHandler.

  • [core] IRepresentationDescriptionSearchService has a new findAll method to return all the representation descriptions available in a given editing context

  • [core] fr.obeo.odweb.services.representations.api.IRepresentationDescriptionSearchService has been removed in favor of org.eclipse.sirius.web.core.api.IRepresentationDescriptionSearchService

  • [core] The package containing the concepts related to the editing context has been renamed to remove references to the notion of "project"

  • #932 [graphql] The concept of RepresentationMetadata has been introduced in order to prepare the separation of the metadata from the representation’s content

  • [core] Sirius Components does not depend on Spring Security anymore

Known issues

You can find a list of the known issues (with workaround where relevant) being investigated by our engineering team on the following public bug trackers:

Version 2021.12.0

Versions

Obeo Studio version 2021.12.0 corresponds to:

New

  • A new "Representations" view is available in the bottom-right corner of the project editor. If shows the list of all existing representations which are associated to the currently selected semantic element. The new Representations view

  • #154 [diagram] Add support for the edition of the label of an edge Direct edit of an edge’s label

  • #799 [diagram] The buttons in the diagram’s toolbar now have proper tooltips

  • #692 [tree] The tree representation will now act as a proper representation. Its event handlers will now be implementations of ITreeEventHandler and its input will be implementations of ITreeInput

  • #773 [compatibility] Add support for both createView and deleteView model operations which can be used to support unsynchronized diagrams from Sirius Desktop.

  • #613 [compatibility] Add support for external java action with the new API IExternalJavaActionProvider which allows others to provide instances of IExternalJavaAction in order to perform some custom behavior during the execution of a tool for example.

  • #773 [compatibility] The synchronization policy of the node descriptions is now properly computed from the AbstractNodeMapping

Fixed

  • [diagram] The variable selectedNode was only available in the variable manager used when executing node tools if a selection dialog was also available. Now the selectedNode variable will always be available unless the tool has been invoked on the background of the diagram

Changed

Enterprise

  • [core] The accounts page now support pagination and it displays more information such as the creation date and last modification date of an account. We now store in the database the last successful login information for all users in order to be able to find inactive users and to detect potential issues such as stolen accounts.

  • [core] Add the ability to configure the SameSite policy of the authentication cookies using obeo.studio.cookie.sameSitePolicy. This ability will be removed in the next version where we will adopt Spring Boot 2.6.x which supports this directly.

Developer

  • [core] Add a task to display TypeScript errors in the VS Code problems view

  • [core] We have finished our effort to move the frontend codebase to the strict version of TypeScript.

  • [core] Switch to Spring Boot 2.5.6

  • #694 [core] Add IRepresentationRefreshPolicyRegistry to contribute `IRepresentationRefreshPolicyProvider`s in order to customize on which kind of change description, representations will be refreshed.

  • #694 [core] Data can be provided to Success in order to notify changment made by operation made on the editing context.

  • [explorer] The context menus on explorer items has been migrated to Material UI

  • #804 [core] Update the name of our configuration properties. The configuration property sirius.web.graphql.websocket.allowed.origins will now be sirius.components.cors.allowedOriginPatterns and it will support complex patterns on top of regular origins. The default value will be restored to nothing since it has temporarily been set to \*. In a development environment, the recommended value would be both patterns https://localhost:[*] and http://localhost:[*] in order to accept requests from any application hosted on the same machine. The configuration property org.eclipse.sirius.web.editingContextEventProcessorRegistry.disposeDelay will now be sirius.components.editingContext.disposeDelay. Its default value will be 1s since it is the only realistic option with domain and view support.

  • #692 [explorer] The explorer view is now more generic and extensible. It can represent arbitrary kinds of tree items, but the tree items supported must be configured for each application.

  • #700 [core] editingContextId and representationId are no longer UUID but String. Products that rely on sirius-components will be able to have their own ID policy for the editingContextId and representationId.

Known issues

You can find a list of the known issues (with workaround where relevant) being investigated by our engineering team on the following public bug trackers:

Version 2021.10.0

The highlights of this new version are:

  • improvements to the studio definition feature (although it is still considered experimental at this point);

  • improvements to the manual diagrams layout;

  • new GraphQL API to issue arbitrary AQL queries on the models' content.

See below for more details.

New

  • Diagrams

    • Added support deleting view without deleting the corresponding semantic element (aka "Delete from Diagram") on unsynchronized diagrams.

    • A new variable selectedNode is available when executing node tools and "delete from diagram" tools.

  • Studios

    • The View Definition has been improved to support node border size, edge width, font formats for node Definition, node label color.

    • In the View Definition, node and edge descriptions can have a name to make them easier to distinguish and locate in the UI (explorer and details view).

    • In the View Definition Edge Descriptions can now have multiple sources & targets.

    • In the Domain Definition, multiple inheritance is now supported between entities.

    • Validation rules have been added to both the Domain and View Definitions to reduce the risk of errors. This is a work in progress and more validation rules will be added.

  • General

    • It is now possible to use the eInverse() service in AQL expressions to navigate backwards on references.

Fixed

Several of the known issues listed in the previous versions have been fixed:

  • Direct edit of the label using the palette works again.

  • Direct edit triggered by directly starting to type no longer loses the first character.

  • Multi-valued references can not be edited in the details view:

    • for such references we now provide a selection widget which allows selecting multiple values.

    • the order of the elements in the list of chosen values can not be controlled yet

Multi-Valued Reference Edition Widget

Other important fixes:

  • Diagrams

    • When performing incremental layout (after a manual layout change), the algorithm uses the same algorithm as for the automatic layout.

    • On diagrams which are in auto-layout mode, it is no longer possible to move elements. Previously it was possible to move them but the auto-layout would move them back to their original position.

  • Studios

    • It was possible to define a label expression for edges, but it was not taken into account Edge labels are now correctly computed and displayed.

    • It is now possible to use qualified type names in AQL expressions inside the View Definition, i.e. expressions like aql:self.eAllContents()→filter(domain::Type) now work.

    • The default color for new edges in the View Definition is now more visible.

    • The default edge decorator on View Definitions is now in the correct direction.

  • Sirius Desktop Compatibility

    • Added support for the 'container' and 'element' compatibility variables inside creation tools.

Changed

  • Workbench

    • The Validation view is now open by default.

Enterprise

  • Added support for cross site request forgery protection (not enabled by default)

  • Added auditing capabilities to projects (creation date and author, last modification date and author).

  • The projects browser now displays more information on the projects ("access level", "created by" and "last modified by")

  • The projects browser now supports pagination

  • The project settings page has been migrated to Material-UI

Project auditing information in the Project Browser

Developer

  • The GraphQL Schema supports a new collection of queries (queryBasedXXX where XXX is the type returned by the query) which can be passed AQL expressions to evaluate in the context of a document/model. This can be used to "dig into" the model without downloading them. Note that there is no UI for this feature; it can only be used programmatically.

  • Updated dependencies on the frontend and backend. Most importantly, building the frontend now required Node 16.6.2 and npm 7.20.3.

  • The business code has been moved out of the Sirius Components and can now be found in the Sirius Web repository instead.

  • Switched to a schema first approach for our GraphQL schema. See the various *.graphqls files for details.

  • In the GraphQL API, namespace has been renamed into domain.

Known issues

Here is where you can find a list of issues currently being investigated by our engineering team. This list will be updated regularly, and issues will be added and removed as they are discovered and resolved.

Projects Management
  • Issue description: Some parts of the UI are currently missing navigation links to go back once they are opened. For example, when opening the Project Settings page, there is no explicit link to go back to the project.

  • Workaround: Either use the browser history to go back to the previous page, or go back to the Projects Browser page (click on the top-left icon) and then navigate to the target page from there.

  • Issue status: Planned.

In some circumstances, models do not appear immediatly inside the model explorer
  • Issue description: Under some circumstances (notably after a period of inactivity on an open browser tab), existing models are not visible inside the model explorer when opening a project, or right after they are created.

  • Workaround: Refresh the browser page (F5) to make the models visible.

  • Issue status: Fix in progress.

Long operations do not provide an indication that they are in progress
  • Issue description: When triggering a long-running operation (e.g. creating or opening a very large diagram or invoking a costly tool), there is no feedback for the user that the operation is in progress. If the operation is running server-side, the client UI can still be reactive, which allows the user to trigger other operations on project states which will soon be invalid, which can cause unexpected effects.

  • Workaround: None at the moment (keep calm and wait).

  • Issue status: Implementation in progress for some operations; planned for later for others.

Diagram Editor
Moving diagram elements manually resets the connected edges’s routing to straight lines
  • Issue description: The automatic layout performed on diagram creation uses rectilinear routing for edges between elements. If you move en existing element, the routing of all the edges connected to the moved element is reset into a single segment between the source and target element.

  • Workaround: Invoke the "Arrange All" operation from the diagram’s toolbar to reapply the automatic layout with proper edge routing.

  • Issue status: Planned.

The current zoom displayed in the combo is not synchronized
  • Issue description: In the top-right corner of a diagram, a combo-box is available to select a specific zoom level. However if you change the zoom level using the mouse wheel, the value displayed in the combo is not updated and thus does not reflect the current level anymore.

  • Workaround: None at the moment.

  • Issue status: Implementation in progress.

Direct Edition of edges' labels does not work
  • Issue description: If you select an edge on a diagram and hit F2 (or start typing), a direct edit field opens, but if you try to change the label it has not effect.

  • Workaround: Edit the corresponding model attribute using the properties view of the edge.

  • Issue status: Implementation in progress.

The palette and modal dialogs sometimes disappear without user intervention
  • Issue description: If you are working on a shared project and open the contextual palette or a dialog, sometimes the palette or dialog disappears without you doing anything. This is due to another user having made a change on the project while the palette/dialog was opened on your side. The remote change triggers an automatic update of your view of the project, which invalidates the palette or dialog currently opened.

  • Workaround: None at the moment.

  • Issue status: We are currently examining which behavior would be the best in such a case before implementing it.

Downloading and re-uploading a model may lose some information
  • Issue description: When downloading a model as a local file (Download context menu item from the explorer) and then re-uploading the same file (Upload Model from the project’s context menu), depending on the underlying metamodel it is possible that some references are lost in the process.

  • Workaround: None at the moment.

  • Issue status: Planned.

Renaming a diagram does not rename the corresponding tab if it is opened
  • Issue description: When renaming a diagram which is already opened, the diagram name in the open tab is not updated.

  • Workaround: Close and re-open the diagram to get the current name in the tab.

  • Issue status: Planned.

Project Explorer
The "New Object" menu entry sometimes open a dialog which does not offer any choice
  • Issue description: In the model explorer, all the model elements offer the "New Object" context menu entry to create sub-elements. However not all object types support sub-elements. For those, the menu entry is currently available anyway, but does not propose any concrete choice. It should simply not be proposed in the context menu in this case.

  • Workaround: None at the moment.

  • Issue status: Fix in progress.

Details view
Non-modifiable properties appear as editable in the properties panel
  • Issue description: Even if you have write access to a project, some elements can have properties which are not editable (for example if they are derived from others). Currently there is no feedback for this: the properties appear editable but trying to change them has no effect.

  • Workaround: None at the moment.

  • Issue status: Implementation in progress (widget of non editable properties will appear disabled).

Newly created elements are not automatically selected
  • Issue description: When creating new elements (either from the explorer or directly from a diagram), the diagram will automatically be updated and display them (if relevant to the current diagram), but they will not be selected.

  • Workaround: None at the moment (except manual selection after the refresh).

  • Issue status: Planned.

In the properties view, editing a text field is only taken into account with the 'Return' key
  • Issue description: If you select an element in the explorer or on a diagram, its properties are displayed in the properties view on the right. If you change the value of a text property, the change will only be taken into account reliably when you hit 'Return'. Just selecting another part of the UI may lose the change.

  • Workaround: Always validate your text properties change with 'Return'.

  • Issue status: Fix in progress.

Version 2021.06.0

The highlights of this new version are:

  • a modernized technology stack;

  • improved support for diagram layout;

  • internal changes to make the different components more generic and reusable;

  • experimental support for full web studio definition.

See below for more details.

New

  • New Diagram features:

    • Free layout: by default, the layout of a diagram can be manually modified by users. Previously it was automatically re-arranged on every modification with no user control. Diagram elements can be moved and resized, and the layout is automatically and smoothly adjusted to avoid overlaps between elements. FreeLayout

    • Arrange All action: the automatic layout algorithm (thanks to ELK) can still be applied on demand through a new button in the diagram’s toolbar. ArrangeAllAction

    • Diagrams now support displaying list containers. Modelers which use the Sirius Desktop compatibility layer will automatically display these list containers if they were configured accordingly in the VSM (odesign file). ListContainers

    • Containers (both the new list containers and classical "free form" ones) support rounded corners. Again, for modelers which the Sirius Desktop compatibility layer this is automatically enabled for containers that use the "Rounded Corner" properties in their VSM.

    • Added feedback to edge creation: when creating a new edge, if the target element pointed by the mouse cursor is not compatible with the edge type, the cursor changes to indicate it. EdgeCreationFeedback

  • Representation tabs can now be closed. If no representation is opened, the onboarding area is displayed.

  • Added support for Form-based editors, based on the same widgets and configuration approach as used to display elements properties in the details view. SampleForm

  • Experimental support for full web studio definition. This feature is not yet enabled by default as it is still experimental, but the Sirius Components project underlying Obeo Studio now supports the complete definition of both domain models (metamodels) and view definitions directly in the web. The corresponding modeling studios can then be used directly in the running instance without needing to deploy anything on the backend or to restart it. This is disabled by default but can be enabled by starting with -Dorg.eclipse.sirius.web.features.studioDefinition=true.

Fixed

  • Several of the known issues listed in the initial version have been fixed:

    • The Onboarding area can not be re-opened once a diagram has been opened:

    • A left click on the diagram always opens the palette, even when clicking to drag/scroll

    • Diagram tabs can not be closed

    • Deletion of edges from the palette does not work

    • When trying to create an edge there is no feedback when the target element is incompatible

    • In the properties view, editing a text field is only taken into account with the 'Return' key

    • When downloading a full project, the files inside the archive do not have an extension

    • When trying to create an edge there is no feedback when the target element is incompatible

    • Under Firefox, the contextual palette on diagram does not open at the correct location

  • Other important fixes:

    • On diagrams in auto-layout mode, the layout is much more stable: when elements are added or removed, only the impacted elements are moved.

    • On diagrams, the contextual palette no longer appears when you click and drag the diagram’s background to scroll the viewport.

    • Edges can be now deleted from the palette using the "Delete" tool.

Changed

  • Most of our UI components have been moved to Material-UI for a more modern and consistent look and feel.

Enterprise

  • Improved support for permissions:

    • The contextual menu reflects the effective rights you have on the project.

    • Properties in the Detail View and the Form representation are disabled when you don’t have the rights to modify the project.

    • Moving or resizing a graphical element have been disabled for read-only users.

  • Experimental support for D3-based representations.

D3

Developer

  • Updated dependencies on the frontend:

    • Moved to Apollo Client instead of our custom hooks for GraphQL interaction with the backend;

    • Moved to Material UI for most of the UI. There are still a few places using our previous custom widgets but they will be migrated soon.

    • Moved to Xstate for more robust and maintainable state management.

  • Updated dependencies on the backend:

    • Updated Spring Boot from 2.3.2 to 2.4.5;

    • Updated GraphQL Java from 14.0 to 16.1

  • Initial internal work to support data models not based on EMF provided you implement the appropriate interfaces;

  • Initial support for embedding the diagram view (without the rest of the workbench) inside other web application, for example in an Eclipse Theia editor.

  • Internal changes to make it easier to contribute new kinds of representations beyond the default ones supported at the moment (diagrams and forms).

Known issues

Here is where you can find a list of issues currently being investigated by our engineering team. This list will be updated regularly, and issues will be added and removed as they are discovered and resolved.

Projects Management
  • Issue description: Some parts of the UI are currently missing navigation links to go back once they are opened. For example, when opening the Project Settings page, there is no explicit link to go back to the project.

  • Workaround: Either use the browser history to go back to the previous page, or go back to the Projects List page (click on the top-left icon) and then navigate to the target page from there.

  • Issue status: Planned.

In some circumstances, models do not appear immediatly inside the model explorer
  • Issue description: Under some circumstances (notably after a period of inactivity on an open browser tab), existing models are not visible inside the model explorer when opening a project, or right after they are created.

  • Workaround: Refresh the browser page (F5) to make the models visible.

  • Issue status: Fix in progress.

Long operations do not provide an indication that they are in progress
  • Issue description: When triggering a long-running operation (e.g. creating or opening a very large diagram or invoking a costly tool), there is no feedback for the user that the operation is in progress. If the operation is running server-side, the client UI can still be reactive, which allows the user to trigger other operations on projet states which will soon be invalid, which can cause unexpected effects.

  • Workaround: None at the moment (keep calm and wait).

  • Issue status: Implementation in progress for some operations; planned for later for others.

Diagram Editor
Moving diagram elements manually resets the edges’s routing to straight lines
  • Issue description: The automatic layout performed on diagram creation uses rectilinear routing for edges between elements. If you create a new element on the diagram or move en existing element, all the edges' routing is reset into a single segment between the source and target element.

  • Workaround: Invoke the "Arrange All" operation from the diagram’s toolbar to reapply the automatic layout with proper edge routing.

  • Issue status: Planned.

The current zoom displayed in the combo is not synchronized
  • Issue description: In the top-right corner of a diagram, a combo-box is available to select a specific zoom level. However if you change the zoom level using the mouse wheel, the value displayed in the combo is not updated and thus does not reflect the current level anymore.

  • Workaround: None at the moment.

  • Issue status: Implementation in progress.

Direct Edition of edges' labels does not work
  • Issue description: If you select an edge on a diagram and hit F2 (or start typing), a direct edit field opens, but if you try to change the label it has not effect.

  • Workaround: Edit the corresponding model attribute using the properties view of the edge.

  • Issue status: Implementation in progress.

The palette and modal dialogs sometimes disappear without user intervention
  • Issue description: If you are working on a shared project and open the contextual palette or a dialog, sometimes the palette or dialog disappears without you doing anything. This is due to another user having made a change on the project while the palette/dialog was opened on your side. The remote change triggers an automatic update of your view of the project, which invalidates the palette or dialog currently opened.

  • Workaround: None at the moment.

  • Issue status: We are currently examining which behavior would be the best in such a case before implementing it.

Downloading and re-uploading a model may lose some information
  • Issue description: When downloading a model as a local file (Download context menu item from the explorer) and then re-uploading the same file (Upload Model from the project’s context menu), depending on the underlying metamodel it is possible that some references are lost in the process.

  • Workaround: None at the moment.

  • Issue status: Planned.

Direct edit of the label using the palette does not work
  • Issue description: When selecting a node on a diagram, the contextual palette offers a "Direct Edit" tool (represented by a pen icon), but it does not trigger the direct edit operation.

  • Workaround: Use F2 to trigger the direct edit operation instead.

  • Issue status: Planned.

Direct edit triggered by directly starting to type loses the first character
  • Issue description: When an node is selected, it is possible to trigger direct edition of its label by simply starting to type the text of the new label. On all platforms except macOS/Safari, the first alphanumeric character typed is lost and not considered as part of the new label. If you type "NewName" and the hit return, the new label will be "ewName".

  • Workaround: Use F2 to trigger the direct edit operation instead, or repeat the first character.

  • Issue status: Planned.

Renaming a diagram does not rename the corresponding tab if it is opened
  • Issue description: When renaming a diagram which is already opened, the diagram name in the open tab is not updated.

  • Workaround: Close and re-open the diagram to get the current name in the tab.

  • Issue status: Planned.

Project Explorer
The "New Object" menu entry sometimes open a dialog which does not offer any choice
  • Issue description: In the model explorer, all the model elements offer the "New Object" context menu entry to create sub-elements. However not all object types support sub-elements. For those, the menu entry is currently available anyway, but does not propose any concrete choice. It should simply not be proposed in the context menu in this case.

  • Workaround: None at the moment.

  • Issue status: Fix in progress.

Details view
Multi-valued references can not be edited
  • Issue description: If you select an element which has a many-valued reference to other elements, the properties view displays de list of referenced element, but no edition operations are available.

  • Workaround: None at the moment.

  • Issue status: A more complete list widget, with create/add/remove/reorder operations is planned for future versions.

Non-modifiable properties appear as editable in the properties panel
  • Issue description: Even if you have write access to a project, some elements can have properties which are not editable (for example if they are derived from others). Currently there is no feedback for this: the properties appear editable but trying to change them has no effect.

  • Workaround: None at the moment.

  • Issue status: Implementation in progress (widget of non editable properties will appear disabled).

Newly created elements are not automatically selected
  • Issue description: When creating new elements (either from the explorer or directly from a diagram), the diagram will automatically be updated and display them (if relevant to the current diagram), but they will not be selected.

  • Workaround: None at the moment (except manual selection after the refresh).

  • Issue status: Planned.

In the properties view, editing a text field is only taken into account with the 'Return' key
  • Issue description: If you select an element in the explorer or on a diagram, its properties are displayed in the properties view on the right. If you change the value of a text property, the change will only be taken into account reliably when you hit 'Return'. Just selecting another part of the UI may lose the change.

  • Workaround: Always validate your text properties change with 'Return'.

  • Issue status: Fix in progress.

Version 2020.10.0

Initial release!

The Obeo Cloud Platform Modeler is a unique technology to easily develop custom and state-of-the-art modeling tools to be deployed in the Cloud.

OCP Modeler is built as an open-core product relying on Sirius Web. It extends the Open Source Sirius Web with Enterprise features, to deploy on public, private clouds or on premise and includes support and upgrade guarantees.

New

  • Principles you like in Sirius Desktop, available on a modern cloud-based stack:

    • Graphical and Domain-Specific: Create custom graphical modeling workbenches support both your specific visual notation and your own domain concepts.

    • Defined by a Configuration File: Visual editors are declared by a configuration file which is interpreted at runtime, meaning very few lines of code and easy tuning.

    • Deployed on a Web Server: The backend of your modeling tool is deployed on a web server running with state-of-the-art technologies: Spring, React, PostgreSQL, GraphQL.

    • Rendered in a Web Browser: Once deployed on a server, just start using the modeling tool directly from a web browser, without specific installation on user’s desktop.

  • Easily create and deploy studios to the web:

    • Projects Browser: lists all the projects accessible with your account.

    • Project Editor: the main page where you can explore a project, edit a model and get a graphical representation

      • The Project Explorer: navigates through the models of a project,

      • The Details View: presents the properties of the current selected element,

      • The Diagram Editor to manage model elements graphically.

ProjectEditor

Fixed

  • None yet, this is the first release.

Changed

  • None yet, this is the first release.

Enterprise

  • Users management: Control who can connect, only users authorized by the administrator can access to the hosted projects and their contained models.

login

To share a project with other users, its owner can make it public and/or define access rights. Once connected, any user is able to create a project and share it with other users.

public

  • Teams: Define role-based access control, permissions on a project (read, write, admin) are defined by creating teams. It allows the administrators of a project to manage users depending on roles shared by a set of other users (rather than defining the permissions at the individuals' level).

team

  • Live collaboration: Indicators of Active Users, view in real-time who is working on a diagram. Visual indicators show you in real-time the other users who are currently working on the same diagram as you. Indicators also show you who is on the objects that you are editing and which properties are currently changing.

LiveCollaboration

Developer

  • Webhooks: Webhooks allow you to build or set up integrations which subscribe to certain events on the Obeo Cloud Platform Modeler. When one of those events is triggered, we’ll send a HTTP POST payload to the webhook’s configured URL. Webhooks can be used to update a database, update a backup mirror, integrate with another web application. You’re only limited by your imagination.

Known issues

Here is where you can find a list of issues currently being investigated by our engineering team. This list will be updated regularly, and issues will be added and removed as they are discovered and resolved.

Projects Management
  • Issue description: Some parts of the UI are currently missing navigation links to go back once they are opened. For example, when opening the Project Settings page, there is no explicit link to go back to the project.

  • Workaround: Either use the browser history to go back to the previous page, or go back to the Projects List page (click on the top-left icon) and then navigate to the target page from there.

  • Issue status: Planned.

In some circumstances, models do not appear immediatly inside the model explorer
  • Issue description: Under some circumstances (notably after a period of inactivity on an open browser tab), existing models are not visible inside the model explorer when opening a project, or right after they are created.

  • Workaround: Refresh the browser page (F5) to make the models visible.

  • Issue status: Fix in progress.

The Onboarding area can not be re-opened once a diagram has been opened
  • Issue description: When first opening a project, the center of the page displays an Onboarding UI with easy access to the most common actions to get started. However once you have opened a diagram it is not possible to get back to this UI.

  • Workaround: Go back to the Projects List and re-open the project to see the onboarding area again.

  • Issue status: Planned.

When downloading a full project, the files inside the archive do not have an extension
  • Issue description: When you download the full content of a project, you get a zip archive. The archive contains all the models and representations contained in the project, each in a separate file, but the files do not have an extension. In practice all the files are in JSON.

  • Workaround: if you need to inspect the files' content, rename them with the .json extension before.

  • Issue status: Planned.

Long operations do not provide an indication that they are in progress
  • Issue description: When triggering a long-running operation (e.g. creating or opening a very large diagram or invoking a costly tool), there is no feedback for the user that the operation is in progress. If the operation is running server-side, the client UI can still be reactive, which allows the user to trigger other operations on projet states which will soon be invalid, which can cause unexpected effects.

  • Workaround: None at the moment (keep calm and wait).

  • Issue status: Implementation in progress for some operations; planned for later for others.

Diagram Editor
The current zoom displayed in the combo is not synchronized
  • Issue description: In the top-right corner of a diagram, a combo-box is available to select a specific zoom level. However if you change the zoom level using the mouse wheel, the value displayed in the combo is not updated and thus does not reflect the current level anymore.

  • Workaround: None at the moment.

  • Issue status: Implementation in progress.

A left click on the diagram always opens the palette, even when clicking to drag/scroll
  • Issue description: When you left-click on the diagram, the contextual palette always opens, even if you simply wanted to select an element or scroll/pan inside the diagram, and not invoke a tool.

  • Workaround: You can use the right mouse button to scroll around the diagram, which does not open the palette, and use the left button only to select elements/open the palette.

  • Issue status: Under investigation (the palette should only open on a simple click, not on a click and drag action).

Under Firefox, the contextual palette on diagram does not open at the correct location
  • Issue description: Under Firefox, when you click inside a diagram to select an element, the contextual palette sometimes opens too far from the mouse location (especially when selecting elements inside containers). Note that despite its incorrect location, the palette and its elements still work correctly and apply to the selected element.

  • Workaround: Use a Chrome based browser.

  • Issue status: Planned.

Diagram tabs can not be closed
  • Issue description: When opening a diagram, it creates (or reuses) a tab at the top of the diagram area, but these tabs can not be closed.

  • Workaround: None at the moment, but note that this does not have any impact on memory/performance. Diagrams which are not currently visible in inactive tabs do not take up any resources.

  • Issue status: Implementation of a simple "close" button is in progress, with more complete tab management features in design phase and planned for later.

Direct Edition of edges' labels does not work
  • Issue description: If you select an edge on a diagram and hit F2 (or start typing), a direct edit field opens, but if you try to change the label it has not effect.

  • Workaround: Edit the corresponding model attribute using the properties view of the edge.

  • Issue status: Implementation in progress.

Deletion of edges from the palette does not work
  • Issue description: If you select and edge on a diagram and try to invoke the Delete tool from the palette, nothing happens.

  • Workaround: Edit the corresponding reference in the model using the properties view.

  • Issue status: Implementation in progress.

The palette and modal dialogs sometimes disappear without user intervention
  • Issue description: If you are working on a shared project and open the contextual palette or a dialog, sometimes the palette or dialog disappears without you doing anything. This is due to another user having made a change on the project while the palette/dialog was opened on your side. The remote change triggers an automatic update of your view of the project, which invalidates the palette or dialog currently opened.

  • Workaround: None at the moment.

  • Issue status: We are currently examining which behavior would be the best in such a case before implementing it.

Downloading and re-uploading a model may lose some information
  • Issue description: When downloading a model as a local file (Download context menu item from the explorer) and then re-uploading the same file (Upload Model from the project’s context menu), depending on the underlying metamodel it is possible that some references are lost in the process.

  • Workaround: None at the moment.

  • Issue status: Planned.

Project Explorer
The "New Object" menu entry sometimes open a dialog which does not offer any choice
  • Issue description: In the model explorer, all the model elements offer the "New Object" context menu entry to create sub-elements. However not all object types support sub-elements. For those, the menu entry is currently available anyway, but does not propose any concrete choice. It should simply not be proposed in the context menu in this case.

  • Workaround: None at the moment.

  • Issue status: Fix in progress.

Details view
Multi-valued references can not be edited
  • Issue description: If you select an element which has a many-valued reference to other elements, the properties view displays de list of referenced element, but no edition operations are available.

  • Workaround: None at the moment.

  • Issue status: A more complete list widget, with create/add/remove/reorder operations is planned for future versions.

Non-modifiable properties appear as editable in the properties panel
  • Issue description: Even if you have write access to a project, some elements can have properties which are not editable (for example if they are derived from others). Currently there is no feedback for this: the properties appear editable but trying to change them has no effect.

  • Workaround: None at the moment.

  • Issue status: Implementation in progress (widget of non editable properties will appear disabled).

Newly created elements are not automatically selected
  • Issue description: When creating new elements (either from the explorer or directly from a diagram), the diagram will automatically be updated and display them (if relevant to the current diagram), but they will not be selected.

  • Workaround: None at the moment (except manual selection after the refresh).

  • Issue status: Planned.

When trying to create an edge there is no feedback when the target element is incompatible
  • Issue description: If you select an element on a diagram and then click in the palette on an edge creation tool, you can then point to the target element for the new edge. There is currently no visual feedback if you point towards a target element which is not compatible with the source and/or the type of edge, which can cause confusion as nothing happens when you select the target element.

  • Workaround: None at the moment.

  • Issue status: Under investigation (the mouse cursor should change to indicate the target is invalid).

In the properties view, editing a text field is only taken into account with the 'Return' key
  • Issue description: If you select an element in the explorer or on a diagram, its properties are displayed in the properties view on the right. If you change the value of a text property, the change will only be taken into account reliably when you hit 'Return'. Just selecting another part of the UI may lose the change.

  • Workaround: Always validate your text properties change with 'Return'.

  • Issue status: Fix in progress.