Netplan v1.1
Netplan v1.1 is a record-breaking release, counting 17 individual contributors. 🚀
Kudos to everybody involved! ❤️
Highlights
- Custom
systemd-networkd-wait-online
logic override to wait for link-local and routable interfaces. (#456, #482) - Modification of the
embedded-switch-mode
setting without virtual-function (VF) definitions on SR-IOV devices (#454) - Parser flag to ignore individual, broken configurations, instead of not generating any backend configuration (#412)
- Fixes for @ProtonVPN (#495) and @microsoft Azure Linux (#445), contributed by those companies
Releasing v1.1
- CI: adopt autopkgtest for 1.0-1 on 22.04 by @slyon in #446
- tools/keyfile_to_yaml: display the generated YAML by @daniloegea in #452
- tests: import the config fuzzing tests by @daniloegea in #453
- ATTN: parse/bonds: handle same primary in multiple bonds by @daniloegea in #451
- sriov: accept setting the eswitch mode without VFs (LP#2020409) by @daniloegea in #454
- Custom systemd-networkd-wait-online override to wait on interfaces. (Closes: #1008995) (LP#2060311) by @slyon in #456
- Ignore bad NetDefs and files via parser flags by @daniloegea in #412
- networkd:apply: Drop handling of legacy wpa@ instance units by @slyon in #471
- migrate: support aliases by @Kristof0127 in #473
- networkd: add ipv6 ra overrides (LP#1973222) by @KhooHaoYit in #461
- netplan status --diff fixes and improvements by @daniloegea in #466
- apply: make sure that networkd is restarted when needed by @alfonsosanchezbeato in #449
- Don't escape certain non-ascii characters by @daniloegea in #486
- networkd: make s-n-wait-online wait for at least one routable interface by @slyon in #482
- networkd: Implement ipv6-address-generation: stable-privacy by @tatokis in #480
- Implementing advmss ip route option by @barvius in #489
- meson: Add 'testing' option by @slyon in #493
- Add a scheduled workflow to run TICS by @daniloegea in #498
- ci: migrate to Ubuntu 24.04 by @daniloegea in #465
- Prepare Netplan v1.1 by @slyon in #504
Documentation
- Fix wrong syntax in example by @fzakfeld in #459
- Tutorial improvements by @rkratky in #458
- added guide for contributing to the netplan documentation by @ade555 in #457
- Add initial SECURITY.md policy by @slyon in #478
- Create single-nic-vm-host.md by @ilvipero in #475
- Create single-nic-vm-host-with-vlans.md by @ilvipero in #476
- Create multi-nic-vm-host-with-bonds-and-vlans.md by @ilvipero in #477
- bullet point removal by @shirleyherox in #483
- Add netplan try to netplan tutorial by @davidekete in #494
- Update the docs checks runner to ubuntu-latest by @rkratky in #500
- Add spelling exceptions by @rkratky in #499
Bug fixes
- Fix logging setup when python-rich is not present by @frhuelsz in #445
- parse-nm: add a workaround for the DoT DNS option (LP#2055148) by @daniloegea in #447
- parse: don't remove datalist items during iteration by @daniloegea in #450
- parse: fix redefinition of gateway(4|6) by @daniloegea in #460
- python: elements of all must be strings by @daniloegea in #464
- CI: Fix DebCI check, using newer 'meson' from unstable by @slyon in #467
- tests: fix diff test with iproute2 6.8 by @daniloegea in #469
- cli/generate: skip daemon_reload with --mapping by @daniloegea in #470
- CI: fork spread to get canonical/spread#179 fixes by @slyon in #472
- ctests: fix a memory leak in a unit test by @daniloegea in #474
- nm/nd: fix a couple of crashes by @daniloegea in #468
- test:integration: Try to improve test flakyness (Closes: #1069871) by @slyon in #481
- Security fixes (CVE-2022-4968) by @daniloegea in #484
- emitter: allow unicode characters in the emitter (LP#2071652) by @daniloegea in #485
- CLI:apply: call udevadm trigger, using --action=move (Closes: #1071220) (LP#2066344, LP#2071363) by @slyon in #479
- CI: fix CodeQL permissions by @slyon in #491
- ci: run meson tests with unbuffer by @daniloegea in #501
- ci/tics: install "expect" as a dependency by @daniloegea in #502
- generate: avoid calling 'udevadm control --reload' (LP#1999178) by @slyon in #488
- netplan ignores NetworkManager ipv4.route-metric (LP#2076172) by @calexandru2018 in #495
- Change default umask when creating dirctories (LP#2076319) by @rmalz-c in #497
New Contributors
- @frhuelsz made their first contribution in #445
- @fzakfeld made their first contribution in #459
- @Kristof0127 made their first contribution in #473
- @ade555 made their first contribution in #457
- @KhooHaoYit made their first contribution in #461
- @ilvipero made their first contribution in #475
- @shirleyherox made their first contribution in #483
- @tatokis made their first contribution in #480
- @barvius made their first contribution in #489
- @davidekete made their first contribution in #494
- @calexandru2018 made their first contribution in #495
- @rmalz-c made their first contribution in #497
Full Changelog: 1.0...1.1
Show all
$ git shortlog 1.0..HEAD
Alexandru Cheltuitor (1):
netplan ignores NetworkManager ipv4.route-metric
Alfonso Sánchez-Beato (2):
apply: restart networkd instead of reload/reconfigure
apply: compare full configuration to decide to restart networkd
Cyril Brulebois (1):
Fix manpage title.
Danilo Egea Gondolfo (39):
parse-nm: add a workaround for the DoT DNS option
parse: don't remove datalist items during iteration
tools/keyfile_to_yaml: display the generated YAML
tests: import the config fuzzing tests
sriov: accept setting the eswitch mode without VFs
cli/sriov: refactoring
cli/sriov: set eswitch regardless of pcidev.vfs
parse: fix redefinition of gateway(4|6)
python: elements of __all__ must be strings
parse: introduce parser flags
parse: implement the IGNORE_ERRORS flag
generate: add support for ignoring errors
python/api: add flags getter/setter to Parser
tests: improve coverage with ignore_errors
docs: add a new section about the generator
tests: fix diff test with iproute2 6.8
cli/generate: skip daemon_reload with --mapping
ctests: fix a memory leak in a unit test
nm/nd: fix a couple of crashes
netplan: add getters for gateway4 and gateway6
state_diff: add gateway(4|6) to the routes list
state: use the 'dynamic' field from addr_info
state: add the 'ra' flag to IPv6 addresses
api: add a getter for accept-ra
state_diff: improve analysis of RA/LL addresses
cli/status: fix plain print with --diff
cli: use AF_INET(6) instead of hardcoded values
state: make use of networkd ConfigSource
libnetplan: use more restrictive file permissions
libnetplan: escape control characters
backends: escape file paths
backends: escape semicolons in service units
emitter: allow unicode characters in the emitter
parse: do not escape all non-ascii bytes
meson: emit the coverage result to XML
ci: add a workflow for TIOBE
ci: run meson tests with unbuffer
ci/tics: install "expect" as a dependency
ci: migrate to Ubuntu 24.04
Danilo Egêa Gondolfo (1):
ATTN: parse/bonds: handle same primary in multiple bonds (#451)
David Ekete (1):
docs: Add 'netplan try' to tutorial (#494)
Francisco Huelsz Prince (1):
Fix logging setup when python-rich is not present
Freerk-Ole Zakfeld (1):
Fix wrong bonds.parameters.mode syntax in example (#459)
Khoo Hao Yit (1):
feat(networkd): add ipv6 ra overrides (LP: #1973222) (#461)
Lukas Märdian (58):
CI: fix DebCI case for no-change rebuilds
CI: adopt autopkgtest for 1.0-1 on 22.04
Update README, move CODE_OF_CONDUCT
doc: fix en_GB spelling
CI: adopt snapd.patch for autopkgtest SRU (LP: #2051939)
CI: Install netplan-ci PPA
tests: use proper 0o600 file permissions in more places
doc:tutorial: fix whitespace formatting
util: fix potential NULL pointer assert
networkd: add wait-online enumeration utils
generate: enable systemd-networkd-wait-online for non-optional interfaces only
CLI:utils: Do not ask for daemon-reload password interactively
CLI:generate: call daemon-reload after (re-)generating services
wait-online: Do not block on loopback interface
generate: Do not touch wait-online, if we don't have any networkd NetDefs
wait-online: wait for existing interfaces only and downgrade operational state for interfaces without IP configuration
wait-online: account for DHCPv4/v6 addresses
wait-online: do not require virtual devices to be created already
wait-online: recognize that bridge/bond members will never gain link-local addresses
CI: Fix DebCI check, using newer 'meson' from unstable
Revert "CI: Fix DebCI check, using newer 'meson' from unstable"
test: cleanup after wait_online test to fix DebCI
CI: fork spread to get #179 fixes
networkd:apply: Drop handling of legacy wpa@ instance units
Add initial SECURITY.md policy
test:integration: avoid verbose NM warnings
test:integration: Try to improve test flakyness (Closes: #1069871)
autopkgtest: More fixes for flaky 'ethernets' test (Closes: #1069871)
include:netdef.h: cleanup whitespace
Revert "apply: restart networkd instead of reload/reconfigure"
cli:apply: improve networkd restart logic for non-existent networkd config
Increase some test timeouts to account for slow (riscv64) buildds
wait-online: wait for 'routable' state, if corresponding IPs are defined
wait-online: new tests for routable waiting
wait-online: don't ignore 'routable' intefaces in 'linklocal' waiting stage
wait-online: issue a log message about optional bond-members
tests:generator: refactor test_args.py check_output, using text=True
networkd:wait-online: make logging message more informative
Fix FTBFS on Debian unstable (probably /tmp on tmpfs?)
CLI:apply: call udevadm trigger, using --action=move (Closes: #1071220) (LP: #2066344, LP: #2071363)
parse: downgrade warning about nm-device renderer to 'debug', as it's just informational
doc:examples: Add reference for NM default config
test:routing: skip VRF test if kernel module is not available
test:tunnels: skip WireGuard test if kernel module is not available
CI: autopkgtest: add test dependency for python3-packaging
test:routing: Skip advmss test on NetworkManager < 1.39.8
CI: fix CodeQL permissions
generate: avoid calling 'udevadm control --reload' (LP: #1999178)
rpm: require udev for tests
meson: Add 'testing' option
CI: Update DebCI to ubuntu-22.04 runners
networkd: avoid memory-leak in wait_online
CI: use autopkgtest 5.37
CI: update snapd.patch
spread: upgrade to 24.04
doc: Annotate new 1.1 settings
abi-compat: re-generate 1.1 ABI on Noble
meson: Bump version to v1.1
Mauro Gaspari (3):
doc: Create single-nic-vm-host.md (#475)
doc: Create single-nic-vm-host-with-vlans.md (#476)
doc: Create multi-nic-vm-host-with-bonds-and-vlans.md (#477)
Oleg (1):
Implementation ip route advmss options for Systemd networkd and Network manager. Param name for systemd networkd: TCPAdvertisedMaximumSegmentSize Param name for network manager: advmss
Oláh Kristóf (1):
migrate: support aliases
Robert Krátký (5):
Adding missing 'watchfiles' dependency for Sphinx.
Minor fixes in lang. and mark-up in YAML reference.
Tutorial reorg & lang. + formatting improvements.
Update the docs checks runner to ubuntu-latest.
doc: Add spelling exceptions (#499)
Robert Malz (1):
Change default umask when creating dirctories
SuperheroJT (1):
added guide for contributing to the netplan documentation (#457)
Tasos Sahanidis (1):
networkd: Implement ipv6-address-generation: stable-privacy
shirleyherox (1):
doc: Fix netplan-generate.md formatting (#483)