Releases: CESNET/netbox_drawio
Releases · CESNET/netbox_drawio
Release list
v0.2.2
v0.2.1
0.2.1 — 2026-09-10
- Diagram previews are now browser-cacheable: every
<img>links the SVG endpoint with
?v=<content_hash>and the endpoint answers such requests with
Cache-Control: private, max-age=31536000, immutable, so a list of 150 diagrams costs 150
requests once instead of on every page load. Unversioned URLs keep revalidating via ETag. - The SVG endpoint checks
If-None-Matchbefore loading the SVG blob, so a 304 no longer reads
the diagram out of Postgres. - List and tab querysets compute
svg_sizewithOCTET_LENGTHinstead ofLENGTH, which avoids
decompressing every stored SVG just to test whether a preview exists.
v0.2.0
0.2.0 — 2026-09-04
- Breaking: requires NetBox 4.7.x (
min_version4.7.0,max_version4.7.99). NetBox 4.6.x
installs stay on 0.1.x. - Verified against NetBox 4.7.0 (Django 6.1, django-tables2 3.0): no code or migration changes.
List-view / API query-count baselines re-recorded (NetBox 4.7 issues fewer queries per request).
v0.1.1
- Fix save being silently dropped when a draw.io spinner was already active (two saves in quick succession, autosave during a manual save): the export request no longer sets
spinKey, so draw.io's spinner guard can't swallow it (#4). - The status line now shows Saving… as soon as a save is requested, so a stalled export is visible.
Full Changelog: v0.1.0...v0.1.1
v0.1.0
First public release. Requires NetBox 4.6.4 – 4.6.99, Python ≥ 3.12, < 3.15.
pip install netbox-drawioOn PyPI: https://pypi.org/project/netbox-drawio/
Features
- Embedded draw.io editor using the draw.io embed protocol — diagram XML travels only between
the browser and NetBox; the editor host never receives it. - Diagrams tab on object detail pages with SVG preview cards, per-card edit / unlink
actions, and Add Diagram / Link Existing buttons. - Many-to-many assignment: one diagram links to any number of objects of any enabled type.
- SVG previews served from a hardened endpoint (CSP,
sandbox,nosniff; rendered via<img>
so embedded scripts can never execute). .drawiosource download.- REST API for diagrams and assignments; the diagram list response omits the
source_xml/
svg_cacheblobs. - Global search, change logging (content blobs excluded; a
content_hashrecords every content
change), tags, custom fields, journaling, and object permissions. - Configurable editor URL and query params, autosave, model scoping (
applied_scope,
scope_filter,excluded_apps,excluded_models), tab placement, and a byte cap on
diagram XML and SVG.
Full changelog: https://github.com/CESNET/netbox_drawio/blob/main/CHANGELOG.md