Skip to main content

macports-viz

See why MacPorts ports are installed, where your outdated ones come from, and what you can clean up. Installs a portviz command.

portviz reads the MacPorts registry (/opt/local/var/macports/registry/registry.db) directly, read-only and without locks, and combines it with port outdated. Descriptions, homepages, Portfile paths and build dependencies come from the local PortIndex that port selfupdate keeps current. No dependencies beyond the Python standard library; the UI's JS libraries are vendored.

Run

uvx macports-viz                 # open the interactive graph in your browser
uvx macports-viz outdated        # or any other command below
uv tool install macports-viz     # or install it as a `portviz` command

Needs macOS with MacPorts and Python 3.11+ (uv fetches one if needed).

From a checkout: uv run portviz, or uv tool install --editable ..

Commands

Command What it shows
portviz / portviz serve Web UI: outdated / requested / unneeded lists, dependency graph, details
portviz outdated Outdated ports, grouped by whether something you requested needs them, and which requested ports pull in the most
portviz why PORT Tree of dependents from PORT up to the ports you requested
portviz unneeded Ports nothing you requested depends on, with an uninstall command
portviz cleanup [-v] Disk used by inactive versions, leftover build dirs, distfiles and logs, with commands to clean each (also the Cleanup button in the UI)

Global options: --prefix (default /opt/local), --no-outdated (skip port outdated). serve takes --port (default 8017) and --no-browser.

License

MIT. The bundled web UI includes Cytoscape.js, dagre and cytoscape-dagre, all MIT; their licenses ship in portviz/static/vendor/.

Terms

  • requested: ports you installed explicitly (port echo requested).
  • not needed: not reachable from any requested port. These are usually leftover build dependencies (the registry only records library and runtime dependencies), so you can often uninstall them instead of upgrading. Keep one with sudo port setrequested NAME.
  • used to build: installed ports whose current Portfile lists this one as a fetch/extract/build dependency. Only relevant when those are built from source.
  • frees N: ports only this requested port needs, which uninstalling it (sudo port uninstall --follow-dependencies NAME) would also remove.

Metadata

Release files for macports-viz 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for macports-viz 0.1.0
File Size Uploaded Provenance
macports_viz-0.1.0.tar.gz 212.0 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for macports-viz 0.1.0
File Interpreter ABI Platform
macports_viz-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 432.8 kB

Release files / macports_viz-0.1.0.tar.gz

Download URL macports_viz-0.1.0.tar.gz
Size 212.0 kB
Tags Source
SHA-256 checksum
How to use checksums
f69bf7ecfca925424f6388e88202477b7fd8d03cd14486b21750c18e4184010b
BLAKE2b-256 checksum
How to use checksums
c01426dc7dec2ec2789b054f6cdc7b8833c33703798028f66b4c31e92890ab6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.2 {"installer":{"name":"uv","version":"0.13.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / macports_viz-0.1.0-py3-none-any.whl

Download URL macports_viz-0.1.0-py3-none-any.whl
Size 220.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1f1c3b7eff942b4d03ec7515b7428367982095856f33d599b33c46e63557067f
BLAKE2b-256 checksum
How to use checksums
986d6112d3684e83a9195406c3d54d7118c14f208993bb688debf4db5223f4e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.2 {"installer":{"name":"uv","version":"0.13.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for macports-viz 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page