netplan.io (0.107.1-3ubuntu0.22.04.3) jammy; urgency=medium
* debian/patches/lp2139598-execute-udev-rules-before-sriov-apply-service.patch:
execute udev rules before starting sriov apply service (LP: #2139598)
-- Robert Malz <robert.malz@canonical.com> Tue, 03 Mar 2026 12:18:29 +0100
netplan.io (0.107.1-3ubuntu0.22.04.2) jammy; urgency=medium
* debian/patches/lp1988018: VF-LAG activation
Fixes the order in which SR-IOV configuration is performed and
cooperates with VF-LAG activation (LP: #1988018).
* debian/patches/lp2020409:
Enables setting the embedded-switch mode without having to define
virtual functions (LP: #2020409).
* debian/libnetplan0.symbols: New symbol _netplan_netdef_get_bond_mode.
-- Danilo Egea Gondolfo <danilo.egea.gondolfo@canonical.com> Mon, 07 Oct 2024 10:57:38 +0100
netplan.io (0.107.1-3ubuntu0.22.04.1) jammy; urgency=medium
* Backport netplan.io 0.107.1-3 to 22.04 (LP: #2058031):
- Support for "dummy" (`dummy-devices`) interfaces (LP: 1774203) (!361)
- Support for "veth" (`virtual-ethernets`) interfaces (!368)
- Add Python bindings for libnetplan (!385)
- netplan: Handle command exceptions (!334)
- WPA3 (personal) support (LP: 2023238) (!369)
- Add all the commands to the bash completion file (LP: 1749869) (!326)
- New submodule for state manipulation (!379)
- commands/status: show routes from all routing tables (!390)
- cli:status: Make rich pretty printing optional (!388)
- libnetplan: expose dhcp4 and dhcp6 properties (!394)
- Expose macaddress and DNS configuration from the netdef (!395)
- libnetplan: expose the routes list in the netdef (!397)
- NetworkManager: Wireguard private key flag support (!371)
- Add a netplan_parser_load_keyfile() Python binding (!351)
- keyfile parser: add support for all tunnel types (LP: 2016473) (!360)
- parse-nm:wg: add support for reading the listen-port property (!372)
- parse-nm: add support for VRF devices (!398)
- Vlan keyfile parser support (!370)
- Netplan docs rework (!333 & !337)
- docs: Add a short netplan-everywhere howto (!325)
- doc: make us of sphinx copybutton plugin (!354)
- doc: Add Ubuntu Code of Conduct 2.0 (!355)
- doc: Explanation about 00-network-manager-all.yaml (!378)
- wifi: add support for WPA3-Enterprise (LP: 2029876) (!402)
- wifi: support WPA2 and WPA3 Personal simultaneously (!404)
- added mii-monitor-interval example (!411)
- docs: Add "Contribute Documentation" how-to
- auth: add support for LEAP and EAP-PWD (!415)
- tests: Add autopkgtest for (LP: 1959570) (!419)
- wifi: make it possible to have a psk and an eap password simultaneously
(!416)
- doc: Set-up some basic Doxygen project (!423)
- doc: Make Sphinx to handle autodoxygen project, using breathe (!423)
- doc: create libnetplan apidoc structure (!423)
- inc: Start documenting public API (!423)
- doc: Update 'Netplan everywhere' for 23.10 (!418)
SECURITY UPDATE: weak permissions on secret files, command injection
- d/p/lp2065738/0014-libnetplan-use-more-restrictive-file-permissions.patch:
Use more restrictive file permissions to prevent unprivileged users to
read sensitive data from back end files (LP: 2065738, 1987842)
- CVE-2022-4968
- d/p/lp2066258/0015-libnetplan-escape-control-characters.patch:
Escape control characters in the parser and double quotes in backend
files.
- d/p/lp2066258/0016-backends-escape-file-paths.patch:
Escape special characters in file paths.
- d/p/lp2066258/0017-backends-escape-semicolons-in-service-units.patch:
Escape isolated semicolons in systemd service units. (LP: 2066258)
- debian/netplan-generator.postinst: Add a postinst maintainer script to
call the generator. It's needed so the file permissions fixes will be
applied automatically.
Bug fixes:
- Fix FTBFS on Fedora and refresh RPM packaging (!323)
- parser: validate lacp-rate properly (LP: 1745648) (!324)
- use meson-make-symlink.sh helper instead of install_symlink() (!327)
- netplan: cli: fix typo from 'unkown' to 'unknown' (!328)
- Handle duplication during parser second pass (LP: 2007682) (!329)
- parse:ovs: Ignore deprecated OpenFlow1.6 protocol (LP: 1963735) (!332)
- dbus: Build the copy path correctly (!331)
- tests: add new spread based snapd integration test (!330)
- Use controlled execution environment, to avoid failure if PATH is unset
(LP: 1959570) (!336)
- Some refactoring (!338)
- netplan: adjust the maximum buffer size to 1MB (!340)
- parse: use "--" with systemd-escape (!347)
- docs: fix bridge parameters types and add examples (!346)
- vrfs: skip policies parsing if list is NULL (LP: 2016427) (!341)
- networkd: plug a memory leak (!344)
- libnetplan: don't try to read from a NULL file (!342)
- nm: return if write_routes() fails (!345)
- parse: plug a memory leak (!348)
- parse: set the backend on nm-devices to NM (!349)
- parse: don't point to the wrong node on validation (!343)
- rtd: set the OS and Python versions explicitly (!357)
- Fix 8021x eap method parsing (LP: 2016625) (!358)
- CI: update canonical/setup-lxd to v0.1.1 (!359)
- CI: fix dch after adding the new 0.106.1 tag (!364)
- Provide frequency to wpa_supplicant in adhoc mode (LP: 2020754) (!363)
- Improve the coverage of the memory leak tests (!365)
- Fix keyfile parsing of wireguard config (!366)
- routes: fix metric rendering (LP: 2023681) (!367)
- CI: add DebCI integration test (!362)
- CI: initial NetworkManager autopkgtests (!374)
- parse-nm: handle cloned-mac-address special cases (LP: 2026230) (!376)
- Improve autopkgtest stability with systemd 253 & iproute 6.4 (!377)
- Fixes for minor issues (!380)
- tests:integration: Adopt for systemd v254 (Closes: #1041310) (!381)
- parse: Downgrade NM passthrough warning to debug (!384)
- Don't drop files with just global values (LP: 2027584) (!382)
- Fixing Coverity issues (!383)
- CLI: Refactoring to avoid namespace clash with public bindings (!387)
- tests: fix test coverage report with newer python-coverage (!389)
- github: add a scheduled action to run Coverity (!391)
- github: only run the coverity workflow on our repository (!392)
- Addressing a few issues found (!393)
- Wireguard fixes (!352)
- Fix a memory leak, an assert and an error message (!350)
- ovs: don't allow peers with the same name (!353)
- CI: make use of the canonical/setup-lxd action (!356)
- test:ovs: Avoid NetworkManager taking contol, breaking a test
- parse: allow COMMON_LINK_HANDLERS for VRFs (!401)
- util: don't return a placeholder netdef in the iterator (!406)
- tunnels/validation: do not error out if "local" is not defined (!407)
- tests: add some integration tests without the local address (!407)
- wireguard: ignore empty endpoints (LP: 2038811) (!414)
- parse: improve the parsing of access-points (LP: 1809994) (!413)
- wifi: replace the previously defined AP with the new one (!413)
- doc: spelling check improvements (!417)
- Fix permissions on folder '/run/NetworkManager/' (!422)
- cli:try: avoid linting error for type hints (Closes: #1058524) (!422)
- nm-parse: always read the PSK into the new psk variable (!416)
- networkd: fix formatting (!424)
- networkd: replace deprecated CriticalConnection= by KeepConfiguration=
(!424)
- networkd: move KeepConfiguration= into [Network] section
- apply: bring "lo" back up if it's managed by NM (!408)
- apply: don't assume the NM loopback connection is called "lo" (!408)
Packaging restructuring:
- Split netplan-generator into separate package to make the Python
dependency optional.
- Split python3-netplan bindings into a separate package
* Add patches for bug fixes from netplan.io 1.0-1 and 1.0.1-1:
- debian/patches/lp2041727:
Check if ovsdb-server.service is active before displaying warning
(LP: 2041727) (!421)
- d/p/0004-tests-assert-generated-.service-files-in-assert_srio.patch,
d/p/0005-tests-sriov-test-if-the-generated-netplan-rebind-ser.patch,
d/p/0006-sriov-don-t-generate-duplicate-entries-in-the-rebind.patch:
Don't generate duplicate entries in the netplan-sriov-rebind.service
(!437)
- d/p/0017-emitter-allow-unicode-characters-in-the-emitter.patch.
Allow non-ascii characters in the YAML emitter (LP: 2071652) (!485).
- d/p/0018-parse-do-not-escape-all-non-ascii-bytes.patch.
Don't escape all non-ascii bytes (!486).
* Drop patches not required for 22.04:
- debian/patches/python-limited-stable-api.patch
- d/p/sru-compat/0013-Keep-old-file-permission-for-backwards-compatibility.patch.
From now on we want libnetplan to create files with tight permissions.
* Add patches for SRU backwards compatibility:
- 0014-Demote-lacp-rate-validation-error-to-warning-for-bac.patch:
Convert the error to a warning in a new validation for the option
'lacp-rate' to prevent breaking existing setups
* debian/control:
- Drop python3-rich dependency to Suggests
- Drop build dependency on systemd-dev
* debian/netplan.io.preinst:
- This preinst script is intended to cleanup the .pyc files from
share/netplan/netplan. This directory is supposed to be removed after
the upgrade from netplan.io 0.106.1 to 0.107.1, as the Python code
was moved to it's own python3-netplan package, but it's left behind
due to Python cached files.
* Drop changes related to usr-merge and not required for 22.04
- debian/netplan-generator.install
- debian/netplan-generator.dirs
- debian/netplan-generator.postinst
- debian/netplan-generator.preinst
* d/netplan-generator.lintian-overrides, d/netplan.io.lintian-overrides:
- Drop overrides file. It wasn't really silencing any lintian warnings.
-- Danilo Egea Gondolfo <danilo.egea.gondolfo@canonical.com> Fri, 16 Aug 2024 17:59:32 +0100
netplan.io (0.106.1-7ubuntu0.22.04.4) jammy-security; urgency=medium
* SECURITY REGRESSION: failure on systems without dbus
- debian/netplan.io.postinst: Don't call the generator if no networkd
configuration file exists. (LP: #2071333)
-- Sudhakar Verma <sudhakar.verma@canonical.com> Fri, 28 Jun 2024 22:42:13 +0530
netplan.io (0.106.1-7ubuntu0.22.04.3) jammy-security; urgency=medium
* SECURITY UPDATE: weak permissions on secret files, command injection
- d/p/lp2065738/0028-libnetplan-use-more-restrictive-file-permissions.patch:
Use more restrictive file permissions to prevent unprivileged users to
read sensitive data from back end files (LP: #2065738, #1987842)
- CVE-2022-4968
- d/p/lp2066258/0029-libnetplan-escape-control-characters.patch:
Escape control characters in the parser and double quotes in backend
files
- d/p/lp2066258/0030-backends-escape-file-paths.patch:
Escape special characters in file paths
- d/p/lp2066258/0031-backends-escape-semicolons-in-service-units.patch:
Escape isolated semicolons in systemd service units (LP: #2066258)
* debian/netplan.io.postinst: Add a postinst maintainer script to call the
generator. It's needed so the file permissions fixes will be applied
automatically, thanks to danilogondolfo
-- Sudhakar Verma <sudhakar.verma@canonical.com> Mon, 24 Jun 2024 23:20:42 +0530
netplan.io (0.106.1-7ubuntu0.22.04.2) jammy; urgency=medium
* Drop d/p/sru-compat/0024-Avoid-unnecessary-export-of-API.patch.
Also, update the .symbols file, according to SRU review.
-- Lukas Märdian <slyon@ubuntu.com> Mon, 04 Sep 2023 11:17:14 +0200
netplan.io (0.106.1-7ubuntu0.22.04.1) jammy; urgency=medium
* Backport netplan.io 0.106.1-7 to 22.04 (LP: #2025519)
- New 'netplan status' CLI (!290)
- API: implement APIs from the new specification (!298)
- Check and fix non-inclusive laguange (!303)
- Documentation improvements (using Diátaxis & RTD)
- Match by PermanentMACAddress (!278)
- Netplan api iterator (!306)
- API: update netplan_delete_connection() (!322)
- NM 1.40 compat & file permission fixes (!300), LP: 1862600, LP: 1997348
- Migrate from (deprecated) nose to pytest (!302)
- parse: Add the filepath to OVS ports netdefs (!295)
- Check if the interface name is too long (!313), LP: 1988749
- doc/examples: remove unnecessary route for IPv6 on-link gateways (!312)
- Memory leak CI action (!321)
- tests:base:ethernets: Improve stability of autopkgtests (!223)
- Add all the commands to the bash completion file (LP: 1749869)
- parse-nm: fix eap_method handling (LP: 2016625)
- ovs: don't allow peers with the same name
- parse: validate NM backend settings usage
- nm: check the passthrough config format
- wireguard: plug a memory leak
- validate: drop the YAML node parameter
- parse: don't point to the wrong node on validation
- parse: set the backend on nm-devices to NM by default
- parse: plug a memory leak
- nm: return if write_routes() fails
- libnetplan: don't try to read from a NULL file
- networkd: plug a memory leak
- vrfs: skip policies parsing if list is NULL (LP: 2016427)
- parse: use "--" with systemd-escape
- netplan: adjust the maximum buffer size to 1MB
- cli:status: improve networkctl parameter passing
- cli:test: use 'text' alias instead of 'universal_newlines'
- cli:apply: use shutil.rmtree instead of 'rm -rf'
- Use controlled execution environment, to avoid failure if PATH is unset
(LP: 1959570)
- meson: fix installation of legacy /lib/netplan/generate symlink
- dbus: Use the error set by _copy_yaml_state()
- dbus: Build the copy path correctly (LP: 1997467)
- parse:ovs: Ignore deprecated OpenFlow1.6 protocol (LP: 1963735)
- parser: Don't duplicate OVS configuration (LP: 2007682)
- parser: Don't add DNS entries duplicates (LP: 2007682)
- parser: handle duplicated routing rules (LP: 2007682)
- netplan: cli: fix typo from 'unkown' to 'unknown'
- meson: cli:utils: drop legacy generator path, use libexec instead
- meson: use meson_make_symlink.sh helper instead of install_symlink()
- ATTN: parser: validate lacp-rate properly (LP: 1745648)
- parser: demote the new lacp-rate check to warning
- Don't drop files with just global values on 'set' (LP: 2027584)
d/p/0020-netplan.c-Don-t-drop-files-with-just-global-values-o.patch
- Add parser support for WPA3 Personal (LP: 2023238)
- d/patches/lp2016473: Keyfile parsing for all tunnel types, LP: 2016473
- d/p/lp2021884: WireGuard: auto append prefix to allowed IPs, LP: 2021884
- d/p/lp1997467: Improve DEP-3 headers
- Fix some memory leaks (!297)
- parser: plug a memory leak (!309)
- src:parse: plug memory leaks in nullable handling (!319)
- Fix 'netplan ip leases' crash (!301), LP: 1996941
- tests: mock calls to systemctl (!314)
- ctests: fix an integer conversion issue (!315)
- docs: small fix on netplan-set doc (!316)
- parser: return the correct error on failure (!308), LP: 2000324
- apply: Fix crash when OVS is stopped (!307),LP: 1995598
- networkd: make sure VXLAN is in the right section (!310), LP: 2000713
- cli:set: update only specific origin-hint if given (!299), LP: 1997467
- vxlan: convert some settings to tristate (!311), LP: 2000712
- parser: check for route duplicates (!320), LP: 2003061
[CI]
- CI: make use of the canonical/setup-lxd action
- Add new spread based snapd integration test
- Add some integration tests for DBus
- CI: update canonical/setup-lxd to v0.1.1
- Makefile: fully cleanup coverage data
- spread.yaml: restore /etc/netplan for each test
- tests: Don't use duplicated DNS entries (LP: 2007682)
- rpm: Refresh packaging for 0.106 and sync from Fedora
- meson: Enable finding pycoverage on RPM based distributions
- Fix ethernets,vlans,scenarios autopkgtests on systemd 254
- Fix NetworkManager interaction with systemd v253
- Fix tunnels tests with iproute 6.4, using JSON interface
- d/t/prep-testbed.sh: stop NetworkManager, to start with a common state
- autopkgtest:regressions: Simplify assertions to avoid buffering races
d/p/0018-tests-regressions-simplify-assertions-to-avoid-buffe.patch
- Increase test timeouts to fix FTBFS on mips64el and riscv64
d/p/0012-meson-Increase-test-timeout-for-slow-architectures.patch
- debian/tests: Enforce more strict integration tests.
Also, resolve the systemd-resolved issue in ethernets test.
- Add d/p/0012-meson-Increase-test-timeout-for-slow-architectures.patch
To fix FTBFS due to test timeouts on mipsel, alpha, riscv64, sparc64
- debian/tests: Fix testbed timeout with systemd v253 (Closes: #1033265)
[Docs]
- Netplan docs rework (Part 2)
- Netplan docs rework
- Add a short netplan-everywhere howto
- Add Ubuntu Code of Conduct 2.0
- rtd: set the OS and Python versions explicitly
- docs: fix bridge parameters types and add examples
* d/rules,d/control,d/libnetplan.io.install,d/libnetplan-dev.install:
Make use of meson build system and enable hardening flags.
Ship netplan.pc file and copy netplan's systemd generator to LIBEXECDIR.
* d/control: bump Standards-Version to 4.6.2, no changes needed
* d/t/control: prepare Debian testbed
* d/control: Add python3-dbus, python3-rich deps, also CMocka and Pytest B-Ds
* d/watch: fix checking for upstream tags
* d/copyright: update for 2023
* d/source/: add lintian-overrides
* d/patches/: Drop patches, applied upstream
* d/control: Cleanup list of Uploaders.
* d/control: Update Lukas' DD email address
* Revert usrmerge packaging changes for stable series
* Add patches for SRU backwards compatbility
d/p/sru-compat/cli-status-Make-rich-pretty-printing-optional-388.patch
d/p/sru-compat/validation-avoid-new-yaml_error-in-SRU.patch
d/p/sru-compat/Avoid-unnecessary-export-of-API.patch
d/p/sru-compat/Revert-ovs-don-t-allow-peers-with-the-same-name.patch
d/p/sru-compat/parse-add-comment-about-OpenFlow16-deprecation.patch
* d/t/sru-compat: Add patches for Jammy LTS backwards compatibility
* Update symbols file for 0.106.1, avoiding any unnecessary exports
* d/control: Drop python3-rich dependency to Suggests
-- Lukas Märdian <slyon@ubuntu.com> Thu, 24 Aug 2023 12:11:14 +0200
netplan.io (0.105-0ubuntu2~22.04.3) jammy; urgency=medium
* Fix and improvements for the DBus integration (LP: #1997467)
Cherry-picked from upstream: https://github.com/canonical/netplan/pull/331
- d/p/lp1997467/0009-dbus-Build-the-copy-path-correctly.patch
Properly build the destination path before copying files in the dbus
integration and improve error handling
- d/p/lp1997467/0010-tests-Add-an-integration-test-for-netplan-dbus.patch
Add an integration test to exercise the code path where the issue was
addressed.
-- Danilo Egea Gondolfo <danilo.egea.gondolfo@canonical.com> Fri, 03 Mar 2023 13:14:22 +0000
netplan.io (0.105-0ubuntu2~22.04.2) jammy; urgency=medium
* d/p/lp1997467: set only specific origin-hint if given (LP: #1997467)
Cherry-picked from upstream: https://github.com/canonical/netplan/pull/299
- d/libnetplan0.symbols: Add netplan_parser_load_nullable_overrides() API
- d/p/0008-src-parse-plug-memory-leaks-in-nullable-handling.patch backport
upstream commit 40c53bb (memory leak fixup of PR#299)
-- Danilo Egea Gondolfo <danilo.egea.gondolfo@canonical.com> Mon, 13 Feb 2023 12:40:20 +0000
netplan.io (0.105-0ubuntu2~22.04.1) jammy; urgency=medium
* Backport netplan.io 0.105-0ubuntu2 to 22.04 (LP: #1988447)
- Add support for VXLAN tunnels (#288)
- Add support for VRF devices (#285)
- Add support for InfiniBand (IPoIB) (#283)
- Allow key configuration for GRE tunnels (#274)
- Allow setting the regulatory domain (#281)
- Documentation improvements & restructuring (#287)
- Add meson build system (#268)
- Add abigail ABI compatibility checker (#269)
- Update of Fedora RPM spec (#264)
- CI improvements (#265, #282)
- Netplan `set` uses the consolidated libnetplan YAML parser (#254)
- Refactor ConfigManager to use the libnetplan YAML parser (#255)
- New `netplan_netdef_get_filepath` API (#275)
- Improve NetworkManager device management logic (#276)
* Update symbols file for 0.105
* d/patches/: Drop patches, applied upstream
* d/p/autopkgtest-fixes.patch: Refresh
* d/control: bump Standards-Version, no changes needed
* d/control, d/tests/control: suggest/add iw for setting a regulatory domain
* d/control: merge with Debian, dropping deprecated versioned depends
* d/control: Update Vcs-* tags for Ubuntu
* d/watch: sync with Debian
* d/u/metadata: sync with Debian
* d/tests: partially merge with Debian
* d/t/control: SKIP Open vSwitch test if OVS is inactive in the test env
to fix armhf (LXD/container) autopkgtests
-- Lukas Märdian <slyon@ubuntu.com> Tue, 11 Oct 2022 14:58:36 +0200
# For older changelog entries, run 'apt-get changelog libnetplan0'
Generated by dwww version 1.14 on Sat Jun 13 07:00:46 CEST 2026.