emerson@netdevops:~/netbox-sdk$ gh release view v0.0.13 --repo emersonfelipesp/netbox-sdk
back to releases / back to project
netbox-sdk v0.0.13
- author
- emersonfelipesp
- created
- 2026-09-04 18:37 UTC
- target
- 04f02f4df29784aa72843aa1e29a4d6ef8811c96
- downloads
- 0
emerson@netdevops:~/netbox-sdk$ cat RELEASE_NOTES.md
netbox-sdk 0.0.13 adds support for the official NetBox 4.7.0 release and makes
the 4.7 typed client the default.
NetBox 4.7 support
The bundled 4.7 OpenAPI document, Pydantic models, and typed bindings are built
from the official NetBox 4.7.0 release, and the committed document is
byte-identical to the upstream file. 4.7 is now a first-class stable release
line rather than a preview, so it is the default bundled contract for clients
that do not pin a version. Servers on 4.3 through 4.6 continue to resolve to
their own release line through live version detection, and every older line has
regression coverage.
Two compatibility shims were re-evaluated against the released schema. The
Service write-compatibility shim is gone, because the release exposes
protocol, ports, and port_mappings directly on the writable Service and
Service template request bodies. The background bulk shim remains, because the
released schema still does not describe the background query parameter or its
accepted response — and background response selection now runs before
synchronous response-model handling, so a bulk delete issued with that flag
returns the job reference model instead of an unvalidated dictionary.
Mock API
The bundled mock server reproduces the 4.7 response shapes:
- Services round-trip through both the legacy protocol and ports pair and the
new port mappings, and a conflicting pair is rejected instead of silently
resolved. - Selection and multiple-selection custom fields serialize as value and label
objects, while null values stay null. - Failed bulk operations return structured per-index errors atomically.
- Bulk writes accept a background flag that returns an observable job rather
than committing.
Mock behaviour is now declared per release line, so the mock and its tests
cannot drift apart, and mock application state — including branching data, jobs,
reset, and route metadata — belongs to the application instance rather than to
module globals, so two mock applications in one process no longer share state.
Command-line behaviour
Dry runs no longer read profile configuration, construct a client, or reach the
network, and the preview they print is the exact request that would be sent,
including repeated query parameters and headers, with redaction preserved. When
no client is configured, the command tree is built from the static registration
contract instead of falling back to a bundled default, so an unreachable or
unknown server can no longer be operated through a mismatched command surface.
Supply-chain integrity
Verification of the bundled release artifacts no longer trusts the provenance
record it is checking. It resolves the recorded upstream object, hashes its
bytes, compares the result against both the generator's record and the
provenance file, and deterministically regenerates the models and typed bindings
for a byte comparison. An artifact altered together with a matching provenance
hash is rejected.
The live test matrix targets the released NetBox image pinned to its reviewed
digest, verifies the digest actually pulled, and verifies that any source
fallback checked out the exact release commit, failing closed on either
mismatch.
Compatibility
Typed clients ship for NetBox 4.7, 4.6, 4.5, 4.4 and 4.3. Python 3.11 through
3.13 are supported. Live integration tests run against NetBox 4.7.0, 4.6.6,
4.6.3, 4.6.2 and 4.5.10, with an additional bundled-schema job per release line.
emerson@netdevops:~/netbox-sdk$ gh release download --pattern '*'