Skip to content

0.107

Compare
Choose a tag to compare
@slyon slyon released this 17 Aug 15:24
· 168 commits to main since this release

Releasing v0.107:

Bug fixes:

New Contributors

We would like to thank everybody who contributed to this release! 🍾

Full Changelog: 0.106...0.107

Show all
$ git shortlog 0.106..HEAD
Aristo Chen (1):
      netplan: cli: fix typo from 'unkown' to 'unknown'

Benjamin Gentil (2):
      routes: fix metric rendering
      tests: add metric rendering tests for lp2023681

Danilo Egea Gondolfo (131):
      parser: handle duplicated routing rules
      parser: Don't add DNS entries duplicates
      tests: Don't use duplicated DNS entries
      tests: Add tests for the new C functions
      parser: Don't duplicate OVS configuration
      dbus: Build the copy path correctly
      dbus: Use the error set by _copy_yaml_state()
      tests: Add some integration tests for DBus
      netplan: adjust the maximum buffer size to 1MB
      parse: use "--" with systemd-escape
      networkd: plug a memory leak
      libnetplan: don't try to read from a NULL file
      nm: return if write_routes() fails
      parse: don't point to the wrong node on validation
      validate: drop the YAML node parameter
      API: add a binding for netplan_parser_load_keyfile
      API: make dump_yaml() accept a StringIO
      tests: add a test for the new load_keyfile method
      wireguard: plug a memory leak
      wireguard: improve an error message
      nm: check the passthrough config format
      parse: validate NM backend settings usage
      ABI: convert NetplanBackendSettings to struct
      ovs: don't allow peers with the same name
      ovs: replace openvswitch instances by Open vSwitch
      rtd: set the OS and Python versions explicitly
      tools: add a tool to convert keyfiles to YAML
      parse-nm: fix eap_method handling
      parse_nm: add support for Wireguard
      parse-nm: relax validation for wireguard
      nm-parse: add support for all tunnel modes
      tests: adjust tests after last changes
      parse-nm: rename some helper functions
      tests: add some ctests for the keyfiles parser
      nm-parse: fix an invalid memory access
      parse-nm: plug a memory leak
      docs: gretap and ip6gretap also works for NM now
      netplan: introduce some classes of errors
      netplan: replace glib errors with the new ones
      netplan: create exceptions for each error code
      tests: adjust the tests for the new error handling
      errors: adopt NetplanError in favor of GError
      parse: plug a memory leak
      parse: plug a memory leak
      tools: add a C keyfile loader tool
      tools/run_asan.sh: call the keyfile loader on NM files
      tests: add a new parameter to generate_from_keyfile
      parse-nm:wg: auto append the prefix to allowed IPs
      parser: add support for WPA3-Personal
      examples: add an example for WPA3
      docs: add SAE (WPA3) to the key-management list
      tests: fix run_asan.sh for new types of interfaces
      parser: add support for Dummy interfaces
      docs: add documentation for dummy interfaces
      tests: add unit and integration tests for dummies
      abi: suppress error due to new NetplanDefType type
      examples: add an example file for dummy interfaces
      parse-nm:wg: add support for reading the listen-port property
      parser: introduce the "placeholder" interface type
      parse-nm: add support for VLANs
      tests: fix keyfile parser existing tests
      parse: handle redefinition of a place holder netdef
      parse-nm: handle cloned-mac-address special cases
      netplan: prevent some signed vs unsigned comparisons
      abi: convert the protocol family from uint to int
      names.c: don't return -1 on netplan_*_from_name()
      abi: convert wowlan to int
      types: remove duplicated code
      validation: convert members of _defroute_entry to guint
      names: convert index i to size_t
      util: store the pointer arithmetic result in a size_t variable
      nm/parse-nm: drop 'const' from the return type of some functions
      generate/parse: fix missing member initializer
      netplan: annotate all the unused parameters with __unused
      meson: increase warning_level to 2
      abi: add the new netdef field "tunnel_private_key_flags"
      parsers: add support for the key "private-key-flags"
      validation: use the new field to validate WG connections
      tests: add tests for the new wireguard property
      docs: add the new private-key-flags key to the documentation
      libnetplan: enable dump_yaml_subtree to use StringIO as input/output
      netplan:cli:state: new module to collect network configuration
      commands:get/status: remove the code moved to state.py
      tests: refactor some tests after the inclusion of state.py
      status: add vlan to list of interface types
      netplan: export an IP addresses iterator API
      parse: don't check if a guint variable is > G_MAXUINT
      parse: reset wireguard_peer to NULL after error
      abi_compat: check if open() succeeded
      parse: cast void* to char* when passing it to yaml_error()
      util: make sure parser is initialized when we get to err_path
      nm: drop const qualifier from function return type
      nm: plug memory leak
      ctests: add a new cmocka test file for the NM backend
      openvswitch: plug a memory leak
      ctests: add a new cmocka openvswitch test file
      abi_compat: plug a memory leak
      validation: plug a memory leak
      parse: plug a memory leak
      util: plug a file descriptor leak
      networkd: plug a memory leak
      parse-nm: plug a memory leak
      netplan: set umask before calling mkstemp
      netplan: prevent calling close() twice against the same fd
      tests: fix test coverage report with newer python-coverage
      state: refactor the routes parsing in the Interface class
      commands/status: query routes from all the tables
      github: add a scheduled action to run Coverity
      parser: add support for virtual-ethernet interfaces
      virtual-ethernet: add validation rules for virtual-ethernets
      networkd: generate configuration for virtual-ethernets
      virtual-ethernet: add support for virtual-ethernets to the YAML emitter
      examples: add a virtual-ethernets example file
      nm: add support for virtual-ethernets
      parse-nm: add support for virtual-ethernets
      tests: new generator tests for virtual-ethernets
      docs: update the documentation with the new virtual-ethernets devices
      tests: add integration tests for virtual-ethernets
      github: only run the coverity workflow on our repository
      util: prevent calling close() on negative descriptor
      parse: restore npp->current.route to NULL
      libnetplan: expose dhcp4 and dhcp6 properties
      libnetplan: expose the macaddress property in the netdef
      libnetplan: refactor address_iter according to our naming standard
      libnetplan: expose DNS configuration from netdefs
      libnetplan: expose the routes list in the netdef
      parse-nm: add support for VRF devices
      libnetplan: refactor NetplanRoute
      state: refactor the device types translation table
      state: include the family in the route entries
      tests: add the IP family to the route data

