Releases
v0.9.0
Compare
Sorry, something went wrong.
No results found
0.9.0 (2026-09-02)
⚠ BREAKING CHANGES
core: rename KnxIpError, add KNXnet/IP constants and builders
Features
device: serve PID_IO_LIST so ETS can enumerate interface objects (d172931 )
device: System-B conformance (unsecured) — decode fix + Tier-1/Tier-2 (1e66ebe )
examples: demo client and ETS-programmable device (85f59d5 )
ip: object-safe KnxConnection, IPv6 support, source validation (c57fa3c )
ip: structured error variants and a Result alias (4cded38 )
knx-core: KNX protocol types, addresses, CEMI frames, and DPT conversions (6a92231 )
knx-device: KNX device stack with ETS programming support (1241833 )
knx-ip: async KNXnet/IP tunnel, router, discovery, and device server (3f21b7f )
knx-prod: cross-platform .knxprod generator with ETS hash verification (aaa4fce )
knx-tp: TP-UART data link layer for embedded targets (de8cc73 )
prod: author by-name/suffix lookups for data-driven builders (#41 ) (9810889 )
prod: code-first ETS product XML authoring (author module + knxprod! DSL) (#32 ) (5b7ffd0 )
prod: renumber ids to integers + validate for ETS import (#29 ) (f4b0d1d )
prod: user-supplied-key .knxprod RSA signing (#17 ) (5a1d84b )
toolchain: raise MSRV to Rust 1.94 (#50 ) (3713089 )
Bug Fixes
add version to inter-crate path dependencies for crates.io (893405e )
apdu: keep basic-memory/ADC count byte during APDU decode (75625b5 )
api: restore 0.2 back-compat via deprecated shims (2eb8cfc )
ci: add retry logic and longer wait for crates.io index propagation (dac60fa )
ci: correct publish order to respect dependency graph (c7bc168 )
ci: drop invalid cargo versioning-strategy from Dependabot config (#34 ) (761f621 )
ci: fix clippy manual-assert-eq warning and verify all targets in release-please (#27 ) (0616e0d )
ci: handle already-published crates in publish workflow (7b54ec5 )
ci: release-please config for workspace-inherited versioning (d20aa47 )
ci: set initial-version 0.1.0 for first release (95923cc )
ci: update workflow crate names to knx-rs-* namespace (db65590 )
ci: use simple release type for workspace version updates (b25b455 )
core: only short-encode group values that fit in 6 bits (f303214 )
core: unify APCI masking and short-form APDU encoding (dd79a05 )
deps: bump quick-xml to 0.41 to clear RUSTSEC-2026-0194/0195 (#14 ) (7946825 )
device: add OT9 group object table so the app program sits at index 4 (78eb063 )
device: correct app-layer parse offsets and dedup encoders (5ef896b )
device: correct extended-property, memory-ext and ADC response wire bytes (46afb28 )
device: correct master-reset erase codes, validity and response bytes (a190fcd )
device: correct property index offset in A_PropertyExtDescription_Read (2d5f319 )
device: distinguish ext-property write return codes from AddressVoid (59fb6bf )
device: enforce write_enable on Property::write, minor cleanups (585015e )
device: gate A_SystemNetworkParameter_Read on operand + programming mode (7586480 )
device: gate connectionless services by destination address type (3e61c4b )
device: gate group communication on the application program load state (136665b )
device: handle L_Data.con to clear group-object transmit state (0ed5273 )
device: make a plain A_Restart drop the connection and flag the host (0bc211c )
device: report table offset in Loading and serve live PID_ERROR_CODE (08332f0 )
device: stop BAU poll-loop hang and check memory bounds (fb49610 )
device: validate restored table state; single-source object indices (e6bf712 )
docs: clarify signing process in README for ETS key usage (#25 ) (4f72caf )
docs: drop removed doc_auto_cfg feature gate (breaks docs.rs) (2894346 )
ip: SO_REUSEADDR, exact RoutingBusy pause, structured router errors (1e8f75d )
knx-prod: flaky zip test — write output outside source dir (51b9c21 )
knxip: validate device information DIBs (#52 ) (627f625 )
prod: author — review fixes (document completeness, segment ref, escaping) (f64bdbd )
prod: fail loud on malformed hash input (67fd35b )
prod: keep pipeline modules public (4d01589 )
prod: patch fingerprint across Catalog/Hardware, not just the app (#19 ) (28f39ce )
prod: soften unsigned warning to "maybe not importable" (#23 ) (2bbc19d )
tp: correct extended-frame encoding and harden the receive path (1e45370 )
Performance Improvements
device: pre-size the ext-write-con response vec to its exact length (13ad7ff )
Code Refactoring
core: rename KnxIpError, add KNXnet/IP constants and builders (517c90b )
You can’t perform that action at this time.