Releases: XKNX/xknxproject
Releases · XKNX/xknxproject
3.1.1
What’s Changed
- Ignore orphaned communication object instances (#239) @farmio
- Remove flake8 plugins and add pytest-icdiff (#236) @farmio
⬆️ Dependencies
12 changes
- Update pre-commit hooks (#226) @github-actions
- Bump cryptography from 40.0.2 to 41.0.1 (#238) @dependabot
- Bump tox from 4.5.2 to 4.6.0 (#237) @dependabot
- Bump pytest-cov from 4.0.0 to 4.1.0 (#235) @dependabot
- Bump ruff from 0.0.269 to 0.0.270 (#234) @dependabot
- Bump tox from 4.5.1 to 4.5.2 (#233) @dependabot
- Bump setuptools from 67.7.2 to 67.8.0 (#229) @dependabot
- Bump ruff from 0.0.267 to 0.0.269 (#230) @dependabot
- Bump pre-commit from 3.3.1 to 3.3.2 (#231) @dependabot
- Bump mypy from 1.2.0 to 1.3.0 (#228) @dependabot
- Bump ruff from 0.0.265 to 0.0.267 (#227) @dependabot
- Bump pylint from 2.17.3 to 2.17.4 (#224) @dependabot
- Bump pre-commit from 3.2.2 to 3.3.1 (#225) @dependabot
3.1.0
What’s Changed
- Infer DPT information from parsed data (#222) @farmio
- Parse a list of all DPTs of a communication object instead of just the last DPT (#221) @farmio
Internals
- Use codespell
- Use ruff
⬆️ Dependencies
- Bump tox from 4.5.0 to 4.5.1 (#220) @dependabot
- Bump peter-evans/create-pull-request from 4 to 5 (#219) @dependabot
- Update pre-commit hooks
3.0.0
Breaking changes
- Changed argument names of XKNXProj class to
path
andpassword
. - Changed structure and key names of resulting KNXProject dict.
What’s Changed
- Use TypedDict for DPTs and rename keys to
dpt
(#215) @farmio - Add logging for parsing (#214) @farmio
- Determine ETS 6 by schema version number instead of byte-literal (#213) @farmio
- Simplify parameters names of XKNXProj (#211) @farmio
- Update Readme and add some logs (#210) @farmio
- Parse project infos to
info
key (#209) @farmio - Fuzzy match language code (#208) @farmio
- Add project_uid for group addresses and devices (#203) @farmio
- Use group address strings instead of RefIds as keys (#202) @farmio
- More information for Spaces (#200) @farmio
- Apply translations (#196) @farmio
- Preserve text, description and function text of COs (#194) @farmio
- Support devices with multiple application versions (#195) @farmio
- Use unique keys for communication objects (Module and multiple instance compatibility) (#193) @farmio
Internals
- Use pyproject.toml for specifying project metadata (#212) @farmio
- Add release drafter workflow (#201) @farmio
- Update CI workflows (#188) @farmio
- Fix coverage source directory (#187) @farmio
- Update CI (#168) @farmio
- Add Python 3.11 CI runner (#153) @farmio
- Update pre-commit repo versions (#152) @farmio
⬆️ Dependencies
105 changes
- Bump setuptools from 67.6.1 to 67.7.2 (#217) @dependabot
- Bump tox from 4.4.12 to 4.5.0 (#218) @dependabot
- Bump pylint from 2.17.2 to 2.17.3 (#216) @dependabot
- Bump tox from 4.4.11 to 4.4.12 (#207) @dependabot
- Bump pytest from 7.3.0 to 7.3.1 (#206) @dependabot
- Bump cryptography from 40.0.1 to 40.0.2 (#205) @dependabot
- Bump tox from 4.4.8 to 4.4.11 (#197) @dependabot
- Bump pytest from 7.2.2 to 7.3.0 (#198) @dependabot
- Bump mypy from 1.1.1 to 1.2.0 (#199) @dependabot
- Bump setuptools from 67.6.0 to 67.6.1 (#190) @dependabot
- Bump pre-commit from 3.2.1 to 3.2.2 (#191) @dependabot
- Bump pylint from 2.17.1 to 2.17.2 (#192) @dependabot
- Bump tox from 4.4.7 to 4.4.8 (#185) @dependabot
- Bump cryptography from 39.0.2 to 40.0.1 (#182) @dependabot
- Bump pylint from 2.17.0 to 2.17.1 (#184) @dependabot
- Bump pre-commit from 3.2.0 to 3.2.1 (#183) @dependabot
- Bump pre-commit from 3.1.1 to 3.2.0 (#181) @dependabot
- Bump tox from 4.4.6 to 4.4.7 (#179) @dependabot
- Bump pylint from 2.16.4 to 2.17.0 (#178) @dependabot
- Bump mypy from 1.0.1 to 1.1.1 (#177) @dependabot
- Bump setuptools from 67.5.1 to 67.6.0 (#180) @dependabot
- Bump pytest from 7.2.1 to 7.2.2 (#174) @dependabot
- Bump setuptools from 67.3.3 to 67.5.1 (#176) @dependabot
- Bump cryptography from 39.0.1 to 39.0.2 (#171) @dependabot
- Bump pre-commit from 3.0.4 to 3.1.1 (#172) @dependabot
- Bump tox from 4.4.5 to 4.4.6 (#175) @dependabot
- Bump pylint from 2.16.2 to 2.16.4 (#173) @dependabot
- Bump setuptools from 67.3.2 to 67.3.3 (#170) @dependabot
- Bump mypy from 1.0.0 to 1.0.1 (#169) @dependabot
- Bump setuptools from 67.3.1 to 67.3.2 (#167) @dependabot
- Bump setuptools from 67.2.0 to 67.3.1 (#166) @dependabot
- Bump pylint from 2.16.1 to 2.16.2 (#165) @dependabot
- Bump tox from 4.4.4 to 4.4.5 (#164) @dependabot
- Bump mypy from 0.991 to 1.0.0 (#161) @dependabot
- Bump cryptography from 39.0.0 to 39.0.1 (#163) @dependabot
- Bump setuptools from 67.1.0 to 67.2.0 (#162) @dependabot
- Bump pre-commit from 3.0.3 to 3.0.4 (#160) @dependabot
- Bump pre-commit from 3.0.2 to 3.0.3 (#158) @dependabot
- Bump pylint from 2.16.0 to 2.16.1 (#159) @dependabot
- Bump pylint from 2.15.10 to 2.16.0 (#157) @dependabot
- Bump setuptools from 67.0.0 to 67.1.0 (#155) @dependabot
- Bump tox from 4.4.3 to 4.4.4 (#156) @dependabot
- Bump tox from 4.4.2 to 4.4.3 (#154) @dependabot
- Bump setuptools from 66.1.1 to 67.0.0 (#149) @dependabot
- Bump pre-commit from 3.0.1 to 3.0.2 (#151) @dependabot
- Bump isort from 5.11.4 to 5.12.0 (#150) @dependabot
- Bump tox from 4.3.5 to 4.4.2 (#147) @dependabot
- Bump pre-commit from 3.0.0 to 3.0.1 (#148) @dependabot
- Bump cryptography from 38.0.4 to 39.0.0 (#126) @dependabot
- Bump pre-commit from 2.21.0 to 3.0.0 (#146) @dependabot
- Bump setuptools from 66.0.0 to 66.1.1 (#145) @dependabot
- Bump tox from 4.3.4 to 4.3.5 (#144) @dependabot
- Bump pydocstyle from 6.2.3 to 6.3.0 (#143) @dependabot
- Bump tox from 4.3.3 to 4.3.4 (#142) @dependabot
- Bump tox from 4.2.8 to 4.3.3 (#141) @dependabot
- Bump pytest from 7.2.0 to 7.2.1 (#140) @dependabot
- Bump setuptools from 65.7.0 to 66.0.0 (#139) @dependabot
- Bump tox from 4.2.7 to 4.2.8 (#137) @dependabot
- Bump setuptools from 65.6.3 to 65.7.0 (#135) @dependabot
- Bump tox from 4.2.6 to 4.2.7 (#136) @dependabot
- Bump pylint from 2.15.9 to 2.15.10 (#133) @dependabot
- Bump tox from 4.2.5 to 4.2.6 (#132) @dependabot
- Bump pydocstyle from 6.2.2 to 6.2.3 (#134) @dependabot
- Bump tox from 4.2.4 to 4.2.5 (#131) @dependabot
- Bump tox from 4.2.2 to 4.2.4 (#130) @dependabot
- Bump tox from 4.1.3 to 4.2.2 (#129) @dependabot
- Bump tox from 4.1.2 to 4.1.3 (#128) @dependabot
- Bump pydocstyle from 6.1.1 to 6.2.2 (#127) @dependabot
- Bump tox from 4.1.1 to 4.1.2 (#125) @dependabot
- Bump tox from 4.1.0 to 4.1.1 (#124) @dependabot
- Bump tox from 4.0.19 to 4.1.0 (#123) @dependabot
- Bump tox from 4.0.18 to 4.0.19 (#122) @dependabot
- Bump pre-commit from 2.20.0 to 2.21.0 (#120) @dependabot
- Bump tox from 4.0.16 to 4.0.18 (#121) @dependabot
- Bump flake8-isort from 5.0.3 to 6.0.0 (#119) @dependabot
- Bump isort from 5.11.3 to 5.11.4 (#118) @dependabot
- Bump tox from 4.0.14 to 4.0.16 (#117) @dependabot
- Bump tox from 4.0.12 to 4.0.14 (#116) @dependabot
- Bump pylint from 2.15.8 to 2.15.9 (#114) @dependabot
- Bump isort from 5.11.2 to 5.11.3 (#115) @dependabot
- Bump tox from 4.0.11 to 4.0.12 (#113) @dependabot
- Bump tox from 4.0.9 to 4.0.11 (#112) @dependabot
- Bump isort from 5.11.0 to 5.11.2 (#111) @dependabot
- Bump tox from 4.0.8 to 4.0.9 (#110) @dependabot
- Bump isort from 5.10.1 to 5.11.0 (#108) @dependabot
- Bump tox from 4.0.3 to 4.0.8 (#109) @dependabot
- Bump tox from 4.0.0 to 4.0.3 (#107) @dependabot
- Bump tox from 3.27.1 to 4.0.0 (#106) @dependabot
- Bump pylint from 2.15.7 to 2.15.8 (#105) @dependabot
- Bump pylint from 2.15.6 to 2.15.7 (#104) @dependabot
- Bump cryptography from 38.0.3 to 38.0.4 (#103) @dependabot
- Bump setuptools from 65.6.2 to 65.6.3 (#102) @dependabot
- Bump flake8-isort from 5.0.0 to 5.0.3 (#98) @dependabot
- Bump setuptools from 65.5.1 to 65.6.2 (#100) @dependabot
- Bump pylint from 2.15.5 to 2.15.6 (#99) @dependabot
- Bump flake8 from 5.0.4 to 6.0.0 (#101) @dependabot
- Bump mypy from 0.990 to 0.991 (#97) @dependabot
- Bump tox from 3.27.0 to 3.27.1 (#96) @dependabot
- Bump mypy from 0.982 to 0.990 (#95) @dependabot
- Bump setuptools from 65.5.0 to 65.5.1 (#94) @dependabot
- Bump cryptography from 38.0.2 to 38.0.3 (#93) @dependabot
- Bump tox from 3.26.0 to 3.27.0 (#92) @dependabot
- Bump pytest from 7.1.3 to 7.2.0 (#91) @dependabot
- Bump pylint from 2.15.4 to 2.15.5 (#90) @dependabot
- Bump setuptools from 65.4.1 to 65.5.0 (#89) @dependabot
2.1.0
What's Changed
- Bump pylint from 2.15.3 to 2.15.4 by @dependabot in #86
- Bump flake8-isort from 4.2.0 to 5.0.0 by @dependabot in #85
- Bump cryptography from 38.0.1 to 38.0.2 by @dependabot in #87
- Import description for group addresses by @sgrimee in #88
New Contributors
Full Changelog: 2.0.0...2.1.0
2.0.0
Breaking Changes
- KNXProj has been renamed to XKNXProj
Features/Fixes
- Dependency Updates
- use pathlib.Path and tempfile.TemporaryDirectory by @farmio in #39
- Parse archive contents directly instead of extracting them to a temporary directory by @farmio in #45
- Update requirements by @farmio in #47
- Handle projects without locations by @farmio in #48
- Use lxml instead of minidom everywhere by @farmio in #54
- Use ElementTree instead of lxml by @farmio in #57
- Load all/correct application program for each device by @farmio in #61
- Parse communication object flags by @farmio in #64
- Skip parsing unused tags from application programs by @farmio in #65
- Store communication objects in root key and link to them from group addresses and devices by @farmio in #69
- Parse manufacturers from knx_master.xml instead of hardcoding by @marvin-w in #84
- Implement parsing of module definitions by @marvin-w in #83
New Contributors
Full Changelog: 1.1.0...2.0.0
1.1.0 - Add support for parsing location information
New Features
- We now support loading location information (where is your device located) from the project XML
- All DPT Types will now be rendered as a dictionary with a main and a sub part. (see example in test files)
Full Changelog: 1.0.0...1.1.0
Adds parser export functionality - 1.0.0
Add parser functionality
- Get an object describing your complete KNX setup (JSON compatible)
Performance
- Performance improvements on reading application programs
0.1.0 - Initial Release
Currently, xknxproject supports extracting (password protected) ETS5 and ETS6 files and can obtain the following information from your project:
- Areas, Lines, Devices and their individual address
- CommunicationObjectInstance references for their devices (GA assignments)
- Group Addresses and their DPT type if set
See README for more infos