# netbox-proxbox v0.0.29.post6

v0.0.29.post6

| Field |Value |
| --- | --- |
| Canonical URL | https://emersonfelipesp.com/netbox-proxbox/releases/v0.0.29.post6 |
| GitHub URL | https://github.com/emersonfelipesp/netbox-proxbox/releases/tag/v0.0.29.post6 |
| Tag | v0.0.29.post6 |
| State | latest |
| Author | emersonfelipesp |
| Created | 2026-10-16 21:05 UTC |
| Published | 2026-10-16 21:09 UTC |
| Target | main |
| Synced | 2026-10-16 21:10 UTC |
| Assets | 0 |

## Release notes

# Version 0.0.29.post6

## Summary

This maintenance release prevents paginated guest virtual machine interface
address and synchronization job requests from failing because their querysets
were unordered. It also restores correct checkbox rendering on the plugin's
plain settings, recovery, and data-protection forms.

The release pairs with `proxbox-api 0.0.27.post4`, which hardens node Device
identity resolution. The plugin and backend may be upgraded in either order.
This release adds no database migration; migration
`0106_device_sync_scope_and_netbox_token_approval` remains the schema tip.

## Release identity

The package and plugin source both identify this maintenance release as
`0.0.29.post6`.

## Deterministic paginated querysets

Guest virtual machine interface address REST and UI lists now use stable
relationship and primary-key ordering. Synchronization job lists now use stable
descending creation-time and primary-key ordering. This prevents NetBox 4.6
from raising `QuerySetNotOrdered` when these endpoints are paginated.

The fix is scoped to the affected viewset querysets. It does not add model
ordering or change the database schema. A source contract now audits every
registered REST viewset and rejects a paginated model queryset without explicit
or model-provided ordering.

## Plain-form checkbox rendering

Boolean fields and checkbox lists on the plugin settings, encrypted-secret
recovery, and Data Protection pages now render with Bootstrap's
`form-check-input` class instead of the text-input `form-control` class. Their
selected state and layout are therefore drawn consistently across supported
NetBox versions.

## Upgrade notes

1. Upgrade the separately deployed backend to `proxbox-api 0.0.27.post4` and
   install `netbox-proxbox 0.0.29.post6`. Either service may be upgraded first.
2. No plugin migration is required for this release. Running the normal
   `python manage.py migrate netbox_proxbox` command remains safe and reports no
   new migration after `0106_device_sync_scope_and_netbox_token_approval`.
3. Run `python manage.py collectstatic --no-input` and restart every NetBox
   application and worker process.
4. Verify a paginated guest interface address request, the synchronization job
   list, and checkboxes on the settings and Data Protection pages.

## Compatibility baseline

Current backend-runtime pairing: netbox-proxbox 0.0.29.post6 <-> proxbox-api 0.0.27.post4 <-> proxmox-sdk 0.0.15 <-> netbox-sdk 0.0.13. 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-4.7.0 GA | v0.0.29.post6 | v0.0.27.post4 | v0.0.13 | v0.0.15 |

The plugin declares NetBox `4.5.8` through `4.7.99`; continuous integration
verifies the listed GA range through NetBox `4.7.0`.

## Known limitations

- The ordering contract covers registered REST viewsets. It does not impose
  global model ordering on unrelated ORM consumers.
- The checkbox fix applies to the plugin's plain Django forms; NetBox-native
  model forms retain their existing widget handling.
- The OCI appliance remains a testing topology, not a production deployment.

## Assets

No binary assets attached.

Source archives:

| Format |URL |
| --- | --- |
| zip | https://api.github.com/repos/emersonfelipesp/netbox-proxbox/zipball/v0.0.29.post6 |
| tar.gz | https://api.github.com/repos/emersonfelipesp/netbox-proxbox/tarball/v0.0.29.post6 |