Changelog
May 17, 2026 · View on GitHub
All notable changes to Open-IPv8-Lab are documented here.
Format based on Keep a Changelog.
[0.13.0] — 2026-05-17
Added
- PEP 561
py.typedmarker for downstream type checking .pre-commit-config.yamlwith ruff lint/format hooks.devcontainer/for GitHub Codespaces.editorconfigfor consistent code styleMakefilewith dev, lint, test, cov, docs targets- Docs CI workflow (
.github/workflows/docs.yml)
Fixed
- Removed
.DS_Storefrom repository
[0.12.9] — 2026-05-17
Fixed
- PyPI publish now triggers on tag push (was blocked by GITHUB_TOKEN event limitation)
Changed
- Bumped CI actions: actions/setup-python v6, actions/checkout v6, docker/setup-buildx-action v4, docker/login-action v4, docker/build-push-action v7
- Bumped mkdocs-material to >=9.7.6
[0.12.8] — 2026-05-15
Changed
- Fixed release pipeline: Homebrew formula auto-update now works end-to-end
[0.12.7] — 2026-05-15
Changed
- Release automation now updates Homebrew formula via auto-generated pull request (compatible with protected main branch)
[0.12.6] — 2026-05-15
Added
- Homebrew formula in-repo (
Formula/open-ipv8-lab.rb) for install via tap
Changed
- Release workflow now auto-updates Homebrew formula URL and SHA256 on each tag
[0.12.5] — 2026-05-15
Added
- Community health files: CODEOWNERS, Code of Conduct, pull request template, and issue templates
- Release visibility enhancements: repository homepage, funding config, and social preview asset
Changed
- PyPI metadata improved with classifiers for Python versions, license, audience, and topics
- CI uploads coverage to Codecov and README includes coverage badge
0.12.0 — 2026-05-15
Added
- Interior Link Convention Protection (222.0.0.0/8 BGP8 filtering) per §19.4 —
ipv8lab ilinkprot - /16 Minimum Prefix Enforcement at eBGP8 boundaries per §19.7 —
ipv8lab prefixenf - Standalone WHOIS8 protocol (draft-thain-whois8-00): server, client, HMAC signing —
ipv8lab whois8 - Standalone NetLog8 protocol (draft-thain-netlog8-00): wire framing, collector, relay —
ipv8lab netlog8proto
Fixed
- 33 broken CLI examples across documentation
- 3 broken testbed examples (UDP config, capture, dashboard)
- Navigation: all docs now have ← Back to README link
0.11.0 — 2026-05-14
Added
- NAT8 address translation gateway (static/dynamic/PAT) —
ipv8lab nat8 - NetFlow8 flow monitoring and telemetry export (.nf8 format) —
ipv8lab netflow8 - QoS traffic shaping (priority/WFQ/FIFO, token bucket, TOS) —
ipv8lab qos - Docker-based multi-node testbed —
ipv8lab docker - TUI dashboard (Rich Live / Textual) —
ipv8lab tui - Packet fuzzer for protocol security testing —
ipv8lab fuzz - mTLS encryption layer for Zone Server auth —
ipv8lab mtls - ARP8-driven version selection per §2 —
ipv8lab arp8 - Inter-Company Interop and Two-XLATE8 model per §4.6–4.7 —
ipv8lab interop - Private Interop ASN (65534/65533) reservation per §4.8
- Interior Link Convention (222.0.0.0/8) per §4.10 —
ipv8lab ilink - Address Usage Model per §4.11 —
ipv8lab usage - Socket API Compatibility mock (AF_INET8, sockaddr_in8) per §6.2 —
ipv8lab socket - CGNAT Behaviour simulation per §15 —
ipv8lab cgnat - XLATE8 Even/Odd Load Balancing per §15.1 —
ipv8lab xlate8lb - Cloud Provider VPC simulation per §17 —
ipv8lab vpc - RINE Prefix Protection per §19.3 —
ipv8lab rineprot - PyPI and Docker Hub publish workflows
Changed
- Test count: 1160 → 1827
0.10.0 — 2026-05-14
Added
- End-to-end integration scenario (DHCP8 → OAuth8 → ACL8 → routing)
- Multi-zone simulation with Zone Server pairs —
ipv8lab multizone - BGP8 path selection with CF metric —
ipv8lab bgp8 - XLATE8 north-south traffic flow —
ipv8lab xlate8 - Interactive Zone Server management CLI —
ipv8lab zone - CF performance dashboard with visualisation —
ipv8lab cf - PCAP export for Wireshark integration —
ipv8lab pcap - IPv8 packet fragmentation and reassembly —
ipv8lab frag - Traceroute8 diagnostic utility —
ipv8lab traceroute
Changed
- Test count: 680 → 988
0.9.0 — 2026-05-14
Added
- Cost Factor (CF) metric simulation per §1.6
- WHOIS8 mock resolver (ASN validation, route validation)
- DHCP8 lease simulation per §1.3
- Zone Server mock (OAuth8 cache, ACL8 engine) per §1.3–1.4
- NetLog8 telemetry client (SEC-ALERT, E3 traps) per §18
- Companion spec modules: BGP8, IBGP8, OSPF8, IS-IS8, RINE, ARP8, XLATE8, Update8, WiFi8, SNMPv8
Changed
- Test count: 498 → 680
0.8.0 — 2026-05-14
Added
- Address class classification per §4
- Spec-compliant 28-byte packet header per §5.1
- Prefix validation and routing scope per §3.5, 3.9, 3.10
- Two-tier routing table per §8.7
- Multicast/broadcast classification per §10–12
- Border router ingress filtering per §18
- ICMPv8 protocol per §9
- 8to4 tunnelling per §13.3
- Device compliance tiers per §17.1–17.3
- NIC rate limits per §17.5
- DNS A8 record type per §7
- VRF per §8.8
- PVRST per §17.4
Changed
- Test count: 320 → 498
0.7.0 — 2026-05-14
Added
- Multi-hop mesh topologies with cycle detection
- Packet capture/replay (.iv8cap format) —
ipv8lab capture - Web UI dashboard (dark theme, JSON API) —
ipv8lab dashboard - Performance benchmarks (6 benchmarks) —
ipv8lab bench - Plugin system for custom protocols
- Error hierarchy (IPv8LabError)
Changed
- Test count: 200 → 320
0.6.0 — 2026-05-14
Added
- Packet hex dump utility —
ipv8lab packet dump - JSON output mode (
--jsonflag) on all commands - Mypy type checking in CI
0.5.0 — 2026-05-14
Added
- UDP framing protocol (magic + length)
- Async UDP transport (send/receive)
- UDP node runner with forwarding —
ipv8lab udp run - UDP demo example
0.4.0 — 2026-05-14
Added
- Node and Router abstractions for local testbed
- Two-ASN demo scenario
- Packet tracing through simulated networks
0.3.0 — 2026-05-14
Added
- Route table and route lookup
- YAML config loader for network topologies
- Routing simulation —
ipv8lab route simulate
0.2.0 — 2026-05-14
Added
- IPv8 packet structure (28-byte header)
- Packet serialization and parsing
- CRC32 checksum
- CLI command —
ipv8lab packet
0.1.0 — 2026-05-14
Added
- IPv8Address class
- ASN ↔ prefix conversion
- Address validation
- CLI command —
ipv8lab addr