# netbox-proxbox v0.0.24 v0.0.24 | Field |Value | | --- | --- | | Canonical URL | https://emersonfelipesp.com/netbox-proxbox/releases/v0.0.24 | | GitHub URL | https://github.com/emersonfelipesp/netbox-proxbox/releases/tag/v0.0.24 | | Tag | v0.0.24 | | State | latest | | Author | emersonfelipesp | | Created | 2026-08-20 00:04 UTC | | Published | 2026-08-20 00:05 UTC | | Target | develop | | Synced | 2026-08-20 01:30 UTC | | Assets | 0 | ## Release notes # Version 0.0.24 netbox-proxbox `0.0.24` pairs with `proxbox-api 0.0.20`, `proxmox-sdk 0.0.13`, and the backend's REST dependency `netbox-sdk 0.0.10`. The plugin now declares **two NetBox support tiers**: a **stable** tier covering `4.5.8` through `4.6.99`, and a new **experimental** tier covering `4.7.0` through `4.7.99`. Current backend-runtime pairing: netbox-proxbox 0.0.24 <-> proxbox-api 0.0.20 <-> proxmox-sdk 0.0.13 <-> netbox-sdk 0.0.10. This netbox-sdk version is proxbox-api's REST dependency only and does not provide the semantic MCP bridge. | NetBox | netbox-proxbox | proxbox-api | netbox-sdk | proxmox-sdk | |---|---|---|---|---| | >=4.5.8 | v0.0.24 | v0.0.20 | v0.0.10 | v0.0.13 | ## Experimental NetBox 4.7 support This release is the first to load and run on NetBox `4.7`. It is deliberately shipped as an **experimental** tier, not a certified one. | NetBox line | Tier | Status | |---|---|---| | `4.5.8` - `4.6.99` | stable | certified and CI-gated | | `4.7.0` - `4.7.99` | experimental | loads and runs; emits a startup warning | - **What you get.** The plugin installs and runs on NetBox `4.7.0` - `4.7.99`. The version gate no longer rejects the 4.7 line outright. - **How it announces itself.** Running on an experimental NetBox emits a Django system-check **`Warning`** (`netbox_proxbox.W001`), never an `Error`, so startup is not blocked. The `PLUGINS_CONFIG` opt-out silences that maturity notice only; it does not suppress unrelated checks. - **What was required to get there.** View actions are declared as `ObjectAction` classes rather than the legacy attributes 4.7 removed, `from_db()` accepts the keyword arguments Django now passes, and the default VM-role seed migration was fixed for ltree-backed NetBox hierarchies. The shared compatibility contract moved to v2. - **Evidence.** The Django test matrix runs `v4.7.0-beta1` as a **required** leg alongside `v4.5.8`, `v4.5.10`, `v4.6.0`, and `v4.6.6`, so admitting 4.7 is demonstrated to be a pure widening rather than a regression trade. ### Known limitations of the experimental tier - NetBox `4.7.0-beta1` is a pre-release. Its schema and internals can still drift before GA, so treat 4.7 as evaluation-grade rather than production. - The 4.7 leg exercises netbox-proxbox itself. A combined cell covering every companion plugin at once is not possible yet, because released 4.7-capable companion artifacts do not exist. - Production deployments should stay on the stable `4.5.8` - `4.6.99` tier. ## Compatibility and correctness - Certifies NetBox `4.6.6`, including the PDM registry override required by its current plugin loading contract. - Preserves serializer source identity and corrects storage-node capacity, detail-template, InfluxDB, and sync-state behavior against real Django/NetBox models. - Treats an empty configured encryption key as uninitialized and safely creates the key when a primary endpoint secret is first stored. ## Release integrity - Builds one wheel and one sdist from the exact tagged commit and publishes them to the Gitea Package Registry, which remains the artifact of record. - Validates the tag against a strict version pattern before anything is built, and verifies the package is present in the registry after upload. - Subscribes to the tag `push` event only. Gitea emits both `create` and `push` for a tag, and subscribing to both would start two immutable uploads for one version. - Creates the public GitHub Release for final tags only. A release candidate never produces one, because that event is the sole trigger for the public PyPI upload and an rc must not reach PyPI as though it were final. - Builds the public-index distributions from the same tagged commit, so what reaches TestPyPI and PyPI corresponds to the published source rather than a separately fetched copy. Uploads never use `--skip-existing`, so a failure always advances to a new immutable version rather than silently succeeding. - Pushes tags and creates releases only against the single authorised GitHub repository. ### Known limitation: publication hardening is deferred This release publishes through in-repository jobs on the existing shared runners — the same path used by `0.0.23` and every currently published version. The locked release control plane developed during this cycle is **not** in this release, because the isolated runner fleet it requires does not exist yet. Specifically, this version does **not** yet have: credential-free target builds, an exact-byte sealed handoff to a separately administered isolated publisher, supervisor-signed runner attestation, or egress-denied build isolation. Those controls are implemented and reviewed in-tree, and re-land once the isolated runners are provisioned. This is a deliberate, tracked deferral rather than a regression: `0.0.24` ships at the same publication posture as every release before it. ## Upgrade Deploy `proxbox-api 0.0.20` first, then install `netbox-proxbox 0.0.24`, run the normal NetBox migration and static-collection steps, restart NetBox and its workers, and verify the Proxbox plugin API and synchronization health. ## Assets No binary assets attached. Source archives: | Format |URL | | --- | --- | | zip | https://api.github.com/repos/emersonfelipesp/netbox-proxbox/zipball/v0.0.24 | | tar.gz | https://api.github.com/repos/emersonfelipesp/netbox-proxbox/tarball/v0.0.24 |