Danilo Egêa Gondolfo (11):
      docs: Add a short netplan-everywhere howto (#325)
      ATTN: parser: validate lacp-rate properly (LP: #1745648) (#324)
      Add all the commands to the bash completion file (LP: #1749869) (#326)
      Netplan docs rework (#333)
      Netplan docs rework (Part 2) (#337)
      docs: fix bridge parameters types and add examples (#346)
      vrfs: skip policies parsing if list is NULL (LP: #2016427) (#341)
      parse: plug a memory leak (#348)
      parse: set the backend on nm-devices to NM by default (#349)
      CI: fix dch after adding the new 0.106.1 tag (#364)
      docs: improve wording in netplan-yaml.md

Jordan Mitchell Barrett (1):
      CI: update canonical/setup-lxd to v0.1.1 (#359)

Lukas Märdian (51):
      Makefile: drop legacy build, add meson wrapper
      CI: CodeQL: add pytest build-deps
      CI: CodeQL: add cmocka build-deps
      Revert "meson: Account for UsrMerged systemd paths"
      meson: use absolute link target for generator symlink
      Revert "meson: use absolute link target for generator symlink"
      meson: use meson_make_symlink.sh helper script instead of install_symlink()
      meson: cli:utils: drop legacy generator path, use libexec instead
      parse:ovs: Ignore deprecated OpenFlow1.6 protocol (LP: #1963735)
      meson: fix installation of legacy /lib/netplan/generate symlink
      Use controlled execution environment, to avoid failure if PATH is unset (LP: #1959570) (#336)
      cli:apply: use shutil.rmtree instead of 'rm -rf'
      Makefile: fully cleanup coverage data
      cli:test: use 'text' alias instead of 'universal_newlines'
      cli:status: improve networkctl parameter passing
      doc: make us of sphinx copybutton plugin
      doc: Add Ubuntu Code of Conduct 2.0
      CI: make use of the canonical/setup-lxd action
      meson: Increase test timeout for slow architectures
      CI: add DebCI integrationt test
      CI: autopkgtest: build proper package version for dch
      CI: new RPM build tests
      meson: Increase test timeouts further avoiding mips64el/riscv64 buildd FTBFS
      CI: initial NetworkManager autopkgtests
      CI: RPMbuild: disable fedora:rawhide, due to package conflicts
      doc: Explanation about 00-network-manager-all.yaml
      tests:base: Fix NetworkManager interaction with systemd v253
      tests:base: introduce iface_json() helper
      tests:tunnels: make use of iface_json()
      tests:regressions: simplify assertions to avoid buffering races
      Readme: Drop (internal) documentation-objectives link
      tests:integration: Adopt for systemd v254
      parse: Downgrade NM passthrough warning to debug
      netplan.c: Don't drop files with just global values on 'set' (LP: #2027584)
      CLI: Refactoring to avoid namespace clash with public bindings
      tests: adopt to refactored netplan_cli module
      types: avoid exporting private symbol: free_address_options
      meson: Don't fail codestyle, due to meson scripts
      cli:status: Make rich pretty printing optional (#388)
      parse-nm: improve some error passing
      CI: Add python3-cffi build-dependency
      include: Extend public API functions
      src: make internal API functions/structures available
      bindings: python-cffi build skeleton
      bindings: Initial implementation of CFFI Python bindings
      cli:tools:test: Make use of new cffi python bindings
      cli: drop legacy/internal ctypes bindings, now unused
      examples: Add an example of how to use Netplan's CFFI bindings
      abi-compat: bump for 0.107
      doc: Mark dummy and veth devices, available as of 0.107
      Bump version to 0.107

Michael Vogt (2):
      tests: add new spread based snapd integration test
      spread.yaml: restore /etc/netplan for each test

Neal Gompa (3):
      meson: Enable finding pycoverage on RPM based distributions
      meson: Account for UsrMerged systemd paths
      rpm: Refresh packaging for 0.106 and sync from Fedora

Yevgeniy Melnichuk (3):
      provide frequency to wpa_supplicant when in adhoc mode.
      added unit test checking generated wpa_supplicant.conf in adhoc mode.
      added examples for wireless adhoc mode.