Merge pull request #1518 from kernelkit/releng

Prepare for v26.05.0
This commit is contained in:
Joachim Wiberg
2026-05-29 10:24:27 +02:00
committed by GitHub
6 changed files with 128 additions and 31 deletions
+34 -28
View File
@@ -3,7 +3,7 @@ Change Log
All notable changes to the project are documented in this file. All notable changes to the project are documented in this file.
[v26.05.0][UNRELEASED] [v26.05.0][] - 2026-05-29
------------------------- -------------------------
### Changes ### Changes
@@ -24,40 +24,44 @@ All notable changes to the project are documented in this file.
above the `ethernet` row. VLAN, GRE, VXLAN and WiFi interfaces likewise get above the `ethernet` row. VLAN, GRE, VXLAN and WiFi interfaces likewise get
one row per protocol layer, with type-specific data on each (`vid:`, one row per protocol layer, with type-specific data on each (`vid:`,
`remote:`, `vni:`, `station ssid:`, etc.), issue #530 `remote:`, `vni:`, `station ssid:`, etc.), issue #530
- New `auto-negotiation/advertised-pmd-types` leaf-list replaces the - Add support for configurable auto-negotiation for Ethernet ports. A new
retired `enable=false + speed + duplex` idiom for pinned link modes `advertised-pmd-types` leaf-list replaces the fixed speed idiom for pinned
(IEEE Std 802.3.2-2025 obsoleted `eth:speed`), issue #805. Existing link modes, issue #805. See the [Ethernet Interfaces][ethernet] section in
startup configurations are migrated automatically on upgrade; see the User Guide for details. Existing configurations using fixed speed are
[ethernet.md](ethernet.md#restricting-advertised-link-modes) for the migrated automatically on upgrade
new model, the duplex × PMD mapping, and the `enable=false` escape - Add support for configurable MDI/MDI-X pinout on Ethernet ports. Needed on
hatch for non-autoneg peers some PHYs where Auto-MDIX stops working once auto-negotiation is disabled
- New `ethernet/mdi-x` boolean leaf to force the copper MDI/MDI-X pinout
(true = MDI-X, false = MDI, absent = Auto-MDIX). Needed on some PHYs
where Auto-MDIX stops working once auto-negotiation is disabled; see
[ethernet.md](ethernet.md#restricting-advertised-link-modes)
- New operational `supported-pmd-types` leaf-list on each Ethernet interface, - New operational `supported-pmd-types` leaf-list on each Ethernet interface,
exposing the set of PMD types currently supported. Useful for SFP/SFP+ exposing the set of PMD types currently supported
diagnosis: an LR-only optic narrows the list to a single entry, confirming - New CLI command `show operational`, and optional XPath filtering for this
the transceiver without `ethtool -m` and any of the other datastores, using `[path /path/to/subtree]`
- New CLI command `show operational`, and XPath filtering for this and any of - CLI `show` commands now surface human-friendly error messages instead of a
the other datastores, using `[path /path/to/subtree]` raw Python exceptions, e.g., `Interface "w" not found`
### Fixes ### Fixes
- Fix #1493: container with a physical interface not properly removed - Fix #1493: container with a physical interface not properly removed when
when switching to a configuration without containers switching to a configuration without containers
- Fix #1506: add documentation on how to configure VLAN interfaces, - Fix #1506: add documentation on how to configure VLAN interfaces, including
including stacked (Q-in-Q) VLAN interfaces, in a dedicated `vlan.md` stacked (Q-in-Q) VLAN interfaces, in a dedicated `vlan.md`
- Fix long-standing typo `auto-negotation` in `yanger`, which caused - Handle unclean daemon exits better, e.g., `dbus-daemon` crashing and leaving
the operational `auto-negotiation/enable` leaf to always read as a stale pidfile behind, causing it to refuse to be restarted
`unknown` regardless of the actual port setting
- Handle unclean daemon exits better, e.g., `dbus-daemon` crashing and
leaving a stale pidfile behind, causing it to refuse to be restarted
- Fix occasional blank or garbled `[ OK ]` lines at startup - Fix occasional blank or garbled `[ OK ]` lines at startup
- Disallow multicast MAC addresses in custom MAC address configuration - Disallow multicast MAC addresses in custom MAC address configuration
- Fix broken Wi-Fi 6 GHz band configuration. - Fix broken Wi-Fi 6 GHz band configuration.
- Fix operational read of `/containers` failing and thereby aborting all
operational get-data, including RESTCONF/NETCONF reads — for containers
whose command contains shell metacharacters, e.g. `sh -c "... && ..."`
- WireGuard interfaces are now regenerated when a referenced keystore key
changes: the asymmetric `private-key`, and the symmetric `preshared-key` at
both peer-group and per-peer level
- Fix crash in operational data when a bridge has VLAN ranges configured: the
kernel may report ranges (e.g. `vlan 1 vlanEnd 3`) from `bridge vlan global
show`, which were not expanded, so `show interface` and other operational
reads failed. Ranges are now expanded and listed correctly
[BPI-R3]: https://docs.banana-pi.org/en/BPI-R3/BananaPi_BPI-R3 [ethernet]: ethernet.md#restricting-advertised-link-modes
[BPI-R3]: https://docs.banana-pi.org/en/BPI-R3/BananaPi_BPI-R3
[AcerConnectVero]: ../board/aarch64/acer-connect-vero-w6m/ [AcerConnectVero]: ../board/aarch64/acer-connect-vero-w6m/
[v26.04.0][] - 2026-04-30 [v26.04.0][] - 2026-04-30
@@ -2131,7 +2135,9 @@ Supported YANG models in addition to those used by sysrepo and netopeer:
- N/A - N/A
[buildroot]: https://buildroot.org/ [buildroot]: https://buildroot.org/
[UNRELEASED]: https://github.com/kernelkit/infix/compare/v26.03.0...HEAD [UNRELEASED]: https://github.com/kernelkit/infix/compare/v26.05.0...HEAD
[v26.05.0]: https://github.com/kernelkit/infix/compare/v26.04.0...v26.05.0
[v26.04.0]: https://github.com/kernelkit/infix/compare/v26.03.0...v26.04.0
[v26.03.0]: https://github.com/kernelkit/infix/compare/v26.02.0...v26.03.0 [v26.03.0]: https://github.com/kernelkit/infix/compare/v26.02.0...v26.03.0
[v26.02.0]: https://github.com/kernelkit/infix/compare/v26.01.0...v26.02.0 [v26.02.0]: https://github.com/kernelkit/infix/compare/v26.01.0...v26.02.0
[v26.01.0]: https://github.com/kernelkit/infix/compare/v25.11.0...v26.01.0 [v26.01.0]: https://github.com/kernelkit/infix/compare/v25.11.0...v26.01.0
+87
View File
@@ -1,3 +1,90 @@
/* Chirpy-style typography (must precede all other rules).
* Source Sans Pro was renamed "Source Sans 3" on Google Fonts; it is the
* same typeface. Lato is used for headings, matching www.kernelkit.org. */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&family=Source+Sans+3:ital,wght@0,400;0,600;0,700;1,400&display=swap');
/* ---- Fonts ---------------------------------------------------------------
* theme.font is disabled in mkdocs.yml, so we set Material's font vars here.
* Body: Source Sans 3, code: system monospace (same stack Chirpy uses). */
:root {
--md-text-font: "Source Sans 3";
--md-code-font: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New";
}
body {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* Lato for all headings and the masthead site title. */
.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4,
.md-typeset h5,
.md-typeset h6,
.md-header__title,
.md-nav__title {
font-family: "Lato", "Microsoft Yahei", sans-serif;
}
/* ---- Light mode (Chirpy "default" palette) ------------------------------- */
[data-md-color-scheme="default"] {
--md-typeset-color: #34343c;
--md-typeset-a-color: #0056b2; /* Chirpy blue links */
--md-accent-fg-color: #0056b2; /* link hover / active TOC */
--md-code-bg-color: #f6f8fa;
--md-code-fg-color: #3a3a3a;
}
[data-md-color-scheme="default"] .md-typeset h1,
[data-md-color-scheme="default"] .md-typeset h2,
[data-md-color-scheme="default"] .md-typeset h3,
[data-md-color-scheme="default"] .md-typeset h4,
[data-md-color-scheme="default"] .md-typeset h5,
[data-md-color-scheme="default"] .md-typeset h6 {
color: #2a2a2a;
}
/* Subtle tinted sidebars (left nav + right TOC), as on the blog. */
[data-md-color-scheme="default"] .md-sidebar {
background-color: #f6f8fa;
}
/* ---- Dark mode (Chirpy "dark" palette over Material's slate) ------------- */
[data-md-color-scheme="slate"] {
--md-default-bg-color: rgb(27 27 30); /* neutral near-black */
--md-default-fg-color: rgb(207 208 209); /* UI text */
--md-default-fg-color--light: rgb(175 176 177);
--md-default-fg-color--lighter: rgb(175 176 177 / 45%);
--md-default-fg-color--lightest: rgb(175 176 177 / 18%);
--md-typeset-color: rgb(175 176 177); /* body text */
--md-code-bg-color: #151515;
--md-code-fg-color: #b0b0b0;
--md-typeset-a-color: rgb(138 180 248); /* Chirpy blue links */
--md-accent-fg-color: rgb(168 199 250); /* brighter blue on hover */
}
[data-md-color-scheme="slate"] .md-typeset h1,
[data-md-color-scheme="slate"] .md-typeset h2,
[data-md-color-scheme="slate"] .md-typeset h3,
[data-md-color-scheme="slate"] .md-typeset h4,
[data-md-color-scheme="slate"] .md-typeset h5,
[data-md-color-scheme="slate"] .md-typeset h6 {
color: #cccccc;
}
/* Sidebars slightly lighter than the main background, as on the blog. */
[data-md-color-scheme="slate"] .md-sidebar {
background-color: #1e1e1e;
}
/* Inline code reads as a faint highlight rather than a dark block. */
[data-md-color-scheme="slate"] .md-typeset :not(pre) > code {
background-color: rgb(255 255 255 / 6%);
}
/* ---- Existing project styling -------------------------------------------- */
.md-header__title { .md-header__title {
font-size: 1.1rem; font-size: 1.1rem;
line-height: 2.6rem; line-height: 2.6rem;

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

+2 -2
View File
@@ -108,7 +108,7 @@ DHCP server, and the other two as DHCP clients - with all three having
a management connection to the host PC running the test. In other a management connection to the host PC running the test. In other
words, the test requires a _logical_ topology like the one below. words, the test requires a _logical_ topology like the one below.
<img align="right" src="img/testing-log.dot.svg" alt="Example Logical Topology"> ![Example Logical Topology](img/testing-log.svg){ align=right width="360" }
```dot ```dot
graph "dhcp-client-server" { graph "dhcp-client-server" {
@@ -155,7 +155,7 @@ degrees), we can deploy well-known algorithms to find such subgraphs.
Continuing our example, let's say we want to run our DHCP test on the Continuing our example, let's say we want to run our DHCP test on the
_physical_ topology below. _physical_ topology below.
<img align="right" src="img/testing-phy.dot.svg" alt="Example Physical Topology"> ![Example Physical Topology](img/testing-phy.svg){ align=right width="360" }
```dot ```dot
graph "quad-ring" { graph "quad-ring" {
+5 -1
View File
@@ -3,7 +3,7 @@ site_description: Infix Documentation
site_url: https://kernelkit.github.io/infix/ site_url: https://kernelkit.github.io/infix/
repo_url: https://github.com/kernelkit/infix/ repo_url: https://github.com/kernelkit/infix/
repo_name: kernelkit/infix repo_name: kernelkit/infix
copyright: Copyright &copy; 2022-2025 The KernelKit Team copyright: Copyright &copy; 2022-2026 The KernelKit Team
docs_dir: doc/ docs_dir: doc/
edit_uri: edit/master/doc/ edit_uri: edit/master/doc/
extra_css: extra_css:
@@ -79,6 +79,10 @@ nav:
theme: theme:
logo: logo-plain.png logo: logo-plain.png
name: material name: material
# Fonts are loaded by doc/extra.css (Lato headings + Source Sans body +
# system monospace, matching the Chirpy blog) instead of Material's
# auto-loaded Roboto. Keep this false so Material does not also fetch Roboto.
font: false
features: features:
- toc.follow - toc.follow
# - toc.integrate # - toc.integrate