Skip to content

v2.0.0

Choose a tag to compare

@marcinpsk marcinpsk released this 05 Sep 20:56
· 764 commits to main since this release

v2.0.0 (2026-09-05)

This release is published under the Apache-2.0 License.

Bug Fixes

  • Answer a preview write whose profile is deleted before its lock (7a48781)

  • Bind the placement-lock guard to the queryset it checks (aef0434)

  • Block a dangling profile reference instead of reporting a row decision (bb35647)

  • Carry the CableClass decisions through the profile YAML (1295f52)

  • Close five adversarial review findings on the Cable planner and the trace reader (7f7b808)

  • Close three adversarial review findings on trace orientation and planning (aaf4b75)

  • Close three review findings on the Cable planner and the trace reader (7e5982f)

  • Derive the quick-action Device Type slug the way the importer does (ecc0318)

  • Hold every placement reference the replan reads, and index port mappings (7beba1f)

  • Hold the import profile for every policy write (d991948)

  • Lock the Device Type a review retains, not only the resolved one (e22cb79)

  • Name the inline mapping actions for a screen reader (2fca690)

  • Narrow the AST types the placement-lock guard reads (11872c2)

  • Refuse a Device Type this import cannot size, and correct two preview affordances (233e7db)

  • State the Logical Cable deletion identity once, and date PortMapping correctly (66a3041)

  • Take every placement lock in one primary-key ordered pass (4025882)

Continuous Integration

  • Gate mypy and spec-table drift locally, and sort the CableClass columns (fd1ebee)

Features

  • Never create a Device Type, and require one that already exists (7150eca)

Refactoring

  • Answer the runtime gate from a stated declaration table (a6c4920)

  • Keep block position out of the duplicate selection key (e1bd84c)

  • Read the declaration table from a context variable (07bcddf)

  • Remove the unreachable Manufacturer quick-create action (1b59076)

  • State the declaration table instead of replacing the constant (12cb2f3)

Testing

  • Assert the operator log keeps the refused permission name (73df89b)

Breaking Changes

  • An Import Profile no longer creates missing Device Types or Manufacturers. Add the Device Type in NetBox, or map it, before importing a row that needs it.

Detailed Changes: v1.12.0...v2.0.0