Get ready for release 2.9.11

This commit is contained in:
rocky
2017-05-06 07:26:37 -04:00
parent dcaca27821
commit 1093ef5c5b
4 changed files with 538 additions and 137 deletions

399
ChangeLog
View File

@@ -1,6 +1,402 @@
2017-05-06 rocky <rb@dustyfeet.com>
* uncompyle6/version.py: Get ready for release 2.9.11
2017-05-06 rocky <rb@dustyfeet.com>
* test/Makefile: fix PYTHON variable setting in test/Makefile
2017-05-06 rocky <rb@dustyfeet.com>
* test/simple_source/bug32/01_try_except_raise.py,
test/simple_source/bug32/03_if.py, uncompyle6/parsers/parse32.py,
uncompyle6/parsers/parse33.py: Fix more Python3.2 parser errors
2017-05-05 rocky <rb@dustyfeet.com>
* uncompyle6/parsers/parse32.py, uncompyle6/scanners/scanner3.py:
Improve Python 3.2 decompilation ... by removing a lot of the control-flow labels of 3.3+
2017-05-05 rocky <rb@dustyfeet.com>
* .travis.yml: Try CI testing on Python 3.6
2017-05-02 rocky <rb@dustyfeet.com>
* test/simple_source/bug35/01_map_unpack.py, uncompyle6/parser.py,
uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py,
uncompyle6/semantics/pysource.py: Bang more on BUIlD_MAP_UNPACK there are still bugs. Note: {**{'x': 1}, **{'y': 2}} and {{'x': 1}, **{'y': 2}} generate the same Python 3.5+ bytecode.
2017-05-02 rocky <rb@dustyfeet.com>
* test/simple_source/bug35/01_map_unpack.py, uncompyle6/parser.py,
uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py:
BUILD_MAP_UNPACK'ing of dictionaries in 3.5
2017-05-01 rocky <rb@dustyfeet.com>
* uncompyle6/semantics/pysource.py: Remove extra unpack *. Issue #98
2017-04-29 R. Bernstein <rocky@users.noreply.github.com>
* HISTORY.md: Update HISTORY.md
2017-04-29 rocky <rb@dustyfeet.com>
* test/simple_source/bug35/01_map_unpack.py,
uncompyle6/parsers/parse35.py, uncompyle6/semantics/pysource.py:
Handle BUILD_MAP_UNPACK in a build_list
2017-04-27 rocky <rb@dustyfeet.com>
* uncompyle6/semantics/pysource.py: A hacky way to get
CALL_FUNCTION_EX_KW to work.
2017-04-26 rocky <rb@dustyfeet.com>
* uncompyle6/semantics/pysource.py: remove debug code
2017-04-25 rocky <rb@dustyfeet.com>
* test/simple_source/bug36/01_call_function.py,
uncompyle6/parsers/parse36.py, uncompyle6/scanners/scanner36.py,
uncompyle6/semantics/pysource.py: Python 3.6 CALL_FUNCTION_EX first
attempt
2017-04-22 rocky <rb@dustyfeet.com>
* uncompyle6/parser.py, uncompyle6/parsers/parse34.py: Reduse scope
of LOAD_ASSERT as expr to 3.4+
2017-04-22 rocky <rb@dustyfeet.com>
* uncompyle6/parser.py, uncompyle6/verify.py: LOAD_ASSERT can also
be an expr This may have the undesirable property that assert statements might
get tagged with equivalant low-level Python code that uses "raise
AssertionError", but so be it. Fixes #103
2017-04-22 R. Bernstein <rocky@users.noreply.github.com>
* HISTORY.md: Update HISTORY.md
2017-04-22 R. Bernstein <rocky@users.noreply.github.com>
* HISTORY.md: Update HISTORY.md
2017-04-22 rocky <rb@dustyfeet.com>
* history.md: history keeps gettting amended
2017-04-22 rocky <rb@dustyfeet.com>
* readme.rst: document python 3.x status
2017-04-22 rocky <rb@dustyfeet.com>
* test/simple_source/bug35/03_async_await.py,
uncompyle6/parsers/parse35.py, uncompyle6/semantics/pysource.py: add
await expr fixes #111
2017-04-22 rocky <rb@dustyfeet.com>
* : update test
2017-04-22 rocky <rb@dustyfeet.com>
* test/simple_source/bug33/02_pos_args.py,
uncompyle6/parsers/parse3.py, uncompyle6/semantics/make_function.py:
3.3+ bug in handling single kwarg after * towards fixing issue #110
2017-04-20 rocky <rb@dustyfeet.com>
* test/simple_source/bug35/02_async_for.py,
uncompyle6/parsers/parse35.py: add async for with pass statement fixes #109
2017-04-19 rocky <rb@dustyfeet.com>
* test/simple_source/bug35/03_while-if-break.py,
uncompyle6/parsers/parse3.py: 3.5 ifelsestmtl grammar bug. fixes #108
2017-04-18 rocky <rb@dustyfeet.com>
* test/simple_source/bug35/03_async_await.py,
uncompyle6/parsers/parse35.py: expand await stmt handling fixes #107
2017-04-18 rocky <rb@dustyfeet.com>
* test/simple_source/bug33/01_delete_deref.py,
uncompyle6/parsers/parse32.py, uncompyle6/semantics/pysource.py: add
delete_deref grammar rule fixes issue #106
2017-04-17 rocky <rb@dustyfeet.com>
* test/simple_source/bug36/01_extended_arg.py,
test/simple_source/bug36/01_if_file.py: rename test case to
something more appropriate
2017-04-17 rocky <rb@dustyfeet.com>
* test/simple_source/bug36/01_if_file.py: fix botched test case thanks to zm908 for pointing this out
2017-04-16 rocky <rb@dustyfeet.com>
* uncompyle6/parsers/parse3.py: comment on what's up with last
change
2017-04-16 rocky <rb@dustyfeet.com>
* test/simple_source/bug22/03_if1.py,
test/simple_source/bug31/02_ifelse_comprehension.py,
uncompyle6/parsers/parse3.py: python 3.x ifelse in comprehension fixes issue #91
2017-04-16 rocky <rb@dustyfeet.com>
* : add 2.7 complex test
2017-04-15 rocky <rb@dustyfeet.com>
* test/simple_source/bug35/01_map_unpack.py,
uncompyle6/semantics/pysource.py: correct bug in 3.5+ build_list
with unpack
2017-04-15 r. bernstein <rocky@users.noreply.github.com>
* how-to-report-a-bug.md: update how-to-report-a-bug.md
2017-04-15 r. bernstein <rocky@users.noreply.github.com>
* how-to-report-a-bug.md: update how-to-report-a-bug.md
2017-04-15 rocky <rb@dustyfeet.com>
* test/simple_source/bug36/01_if_file.py,
uncompyle6/parsers/parse36.py: 3.6 generates wonky extended_arg in
expression fixes issue #102
2017-04-15 rocky <rb@dustyfeet.com>
* how-to-report-a-bug.md, manifest.in: add how to report a bug add test case for ... if 1 else ...
2017-04-14 rocky <rb@dustyfeet.com>
* test/simple_source/bug35/01_map_unpack.py,
uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py,
uncompyle6/semantics/pysource.py: python 3.5+ build_unmap_pack rules towards addressing issue #98
2017-04-14 rocky <rb@dustyfeet.com>
* uncompyle6/scanners/scanner3.py: reduce adding return_end_if in
3.5+ the whole control flow determination has to be redone in a less
haphazard way using real flow-control analysis. hopefully that's on
the way. in the meantime we have this hack.
2017-04-14 rocky <rb@dustyfeet.com>
* test/simple_source/bug27+/03_if_1_else.py,
test/simple_source/bug27+/03_if_true_else.py: better names for a
test
2017-04-13 rocky <rb@dustyfeet.com>
* test/simple_source/bug27+/03_if_true_else.py,
uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
uncompyle6/semantics/consts.py: add if1else. fixes #101
2017-04-13 rocky <rb@dustyfeet.com>
* uncompyle6/parsers/parse3.py: in 3.x come_from should include
come_from_except
2017-04-13 rocky <rb@dustyfeet.com>
* uncompyle6/parsers/parse35.py: towards fixing issue #92
2017-04-13 rocky <rb@dustyfeet.com>
* uncompyle6/parsers/parse23.py, uncompyle6/semantics/pysource.py:
add python 2.3 rule for "if 1: ..." fully fixes #97 for python 2.3. python 2.4 was fixed in a previous
commit.
2017-04-12 rocky <rb@dustyfeet.com>
* uncompyle6/parsers/parse3.py,
uncompyle6/semantics/make_function.py: annotate args type need to be
expr's not constants
2017-04-12 rocky <rb@dustyfeet.com>
* uncompyle6/parsers/parse24.py: handle python 2.4 "if 1...."
2017-04-11 rocky <rb@dustyfeet.com>
* test/simple_source/bug31/04_def_annotate.py,
uncompyle6/semantics/fragments.py,
uncompyle6/semantics/make_function.py: bang on 3.x annotations
2017-04-11 rocky <rb@dustyfeet.com>
* test/simple_source/bug31/04_def_annotate.py,
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
towards fixing annotated decorator functions... and annotate functions
2017-04-10 rocky <rb@dustyfeet.com>
* uncompyle6/parsers/parse2.py, uncompyle6/scanners/scanner27.py,
uncompyle6/semantics/check_ast.py, uncompyle6/semantics/pysource.py:
misc bugs parse2.py: restore accidently-removed while1stmt rule scanner27.py:
grammar typo check_ast: add while1else to list of looping constructs
pysource.py: call_function_var_kw_args with positional args rule is
different?
2017-04-10 rocky <rb@dustyfeet.com>
* test/simple_source/stmts/02_while1else.py,
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
uncompyle6/parsers/parse35.py: add more while1else grammar rules towards addressing issue #93
2017-04-09 rocky <rb@dustyfeet.com>
* : one more function_var test for 3.3
2017-04-09 rocky <rb@dustyfeet.com>
* test/simple_source/def/10_kw+pos_args-bug.py,
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
another python 3.5 function_var bug fixes #94
2017-04-09 rocky <rb@dustyfeet.com>
* : commit 4199bc7f617e387fb03fc06939cd17366dc15c5e author: rocky
<rb@dustyfeet.com> date: sun apr 9 05:30:45 2017 -0400
2017-04-03 rocky <rb@dustyfeet.com>
* : commit 6773a66b99d07e48290a77dbbbe3c71cc39c31ba author: rocky
<rb@dustyfeet.com> date: mon apr 3 06:53:12 2017 -0400
2017-03-27 rocky <rb@dustyfeet.com>
* : commit a91cd716670be09d3cef34e1bb36a67f96f91712 author: rocky
<rb@dustyfeet.com> date: mon mar 27 07:08:59 2017 -0400
2017-03-19 rocky <rb@dustyfeet.com>
* __pkginfo__.py: use more-recent xdis
2017-03-15 rocky <rb@dustyfeet.com>
* history.md, test/simple_source/bug33/01_if_try_except.py: grammar
typo and add another test
2017-03-12 rocky <rb@dustyfeet.com>
* uncompyle6/scanners/scanner3.py: python 3.0 doesn't have
pop_jump_if...
2017-03-12 rocky <rb@dustyfeet.com>
* readme.rst: note problem in handling pathologically long lists
2017-03-07 rocky <rb@dustyfeet.com>
* uncompyle6/scanners/scanner3.py: small cleanup - remove
pop_jump_tf
2017-03-05 rocky <rb@dustyfeet.com>
* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
uncompyle6/parsers/parse33.py, uncompyle6/scanners/scanner3.py: more
accurate ranges of try blocks in 3.x
2017-03-05 rocky <rb@dustyfeet.com>
* test/simple_source/bug33/01_try_except.py: more accurate ranges of
try blocks in 3.x
2017-03-04 r. bernstein <rocky@users.noreply.github.com>
* : merge pull request #84 from
moagstar/property_based_test_function_call property based test function call
2017-03-04 rocky <rb@dustyfeet.com>
* readme.rst: readme updates for 3.5 and 1.5
2017-03-04 rocky <rb@dustyfeet.com>
* test/simple_source/bug32/01_named_and_kwargs.py,
uncompyle6/parsers/parse3.py: bug found by hypothesis in creating
function calls
2017-03-04 daniel bradburn <moagstar@gmail.com>
* pytest/test_function_call.py: marked all function call tests as
failing until they pass across all python versions
2017-03-04 daniel bradburn <moagstar@gmail.com>
* pytest/test_function_call.py: added minimal examples for various
function call opcodes
2017-03-04 daniel bradburn <moagstar@gmail.com>
* pytest/test_function_call.py: added property based test for
verifying uncompylation of function calls. a number of minimal
examples for the various function call opcodes have been generated
with the majority marked as expected failure until python 3.6 opcode
support is complete. i'm hoping this will make it easier to figure
out what needs to be done to support the new opcodes and changed
semntics for function calls
2017-03-03 daniel bradburn <moagstar@gmail.com>
* pytest/test_function_call.py: reduced errors when generating
function call instances
2017-03-03 daniel bradburn <moagstar@gmail.com>
* pytest/test_function_call.py: added test file for function calls
2017-03-03 daniel bradburn <moagstar@gmail.com>
* .gitignore: added .idea to gitignore
2017-03-03 daniel bradburn <moagstar@gmail.com>
* .gitignore: added .venv to gitignore
2017-03-01 rocky <rb@dustyfeet.com>
* uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
uncompyle6/scanners/scanner3.py, uncompyle6/verify.py: come_from for
3.x pop_except, dry with op_name() ... start adding come_froms for pop_except in preparation for getting
tryelse blocks correct. simpler opname access functions: - self.op_name(op) is self.opc.opname[op] - self.op_name_from_offset(offset) is
self.opc.opname[self.code[offset]] verify.py: not all offsets are ints
2017-02-28 rocky <rb@dustyfeet.com>
* readme.rst, uncompyle6/parser.py, uncompyle6/parsers/parse26.py:
python 2.6 a == b or c == d == 3 grammar bug
2017-02-28 rocky <rb@dustyfeet.com>
* : 2.6 a == b or x == y == z bug
2017-02-28 rocky <rb@dustyfeet.com>
* test/simple_source/bug26/03_double_equals.py,
uncompyle6/semantics/consts.py: predidence of cmp_list: x == y == z the x, y, z should not have parenthesis around pairs of them (x ==
y) or (y == z)
2017-02-28 rocky <rb@dustyfeet.com>
* uncompyle6/parser.py, uncompyle6/parsers/parse27.py: python 2.7
check jump targets of "and"
2017-02-25 rocky <rb@dustyfeet.com>
* uncompyle6/version.py: Get ready for release 2.9.10
* ChangeLog, NEWS, __pkginfo__.py, uncompyle6/version.py: Get ready
for release 2.9.10
2017-02-25 rocky <rb@dustyfeet.com>
@@ -5630,4 +6026,3 @@
2012-06-05 Mysterie <kajusska@gmail.com>
* first commit

6
NEWS
View File

@@ -1,3 +1,9 @@
uncompyle6 2.9.11 2016-04-06
- Better support for Python 3.5+ BUILD_MAP_UNPACK
- Start 3.6 CALL_FUNCTION_EX support
- Many decompilation bug fixes. (Many more remain). See ChangeLog
uncompyle6 2.9.10 2016-02-25
- Python grammar rule fixes

View File

@@ -1,3 +1,3 @@
# This file is suitable for sourcing inside bash as
# well as importing into Python
VERSION='2.9.10'
VERSION='2.9.11'