java-3/docs/changelog.md at master · raysbrand/java-3
1.24.1 (5th April 2023)
- Reduces visibility of
setOrder() and setDescription() on RelationshipView, as they should not be public.
1.24.0 (30th March 2023)
- Adds a
group property to deployment nodes, infrastructure nodes, software system instances, and container instances.
1.23.2 (24th March 2023)
DynamicView.endParallelSequences(true) will now increment the counter when no relationships have been defined in the parallel sequence.
1.23.1 (17th March 2023)
- Deprecates the
setExternalBoundariesVisible methods on ContainerView, ComponentView, and DynamicView.
- Removes the check for empty content when adding a documentation section.
1.23.0 (11th March 2023)
- Deprecates
Enterprise and Location concepts.
- Adds properties to the model.
1.22.3 (11th March 2023)
- Adds better backwards compatibility for removal of documentation section titles.
1.22.2 (10th March 2023)
- Updates Jackson library dependency.
1.22.1 (5th March 2023)
- Removes unused documentation section title property.
1.22.0 (5th March 2023)
- Adds documentation to components.
1.21.0 (26th February 2023)
- Breaking change: Removes the concept of "code elements" from
Component.
- Adds support for element/relationship URLs of the form
{workspace}/... for linking to diagrams/documentation/decisions in the same workspace.
1.20.1 (16th February 2023)
ViewSet.getViews() now includes all views.
ViewSet.getViewWithKey() is now public.
1.20.0 (16th February 2023)
- Breaking change: Renamed
com.structurizr.view.View to com.structurizr.view.ModelView.
- Added support for "image views".
- Added a
Window shape.
ThemeUtils.toJson() now includes the workspace branding logo and font in the resulting theme.
1.19.0 (26th January 2023)
- Fixes #196 (Named colours are case-sensitive).
1.18.0 (15th January 2023)
- Fixes #191 (Layout of relationships is reset when changing the description).
- Adds support for using (CSS/HTML) named colors instead of hex color codes (#192).
1.17.0 (5th January 2023)
- Fixes case-sensitivity inconsistencies related to element names and relationship descriptions (#183).
- Adds support for setting deployment node instances to positive integers or a range (e.g. 0..1, 0..N, 0.., 1..N, 1.., 5..10, etc).
1.16.2 (22nd December 2022)
1.16.1 (27th October 2022)
- Adds name-value properties to views.
1.16.0 (24th October 2022)
- Adds support for element style stroke widths.
1.15.3 (11th October 2022)
- Updates some transitive dependencies.
1.15.2 (3rd October 2022)
- Adds support for element icons being specified as filenames (rather than full URLs) in themes.
1.15.1 (23rd September 2022)
- Adds some additional functionality for getting and finding element/relationship styles.
1.15.0 (13th September 2022)
- Adds documentation section filenames into the model.
- Adds support for custom elements on dynamic views.
1.14.1 (15th August 2022)
- Enables
structurizr-core to be used as a transitive dependency by consumers of structurizr-client.
1.14.0 (14th August 2022)
- Adds a helper method (
AbstractImpliedRelationshipsStrategy.createImpliedRelationship) to create implied relationships, which can then be used by custom implementations.
- Provides a way to add specific relationships to dynamic views.
1.13.0 (25th June 2022)
- Adds support for name/value properties on element and relationship styles.
1.12.2 (30th March 2022)
- Adds support for sorting views by the order in which they are created.
1.12.1 (2nd March 2022)
- Renamed
Decision.Link.type to Decision.Link.description.
1.12.0 (1st March 2022)
- Breaking API changes to how documentation and decisions are managed.
- Moved documentation importers/templates to structurizr-documentation.
- Moved examples to structurizr-examples
- Removal of deprecated
Model.addImplicitRelationships() method.
1.11.0 (18th February 2022)
- Fixes #167 (ImpliedRelationship Strategy replication of URL and perspectives).
- Makes the
Decision.setContent() method public, to allow pre-processing of content before workspace upload/rendering.
1.10.1 (1st February 2022)
- Makes the
Section.setContent() method public, to allow pre-processing of content before workspace upload/rendering.
1.10.0 (29th December 2021)
- Adds support for different relationship line styles (solid, dashed, dotted).
- Adds the ability to indicate that individual views should not merge layout from remotes.
- Adds name/value properties to the view set configuration.
1.9.10 (26th November 2021)
- Promotes a couple of methods to be public; no functional changes.
1.9.9 (16th October 2021)
- Adds the implied relationships functionality for custom elements.
- "addDefaultElements" will now also add any connected custom elements.
1.9.8 (1st October 2021)
- Adds support for relationships from deployment nodes to infrastructure nodes.
1.9.7 (9th September 2021)
- Adds support for software system/container instances in multiple deployment groups.
1.9.6 (31st August 2021)
- Added validation logic to reject unsupported image data URIs.
- Fixes #166 (ContainerInstance/SoftwareSystemInstance and auto-generation of deployment diagram).
1.9.5 (7th June 2021)
- Provides a way to store view dimensions.
1.9.4 (22nd May 2021)
- Bug fixes to prevent parents and children to both be added to container/component views.
1.9.3 (11th May 2021)
- Added an
addTheme method on Configuration.
- Removed the
addDefaultStyles method on Styles.
1.9.2 (27th April 2021)
1.9.1 (28th March 2021)
- Adds a
findTerminology method on the Terminology class.
Styles.findElementStyle better mirrors how the Structurizr web renderer deals with element styling.
1.9.0 (20th March 2021)
- Adds support for adding individual infrastructure nodes, software system instances, and container instances to a deployment view.
- Adds support for removing software system instances from deployment views.
- Improved support for themes (e.g. when exporting to PlantUML), which now works the same as described at Structurizr - Themes.
- Adds support for "deployment groups", providing a way to scope how software system/container instance relationships are replicated when added to deployment nodes. breaking change
1.8.0 (20th February 2021)
- Adds support for custom elements and custom views (experimental).
- Bug fixes and improved workspace validation.
1.7.2 (2nd February 2021)
1.7.1 (28th January 2021)
1.7.0 (6th January 2021)
- Removes the dynamic view restrictions related to adding containers/components outside the scoped software system/container.
- Adds an "externalBoundariesVisible" property to DynamicView, so that external software system/container boundaries can be shown/hidden.
- Enhanced the rules relating to whether elements can be added to a view or not.
- Enhanced the logic to merge layout information of elements on views.
1.6.3 (30th November 2020)
- When adding a relationship to a dynamic view, the first relationship between the source and destination would be chosen, even if there are multiple relationships with different technologies. This release adds a way to indicate which relationship (based upon technology) should be chosen.
- Suppress description warnings for software system instances.
1.6.2 (10th October 2020)
- Resolves an issue with the AutomaticDocumentationTemplate, where images were being included as documentation content.
1.6.1 (27th September 2020)
- Added a "recursive" option to the AutomaticDocumentationTemplate, so that sub-directories can optionally be scanned too.
1.6.0 (18th September 2020)
- Changed the way that internal canonical element names are generated, to improve layout merging for deployment views.
- getParent() of SoftwareSystemInstance and ContainerInstance now returns the parent deployment node.
- Refactoring and bug fixes.
1.5.0 (4th August 2020)
- Fixes #151: linked relationship tags were not being taken into account when finding relationship styling.
- Fixes #153: Allow relationships in DynamicView to go both ways without two relationships between Elements in Model.
- Adds support for software system instances on deployment views (#150: how do I provide tech details for an external system to show in Deployment View?)
- The interaction style on relationships no longer defaults to Synchronous.
- Adds support for software system instances on deployment views.
1.4.8 (15th July 2020)
- Implied relationships now also copy the interaction style and tags.
- Fixes a serialisation problem with themes and styles.
1.4.7 (6th July 2020)
- Remove default stroke styling.
1.4.6 (6th July 2020)
- Adds a way to load styles from external themes.
1.4.5 (21st June 2020)
1.4.4 (21st June 2020)
- Adds an "addDefaultElements()" method to the static/deployment views.
- Adds an "addDefaultStyles()" method to Styles.
- Adds a "createDefaultViews()" method to Views.
1.4.3 (19th June 2020)
- Fixes a bug where all deployment nodes would be added to a deployment view, even if that view had an environment set.
- Adds support for removing deployment nodes, infrastructure nodes, and container instances from deployment views.
- Fixes a bug where deployment node instances could set to a non-positive integer.
1.4.2 (18th June 2020)
- Adds the ability to add container instances and infrastructure nodes to the same animation step on a deployment view.
- Adds the ability to override the Structurizr client agent string.
1.4.1 (14th June 2020)
- Fixes a bug that defaults the relationship interaction style to Synchronous, when it's specifically set to null.
1.4.0 (5th June 2020)
- Added a "Component" element shape.
- Added a "Dotted" element border style.
- Components from any container can now be added to a component view.
- Added an externalContainersBoundariesVisible property to ComponentView, to set whether container boundaries should be visible for "external" components (those outside the container in scope).
- Improved the support for creating implied relationships.
- Added the ability to customize the symbols used when rendering metadata.
- Adds support for infrastructure nodes.
- Adds support for multiple themes.
- Adds support for curved relationship routing.
1.3.5 (26th March 2020)
- Added an externalSoftwareSystemBoundariesVisible property to ContainerView, to set whether software system boundaries should be visible for "external" containers (those outside the software system in scope).
- Added a 16:10 ratio paper size.
1.3.4 (29th February 2020)
- Split View.setAutomaticLayout(boolean) to enableAutomaticLayout() and disableAutomaticLayout() (breaking change).
- Added A1 and A0 paper sizes.
- Adds support for themes.
- Adds support for tags on deployment nodes.
- Adds support for animations on deployment views.
- Adds support for URLs on relationships.
1.3.3 (24th December 2019)
- Fixes a deserialization issue with component views.
1.3.2 (22nd November 2019)
- Added support for element stroke colours.
1.3.1 (29th October 2019)
- The automatic layout algorithm can now be configured on individual views.
- The structurizr-annotations library can now be more easily used with OSGi applications.
- Fixes a bug with the PlantUML and WebSequenceDiagram writers, where relationships were sorted incorrectly (alphabetically, rather than numerically).
- Fixes a bug that allows relationships to be created between parents and children.
- The way layout information is copied between different versions of a view is now configurable by setting a custom LayoutMergeStrategy on a per view basis.
1.3.0 (3rd March 2019)
- Added the ability to lock and unlock workspaces, to prevent concurrent updates.
1.2.0 (3rd January 2019)
- Fixes an issue with Java 11 and SSL handshaking.
- The terminology for relationships can now be customised.
- Added support for icons on element styles.
- Top-level deployment nodes can now be given an environment property, to represent which deployment environment they belong to (e.g. "Development", "Live", etc).
- Relationships can no longer be created between container instances (breaking change).
- When adding elements to views, you can now optionally specify whether relationships to/from that element are added.
- Provided a way to customize the sort order when displaying the list of views.
1.1.0 (8th November 2018)
- Added the ability to specify users who should have read-write or read-only workspace access, via the
workspace.getConfiguration().addUser(username, role) method.
1.0.0 (17th Oct 2018)
- Added name-value properties to relationships.
- Added the ability to define animations on the static structure diagrams.
- Removed support for colours in the corporate branding feature (breaking change).
- The PlantUML writer can now export sequence diagrams.
1.0.0-RC7
- HTTP-based health check interval and timeout can be specified via the factory method now (breaking change). Also added some documentation and an example.
- Added an
endParallelSequence(boolean) method to the DynamicView class, which allows sequence numbering to continue.
- Fixed a bug where the software system associated with a SystemContextView could be removed from the view.
- Added support for architecture decision records.
1.0.0-RC6
- Component finders are no longer idempotent, and an exception will be thrown if the same component is discovered more than once (breaking change).
- Removed the "groups" property of documentation sections (breaking change).
- Added some new shapes: web browser, mobile device (portrait and landscape), and robot.
- Addition of @NonNull annotations (JSR 305: Annotations for Software Defect Detection).
- Added the ability to enable/disable the enterprise boundary on system landscape and system context views.
- Added the ability to customise the terminology used when rendering views.
- Added the ability to hide element metadata and/or descriptions.
- The Spring component finder now supports the @Endpoint annotation.
- Bug fixes and performance enhancements.