UNPKG

d3-graphviz

Version:

Graphviz DOT rendering and animated transitions for D3

233 lines (166 loc) 9.83 kB
# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ## [5.6.0] – 2024-08-18 ### Changed * Upgrade @hpcc-js/wasm to 2.20.0 (Graphviz 12.1.0) ## [5.5.0] – 2024-08-17 ### Changed * Upgrade @hpcc-js/wasm to 2.18.1 (Graphviz 12.0.0) ## [5.4.0] – 2024-05-05 ### Changed * Upgrade @hpcc-js/wasm to 2.16.2 (Graphviz 11.0.0) ### Fixed * Cluster's box shadows nodes inside it after animated transition ## [5.3.0] – 2024-02-11 ### Changed * Upgrade @hpcc-js/wasm to 2.16.0 (Graphviz 10.0.1) ### Fixed * Error when rendering an initial graph with an edge from a node with a name equal to a property of the JavaScript Object type and growEnteringEdges is enabled #301 ## [5.2.0] – 2023-11-05 ### Changed * Upgrade @hpcc-js/wasm to 2.14.1 (Graphviz 9.0.0) ## [5.1.0] – 2023-08-01 ### Changed * Upgrade @hpcc-js/wasm to 2.13.1 (Graphviz 8.1.0) ## [5.0.2] – 2022-12-27 ### Fixed * Failed to resolve entry for package "d3-graphviz" #263 ## [5.0.1] – 2022-12-27 ### Fixed * Failed to resolve entry for package "d3-graphviz" (partial fix) #263 ## [5.0.0] – 2022-12-26 **Note:** This release contains breaking changes compared to version 4.5.0. ### Changed * Like [D3 v7](https://github.com/d3/d3/blob/main/CHANGES.md#changes-in-d3-70), d3-graphviz now ships as a pure ES module and requires Node.js 14 or higher. This is a **breaking change**. For more, please read [Sindre Sorhus’s FAQ](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c). For background and details, see [this D3 issue](https://github.com/d3/d3/issues/3469). * Upgrade to [D3 version 7](https://github.com/d3/d3/blob/main/CHANGES.md#changes-in-d3-70) (version 3 of its [microlibraries](https://github.com/d3/d3#installing)). * Upgrade @hpcc-js/wasm to 2.5.0 (Graphviz 7.0.5) ## [4.5.0] – 2022-12-11 ### Changed * Upgrade @hpcc-js/wasm to 1.16.6 (Graphviz 7.0.1) ## [4.4.0] – 2022-09-12 ### Changed * Upgrade @hpcc-js/wasm to 1.16.1 (Graphviz 6.0.1) ## [4.3.0] – 2022-09-10 ### Changed * Upgrade @hpcc-js/wasm to 1.15.7 (Graphviz unchanged at 5.0.1) (thanks @mrdrogdrog) ## [4.2.0] – 2022-09-06 ### Changed * Upgrade Graphviz to version 5.0.1 through @hpcc-js/wasm version 1.15.4 (thanks @mrdrogdrog) ## [4.1.1] – 2022-04-09 ### Fixed * Cannot read property 'graphvizVersion' of undefined #224 ## [4.1.0] – 2022-02-06 ### Added * New `zoom` [event](README.md#graphviz_on), thanks to [Tucker Gordon](https://github.com/tuckergordon). * New method [*graphviz*.**graphvizVersion**()](README.md#graphviz_graphvizVersion) which returns the [Graphviz](https://graphviz.org) version. ### Changed * Upgrade Graphviz to version 2.50.0 through @hpcc-js/wasm version 1.12.8 ## [4.0.0] – 2021-04-02 **Note:** This release contains breaking changes compared to version 3.2.0. ### Changed * Upgrade to [D3 version 6](https://github.com/d3/d3/blob/master/CHANGES.md#changes-in-d3-60). This is a **breaking change**. d3-graphviz version 4 *requires* D3 version 6 (more specifically version 2 of its [microlibraries](https://github.com/d3/d3#installing)) and is no longer compatible with D3 version 5 or lower (microlibraries version 1). For more info see the [D3 6.0 migration guide](https://observablehq.com/@d3/d3v6-migration-guide) * Make [d3-selection](https://github.com/d3/d3-selection) a [peer dependency](https://docs.npmjs.com/cli/v7/configuring-npm/package-json#peerdependencies) since d3-graphviz adds new methods on the d3-selection object. ## [3.2.0] – 2021-03-28 ### Changed * Upgrade Graphviz to version 2.47.0 through @hpcc-js/wasm version 1.4.1 * Upgrade d3 dependencies to the latest version of d3 version v4 and v5: * Upgrade d3-format to version 1.4.5 * Upgrade d3-zoom to version 1.8.3 * Upgrade d3-selection to version 1.4.2 ### Fixed * Can't disable zoom once enabled #180 ## [3.1.0] – 2020-05-19 ### Added * New option *useSharedWorker* that enables the use of a [shared web worker](https://developer.mozilla.org/en-US/docs/Web/API/SharedWorker). The default is still to use a [dedicated web worker](https://developer.mozilla.org/en-US/docs/Web/API/Worker). * New method [*graphviz*.**destroy**()](README.md#graphviz_destroy) to remove the Graphviz render from the element it was created on and release any resources it is holding. ### Fixed * Styles added with the attributer are removed after transition #159 * Logging events with logEvents() throws "Error: unknown type: function" in certain contexts #160 ## [3.0.6] – 2020-05-09 ### Changed * Upgraded [Graphviz](https://gitlab.com/graphviz/graphviz) to version [2.44.0](https://gitlab.com/graphviz/graphviz/-/releases/2.44.0) through [@hpcc-js/wasm](https://github.com/hpcc-systems/hpcc-js-wasm) version [0.3.13](https://github.com/hpcc-systems/hpcc-js-wasm/releases/tag/v0.3.13). ### Fixed * resetZoom() does not work after rendering the second graph if transition is not used #151 * The production build contains code instrumented for code coverage #156 * "uncaught exception: r.charAt is not a function" with @hpcc-js/wasm version 0.3.12 and later #154 ## [3.0.5] – 2020-04-06 ### Changed * Upgraded [Graphviz](https://gitlab.com/graphviz/graphviz) to version [2.42.4](https://gitlab.com/graphviz/graphviz/-/releases/2.42.4) through [@hpcc-js/wasm](https://github.com/hpcc-systems/hpcc-js-wasm) version [0.3.11](https://github.com/hpcc-systems/hpcc-js-wasm/releases/tag/v0.3.11), including fixes for: * svg output displays TITLE of %3 if graph had no name ([Graphviz issue #1376](https://gitlab.com/graphviz/graphviz/issues/1376)) * SVG error for "g.transform.scale " in graphviz version 2.43 ([Graphviz issue #1605](https://gitlab.com/graphviz/graphviz/issues/1605)) * XML errors in generated SVG when URL attribute contains ampersand (&) ([Graphviz issue #1687](https://gitlab.com/graphviz/graphviz/issues/1687)) ## [3.0.4] – 2020-03-14 ### Fixed * TypeError: this.layoutSync is not a function when drawing node or edge and a worker is used and @hpcc-js/wasm is bundled in v3.x #142 ## [3.0.3] – 2020-03-11 ### Fixed * TypeError: this.layoutSync is not a function when drawing node or edge and a worker is used in v3.x. #139 ## [3.0.2] – 2020-03-10 ### Fixed * Error when tween shapes but not fade. #136 ## [3.0.1] – 2020-03-08 ### Fixed * Graph with an edge with style=tapered does not render when growing edges are enabled. #119 ## [3.0.0] – 2020-03-03 **Note:** This release contains breaking changes compared to version 2.6.1. ### Changed * Replaced [Viz.js](https://github.com/mdaines/viz.js/) with [@hpcc-js/wasm](https://github.com/hpcc-systems/hpcc-js-wasm). * The `<script>` tag must be changed to load [@hpcc-js/wasm](https://unpkg.com/@hpcc-js/wasm/dist/index.min.js). See the [README](README.md#defining-the-hpcc-jswasm-script-tag). * Upgraded Graphviz to version 2.42.2. * Be aware of https://gitlab.com/graphviz/graphviz/issues/1605 though. * If the use of a web worker is disabled there is a slight change of behavior; the initialization of the Graphviz renderer is now *always* asynchronous, not just when using a web worker. This means that the rendered graph will not be available directly after e.g. `d3.select("#graph").graphviz().renderDot('digraph {a -> b}');`. Synchronous rendering when not using a web worker is however still possible once initialization is completed. Use [<b>.on</b>("initEnd", <i>listener</i>)](README.md#graphviz_on) for that. ### Fixed * The old "initEnd" event handler is called when re-creating a graphviz renderer instance. #123 * The "initEnd" event handler is never called if .dot or .renderDot is chained directly after creation. #124 ## 2.x & 1.x See the [release notes](https://github.com/magjac/d3-graphviz/releases). [Unreleased]: https://github.com/magjac/d3-graphviz/compare/v5.6.0...HEAD [5.6.0]: https://github.com/magjac/d3-graphviz/compare/v5.5.0...v5.6.0 [5.5.0]: https://github.com/magjac/d3-graphviz/compare/v5.4.0...v5.5.0 [5.4.0]: https://github.com/magjac/d3-graphviz/compare/v5.3.0...v5.4.0 [5.3.0]: https://github.com/magjac/d3-graphviz/compare/v5.2.0...v5.3.0 [5.2.0]: https://github.com/magjac/d3-graphviz/compare/v5.1.0...v5.2.0 [5.1.0]: https://github.com/magjac/d3-graphviz/compare/v5.0.2...v5.1.0 [5.0.2]: https://github.com/magjac/d3-graphviz/compare/v5.0.1...v5.0.2 [5.0.1]: https://github.com/magjac/d3-graphviz/compare/v5.0.0...v5.0.1 [5.0.0]: https://github.com/magjac/d3-graphviz/compare/v4.5.0...v5.0.0 [4.5.0]: https://github.com/magjac/d3-graphviz/compare/v4.4.0...v4.5.0 [4.4.0]: https://github.com/magjac/d3-graphviz/compare/v4.3.0...v4.4.0 [4.3.0]: https://github.com/magjac/d3-graphviz/compare/v4.2.0...v4.3.0 [4.2.0]: https://github.com/magjac/d3-graphviz/compare/v4.1.1...v4.2.0 [4.1.1]: https://github.com/magjac/d3-graphviz/compare/v4.1.0...v4.1.1 [4.1.0]: https://github.com/magjac/d3-graphviz/compare/v4.0.0...v4.1.0 [4.0.0]: https://github.com/magjac/d3-graphviz/compare/v3.2.0...v4.0.0 [3.2.0]: https://github.com/magjac/d3-graphviz/compare/v3.1.0...v3.2.0 [3.1.0]: https://github.com/magjac/d3-graphviz/compare/v3.0.6...v3.1.0 [3.0.6]: https://github.com/magjac/d3-graphviz/compare/v3.0.5...v3.0.6 [3.0.5]: https://github.com/magjac/d3-graphviz/compare/v3.0.4...v3.0.5 [3.0.4]: https://github.com/magjac/d3-graphviz/compare/v3.0.3...v3.0.4 [3.0.3]: https://github.com/magjac/d3-graphviz/compare/v3.0.2...v3.0.3 [3.0.2]: https://github.com/magjac/d3-graphviz/compare/v3.0.1...v3.0.2 [3.0.1]: https://github.com/magjac/d3-graphviz/compare/v3.0.0...v3.0.1 [3.0.0]: https://github.com/magjac/d3-graphviz/compare/v2.6.1...v3.0.0