BSD Ports

devel/py-xdis 6.3.0 FreeBSD

Cross-Python bytecode Disassembler and Marshal routines

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
Last update
Commit
4f2951235e
License
GPLv2+
Categories
devel, python
Package size
352.7 KiB, 2301.5 KiB installed

Description

The 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_info major, minor, and release numbers to the corresponding magic value.

So If you want to write a cross-version assembler, or an 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.

In the other systems

SystemPortVersion
FreeBSDdevel/py-xdis6.3.0
OpenBSDdevel/py-xdis6.3.0p0
NetBSDdevel/py-xdis6.3.0
DragonFlydevel/py-xdis6.1.3
HardenedBSDdevel/py-xdis6.3.0
GhostBSDdevel/py-xdis6.1.8

Install

Binary package:

pkg install py312-xdis

From the ports tree:

cd /usr/ports/devel/py-xdis/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	py312-xdis>0:devel/py-xdis

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest6.3.06.3.06.0.46.1.56.3.0
FreeBSD:14:quarterly6.3.06.3.0n/a6.1.46.3.0
FreeBSD:15:latest6.3.06.3.0n/a6.1.56.1.5
FreeBSD:15:quarterly6.3.06.3.0n/an/an/a
FreeBSD:16:latest6.3.06.3.0n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

As this port's Makefile names them.

Build 2

Runtime 2

Test 1

The full lists below include those, and their dependencies in turn.

Build dependencies 16
Run dependencies 9

Configuration

No options to configure.

USES
python
Service scripts
none

Files

distinfo 1
FileSizeSHA256
xdis-6.3.0.tar.gz795994e78e3e7a0e2d31ac64c084afc782a0a233da06ac05002c42a0e17000ac51dcaa
Master sites 2
  • PYPI
  • https://github.com/rocky/python-xdis/releases/download/6.3.0/

Commit history 1

DateCommitCreditsLog message
4f2951235e Po-Chuan Hsieh devel/py-xdis: Update to 6.3.0
Changes: https://github.com/rocky/python-xdis/releases