From nobody Wed Mar 4 09:22:35 2026 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4fQnJC3Fjwz6TDnJ for ; Wed, 04 Mar 2026 09:22:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fQnJC18d0z44Hs for ; Wed, 04 Mar 2026 09:22:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1772616155; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KjgnRDf0/Kku0Ol2qItXRIsXhgSD293QkkZQtyohtoo=; b=RMLSh0t5KazSUGtVo2FBq/cz5K1DCy/rtnodTUtUnzQ8WwIXHa3MIgLMKh33IEDY/bkccR FIPI50bT8pmoZqk/huIO7pxt2h/Wi654FC6IxGAXbjIhuZMiEyud+Oh0auJMNLUJMJc5Gu pafj/IVUVKQAbgm8GQFVWmmdpdX1Deh9f5DIpVMsJ4zgjo7hE1huCOLOm6CRmzriOHtqEN GFRxbR4Q5KWwf3mem38+kYV6GNrtIzAvDxR5tPIf03wpWuQORH5qn0YAr2VOGwbsVrGxrS WabsUHxv7dST0zaPb+1L3xIVemJ9d0HmPL2zs5Imzl+1gT+yrZXGH1/3iYUrvw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1772616155; a=rsa-sha256; cv=none; b=Bw4DtB4wkJhuj2K9ewR7cKmpqKuI9muqL/6Q8Ul0Xu7RhFxXIgKdOSyF1hNm3y8EIGLQQg w8wV4FnExowrDa30Xf1MLAODY+Y56oA6kFgT104IhcUhomOAdM3EQiDCa0+qpVdAtS2aUW HF+dHbcCWAFAQAFVYTMEdzHiheBOmcr1PorgLTNj1oaXZqh5/OpjpwlhTl0mlOgfxHQnXV Ud+f3lqj/S+4Eog32uLBTJ+ocTNHbX9H/z8W47Gg6BgGpHw1y+XlZctAP7S1fQc462ZqpL BImdfAs0wi2ZxiNNU9QMeLdiow3oJWZH2TZSokKtObD6bpA2ThUEWj+ebGdhqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1772616155; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KjgnRDf0/Kku0Ol2qItXRIsXhgSD293QkkZQtyohtoo=; b=Xmavxj7VlExhKmROtyDOtadZEiKqKU8uuSY6nb8onaOneqMkFfhZwtgHMncqK5tiM4+Qok UGC+LFpaDFm5CV5lLIZxUkAJn3HDOUxELZfRcWxvlO0VGJCu3cx8FuNO408tYFzwxHYBl8 eO0NhfluHznH3CXJuHeSsprQvZE9kUnG1YZ0EJiHt7xw8mlIjW1wCqqwlkzHq/1OU/2VQr o2bmuQ8lFSHkRSMcapjTJU68Zs8/muLR0kXY7FTVbWMxXpVLHf0L4x19R/RscFIGSOYzEL 58cCRLZp/nXsIsFlU2yljP6VoBup/fHe793Wq/gqFAUIgnS8Z23ZsQvqkT8ZRA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fQnJC0Y1QzkrV for ; Wed, 04 Mar 2026 09:22:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 35ee1 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 04 Mar 2026 09:22:35 +0000 To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Kai Knoblich Subject: git: a08bcb53da1a - main - net-mgmt/netbox: Update to 4.5.4 List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-main@freebsd.org Sender: owner-dev-commits-ports-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kai X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a08bcb53da1a746d47d5fc226792578b52e382e9 Auto-Submitted: auto-generated Date: Wed, 04 Mar 2026 09:22:35 +0000 Message-Id: <69a7f9db.35ee1.75dd0b5f@gitrepo.freebsd.org> The branch main has been updated by kai: URL: https://cgit.FreeBSD.org/ports/commit/?id=a08bcb53da1a746d47d5fc226792578b52e382e9 commit a08bcb53da1a746d47d5fc226792578b52e382e9 Author: Kai Knoblich AuthorDate: 2026-03-04 09:20:39 +0000 Commit: Kai Knoblich CommitDate: 2026-03-04 09:20:39 +0000 net-mgmt/netbox: Update to 4.5.4 * With the NetBox 4.5 release Python 3.10 and 3.11 are officially no longer supported. The whole code can still be compiled without any problems using Python 3.11, which is the current default version in the ports tree. Therefore, the minimum version for Python doesn't need to be raised for the time being, but this may change at any time as soon as backward-incompatible changes to the code lands into upstream for the next release. * Also prune update instructions for NetBox releases older than 3.5 while I'm here. Netbox 4.5 contains many bugfixes/enhancements and the following new features: * Lookup Modifiers in Filter Forms * Improved API Authentication Tokens * Object Ownership * Advanced Port Mappings * Cable Profiles https://netbox.readthedocs.io/en/stable/release-notes/version-4.5/ MFH: No (feature release) --- net-mgmt/netbox/Makefile | 39 ++-- net-mgmt/netbox/distinfo | 6 +- .../netbox/files/patch-netbox_netbox_settings.py | 17 ++ net-mgmt/netbox/files/pkg-message.in | 238 +++++---------------- net-mgmt/netbox/pkg-plist | 142 +++++++++++- 5 files changed, 234 insertions(+), 208 deletions(-) diff --git a/net-mgmt/netbox/Makefile b/net-mgmt/netbox/Makefile index ab6064fecb1e..66a5316e8208 100644 --- a/net-mgmt/netbox/Makefile +++ b/net-mgmt/netbox/Makefile @@ -1,6 +1,6 @@ PORTNAME= netbox DISTVERSIONPREFIX= v -DISTVERSION= 4.4.10 +DISTVERSION= 4.5.4 CATEGORIES= net-mgmt python MAINTAINER= kai@FreeBSD.org @@ -23,50 +23,51 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt # - www/py-dj52-django-tables2 # - www/py-dj52-djangorestframework # -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=5.2.9<5.3:www/py-django52@${PY_FLAVOR} \ +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=5.2.11<5.3:www/py-django52@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-cors-headers>=4.9.0<5:www/py-dj52-django-cors-headers@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj52-django-debug-toolbar>=6.1.0<7:www/py-dj52-django-debug-toolbar@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dj52-django-debug-toolbar>=6.2.0<7:www/py-dj52-django-debug-toolbar@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-filter>=25.2<26:www/py-dj52-django-filter@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-htmx>=1.27.0<2:www/py-dj52-django-htmx@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj52-django-mptt>=0.17.0<0.18:www/py-dj52-django-mptt@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dj52-django-mptt>=0.18.0<0.19:www/py-dj52-django-mptt@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-prometheus>=2.4.1<2.5:www/py-dj52-django-prometheus@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-redis>=6.0.0<7:www/py-dj52-django-redis@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-rich>=2.2.0<3:www/py-dj52-django-rich@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj52-django-rq>=3.2.1<3.3:devel/py-dj52-django-rq@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dj52-django-rq>=3.2.2<3.3:devel/py-dj52-django-rq@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-storages>=1.14.6<2:www/py-dj52-django-storages@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-tables2>=2.8.0<2.9:www/py-dj52-django-tables2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-taggit>=6.1.0<7:www/py-dj52-django-taggit@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-django-timezone-field>=7.2.1<8:www/py-dj52-django-timezone-field@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-djangorestframework>=3.16.1<3.17.0:www/py-dj52-djangorestframework@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-drf-spectacular>=0.29.0<1:www/py-dj52-drf-spectacular@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj52-drf-spectacular-sidecar>=2026.1.1:www/py-dj52-drf-spectacular-sidecar@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dj52-drf-spectacular-sidecar>=2026.3.1:www/py-dj52-drf-spectacular-sidecar@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}dj52-social-auth-app-django>=5.7.0<6:www/py-dj52-social-auth-app-django@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj52-sorl-thumbnail>=12.11.0<13:graphics/py-dj52-sorl-thumbnail@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj52-strawberry-graphql>=0.288.2<0.300:devel/py-dj52-strawberry-graphql@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}dj52-strawberry-graphql-django>=0.73.0<1:www/py-dj52-strawberry-graphql-django@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dj52-sorl-thumbnail>=13.0.0<14:graphics/py-dj52-sorl-thumbnail@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dj52-strawberry-graphql>=0.307.1<1:devel/py-dj52-strawberry-graphql@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dj52-strawberry-graphql-django>=0.79.0<1:www/py-dj52-strawberry-graphql-django@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}django-pglocks>=1.0.4<1.1:www/py-django-pglocks@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}colorama>=0.4.6<1:devel/py-colorama@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}feedparser>=6.0.12<7:textproc/py-feedparser@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}Jinja2>=3.1.6<4:devel/py-Jinja2@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}jsonschema>=4.25.1<5:devel/py-jsonschema@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}markdown>=3.9<3.11:textproc/py-markdown@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}mkdocs-material>=9.7.1<10:textproc/py-mkdocs-material@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}mkdocstrings>=1.0.0<2:textproc/py-mkdocstrings@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}mkdocstrings-python>=2.0.1:textproc/py-mkdocstrings-python@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}jsonschema>=4.26.0<5:devel/py-jsonschema@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}markdown>=3.10<4:textproc/py-markdown@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}mkdocs>=1.6.1<2:textproc/py-mkdocs@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}mkdocs-material>=9.7.3<10:textproc/py-mkdocs-material@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}mkdocstrings>=1.0.3<2:textproc/py-mkdocstrings@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}mkdocstrings-python>=2.0.2:textproc/py-mkdocstrings-python@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}netaddr>=1.3.0<2:net/py-netaddr@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}nh3>=0.3.2<1:www/py-nh3@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}nh3>=0.3.3<1:www/py-nh3@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pillow>=11.3.0:graphics/py-pillow@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}psycopg>=3.2.13<4:databases/py-psycopg@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}psycopg-c>=3.2.13<4:databases/py-psycopg-c@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}psycopg-pool>=3.3.0<4:databases/py-psycopg-pool@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>=2.32.5<3:www/py-requests@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}rq>=2.6.1<3:devel/py-rq@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}social-auth-core>=4.8.3<5:security/py-social-auth-core@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}rq>=2.7.0<3:devel/py-rq@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}social-auth-core>=4.8.5<5:security/py-social-auth-core@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}svgwrite>=1.4.3<2:graphics/py-svgwrite@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}tablib>=3.9.0<4:textproc/py-tablib@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}tzdata>=2025.2:devel/py-tzdata@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}tzdata>=2025.3:devel/py-tzdata@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyyaml>=6.0.3<7:devel/py-pyyaml@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}gunicorn>=23.0.0<26:www/py-gunicorn@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}gunicorn>=25.1.0<26:www/py-gunicorn@${PY_FLAVOR} USES= cpe pgsql:14+ python CPE_VENDOR= netbox diff --git a/net-mgmt/netbox/distinfo b/net-mgmt/netbox/distinfo index 11f5493d55e4..cc01fb385b83 100644 --- a/net-mgmt/netbox/distinfo +++ b/net-mgmt/netbox/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1767722253 -SHA256 (netbox-community-netbox-v4.4.10_GH0.tar.gz) = cbe9c196e37c0586d5e92480d326f9ec014636e7b0455c96025d1f906458bb8c -SIZE (netbox-community-netbox-v4.4.10_GH0.tar.gz) = 19526255 +TIMESTAMP = 1772571417 +SHA256 (netbox-community-netbox-v4.5.4_GH0.tar.gz) = a00197bf7b479879c79198eccfad4cd4517c72b66c40ea4a3d6f4753ee2afd9c +SIZE (netbox-community-netbox-v4.5.4_GH0.tar.gz) = 19296476 diff --git a/net-mgmt/netbox/files/patch-netbox_netbox_settings.py b/net-mgmt/netbox/files/patch-netbox_netbox_settings.py new file mode 100644 index 000000000000..e6d0b3286751 --- /dev/null +++ b/net-mgmt/netbox/files/patch-netbox_netbox_settings.py @@ -0,0 +1,17 @@ +Remove check for Python < 3.12 + +--- netbox/netbox/settings.py.orig 2026-03-03 21:01:30 UTC ++++ netbox/netbox/settings.py +@@ -33,12 +33,6 @@ BASE_DIR = os.path.dirname(os.path.dirname(os.path.abs + # Set the base directory two levels up + BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + +-# Validate the Python version +-if sys.version_info < (3, 12): # noqa: UP036 +- raise RuntimeError( +- f"NetBox requires Python 3.12 or later. (Currently installed: Python {platform.python_version()})" +- ) +- + # + # Configuration import + # diff --git a/net-mgmt/netbox/files/pkg-message.in b/net-mgmt/netbox/files/pkg-message.in index 2dc5df901849..2a61e4e19824 100644 --- a/net-mgmt/netbox/files/pkg-message.in +++ b/net-mgmt/netbox/files/pkg-message.in @@ -33,186 +33,6 @@ The following steps are required to finish the upgrade: 2. Restart WSGI/httpd environment (supervisord/apache/nginx/etc.) EOD } -{ type: upgrade - maximum_version: 3.2.4 - message: <