Jeremy Stretch
cd3f930e19
#18349 : Adopt new job logging functionality ( #19816 )
2025-08-13 08:12:58 -04:00
Jeremy Stretch
a175030655
#19740 : Add missing advisory lock key
2025-08-13 08:12:58 -04:00
Jeremy Stretch
e4f0611f78
#19740 : Annotate cumulative counts for platform child objects
2025-08-13 08:12:58 -04:00
Jeremy Stretch
77def92c25
#19740 : Add parent column to PlatformTable
2025-08-13 08:12:58 -04:00
Jeremy Stretch
f206a2238f
#17413 : Distinguish platforms by manufacturer when bulk importing devices
2025-08-13 08:12:58 -04:00
Jeremy Stretch
206201a659
#17413 : Remove redundant name & slug fields from Platform model
2025-08-13 08:12:58 -04:00
Jeremy Stretch
b4c88541da
Closes #19377 : Introduce config context profiles ( #20058 )
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
CI / build (20.x, 3.10) (push) Has been cancelled
CI / build (20.x, 3.11) (push) Has been cancelled
CI / build (20.x, 3.12) (push) Has been cancelled
2025-08-12 15:18:45 -07:00
Jeremy Stretch
a7247f8815
Merge branch 'main' into feature
2025-08-12 16:03:45 -04:00
Jeremy Stretch
8238fda8ad
Closes #19773 : Extend system view ( #20078 )
2025-08-12 12:59:15 -05:00
Jeremy Stretch
bb57021197
Closes #18984 : Add status field to Rack model ( #20080 )
2025-08-12 12:35:50 -05:00
Jason Novinger
290e4afaa0
Release v4.3.6 ( #20081 )
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Has been cancelled
CI / build (20.x, 3.10) (push) Has been cancelled
CI / build (20.x, 3.11) (push) Has been cancelled
CI / build (20.x, 3.12) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
2025-08-12 12:15:08 -05:00
bctiemann
032bd52dc7
Merge pull request #20047 from netbox-community/19740-platform-nesting
...
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
Closes #19740 : Enable recursive nesting for platforms
2025-08-12 10:40:27 -04:00
github-actions
ca95050b7d
Update source translation strings
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
2025-08-12 05:02:37 +00:00
m-hau
34e4ccb212
Fixes #20056 : Add rf_role to generate_schema.json ( #20071 )
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
2025-08-11 10:40:01 -07:00
Jonathan Ramstedt
fcb49f9881
Closes #19728 : add c18 power port type ( #20064 )
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
2025-08-11 08:41:14 -05:00
Arthur Hanson
a585bc044e
20048 cleanup get_viewname URL resolution ( #20050 )
...
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
* #20048 add get_action_url utility function
* #20048 add get_action_url utility function
* #20048 add get_action_url utility function
* #20048 add get_action_url utility function
* #20048 add get_action_url utility function
* #20048 action_url template tag
* #20048 action_url template tag
* #20048 fix test
* #20048 review feedback
* #20048 fix tags
2025-08-11 08:38:19 -04:00
Jason Novinger
7e40f40248
Closes #20060 : Update v4.3.5 release docs to note impact of fixing #18900
2025-08-11 08:31:03 -04:00
github-actions
8e08524fed
Update source translation strings
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Has been cancelled
2025-08-09 05:03:34 +00:00
Jeremy Stretch
1242ad68f7
Closes #20029 : Add object_type to webhook data ( #20049 )
CI / build (20.x, 3.10) (push) Has been cancelled
CI / build (20.x, 3.11) (push) Has been cancelled
CI / build (20.x, 3.12) (push) Has been cancelled
2025-08-08 21:05:26 -05:00
Jason Novinger
8bb47dad0f
Fixes #20023 : Add GiST index on Prefix.prefix for net contains ops ( #20059 )
...
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
CI / build (20.x, 3.10) (push) Has been cancelled
CI / build (20.x, 3.11) (push) Has been cancelled
CI / build (20.x, 3.12) (push) Has been cancelled
Resolves performance issue where prefix deletion with 2000+ children
took 5-10 minutes due to sequential scans in hierarchy depth/children
calculations. Adding PostgreSQL GiST index with inet_ops enables efficient
network containment operators (>>, <<, <<=) in annotate_hierarchy() queries.
Performance impact:
- 30-60x speedup: 5-10 minutes → 10 seconds for large prefix deletions
- Real-world validation: 4s migration time on 1.24M prefix dataset
- Storage cost: 47MB index (11% of table storage, 38 bytes per prefix)
Works in conjunction with existing B-tree indexes on vrf_id for optimal
query performance. Benefits all network containment operations including
hierarchy navigation, aggregate views, and available IP/prefix calculations.
2025-08-08 14:14:55 -05:00
Daniel Sheppard
5d7c8318aa
Fixes : #19996 - Correct dynamic query parameters for IP Address field in Add/Edit Service form ( #20040 )
...
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
* Fixes : #19996 - Correct dynamic query parameters for IP Address field in Add/Edit Service form
* Remove debug and do some cleanup
2025-08-08 09:52:03 -04:00
bctiemann
2d495d4f32
Merge pull request #20026 from netbox-community/19998-fixes-missing-changelog-cleared-tags
...
Fixes : #19998 - Add changelog entry when clearing M2M fields
2025-08-08 06:17:30 -04:00
github-actions
cea83f31b8
Update source translation strings
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
2025-08-08 05:09:12 +00:00
Daniel Sheppard
6c0dc8b630
Correct mistake made on determination of whether it is a tag or not
CI / build (20.x, 3.10) (push) Has been cancelled
CI / build (20.x, 3.11) (push) Has been cancelled
CI / build (20.x, 3.12) (push) Has been cancelled
2025-08-07 21:12:25 -05:00
bctiemann
ab8e3ee956
Merge pull request #20037 from netbox-community/19988-has_feature-invalid-objecttype
...
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
Fixes #19988 : `has_feature()` should gracefully handle invalid ContentTypes
2025-08-07 20:50:32 -04:00
bctiemann
1c86f81298
Merge pull request #20034 from netbox-community/20033-bookmark-bulk-deletion
...
Fixes #20033 : Fix exception when bulk deleting bookmarks
2025-08-07 20:29:10 -04:00
Jeremy Stretch
37d6c160b9
Closes #20003 : Introduce mechanism to register callbacks for webhook context ( #20025 )
...
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
* Closes #20003 : Introduce mechanism to register callbacks for webhook context
* Swap ContentType with ObjectType
* Add plugin dev documentation for webhook callbacks
* Fix tests
* Add note about namespacing webhook data
2025-08-07 16:28:53 -04:00
Jeremy Stretch
148fac1086
Closes #19740 : Enable recursive nesting for platforms
2025-08-07 16:19:24 -04:00
Daniel Sheppard
630d7aa4c2
Clarify additional branch functionality
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
2025-08-07 08:27:13 -05:00
Daniel Sheppard
043275df19
Clarify label
2025-08-07 08:24:54 -05:00
Jonathan Ramstedt
122f612750
Fixes #19379 : allow standalone id in vlan-ids range list ( #20024 )
...
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Has been cancelled
* Fixes #19379 : allow standalone id in vlan-ids range list
* Misc cleanup
---------
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
2025-08-07 08:56:07 -04:00
github-actions
65b36fd594
Update source translation strings
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
2025-08-07 05:08:34 +00:00
Jeremy Stretch
33d891e67b
Fixes #20028 : Restore bulk deletion button for bookmarks, notifications, and subscriptions ( #20032 )
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
2025-08-06 13:56:22 -07:00
Jeremy Stretch
e828ca5cb4
Fixes #20030 : Fix height of object list action buttons & others ( #20036 )
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
2025-08-06 13:49:52 -07:00
Jeremy Stretch
fce10c73b7
Closes #17222 : Improve visibility of notifications icon ( #20035 )
2025-08-06 14:28:01 -05:00
bctiemann
0cf76bc5c7
Merge pull request #20021 from netbox-community/19999-script-list-widget-misformatted
...
Fixes #19999 : Script list dashboard widget now displays correctly
2025-08-06 15:08:56 -04:00
Jeremy Stretch
13db4f728c
Fixes #19988 : has_feature() should gracefully handle invalid ContentTypes
2025-08-06 15:03:38 -04:00
Jeremy Stretch
4ce47e778b
Closes #18006 : Dispatch event when toggling color mode & document for plugin use ( #20031 )
2025-08-06 10:47:06 -05:00
Jeremy Stretch
11f228cae9
Fixes #20033 : Fix exception when bulk deleting bookmarks
2025-08-06 10:29:17 -04:00
Jeremy Stretch
3ecb904e37
Closes #20008 : Job logging for bulk operation background jobs ( #20022 )
...
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
* WIP
* Misc cleanup
2025-08-05 15:54:08 -05:00
Daniel Sheppard
a86cd9dfc6
Clarify comment
2025-08-05 15:49:01 -05:00
Daniel Sheppard
15541c6440
Fixes : #19998 - Add changelog entry when clearing M2M fields
2025-08-05 15:28:41 -05:00
Jason Novinger
0c70e9e140
Fixes #19986 : Fix plugin list view button URLs ( #20019 )
...
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
* Fixes #19986 : Fix plugin list view button URLs
Plugin list view action buttons (Add, Import, Export) were generating 404
errors because ObjectAction.get_url() was manually constructing viewnames
without the required "plugins:" namespace prefix for plugin models.
Replace manual viewname construction with NetBox's get_viewname() utility
function, which properly handles plugin detection and namespace prefixing
for both core and plugin models.
* Ensure expected URL patterns are registered, ensures tests pass
2025-08-05 08:26:43 -04:00
github-actions
6ce3012f93
Update source translation strings
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Has been cancelled
2025-08-05 05:08:54 +00:00
bctiemann
fec6cf705f
Merge pull request #20015 from mraerino/graphql-contains-prefix
...
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
CI / build (20.x, 3.10) (push) Has been cancelled
CI / build (20.x, 3.11) (push) Has been cancelled
CI / build (20.x, 3.12) (push) Has been cancelled
Implement `contains` filter for IPAM prefixes and IP ranges
2025-08-04 18:16:19 -04:00
Jason Novinger
9c6d0d1ddc
Fixes #19999 : Script list widget now displays correctly
...
- Extract script list content into reusable partial template
- Add object-list CSS class for proper embedded table styling
- Hide module headers and management actions in widget context
- Use compact buttons with icon-only labels for widgets
- Add test coverage for embedded parameter handling
The embedded version now renders cleanly in dashboard widgets while
preserving full functionality in the main script list page.
2025-08-04 16:52:11 -05:00
Jason Novinger
47359d9284
Fixes #20017 : ensures full ChangeLog change is highlighted ( #20018 )
2025-08-04 14:27:39 -07:00
Jeremy Stretch
669df62cde
Closes #18873 : Add a request timeout parameter to the RSS feed dashboard widget ( #20004 )
2025-08-04 14:23:33 -07:00
Marcus Weiner
9df0bdcfaf
Fixes #19622 : Allow loading graphql query from URL ( #20014 )
CI / build (20.x, 3.10) (push) Waiting to run
CI / build (20.x, 3.11) (push) Waiting to run
CI / build (20.x, 3.12) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, actions) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
2025-08-04 09:28:59 -05:00
Jad Seifeddine
d222913716
Fixes : #19917 - Fix MAC address pagination duplicates by adding 'pk' to model ordering ( #19961 )
...
* Fix MAC address pagination duplicates by adding 'pk' to model ordering
Add 'pk' to MACAddress model ordering to ensure deterministic results
when multiple MAC addresses have the same value. This prevents the same
MAC address from appearing on multiple pages during pagination.
The issue occurred because Django's default ordering by 'mac_address'
alone is non-deterministic when multiple records share the same MAC
address value, causing inconsistent pagination results when the same
MAC address is assigned to multiple interfaces on a device.
Added regression test that verifies MAC addresses with identical values
are properly ordered by their primary key, ensuring consistent pagination
behavior across the application.
Fixes netbox-community#19917
* Remove test
* Resolve migration conflict
---------
Co-authored-by: Jad Seifeddine <jseifeddine@macquarietelecom.com>
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
2025-08-04 10:15:05 -04:00