You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.rst
+37-8Lines changed: 37 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -54,16 +54,32 @@ When installing, except for the most recent versions of Python, use
54
54
the Python egg or wheel that matches that version, e.g., ``xdis-6.0.2-py3.3.egg``, ``xdis-6.0.2-py33-none-any.whl``.
55
55
Of course, for versions that predate wheels, like Python 2.6, you will have to use eggs.
56
56
57
-
To install older versions from source in git, use the branch
58
-
``python-2.4-to-2.7`` for Python versions from 2.4 to 2.7,
59
-
``python-3.1-to-3.2`` for Python versions from 3.1 to 3.2,
60
-
``python-3.3-to-3.5`` for Python versions from 3.3 to 3.5. The master
61
-
``python-3.6-to-3.10`` for Python versions from 3.6 to 3.10. The master
62
-
branch handles Python 3.11 and later.
63
-
64
57
Installation
65
58
------------
66
59
60
+
*For recent Python releases (Python 3.11+)*, you can install from PyPI using the name ``xdis``::
61
+
62
+
pip install xdis
63
+
64
+
*For Python releases before 3.11*, do not install using PyPI, but instead install using a file in the [GitHub Releases section](https://github.com/rocky/python-xdis/releases). Older Python used to use `easy_install <https://python101.pythonlibrary.org/chapter29_pip.html#using-easy-install>`_. But this is no longer supported in PyPi.
65
+
66
+
If the Python version you are running xdis is between Python 2.4 through 2.7, use a tarball called xdis_24-*x.y.z*.tar.gz.
67
+
68
+
If the Python version you are running xdis is between Python 3.0 through 3.2, use a tarball called xdis_30-*x.y.z*.tar.gz.
69
+
70
+
If the Python version you are running xdis is between Python 3.3 through 3.5, use a tarball called xdis_33-*x.y.z*.tar.gz.
71
+
72
+
If the Python version you are running xdis is between Python 3.6 through 3.11, use a tarball called xdis_36-*x.y.z*.tar.gz.
73
+
74
+
If the Python version you are running xdis is 3.11 or later, use a called xdis-*x.y.z*.tar.gz.
75
+
76
+
You can also try eggs or wheels that have the same version designation, e.g., xdis-*x.y.z*-py39-none-any.whl for a Python 3.9 installation. *However, note that *the version without the designation means Python 3.11 or greater*.
77
+
78
+
Similarly a tarball with without `_`*xx* works only from Python 3.11 or greater.
79
+
80
+
Installation from source text
81
+
++++++++++++++++++++++++++++++
82
+
67
83
The standard Python routine:
68
84
69
85
::
@@ -72,6 +88,19 @@ The standard Python routine:
72
88
73
89
A GNU makefile is also provided so ``make install`` (possibly as root or sudo) will do the steps above.
74
90
91
+
To install older versions from source in git, use the branch
92
+
``python-2.4-to-2.7`` for Python versions from 2.4 to 2.7,
93
+
``python-3.1-to-3.2`` for Python versions from 3.1 to 3.2,
94
+
``python-3.3-to-3.5`` for Python versions from 3.3 to 3.5. The master
95
+
``python-3.6-to-3.10`` for Python versions from 3.6 to 3.10. The master
96
+
branch handles Python 3.11 and later.
97
+
98
+
Rationale for using Git Branches
99
+
++++++++++++++++++++++++++++++++
100
+
101
+
It is currently impossible (if not impractical) to have one Python source code of this complexity and with this many features that can run both Python 2.7 and Python 3.13+. The languages have drifted so much, and Packing is vastly different. In fact, the packaging practice for Python 3.11+ is incompatible with Python 2.7 (and before back to Python 2.4), which favored "easy_install".
102
+
103
+
75
104
Disassembler Example
76
105
--------------------
77
106
@@ -212,7 +241,7 @@ for usage help.
212
241
As a drop-in replacement for dis
213
242
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
214
243
215
-
`xdis` also provides some support as a drop-in replacement for the
244
+
``xdis`` also provides some support as a drop-in replacement for the
0 commit comments