py-xdis: updated to 6.1.0

6.1.0 2024-03-15
=================

Lots of changes major changes. API has changed.

We now support many disassembly options:
  * classic:  disasm-like output
  * bytes: disasm-like output with bytecode
  * extended: simple interpretation of previous sequence of instructions
  * extended-bytes: same as above, but with "bytes" bytecode ouptut
  * header: show header/metadata information only

This is reflected in the `--format` (`-F`) options on `pydisasm`.
Option `--show-source` (`-S`) gives add the source text line (or part of it) before assembly instructions that implement the line.

Released Python magic numbers have been updated as of this release (up to Python 3.12.2, including PyPy magic numbers.

Some support for the [GraalVM](https://www.graalvm.org/python/)
implementation of Python started.

Many bugs fixed.

A lot of Linting and coding style modernization.

typing.NameTuple used for Python versions that support this.
Additional fields "start_offset" and "tos_str" added to instruction.

Elliot Tarbet (2elli) largely provided support for Python 3.11 and 3.12 bytecode
This commit is contained in:
adam 2024-03-23 06:49:52 +00:00
parent 28906e47ce
commit c8483e28d5
3 changed files with 54 additions and 21 deletions

View File

@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.42 2023/01/16 09:26:23 adam Exp $
# $NetBSD: Makefile,v 1.43 2024/03/23 06:49:52 adam Exp $
DISTNAME= xdis-6.0.5
DISTNAME= xdis-6.1.0
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
CATEGORIES= devel python
MASTER_SITES= ${MASTER_SITE_PYPI:=x/xdis/}
@ -10,19 +10,21 @@ HOMEPAGE= https://github.com/rocky/python-xdis
COMMENT= Python cross-version byte-code disassembler and marshal routines
LICENSE= gnu-gpl-v2
TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools>=61.2:../../devel/py-setuptools
TOOL_DEPENDS+= ${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel
DEPENDS+= ${PYPKGPREFIX}-click-[0-9]*:../../devel/py-click
DEPENDS+= ${PYPKGPREFIX}-pygments-[0-9]*:../../textproc/py-pygments
DEPENDS+= ${PYPKGPREFIX}-six>=1.10.0:../../lang/py-six
TEST_DEPENDS+= ${PYPKGPREFIX}-test-runner-[0-9]*:../../devel/py-test-runner
DEPENDS+= ${PYPKGPREFIX}-term-background>=1.0.1:../../comms/py-term-background
#TEST_DEPENDS+= ${PYPKGPREFIX}-test-runner-[0-9]*:../../devel/py-test-runner
USE_LANGUAGES= # none
PYTHON_VERSIONS_INCOMPATIBLE= 27
USE_PKG_RESOURCES= yes
post-install:
cd ${DESTDIR}${PREFIX}/bin && \
${MV} pydisasm pydisasm-${PYVERSSUFFIX} || ${TRUE}
.include "../../lang/python/egg.mk"
.include "../../lang/python/wheel.mk"
.include "../../mk/bsd.pkg.mk"

View File

@ -1,12 +1,12 @@
@comment $NetBSD: PLIST,v 1.19 2023/01/16 09:26:23 adam Exp $
@comment $NetBSD: PLIST,v 1.20 2024/03/23 06:49:52 adam Exp $
bin/pydisasm-${PYVERSSUFFIX}
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
${PYSITELIB}/${EGG_INFODIR}/entry_points.txt
${PYSITELIB}/${EGG_INFODIR}/requires.txt
${PYSITELIB}/${EGG_INFODIR}/top_level.txt
${PYSITELIB}/${EGG_INFODIR}/zip-safe
${PYSITELIB}/${WHEEL_INFODIR}/COPYING
${PYSITELIB}/${WHEEL_INFODIR}/METADATA
${PYSITELIB}/${WHEEL_INFODIR}/RECORD
${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
${PYSITELIB}/xdis/.gitignore
${PYSITELIB}/xdis/__init__.py
${PYSITELIB}/xdis/__init__.pyc
${PYSITELIB}/xdis/__init__.pyo
@ -22,6 +22,7 @@ ${PYSITELIB}/xdis/bin/pydisasm.pyo
${PYSITELIB}/xdis/bytecode.py
${PYSITELIB}/xdis/bytecode.pyc
${PYSITELIB}/xdis/bytecode.pyo
${PYSITELIB}/xdis/codetype/.gitignore
${PYSITELIB}/xdis/codetype/__init__.py
${PYSITELIB}/xdis/codetype/__init__.pyc
${PYSITELIB}/xdis/codetype/__init__.pyo
@ -40,12 +41,18 @@ ${PYSITELIB}/xdis/codetype/code20.pyo
${PYSITELIB}/xdis/codetype/code30.py
${PYSITELIB}/xdis/codetype/code30.pyc
${PYSITELIB}/xdis/codetype/code30.pyo
${PYSITELIB}/xdis/codetype/code311.py
${PYSITELIB}/xdis/codetype/code311.pyc
${PYSITELIB}/xdis/codetype/code311.pyo
${PYSITELIB}/xdis/codetype/code38.py
${PYSITELIB}/xdis/codetype/code38.pyc
${PYSITELIB}/xdis/codetype/code38.pyo
${PYSITELIB}/xdis/cross_dis.py
${PYSITELIB}/xdis/cross_dis.pyc
${PYSITELIB}/xdis/cross_dis.pyo
${PYSITELIB}/xdis/cross_types.py
${PYSITELIB}/xdis/cross_types.pyc
${PYSITELIB}/xdis/cross_types.pyo
${PYSITELIB}/xdis/disasm.py
${PYSITELIB}/xdis/disasm.pyc
${PYSITELIB}/xdis/disasm.pyo
@ -55,6 +62,9 @@ ${PYSITELIB}/xdis/dropbox/__init__.pyo
${PYSITELIB}/xdis/dropbox/decrypt25.py
${PYSITELIB}/xdis/dropbox/decrypt25.pyc
${PYSITELIB}/xdis/dropbox/decrypt25.pyo
${PYSITELIB}/xdis/graal/__init__.py
${PYSITELIB}/xdis/graal/__init__.pyc
${PYSITELIB}/xdis/graal/__init__.pyo
${PYSITELIB}/xdis/instruction.py
${PYSITELIB}/xdis/instruction.pyc
${PYSITELIB}/xdis/instruction.pyo
@ -67,9 +77,6 @@ ${PYSITELIB}/xdis/load.pyo
${PYSITELIB}/xdis/magics.py
${PYSITELIB}/xdis/magics.pyc
${PYSITELIB}/xdis/magics.pyo
${PYSITELIB}/xdis/marsh-try.py
${PYSITELIB}/xdis/marsh-try.pyc
${PYSITELIB}/xdis/marsh-try.pyo
${PYSITELIB}/xdis/marsh.py
${PYSITELIB}/xdis/marsh.pyc
${PYSITELIB}/xdis/marsh.pyo
@ -82,6 +89,15 @@ ${PYSITELIB}/xdis/opcodes/__init__.pyo
${PYSITELIB}/xdis/opcodes/base.py
${PYSITELIB}/xdis/opcodes/base.pyc
${PYSITELIB}/xdis/opcodes/base.pyo
${PYSITELIB}/xdis/opcodes/format/__init__.py
${PYSITELIB}/xdis/opcodes/format/__init__.pyc
${PYSITELIB}/xdis/opcodes/format/__init__.pyo
${PYSITELIB}/xdis/opcodes/format/basic.py
${PYSITELIB}/xdis/opcodes/format/basic.pyc
${PYSITELIB}/xdis/opcodes/format/basic.pyo
${PYSITELIB}/xdis/opcodes/format/extended.py
${PYSITELIB}/xdis/opcodes/format/extended.pyc
${PYSITELIB}/xdis/opcodes/format/extended.pyo
${PYSITELIB}/xdis/opcodes/opcode_10.py
${PYSITELIB}/xdis/opcodes/opcode_10.pyc
${PYSITELIB}/xdis/opcodes/opcode_10.pyo
@ -103,6 +119,9 @@ ${PYSITELIB}/xdis/opcodes/opcode_15.pyo
${PYSITELIB}/xdis/opcodes/opcode_16.py
${PYSITELIB}/xdis/opcodes/opcode_16.pyc
${PYSITELIB}/xdis/opcodes/opcode_16.pyo
${PYSITELIB}/xdis/opcodes/opcode_1x.py
${PYSITELIB}/xdis/opcodes/opcode_1x.pyc
${PYSITELIB}/xdis/opcodes/opcode_1x.pyo
${PYSITELIB}/xdis/opcodes/opcode_20.py
${PYSITELIB}/xdis/opcodes/opcode_20.pyc
${PYSITELIB}/xdis/opcodes/opcode_20.pyo
@ -145,6 +164,18 @@ ${PYSITELIB}/xdis/opcodes/opcode_31.pyo
${PYSITELIB}/xdis/opcodes/opcode_310.py
${PYSITELIB}/xdis/opcodes/opcode_310.pyc
${PYSITELIB}/xdis/opcodes/opcode_310.pyo
${PYSITELIB}/xdis/opcodes/opcode_310graal.py
${PYSITELIB}/xdis/opcodes/opcode_310graal.pyc
${PYSITELIB}/xdis/opcodes/opcode_310graal.pyo
${PYSITELIB}/xdis/opcodes/opcode_310pypy.py
${PYSITELIB}/xdis/opcodes/opcode_310pypy.pyc
${PYSITELIB}/xdis/opcodes/opcode_310pypy.pyo
${PYSITELIB}/xdis/opcodes/opcode_311.py
${PYSITELIB}/xdis/opcodes/opcode_311.pyc
${PYSITELIB}/xdis/opcodes/opcode_311.pyo
${PYSITELIB}/xdis/opcodes/opcode_312.py
${PYSITELIB}/xdis/opcodes/opcode_312.pyc
${PYSITELIB}/xdis/opcodes/opcode_312.pyo
${PYSITELIB}/xdis/opcodes/opcode_32.py
${PYSITELIB}/xdis/opcodes/opcode_32.pyc
${PYSITELIB}/xdis/opcodes/opcode_32.pyo

View File

@ -1,5 +1,5 @@
$NetBSD: distinfo,v 1.40 2023/01/16 09:26:23 adam Exp $
$NetBSD: distinfo,v 1.41 2024/03/23 06:49:52 adam Exp $
BLAKE2s (xdis-6.0.5.tar.gz) = 034b51a13a7c514d770e2bde90ce58a86ee18dc001e136d9cb17bccd1e85db37
SHA512 (xdis-6.0.5.tar.gz) = 01e6f9477bb06d6dde3cf664f62010127fac08b4bd1f8764d674a25d23b1528a07ff7805d0d95f0aa0435ef988bb802953a569953e3c9521015b8d7844fd4864
Size (xdis-6.0.5.tar.gz) = 372826 bytes
BLAKE2s (xdis-6.1.0.tar.gz) = 7041b9679c2cc8188754aec412780ba2a8deb26b33e04388a4f0fec753ef908b
SHA512 (xdis-6.1.0.tar.gz) = c73f8e01de5616cb4bdc8c2a343d2b68be0fac01be4255b9dad801dd8e6548f8a693e46758cc8db9c87c7c3a61be3ece2d618d54b80d46c04b5c2b08e3df7eda
Size (xdis-6.1.0.tar.gz) = 401813 bytes