mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2024-10-08 02:33:38 +00:00
fbcdc7a181
disas.py: * more aggressive code checking magics.py: * Add PYPY magic opcodes_27.py: * Add PYPY opcodes
112 lines
3.2 KiB
Plaintext
112 lines
3.2 KiB
Plaintext
uncompyle6 2.4.0 2016-05-18 (in memory of Lewis Bernstein)
|
|
|
|
- Many Python 3 bugs fixed:
|
|
* Python 3.2 to 3.5 libaries largely
|
|
uncompyle and most verify
|
|
- pydisassembler:
|
|
* disassembles all code objects in a file
|
|
* can select showing bytecode before
|
|
or after uncompyle mangling, option -U
|
|
- DRY scanner code (but more is desired)
|
|
- Some code cleanup (but more is desired)
|
|
- Misc Bugs fixed:
|
|
* handle complex number unmarshaling
|
|
* Running on Python 2 to works on Python 3.5 bytecodes now
|
|
|
|
uncompyle6 2.3.5 and 2.3.6 2016-05-14
|
|
|
|
- Python 2 class decorator fix (thanks to Tey)
|
|
- Fix fragment parsing bugs
|
|
- Fix some Python 3 parsing bugs:
|
|
* Handling single in * parameter
|
|
* "while True"
|
|
* escape from for inside if
|
|
* yield expressions
|
|
- Correct history based on info from Dan Pascu
|
|
- Fix up pip packaging, ugh.
|
|
|
|
uncompyle6 2.3.4 2016-05-5
|
|
|
|
- More Python 3.5 parsing bugs addressed
|
|
- decompiling Python 3.5 from other Python versions works
|
|
- test from Python 3.2
|
|
- remove "__module__ = __name__" in 3.0 <= Python 3.2
|
|
|
|
uncompyle6 2.3.3 2016-05-3
|
|
|
|
- Fix bug in running uncompyle6 script on Python 3
|
|
- Speed up performance on deparsing long lists by grouping in chunks of 32 and 256 items
|
|
- DRY Python expressions between Python 2 and 3
|
|
|
|
uncompyle6 2.3.2 2016-05-1
|
|
|
|
- Add --version option standalone scripts
|
|
- Correct License information in package
|
|
- expose fns uncompyle_file, load_file, and load_module
|
|
- Start to DRY Python2 and Python3 grammars Separate out 3.2, and 3.5+
|
|
specific grammar code
|
|
- Fix bug in 3.5+ constant map parsing
|
|
|
|
uncompyle6 2.3.0, 2.3.1 2016-04-30
|
|
|
|
- Require spark_parser >= 1.1.0
|
|
|
|
uncompyle6 2.2.0 2016-04-30
|
|
|
|
- Spark is no longer here but pulled separate package spark_parse
|
|
- Python 3 parsing fixes
|
|
- More tests
|
|
|
|
uncompyle6 2.2.0 2016-04-02
|
|
|
|
- Support single-mode (in addtion to exec-mode) compilation
|
|
- Start to DRY Python 2 and Python 3 grammars
|
|
- Fix bug in if else ternary construct
|
|
- Fix bug in uncomplye6 -d and -r options (via lelicopter)
|
|
|
|
|
|
uncompyle6 2.1.3 2016-01-02
|
|
|
|
- Limited support for decompiling Python 3.5
|
|
- Improve Python 3 class deparsing
|
|
- Handle MAKE_CLOSURE opcode
|
|
- Start to DRY opcode code.
|
|
- increase test coverage
|
|
- fix misc small bugs and some improvements
|
|
|
|
uncompyle6 2.1.2 2015-12-31
|
|
|
|
- Fix cross-version Marshal loading
|
|
- Handle Python 3.3 . dotted class names
|
|
- Limited 3.5 support: allows deparsing other versions
|
|
- Refactor code more, misc bug fixes
|
|
|
|
uncompyle6 2.1.1 2015-12-27
|
|
|
|
- packaging issues
|
|
|
|
uncompyle6 2.1.0 2015-12-27
|
|
|
|
- Python 3.x deparsing much more solid
|
|
- Better cross-version deparsing
|
|
|
|
Some bugs squashed while other run rampant. Some code cleanup while
|
|
much more is yet needed. More tests added, but many more are needed.
|
|
|
|
|
|
uncompyle6 2.0.0 2015-12-11
|
|
|
|
Changes from uncompyle2
|
|
|
|
- Can give code fragments given an instruction offset. See
|
|
https://github.com/rocky/python-uncompyle6/wiki/Deparsing-technology-and-its-use-in-exact-location-reporting
|
|
- Runs under Python3. Decompiles Python 2.5-2.7 and some Python 3.2-3.4
|
|
- Allows for multiple Python grammars, specifically Python2 vs Python 3
|
|
- Add a cross-version Python disassembler command-line utility
|
|
- Add some py.test and start reorganizing tests
|
|
|
|
SPARK:
|
|
add option to show grammar rules applied
|
|
allow Python-style # comments in grammar
|
|
Runs on Python 3 and Python 2
|