1325 Commits

Author SHA1 Message Date
rocky
09bf364d89 Fix Python 3.x bug in function VAR and KW args 2016-05-16 20:41:22 -04:00
rocky
3d261a38c7 Readd some 3.x loop tests 2016-05-16 20:20:53 -04:00
rocky
b5eaa9445d Python 3 genexpr bug 2016-05-15 20:59:28 -04:00
rocky
2c121545f0 Fix bug in Python 3 lambda expression handling
Some other small cleanup changes
2016-05-15 18:14:22 -04:00
rocky
4cba5a28ef 3.4 if/while bug 2016-05-15 05:37:44 -04:00
rocky
38a5180e02 Add more Python 2.7 verify tests 2016-05-15 04:24:29 -04:00
rocky
4da2b8e2ed Python2 comptability in using Python 3 disassembly
Also fixes ablility to run bytecode 3.5 tests from 2.x now

For Python 2 reading python3 bytstrings, we need to
make sure we confer the character to a number.
2016-05-14 20:43:14 -04:00
rocky
e0eba6998f Python packaging - yet again.
Did I ever mention how much Python sucks at packaging?
2016-05-13 22:59:15 -04:00
rocky
e1a2860013 Test for class decorator
See https://github.com/rocky/python-uncompyle6/pull/15
2016-05-13 16:25:07 -04:00
rocky
7929e4b57d Clean up test byte-compile directory 2016-05-12 11:40:54 -04:00
rocky
5babde61c4 Misc changes
Back off of some validation tests for now.
2016-05-12 11:22:00 -04:00
rocky
631d7be921 Redo make_function for *, arg
main(*, file='foo') and things like that now work
2016-05-11 20:34:20 -04:00
rocky
9ae45b363f 3.2 class bug 2016-05-09 20:11:25 -04:00
rocky
b287a305ea 3.2 WhileTrue grammar bug 2016-05-09 19:39:37 -04:00
rocky
d823dfb5d3 Python 3 "while True" bug 2016-05-09 14:44:34 -04:00
rocky
41f9e9e53e Track recent lc changes in fragment semantics 2016-05-09 06:57:13 -04:00
rocky
1179dc72da Another closure wrapping bug 2016-05-09 06:47:03 -04:00
rocky
e63bcd54e9 Another Python 3 closure grammar bug 2016-05-09 06:21:57 -04:00
rocky
e37b197db9 Fix Python 3 list comprehansion closure bug 2016-05-09 05:03:49 -04:00
rocky
196495c40e Python 3 DUP_TOP_TWO bug 2016-05-08 18:41:59 -04:00
rocky
dddb486d78 DRY parse{2,3} code
Add test for last bug.
2016-05-08 18:15:07 -04:00
rocky
b11f6d94f7 come_from_opt handles and/or precidence properly
main.py: give a better error message when file is not found.
2016-05-08 15:51:54 -04:00
rocky
400153ea53 Yet another Python 3.x COME_FROM grammar problem 2016-05-08 13:08:12 -04:00
rocky
a65a8bb68e Fix 3.2 for/if loopback bug
problem was handling in Python 3.2

 for ...
    if ...
    else:
      ....
      jump for
    come from if
    jump for

In later Python 3's a "come from" is removed.

Also, start to DRY parser{,2,3} grammar rules.
2016-05-08 12:09:50 -04:00
rocky
4a79082872 Fix 3.5 if..pass bug
Update HISTORY.MD to include Dan Pascu. Some minor doc corrections
2016-05-08 10:32:11 -04:00
rocky
406df297df Python 3 build class parsing 2016-05-07 23:32:59 -04:00
rocky
36ffd4c31f Handle Python 3 yield from
Start dealing with MAKE_FUNCTION flags - not done yet.
2016-05-07 11:33:18 -04:00
rocky
039c115679 More Python3 deparsing
- grammar rule genexpr
- More Python3 docstring formatted
2016-05-06 23:51:25 -04:00
rocky
c58481a9eb More Python 2 and 3 deparsing bugs fixed
* while + if break
* try + finall /pass
2016-05-05 20:56:41 -04:00
rocky
6f3a88d7e2 Fix up 3.2 tests
Remove pypy
2016-05-05 04:41:23 -04:00
rocky
05733c6171 Python 3.5 abc.py bug distilled 2016-05-05 04:11:53 -04:00
rocky
c85496a92d Handle 3.5 with [as]
scanner35.py: Fix a small variable-name typo
2016-05-04 22:15:03 -04:00
rocky
e4ba73adfb One more test 2016-05-03 22:27:26 -04:00
rocky
feec241da8 Misc: long lists, DRY 2/3 grammars, '%' count
parse{2,3,r}.py: DRY Python expressions between Python 2 and 3
pysource.py, fragment.py, parser.py: handle long lists by grouping in chunks of 32
and 256
bin/uncompyle6: count %s properly
2016-05-02 21:25:16 -04:00
rocky
119bb9bb26 Bug 2016-05-01 21:14:25 -04:00
rocky
4455b5e280 Add test for last fix.
Drop 2.5 test until we figure out what's wrong
2016-05-01 21:07:10 -04:00
rocky
0a32a16d88 Python 3.0..3.2 bug in LOAD_FAST/STORE_LOCAL
LOAD_FAST         '__locals__'
STORE_LOCALS      ''

Also have to adjust doc constants for this crap

astnode.py: minor format change
2016-04-30 09:12:03 -04:00
rocky
4aa703d727 Test optimized Python code and Python 3.2 2016-04-30 06:54:01 -04:00
rocky
f3a4e6ee54 Pevious commit grammar change is Python 3.5 and up 2016-04-30 04:03:38 -04:00
rocky
43f5c5dcca Python 3.5 if statments decompyle
Sometimes it doesn't need JUMP_FORWARD _come_from _come_from

For example:

def handle2(module):
    if module == 'foo':
        try:
            module = 1
        except ImportError as exc:
            module = exc

    return module

And:

if __name__:
    for i in (1, 2):
        x = 3
2016-04-30 03:51:54 -04:00
rocky
2c7fcf9e62 Back off if_else_ternary pending
Fails on Python 3.4 investigation
Python 3.5 works though
2016-04-10 21:59:06 -04:00
rocky
5a813621cb Test administrivia 2016-04-10 21:27:41 -04:00
rocky
9f7d36f8fb Handle Ternary "or". Remove mention of uncompyle3
uncompyle3 removed per Mysterie's request
[Fixes Issue #5]
2016-04-07 07:18:46 -04:00
rocky
4e57c3da5b remove uncompyle3 and make test work again
* uncompyle3 removed by request
* make test on python 2.7 is failing on some python3 and python3.5
  bytecodes. Remove for now.
2016-03-11 02:10:07 -05:00
rocky
551e2174cb Add Python 3.5 tests that we can do. 2016-01-07 04:32:20 -05:00
rocky
bc2a36b9f7 Start 3.4 library verify tests 2016-01-02 16:48:59 -05:00
rocky
54a0af733b Verify 3.4 bytecode. verify API call bug fixed. 2016-01-02 07:50:09 -05:00
rocky
2927921856 Python 3 class deparsing. stop earlier in uncompyle6 on a syntax error. 2016-01-02 05:38:22 -05:00
rocky
7d42329c31 Work on MAKE_CLOSURE rules for Python 3.3 2016-01-01 21:55:14 -05:00
rocky
09ef875b3e Remove tests we will never use 2015-12-31 11:37:06 -05:00