objutils 0.10.20__tar.gz → 0.10.22__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {objutils-0.10.20 → objutils-0.10.22}/.github/workflows/pythonapp.yml +7 -7
- {objutils-0.10.20 → objutils-0.10.22}/.idea/objutils@1.iml +1 -1
- {objutils-0.10.20 → objutils-0.10.22}/.pre-commit-config.yaml +1 -1
- {objutils-0.10.20 → objutils-0.10.22}/PKG-INFO +3 -3
- {objutils-0.10.20 → objutils-0.10.22}/docs/README.rst +1 -1
- {objutils-0.10.20 → objutils-0.10.22}/docs/installation.rst +1 -1
- {objutils-0.10.20 → objutils-0.10.22}/objutils/__init__.py +1 -1
- {objutils-0.10.20 → objutils-0.10.22}/objutils/dwarf/__init__.py +1 -2
- {objutils-0.10.20 → objutils-0.10.22}/objutils/dwarf/sm.py +20 -1
- {objutils-0.10.20 → objutils-0.10.22}/objutils/dwarf/traverser.py +2 -2
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_elf.py +83 -1
- {objutils-0.10.20 → objutils-0.10.22}/objutils/version.py +1 -1
- {objutils-0.10.20 → objutils-0.10.22}/poetry.lock +19 -18
- {objutils-0.10.20 → objutils-0.10.22}/pyproject.toml +3 -3
- {objutils-0.10.20 → objutils-0.10.22}/.clang-format +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.codacy.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.codeclimate.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.coveralls.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.github/FUNDING.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.github/ISSUE_TEMPLATE/documentation.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.github/ISSUE_TEMPLATE.md +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.github/copilot-instructions.md +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.gitignore +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.idea/.gitignore +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.idea/copilot.data.migration.ask2agent.xml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.idea/deployment.xml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.idea/inspectionProfiles/profiles_settings.xml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.idea/misc.xml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.idea/modules.xml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.idea/pyLspTools.xml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.idea/pyProjectModel.xml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.idea/vcs.xml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.pylintrc +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.readthedocs.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/.travis.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/CMakeLists.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/CODE_OF_CONDUCT.md +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/CONTRIBUTORS +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/LICENSE +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/MANIFEST.in +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/PULL_REQUEST_TEMPLATE.md +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/appveyor.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/bandit.yml +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/Data_Formats.pdf +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/ELF_Format.pdf +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/KNOWN_GOOD_DWARF_REFERENCE.md +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/apidoc.sh +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/conf.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.buildinfo +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.buildinfo.bak +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/README.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/environment.pickle +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/howto.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/index.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/installation.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/modules.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/objutils.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/objutils.elf.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/scripts.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/session.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/.doctrees/tutorial.doctree +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/README.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_images/objutils_basic.png +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/index.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/ash.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/binfile.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/checksums.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/cosmac.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/elf/defs.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/elf.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/emon52.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/etek.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/exceptions.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/fpc.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/hexdump.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/hexfile.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/ihex.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/image.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/logger.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/mostec.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/pickleif.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/rca.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/readers.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/registry.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/section.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/sig.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/srec.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/tek.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/titxt.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/utils.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/README.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/howto.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/index.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/installation.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/modules.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/objutils.elf.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/objutils.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/scripts.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/session.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_sources/tutorial.rst.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/alabaster.css +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/basic.css +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/check-solid.svg +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/clipboard.min.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/copy-button.svg +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/copybutton.css +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/copybutton.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/copybutton_funcs.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/custom.css +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/doctools.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/documentation_options.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/file.png +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/github-banner.svg +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/language_data.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/minus.png +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/plus.png +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/pygments.css +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/scripts/bootstrap.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/scripts/bootstrap.js.LICENSE.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/scripts/fontawesome.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/scripts/fontawesome.js.LICENSE.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/scripts/pydata-sphinx-theme.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/searchtools.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/sphinx_highlight.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/styles/pydata-sphinx-theme.css +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/styles/theme.css +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/vendor/fontawesome/webfonts/fa-brands-400.ttf +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/vendor/fontawesome/webfonts/fa-brands-400.woff2 +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/vendor/fontawesome/webfonts/fa-regular-400.ttf +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/vendor/fontawesome/webfonts/fa-regular-400.woff2 +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/vendor/fontawesome/webfonts/fa-solid-900.ttf +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/vendor/fontawesome/webfonts/fa-solid-900.woff2 +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_static/webpack-macros.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/genindex.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/howto.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/index.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/installation.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/modules.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/objects.inv +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/objutils.elf.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/objutils.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/py-modindex.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/scripts.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/search.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/searchindex.js +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/session.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/tutorial.html +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/elf-64-gen.pdf +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/example0.srec +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/howto.rst +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/index.rst +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/make.bat +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/modules.rst +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/objutils.elf.rst +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/objutils.rst +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/objutils_banner.png +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/objutils_basic.png +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/objutils_dark.jpg +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/objutils_social.jpg +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/requirements.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/scripts.rst +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/session.rst +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/tutorial.rst +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/docs/tutorial1.ipynb +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/.coveragerc +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/.vscode/launch.json +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/.vscode/settings.json +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/a2l_test.shf +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/ash.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/binfile.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/checksums.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/cosmac.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/dwarf/attrparser.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/dwarf/c_generator.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/dwarf/constants.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/dwarf/encoding.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/dwarf/lineprog.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/dwarf/readers.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/elf/__init__.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/elf/arm/__init__.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/elf/arm/attributes.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/elf/defs.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/elf/model.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/emon52.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/etek.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/exceptions.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/extensions/__init__.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/extensions/ctre.hpp +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/extensions/difflib.h +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/extensions/elf_parser.cpp +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/extensions/elf_parser.hpp +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/extensions/exceptions.cpp +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/extensions/exceptions.hpp +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/extensions/hexfile.cpp +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/extensions/wrapper.cpp +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/fpc.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/hexdump.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/hexfile.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/ieee695.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/ihex.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/image.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/logger.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/mostec.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/objutils.code-workspace +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/oocdtxt.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/pecoff/__init__.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/pecoff/defs.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/pecoff/model.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/pecoff/pdb/__init__.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/pickleif.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/rca.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/readers.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/registry.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/arduino_build_artifacts.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_cgen.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_coff_extract.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_coff_import.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_coff_info.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_coff_syms.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_dwarf_import.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_dwarf_info.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_elf_arm_attrs.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_elf_extract.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_elf_import.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_elf_info.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_elf_syms.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_hex_info.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_hex_merge.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/scripts/oj_hex_split.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/section.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/shf.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/sig.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/srec.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/symbols.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tek.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/__init__.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_arm_attributes.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_asam_alternate_modes.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_ash.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_c_generator.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_checksums.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_cygpath.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_diff_bin.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_emon52.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_etek.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_examples_cgen.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_extended.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_fpc.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_hexdump.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_hexfile.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_ihex.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_image.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_mostec.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_oocdtxt.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_pdb_typeinfo_dump.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_probe_uniqueness.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_readers.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_registry.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_repr.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_section.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_section_join.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_shf.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_sm.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_srec.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_tek.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/tests/test_titext.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/titxt.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/utils/__init__.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/utils/arduino.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/objutils/utils/diff.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/requirements.txt +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/setup.cfg +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/setup.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/test_join_sections.py +0 -0
- {objutils-0.10.20 → objutils-0.10.22}/test_requirements.txt +0 -0
|
@@ -22,12 +22,12 @@ jobs:
|
|
|
22
22
|
- os: windows-latest
|
|
23
23
|
cibw_archs_windows: AMD64
|
|
24
24
|
steps:
|
|
25
|
-
- uses: actions/checkout@
|
|
26
|
-
- uses: pypa/cibuildwheel@
|
|
25
|
+
- uses: actions/checkout@v7.0.1
|
|
26
|
+
- uses: pypa/cibuildwheel@v4.3.1
|
|
27
27
|
env:
|
|
28
28
|
CIBW_ARCHS_WINDOWS: ${{ matrix.cibw_archs_windows || '' }}
|
|
29
29
|
CIBW_ARCHS_MACOS: arm64
|
|
30
|
-
- uses: actions/upload-artifact@
|
|
30
|
+
- uses: actions/upload-artifact@v7.0.2
|
|
31
31
|
with:
|
|
32
32
|
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
|
|
33
33
|
path: ./wheelhouse/*.whl
|
|
@@ -36,12 +36,12 @@ jobs:
|
|
|
36
36
|
name: Build source distribution
|
|
37
37
|
runs-on: ubuntu-latest
|
|
38
38
|
steps:
|
|
39
|
-
- uses: actions/checkout@
|
|
39
|
+
- uses: actions/checkout@v7.0.1
|
|
40
40
|
- name: Build sdist
|
|
41
41
|
run: |
|
|
42
42
|
pip install -U build
|
|
43
43
|
python -m build --sdist
|
|
44
|
-
- uses: actions/upload-artifact@
|
|
44
|
+
- uses: actions/upload-artifact@v7.0.2
|
|
45
45
|
with:
|
|
46
46
|
path: dist/*.tar.gz
|
|
47
47
|
include-hidden-files: true
|
|
@@ -53,11 +53,11 @@ jobs:
|
|
|
53
53
|
id-token: write
|
|
54
54
|
contents: read
|
|
55
55
|
steps:
|
|
56
|
-
- uses: actions/download-artifact@
|
|
56
|
+
- uses: actions/download-artifact@v8.0.2
|
|
57
57
|
with:
|
|
58
58
|
path: dist
|
|
59
59
|
merge-multiple: true
|
|
60
60
|
- name: Publish package to PyPI
|
|
61
|
-
uses: pypa/gh-action-pypi-publish@v1.
|
|
61
|
+
uses: pypa/gh-action-pypi-publish@v1.14.2
|
|
62
62
|
with:
|
|
63
63
|
attestations: true
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: objutils
|
|
3
|
-
Version: 0.10.
|
|
3
|
+
Version: 0.10.22
|
|
4
4
|
Summary: Objectfile library for Python
|
|
5
5
|
Keywords: hex files,intel hex,s19,srec,srecords,object files,map files,embedded,microcontroller,ECU,shf,rfc4194
|
|
6
6
|
Author-Email: Christoph Schueler <cpu12.gems@googlemail.com>
|
|
@@ -19,7 +19,7 @@ Classifier: Programming Language :: Python :: 3.15
|
|
|
19
19
|
Project-URL: Repository, https://www.github.com/Christoph2/objutils
|
|
20
20
|
Requires-Python: <4.0,>=3.10
|
|
21
21
|
Requires-Dist: construct>=2.10.70
|
|
22
|
-
Requires-Dist: mako>=1.
|
|
22
|
+
Requires-Dist: mako>=1.4.2
|
|
23
23
|
Requires-Dist: sqlalchemy>=2.0.29
|
|
24
24
|
Requires-Dist: rich>=14.2
|
|
25
25
|
Requires-Dist: numpy>=2.2.5
|
|
@@ -74,7 +74,7 @@ Or with Poetry:
|
|
|
74
74
|
Prerequisites
|
|
75
75
|
-------------
|
|
76
76
|
|
|
77
|
-
- Python
|
|
77
|
+
- Python 3.10 to 3.15
|
|
78
78
|
|
|
79
79
|
Features
|
|
80
80
|
--------
|
|
@@ -639,7 +639,6 @@ class DwarfProcessor:
|
|
|
639
639
|
Earlier or later DWARF versions may not parse correctly.
|
|
640
640
|
"""
|
|
641
641
|
|
|
642
|
-
|
|
643
642
|
UTF8String = CString(encoding="utf8")
|
|
644
643
|
|
|
645
644
|
def __init__(self, elf_parser, *, verbose: bool = True):
|
|
@@ -1112,7 +1111,7 @@ class DwarfProcessor:
|
|
|
1112
1111
|
debug_abbrev_offset = dbgInfo.body.debug_abbrev_offset
|
|
1113
1112
|
address_size = dbgInfo.body.address_size
|
|
1114
1113
|
else:
|
|
1115
|
-
if version > 5:
|
|
1114
|
+
if version > 5: # Handle messed up version numbers in some binaries (e.g. 39424)
|
|
1116
1115
|
address_size = self.elf_address_size
|
|
1117
1116
|
else:
|
|
1118
1117
|
address_size = dbgInfo.body.address_size
|
|
@@ -139,6 +139,25 @@ from construct import Array
|
|
|
139
139
|
from objutils.dwarf import constants
|
|
140
140
|
|
|
141
141
|
|
|
142
|
+
class DynamicValue:
|
|
143
|
+
|
|
144
|
+
"""Represents a dynamic value (can only evaluated by a debugger) on the DWARF stack.
|
|
145
|
+
"""
|
|
146
|
+
|
|
147
|
+
def __init__(self, expr: str):
|
|
148
|
+
self.expr = expr
|
|
149
|
+
|
|
150
|
+
def __str__(self) -> str:
|
|
151
|
+
return self.expr
|
|
152
|
+
|
|
153
|
+
def __repr__(self):
|
|
154
|
+
return f"DynamicValue({self.expr})"
|
|
155
|
+
|
|
156
|
+
@property
|
|
157
|
+
def value(self):
|
|
158
|
+
return self.expr
|
|
159
|
+
|
|
160
|
+
|
|
142
161
|
@dataclass
|
|
143
162
|
class TypedValue:
|
|
144
163
|
"""Represents a value on the DWARF stack with an associated type.
|
|
@@ -2438,5 +2457,5 @@ class StackMachine:
|
|
|
2438
2457
|
result.append(f"{opcode.name}()")
|
|
2439
2458
|
|
|
2440
2459
|
# Return summary of executed ops
|
|
2441
|
-
res_val = self.stack.pop() if not self.stack.empty() else
|
|
2460
|
+
res_val = self.stack.pop() if not self.stack.empty() else DynamicValue("; ".join(result))
|
|
2442
2461
|
return EvaluationResult(value=res_val, representation="; ".join(result))
|
|
@@ -1374,9 +1374,9 @@ class AttributeParser:
|
|
|
1374
1374
|
lower_bound = 0
|
|
1375
1375
|
upper_bound = 0
|
|
1376
1376
|
if "lower_bound" in entry.attributes_map:
|
|
1377
|
-
lower_bound =
|
|
1377
|
+
lower_bound = self.dwarf_expression(entry.attributes_map["lower_bound"].form, entry.attributes_map["lower_bound"].raw_value)
|
|
1378
1378
|
if "upper_bound" in entry.attributes_map:
|
|
1379
|
-
upper_bound =
|
|
1379
|
+
upper_bound = self.dwarf_expression(entry.attributes_map["upper_bound"].form, entry.attributes_map["upper_bound"].raw_value)
|
|
1380
1380
|
print(
|
|
1381
1381
|
f"{' ' * level}{tag} '{name}'{type_info} [lower_bound={lower_bound}: upper_bound={upper_bound}] [off=0x{entry.offset:08x}]"
|
|
1382
1382
|
)
|
|
@@ -10,12 +10,14 @@ Based on the actual ElfParser API which uses:
|
|
|
10
10
|
"""
|
|
11
11
|
|
|
12
12
|
import collections
|
|
13
|
+
import gc
|
|
13
14
|
import tempfile
|
|
15
|
+
import weakref
|
|
14
16
|
from pathlib import Path
|
|
15
17
|
|
|
16
18
|
import pytest
|
|
17
19
|
|
|
18
|
-
from objutils.elf import ElfParser
|
|
20
|
+
from objutils.elf import ElfParser, import_dwarf_to_db, model
|
|
19
21
|
|
|
20
22
|
# Test data directory
|
|
21
23
|
EXAMPLES_DIR = Path(__file__).parent.parent.parent / "examples"
|
|
@@ -341,6 +343,57 @@ class TestElfInMemoryDatabase:
|
|
|
341
343
|
parser_disk.close()
|
|
342
344
|
parser_mem.close()
|
|
343
345
|
|
|
346
|
+
def test_in_memory_context_manager_closes_parser(self, sample_elf_path):
|
|
347
|
+
"""Context-manager usage must release in-memory parser resources."""
|
|
348
|
+
with ElfParser(str(sample_elf_path), in_memory=True) as parser:
|
|
349
|
+
assert parser.session is not None
|
|
350
|
+
assert parser.e_machine == 83
|
|
351
|
+
|
|
352
|
+
assert parser._closed is True
|
|
353
|
+
assert parser.db is None
|
|
354
|
+
assert parser.session is None
|
|
355
|
+
assert parser.fp is None
|
|
356
|
+
|
|
357
|
+
def test_in_memory_close_is_idempotent(self, sample_elf_path):
|
|
358
|
+
"""Calling close() multiple times should be safe."""
|
|
359
|
+
parser = ElfParser(str(sample_elf_path), in_memory=True)
|
|
360
|
+
parser.close()
|
|
361
|
+
parser.close()
|
|
362
|
+
assert parser._closed is True
|
|
363
|
+
|
|
364
|
+
def test_in_memory_multiple_parsers_sequential_cleanup(self, sample_elf_path):
|
|
365
|
+
"""Opening multiple in-memory parsers sequentially must not raise cleanup errors."""
|
|
366
|
+
for _ in range(25):
|
|
367
|
+
with ElfParser(str(sample_elf_path), in_memory=True) as parser:
|
|
368
|
+
assert isinstance(parser.e_entry, int)
|
|
369
|
+
|
|
370
|
+
def test_in_memory_stress_multiple_elf_files_cleanup(self):
|
|
371
|
+
"""Stress-test in-memory cleanup across multiple ELF files and many open/close cycles."""
|
|
372
|
+
available_elfs = [EXAMPLES_DIR / name for name in SAMPLE_ELF_FILES if (EXAMPLES_DIR / name).exists()]
|
|
373
|
+
if not available_elfs:
|
|
374
|
+
pytest.skip("No sample ELF files found for stress test")
|
|
375
|
+
|
|
376
|
+
for cycle in range(15):
|
|
377
|
+
for elf_path in available_elfs:
|
|
378
|
+
with ElfParser(str(elf_path), in_memory=True) as parser:
|
|
379
|
+
# Touch common ELF and optional debug/DWARF query paths.
|
|
380
|
+
assert isinstance(parser.e_machine, int)
|
|
381
|
+
_ = parser.debug_sections()
|
|
382
|
+
ref = weakref.ref(parser)
|
|
383
|
+
|
|
384
|
+
assert parser._closed is True
|
|
385
|
+
assert parser.db is None
|
|
386
|
+
assert parser.session is None
|
|
387
|
+
assert parser.fp is None
|
|
388
|
+
|
|
389
|
+
del parser
|
|
390
|
+
gc.collect()
|
|
391
|
+
assert ref() is None
|
|
392
|
+
|
|
393
|
+
# Force periodic collection between larger batches.
|
|
394
|
+
if cycle % 5 == 4:
|
|
395
|
+
gc.collect()
|
|
396
|
+
|
|
344
397
|
|
|
345
398
|
class TestElfImageCreation:
|
|
346
399
|
"""Test image creation from ELF."""
|
|
@@ -378,5 +431,34 @@ class TestElfDebugSections:
|
|
|
378
431
|
assert isinstance(debug_secs, (collections.OrderedDict, type(None)))
|
|
379
432
|
|
|
380
433
|
|
|
434
|
+
class TestDwarfImportRegression:
|
|
435
|
+
"""Regression tests for DWARF importer into .prgdb databases."""
|
|
436
|
+
|
|
437
|
+
def test_import_dwarf_populates_database(self):
|
|
438
|
+
"""Importing DWARF should succeed and persist DIE/attribute rows."""
|
|
439
|
+
candidates = [
|
|
440
|
+
EXAMPLES_DIR / "lang-generics.elf",
|
|
441
|
+
EXAMPLES_DIR / "hello_xcp.ino.elf",
|
|
442
|
+
EXAMPLES_DIR / "avr.elf",
|
|
443
|
+
]
|
|
444
|
+
elf_path = next((p for p in candidates if p.exists()), None)
|
|
445
|
+
if elf_path is None:
|
|
446
|
+
pytest.skip("No suitable ELF sample found for DWARF import regression test")
|
|
447
|
+
|
|
448
|
+
with tempfile.TemporaryDirectory(ignore_cleanup_errors=True) as tmpdir:
|
|
449
|
+
out_db = Path(tmpdir) / "imported.prgdb"
|
|
450
|
+
rc = import_dwarf_to_db(str(elf_path), str(out_db), quiet=True, verbose=False, force=True)
|
|
451
|
+
assert rc == 0
|
|
452
|
+
assert out_db.exists()
|
|
453
|
+
|
|
454
|
+
db = model.Model(str(out_db))
|
|
455
|
+
try:
|
|
456
|
+
session = db.session
|
|
457
|
+
assert session.query(model.DebugInformationEntry).count() > 0
|
|
458
|
+
assert session.query(model.DIEAttribute).count() > 0
|
|
459
|
+
finally:
|
|
460
|
+
db.close()
|
|
461
|
+
|
|
462
|
+
|
|
381
463
|
if __name__ == "__main__":
|
|
382
464
|
pytest.main([__file__, "-v"])
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# This file is automatically @generated by Poetry 2.
|
|
1
|
+
# This file is automatically @generated by Poetry 2.5.1 and should not be changed by hand.
|
|
2
2
|
|
|
3
3
|
[[package]]
|
|
4
4
|
name = "bandit"
|
|
@@ -473,14 +473,14 @@ files = [
|
|
|
473
473
|
|
|
474
474
|
[[package]]
|
|
475
475
|
name = "mako"
|
|
476
|
-
version = "1.4.
|
|
476
|
+
version = "1.4.2"
|
|
477
477
|
description = "A super-fast templating language that borrows the best ideas from the existing templating languages."
|
|
478
478
|
optional = false
|
|
479
479
|
python-versions = ">=3.10"
|
|
480
480
|
groups = ["main"]
|
|
481
481
|
files = [
|
|
482
|
-
{file = "mako-1.4.
|
|
483
|
-
{file = "mako-1.4.
|
|
482
|
+
{file = "mako-1.4.2-py3-none-any.whl", hash = "sha256:e70a2a4308952b33a21208bfd6725da79fae5a8c224578f8cfdeb60e5ace03df"},
|
|
483
|
+
{file = "mako-1.4.2.tar.gz", hash = "sha256:7227a060ee3af55a493af61d73d6beef13044b81dba9586736c13945f09464ce"},
|
|
484
484
|
]
|
|
485
485
|
|
|
486
486
|
[package.dependencies]
|
|
@@ -840,19 +840,19 @@ dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "requests
|
|
|
840
840
|
|
|
841
841
|
[[package]]
|
|
842
842
|
name = "python-discovery"
|
|
843
|
-
version = "1.
|
|
843
|
+
version = "1.6.2"
|
|
844
844
|
description = "Python interpreter discovery"
|
|
845
845
|
optional = true
|
|
846
|
-
python-versions = ">=3.
|
|
846
|
+
python-versions = ">=3.9"
|
|
847
847
|
groups = ["main"]
|
|
848
848
|
markers = "extra == \"dev\""
|
|
849
849
|
files = [
|
|
850
|
-
{file = "python_discovery-1.
|
|
851
|
-
{file = "python_discovery-1.
|
|
850
|
+
{file = "python_discovery-1.6.2-py3-none-any.whl", hash = "sha256:f0c697f95a3aaec4174a6e5e58f5885e25768684bafc76f1afde384709ebdcf2"},
|
|
851
|
+
{file = "python_discovery-1.6.2.tar.gz", hash = "sha256:cd1738ca1d37c86ef9d0b654dd46fcee1e41c97c6add12575e8501ced39afdb4"},
|
|
852
852
|
]
|
|
853
853
|
|
|
854
854
|
[package.dependencies]
|
|
855
|
-
filelock = ">=3.
|
|
855
|
+
filelock = ">=3.16.1"
|
|
856
856
|
|
|
857
857
|
[[package]]
|
|
858
858
|
name = "pytokens"
|
|
@@ -1278,23 +1278,24 @@ files = [
|
|
|
1278
1278
|
|
|
1279
1279
|
[[package]]
|
|
1280
1280
|
name = "virtualenv"
|
|
1281
|
-
version = "21.
|
|
1281
|
+
version = "21.14.8"
|
|
1282
1282
|
description = "Virtual Python Environment builder"
|
|
1283
1283
|
optional = true
|
|
1284
1284
|
python-versions = ">=3.9"
|
|
1285
1285
|
groups = ["main"]
|
|
1286
1286
|
markers = "extra == \"dev\""
|
|
1287
1287
|
files = [
|
|
1288
|
-
{file = "virtualenv-21.
|
|
1289
|
-
{file = "virtualenv-21.
|
|
1288
|
+
{file = "virtualenv-21.14.8-py3-none-any.whl", hash = "sha256:d2a347fdbc1a65e33c2c5e84dc767b4a3538a25749536a752744d4fe1f71c37a"},
|
|
1289
|
+
{file = "virtualenv-21.14.8.tar.gz", hash = "sha256:394e45ed610ceffb5018e1a179e3a8012c02fd87fe792ab4aae67ce5e7e3afbd"},
|
|
1290
1290
|
]
|
|
1291
1291
|
|
|
1292
1292
|
[package.dependencies]
|
|
1293
|
-
distlib = ">=0.3
|
|
1294
|
-
filelock = {version = ">=3.24.2,<
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1293
|
+
distlib = ">=0.4.3,<1"
|
|
1294
|
+
filelock = {version = ">=3.24.2,<5", markers = "python_version >= \"3.10\""}
|
|
1295
|
+
packaging = ">=26.3"
|
|
1296
|
+
platformdirs = ">=4.4,<5"
|
|
1297
|
+
python-discovery = ">=1.6.1"
|
|
1298
|
+
typing-extensions = {version = ">=4.16", markers = "python_version < \"3.11\""}
|
|
1298
1299
|
|
|
1299
1300
|
[extras]
|
|
1300
1301
|
dev = ["bandit", "black", "bumpver", "pre-commit", "pytest", "pyupgrade", "ruff"]
|
|
@@ -1302,4 +1303,4 @@ dev = ["bandit", "black", "bumpver", "pre-commit", "pytest", "pyupgrade", "ruff"
|
|
|
1302
1303
|
[metadata]
|
|
1303
1304
|
lock-version = "2.1"
|
|
1304
1305
|
python-versions = ">=3.10,<4.0"
|
|
1305
|
-
content-hash = "
|
|
1306
|
+
content-hash = "b9d21d0225b6115e6970117ad5d21f189cc2d9c1a5541f2fe54a2d78b533ebdb"
|
|
@@ -4,7 +4,7 @@ build-backend = "scikit_build_core.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "objutils"
|
|
7
|
-
version = "0.10.
|
|
7
|
+
version = "0.10.22"
|
|
8
8
|
description = "Objectfile library for Python"
|
|
9
9
|
authors = [
|
|
10
10
|
{name = "Christoph Schueler", email = "cpu12.gems@googlemail.com"}
|
|
@@ -51,7 +51,7 @@ keywords=[
|
|
|
51
51
|
|
|
52
52
|
dependencies = [
|
|
53
53
|
"construct>=2.10.70",
|
|
54
|
-
"mako>=1.
|
|
54
|
+
"mako>=1.4.2",
|
|
55
55
|
"sqlalchemy>=2.0.29",
|
|
56
56
|
"rich>=14.2",
|
|
57
57
|
"numpy>=2.2.5",
|
|
@@ -127,7 +127,7 @@ skip = ["*_i686", "*-musllinux*"]
|
|
|
127
127
|
build-frontend = "build"
|
|
128
128
|
|
|
129
129
|
[tool.bumpver]
|
|
130
|
-
current_version = "0.10.
|
|
130
|
+
current_version = "0.10.22"
|
|
131
131
|
version_pattern = "MAJOR.MINOR.PATCH"
|
|
132
132
|
commit_message = "bump version {old_version} -> {new_version}"
|
|
133
133
|
commit = true
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/checksums.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{objutils-0.10.20 → objutils-0.10.22}/docs/docs/_build/html/_modules/objutils/exceptions.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|