Skip to content

feat: regenerate ingester.py for NetBox 4.7.0 support - #109

Open
leoparente wants to merge 4 commits into
developfrom
feat/netbox-4.7-support
Open

feat: regenerate ingester.py for NetBox 4.7.0 support#109
leoparente wants to merge 4 commits into
developfrom
feat/netbox-4.7-support

Conversation

@leoparente

@leoparente leoparente commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

Summary

Regenerates the SDK's ingestion schema bindings against a live NetBox v4.7.0 (GA) instance: ingester.py, the protobuf modules (ingester_pb2.py / .pyi), and the entity docs/examples.

What's new

  • Five new entity builders (dcim): CoolingSource, CoolingFeed, CoolingIntake, CoolingOutflow, ModuleBayType, each with docs examples; new Entity union variants for all five.
  • New fields on existing builders: Service.port_mappings (list of "tcp/53"-style strings), Interface.channels/channel_id/writable mac_address, DeviceType/ModuleType cooling_method + end_of_life, Rack/RackType cooling_capability + cooling_capacity, ModuleBay/ModuleType module_bay_types, CustomField.nulls_first.
  • README supported-entities list updated.

Wire compatibility

All pre-existing protobuf field numbers, types, and cardinalities are unchanged — additions only. Service keeps protocol/ports alongside the new port_mappings, matching NetBox 4.7's deprecation approach.

Verification

  • Full test suite passes locally against the regenerated bindings (213 passed).
  • All docs examples byte-compile.

Related PRs

Notes

Regenerated and verified against 4.7.0 GA (the pre-release → GA delta was header stamps only).

🤖 Generated with Claude Code

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Aug 26, 2026

Copy link
Copy Markdown

Coverage

Coverage Report
FileStmtsMissCoverMissing
/opt/hostedtoolcache/Python/3.10.21/x64/lib/python3.10/site-packages/netboxlabs/diode/sdk
   chunking.py33197%112
   client.py5674293%202–203, 222–224, 227–230, 522, 590, 595, 599, 682–687, 732–734, 764, 768, 772, 794, 815, 817, 891, 922, 930, 992–993, 1002, 1035, 1062, 1067–1068, 1097, 1102–1105
   exceptions.py44393%69, 82–83
TOTAL6594693% 

Tests Skipped Failures Errors Time
213 0 💤 0 ❌ 0 🔥 2.178s ⏱️

beta1 -> beta2 adds 11 Interface.type choice values (100gbase-x-sfp112,
nine infiniband-*-4x variants, hpe-synergy-interconnect-link); no
structural changes. Header stamps refreshed.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
leoparente and others added 2 commits September 2, 2026 17:35
…e ports)

interface_example no longer combines channels with channel_id (NetBox
rejects the pair on one interface), and service now demonstrates
port_mappings instead of the deprecated protocol/ports with no ports.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
beta2 -> GA is schema-identical; this refresh is header stamps
(Source: NetBox v4.7.0) so the shipped artifacts reference the release,
not a pre-release.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
@leoparente leoparente changed the title feat: regenerate ingester.py for NetBox 4.7.0-beta1 support feat: regenerate ingester.py for NetBox 4.7.0 support Sep 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Documentation Improvements or additions to documentation markdown python

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant