NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #5094 most downloaded on PyPI
Utilities to work with the ODX standard for automotive diagnostics
Last release today
16 Sep 2026
Release timing varies
gaps range from 9 days to 4 months
Nearly every release is documented
notes for 57 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
130 releases · first in 2022
One column per quarter.
Add py.typed marker by @zariiii9003 in https://github.com/mercedes-benz/odxtools/pull/303
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/7.1.0...7.1.1
Implement dynamic endmarker fields by @andlaus in https://github.com/mercedes-benz/odxtools/pull/298
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/7.0.0...7.1.0
Implement the IMPORT-REF mechanism by @andlaus in https://github.com/mercedes-benz/odxtools/pull/285
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.7.1...7.0.0
fix: COMPU-DEFAULT-VALUE parsing issue by modifying its hierarchical … by @akikaede6 in https://github.com/mercedes-benz/odxtools/pull/281
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.7.0...6.7.1
prepare the documentation for the fact that we now have a CLA bot by @andlaus in https://github.com/mercedes-benz/odxtools/pull/272
mypy --strict by @andlaus in https://github.com/mercedes-benz/odxtools/pull/271PositionableParam by @andlaus in https://github.com/mercedes-benz/odxtools/pull/278.from_et() pattern by @andlaus in https://github.com/mercedes-benz/odxtools/pull/279Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.6.1...6.7.0
fix encoding of DTCs by @andlaus in https://github.com/mercedes-benz/odxtools/pull/270
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.6.0...6.6.1
Cleanups by @andlaus in https://github.com/mercedes-benz/odxtools/pull/263
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.5.4...6.6.0
Janitorial work by @andlaus in https://github.com/mercedes-benz/odxtools/pull/256
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.5.3...6.5.4
Make NamedItemList a list when it comes to type checking by @andlaus in https://github.com/mercedes-benz/odxtools/pull/251
NamedItemList a list when it comes to type checking by @andlaus in https://github.com/mercedes-benz/odxtools/pull/251Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.5.1...6.5.3
physical_type bug fix by @QWander in https://github.com/mercedes-benz/odxtools/pull/254
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.5.0...6.5.1
List improvements by @kakoeh in https://github.com/mercedes-benz/odxtools/pull/250
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.4.3...6.5.0
Refactor DiagCodedType coding by @andlaus in https://github.com/mercedes-benz/odxtools/pull/246
DiagCodedType coding by @andlaus in https://github.com/mercedes-benz/odxtools/pull/246Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.4.2...6.4.3
Fix ODX 2.0 compatibility by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/248
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.4.1...6.4.2
Add some convenience for communication parameters by @andlaus in https://github.com/mercedes-benz/odxtools/pull/244
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.3.1...6.4.0
slightly improve writing the sub-tags stemming from ELEMENT-ID by @andlaus in https://github.com/mercedes-benz/odxtools/pull/239
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.3.0...6.3.1
Add support for ProtStack and ComparamSpec by @willzhang05 in https://github.com/mercedes-benz/odxtools/pull/238
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.2.1...6.3.0
fix ComplexComparam from_et function by @willzhang05 in https://github.com/mercedes-benz/odxtools/pull/237
from_et function by @willzhang05 in https://github.com/mercedes-benz/odxtools/pull/237Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.2.0...6.2.1
DiagDataDictionarySpec: re-introduce the all_data_object_properties attribute by @andlaus in https://github.com/mercedes-benz/odxtools/pull/234
ComplexDop as a base class for non-simple data object properties by @andlaus in https://github.com/mercedes-benz/odxtools/pull/235Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.1.0...6.2.0
dataclass_fields_asdict(): do not use internals of the dataclass implementation by @andlaus in https://github.com/mercedes-benz/odxtools/pull/225
dataclass_fields_asdict(): do not use internals of the dataclass implementation by @andlaus in https://github.com/mercedes-benz/odxtools/pull/225snoop tool's output by @andlaus in https://github.com/mercedes-benz/odxtools/pull/230Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.0.1...6.1.0
NamedItemList: make tab completion for NamedItemList work again by @andlaus in https://github.com/mercedes-benz/odxtools/pull/222
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/6.0.0...6.0.1
Drive by fixes #1 by @andlaus in https://github.com/mercedes-benz/odxtools/pull/208
ruff by @andlaus in https://github.com/mercedes-benz/odxtools/pull/209DecodeState.next_byte_position to DecodeState.cursor_position by @andlaus in https://github.com/mercedes-benz/odxtools/pull/211MinMaxLengthType coding functionality by @andlaus in https://github.com/mercedes-benz/odxtools/pull/210Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.3.1...6.0.0
Support DynamicLengthField: Part 1 by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/205
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.3.0...5.3.1
new unittest for command line scripts by @kakoeh in https://github.com/mercedes-benz/odxtools/pull/196
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.2.6...5.3.0
Don't assert about short names starting with digits by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/201
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.2.5...5.2.6
remove the ProgCodeSyntax enum class by @andlaus in https://github.com/mercedes-benz/odxtools/pull/199
ProgCodeSyntax enum class by @andlaus in https://github.com/mercedes-benz/odxtools/pull/199Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.2.4...5.2.5
Minor fixes by @andlaus in https://github.com/mercedes-benz/odxtools/pull/197
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.2.3...5.2.4
Fix TableKeyParameter again by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/195
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.2.2...5.2.3
Support BIT-MASK by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/192
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.2.1...5.2.2
Fix compu_inverse_value logic by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/191
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.2.0...5.2.1
Remove short_name_as_id by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/182
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.1.0...5.2.0
Moar dataclasses, part 3 by @andlaus in https://github.com/mercedes-benz/odxtools/pull/178
pyproject.toml by @andlaus in https://github.com/mercedes-benz/odxtools/pull/181Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.0.4...5.1.0
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.0.3...5.0.4
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.0.3...5.0.4
make the parameters data classes by @andlaus in https://github.com/mercedes-benz/odxtools/pull/177
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.0.0...5.0.1
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/5.0.1...5.0.2
refactor exception handling by @andlaus in https://github.com/mercedes-benz/odxtools/pull/168
from_et() and create_*_from_et() functions by @andlaus in https://github.com/mercedes-benz/odxtools/pull/173Full Changelog: https://github.com/mercedes-benz/odxtools/compare/4.1.0...5.0.0
clean up the example implementation of the lazy somersault ECU by @andlaus in https://github.com/mercedes-benz/odxtools/pull/159
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/4.0.5...4.1.0
fix loading of ECU variant patterns by @andlaus in https://github.com/mercedes-benz/odxtools/pull/158
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/4.0.4...4.0.5
Fix the bug #152 by @zzpbuaa in https://github.com/mercedes-benz/odxtools/pull/155
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/4.0.3...4.0.4
list: fix typo/thinko by @andlaus in https://github.com/mercedes-benz/odxtools/pull/154
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/4.0.2...4.0.3
Fix linear compumethod by @andlaus in https://github.com/mercedes-benz/odxtools/pull/148
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/4.0.1...4.0.2
Add support for decoding global negative responses by @andlaus in https://github.com/mercedes-benz/odxtools/pull/147
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/4.0.0...4.0.1
This is a major release featuring some user-facing API changes. It is hoped that for most users, these changes are relatively minor.
This is a major release featuring some user-facing API changes. It is hoped that for most users, these changes are relatively minor.
_build_odxlinks() method by @andlaus in https://github.com/mercedes-benz/odxtools/pull/134OdxLinkIds by @andlaus in https://github.com/mercedes-benz/odxtools/pull/135ParentRef class by @andlaus in https://github.com/mercedes-benz/odxtools/pull/136Full Changelog: https://github.com/mercedes-benz/odxtools/compare/3.0.2...4.0.0
Reformat by @andlaus in https://github.com/mercedes-benz/odxtools/pull/120
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/3.0.1...3.0.2
More fixes by @andlaus in https://github.com/mercedes-benz/odxtools/pull/118
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/3.0.0...3.0.1
use keyword=value to pass constuctor arguments when creating most types of objects by @andlaus in https://github.com/mercedes-benz/odxtools/pull/111
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.5.1...3.0.0
Refactor GitHub Action test-and-lint workflow by @dmholtz in https://github.com/mercedes-benz/odxtools/pull/110
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.5.0...2.5.1
use named constructors for constructing objects from XML where it makes sense by @andlaus in https://github.com/mercedes-benz/odxtools/pull/104
read_<foo>_from_odx() functions by @andlaus in https://github.com/mercedes-benz/odxtools/pull/106Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.4.1...2.5.0
Add method to query the CP_DoIPLogicalEcuAddress by @dmholtz in https://github.com/mercedes-benz/odxtools/pull/102
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.4.0...2.4.1
Fix multi-protocol comparams by @dmholtz in https://github.com/mercedes-benz/odxtools/pull/101
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.3.0...2.4.0
Comparam subsets: add write support by @andlaus in https://github.com/mercedes-benz/odxtools/pull/96
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.2.0...2.3.0
remove the "CANdela workaround" hacks by @andlaus in https://github.com/mercedes-benz/odxtools/pull/93
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.1.0...2.2.0
unit test workflows: switch to pytest and produce simplistic coverage reports by @andlaus in https://github.com/mercedes-benz/odxtools/pull/91
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.0.2...2.1.0
Use findtext where applicable by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/90
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.0.1...2.0.2
Count padding bits in structure bit length by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/87
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/2.0.0...2.0.1
Refactor the ODXLINK reference infrastructure by @andlaus in https://github.com/mercedes-benz/odxtools/pull/82
read_element_id() by @andlaus in https://github.com/mercedes-benz/odxtools/pull/86Full Changelog: https://github.com/mercedes-benz/odxtools/compare/1.9.1...2.0.0
Fix various issues by @andlaus in https://github.com/mercedes-benz/odxtools/pull/78
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/1.9.0...1.9.1
Resolve table in TableKeyParameter by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/75
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/1.8.1...1.9.0
Fix BasicStructure bit_length by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/71
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/1.8.0...1.8.1
Allow CodedConstParameter to have a bytes coded_value by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/59
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/1.7.0...1.8.0
Fix detection of missing factor by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/56
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/1.6.1...1.7.0
Fix compatibility with ODX v2.0.0 by @kayoub5 in https://github.com/mercedes-benz/odxtools/pull/55
Full Changelog: https://github.com/mercedes-benz/odxtools/compare/1.6.0...1.6.1
Your coding agent can read these notes before it upgrades. Set up the MCP server →