Commit Graph

1264 Commits

Author SHA1 Message Date
rocky
cc47d61efa Better 3.6 set comprehensions 2022-05-06 07:30:56 -04:00
rocky
8576117d00 Fix More 3.6 async parsing
... all from 3.6 test_coroutines.py.

More bugs remain
2022-05-05 07:36:06 -04:00
rocky
9dd4a53ff8 Fix 3.6 async parsing 2022-05-04 04:27:38 -04:00
rocky
d62310f799 Correct 3.6ish dictionary literals printing 2022-05-03 12:19:43 -04:00
rocky
5df57489b4 CI woes - need new xdis
Remove 1.0 os.pyc until I can investigate.
It works locally though
2022-04-30 20:50:28 -04:00
rocky
9aba1cc3af Bytecode 1.x fixes 2022-04-30 20:36:43 -04:00
rocky
eba0d37d0f Improve Python 1.x decompiling
Still has bugs, but is much better.
2022-04-30 05:54:22 -04:00
rocky
37ea469ce6 One more 2.4 test 2022-04-28 17:11:17 -04:00
rocky
8e5faa933f Handle long 2.x bytecode literals more efficiently 2022-04-27 13:47:56 -04:00
rocky
a356a8e0ee Reinstante pyenvlib 2022-04-27 03:39:05 -04:00
rocky
d48801964c Use attr insead of pattrr for non-strings 2022-04-26 03:13:27 -04:00
rocky
e564ac3ab1 Go over long-literal test 2022-04-24 17:50:32 -04:00
rocky
8cdf741b62 Bugs in long-literal handlin
Move n_dict to n_actions and special case n_const_list.
Generalize build_collection out of 3.7+ and into all Pythons
2022-04-24 17:38:35 -04:00
rocky
371138cfbc handle long literal constants faster 2022-04-24 13:11:20 -04:00
rocky
f3ac70d0ea test tweak again 2022-04-21 05:34:15 -04:00
rocky
c88d9de316 Correct 3.7 "impor"t and "from .. import" 2022-04-20 20:03:28 -04:00
rocky
1c1752d6d6 Bump testing version ...
pyston 2.3 testing
2022-04-17 10:29:23 -04:00
rocky
1a673aba40 Reinstate a test 2022-04-13 03:05:04 -04:00
rocky
04510ac2f8 lambda formatting in f-string
In a formatted string using "lambda',  we should not add "\n".
For example in:
  f'{(lambda x:x)("8")!r}'

Adding a "\n" after "lambda x: x" will give an error message:
  SyntaxError: f-string expression part cannot include a backslash
2022-04-12 16:49:58 -04:00
rocky
a1fe069c8c Handle walrus operator
Or rather set precedence on call_stmt and expr_stmt

Adjust pytest test_single_compile so it works now
2022-04-12 05:21:13 -04:00
rocky
bc71bf7acd Shorten 10_complex.py
Runtime testing took too long because ranges were larger than needed
Also use newer convention for marking runable codes
2022-04-03 06:41:58 -04:00
rocky
219cb0606a MAKE_FUNCTION_8 -> MAKE_FUNCTION_CLOSURE
Clarity is important.
2022-02-27 10:29:53 -05:00
rocky
deea74b6a8 ret_expr -> return_expr
This matches Python's AST a little more closely
2022-01-03 21:56:07 -05:00
rocky
51e32b88a4 Include 2.4_run, 2.5_run in testing 2021-12-31 11:39:57 -05:00
rocky
203139eafa Add tests, comment what's up with change..
and use isinstance()
2021-12-31 11:27:15 -05:00
rocky
3234673422 mklambda -> lambda_body matches Python AST better
Note: we can't use "lambda" since that is a reserved word
2021-12-26 18:48:51 -05:00
rocky
da2314f5ae Part of the decompye3 loop "continue" fixes 2021-12-17 16:13:09 -05:00
rocky
03a71290e9 Admnistrivia
revise add-test.py
2021-11-24 15:12:53 -05:00
rocky
2c4acecc9d Start PyPy 3.8 support 2021-11-23 16:45:01 -05:00
rocky
2d5249f1d3 Small comment change 2021-11-23 07:31:37 -05:00
rocky
211c74c240 Better 3.7 CALL_METHOD_KW handling
- Handles positional args now
2021-11-23 05:06:48 -05:00
rocky
3a63847d22 Tweak last commit 2021-11-22 09:27:16 -05:00
rocky
2ed211e0d4 Some PyPY 3.7 support
* Handle CALL_METHOD_KW
* adjust PyPY 3.7 assert stmts
* misc administrivia
2021-11-21 14:04:34 -05:00
rocky
88dd5d7756 Remove one more float version test 2021-11-16 06:47:31 -05:00
rocky
8094f3bb12 Remove PYTHON3 2021-11-03 03:00:43 -04:00
R. Bernstein
9b5d953614 Merge pull request #364 from rocky/PYTHON3-move
use xdis.PYTHON3 not uncompyle.PYTHON3
2021-11-03 01:24:47 -04:00
rocky
ed34bf9d4a use xdis.PYTHON3 not uncompyle.PYTHON3 2021-11-02 06:53:11 -04:00
Markus Elfring
05761b0d46 Issue #363: Convert 14 statements to the usage of augmented assignments
Augmented assignment statements became available with Python 2.
https://docs.python.org/3/whatsnew/2.0.html#augmented-assignment

Thus adjust 14 source code places accordingly.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
2021-11-02 11:25:04 +01:00
rocky
9cf345d446 Allow running test from 3.9 and 3.10
this does not mean we decompile either of those bytecode though.
2021-10-26 19:05:32 -04:00
rocky
f2750cff50 Correct pytest/test_grammar.py for new regime 2021-10-21 02:28:48 -04:00
rocky
f4bb0c44fe Try Travis with new xdis 2021-10-12 17:24:19 -04:00
rocky
fe7df87288 Sync 3.8 and Makefile changes with decompyle3
Makefile: pyston 2.3 tolerance
fragments: 3.8 comprehension adjustments
2021-07-29 13:16:03 -04:00
rocky
96b1e435c2 Fixes #360 2021-06-15 22:42:55 -04:00
Tim Gates
fc38e23d8f docs: fix simple typo, unecessary -> unnecessary
There is a small typo in test/simple_source/looping/12_if_while_true_pass.py.

Should read `unnecessary` rather than `unecessary`.
2020-12-31 18:11:41 +11:00
rocky
8879708da7 del_stmt -> delete to match Python AST better 2020-09-02 07:14:56 -04:00
rocky
a5cfd81805 Include 3.8 excludes from decompyle3 2020-07-28 07:59:39 -04:00
rocky
64f19bf188 Use newest versions for 3.6-3.8 2020-07-26 10:53:17 -04:00
rocky
a215ee2f00 Use "co_consts" in docstring detection.
Note: this is an upheaval because we need to pass "code" or at least
"code.co_consts" to the docstring detection routine
2020-07-21 10:31:07 -04:00
rocky
0f80c38530 Better doc string detection
A bug in 2.7 test_descr.py revealed a problem with the way we were
detecting docstrings.

        __doc__ = DocDescr()

was getting confused with a docstring.

This program also reveals other bugs in 3.2+ but we'll deal with that
in another commit.
2020-07-19 20:31:50 -04:00
rocky
815ae2c5cd for/else detection for older 2.x Pythons 2020-07-06 18:38:14 -04:00