BSD Ports

devel/py-xdis 6.3.0 NetBSD

Python cross-version byte-code disassembler and marshal routines

System
NetBSD
Repository
pkgsrc
Maintainer
[email protected]
License
gnu-gpl-v2
Categories
devel, python
Package size
330.3 KiB, 2507.9 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.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.

In the other systems

The newest version among them is 6.3.0, as upstream numbers it.

SystemPortVersionVulnerabilitiesStatusMaintainerLast update
NetBSDdevel/py-xdis6.3.0 newestnone known-[email protected]-
FreeBSDdevel/py-xdis6.3.0 newestnone known-[email protected]2026-09-30
OpenBSDdevel/py-xdis6.3.0p0 newestno data-The OpenBSD ports mailing-list <[email protected]>2026-08-11
DragonFlydevel/py-xdis6.1.3 behind since 2026-09-30none known-[email protected]-
HardenedBSDdevel/py-xdis6.3.0 newestno data-[email protected]-
GhostBSDdevel/py-xdis6.1.8 behind since 2026-09-30no data-[email protected]-

Compare across BSDs

Install

Binary package:

pkgin install py311-xdis

From pkgsrc:

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

Packages

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

RepositoryVersion
NetBSD 10.1 x86_646.3.0
NetBSD 10.1 aarch646.3.0
SmartOS / illumos x86_646.3.0
macOS 15 arm646.3.0

Dependency graph

Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.

Dependencies

Run dependencies 3
Required by 1

Configuration

No options to configure.

Service scripts
none
Flavors
py312-xdis-6.3.0, py313-xdis-6.3.0, py314-xdis-6.3.0