CVE and update status of the FreeBSD ports tree3,295 unaddressed CVEs in 670 portsAll times are CET
Port details

net-mgmt/py-napalm 5.2.0

Net Automation and Progr. Abstraction Layer with Multivendor support

Port info

Maintainer
kai@FreeBSD.org
Packages
latest: 5.2.0
Upstream
up to date
Last update
to 5.2.0 · 3629424206
Quarterly
2026Q4: 5.2.0
WWW
https://github.com/napalm-automation/napalm
Links
cgit · VuXML

Install

Package
# pkg install py312-napalm
installs 5.2.0 from latest; from quarterly (2026Q4) 5.2.0
Port
# cd /usr/ports/net-mgmt/py-napalm && make install clean
Size
454 KiB download · 2.9 MiB installed
Depends on
devel/py-Jinja2 3.1.6, devel/py-lxml 6.1.3, devel/py-pyyaml 6.0.3_1, devel/py-typing-extensions 4.16.0, lang/python312 3.12.15, net-mgmt/py-junos-eznc 2.7.6, net-mgmt/py-ncclient 0.7.0, net-mgmt/py-netutils 1.19.1, net-mgmt/py-pyeapi 1.0.4_1, net/py-netaddr 1.3.0, security/py-netmiko 4.7.0, security/py-paramiko 3.5.1_2, textproc/py-textfsm 2.1.0, textproc/py-ttp 0.10.1, textproc/py-ttp-templates 0.6.4, www/py-requests 2.34.2
License
APACHE20
pkg-message
Shown after upgrading
Release 3.0.0 introduced support for the Arista FN 0039 command changes (Github
issue #1093), by replacing the old style commands with the new style commands.

This also affected the way NAPALM loads the configuration on the device (i.e.,
it would transform the configuration before loading).

In order to prevent this, and avoid unexpected results, a new optional argument
"eos_fn0039_config" was introduced, defaulting to "False", which can be used to
select whether NAPALM should convert the configuration command before loading.

By default, NAPALM won't transform the configuration, but setting the variable
"eos_fn0039_config" to "True" it would help one to transition to newer EOS
versions.

Packages by version and architecture

latest

FreeBSD versionamd64aarch64i386
FreeBSD 165.2.05.2.0–
FreeBSD 155.2.05.2.0–
FreeBSD 145.2.05.2.05.2.0

quarterly (2026Q4)

FreeBSD versionamd64aarch64i386
FreeBSD 155.2.05.2.0–
FreeBSD 145.2.05.2.05.2.0

version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.

Unaddressed and VuXML only (0)

No unaddressed CVE and nothing reported by pkg audit for the packaged version 5.2.0.

Fixed (0)

No VuXML entries for this package.

Problem reports (0) · open in Bugzilla, most recently changed first

None.

Commits (33)

Kai Knoblich (kai) · 5.2.0
net-mgmt/py-napalm: Update to 5.2.0

Changelog:

https://github.com/napalm-automation/napalm/releases/tag/5.2.0
3629424206
Kai Knoblich (kai) · 5.1.0
net-mgmt/py-napalm: Update to 5.1.0

* Switch to the PEP517 build framework to make it future-proof
  while I'm here.

Changelog:

https://github.com/napalm-automation/napalm/releases/tag/5.1.0

PR:		293438
Co-Authored-by: Kai Knoblich <kai@FreeBSD.org>
581221552f
Vsevolod Stakhov (vsevolod) · 5.0.0_5
security/libsodium: Update to 1.0.21

The API remains compatible but bumping all dependent ports as SHLIB
has changed.

Changelog: https://github.com/jedisct1/libsodium/releases/tag/1.0.21-RELEASE
Security: https://00f.net/2025/12/30/libsodium-vulnerability/
PR: 279347
8b878d88b4
Hiroki Tagato (tagattie) · 5.0.0_4
*/*: switch dependency from devel/py-lxml5 to devel/py-lxml

Currently, there are two versions of python XML processing library
which conflict each other in the ports tree, namely:
- devel/py-lxml5 (now at version 5.4.0)
- devel/py-lxml  (now at version 6.0.1)

To avoid the situation that some ports depend on py-lxml5 and some
others do on py-lxml (by switching dependencies individually), this
commit switches the dependencies from py-lxml5 to py-lxml at once.

Additional note: There are still two ports (textproc/py-rdflib and
www/py-draftjs-exporter) depending on py-lxml5 since they limit upper
version to less than 6.

PR:		289491
Approved by:	Michiel van Baak Jansen <michiel@vanbaak.eu>, arrowd,
		crees, madpilot, delphij, marcus, nivit, kai,
		skreuzer, fluffy, bofh, thierry, stephen, sunpoet,
		0mp, Eric Camachat <eric@camachat.org>
a6233e5a2f
Hiroki Tagato (tagattie) · 5.0.0_3
*/*: update dependency on devel/py-lxml to devel/py-lxml5 (2nd attempt)

This is a follow up to the commit 230fb2661c78, which updated some
ports' dependencies on devel/py-lxml to devel/py-lxml5. It was an
attempt to follow the dependency change of
www/py-beautifulsoup. However, the switch was incomplete and broke
some other ports.

It has turned out that the ports depending on devel/py-lxml (at
version 4.9.3) does not limit their dependencies' upper bound to 4.x
except for one (devel/py-pymaven-patch). So updating them to
devel/py-lxml5 (at version 5.4.0) should cause no harm.

This commit switch dependencies of all the ports (except
devel/py-pymaven-patch) to devel/py-lxml5 avoid potential conflicts.

Co-authored-by: Daniel Engberg <diizzy@FreeBSD.org>

PR:		287144, 288047
Reported by:	makc (via ports-committers),
		vvd (PR 288047),
		diizzy (PR 287144)
Approved by:	portmgr (chase dependency change, unbreak build)
Fixes:		230fb2661c78 (*/*: update dependency on devel/py-lxml to devel/py-lxml5)
0b0f7cda9d
Charlie Li (vishwin) · 5.0.0_2
python: bump all USE_PYTHON=distutils consumers after RUN_DEPENDS removal

Any missed ports, feel free to bump.

Any ports that need setuptools at runtime can have the devel/py-setuptools
manually added back to RUN_DEPENDS, but understand that this practice
is deprecated; see CHANGES for details.
06a08e69f3
Po-Chuan Hsieh (sunpoet) · 5.0.0_1
devel/py-pyyaml: Move devel/py-yaml to devel/py-pyyaml

- Bump PORTREVISION of dependent ports for dependency change
1a80ec7c22
Kai Knoblich (kai) · 5.0.0
net-mgmt/py-napalm: Update to 5.0.0

* Convert the test suite to USE_PYTHON=pytest while I'm here.

Changelog:

https://github.com/napalm-automation/napalm/releases/tag/5.0.0

MFH:		No (contains breaking changes)
89b087b1d4
Vsevolod Stakhov (vsevolod) · 4.1.0_1
security/libsodium: update to 1.0.19, bump dependent ports

PR:	278259
Reported by:	Andrey Korobkov <alster-vinterdalen.se>
b66e4949cb
Rene Ladan (rene) · 4.1.0
all: remove explicit versions in USES=python for "3.x+"

The logic in USES=python will automatically convert this to 3.8+ by
itself.

Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.

finance/quickfix: mark BROKEN with PYTHON

libtool: compile:  c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++ -DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable -Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi -Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings -Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x -MT _quickfix_la-QuickfixPython.lo -MD -MP -MF .deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp  -fPIC -DPIC -o .libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean '-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
          ^~~~~~~~~~
1 warning and 1 error generated.

Reviewed by:	portmgr, vishwin, yuri
Differential Revision:	<https://reviews.freebsd.org/D40568>
3d9a815d9c
Kai Knoblich (kai) · 4.1.0
net-mgmt/py-napalm: Update to 4.1.0

* Remove a no longer required patch.

Changelog:

https://github.com/napalm-automation/napalm/releases/tag/4.1.0
177589b953
Stefan Eßer (se) · 4.0.0
Remove WWW entries moved into port Makefiles

Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.

This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.

Approved by:		portmgr (tcberner)
fb16dfecae
Stefan Eßer (se) · 4.0.0
Add WWW entries to port Makefiles

It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.

Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.

There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.

This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.

There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.

The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.

Approved by:		portmgr (tcberner)
b7f05445c0
Kai Knoblich (kai) · 4.0.0
net-mgmt/py-napalm: Update to 4.0.0

Changelog:

https://github.com/napalm-automation/napalm/releases/tag/4.0.0

MFH:		No (feature release, requires newer version of NetMiko)
f81111b7b6
Kai Knoblich (kai) · 3.4.0
net-mgmt/py-napalm: Update to 3.4.0

Changelog:

https://github.com/napalm-automation/napalm/releases/tag/3.4.0
2df6f6207d
Kai Knoblich (kai) · 3.3.1
net-mgmt/py-napalm: Limit Python versions

* Prepare the port by limiting the Python version to 3.7+ for the
  imminent update of net-mgmt/py-ciscoconfparse which also require this.
ebebd2fa00
Kai Knoblich (kai) · 3.3.1
net-mgmt/py-napalm: Update to 3.3.1

* Modernize "do-test" target while I'm here.

Changelogs since 3.2.0:

https://github.com/napalm-automation/napalm/releases/tag/3.3.1
https://github.com/napalm-automation/napalm/releases/tag/3.3.0

MFH:		2021Q3
3c88c6ce28
Mathieu Arnold (mat) · 3.2.0
One more small cleanup, forgotten yesterday. Reported by:	lwhsu
cf118ccf87
Mathieu Arnold (mat) · 3.2.0
Remove # $FreeBSD$ from Makefiles.
305f148f48
Kai Knoblich (kai) · 3.2.0
net-mgmt/py-napalm: Update to 3.2.0

Changelog:

https://github.com/napalm-automation/napalm/releases/tag/3.2.0
e337eb504f
Kai Knoblich (kai) · 3.1.0
net-mgmt/py-napalm: Update to 3.1.0

Changelog:

Core changes:
* Fix: force_no_enable enabled on ios and nx only
* lxml text retrieval (find_txt) shouldn't fail if no text element available

NX-OS:
* Initial version for nxos_ssh get_optics
* Fixed get_bgp_neighbors and asdot notation on NX-OS

Junos:
* Fix "KeyError in get_environment() on Juniper MX10k3 with Junos 19.2R1.8
  by making PEM naming consistent

IOS
* Fix get_optics metric
* Allow username detection on older Cisco ios versions

https://github.com/napalm-automation/napalm/releases/tag/3.1.0

MFH:		2020Q3
f5d2c2d0ce
Kai Knoblich (kai) · 3.0.1
net-mgmt/py-napalm: Update to 3.0.1:

* Add some instructions to cope with the command changes that were
  introduced to newer versions of Arista EOS.

Changelog:

Junos:
* Close configuration in case "configure_private" is set to avoid configure
  session to stay forever

IOS:
* "get_interfaces_counters" broken with Managment Interface
* "get_optics" does not work on VSS setup
* "get_optics" broken if input value is N/A

NXOS:
* Fix "cmd_verify" and null character

https://github.com/napalm-automation/napalm/releases/tag/3.0.1

MFH:		2020Q2 (Blanket: Bugfix release)
a25c92e26a
Kai Knoblich (kai) · 3.0.0
net-mgmt/py-napalm: Update to 3.0.0

* Remove the patch that fixed some issues with net-mgmt/py-junos-eznc as it
  has been merged by upstream.

  Get rid of the post-patch target as well because it's no longer required.

Changelog with some notable changes/fixes:

General:
* Integrated nxapi_plumbing and pyIOSXR into NAPALM.
* Updated support for TwoGigabit & TwentyFiveGig interfaces to
  canonical_map.py

NXOS:
* Fix exception when trying to get environmental data from certain Nexus
  devices

IOS:
* Fix traceroute output parsing in ios
* Fix vrf detection when no vrf is defined
* Fix show interfaces summary for 10/40/100 Gig Interfaces
* Fix get_bgp_neighbors_detail

IOS-XE:
* Update to handle Cisco ISR mac address table with multiple EHWIC modules
  installed

IOS-XR:
* Add support for XML namespace prefixes in find_txt

Junos:
* Added auto_probe optional argument
* Add support for configure private in Junos
* SRX cluster devices stack RPC replies under multi-routing-engine-results

https://github.com/napalm-automation/napalm/releases/tag/3.0.0

MFH:		2020Q2
17e86403cd
Kai Knoblich (kai) · 2.5.0
net-mgmt/py-{napalm,pyIOSXR}: Drop support for Python 2.7 and 3.5

Prepare both ports for the 3.0.0 release of security/py-netmiko, which
dropped support for Python 2.7 and 3.5, to avoid errors when using
"bulk -a".
4497424fb9
Kai Knoblich (kai) · 2.5.0
net-mgmt/py-napalm: Update to 2.5.0

* Add a patch that fixes the unittests with net-mgmt/py-junos-eznc >= 2.3.0

* Switch to GitHub for a while to make use of the test-suite that isn't
  available in the sdist, yet.

* Add "do-test" target to make future QA easier.

Changelog:

Note: This is the last release supporting Python 2. Going forward, only
      Python 3.6+ will be supported.

https://github.com/napalm-automation/napalm/releases/tag/2.5.0

MFH:		2019Q4
49a457a820
Antoine Brodin (antoine) · 2.4.0_1
Bump a few PORTREVISIONs after r498529

With hat:	portmgr
63f5eeef8a
Kai Knoblich (kai) · 2.4.0
net-mgmt/py-napalm: Update to 2.4.0

While I'm here:
* Add location to license file

Changelog:

* Many bugfixes and improvements (total count of 42 to be exact)

https://github.com/napalm-automation/napalm/releases/tag/2.4.0

Approved by:	tcberner (mentor)
Differential Revision:	https://reviews.freebsd.org/D19439
6100706e6e
Kai Knoblich (kai) · 2.3.3
Change my maintainer email address to my new one at the FreeBSD project.

Reviewed by:	miwi (mentor)
Approved by:	miwi (mentor)
Differential Revision: https://reviews.freebsd.org/D19050
6a4a5116bf
Steve Wills (swills) · 2.3.3
net-mgmt/py-napalm: Update to 2.3.3

PR:		232882
Submitted by:	Kai <freebsd_ports@k-worx.org> (maintainer)
af798368d6
Steve Wills (swills) · 2.3.2
net-mgmt/py-napalm: Update to 2.3.2

PR:		231091
Submitted by:	Kai <freebsd_ports@k-worx.org> (maintainer)
f5450f5b78
Mathieu Arnold (mat) · 2.3.1
Use PY_FLAVOR for dependencies.

FLAVOR is the current port's flavor, it should not be used outside of
this scope.

Sponsored by:	Absolight
4376dbbb58
Jochen Neumeister (joneum) · 2.3.1
net-mgmt/py-napalm: update to 2.3.1

Changelog: https://github.com/napalm-automation/napalm/releases/tag/2.3.1

PR:		227503
Submitted by:	Kai <freebsd_ports@k-worx.org> (maintainer)
b0167717a4
Yuri Victorovich (yuri) · 2.3.0
New port: net-mgmt/py-napalm: Net Automation and Progr. Abstraction Layer with Multivendor support

PR:		227098
Submitted by:	Kai <freebsd_ports@k-worx.org>
eb9f30d872