You've already forked python-uncompyle6
mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2025-08-04 01:09:52 +08:00
Go over NEWS for markdown and spelling
This commit is contained in:
174
NEWS.md
174
NEWS.md
@@ -3,13 +3,13 @@
|
|||||||
|
|
||||||
Again, most of the work in this is release is thanks to x0ret.
|
Again, most of the work in this is release is thanks to x0ret.
|
||||||
|
|
||||||
- Handle annotation args in Python 3.x
|
- Handle annotation arguments in Python 3.x
|
||||||
- Fix vararg and function signatures in 3.x
|
- Fix _vararg_ and function signatures in 3.x
|
||||||
- Some 3.x < 3.6 while(1)/if fixes - others remain
|
- Some 3.x < 3.6 `while` (1)/`if` fixes — others remain
|
||||||
- Start reinstating else if -> elif
|
- Start reinstating `else if` -> `elif`
|
||||||
- LOAD_CONST -> LOAD_CODE where appropriate
|
- `LOAD_CONST` -> `LOAD_CODE` where appropriate
|
||||||
- option `weak-verify` is now `syntax-verify`
|
- option `--weak-verify` is now `--syntax-verify`
|
||||||
- code cleanups, start using "blacken" to reformat text
|
- code cleanups, start using [black](https://github.com/python/black) to reformat text
|
||||||
|
|
||||||
|
|
||||||
3.3.4 2019-06-19 Fleetwood at 65
|
3.3.4 2019-06-19 Fleetwood at 65
|
||||||
@@ -18,12 +18,12 @@ Again, most of the work in this is release is thanks to x0ret.
|
|||||||
Most of the work in this is release is thanks to x0ret.
|
Most of the work in this is release is thanks to x0ret.
|
||||||
|
|
||||||
- Major work was done by x0ret to correct function signatures and include annotation types
|
- Major work was done by x0ret to correct function signatures and include annotation types
|
||||||
- Handle Python 3.6 STORE_ANNOTATION [#58](https://github.com/rocky/python-uncompyle6/issues/58)
|
- Handle Python 3.6 `STORE_ANNOTATION` [#58](https://github.com/rocky/python-uncompyle6/issues/58)
|
||||||
- Friendlier assembly output
|
- Friendlier assembly output
|
||||||
- `LOAD_CONST` replaced by `LOAD_STR` where appropriate to simplify parsing and improve clarity
|
- `LOAD_CONST` replaced by `LOAD_STR` where appropriate to simplify parsing and improve clarity
|
||||||
- remove unneeded parenthesis in a generator expression when it is the single argument to the function [#247](https://github.com/rocky/python-uncompyle6/issues/246)
|
- remove unneeded parenthesis in a generator expression when it is the single argument to the function [#247](https://github.com/rocky/python-uncompyle6/issues/246)
|
||||||
- Bug in noting an async function [#246](https://github.com/rocky/python-uncompyle6/issues/246)
|
- Bug in noting an async function [#246](https://github.com/rocky/python-uncompyle6/issues/246)
|
||||||
- Handle unicode docstrings and fix docstring bugs [#241](https://github.com/rocky/python-uncompyle6/issues/241)
|
- Handle Unicode docstrings and fix docstring bugs [#241](https://github.com/rocky/python-uncompyle6/issues/241)
|
||||||
- Add short option -T as an alternate for --tree+
|
- Add short option -T as an alternate for --tree+
|
||||||
- Some grammar cleanup
|
- Some grammar cleanup
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@ some span back as far as 2.x
|
|||||||
But as before, many more remain in the 3.7 and 3.8 range which will
|
But as before, many more remain in the 3.7 and 3.8 range which will
|
||||||
get addressed in future releases
|
get addressed in future releases
|
||||||
|
|
||||||
Pypy 3.6 support was started. Pypy 3.x detection fixed (via xdis)
|
Pypy 3.6 support was started. Pypy 3.x detection fixed (via `xdis`)
|
||||||
|
|
||||||
3.3.1 2019-04-19 Good Friday
|
3.3.1 2019-04-19 Good Friday
|
||||||
==========================
|
==========================
|
||||||
@@ -151,7 +151,7 @@ Pull Requests
|
|||||||
|
|
||||||
- Add rudimentary 1.4 support (still a bit buggy)
|
- Add rudimentary 1.4 support (still a bit buggy)
|
||||||
- add --tree+ option to show formatting rule, when it is constant
|
- add --tree+ option to show formatting rule, when it is constant
|
||||||
- Python 2.7.15candidate1 support (via xdis)
|
- Python 2.7.15candidate1 support (via `xdis`)
|
||||||
- bug fixes, especially for 3.7 (but 2.7 and 3.6 and others as well)
|
- bug fixes, especially for 3.7 (but 2.7 and 3.6 and others as well)
|
||||||
|
|
||||||
3.1.3 2018-04-16
|
3.1.3 2018-04-16
|
||||||
@@ -256,24 +256,24 @@ function calls and definitions.
|
|||||||
2.15.1 2018-01-27
|
2.15.1 2018-01-27
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
- Add --linemap option to give line correspondences
|
- Add `--linemap` option to give line correspondences
|
||||||
between original source lines and reconstructed line sources.
|
between original source lines and reconstructed line sources.
|
||||||
It is far from perfect, but it is a start
|
It is far from perfect, but it is a start
|
||||||
- Add a new class of tests: tests which when decompiled check themselves
|
- Add a new class of tests: tests which when decompiled check themselves
|
||||||
- Split off Python version semantic action customizations into its own file
|
- Split off Python version semantic action customizations into its own file
|
||||||
- Fix 2.7 bug in ifelse loop statement
|
- Fix 2.7 bug in `if`/`else` loop statement
|
||||||
- Handle 3.6+ EXTENDED_ARGs for POP_JUMP_IF... instructions
|
- Handle 3.6+ `EXTENDED_ARG`s for `POP_JUMP_IF..` instructions
|
||||||
- Correct 3.6+ calls with kwargs
|
- Correct 3.6+ calls with `kwargs`
|
||||||
- Describe the difficulty of 3.6 in README
|
- Describe the difficulty of 3.6 in README
|
||||||
|
|
||||||
2.14.3 2018-01-19
|
2.14.3 2018-01-19
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
- Fix bug in 3.5+ await stmt
|
- Fix bug in 3.5+ `await` statement
|
||||||
- Better version to magic handling; handle 3.5.2 .. 3.5.4 versions
|
- Better version to magic handling; handle 3.5.2 .. 3.5.4 versions
|
||||||
- Improve/correct test_pyenvlib.py status messages
|
- Improve/correct test_pyenvlib.py status messages
|
||||||
- Fix some 2.7 and 2.6 parser bugs
|
- Fix some 2.7 and 2.6 parser bugs
|
||||||
- Fix whilelse parsing bugs
|
- Fix `whilelse` parsing bugs
|
||||||
- Correct 2.5- decorator parsing
|
- Correct 2.5- decorator parsing
|
||||||
- grammar for decorators matches AST a little more
|
- grammar for decorators matches AST a little more
|
||||||
- better tests in setup.py for running the right version of Python
|
- better tests in setup.py for running the right version of Python
|
||||||
@@ -284,15 +284,15 @@ function calls and definitions.
|
|||||||
|
|
||||||
Decompilation bug fixes, mostly 3.6 and pre 2.7
|
Decompilation bug fixes, mostly 3.6 and pre 2.7
|
||||||
|
|
||||||
- 3.6 FUNCTION_EX (somewhat)
|
- 3.6 `FUNCTION_EX` (somewhat)
|
||||||
- 3.6 FUNCTION_EX_KW fixes
|
- 3.6 `FUNCTION_EX_KW` fixes
|
||||||
- 3.6 MAKE_FUNCTION fixes
|
- 3.6 `MAKE_FUNCTION` fixes
|
||||||
- correct 3.5 CALL_FUNCTION_VAR
|
- correct 3.5 `CALL_FUNCTION_VAR`
|
||||||
- stronger 3.x "while 1" testing
|
- stronger 3.x "while 1" testing
|
||||||
- Fix bug in if's with "pass" bodies. Fixes #104
|
- Fix bug in if's with "pass" bodies. Fixes #104
|
||||||
- try/else and try/finally fixes on 2.6-
|
- try/else and try/finally fixes on 2.6-
|
||||||
- limit pypy customization to pypy
|
- limit pypy customization to pypy
|
||||||
- Add addr fields in COME_FROMS
|
- Add addr fields in `COME_FROM`S
|
||||||
- Allow use of full instructions in parser reduction routines
|
- Allow use of full instructions in parser reduction routines
|
||||||
- Reduce grammar in Python 3 by specialization more to specific
|
- Reduce grammar in Python 3 by specialization more to specific
|
||||||
Python versions
|
Python versions
|
||||||
@@ -301,11 +301,11 @@ Decompilation bug fixes, mostly 3.6 and pre 2.7
|
|||||||
2.14.1 2017-12-10 Dr. Gecko
|
2.14.1 2017-12-10 Dr. Gecko
|
||||||
===================================
|
===================================
|
||||||
|
|
||||||
- Many decompilation bugfixes
|
- Many decompilation bug fixes
|
||||||
- Grammar rule reduction and version isolation
|
- Grammar rule reduction and version isolation
|
||||||
- Match higher-level nonterminal names more closely
|
- Match higher-level nonterminal names more closely
|
||||||
with Python AST
|
with Python AST
|
||||||
- Start automated Python stdlib testing - full round trip
|
- Start automated Python _stdlib_ testing — full round trip
|
||||||
|
|
||||||
2.14.0 2017-11-26 johnnybamazing
|
2.14.0 2017-11-26 johnnybamazing
|
||||||
=========================================
|
=========================================
|
||||||
@@ -314,7 +314,7 @@ Decompilation bug fixes, mostly 3.6 and pre 2.7
|
|||||||
and remove used grammar rules
|
and remove used grammar rules
|
||||||
- Fix a number of bytecode decompile problems
|
- Fix a number of bytecode decompile problems
|
||||||
(many more remain)
|
(many more remain)
|
||||||
- Add stdlib/runtests.sh for even more rigorous testing
|
- Add `stdlib/runtests.sh` for even more rigorous testing
|
||||||
|
|
||||||
2.13.3 2017-11-13
|
2.13.3 2017-11-13
|
||||||
=====================
|
=====================
|
||||||
@@ -330,16 +330,16 @@ Overall: better 3.6 decompiling and some much needed code refactoring and cleanu
|
|||||||
rather trying to parse the bytecode array. This largely been done in for versions 3.x;
|
rather trying to parse the bytecode array. This largely been done in for versions 3.x;
|
||||||
3.0 custom mangling code has been reduced;
|
3.0 custom mangling code has been reduced;
|
||||||
some 2.x conversion has been done, but more is desired. This make it possible to...
|
some 2.x conversion has been done, but more is desired. This make it possible to...
|
||||||
- Handle EXTENDED_ARGS better. While relevant to all Python versions it is most noticeable in
|
- Handle `EXTENDED_ARGS` better. While relevant to all Python versions it is most noticeable in
|
||||||
version 3.6+ where in switching to wordcodes the size of operands has been reduced from 2**16
|
version 3.6+ where in switching to wordcodes the size of operands has been reduced from 2^16
|
||||||
to 2**8. JUMP instruction then often need EXTENDED_ARGS.
|
to 2^8. `JUMP` instruction then often need EXTENDED_ARGS.
|
||||||
- Refactor find_jump_targets() with via working of of instructions rather the bytecode array.
|
- Refactor find_jump_targets() with via working of of instructions rather the bytecode array.
|
||||||
- use --weak-verify more and additional fuzzing on verify()
|
- use `--weak-verify` more and additional fuzzing on verify()
|
||||||
- fragment parser now ignores errors in nested function definitions; an parameter was
|
- fragment parser now ignores errors in nested function definitions; an parameter was
|
||||||
added to assist here. Ignoring errors may be okay because the fragment parser often just needs,
|
added to assist here. Ignoring errors may be okay because the fragment parser often just needs,
|
||||||
well, *fragments*.
|
well, *fragments*.
|
||||||
- Distinguish RETURN_VALUE from RETURN_END_IF in exception bodies better in 3.6
|
- Distinguish `RETURN_VALUE` from `RETURN_END_IF` in exception bodies better in 3.6
|
||||||
- bug in 3.x language changes: import queue via import Queue
|
- bug in 3.x language changes: import queue via `import Queue`
|
||||||
- reinstate some bytecode tests since decompiling has gotten better
|
- reinstate some bytecode tests since decompiling has gotten better
|
||||||
- Revise how to report a bug
|
- Revise how to report a bug
|
||||||
|
|
||||||
@@ -359,12 +359,12 @@ Overall: better 3.6 decompiling and some much needed code refactoring and cleanu
|
|||||||
- Fixes in deparsing lambda expressions
|
- Fixes in deparsing lambda expressions
|
||||||
- Improve table-semantics descriptions
|
- Improve table-semantics descriptions
|
||||||
- Document hacky customize arg count better (until we can remove it)
|
- Document hacky customize arg count better (until we can remove it)
|
||||||
- Update to use xdis 3.7.0 or greater
|
- Update to use `xdis` 3.7.0 or greater
|
||||||
|
|
||||||
2.12.0 2017-09-26
|
2.12.0 2017-09-26
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
- Use xdis 3.6.0 or greater now
|
- Use `xdis` 3.6.0 or greater now
|
||||||
- Small semantic table cleanups
|
- Small semantic table cleanups
|
||||||
- Python 3.4's terms a little names better
|
- Python 3.4's terms a little names better
|
||||||
- Slightly more Python 3.7, but still failing a lot
|
- Slightly more Python 3.7, but still failing a lot
|
||||||
@@ -378,13 +378,13 @@ Overall: better 3.6 decompiling and some much needed code refactoring and cleanu
|
|||||||
2.11.4 2017-08-15
|
2.11.4 2017-08-15
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
* scanner and parser now allow 3-part version string lookups,
|
* scanner and parser now allow 3-part version string look ups,
|
||||||
e.g. 2.7.1 We allow a float here, but if passed a string like '2.7'. or
|
e.g. 2.7.1 We allow a float here, but if passed a string like '2.7'. or
|
||||||
* unpin 3.5.1. xdis 3.5.4 has been release and fixes the problems we had. Use that.
|
* unpin 3.5.1. `xdis` 3.5.4 has been release and fixes the problems we had. Use that.
|
||||||
* some routines here moved to xdis. Use the xdis version
|
* some routines here moved to `xdis`. Use the `xdis` version
|
||||||
* README.rst: Link typo Name is trepan2 now not trepan
|
* `README.rst`: Link typo Name is _trepan2_ now not _trepan_
|
||||||
* xdis-forced change adjust for COMPARE_OP "is-not" in
|
* xdis-forced change adjust for `COMPARE_OP` "is-not" in
|
||||||
semanatic routines. We need "is not".
|
semantic routines. We need "is not".
|
||||||
* Some PyPy tolerance in validate testing.
|
* Some PyPy tolerance in validate testing.
|
||||||
* Some pyston tolerance
|
* Some pyston tolerance
|
||||||
|
|
||||||
@@ -394,15 +394,15 @@ Overall: better 3.6 decompiling and some much needed code refactoring and cleanu
|
|||||||
Very minor changes
|
Very minor changes
|
||||||
|
|
||||||
- RsT doc fixes and updates
|
- RsT doc fixes and updates
|
||||||
- use newer xdis, but not too new; 3.5.2 breaks uncompyle6
|
- use newer `xdis`, but not too new; 3.5.2 breaks uncompyle6
|
||||||
- use xdis opcode sets
|
- use `xdis` opcode sets
|
||||||
- xdis "exception match" is now "exception-match"
|
- `xdis` "exception match" is now "exception-match"
|
||||||
|
|
||||||
2.11.2 2017-07-09
|
2.11.2 2017-07-09
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
- Start supporting Pypy 3.5 (5.7.1-beta)
|
- Start supporting Pypy 3.5 (5.7.1-beta)
|
||||||
- use xdis 3.5.0's opcode sets and require xdis 3.5.0
|
- use `xdis` 3.5.0's opcode sets and require `xdis` 3.5.0
|
||||||
- Correct some Python 2.4-2.6 loop detection
|
- Correct some Python 2.4-2.6 loop detection
|
||||||
- guard against badly formatted bytecode
|
- guard against badly formatted bytecode
|
||||||
|
|
||||||
@@ -410,55 +410,55 @@ Very minor changes
|
|||||||
=====================
|
=====================
|
||||||
|
|
||||||
- Python 3.x annotation and function signature fixes
|
- Python 3.x annotation and function signature fixes
|
||||||
- Bump xdis version
|
- Bump `xdis` version
|
||||||
- Small pysource bug fixes
|
- Small `pysource.py` bug fixes
|
||||||
|
|
||||||
2.11.0 2017-06-18 Fleetwood
|
2.11.0 2017-06-18 Fleetwood
|
||||||
==================================
|
==================================
|
||||||
|
|
||||||
- Major improvements in fragment tracking
|
- Major improvements in fragment tracking
|
||||||
* Add nonterminal node in extractInfo
|
* Add nonterminal node in `extractInfo()`
|
||||||
* tag more offsets in expressions
|
* tag more offsets in expressions
|
||||||
* tag array subscripts
|
* tag array subscripts
|
||||||
* set YIELD value offset in a <yield> expr
|
* set `YIELD` value offset in a _yield expr_
|
||||||
* fix a long-standing bug in not adjusting final AST when melding other deparse ASTs
|
* fix a long-standing bug in not adjusting final AST when melding other deparse ASTs
|
||||||
- Fixes yet again for make_function node handling; document what's up here
|
- Fixes yet again for make_function node handling; document what's up here
|
||||||
- Fix bug in snowflake Python 3.5 *args kwargs
|
- Fix bug in snowflake Python 3.5 `*args`, `kwargs`
|
||||||
|
|
||||||
2.10.1 2017-06-3 Marylin Frankel
|
2.10.1 2017-06-3 Marylin Frankel
|
||||||
========================================
|
========================================
|
||||||
|
|
||||||
- fix some fragments parsing bugs
|
- fix some fragments parsing bugs
|
||||||
- was returning the wrong type sometimes in deparse_code_around_offset()
|
- was returning the wrong type sometimes in `deparse_code_around_offset()`
|
||||||
- capture function name in offsets
|
- capture function name in offsets
|
||||||
- track changes to ifelstrmtr node from pysource into fragments
|
- track changes to `ifelstrmtr` node from `pysource.py` into fragments
|
||||||
|
|
||||||
2.10.0 2017-05-30 Elaine Gordon
|
2.10.0 2017-05-30 Elaine Gordon
|
||||||
=======================================
|
=======================================
|
||||||
|
|
||||||
- Add fuzzy offset deparse look up
|
- Add fuzzy offset deparse look up
|
||||||
- 3.6 bug fixes
|
- 3.6 bug fixes
|
||||||
- fix EXTENDED_ARGS handling (and in 2.6 and others)
|
- fix `EXTENDED_ARGS` handling (and in 2.6 and others)
|
||||||
- semantic routine make_function fragments.py
|
- semantic routine make_function fragments.py
|
||||||
- MAKE_FUNCTION handling
|
- `MAKE_FUNCTION` handling
|
||||||
- CALL_FUNCTION_EX handling
|
- `CALL_FUNCTION_EX` handling
|
||||||
- async property on defs
|
- `async` property on `defs`
|
||||||
- support for CALL_FUNCTION_KW (moagstar)
|
- support for `CALL_FUNCTION_KW` (moagstar)
|
||||||
- 3.5+ UNMAP_PACK and BUILD_UNMAP_PACK handling
|
- 3.5+ `UNMAP_PACK` and` BUILD_UNMAP_PACK` handling
|
||||||
- 3.5 FUNCTION_VAR bug
|
- 3.5 FUNCTION_VAR bug
|
||||||
- 3.x pass statement insdie while True
|
- 3.x pass statement inside `while True`
|
||||||
- Improve 3.2 decompilation
|
- Improve 3.2 decompilation
|
||||||
- Fixed -o argument processing (grkov90)
|
- Fixed `-o` argument processing (grkov90)
|
||||||
- Reduce scope of LOAD_ASSERT as expr to 3.4+
|
- Reduce scope of LOAD_ASSERT as expr to 3.4+
|
||||||
- "await" statement fixes
|
- `await` statement fixes
|
||||||
- 2.3, 2.4 "if 1 .." fixes
|
- 2.3, 2.4 "if 1 .." fixes
|
||||||
- 3.x annotation fixes
|
- 3.x annotation fixes
|
||||||
|
|
||||||
2.9.11 2017-04-06
|
2.9.11 2017-04-06
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
- Better support for Python 3.5+ BUILD_MAP_UNPACK
|
- Better support for Python 3.5+ `BUILD_MAP_UNPACK`
|
||||||
- Start 3.6 CALL_FUNCTION_EX support
|
- Start 3.6 `CALL_FUNCTION_EX` support
|
||||||
- Many decompilation bug fixes. (Many more remain). See ChangeLog
|
- Many decompilation bug fixes. (Many more remain). See ChangeLog
|
||||||
|
|
||||||
2.9.10 2017-02-25
|
2.9.10 2017-02-25
|
||||||
@@ -466,7 +466,7 @@ Very minor changes
|
|||||||
|
|
||||||
- Python grammar rule fixes
|
- Python grammar rule fixes
|
||||||
- Add ability to get grammar coverage on runs
|
- Add ability to get grammar coverage on runs
|
||||||
- Handle Python 3.6 opcode BUILD_CONST_KEYMAP
|
- Handle Python 3.6 opcode `BUILD_CONST_KEYMAP`
|
||||||
|
|
||||||
2.9.9 2016-12-16
|
2.9.9 2016-12-16
|
||||||
|
|
||||||
@@ -482,13 +482,13 @@ Very minor changes
|
|||||||
====================
|
====================
|
||||||
|
|
||||||
- Better control-flow detection
|
- Better control-flow detection
|
||||||
- pseudo instruction THEN in 2.x
|
- pseudo instruction `THEN` in 2.x
|
||||||
to disambiguate if from and
|
to disambiguate if from and
|
||||||
- fix bug in --verify option
|
- fix bug in `--verify` option
|
||||||
- DRY (a little) control-flow detection
|
- DRY (a little) control-flow detection
|
||||||
- fix syntax in tuples with one element
|
- fix syntax in tuples with one element
|
||||||
- if AST rule inheritance in Python 2.5
|
- if AST rule inheritance in Python 2.5
|
||||||
- NAME_MODULE removal for Python <= 2.4
|
- `NAME_MODULE` removal for Python <= 2.4
|
||||||
- verify call fixes for Python <= 2.4
|
- verify call fixes for Python <= 2.4
|
||||||
- more Python lint
|
- more Python lint
|
||||||
|
|
||||||
@@ -499,9 +499,9 @@ Very minor changes
|
|||||||
- Some Python 3.6 bytecode to wordcode conversion fixes
|
- Some Python 3.6 bytecode to wordcode conversion fixes
|
||||||
- option -g: show start-end range when possible
|
- option -g: show start-end range when possible
|
||||||
- track print_docstring move to help (used in python 3.1)
|
- track print_docstring move to help (used in python 3.1)
|
||||||
- verify: allow RETURN_VALUE to match RETURN_END_IF
|
- verify: allow `RETURN_VALUE` to match `RETURN_END_IF`
|
||||||
- some 3.2 compatibility
|
- some 3.2 compatibility
|
||||||
- Better Python 3 control flow detection by adding Pseudo ELSE opcodes
|
- Better Python 3 control flow detection by adding Pseudo `ELSE` opcodes
|
||||||
|
|
||||||
2.9.6 2016-12-04
|
2.9.6 2016-12-04
|
||||||
====================
|
====================
|
||||||
@@ -517,7 +517,7 @@ Very minor changes
|
|||||||
|
|
||||||
- Correct MANIFEST.in
|
- Correct MANIFEST.in
|
||||||
- More AST grammar checking
|
- More AST grammar checking
|
||||||
- --linemapping option or linenumbers.line_number_mapping()
|
- `--linemapping` option or _linenumbers.line_number_mapping()_
|
||||||
Shows correspondence of lines between source
|
Shows correspondence of lines between source
|
||||||
and decompiled source
|
and decompiled source
|
||||||
- Some control flow adjustments in code for 2.x.
|
- Some control flow adjustments in code for 2.x.
|
||||||
@@ -537,7 +537,7 @@ Very minor changes
|
|||||||
* improper while 1 else
|
* improper while 1 else
|
||||||
* docstring indent
|
* docstring indent
|
||||||
* 3.3 default values in lambda expressions
|
* 3.3 default values in lambda expressions
|
||||||
* start 3.0 decompilation (needs newer xdis)
|
* start 3.0 decompilation (needs newer `xdis`)
|
||||||
- Start grammar misparse checking
|
- Start grammar misparse checking
|
||||||
|
|
||||||
|
|
||||||
@@ -551,12 +551,12 @@ Very minor changes
|
|||||||
2.9.3 2016-10-26
|
2.9.3 2016-10-26
|
||||||
====================
|
====================
|
||||||
|
|
||||||
Release forced by incompatibility change in xdis 3.2.0.
|
Release forced by incompatibility change in` xdis` 3.2.0.
|
||||||
|
|
||||||
- Python 3.1 bugs:
|
- Python 3.1 bugs:
|
||||||
* handle "with ... as"
|
* handle `with`... `as`
|
||||||
* handle "with"
|
* handle `with`
|
||||||
* Start handling def (...) -> yy (has bugs still)
|
* Start handling `def` (...) -> _yy_ (has bugs still)
|
||||||
|
|
||||||
- DRY Python 3.x via inheritance
|
- DRY Python 3.x via inheritance
|
||||||
- Python 3.6 work (from Daniel Bradburn)
|
- Python 3.6 work (from Daniel Bradburn)
|
||||||
@@ -582,12 +582,12 @@ Release forced by incompatibility change in xdis 3.2.0.
|
|||||||
2.9.0 2016-10-09
|
2.9.0 2016-10-09
|
||||||
====================
|
====================
|
||||||
|
|
||||||
- Use xdis 3.0.0 protocol load_module.
|
- Use `xdis` 3.0.0 protocol `load_module`.
|
||||||
this Forces change in requirements.txt and _pkg_info_.py
|
this Forces change in requirements.txt and _pkg_info_.py
|
||||||
- Start Python 1.5 decompiling; another round of work is needed to
|
- Start Python 1.5 decompiling; another round of work is needed to
|
||||||
remove bugs
|
remove bugs
|
||||||
- Simplify python 2.1 grammar
|
- Simplify python 2.1 grammar
|
||||||
- Fix bug with -t ... Wasn't showing source text when -t option was given
|
- Fix bug with `-t` ... Wasn't showing source text when `-t` option was given
|
||||||
- Fix 2.1-2.6 bug in list comprehension
|
- Fix 2.1-2.6 bug in list comprehension
|
||||||
|
|
||||||
2.8.4 2016-10-08
|
2.8.4 2016-10-08
|
||||||
@@ -596,8 +596,8 @@ Release forced by incompatibility change in xdis 3.2.0.
|
|||||||
- Python 3 disassembly bug fixes
|
- Python 3 disassembly bug fixes
|
||||||
- Python 3.6 fstring bug fixes (from moagstar)
|
- Python 3.6 fstring bug fixes (from moagstar)
|
||||||
- Python 2.1 disassembly
|
- Python 2.1 disassembly
|
||||||
- COME_FROM suffixes added in Python3
|
- `COME_FROM` suffixes added in Python3
|
||||||
- use .py extension in verification disassembly
|
- use `.py` extension in verification disassembly
|
||||||
|
|
||||||
2.8.3 2016-09-11 live from NYC!
|
2.8.3 2016-09-11 live from NYC!
|
||||||
=======================================
|
=======================================
|
||||||
@@ -642,8 +642,8 @@ control-flow structure detection is done.
|
|||||||
- Add Python 2.2 decompilation
|
- Add Python 2.2 decompilation
|
||||||
|
|
||||||
- Fix bugs
|
- Fix bugs
|
||||||
* PyPy LOOKUP_METHOD bug
|
* PyPy `LOOKUP_METHOD` bug
|
||||||
* Python 3.6 FORMAT_VALUE handles expressions now
|
* Python 3.6 `FORMAT_VALUE` handles expressions now
|
||||||
|
|
||||||
2.8.0 2016-08-03
|
2.8.0 2016-08-03
|
||||||
====================
|
====================
|
||||||
@@ -693,7 +693,7 @@ control-flow structure detection is done.
|
|||||||
====================
|
====================
|
||||||
|
|
||||||
- Improve Python 2.6 bytecode deparsing:
|
- Improve Python 2.6 bytecode deparsing:
|
||||||
stdlib now will deparse something
|
_stdlib_ now will deparse something
|
||||||
- Better <2.6 vs. 2.7 grammar separation
|
- Better <2.6 vs. 2.7 grammar separation
|
||||||
- Fix some 2.7 deparsing bugs
|
- Fix some 2.7 deparsing bugs
|
||||||
- Fix bug in installing uncompyle6 script
|
- Fix bug in installing uncompyle6 script
|
||||||
@@ -756,9 +756,9 @@ control-flow structure detection is done.
|
|||||||
2.3.2 2016-05-1
|
2.3.2 2016-05-1
|
||||||
===================
|
===================
|
||||||
|
|
||||||
- Add --version option standalone scripts
|
- Add `--version` option standalone scripts
|
||||||
- Correct License information in package
|
- Correct License information in package
|
||||||
- expose fns uncompyle_file, load_file, and load_module
|
- expose functions `uncompyle_file()`, `load_file()`, and `load_module()`
|
||||||
- Start to DRY Python2 and Python3 grammars Separate out 3.2, and 3.5+
|
- Start to DRY Python2 and Python3 grammars Separate out 3.2, and 3.5+
|
||||||
specific grammar code
|
specific grammar code
|
||||||
- Fix bug in 3.5+ constant map parsing
|
- Fix bug in 3.5+ constant map parsing
|
||||||
@@ -766,12 +766,12 @@ control-flow structure detection is done.
|
|||||||
2.3.0, 2.3.1 2016-04-30
|
2.3.0, 2.3.1 2016-04-30
|
||||||
=============================
|
=============================
|
||||||
|
|
||||||
- Require spark_parser >= 1.1.0
|
- Require `spark_parser` >= 1.1.0
|
||||||
|
|
||||||
2.2.0 2016-04-30
|
2.2.0 2016-04-30
|
||||||
====================
|
====================
|
||||||
|
|
||||||
- Spark is no longer here but pulled separate package spark_parse
|
- Spark is no longer here but pulled separate package [spark_parser](https://pypi.org/project/spark_parser/)
|
||||||
- Python 3 parsing fixes
|
- Python 3 parsing fixes
|
||||||
- More tests
|
- More tests
|
||||||
|
|
||||||
@@ -781,7 +781,7 @@ control-flow structure detection is done.
|
|||||||
- Support single-mode (in addition to exec-mode) compilation
|
- Support single-mode (in addition to exec-mode) compilation
|
||||||
- Start to DRY Python 2 and Python 3 grammars
|
- Start to DRY Python 2 and Python 3 grammars
|
||||||
- Fix bug in if else ternary construct
|
- Fix bug in if else ternary construct
|
||||||
- Fix bug in uncomplye6 -d and -r options (via lelicopter)
|
- Fix bug in uncomplye6 `-d` and `-r` options (via lelicopter)
|
||||||
|
|
||||||
|
|
||||||
2.1.3 2016-01-02
|
2.1.3 2016-01-02
|
||||||
@@ -789,7 +789,7 @@ control-flow structure detection is done.
|
|||||||
|
|
||||||
- Limited support for decompiling Python 3.5
|
- Limited support for decompiling Python 3.5
|
||||||
- Improve Python 3 class deparsing
|
- Improve Python 3 class deparsing
|
||||||
- Handle MAKE_CLOSURE opcode
|
- Handle `MAKE_CLOSURE` opcode
|
||||||
- Start to DRY opcode code.
|
- Start to DRY opcode code.
|
||||||
- increase test coverage
|
- increase test coverage
|
||||||
- fix misc small bugs and some improvements
|
- fix misc small bugs and some improvements
|
||||||
@@ -831,5 +831,5 @@ Changes from uncompyle2
|
|||||||
|
|
||||||
SPARK:
|
SPARK:
|
||||||
add option to show grammar rules applied
|
add option to show grammar rules applied
|
||||||
allow Python-style # comments in grammar
|
allow Python-style `#` comments in grammar
|
||||||
Runs on Python 3 and Python 2
|
Runs on Python 3 and Python 2
|
||||||
|
Reference in New Issue
Block a user