Commit Graph

15042 Commits

Author SHA1 Message Date
Jeremy Stretch 8fbb6f74d3
Release v4.5.9 (#22024) 2026-04-28 09:45:20 -04:00
Jeremy Stretch d6fdfec0e5 Remove id-token: write; add github_token 2026-04-28 07:53:45 -04:00
github-actions 1fd241995f Update source translation strings 2026-04-28 05:59:53 +00:00
Martin Hauser fa2d762f2b
Fixes #22002: Enable horizontal scrolling for Context Table Panels (#22009) 2026-04-27 16:40:50 -05:00
Arthur Hanson 55b48149c7
Fixes #21995: Don't copy unique fields when adding another Contact (#22017) 2026-04-27 22:28:03 +02:00
Jeremy Stretch ff5f64abf8 Restore id-token write permission 2026-04-27 14:10:44 -04:00
Jeremy Stretch f68645bbad Fix Claude issue triage workflow 2026-04-27 12:34:38 -04:00
Martin Hauser d413b847ab fix(extras): Validate EventRule action_data is a dict or null
Add validation in EventRule.clean() to ensure action_data is a JSON
object or null. Add runtime guard in event processing to handle legacy
rows with invalid data by logging a warning and using an empty dict.

Fixes #21989
2026-04-27 12:01:49 -04:00
Martin Hauser aa14e1d322 fix(dcim): Resolve link peers for cable profile connectors
Add `_get_profile_link_peers()` method to handle connector-to-connector
mappings when cables use profiles. Includes regression test for
TRUNK_4C1P profile ensuring correct peer resolution between interfaces
and rear ports.

Fixes #21917
2026-04-27 12:00:03 -04:00
Jeremy Stretch 5abcebb67b
Add a GitHub workflow to automate issue triage with Claude (#21998) 2026-04-27 15:40:15 +02:00
Jeremy Stretch c3c26332ad
Fixes #21949: Fix recursive power utilization calculation (#21997) 2026-04-27 14:35:45 +02:00
github-actions 2fd6924d26 Update source translation strings 2026-04-24 05:46:33 +00:00
Martin Hauser b1a810164a fix(dcim): Add color field to FrontPort form
Include the color field in FrontPortForm and commented-out
FrontPortBulkCreateForm field lists to allow editing front port colors
via the UI.

Fixes #21985
2026-04-23 12:09:23 -04:00
Artem Kotik 7941303d4b
Closes #21854: Support multi-select object filters in Filter Forms (#21981)
Use `DynamicModelMultipleChoiceField` for `TYPE_OBJECT` in FilterSet forms
so users can select multiple related objects when filtering.
2026-04-23 13:53:39 +02:00
github-actions e0abfaea63 Update source translation strings 2026-04-23 05:43:53 +00:00
Jeremy Stretch 789085cc33
Fixes #21975: Prefetch all related data during CSV bulk export (#21976) 2026-04-22 08:56:30 -07:00
github-actions 81d412541c Update source translation strings 2026-04-22 05:41:13 +00:00
bctiemann 6a9c3dad17
Merge pull request #21932 from netbox-community/21782-config
21782 Enable optional config template override in URL
2026-04-21 13:24:10 -04:00
Martin Hauser 4260280452 test(ipam): Make AnnotatedIPAddressTable checkbox test deterministic
Replace whole-table HTML string counting in AnnotatedIPAddressTableTest
`test_ipaddress_has_checkbox_iprange_does_not` with row-specific `pk`
cell assertions.

This avoids false failures when an `IPAddress` and `IPRange` happen to
share the same numeric primary key and makes the test stable in CI.

Fixes #21971
2026-04-21 08:15:30 -04:00
github-actions c62d0e8579 Update source translation strings 2026-04-21 05:41:44 +00:00
Martin Hauser 409d4a8958
Fixes #21966: Fix OpenAPI schema for available-vlans endpoint request body (#21973) 2026-04-20 14:11:47 -05:00
Jeremy Stretch 29ae9f400a
Fixes #21906: Return a 404 for REST API writes to endpoints with no trailing slash (#21967) 2026-04-20 10:32:47 -07:00
Arthur Hanson 900f1155af
Closes #21866: Include the PostgreSQL database schema within System details (#21901)
Expose the current PostgreSQL schema from the system view and include it
in the exported system data.

Load the Database tab on demand with HTMX so schema introspection only
runs when the panel is opened, while keeping the export path eager.
Use the active PostgreSQL schema instead of assuming `public`, move the
schema helpers into `core.utils`, and tidy the accordion toggle styling.
2026-04-20 18:18:10 +02:00
Jeremy Stretch a451e12158
Fixes #21955: Revert errant docs addition (#21968) 2026-04-20 17:12:20 +02:00
Ibtissam a372f78a9e
Fixes #21658: Fix OpenAPI schema for available-prefixes endpoint request body (#21956) 2026-04-20 08:46:41 -05:00
Grische 26c6c59797
Fixes #21935: Document MAX_PAGE_SIZE effect on GraphQL (#21940) 2026-04-20 13:01:48 +02:00
github-actions 74dab1fba0 Update source translation strings 2026-04-18 05:30:57 +00:00
Jamie (Bear) Murphy 87b17ff26d
Fixes #21711: Added support for filtering and viewing modules by their module type profile (#21900) 2026-04-17 10:34:50 -07:00
Martin Hauser 0d1e9d88a8 fix(dcim): Add comments field to MAC Address form
Include the comments field in MACAddressForm field list to allow editing
MAC Address comments via the UI form.

Fixes #21947
2026-04-17 09:37:56 -04:00
github-actions 3eb89531ad Update source translation strings 2026-04-17 05:42:14 +00:00
Jeremy Stretch b2af01c400
Update performance issue template (#21946)
* Update performance issue template

* Update .github/ISSUE_TEMPLATE/03-performance.yaml

Co-authored-by: Martin Hauser <mhauser@netboxlabs.com>
2026-04-16 23:13:16 +02:00
Martin Hauser 850d4dd1ad fix(ui): Suppress unauthorized embedded object tables
Add a `should_render()` hook to the `Panel` base class and override it
in `ObjectsTablePanel` to check the requesting user's view permission
for the panel's model. This prevents object detail pages from issuing
HTMX requests for related tables (e.g. locations, devices, image
attachments) that return 403 and disrupt the page.

Fixes #21893

Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
2026-04-16 16:48:15 -04:00
Arthur Hanson a6cc0b671e
#21361 Expand unit tests for ObjectChange and testing asserts (#21905)
* #21361 Expand unit tests for ObjectChange and testing asserts

* cleanup

* review feedback

* review feedback

* cleanup

* cleanup

* cleanup

* cleanup
2026-04-16 16:42:57 -04:00
Jeremy Stretch 4fb9410aa9
Misc updates to the contributing guide (#21944)
* Misc updates to the contributing guide

* Update CONTRIBUTING.md

Co-authored-by: Martin Hauser <mhauser@netboxlabs.com>

---------

Co-authored-by: Martin Hauser <mhauser@netboxlabs.com>
2026-04-16 16:35:33 -04:00
Arthur 5c1d1d6001 documentation 2026-04-16 11:49:54 -07:00
Arthur bbd2796c17 documentation 2026-04-16 11:29:59 -07:00
Arthur 3a30dc5dbc internationalize strings 2026-04-16 11:02:42 -07:00
Arthur 86e29cd3f6 cleanup 2026-04-16 09:27:15 -07:00
Arthur a2845d190e cleanup 2026-04-16 09:20:47 -07:00
Arthur 7f14434162 cleanup 2026-04-16 09:10:45 -07:00
github-actions 885be7106a Update source translation strings 2026-04-16 05:43:12 +00:00
Arthur ba9d060803 Merge branch 'main' into 21782-config 2026-04-15 16:33:56 -07:00
Jeremy Stretch 1af320e0a9
Fixes #21538: Fix annotated count for contacts assigned to multiple contact groups (#21919) 2026-04-15 16:01:19 -05:00
Martin Hauser c28736e1d6
Fixes #21913: Restore plugin template extension support on declarative-layout detail views (#21928) 2026-04-15 14:29:17 -05:00
Jeremy Stretch f0fc93d827
Fixes #21683: Fix support for importing port mappings on device/module types (#21921) 2026-04-15 19:45:26 +02:00
Jeremy Stretch bf9de4721e
Closes #20881: `get_filterset_for_model()` should reference application registry (#21922) 2026-04-15 19:36:33 +02:00
Jeremy Stretch bce667300a
Fixes #21737: Check that uploaded custom scripts are valid Python modules before saving (#21920) 2026-04-15 10:16:58 -07:00
Sergio López 660ca42149 Closes #21875: Allow subclasses of dict for API_TOKEN_PEPPERS 2026-04-14 16:59:49 -04:00
Jeremy Stretch 75e1b86613
Release v4.5.8 (#21903)
* Release v4.5.8
* Limit django-tables2 to <v2.9
2026-04-14 08:39:16 -04:00
github-actions e12334c01b Update source translation strings 2026-04-14 05:39:35 +00:00