From 3d6d69de768aef6673eba5a4a5ecc4f4079882ee Mon Sep 17 00:00:00 2001 From: Mapika Date: Sat, 1 Aug 2026 09:24:26 +0200 Subject: [PATCH] chore: release 2.1.0 --- CHANGELOG.md | 18 +++++++++++++++++- Cargo.lock | 2 +- Cargo.toml | 2 +- README.md | 5 +++-- flake.nix | 2 +- server.json | 4 ++-- 6 files changed, 25 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f82050d..053dbf5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,22 @@ # Changelog -## Unreleased +## 2.1.0 + +Agentless SSH now covers every command, so any host you can reach over SSH can +be scanned, inspected, diagnosed, and watched without installing anything on +it. The MCP server gained a change-diff tool, descendant processes, and a dry +run for the one destructive tool it offers. + +**If you script against portview, three outputs changed.** All three are +corrections of wrong behaviour rather than redefinitions, but a script pinned to +2.0.x will see different results: + +- Ports whose owner cannot be resolved are now listed with `-` instead of being + omitted, so a scan can return rows it did not before. +- `--all` emits one row per connection rather than collapsing them, so a port + with sixty `TIME_WAIT` sockets is now sixty rows. +- `portview ssh --json` emits JSON. It previously either printed a table + or failed outright, so nothing could have depended on the old behaviour. ### Added diff --git a/Cargo.lock b/Cargo.lock index bda92fe..ad3bcd6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -973,7 +973,7 @@ checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" [[package]] name = "portview" -version = "2.0.2" +version = "2.1.0" dependencies = [ "clap", "clap_complete", diff --git a/Cargo.toml b/Cargo.toml index 1426df0..c66adad 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "portview" -version = "2.0.2" +version = "2.1.0" edition = "2024" description = "A diagnostic-first port viewer. See what's on your ports, then act on it." license = "MIT" diff --git a/README.md b/README.md index e4acfaa..98de475 100644 --- a/README.md +++ b/README.md @@ -96,10 +96,11 @@ Or configure it manually: | Tool | What it does | |------|--------------| | `list_ports` | Every listening port with process, user, uptime, memory, full command | -| `inspect_port` | One port in detail, including each process's working directory | +| `inspect_port` | One port in detail: each process's working directory, plus its child processes — so the agent knows what else stops when it stops your dev server | | `find_process` | Which ports a service is on, by name or command substring | | `doctor` | Conflicts, wildcard exposure, stale connections, resource hogs | -| `kill_port` | Terminate what's on a port (marked destructive to the client) | +| `diff_ports` | What opened, closed, or changed owner since a baseline — "what did starting that actually do?" | +| `kill_port` | Terminate what's on a port (marked destructive to the client). `dry_run` shows which PIDs it would signal, without signalling them |

portview MCP server demo diff --git a/flake.nix b/flake.nix index 0f5be4c..c00a940 100644 --- a/flake.nix +++ b/flake.nix @@ -15,7 +15,7 @@ packages = rec { portview = pkgs.rustPlatform.buildRustPackage { pname = "portview"; - version = "2.0.2"; + version = "2.1.0"; src = self; diff --git a/server.json b/server.json index d66290a..572f2ae 100644 --- a/server.json +++ b/server.json @@ -8,12 +8,12 @@ "source": "github" }, "websiteUrl": "https://github.com/Mapika/portview", - "version": "2.0.2", + "version": "2.1.0", "packages": [ { "registryType": "cargo", "identifier": "portview", - "version": "2.0.2", + "version": "2.1.0", "transport": { "type": "stdio" },