pubviz 6.0.0
pubviz: ^6.0.0 copied to clipboard
A tool to visualize package dependencies and version constraints in your Dart project.
6.0.0 #
Breaking Changes #
VizRoot.forDirectoryhas been replaced by thevizRootextension method onServiceto accommodate internal refactoring.vizRootis exposed directly viapubviz.dart.- Reduced the mutable public API surface of
VizRootsignificantly; package nodes and references are formally encapsulated, and filtering logic like.filternow returns immutable clones ofVizRootrather than mutating objects in-place. VizRoot.allDepshas been removed.- Removed the
--action createoption. - Removed the
--out-diroption.
Web UI Overhaul #
--flag-outdatednow defaults to on.- Added a filter to hide
dev_dependencyedges and nodes. - Added a filter to only show paths to outdated dependencies.
- Assets are now served without creating a temp directory.
New Features #
- Workspaces:
pubviznow automatically infers workspace context. If run in a workspace root or member package, it natively visualizes the layout for the entire workspace graph. The--workspaceflag is now optional (--[no-]workspace).
Bug Fixes #
- Workspaces: Included missing relational web edges for
dev_dependenciesbelonging to workspace sub-members. They previously rendered as disconnected nodes.
5.0.0 #
Breaking Changes #
- Replaced positional commands (
open,create,print) and the--formatoption with a unified--action(-a) flag. - Default execution (
pubviz) now functions identically topubviz -a open. - Removed the
viz/dot.dartlibrary.toDotis now exposed via a an extension onVizRoot
New Features #
- Workspaces: Added the
--workspace(-w) flag to visualize all linked packages within a Dart workspace. - Output Controls: Added the
--out-diroption to specify a target destination for generated HTML and offline capabilities. - Serve Mode & Offline Support: Added the
serveaction which hosts the web app locally viadhttpdwithout booting up a new browser window. Theopenaction now uses this local server to bypass strictfile://CORS restrictions internally. Additionally, the package now supports complete offline functionality by bundling compiled Dart web application assets (JS and WASM) directly inside the package.
Web UI Overhaul #
- Completely redesigned the interactive web interface, adding a collapsible sidebar for cleaner zooming and display control.
- Added a
zkeyboard shortcut to easily toggle graph zoom capabilities. - Improved graph styling: Primary packages now utilize a distinct background color to distinguish them easily.
Other Improvements & Fixes #
-
Modernized workspace discovery inside the codebase by utilizing structured JSON data directly from
pubtool invocations. -
Hide version labels for primary node packages intentionally marked
publish_to: none. -
Display a helpful warning message if
pubvizruns inside a workspace root missing the--workspaceflag. -
Fixed a bug causing wrong colors on hover interactions over outdated packages.
-
Require
sdk: ^3.10.0.
4.1.1 #
- Fix issue with
scripttag.
4.1.0 #
- Added a printed output to
pubvizwhen using the-oflag that provides a topologically sorted update order for outdated packages. - Require
sdk: ^3.9.0.
4.0.1 #
- Fix issue when package has dependency overrides.
4.0.0 #
- Support (Dart 3.6) workspaces.
- API refactoring to support workspaces.
3.0.1 #
- require at least Dart 3.5
3.0.0 #
- require at least Dart 2.18
- Allow latest
pkg:http.
2.8.2+1 #
- Update README with instructions how to generate PDF, PNG or other files
2.8.2 #
- Handle a
nulloutput frompubwithout crashing.
2.8.1 #
- Copy valid package name parsing logic from
pubtool.- Packages with
.in their name are now allowed.
- Packages with
2.8.0 #
- Add new
--production-dependenciesflag to only output packages needed for production. - Updated
--direct-dependenciesbehavior to treatdev_dependenciesthe same asdependencies. - Don't include
sky_enginein output ever – it's justdart:ui. - Bumped min Dart SDK to
2.8.1. - Implementation: use new
pub outdatedcommand.
2.7.0 #
- Added
--versionto CLI. - Bumped min Dart SDK to 2.3.
2.6.0 #
- Add support for direct dependencies only with
--direct-dependencies(-d).
2.5.5 #
- Update dependencies.
2.5.4 #
-
Improve the package description.
-
Update some dependencies.
2.5.3 #
- Support Dart 2 stable.
2.5.2 #
- Fixes for Dart 2 type system.
2.5.1 #
- Stop using deprecated HTTP constants.
2.5.0 #
-
Use
pkg:pubspec_parsepackage. -
Stop using deprecated constants.
-
Improve handling of pre-release packages.
2.4.5 #
- Fix for latest Flutter SDK.
2.4.4 #
- Fixed code organization to eliminate warning during
pub global activate.
2.4.3 #
- Improvements in CLI error handling and help.
2.4.2 #
-
Updated output format.
-
And other cleanup...
2.4.1 #
-
Using
nodesep=0.2on the graph to make it tighter. -
Hosted code
-
Much more robust handling of node clicks to add/remove.
-
Make it clear that nodes can be clicked by changing the cursor.
-
2.4.0 #
-
Better error output if a subprocess fails.
-
Try to handle flutter packages.
2.3.11 #
- Better hover-over behavior for outdated dependencies.
2.3.10 #
-
Update
gviz. -
Support larger dependency graphs.
-
Update version of
viz.js. -
Use
viz-lite.js– smaller download.- Continue to host
vis.jsso we don't break existing installations.
- Continue to host
2.3.9+1 #
- Use
gvizpackage. Get out of the GraphViz formatting business.
2.3.9 #
-
Updated dependencies.
-
Fix case where we're pulling in a pre-release version that is after the latest stable version.
2.3.8 #
-
Send a descriptive user agent to the server.
-
Added retry logic for HTTP requests.
-
Sort the output.
2.3.7 #
- Better stack trace on errors.
2.3.6 #
- Cleanup, handled some deprecations, improve load time.
2.3.5 #
- Tweaks test code, examples, dependencies.
2.3.4 #
-
Properly escape the latest version for outdated dependencies.
-
Add a reasonable tool-tip for the entire graph.
-
Don't show the root node as outdated.
2.3.3 #
- Using CSS animations for effects. Hosting style on GitHub.
2.3.2 #
- All fancy with mouse-over effects.
2.3.1+1 #
- Fix
README.md.
2.3.1 #
- With
--flag-outdated(-o) do version lookup in parallel. MUCH faster.