All notable changes of the UmlWriter 2 release series will be documented in this file.
This project adheres to Semantic Versioning, using the Keep a CHANGELOG principles.
- raise
bartlett/graph-uml
constraint to be compatible withgraphp/*
packages and patch provided
graphp/graph
constraint to specific commit compatible with patch provided (seepatches
directory)graphp/graphviz
constraint to specific commit compatible with patch provided (seepatches
directory)
no-statement
option todiagram:class
command to hide diagram statements (displayed by default)- more examples, used to generate dynamically diagrams for documentation
- update all examples to generate image in target folder, if provided as first argument
- CI generated svg images dynamically to be sure to have the latest version
- raise
bartlett/graph-uml
andbartlett/graph-plantuml-generator
minimum version
- switch LICENSE from BSD 3-Clause "New" or "Revised" License to MIT
- migrate from
goaop/parser-reflection
v2 toroave/better-reflection
v4 (PHP 8 not yet compatible) - only PHP 7 compatible
- Allow installation with PHP 8
- Remove
graphp/graphviz
fork usage sincebartlett/graph-uml
1.0.0-rc.3 - Patch
graphp/graphviz
package with https://github.com/cweagans/composer-patches rather than using forks with branches
If you need a good introduction about vendor patches, read this excellent article https://tomasvotruba.com/blog/2020/07/02/how-to-patch-package-in-vendor-yet-allow-its-updates/
- raise
bartlett/graph-uml
andbartlett/graph-plantuml-generator
dependencies to version1.0.0-rc.2
- add
--output
option to save image in a file. - add
--format
option to specify what is the format of image to build.
- change case of options names from Kebab case to Snake case
- usage of Symfony OptionsResolver Component in ConfigurationHandler
- usage of Symfony Finder allows now to parse a combination of folder and file at same times.
See
docs/01_Features/umlwriter_config.svg
for example.
- introduces
ContainerService
class implementpsr/container
to handle all internal and runtime services. - support of EditorConfig (https://editorconfig.org/)
- be able to personalize graph render (at least colors and orientation)
- add some new options to
diagram:class
command:--without-constants
to hide all class constants--without-properties
to hide all class properties--without-methods
to hide all class methods--hide-private
to hide private methods/properties--hide-protected
to hide protected methods/properties
- introduces support of external YAML config file that is loaded by
--configuration
option
diagram:class
command accept multiple data sources (file or directory) at same time.- console commands used now lazy loading (see https://symfony.com/doc/current/console/lazy_commands.html)
- UmlWriter 2.0 is now able to build UML Class diagrams in PlantUML format.
- provides
plantuml.jar
to draw images locally (with help of https://github.com/jawira/plantuml project)
Two years after GH-8 report was written, PHP 7 compatibility is now up and ready with this first new major pre-release version.
UmlWriter 2.0 become a simple facade to graph-uml project that is able to produce UML diagrams with GraphViz backend. More backends will come later !
Unit tests and documentation should be re-write, and will be available in next pre-release (2.0.0-beta.2)