mirror of
https://github.com/netbox-community/netbox.git
synced 2025-12-09 01:49:35 -06:00
Release v4.4.1 (#20366)
Some checks are pending
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
Some checks are pending
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
* Release v4.4.1 * Revert django-mptt to v0.17.0
This commit is contained in:
parent
81401b9e17
commit
8fa1abd371
@ -15,7 +15,7 @@ body:
|
|||||||
attributes:
|
attributes:
|
||||||
label: NetBox version
|
label: NetBox version
|
||||||
description: What version of NetBox are you currently running?
|
description: What version of NetBox are you currently running?
|
||||||
placeholder: v4.4.0
|
placeholder: v4.4.1
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: dropdown
|
- type: dropdown
|
||||||
|
|||||||
2
.github/ISSUE_TEMPLATE/02-bug_report.yaml
vendored
2
.github/ISSUE_TEMPLATE/02-bug_report.yaml
vendored
@ -27,7 +27,7 @@ body:
|
|||||||
attributes:
|
attributes:
|
||||||
label: NetBox Version
|
label: NetBox Version
|
||||||
description: What version of NetBox are you currently running?
|
description: What version of NetBox are you currently running?
|
||||||
placeholder: v4.4.0
|
placeholder: v4.4.1
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: dropdown
|
- type: dropdown
|
||||||
|
|||||||
@ -139,8 +139,7 @@ requests
|
|||||||
|
|
||||||
# rq
|
# rq
|
||||||
# https://github.com/rq/rq/blob/master/CHANGES.md
|
# https://github.com/rq/rq/blob/master/CHANGES.md
|
||||||
# RQ v2.5 drops support for Redis < 5.0
|
rq
|
||||||
rq==2.4.1
|
|
||||||
|
|
||||||
# Django app for social-auth-core
|
# Django app for social-auth-core
|
||||||
# https://github.com/python-social-auth/social-app-django/blob/master/CHANGELOG.md
|
# https://github.com/python-social-auth/social-app-django/blob/master/CHANGELOG.md
|
||||||
|
|||||||
@ -330,14 +330,87 @@
|
|||||||
"100base-lfx",
|
"100base-lfx",
|
||||||
"100base-tx",
|
"100base-tx",
|
||||||
"100base-t1",
|
"100base-t1",
|
||||||
"1000base-t",
|
"1000base-bx10-d",
|
||||||
|
"1000base-bx10-u",
|
||||||
|
"1000base-cx",
|
||||||
|
"1000base-cwdm",
|
||||||
|
"1000base-dwdm",
|
||||||
|
"1000base-ex",
|
||||||
"1000base-sx",
|
"1000base-sx",
|
||||||
|
"1000base-lsx",
|
||||||
"1000base-lx",
|
"1000base-lx",
|
||||||
|
"1000base-lx10",
|
||||||
|
"1000base-t",
|
||||||
"1000base-tx",
|
"1000base-tx",
|
||||||
|
"1000base-zx",
|
||||||
"2.5gbase-t",
|
"2.5gbase-t",
|
||||||
"5gbase-t",
|
"5gbase-t",
|
||||||
"10gbase-t",
|
"10gbase-br-d",
|
||||||
|
"10gbase-br-u",
|
||||||
"10gbase-cx4",
|
"10gbase-cx4",
|
||||||
|
"10gbase-er",
|
||||||
|
"10gbase-lr",
|
||||||
|
"10gbase-lrm",
|
||||||
|
"10gbase-lx4",
|
||||||
|
"10gbase-sr",
|
||||||
|
"10gbase-t",
|
||||||
|
"10gbase-zr",
|
||||||
|
"25gbase-cr",
|
||||||
|
"25gbase-er",
|
||||||
|
"25gbase-lr",
|
||||||
|
"25gbase-sr",
|
||||||
|
"25gbase-t",
|
||||||
|
"40gbase-cr4",
|
||||||
|
"40gbase-er4",
|
||||||
|
"40gbase-fr4",
|
||||||
|
"40gbase-lr4",
|
||||||
|
"40gbase-sr4",
|
||||||
|
"50gbase-cr",
|
||||||
|
"50gbase-er",
|
||||||
|
"50gbase-fr",
|
||||||
|
"50gbase-lr",
|
||||||
|
"50gbase-sr",
|
||||||
|
"100gbase-cr1",
|
||||||
|
"100gbase-cr2",
|
||||||
|
"100gbase-cr4",
|
||||||
|
"100gbase-cr10",
|
||||||
|
"100gbase-dr",
|
||||||
|
"100gbase-er4",
|
||||||
|
"100gbase-fr1",
|
||||||
|
"100gbase-lr1",
|
||||||
|
"100gbase-lr4",
|
||||||
|
"100gbase-sr1",
|
||||||
|
"100gbase-sr1.2",
|
||||||
|
"100gbase-sr2",
|
||||||
|
"100gbase-sr4",
|
||||||
|
"100gbase-sr10",
|
||||||
|
"100gbase-zr",
|
||||||
|
"200gbase-cr2",
|
||||||
|
"200gbase-cr4",
|
||||||
|
"200gbase-sr2",
|
||||||
|
"200gbase-sr4",
|
||||||
|
"200gbase-dr4",
|
||||||
|
"200gbase-er4",
|
||||||
|
"200gbase-fr4",
|
||||||
|
"200gbase-lr4",
|
||||||
|
"200gbase-vr2",
|
||||||
|
"400gbase-cr4",
|
||||||
|
"400gbase-dr4",
|
||||||
|
"400gbase-er8",
|
||||||
|
"400gbase-fr4",
|
||||||
|
"400gbase-fr8",
|
||||||
|
"400gbase-lr4",
|
||||||
|
"400gbase-lr8",
|
||||||
|
"400gbase-sr4",
|
||||||
|
"400gbase-sr4_2",
|
||||||
|
"400gbase-sr8",
|
||||||
|
"400gbase-sr16",
|
||||||
|
"400gbase-vr4",
|
||||||
|
"400gbase-zr",
|
||||||
|
"800gbase-cr8",
|
||||||
|
"800gbase-dr8",
|
||||||
|
"800gbase-sr8",
|
||||||
|
"800gbase-vr8",
|
||||||
"100base-x-sfp",
|
"100base-x-sfp",
|
||||||
"1000base-x-gbic",
|
"1000base-x-gbic",
|
||||||
"1000base-x-sfp",
|
"1000base-x-sfp",
|
||||||
|
|||||||
1070
contrib/openapi.json
1070
contrib/openapi.json
File diff suppressed because one or more lines are too long
@ -1,5 +1,47 @@
|
|||||||
# NetBox v4.4
|
# NetBox v4.4
|
||||||
|
|
||||||
|
## v4.4.1 (2025-09-16)
|
||||||
|
|
||||||
|
### Enhancements
|
||||||
|
|
||||||
|
* [#15492](https://github.com/netbox-community/netbox/issues/15492) - Enable cloning of permissions
|
||||||
|
* [#16381](https://github.com/netbox-community/netbox/issues/16381) - Display script result timestamps in system timezone
|
||||||
|
* [#19262](https://github.com/netbox-community/netbox/issues/19262) - No longer restrict FHRP group assignment by assigned IP address
|
||||||
|
* [#19408](https://github.com/netbox-community/netbox/issues/19408) - Support export templates for circuit terminations and virtual circuit terminations
|
||||||
|
* [#19428](https://github.com/netbox-community/netbox/issues/19428) - Add an optional U height field to the devices table
|
||||||
|
* [#19547](https://github.com/netbox-community/netbox/issues/19547) - Add individual "sync" buttons in data sources table
|
||||||
|
* [#19865](https://github.com/netbox-community/netbox/issues/19865) - Reorganize cable type groupings
|
||||||
|
* [#20222](https://github.com/netbox-community/netbox/issues/20222) - Enable the `HttpOnly` flag for CSRF cookie
|
||||||
|
* [#20237](https://github.com/netbox-community/netbox/issues/20237) - Include VPN tunnel groups in global search results
|
||||||
|
* [#20241](https://github.com/netbox-community/netbox/issues/20241) - Record A & B terminations in cable changelog data
|
||||||
|
* [#20277](https://github.com/netbox-community/netbox/issues/20277) - Add support for attribute assignment to `deserialize_object()` utility
|
||||||
|
* [#20321](https://github.com/netbox-community/netbox/issues/20321) - Add physical media types for transceiver interfaces
|
||||||
|
* [#20347](https://github.com/netbox-community/netbox/issues/20347) - Add Wi-Fi Alliance aliases to 802.11 interface types
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* [#19729](https://github.com/netbox-community/netbox/issues/19729) - Restore `kind` filter for interfaces in GraphQL API
|
||||||
|
* [#19744](https://github.com/netbox-community/netbox/issues/19744) - Plugins list should be orderable by "active" column
|
||||||
|
* [#19851](https://github.com/netbox-community/netbox/issues/19851) - Fix `ValueError` complaining of missing `scope` when bulk importing wireless LANs
|
||||||
|
* [#19896](https://github.com/netbox-community/netbox/issues/19896) - Min/max values for decimal custom fields should accept decimal values
|
||||||
|
* [#20197](https://github.com/netbox-community/netbox/issues/20197) - Correct validation for virtual chassis parent interface
|
||||||
|
* [#20215](https://github.com/netbox-community/netbox/issues/20215) - All GraphQL filters for config contexts should be optional
|
||||||
|
* [#20217](https://github.com/netbox-community/netbox/issues/20217) - Remove "0 VLANs available" row at end of VLAN range table
|
||||||
|
* [#20221](https://github.com/netbox-community/netbox/issues/20221) - JSON fields should not coerce empty dictionaries to null
|
||||||
|
* [#20227](https://github.com/netbox-community/netbox/issues/20227) - Ensure consistent padding of Markdown content
|
||||||
|
* [#20234](https://github.com/netbox-community/netbox/issues/20234) - Fix "add" button link for prerequisite object warning in UI
|
||||||
|
* [#20236](https://github.com/netbox-community/netbox/issues/20236) - Strip invalid characters from uploaded image file names
|
||||||
|
* [#20238](https://github.com/netbox-community/netbox/issues/20238) - Fix support for outside IP assignment during bulk import of tunnel terminations
|
||||||
|
* [#20242](https://github.com/netbox-community/netbox/issues/20242) - Avoid `AttributeError` exception on background jobs with no request ID
|
||||||
|
* [#20252](https://github.com/netbox-community/netbox/issues/20252) - Remove generic AddObject from ObjectChildrenView to prevent duplicate "add" buttons
|
||||||
|
* [#20264](https://github.com/netbox-community/netbox/issues/20264) - Fix rendering of default icon in plugins list
|
||||||
|
* [#20272](https://github.com/netbox-community/netbox/issues/20272) - ConfigContexts assigned to ancestor locations should apply to device/VM
|
||||||
|
* [#20282](https://github.com/netbox-community/netbox/issues/20282) - Fix styling of prerequisite objects warning
|
||||||
|
* [#20298](https://github.com/netbox-community/netbox/issues/20298) - Display a placeholder when an image thumbnail fails to load
|
||||||
|
* [#20327](https://github.com/netbox-community/netbox/issues/20327) - Avoid calling `distinct()` on device/VM queryset when fetching config context data
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## v4.4.0 (2025-09-02)
|
## v4.4.0 (2025-09-02)
|
||||||
|
|
||||||
### New Features
|
### New Features
|
||||||
|
|||||||
BIN
netbox/project-static/dist/netbox.js
vendored
BIN
netbox/project-static/dist/netbox.js
vendored
Binary file not shown.
BIN
netbox/project-static/dist/netbox.js.map
vendored
BIN
netbox/project-static/dist/netbox.js.map
vendored
Binary file not shown.
@ -28,9 +28,9 @@
|
|||||||
"clipboard": "2.0.11",
|
"clipboard": "2.0.11",
|
||||||
"flatpickr": "4.6.13",
|
"flatpickr": "4.6.13",
|
||||||
"gridstack": "12.3.3",
|
"gridstack": "12.3.3",
|
||||||
"htmx.org": "2.0.6",
|
"htmx.org": "2.0.7",
|
||||||
"query-string": "9.2.2",
|
"query-string": "9.3.0",
|
||||||
"sass": "1.91.0",
|
"sass": "1.92.1",
|
||||||
"tom-select": "2.4.3",
|
"tom-select": "2.4.3",
|
||||||
"typeface-inter": "3.18.1",
|
"typeface-inter": "3.18.1",
|
||||||
"typeface-roboto-mono": "1.1.13"
|
"typeface-roboto-mono": "1.1.13"
|
||||||
|
|||||||
@ -2241,10 +2241,10 @@ hey-listen@^1.0.8:
|
|||||||
resolved "https://registry.yarnpkg.com/hey-listen/-/hey-listen-1.0.8.tgz#8e59561ff724908de1aa924ed6ecc84a56a9aa68"
|
resolved "https://registry.yarnpkg.com/hey-listen/-/hey-listen-1.0.8.tgz#8e59561ff724908de1aa924ed6ecc84a56a9aa68"
|
||||||
integrity sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==
|
integrity sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==
|
||||||
|
|
||||||
htmx.org@2.0.6:
|
htmx.org@2.0.7:
|
||||||
version "2.0.6"
|
version "2.0.7"
|
||||||
resolved "https://registry.yarnpkg.com/htmx.org/-/htmx.org-2.0.6.tgz#42573483c72112e7e332dfe93043cd0eb32cda01"
|
resolved "https://registry.yarnpkg.com/htmx.org/-/htmx.org-2.0.7.tgz#991571e009a2ea4cb60e7af8bb4c1c8c0de32ecd"
|
||||||
integrity sha512-7ythjYneGSk3yCHgtCnQeaoF+D+o7U2LF37WU3O0JYv3gTZSicdEFiI/Ai/NJyC5ZpYJWMpUb11OC5Lr6AfAqA==
|
integrity sha512-YiJqF3U5KyO28VC5mPfehKJPF+n1Gni+cupK+D69TF0nm7wY6AXn3a4mPWIikfAXtl1u1F1+ZhSCS7KT8pVmqA==
|
||||||
|
|
||||||
ignore@^5.2.0:
|
ignore@^5.2.0:
|
||||||
version "5.3.2"
|
version "5.3.2"
|
||||||
@ -2990,10 +2990,10 @@ punycode@^2.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
|
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
|
||||||
integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
|
integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
|
||||||
|
|
||||||
query-string@9.2.2:
|
query-string@9.3.0:
|
||||||
version "9.2.2"
|
version "9.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/query-string/-/query-string-9.2.2.tgz#a0104824edfdd2c1db2f18af71cef7abf6a3b20f"
|
resolved "https://registry.yarnpkg.com/query-string/-/query-string-9.3.0.tgz#f2d60d6b4442cb445f374b5ff749b937b2cccd03"
|
||||||
integrity sha512-pDSIZJ9sFuOp6VnD+5IkakSVf+rICAuuU88Hcsr6AKL0QtxSIfVuKiVP2oahFI7tk3CRSexwV+Ya6MOoTxzg9g==
|
integrity sha512-IQHOQ9aauHAApwAaUYifpEyLHv6fpVGVkMOnwPzcDScLjbLj8tLsILn6unSW79NafOw1llh8oK7Gd0VwmXBFmA==
|
||||||
dependencies:
|
dependencies:
|
||||||
decode-uri-component "^0.4.1"
|
decode-uri-component "^0.4.1"
|
||||||
filter-obj "^5.1.0"
|
filter-obj "^5.1.0"
|
||||||
@ -3190,10 +3190,10 @@ safe-regex-test@^1.1.0:
|
|||||||
es-errors "^1.3.0"
|
es-errors "^1.3.0"
|
||||||
is-regex "^1.2.1"
|
is-regex "^1.2.1"
|
||||||
|
|
||||||
sass@1.91.0:
|
sass@1.92.1:
|
||||||
version "1.91.0"
|
version "1.92.1"
|
||||||
resolved "https://registry.yarnpkg.com/sass/-/sass-1.91.0.tgz#7d4f7f624b35d43f78da1c339cab24426e28d7fa"
|
resolved "https://registry.yarnpkg.com/sass/-/sass-1.92.1.tgz#07fb1fec5647d7b712685d1090628bf52456fe86"
|
||||||
integrity sha512-aFOZHGf+ur+bp1bCHZ+u8otKGh77ZtmFyXDo4tlYvT7PWql41Kwd8wdkPqhhT+h2879IVblcHFglIMofsFd1EA==
|
integrity sha512-ffmsdbwqb3XeyR8jJR6KelIXARM9bFQe8A6Q3W4Klmwy5Ckd5gz7jgUNHo4UOqutU5Sk1DtKLbpDP0nLCg1xqQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
chokidar "^4.0.0"
|
chokidar "^4.0.0"
|
||||||
immutable "^5.0.2"
|
immutable "^5.0.2"
|
||||||
|
|||||||
@ -1,3 +1,3 @@
|
|||||||
version: "4.4.0"
|
version: "4.4.1"
|
||||||
edition: "Community"
|
edition: "Community"
|
||||||
published: "2025-09-02"
|
published: "2025-09-16"
|
||||||
|
|||||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
[project]
|
[project]
|
||||||
name = "netbox"
|
name = "netbox"
|
||||||
version = "4.4.0"
|
version = "4.4.1"
|
||||||
requires-python = ">=3.10"
|
requires-python = ">=3.10"
|
||||||
description = "The premier source of truth powering network automation."
|
description = "The premier source of truth powering network automation."
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
|
|||||||
@ -1,15 +1,15 @@
|
|||||||
colorama==0.4.6
|
colorama==0.4.6
|
||||||
Django==5.2.6
|
Django==5.2.6
|
||||||
django-cors-headers==4.7.0
|
django-cors-headers==4.8.0
|
||||||
django-debug-toolbar==5.2.0
|
django-debug-toolbar==5.2.0
|
||||||
django-filter==25.1
|
django-filter==25.1
|
||||||
django-graphiql-debug-toolbar==0.2.0
|
django-graphiql-debug-toolbar==0.2.0
|
||||||
django-htmx==1.23.2
|
django-htmx==1.24.1
|
||||||
django-mptt==0.17.0
|
django-mptt==0.17.0
|
||||||
django-pglocks==1.0.4
|
django-pglocks==1.0.4
|
||||||
django-prometheus==2.4.1
|
django-prometheus==2.4.1
|
||||||
django-redis==6.0.0
|
django-redis==6.0.0
|
||||||
django-rich==2.0.0
|
django-rich==2.1.0
|
||||||
django-rq==3.1
|
django-rq==3.1
|
||||||
django-storages==1.14.6
|
django-storages==1.14.6
|
||||||
django-tables2==2.7.5
|
django-tables2==2.7.5
|
||||||
@ -17,26 +17,26 @@ django-taggit==6.1.0
|
|||||||
django-timezone-field==7.1
|
django-timezone-field==7.1
|
||||||
djangorestframework==3.16.1
|
djangorestframework==3.16.1
|
||||||
drf-spectacular==0.28.0
|
drf-spectacular==0.28.0
|
||||||
drf-spectacular-sidecar==2025.8.1
|
drf-spectacular-sidecar==2025.9.1
|
||||||
feedparser==6.0.11
|
feedparser==6.0.12
|
||||||
gunicorn==23.0.0
|
gunicorn==23.0.0
|
||||||
Jinja2==3.1.6
|
Jinja2==3.1.6
|
||||||
jsonschema==4.25.1
|
jsonschema==4.25.1
|
||||||
Markdown==3.8.2
|
Markdown==3.9
|
||||||
mkdocs-material==9.6.18
|
mkdocs-material==9.6.20
|
||||||
mkdocstrings==0.30.0
|
mkdocstrings==0.30.0
|
||||||
mkdocstrings-python==1.18.2
|
mkdocstrings-python==1.18.2
|
||||||
netaddr==1.3.0
|
netaddr==1.3.0
|
||||||
nh3==0.3.0
|
nh3==0.3.0
|
||||||
Pillow==11.3.0
|
Pillow==11.3.0
|
||||||
psycopg[c,pool]==3.2.9
|
psycopg[c,pool]==3.2.10
|
||||||
PyYAML==6.0.2
|
PyYAML==6.0.2
|
||||||
requests==2.32.5
|
requests==2.32.5
|
||||||
rq==2.5.0
|
rq==2.6.0
|
||||||
social-auth-app-django==5.5.1
|
social-auth-app-django==5.5.1
|
||||||
social-auth-core==4.7.0
|
social-auth-core==4.7.0
|
||||||
sorl-thumbnail==12.11.0
|
sorl-thumbnail==12.11.0
|
||||||
strawberry-graphql==0.281.0
|
strawberry-graphql==0.282.0
|
||||||
strawberry-graphql-django==0.65.1
|
strawberry-graphql-django==0.65.1
|
||||||
svgwrite==1.4.3
|
svgwrite==1.4.3
|
||||||
tablib==3.8.0
|
tablib==3.8.0
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user