Path to this page:
./
devel/py-xdis,
Python cross-version byte-code disassembler and marshal routines
Branch: CURRENT,
Version: 6.1.2,
Package name: py312-xdis-6.1.2,
Maintainer: pkgsrc-usersThe Python dis module allows you to disassemble bytecode from the same version
of Python that you are running on. But what about bytecode from different
versions?
That's what this package is for. It can "marshal load" Python bytecodes from
different versions of Python. The command-line routine pydisasm will show
disassembly output using Python 3.6 disassembly conventions.
Also, if you need to modfiy and write bytecode, the routines here can be of
help. There are routines to pack and unpack the read-only tuples in Python's
Code type. For interoperability between Python 2 and 3 we provide our own
versions of the Code type, and we provide routines to reduce the tedium in
writing a bytecode file.
This package also has an extensive knowledge of Python bytecode magic numbers,
including Pypy and others, and how to translate from sys.sys_info major, minor,
and release numbers to the corresponding magic value.
So If you want to write a cross-version assembler, or a bytecode-level
optimizer this package may also be useful. In addition to the kinds of
instruction categorization that dis offers, we have additional categories for
things that would be useful in such a bytecode optimizer.
Required to run:[
devel/py-setuptools] [
lang/py-six] [
devel/py-click] [
lang/python37]
Required to build:[
pkgtools/cwrappers]
Master sites:
Filesize: 424.331 KB
Version history: (Expand)
- (2024-11-12) Updated to version: py312-xdis-6.1.2
- (2024-11-11) Updated to version: py312-xdis-6.1.1
- (2024-07-22) Updated to version: py311-xdis-6.1.1
- (2024-03-23) Updated to version: py311-xdis-6.1.0
- (2023-01-16) Updated to version: py310-xdis-6.0.5
- (2022-05-22) Updated to version: py39-xdis-6.0.4
CVS history: (Expand)
2024-11-12 11:53:53 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-xdis: updated to 6.1.2
6.1.2 2024-11-08
* Support for Python 3.12 and 3.12 added courtesy of Elliot Tarbet 2elli
* Fixes issues
* Include Python 3.12.5
* Raise exception on invalid timestamp
|
2024-11-11 08:29:31 by Thomas Klausner | Files touched by this commit (862) |
Log message:
py-*: remove unused tool dependency
py-setuptools includes the py-wheel functionality nowadays
|
2024-07-22 07:19:22 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-xdis: updated to 6.1.1
6.1.1 2024-07-21
* Greatly improve extended-format output. (More could be done though)
* Update Python versions recognize, e.g. 3.12.4
* Add nullaryloadop for nullary load opcodes
* More code linting and type annotation
|
2024-03-23 07:49:52 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
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
|
2023-01-16 10:26:23 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-xdis: updated to 6.0.5
6.0.5 2022-12-22
=================
* Detect versions pypy3.8.15, pypy-3.9.15
* Dectect Python 3.{7,8,9}.14 3.10.{5,6,7}
* correct 3.10+ pydisasm -F xasm label
* Revise marshal error handling
* Improve PyPy 3.7 `CALL_FUNCTION` arg interpretation
* Fix 1.5-2.x bugs in line number encoding
* Fix showing `MAKE_FUNCTION` operand
* Miscellaneous lint, black, and isort changes
|
2022-05-22 21:05:00 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-xdis: updated to 6.0.4
6.0.4 2022-05-19 HF+LB-1
========================
* Detect 3.7.[7-13], 3.9.[8-13], 3.10.[1-4], PyPy 2.7.12, 3.[8-9]pypy
* Correct line-number detection on Python 1.0-1.4
* Handle SET_LINENO in older pythons
* Warn about wrong names in after RESERVE_FAST in older Pythons
* Some PyPy x-3.9.7 tolerance
* Add Pypy 3.8 support
* Better PyPy 3.6 formatting
* Correct relative jump target calculation in 3.10
|
2022-01-05 16:41:32 by Thomas Klausner | Files touched by this commit (289) |
Log message:
python: egg.mk: add USE_PKG_RESOURCES flag
This flag should be set for packages that import pkg_resources
and thus need setuptools after the build step.
Set this flag for packages that need it and bump PKGREVISION.
|
2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595) |
Log message:
*: bump PKGREVISION for egg.mk users
They now have a tool dependency on py-setuptools instead of a DEPENDS
|