mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2024-11-27 15:10:55 +00:00
6719 lines
232 KiB
Plaintext
6719 lines
232 KiB
Plaintext
2017-10-10 rocky <rb@dustyfeet.com>
|
|
|
|
* HOW-TO-REPORT-A-BUG.md, test/Makefile, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/consts.py, uncompyle6/semantics/pysource.py:
|
|
Improve parse trace. lambda fixes yet again
|
|
|
|
2017-10-10 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/branching/02_ifelse_lambda.py,
|
|
uncompyle6/semantics/consts.py: Address dead code in lambda ifelse
|
|
|
|
2017-10-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse24.py, uncompyle6/scanners/scanner3.py:
|
|
Misc bugs
|
|
|
|
2017-10-10 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #131 from rocky/type2kind-rework Adjust for spark-parser 2.7.0 incompatibilities
|
|
|
|
2017-10-10 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, pytest/test_grammar.py, pytest/test_pysource.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/astnode.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse24.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse32.py,
|
|
uncompyle6/parsers/parse34.py, uncompyle6/parsers/parse35.py,
|
|
uncompyle6/parsers/parse36.py, uncompyle6/parsers/parse37.py,
|
|
uncompyle6/scanners/scanner22.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/tok.py, uncompyle6/semantics/check_ast.py,
|
|
uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/make_function.py,
|
|
uncompyle6/semantics/pysource.py, uncompyle6/verify.py,
|
|
uncompyle6/version.py: Adjust for spark-parser 2.7.0
|
|
incompatabilities
|
|
|
|
2017-10-05 rocky <rb@dustyfeet.com>
|
|
|
|
* : One more test
|
|
|
|
2017-10-05 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit b3359439f94c136619b198beaecbfce1b827d2db Author: rocky
|
|
<rb@dustyfeet.com> Date: Thu Oct 5 11:00:55 2017 -0400
|
|
|
|
2017-10-03 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse24.py,
|
|
uncompyle6/parsers/parse26.py: handle newer parser reduction
|
|
behavior
|
|
|
|
2017-10-03 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Remove schumutz
|
|
|
|
2017-10-03 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: More table doc tweaks
|
|
|
|
2017-10-03 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Go over table-semantics
|
|
description yet again
|
|
|
|
2017-10-02 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py:
|
|
spark-parser induced changes... reduce rules can be called without token streams.
|
|
|
|
2017-09-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner3.py: Document hacky customize arg count
|
|
better.
|
|
|
|
2017-09-26 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Word hacking
|
|
|
|
2017-09-26 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS: Get ready for release 2.12.0
|
|
|
|
2017-09-26 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py: No unicode in Python3. but we need it in Python2. The bug was probably introduced as a
|
|
result of recent Python code type unteroperability canonicalization
|
|
|
|
2017-09-26 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py: Pyton 3.1 Annotation args can be
|
|
unicode?
|
|
|
|
2017-09-25 rocky <rb@dustyfeet.com>
|
|
|
|
* : Adjust for xdis opcode JUMP_OPS. release 2.12.0
|
|
|
|
2017-09-21 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_pysource.py: Python 3 compatibility
|
|
|
|
2017-09-21 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_pysource.py, uncompyle6/semantics/consts.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Unit test for format-specifiers And in the process we catch some small bugs
|
|
|
|
2017-09-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Tidy pysource and fragments a
|
|
little more
|
|
|
|
2017-09-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/consts.py: Tidy/regularize table entry
|
|
formatting
|
|
|
|
2017-09-20 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pythonlib.py, uncompyle6/semantics/pysource.py: Small
|
|
fixes test_pyenvlib.py: it is sys.exit(), not exit() pysource.py:
|
|
reinstate nod type of async_func_call
|
|
|
|
2017-09-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/consts.py, uncompyle6/semantics/pysource.py:
|
|
More small doc changes
|
|
|
|
2017-09-20 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_pysource.py, uncompyle6/semantics/pysource.py: Update
|
|
Table-driven info... Start a pysource unit test.
|
|
|
|
2017-09-17 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: engine -> template_engine
|
|
|
|
2017-09-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile: Need weak-verification on 3.4 for now
|
|
|
|
2017-09-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Revert one of the changes
|
|
pending a better fix
|
|
|
|
2017-09-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: More semantic action cleanup
|
|
|
|
2017-09-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py, uncompyle6/scanners/tok.py: Match
|
|
Python 3.4's terms a little names better
|
|
|
|
2017-09-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/tok.py: Revert last revert
|
|
|
|
2017-09-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/tok.py: Revert last change
|
|
|
|
2017-09-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/tok.py: New-style Python classes only, please.
|
|
|
|
2017-08-31 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanner.py, uncompyle6/scanners/scanner37.py: Skeletal
|
|
support for Python 3.7 Largely failing though.
|
|
|
|
2017-08-31 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Remove python versions tag I think it's messing up Pypi's very fussy formatting
|
|
|
|
2017-08-31 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, README.rst, __pkginfo__.py,
|
|
uncompyle6/parsers/parse37.py,
|
|
uncompyle6/semantics/make_function.py, uncompyle6/version.py: Get
|
|
ready for release 2.11.5
|
|
|
|
2017-08-15 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile: 3.7 support
|
|
|
|
2017-08-15 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.11.4
|
|
|
|
2017-08-15 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, pytest/validate.py, uncompyle6/parser.py,
|
|
uncompyle6/scanner.py: Misc cleanups... remove code now in xdis require at least xdis 3.5.4 PyPy tolerance
|
|
in validate testing
|
|
|
|
2017-08-13 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_basic.py, uncompyle6/parser.py, uncompyle6/scanner.py:
|
|
Allow 3-part version string lookups, e.g 2.7.1 We allow a float here, but if passed a string like '2.7'. or
|
|
'2.7.13', accept that in looking up either a scanner or a parser.
|
|
|
|
2017-08-10 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Link typo Name is trepan2 now not trepan
|
|
|
|
2017-08-09 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, README.rst, __pkginfo__.py,
|
|
uncompyle6/semantics/consts.py, uncompyle6/version.py: Get ready for
|
|
release 2.11.3 need xdis 3.5.1 for now. Adjust for xdis "is-not" which we need as
|
|
"is not"
|
|
|
|
2017-08-02 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Revert commit to wrong branch
|
|
|
|
2017-08-02 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Remove six from Python-2.4/2.5 package
|
|
|
|
2017-07-17 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner30.py:
|
|
xdis's "exception match" is now "exception-match"
|
|
|
|
2017-07-15 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: xdis 3.5.1 is botched?
|
|
|
|
2017-07-14 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Use newer xdis
|
|
|
|
2017-07-14 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Fixes issue #124
|
|
|
|
2017-07-14 rocky <rb@dustyfeet.com>
|
|
|
|
* HISTORY.md: History updates
|
|
|
|
2017-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: RsT doc formatting
|
|
|
|
2017-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, HOW-TO-REPORT-A-BUG.md, NEWS, uncompyle6/version.py:
|
|
Get ready for release 2.11.2
|
|
|
|
2017-07-08 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner30.py,
|
|
uncompyle6/scanners/tok.py: Use xdis 3.5.0's opcode sets
|
|
|
|
2017-07-08 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/scanners/pypy32.py,
|
|
uncompyle6/scanners/pypy35.py, uncompyle6/scanners/scanner15.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py, uncompyle6/scanners/scanner36.py:
|
|
Start supporting Pypy 3.5 (5.7.1-beta)
|
|
|
|
2017-07-05 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/03_loop_if_cf.py,
|
|
uncompyle6/parsers/parse26.py: Loops in Python 2.4-2.6 loop
|
|
come_from Looks like Python 2.4-2.6 may have a COME_FROM(_LOOP) before the
|
|
jump_back. Fixes Issue #123
|
|
|
|
2017-06-29 rocky <rb@dustyfeet.com>
|
|
|
|
* : Work around not having real flow-control analysis
|
|
|
|
2017-06-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/make_function.py: A guard against badly
|
|
formated bytecode
|
|
|
|
2017-06-25 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, test/simple_source/bug31/04_def_annotate.py,
|
|
uncompyle6/semantics/make_function.py,
|
|
uncompyle6/semantics/pysource.py: 3.x funciton and annotation bug
|
|
fixes
|
|
|
|
2017-06-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/version.py: Get ready for release 2.11.1
|
|
|
|
2017-06-24 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner30.py, uncompyle6/semantics/pysource.py:
|
|
Use xdis' instruction offset calculation fns.. next_offset, op_size, has_argument
|
|
|
|
2017-06-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Python 2 sometimes need
|
|
str->uncode in writing?
|
|
|
|
2017-06-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Allow deparsed out to be str as
|
|
well as unicode
|
|
|
|
2017-06-18 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.11.0
|
|
|
|
2017-06-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Adjust nodeInfo if it is a
|
|
Token
|
|
|
|
2017-06-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Add nonterminal node in
|
|
extractInfo
|
|
|
|
2017-06-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/make_function.py: Fragment tag more expressions Revise make_function3 comment wrt args and kwargs
|
|
|
|
2017-06-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Fragment tag array subscripts
|
|
|
|
2017-06-10 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Create README.rst
|
|
|
|
2017-06-10 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Create README.rst
|
|
|
|
2017-06-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Set YIELD_VALUE offset in a
|
|
<yield> expr
|
|
|
|
2017-06-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/make_function.py: Python 3.2 MAKE_FUNCTION
|
|
again.. Was handling bug32/01_named_and_kwargs.py wrong again
|
|
|
|
2017-06-09 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #119 from rocky/scan-longconstant Simplify access to L65536 ...
|
|
|
|
2017-06-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/make_function.py: Attempt to document the
|
|
MAKE_FUNCTION/MAKE_LAMBDA mess... in Python 3.0+
|
|
|
|
2017-06-08 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/make_function.py: Correct make_function3 for
|
|
Pytohn 3.2
|
|
|
|
2017-06-08 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Disable "continue" removal in
|
|
pysource.py "continue" could be the only statement and then removing it might
|
|
lead to a dangling "else".
|
|
|
|
2017-06-07 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Mark "pass" offsets. Start routine to find previous node.
|
|
|
|
2017-06-06 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py:
|
|
Remove hacky fragments try fixup... hacky call_function code is also not needed or will be reinstated
|
|
properly. Better grammar structure for Python 3.6 call_function.
|
|
|
|
2017-06-05 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py,
|
|
uncompyle6/scanners/scanner36.py: BUILD_{MAP,TUPLE}_UNPACK &
|
|
CALL_FUNCTION_EX_KW... Bang on these in 3.6. Not totally succesfull right now. In fact a
|
|
regression on one of the test cases
|
|
|
|
2017-06-05 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Important fragments bug fix... start, finish that had been adjusted wasn't getting reflected in
|
|
final returned deparsed.offsets dictionary. Redo keeping API
|
|
compatibility, i.e we still use namedtuple NodeInfo.
|
|
|
|
2017-06-04 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Python 3.5 *args with kwargs handling. 3.5 is a snowflake here. Thank you, Python. Fully fixes Issue 95. 3.6 is broken on this source, but for a *different* reason. Sigh.
|
|
|
|
2017-06-03 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, __pkginfo__.py,
|
|
test/simple_source/bug35/04_CALL_FUNCTION_VAR_KW.py,
|
|
uncompyle6/semantics/fragments.py: Small changes. fragment tag EXEC_STMT
|
|
|
|
2017-06-03 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml: Streamline .travis.yml a little bit
|
|
|
|
2017-06-03 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: We need six
|
|
|
|
2017-06-03 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, circle.yml, requirements-dev.txt: Go over
|
|
administrivia
|
|
|
|
2017-06-03 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.10.1
|
|
|
|
2017-06-03 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Fragment bugs fragment.py: * deparse_code_aorund_offset: was sometimes returning the wrong type * capture function name offset * lint imports pysource.py: use a clearer variable name
|
|
|
|
2017-06-02 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Track changes in ifelstmtr.. in fragments from pysource
|
|
|
|
2017-05-30 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.10.0
|
|
|
|
2017-05-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Python 3.6 makefunction
|
|
handling for fragments
|
|
|
|
2017-05-23 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Fix up 3.6 unmapexpr
|
|
|
|
2017-05-23 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Fix up retreiving "async"
|
|
property on 3.6
|
|
|
|
2017-05-23 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Fix bug in a 3.6 class name.
|
|
|
|
2017-05-23 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Add fuzzy offset deparse lookup
|
|
|
|
2017-05-21 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Correct EXTENDED_ARG handling on
|
|
Python 3.6... where it can appear several times and xdis may handle it as well.
|
|
It possibly in other versions bug since EXTENDED_ARG is used so
|
|
rarely there because it has such a high value 1<<16, it's hard to
|
|
test and determine that.
|
|
|
|
2017-05-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Worse results. Revert some of
|
|
the last changes
|
|
|
|
2017-05-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
More explicit about 3.5 UNMAP_PACK Have to reduce 3.5 bytecode testing for now, code is more solid.
|
|
|
|
2017-05-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py,
|
|
uncompyle6/scanners/scanner3.py: Simplify EXTENDED_ARG on 3.x We largely remove them and fold them itno the next op.
|
|
MAKE_FUNCTION though before 3.6 is an exception as that indicates an
|
|
annotated function
|
|
|
|
2017-05-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner26.py: EXTENDED_ARG is implemented in
|
|
2.6
|
|
|
|
2017-05-19 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/expression/06_huge_list.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: Fix
|
|
EXTENDED_ARG for long lists, sets, maps
|
|
|
|
2017-05-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Another attempt at getting
|
|
get_target() correct
|
|
|
|
2017-05-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py: Bug in pypy JUMP_IF_NOT_DEBUG
|
|
handling
|
|
|
|
2017-05-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse36.py, uncompyle6/scanners/scanner3.py:
|
|
EXTENDED_ARG handling... get_target() wasn't taking into account EXTENDED_ARG before opcode. This is mostly relevant in Python 3.6 where the max size before
|
|
needing EXTENDED_ARG has been reduced to 256, but theoretically
|
|
possible in earlier versions.
|
|
|
|
2017-05-18 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Enforce using xdis >=3.3.1 .. to pick up bug fixes to 3.6 in xdis
|
|
|
|
2017-05-17 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, uncompyle6/parsers/parse36.py,
|
|
uncompyle6/scanners/scanner3.py: Small changes.... * __pkginfo__.py: Need spark parser 1.6.1 for corrected
|
|
remove_rules() fn * parser36.py: remove replaced Python3 rules * scanner3.py: corrected comment. Thanks to moagstar here. *
|
|
|
|
2017-05-16 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse36.py: Fix broken CI on 3.6... Another grammar rule replacing SETUP_LOOP with setup_loop
|
|
|
|
2017-05-16 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse36.py: More EXTENDED_ARGS on 3.6
|
|
|
|
2017-05-16 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse36.py: extend use of EXTENDED_ARGS in 3.6 switching to a wordcode seems to have made opcode fields smaller so
|
|
we need EXTENDED_ARG more?
|
|
|
|
2017-05-16 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse36.py, uncompyle6/semantics/pysource.py:
|
|
Allow LOAD_CONST EXTENDED_ARG
|
|
|
|
2017-05-15 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py: Reinstate 3.6 listcomp rule
|
|
|
|
2017-05-15 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py: Bang on 3.6 MAKE_FUNCTION some more
|
|
|
|
2017-05-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: towards fixing a
|
|
3.5.CALL_FUNCTONI_VAR bug
|
|
|
|
2017-05-14 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/04_CALL_FUNCTION_VAR_KW.py,
|
|
uncompyle6/parsers/parse3.py: Python 3.5 kw arg can be an expr Fixes Issue #95
|
|
|
|
2017-05-14 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #117 from rocky/3.6-MAKE_FUNCTION 3.6 make function
|
|
|
|
2017-05-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: MAKE_FUNCTION_FLAGS can be a
|
|
simpler tuple
|
|
|
|
2017-05-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py: Grammar rules for Python 3.6
|
|
MAKE_FUNCTION
|
|
|
|
2017-05-13 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse36.py, uncompyle6/semantics/pysource.py:
|
|
Bang on 3.6 MAKE_FUNCTION a bit more parse3.py, parse36.py: adding return_closure rule tags what's going
|
|
on with this rule pysource.py: start changing semantic rules to support code changed
|
|
by new make_function semantics README.rst: typo
|
|
|
|
2017-05-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Typo
|
|
|
|
2017-05-12 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse27.py: Bug in 2.7 decompiling ourself! Troublesome file was uncompyle6.semantics.pysource.engine()
|
|
|
|
2017-05-11 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #113 from grkov90/patch-1 Fixed out_base bug
|
|
|
|
2017-05-11 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/make_function.py: WIP: start 3.6 MAKE_FUNCTION
|
|
handling
|
|
|
|
2017-05-11 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* : Merge pull request #116 from moagstar/function_call_keyword_only Added support for Python 3.6 CALL_FUNCTION_KW
|
|
|
|
2017-05-10 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Fixed bug in compiling double
|
|
star arg only function calls where the closing parenthesis would be
|
|
missed
|
|
|
|
2017-05-10 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* requirements-dev.txt: Adding requirement for pytest >= 3.0 to fix
|
|
strange INTERNALERROR in combination with hypothesis when using
|
|
pytest 2.6.4
|
|
|
|
2017-05-10 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_CALL_FUNCTION_KW.sh, pytest/test_function_call.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py,
|
|
uncompyle6/scanners/scanner36.py, uncompyle6/semantics/pysource.py:
|
|
Added support for support for Python 3.6 CALL_FUNCTION_KW
|
|
|
|
2017-05-08 rocky <rb@dustyfeet.com>
|
|
|
|
* appveyor.yml, test/test_pyenvlib.py,
|
|
uncompyle6/semantics/pysource.py: pysource guard and another
|
|
appveyor test
|
|
|
|
2017-05-08 rocky <rb@dustyfeet.com>
|
|
|
|
* appveyor.yml: appveyor take 2
|
|
|
|
2017-05-08 rocky <rb@dustyfeet.com>
|
|
|
|
* appveyor.yml, appveyor/install.ps1, appveyor/run_with_env.cmd: Try
|
|
appveyor
|
|
|
|
2017-05-07 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: More guarded CONTINUE deletion
|
|
|
|
2017-05-07 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanner.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/pysource.py: Reduce spurious "continue"
|
|
statements
|
|
|
|
2017-05-07 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile: --weak-verify on 3.3 with inclusion of last commit Note that the result is sematically equivalent, so it is is correct.
|
|
|
|
2017-05-07 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/looping/12_if_while_true_pass.py,
|
|
uncompyle6/scanners/scanner3.py: Python 3.x control-flow bug... "pass" statement inside "while True"
|
|
|
|
2017-05-07 rocky <rb@dustyfeet.com>
|
|
|
|
* HOW-TO-REPORT-A-BUG.md: Small typo
|
|
|
|
2017-05-07 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Fix improper COME_FROM_EXCEPT in
|
|
Python 3.3+
|
|
|
|
2017-05-06 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse33.py: python 3.3 while True parsing bug
|
|
|
|
2017-05-06 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, 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-03 Gregory <grkov90@gmail.com>
|
|
|
|
* uncompyle6/main.py: Some fix
|
|
|
|
2017-05-03 Gregory <grkov90@gmail.com>
|
|
|
|
* uncompyle6/main.py: Fixed out_base bug Variable filename using in for tags uncompyle6 -o haven't worked argument -o haven't worked
|
|
|
|
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>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py, uncompyle6/version.py: Get ready
|
|
for release 2.9.10
|
|
|
|
2017-02-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse26.py: Python 2.6
|
|
parsing bugs .. and some parser list nonterminal cleanup
|
|
|
|
2017-02-24 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug25/03_if_for.py,
|
|
uncompyle6/parsers/parse26.py: Python 2.6 control flow bug with
|
|
added COME_FROM
|
|
|
|
2017-02-22 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug25/02_try_else.py,
|
|
uncompyle6/parsers/parse25.py: Python 2.5 wasn't handling tryelse
|
|
properly
|
|
|
|
2017-02-20 rocky <rb@dustyfeet.com>
|
|
|
|
* : New test doesn't --verify correctly. Sigh.
|
|
|
|
2017-02-20 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug33/02_while1.py: Add test for last while1
|
|
bug fix
|
|
|
|
2017-02-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py:
|
|
Python 3.x needs more "while 1" grammar rules
|
|
|
|
2017-02-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py,
|
|
uncompyle6/scanners/scanner3.py: Some Python 3.4 bugss fixed by
|
|
using 3.5 rules
|
|
|
|
2017-02-20 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/exception/02_try_finally.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py: More
|
|
COME_FROM's in Python 3... Need this to find boundaries of simple if better
|
|
|
|
2017-02-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse26.py: Marginally better for Python 2.6
|
|
but... control flow is still wrong.
|
|
|
|
2017-02-10 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit f9d47abb2be7c3839df06c0ed69d3d513694af4e Author: rocky
|
|
<rb@dustyfeet.com> Date: Fri Feb 10 02:07:04 2017 -0500
|
|
|
|
2017-02-10 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug22/01_ops.py, test/test_pythonlib.py: Beef
|
|
up grammar coverage
|
|
|
|
2017-01-29 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/simple_source/bug22/01_ops.py,
|
|
uncompyle6/parsers/parse25.py, uncompyle6/semantics/consts.py,
|
|
uncompyle6/semantics/pysource.py: Changes based on grammar coverage
|
|
info
|
|
|
|
2017-01-29 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #83 from rocky/coverage Coverage
|
|
|
|
2017-01-29 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug22/01_ops.py, test/test_pyenvlib.py: Add
|
|
--coverage to test_pyenvlib and ... improve grammar coverage on 2.7
|
|
|
|
2017-01-29 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 3dc766d0a9537842470c7b4f79e8ccb3d5a46843 Author: rocky
|
|
<rb@dustyfeet.com> Date: Sun Jan 29 07:34:49 2017 -0500
|
|
|
|
2017-01-29 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pythonlib.py: Add --coverage option. WOOT!
|
|
|
|
2017-01-27 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Bump min spark_parser version
|
|
|
|
2017-01-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py, uncompyle6/semantics/consts.py,
|
|
uncompyle6/semantics/pysource.py: More 2.6, 2.7 control flow Todo more COME_FROMs but now need to check targets better. In some
|
|
cases we're relying on grammar ambiguity to work out right and in
|
|
2.7 it doesn't
|
|
|
|
2017-01-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/semantics/consts.py,
|
|
uncompyle6/semantics/pysource.py: More 2.6, 2.7 control-flow bugs Wasn't limiting exception clause to try finally. Probably still has
|
|
bugs in try-finally nesting Add another 2.6/2.7 COME_FROM to try to limit if/end scope better
|
|
|
|
2017-01-23 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/verify.py: Improve
|
|
Python 2.6 & 2.7 verification
|
|
|
|
2017-01-22 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse30.py, uncompyle6/verify.py: Fix up Python
|
|
3.0 handling
|
|
|
|
2017-01-21 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 545a46dffaa0fe2246dd7cc1b560c58db525c2b4 Author: rocky
|
|
<rb@dustyfeet.com> Date: Sat Jan 21 06:24:31 2017 -0500
|
|
|
|
2017-01-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/pysource.py: Handle BUILD_CONST_KEY_MAP as a
|
|
varargs custom rules with BUILD_CONST_KEY_MAP are pinned to the specific
|
|
number of args seen.
|
|
|
|
2017-01-19 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #81 from moagstar/BUILD_CONST_KEY_MAP fixed bug with BUILD_CONST_KEY_MAP
|
|
|
|
2017-01-19 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #80 from moagstar/BUILD_CONST_KEY_MAP Build const key map
|
|
|
|
2017-01-18 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: added generation of dict display
|
|
from BUILD_CONST_KEY_MAP
|
|
|
|
2017-01-18 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_build_const_key_map.py: fixed typo
|
|
|
|
2017-01-18 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_build_const_key_map.py: added some more test cases for
|
|
BUILD_CONST_KEY_MAP
|
|
|
|
2017-01-17 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_build_const_key_map.py: simplified test cases for
|
|
test_build_const_key_map
|
|
|
|
2017-01-17 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_build_const_key_map.py, pytest/validate.py: added
|
|
validation code for checking decompilation of an expression
|
|
|
|
2017-01-15 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py:
|
|
Handle 3.6 BUILD_CONST_KEYMAP
|
|
|
|
2017-01-15 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py: Python 2.1 doesn't have FOR_ITER
|
|
or GET_ITER... adjust locgic for this fact
|
|
|
|
2017-01-12 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py: sys.recursionlimit is optional, not
|
|
essential
|
|
|
|
2017-01-11 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit b131c20e99514d3a969a51e841d3a823017f1beb Author: rocky
|
|
<rb@dustyfeet.com> Date: Wed Jan 11 21:32:26 2017 -0500
|
|
|
|
2017-01-11 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS: Get ready for release 2.10.9
|
|
|
|
2017-01-11 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #79 from rocky/revert-78-patch-1 Revert "fix bug : not generate all files when use "-ro""
|
|
|
|
2017-01-11 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #78 from jlugjb/patch-1 fix bug : not generate all files when use "-ro"
|
|
|
|
2017-01-10 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/03_double_star_unpack.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Improve BUILD_xxx_UNPACK slightly
|
|
|
|
2017-01-09 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/03_async_await.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: Add
|
|
async_call_function for 3.5+
|
|
|
|
2017-01-09 rocky <rb@dustyfeet.com>
|
|
|
|
* : Reinstate test
|
|
|
|
2017-01-08 rocky <rb@dustyfeet.com>
|
|
|
|
* : Works now
|
|
|
|
2017-01-08 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse30.py, uncompyle6/scanners/scanner3.py:
|
|
Python 3.0 decompile bugs
|
|
|
|
2017-01-08 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner30.py: Towards better 3.0 decompilation Sync scanner2 and scanner3 better
|
|
|
|
2017-01-08 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/03_while-if-break.py,
|
|
uncompyle6/parsers/parse35.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner3.py: Fix 3.5, 3.6 while true if/break
|
|
bug
|
|
|
|
2017-01-08 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py, uncompyle6/main.py,
|
|
uncompyle6/semantics/consts.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Misc cleanups Favor "decompile" over "uncompyle" since "decompile" is in common
|
|
use Reduce size of pysource.py by splitting out constants
|
|
|
|
2017-01-08 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/03_async_await.py,
|
|
uncompyle6/parsers/parse35.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/pysource.py: Add 3.5+ async with/for .. scanner3.py: 3.6 bytecode vs wordcode fix
|
|
|
|
2017-01-07 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/03_async_await.py,
|
|
uncompyle6/parsers/parse35.py, uncompyle6/semantics/pysource.py:
|
|
Start to add 3.5+ await and async
|
|
|
|
2017-01-07 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug31/04_def_annotate.py,
|
|
uncompyle6/semantics/make_function.py: More Python 3 annotation bugs
|
|
|
|
2017-01-07 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse31.py,
|
|
uncompyle6/parsers/parse32.py,
|
|
uncompyle6/semantics/make_function.py,
|
|
uncompyle6/semantics/pysource.py: Fix some errors in deparsing
|
|
Python 3 annotations
|
|
|
|
2017-01-07 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/make_function.py: Small Pyhton 3.x annotate
|
|
bug
|
|
|
|
2017-01-03 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Note what's up with Python 3 decompile quality
|
|
|
|
2017-01-03 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: 3.5 continue check is needed on
|
|
3.6
|
|
|
|
2017-01-03 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/parsers/parse36.py,
|
|
uncompyle6/scanners/scanner3.py: Towards better 3.6 support
|
|
|
|
2017-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse35.py, uncompyle6/scanners/scanner3.py:
|
|
Python 3.5 continue detection bug
|
|
|
|
2017-01-01 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: add come_from for setup_finally
|
|
and setup_except
|
|
|
|
2017-01-01 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse35.py, uncompyle6/scanners/scanner3.py:
|
|
Towards fixing Python 3.5 return bugs
|
|
|
|
2017-01-01 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Note how to verify correctness ... with --verify, --weak-verify and cross checking with pycdc
|
|
|
|
2016-12-31 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.9.9
|
|
|
|
2016-12-31 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse26.py: 2.x list_if may have a THEN in it
|
|
|
|
2016-12-31 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Towards fixing a Python 3.3
|
|
return/continue bug
|
|
|
|
2016-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py: On --verify if we can't unbuffer output, don't
|
|
|
|
2016-12-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py:
|
|
dectect_structure() -> detect_control_flow()
|
|
|
|
2016-12-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py:
|
|
DRY code and emitted Python 3 source * Python 3: break; continue -> break * Use variable in detect_structure for pre[rtarget] * Make Python 2 and Python 3 detect_structure more alie
|
|
|
|
2016-12-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: More if/then detection in Python
|
|
3.x
|
|
|
|
2016-12-29 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #73 from rocky/then-crap Add THEN token to improve Python 2.2-2.6 control flow detection
|
|
|
|
2016-12-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/tok.py: Misc
|
|
bugs
|
|
|
|
2016-12-28 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 723fa5dfed5bb198c66741c594e2c277ded88970 Author: rocky
|
|
<rb@dustyfeet.com> Date: Wed Dec 28 18:57:09 2016 -0500
|
|
|
|
2016-12-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse32.py,
|
|
uncompyle6/parsers/parse33.py: Towards fixing a 3.2 while true: ...
|
|
break bug
|
|
|
|
2016-12-28 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/main.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/verify.py: Bugs in Python 2.6- "and" and "lambda"
|
|
handling .. and clean up verify output
|
|
|
|
2016-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse26.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/semantics/pysource.py:
|
|
WIP : Add THEN to disambigute from "and"
|
|
|
|
2016-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py: Make 2.6 and 2.7 ingest more
|
|
alike
|
|
|
|
2016-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* : Update 2.7 bytecode file for last fix
|
|
|
|
2016-12-26 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #71 from jiangpengcheng/tupple_bug tupples which contain only 1 element need a comma
|
|
|
|
2016-12-26 jiangpch <jiangpch@gohighsec.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: tupples which contain only 1
|
|
element need a comma
|
|
|
|
2016-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse25.py: fix bug in using python2 AST rules
|
|
in python 2.5
|
|
|
|
2016-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit f1a947f106b231fb1480ba301b15e3ceaf78c94f Author: rocky
|
|
<rb@dustyfeet.com> Date: Mon Dec 26 00:43:02 2016 -0500
|
|
|
|
2016-12-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner23.py,
|
|
uncompyle6/scanners/scanner24.py, uncompyle6/semantics/pysource.py,
|
|
uncompyle6/verify.py: Scanner call fixes. NAME_MODULE removal for
|
|
<=2.4
|
|
|
|
2016-12-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/astnode.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse36.py, uncompyle6/scanners/scanner15.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner21.py,
|
|
uncompyle6/scanners/scanner22.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Lint
|
|
|
|
2016-12-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Remove stray debug hook
|
|
|
|
2016-12-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Bang on 3.6
|
|
build_map_unpack_with_call Probably will fix better in the future.
|
|
|
|
2016-12-18 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/bin/pydisassemble.py, uncompyle6/bin/uncompile.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse25.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py:
|
|
Python flake8 crap Was testing realgud's C-x!8 (goto flake8 warning/error)
|
|
|
|
2016-12-18 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/.gitignore, test/simple_source/bug25/02_try_else.py,
|
|
uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py: Python
|
|
2.5 mistaken try/else
|
|
|
|
2016-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner25.py:
|
|
show-asm on python2.5 is optional make scanner2 look a little more like scanner3
|
|
|
|
2016-12-16 rocky <rb@dustyfeet.com>
|
|
|
|
* NEWS: Release 2.9.8 news
|
|
|
|
2016-12-16 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, uncompyle6/version.py: Get ready for release 2.9.8
|
|
|
|
2016-12-16 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/02_build_map_unpack_with_call.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py,
|
|
uncompyle6/parsers/parse36.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/pysource.py: Start to handle 3.5
|
|
build_map_unpack_with_call 3.6 also started but needs even more work
|
|
|
|
2016-12-15 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanner.py, uncompyle6/scanners/scanner3.py: Some
|
|
Python 3.6 bytecode->wordcode fixes
|
|
|
|
2016-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Was passing wrong type
|
|
|
|
2016-12-11 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py: option -g: show start-end range when
|
|
possible
|
|
|
|
2016-12-11 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/make_function.py, uncompyle6/verify.py: two
|
|
misc changes - track print_docstring move to help (used in python 3.1) - verify: allow RETURN_VALUE to match RETURN_END_IF
|
|
|
|
2016-12-10 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml, test/Makefile: 3.2 needs --weak-verify
|
|
|
|
2016-12-10 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml: Try testing on 3.2
|
|
|
|
2016-12-10 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, uncompyle6/bin/uncompile.py: Can run in Python 3.1
|
|
and Python 3.2
|
|
|
|
2016-12-10 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner3.py: Another python 3 ELSE fixes and ... Makefile: - test python 3.0 bytecode - turn full --verify back on Python 3.x
|
|
|
|
2016-12-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Another faulty Python3 ELSE tag
|
|
remove
|
|
|
|
2016-12-09 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py: Grammar check: ELSE on RHS is ok.
|
|
|
|
2016-12-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/tok.py, uncompyle6/verify.py: Back of some of
|
|
the verification changes
|
|
|
|
2016-12-09 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit a5d2237435ee51e681c73db9e7ea379d56456205 Author: rocky
|
|
<rb@dustyfeet.com> Date: Fri Dec 9 21:10:10 2016 -0500
|
|
|
|
2016-12-04 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/main.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse34.py, uncompyle6/parsers/parse35.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner23.py, uncompyle6/scanners/scanner24.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/tok.py,
|
|
uncompyle6/semantics/make_function.py,
|
|
uncompyle6/semantics/pysource.py, uncompyle6/verify.py,
|
|
uncompyle6/version.py: Get ready for release 2.9.7 Some of the many lint things. Linting is kind of stupid though.
|
|
|
|
2016-11-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py:
|
|
Shorten Python3 grammars with + and *
|
|
|
|
2016-11-28 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py: Try new spark 2.5.1 grammar syntax
|
|
shortcuts This package I now declare stable
|
|
|
|
2016-11-28 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Update README.rst
|
|
|
|
2016-11-27 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Limitations of decompiling control structures.
|
|
|
|
2016-11-27 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #69 from rocky/ast-reduce-checks AST reduce checks
|
|
|
|
2016-11-26 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/03_elif_vs_continue.py,
|
|
uncompyle6/main.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py: Misc changes scanner26.py: make scanner2.py and scanner26.py more alike
|
|
scanner2.py: check that return stmt is last in list. (May change)
|
|
main.py: show filename on verify error test/*: add more
|
|
|
|
2016-11-25 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, test/Makefile, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Start
|
|
grammar reduction checks
|
|
|
|
2016-11-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse27.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/semantics/helper.py, uncompyle6/semantics/pysource.py:
|
|
2.7 grammar bug workaround. Fix docstring bug
|
|
|
|
2016-11-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Better line number tracking Indent Python 2 list comprehensions, albeit badly. DRY code a
|
|
little via indent_if_source_nl
|
|
|
|
2016-11-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner2.py:
|
|
<2.7 "if" detection and dup Python 3 grammar rule
|
|
|
|
2016-11-23 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, pytest/test_grammar.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse26.py: Python 2.6 grammary bug and.. __pkginfo.py__: Bump spark_parser version for parse_flags 'dups'
|
|
|
|
2016-11-23 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Note that we now work on 2.4 and 2.5
|
|
|
|
2016-11-23 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 6aa1531972de83ecab15b4c96b89c873ea5a7458 Author: rocky
|
|
<rb@dustyfeet.com> Date: Wed Nov 23 00:48:38 2016 -0500
|
|
|
|
2016-11-22 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse32.py,
|
|
uncompyle6/parsers/parse33.py, uncompyle6/parsers/parse34.py,
|
|
uncompyle6/parsers/parse35.py: DRY Python3 grammar
|
|
|
|
2016-11-22 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py,
|
|
uncompyle6/scanners/scanner2.py: More detailed COME_FROMs For now we only add COME_FROM_FINALLY and COME_FROM_WITH and even
|
|
here only on 2.7
|
|
|
|
2016-11-22 rocky <rb@dustyfeet.com>
|
|
|
|
* circle.yml, pytest/test_grammar.py, tox.ini,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse27.py: Remove redundant 2.7 (and 2.x)
|
|
grammar rules
|
|
|
|
2016-11-22 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_docstring.py, uncompyle6/linenumbers.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/helper.py,
|
|
uncompyle6/semantics/make_function.py,
|
|
uncompyle6/semantics/pysource.py: Split out print_docstring move from pysource.py to new helper.py
|
|
|
|
2016-11-20 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.9.6
|
|
|
|
2016-11-20 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #68 from rocky/line-mappings Line mappings
|
|
|
|
2016-11-20 rocky <rb@dustyfeet.com>
|
|
|
|
* : Merge remote-tracking branch 'origin' into line-mappings
|
|
|
|
2016-11-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse27.py: Back off a test. That means bugs in 2.7 still not fixed. Sigh.
|
|
|
|
2016-11-20 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_fjt.py, uncompyle6/parsers/parse27.py,
|
|
uncompyle6/scanners/scanner2.py: more 2.7 control flow bug fixing
|
|
|
|
2016-11-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner26.py: Pass debug in scanner26
|
|
find_targets
|
|
|
|
2016-11-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Add debug option on Python 3
|
|
find_jump_targets()
|
|
|
|
2016-11-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: A little closesr in PyPy 2.7
|
|
list comprehensions pysource.py: note need to handle line breaks in list comprehensions
|
|
|
|
2016-11-20 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_fjt.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner3.py:
|
|
Start to improve detect_structure for 2.7 and 2.x Add debug flag to find_jump_targets to show the structure we found.
|
|
When there are control-flow bugs, it's often reflected here. scanner3.py: make code make more similar to 2.x code
|
|
|
|
2016-11-18 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit d7f898b4fbf79d1f66eabadb25f0f9f0f38730cb Author: rocky
|
|
<rb@dustyfeet.com> Date: Fri Nov 18 09:02:00 2016 -0500
|
|
|
|
2016-11-17 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #67 from rocky/2.6-cf-ignore-if 2.6 cf ignore if
|
|
|
|
2016-11-16 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/03_if_vs_and.py, uncompyle6/main.py,
|
|
uncompyle6/semantics/check_ast.py, uncompyle6/semantics/pysource.py:
|
|
More AST checking Small fixes in output format
|
|
|
|
2016-11-15 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/scanners/scanner2.py: WIP Grammar changes - reinstatng
|
|
COME_FROMs around ignore_if's
|
|
|
|
2016-11-14 rocky <rb@dustyfeet.com>
|
|
|
|
* MANIFEST.in: Revise MANIFEST.in with what we have
|
|
|
|
2016-11-15 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 0f719d41fdf08d41de594abb1664ab42ff92bbdf Author: rocky
|
|
<rb@dustyfeet.com> Date: Mon Nov 14 20:20:07 2016 -0500
|
|
|
|
2016-11-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse26.py, uncompyle6/scanners/scanner2.py:
|
|
WIP remove COME_FROMs around ignore_if's
|
|
|
|
2016-11-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse26.py, uncompyle6/scanners/scanner2.py:
|
|
WIP remove COME_FROMs around ignore_if's
|
|
|
|
2016-11-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py:
|
|
Show line numbers in 2.6 "after" asm .. start to understand some of the Python 2.6 bytecode parse failures.
|
|
|
|
2016-11-13 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, uncompyle6/verify.py: Handle verify syntax errors... Update README.rst stats
|
|
|
|
2016-11-13 rocky <rb@dustyfeet.com>
|
|
|
|
* setup.py: Administrivia: Fixes #66
|
|
|
|
2016-11-13 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.9.5
|
|
|
|
2016-11-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse30.py,
|
|
uncompyle6/semantics/make_function.py: Python 3 bugs ... - Was using "while 1 .. else" improperly - docstring indent bug: was indenting docstring improperly
|
|
|
|
2016-11-13 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Revise what works and what doesn't
|
|
|
|
2016-11-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug30/02_while1_if_while1.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse30.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Python 3.0 while1 if bug... Is a workaround. We really need more tagging in of SETUP_LOOP and
|
|
COME_FROM.
|
|
|
|
2016-11-11 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/semantics/check_ast.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Revert augassign change but.. Make note of what's going on and add grammar test for bad situations
|
|
we have in Python 2.6 (and perhaps others)
|
|
|
|
2016-11-11 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/parser.py,
|
|
uncompyle6/semantics/pysource.py: augassign semantic action bug
|
|
|
|
2016-11-10 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug33/02_pos_args.py,
|
|
test/simple_source/bug33/03_func_params.py,
|
|
uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/make_function.py: Bug in detecting 3.3 default
|
|
value in lambda
|
|
|
|
2016-11-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py, uncompyle6/semantics/check_ast.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Detect some erroneous decompilations Until we can actually prevent these in grammar rules, we will warn
|
|
of improper decompilations. Also, we now stop when we hit a decompile error. Previously we were
|
|
not.
|
|
|
|
2016-11-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Remove unused imports
|
|
|
|
2016-11-07 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse30.py,
|
|
uncompyle6/parsers/parse32.py: Possiby tidy grammar
|
|
|
|
2016-11-06 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Bump xdis to get correct 3.0 bytecodes
|
|
|
|
2016-11-06 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse33.py, uncompyle6/parsers/parse34.py: Some
|
|
Python 3.4 grammar rules apply to Python 3.3
|
|
|
|
2016-11-06 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/test_pythonlib.py,
|
|
uncompyle6/parsers/parse30.py: Start bytecode 3.0 decompiling
|
|
|
|
2016-11-06 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse30.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner30.py: Python 3.0 doesn't have POP_JUMP
|
|
ops... In some ways Python 3.0 code generation is more like Python 2.6 (and
|
|
before) than it is Python 2.7 or 3.0.
|
|
|
|
2016-11-05 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #63 from rocky/python-3.0 Python 3.0
|
|
|
|
2016-11-05 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit cd3cf5ec2960a733e9fedca9c4549caf33c2d1d0 Author: rocky
|
|
<rb@dustyfeet.com> Date: Thu Nov 3 21:26:12 2016 -0400
|
|
|
|
2016-11-02 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py, uncompyle6/version.py: Get ready
|
|
for release 2.9.4
|
|
|
|
2016-11-02 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Update unpyc3 info.
|
|
|
|
2016-11-01 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse31.py, uncompyle6/parsers/parse32.py,
|
|
uncompyle6/semantics/make_function.py: Clean up annotation grammar a
|
|
little
|
|
|
|
2016-11-01 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug31/04_def_annotate.py,
|
|
uncompyle6/semantics/make_function.py: Full Python 3 annotations
|
|
|
|
2016-10-30 rocky <rb@dustyfeet.com>
|
|
|
|
* .gitignore, README.rst, test/simple_source/def/03_class_method.py:
|
|
Note github unpyc3 and.. - Add source to bytecode_2.2/03_class_method.pyc - more ignore
|
|
|
|
2016-10-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/make_function.py: More source-code line
|
|
indention in make_function.. and remove Python 3 situations from make_function2()
|
|
|
|
2016-10-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/make_function.py,
|
|
uncompyle6/semantics/pysource.py: More annotation processing in to
|
|
make_function Move return-value annotation determination from n_mkfunc_annotate to
|
|
make_function_annotate which is where other kinds of annotation
|
|
handling will also need to be done.
|
|
|
|
2016-10-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/make_function.py,
|
|
uncompyle6/semantics/parser_error.py,
|
|
uncompyle6/semantics/pysource.py: Break out make_function() into its
|
|
own file. It is already too complex and will get worse in Python 3.6. Note: make_function in fragments.py is still inside and probably
|
|
needs fixup.
|
|
|
|
2016-10-28 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse31.py, uncompyle6/parsers/parse32.py,
|
|
uncompyle6/parsers/parse35.py, uncompyle6/semantics/pysource.py:
|
|
More complete annotate handling Still have a bit of work to do though.
|
|
|
|
2016-10-28 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse32.py, uncompyle6/parsers/parse33.py,
|
|
uncompyle6/parsers/parse34.py, uncompyle6/semantics/pysource.py:
|
|
Expand annotate return to Python 3.4
|
|
|
|
2016-10-28 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parsers/parse31.py,
|
|
uncompyle6/parsers/parse32.py, uncompyle6/semantics/pysource.py:
|
|
Expand annotate handling to 3.3 (and possibly 3.2) - DRY Python 3.1-3.3 grammar a little
|
|
|
|
2016-10-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse31.py, uncompyle6/parsers/parse32.py,
|
|
uncompyle6/parsers/parse33.py, uncompyle6/parsers/parse35.py: Split
|
|
out 3.1-3.3 parsers from parser3.py This is anticipation of extending annotation to Python 3.2+
|
|
|
|
2016-10-27 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug31/04_def_annotate.py,
|
|
test/simple_source/bug31/04_def_attr.py,
|
|
uncompyle6/parsers/parse31.py, uncompyle6/semantics/pysource.py:
|
|
Clean and fix Python 3 annotate arg return
|
|
|
|
2016-10-26 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Dependencies stay within 2nd semantic level
|
|
|
|
2016-10-26 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.9.3
|
|
|
|
2016-10-26 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug31/04_def_attr.py,
|
|
uncompyle6/parsers/parse31.py, uncompyle6/scanner.py,
|
|
uncompyle6/semantics/pysource.py: Start to attack Python 3.1 def()
|
|
-> xx construct Start to localize make_function routines by Python version
|
|
|
|
2016-10-25 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse31.py: Split
|
|
out Python 3.1 parser from rest. __pkginfo__.py: use Python 3.1 bytecode fixes
|
|
|
|
2016-10-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py: Handle Python 3.1 "with ... as"
|
|
statement
|
|
|
|
2016-10-24 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile: Add python 3.1 bytecode testing
|
|
|
|
2016-10-24 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/stmts/07_withstmt_fn.py,
|
|
uncompyle6/parsers/parse3.py: Python 3.1 "with" statement bug
|
|
|
|
2016-10-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse34.py,
|
|
uncompyle6/parsers/parse35.py: Python 3.1 compile bug. DRY Python
|
|
3.x rules ... via inheritance
|
|
|
|
2016-10-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py: Fix
|
|
some Python 3.1 bugs
|
|
|
|
2016-10-24 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, test/Makefile, test/test_pyenvlib.py,
|
|
uncompyle6/bin/uncompile.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner3.py: Start Python 3.0 decoding Fix some Python 3.1 bugs
|
|
|
|
2016-10-22 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* : Merge pull request #60 from rocky/buildstring Buildstring
|
|
|
|
2016-10-22 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_fstring.py, test/simple_source/bug36/01_fstring.py,
|
|
uncompyle6/semantics/pysource.py: Move fstring rules inside a 3.6+
|
|
check
|
|
|
|
2016-10-22 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit d6f7ef4e178e04d9a612d3a6c0b77a008732357f Author: rocky
|
|
<rb@dustyfeet.com> Date: Fri Oct 21 07:40:35 2016 -0400
|
|
|
|
2016-10-20 moagstar <moagstar@gmail.com>
|
|
|
|
* pytest/test_fstring.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse36.py, uncompyle6/semantics/pysource.py:
|
|
further work on supporting single and multiple fstring decompilation
|
|
|
|
2016-10-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py: DRY Python 2.x unmangle_classname main.py: small typo: Disassembled -> Decompiled
|
|
|
|
2016-10-19 moagstar <moagstar@gmail.com>
|
|
|
|
* pytest/test_fstring.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse36.py, uncompyle6/semantics/pysource.py:
|
|
urther work on fstrings for python 3.6 - there is a new opcode
|
|
build_string which is used to improve fstring performance, but broke
|
|
the fstring support in uncompyle
|
|
|
|
2016-10-15 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py: Change meta data info in uncompyle6: * Show file size of source when possible, i.e. in Python 3.x * Show full information about python interpreter used to decompile
|
|
|
|
2016-10-15 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py, requirements.txt,
|
|
uncompyle6/version.py: Get ready for release 2.9.2
|
|
|
|
2016-10-14 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit a7ef513849cc2564b35636d3865561242e46e63f Author: rocky
|
|
<rb@dustyfeet.com> Date: Fri Oct 14 21:34:55 2016 -0400
|
|
|
|
2016-10-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse26.py: Python 2.6- _ifstmst_jump bug
|
|
|
|
2016-10-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Pretty-print constant tuples
|
|
|
|
2016-10-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse26.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py: 2.6 and before: try_middle
|
|
come_from per except
|
|
|
|
2016-10-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse26.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py: 2.6 try statement (and below) They may neeed arbitrary come_froms for each except clause
|
|
|
|
2016-10-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Bug in handling kv, kv2
|
|
|
|
2016-10-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/stmts/08_source_linebreaks.py,
|
|
uncompyle6/semantics/pysource.py: Start to track line breaks on
|
|
lists
|
|
|
|
2016-10-11 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: DRY fragments.py preorder code pysource.py: doc typo
|
|
|
|
2016-10-11 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, requirements.txt: Need xdis 3.0.2 for Python 1.5
|
|
bug fixes
|
|
|
|
2016-10-11 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, requirements.txt, test/Makefile,
|
|
test/test_pythonlib.py, uncompyle6/scanners/scanner26.py: Fix Python
|
|
1.5 bytecode deparse Need xdis 3.0.2 though since the bug is really there.
|
|
|
|
2016-10-11 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/test_pythonlib.py,
|
|
uncompyle6/scanners/scanner26.py: Fix python 1.5 decompile bugs ... add bytecode 1.5 tests from decompyle
|
|
|
|
2016-10-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Map expression with
|
|
source-directed linebreaks ... for Python 3.4 and 3.5
|
|
|
|
2016-10-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Start using source linebreaks in
|
|
formatting... .. large literals like maps and dicts, and tuples
|
|
|
|
2016-10-10 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, README.rst, __pkginfo__.py, requirements.txt,
|
|
uncompyle6/version.py: Get ready for release 2.9.1
|
|
|
|
2016-10-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse15.py, uncompyle6/scanners/scanner15.py,
|
|
uncompyle6/semantics/pysource.py: Python 1.5 scanner and parser and
|
|
.. .. slightly improved Forgot to check in files before. Handle Python pre 2.2. classes
|
|
|
|
2016-10-10 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py, requirements.txt,
|
|
uncompyle6/disas.py, uncompyle6/main.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/verify.py, uncompyle6/version.py: Get ready for release
|
|
2.9.0 ... - Use xdis 3.0.0 protocol load_module. Needs bump in
|
|
requirements.txt and _pkg_info_.py - Start Python 1.5 decompiling - another round of work is needed to
|
|
remove bugs - small cleanups
|
|
|
|
2016-10-09 rocky <rb@dustyfeet.com>
|
|
|
|
* : Reinstate some tests
|
|
|
|
2016-10-08 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/bin/uncompile.py, uncompyle6/parsers/parse21.py,
|
|
uncompyle6/semantics/pysource.py: Simpify python 2.1 grammar Fix bug
|
|
with -t ... Wasn't showing source text when -t option was given
|
|
|
|
2016-10-08 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug22/06_list_comprehension_x2_if.py,
|
|
uncompyle6/parsers/parse22.py, uncompyle6/parsers/parse26.py: Python
|
|
2.1-2.6 bug in list comprehension
|
|
|
|
2016-10-08 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.8.4
|
|
|
|
2016-10-08 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, test/Makefile, test/decompyle/README.md,
|
|
test/decompyle/test_applyEquiv.py,
|
|
test/decompyle/test_augmentedAssign.py,
|
|
test/decompyle/test_class.py, test/decompyle/test_del.py,
|
|
test/decompyle/test_divide_future.py,
|
|
test/decompyle/test_divide_no_future.py,
|
|
test/decompyle/test_docstring.py, test/decompyle/test_empty.py,
|
|
test/decompyle/test_exceptions.py, test/decompyle/test_exec.py,
|
|
test/decompyle/test_expressions.py,
|
|
test/decompyle/test_extendedImport.py,
|
|
test/decompyle/test_extendedPrint.py,
|
|
test/decompyle/test_extendedarg.py,
|
|
test/decompyle/test_functions.py, test/decompyle/test_global.py,
|
|
test/decompyle/test_globals.py, test/decompyle/test_import.py,
|
|
test/decompyle/test_import_as.py, test/decompyle/test_integers.py,
|
|
test/decompyle/test_iterators.py, test/decompyle/test_lambda.py,
|
|
test/decompyle/test_listComprehensions.py,
|
|
test/decompyle/test_loops.py, test/decompyle/test_loops2.py,
|
|
test/decompyle/test_misc.py, test/decompyle/test_nested_elif.py,
|
|
test/decompyle/test_nested_scopes.py,
|
|
test/decompyle/test_prettyprint.py, test/decompyle/test_print.py,
|
|
test/decompyle/test_print_to.py,
|
|
test/decompyle/test_single_stmt.py, test/decompyle/test_slices.py,
|
|
test/decompyle/test_tuple_params.py, test/decompyle/test_tuples.py,
|
|
test/decompyle/test_yield.py, test/ok_lib2.7/compiler/syntax.py: Add
|
|
decompyle's 2.1 tests Update README.rst to note new pythons supported since last update
|
|
|
|
2016-10-07 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, test/test_pythonlib.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse21.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner21.py,
|
|
uncompyle6/scanners/scanner22.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/semantics/pysource.py: Start Python 2.1 bytecode
|
|
decompile
|
|
|
|
2016-10-06 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py: Use .py extension in disassembled files more
|
|
often
|
|
|
|
2016-10-06 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/controlflow.py,
|
|
uncompyle6/scanners/scanner3.py: Merge in COME_FROM disambiguation
|
|
... from controlflowbranch. Should probably expand to Python2 parsers as
|
|
well
|
|
|
|
2016-10-06 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit a4dd6e980566a83270b9b9d47fb7f3cb3e5e385a Author: rocky
|
|
<rb@dustyfeet.com> Date: Wed Oct 5 22:56:48 2016 -0400
|
|
|
|
2016-10-05 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py: Python 3: "or" doesn't have optional
|
|
come_from
|
|
|
|
2016-10-05 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py:
|
|
Python 3: "and" doesn't have optional come_from
|
|
|
|
2016-10-05 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py:
|
|
Python 3: "and" doesn't have optional come_from
|
|
|
|
2016-10-05 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit d2b477ae7d5a4c081262cabdccdb314d90b39255 Author: rocky
|
|
<rb@dustyfeet.com> Date: Tue Oct 4 23:58:35 2016 -0400
|
|
|
|
2016-09-27 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/looping/04_while1_while1.py,
|
|
uncompyle6/parsers/parse3.py: Python 3 while1 grammar rules with
|
|
COME_FROM_LOOP
|
|
|
|
2016-09-27 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/simple_source/looping/04_while1_while1.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py: PY3
|
|
COME_FROM_LOOP bug There are still more in sre...
|
|
|
|
2016-09-27 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner3.py: PY3: COME_FROM -> COME_FROM_FINALLY
|
|
as appropriate We now have all WITH_ op jumps associated in the grammar Also, some COME_FROM_LOOP grammar fixes
|
|
|
|
2016-09-26 rocky <rb@dustyfeet.com>
|
|
|
|
* HISTORY.md, uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py:
|
|
Interval order COME_FROMs in Python3 This bug had possibly caused lots of grammar pollution which may
|
|
need addressing. We want to process COME_FROMs to the same offset to be in
|
|
*descending* order so we have the larger range or biggest
|
|
instruction interval last. (I think they are sorted in increasing
|
|
order, but for safety we sort them). That way, specific COME_FROM
|
|
tags will match up properly. For example, a "loop" with an "if"
|
|
nested in it should have the "loop" tag last so the grammar rule
|
|
matches that properly Adjust Python 3 grammar for more COME_FROM -> COME_FROM_LOOP. And
|
|
remove optional COME_FROM_LOOP where possible. Previously, the
|
|
optional-ness was a result of inner nestings gobbling up the
|
|
COME_FROM. We'll probably want to go back and fix this up in Python2.
|
|
|
|
2016-09-26 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse35.py, uncompyle6/scanners/controlflow.py,
|
|
uncompyle6/scanners/scanner3.py: Python 3 COME_FROM ->
|
|
COME_FROM_WITH appropriately
|
|
|
|
2016-09-25 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/verify.py: Try stronger verification verify.py: add check in verification that magic is the same.
|
|
Otherwise we go for weak verification.
|
|
|
|
2016-09-25 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/parsers/parse3.py: Address whileTrue if
|
|
cond .. -> while cond .. bug Reinstate Python standard library bisect test
|
|
|
|
2016-09-23 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Tidy use of SETUP_ ops Also possibly remove a bug in decompiling Python 3.0 .. 3.2 which
|
|
doesn't have SETUP_WITH
|
|
|
|
2016-09-23 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Tidy use of SETUP_ ops Also possibly remove a bug in decompiling Python 3.0 .. 3.2 which
|
|
doesn't have SETUP_WITH
|
|
|
|
2016-09-23 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/ok_lib3.4/bisect.py: Weaken testing for
|
|
controlfow branch We have more equivalent programs now
|
|
|
|
2016-09-22 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, pytest/test_single_compile.py,
|
|
test/Makefile, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner3.py: Add COME_FROM_LOOP Note: we have regressed in --verify and some tests, but I believe
|
|
that's because we are producing more equivalant (if uglier)
|
|
programs. That's a separate problem though.
|
|
|
|
2016-09-22 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit d271e886d9e818a871f15d8876d6eb9d1ed452a4 Author: rocky
|
|
<rb@dustyfeet.com> Date: Thu Sep 22 01:32:00 2016 -0400
|
|
|
|
2016-09-22 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/tok.py: Fix some
|
|
Test failures Fix py.test pytest/test_grammar.py - Comprehension sorts of things removed from parser that don't exist
|
|
in earlier pythons scanners/tok.py Add back in "to" when needed
|
|
|
|
2016-09-21 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/controlflow.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/tok.py: First
|
|
step towards managing control flow decoding
|
|
|
|
2016-09-21 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #56 from rocky/fstring merge fstring changes from moagstar
|
|
|
|
2016-09-21 moagstar <moagstar@gmail.com>
|
|
|
|
* pytest/test_fstring.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/pysource.py: merge fstring changes from
|
|
moagstar
|
|
|
|
2016-09-21 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py:
|
|
Python 2 & 3 scanner code ever so slightly closer
|
|
|
|
2016-09-21 rocky <rb@dustyfeet.com>
|
|
|
|
* NEWS: Small NEWS doc typo
|
|
|
|
2016-09-18 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/semantics/pysource.py:
|
|
Small changes
|
|
|
|
2016-09-11 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py, uncompyle6/version.py: Get ready
|
|
for release 2.8.3
|
|
|
|
2016-09-11 rocky <rb@dustyfeet.com>
|
|
|
|
* test/bytecode_3.6/fstring.py,
|
|
test/bytecode_3.6/fstring_single.py, uncompyle6/parsers/parse35.py:
|
|
Tidy a bit
|
|
|
|
2016-09-09 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/looping/10_while.py,
|
|
uncompyle6/parsers/parse3.py: 3.0 .. 3.4 bug in whileTrue
|
|
|
|
2016-09-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner31.py: 3.1 scanner small fixes
|
|
|
|
2016-09-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py, uncompyle6/semantics/pysource.py:
|
|
ret_cond adjustment for < 2.7 and ... "<= 2.6" -> "< 2.7" since python 2.6's version is 2.6000001
|
|
|
|
2016-09-09 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/test_pyenvlib.py, test/test_pythonlib.py,
|
|
uncompyle6/scanners/scanner31.py, uncompyle6/verify.py: Start
|
|
accepting Python 3.1 bytecode
|
|
|
|
2016-09-08 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py: Add 3.6 parser
|
|
|
|
2016-09-08 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml, test/Makefile,
|
|
test/simple_source/expression/06_frozenset.py,
|
|
test/test_pythonlib.py: More testing - travis: * 2.7.12 - bump from 2.7.11 * 3.3.6 test_pyenvlib: add --weak-verify to Makefile: check-3.2.6 needs
|
|
--weak-verify
|
|
|
|
2016-09-08 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Python 3.0-3.2 *args processing
|
|
|
|
2016-09-08 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug32/01_named_and_kwargs.py,
|
|
uncompyle6/semantics/pysource.py: 3.2 (and down to 3.0?) bug in fn
|
|
name and kwargs
|
|
|
|
2016-09-07 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/05_return_in_else.py,
|
|
uncompyle6/scanners/scanner3.py: Another 3.5+ erroneous
|
|
RETURN_END_IF misclassify
|
|
|
|
2016-09-07 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/05_return_in_else.py,
|
|
uncompyle6/scanners/scanner3.py: But in Python 3.5+ erroneosly
|
|
adding RETURN_END_IF
|
|
|
|
2016-09-05 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug33/02_named_and_kwargs.py,
|
|
test/test_pyenvlib.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/pysource.py: Fix 3.3 named bug and ... Parse 3.4 parameters correctly. Allow test_pyenvlib to do 3.3.6
|
|
|
|
2016-09-05 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug33/02_named_and_kwargs.py: Python 3.x bug in
|
|
getting parameter of ** argument
|
|
|
|
2016-09-05 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner3.py:
|
|
Python 2.6- try/except control flow detection
|
|
|
|
2016-09-04 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/disas.py, uncompyle6/main.py, uncompyle6/parser.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner22.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner33.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/scanners/scanner35.py,
|
|
uncompyle6/scanners/scanner36.py, uncompyle6/semantics/aligner.py,
|
|
uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py, uncompyle6/show.py,
|
|
uncompyle6/verify.py: disassemble -> ingest where appropriate As part of tokenization for (de)parsing, we need to do something
|
|
like a disassembly, but is is really a little different. Disassembly, strictly speaking, is done by the xdis module now.
|
|
What "ingestion" does is massage the instruction tokens to a form
|
|
that is more amenable for parsing. In sum, ingestion is different than disassembly, although
|
|
disassembly is generally the first part of ingestion.
|
|
|
|
2016-09-04 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Small cleanup/code optimization
|
|
|
|
2016-09-04 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse26.py: Python 2.3--2.6 bug in parsing
|
|
try-middle Note: it looks like COME_FROMs need to be classified better with
|
|
respect to whether they are from an except or not we are getting
|
|
if/else vs except nesting errors.
|
|
|
|
2016-09-04 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/07_generator_return.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/semantics/pysource.py: A
|
|
couple more 2.6 (and below) bugs fixed * Detect "return None" inside if statement * another case of triple ==, ==, == scanner2.py: detect_structure: descriminate more on parent type
|
|
|
|
2016-09-03 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/05_generator.py,
|
|
uncompyle6/semantics/pysource.py: Python 2.5-2.6 generator bug Adjust for variable position of list iteration node in a genexpr
|
|
node
|
|
|
|
2016-09-03 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: Python 2.7 "return None" bug Same as 2.3-2.6 "return None".
|
|
|
|
2016-09-03 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/08_triple_equals.py,
|
|
uncompyle6/scanners/scanner2.py: Python 2.2..2.6 bug in a == b == c
|
|
== d Fix was to remove some come froms. Feels a little hacky though.
|
|
|
|
2016-09-03 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/07_generator_return.py,
|
|
uncompyle6/semantics/pysource.py: Python 2.3..2.6 "return" bug In Python 2.6 and possibly down to 2.3 we need to issue "return" not
|
|
"return None" inside a generator. So check for that "return None"
|
|
inside n_return and issue "return" for that.
|
|
|
|
2016-09-03 rocky <rb@dustyfeet.com>
|
|
|
|
* DECOMPYLE-2.4-CHANGELOG.txt: Add hartmut Goebel's changes before
|
|
2.4
|
|
|
|
2016-09-03 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, test/simple_source/bug26/04_comp_for.py,
|
|
uncompyle6/semantics/pysource.py: Fix Python 2.4-2.6 comp_for text
|
|
generation... Makefile: tolerate pypy 5.3.x Rest: fix semantic action rule for
|
|
comp_for and test this
|
|
|
|
2016-09-02 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/06_return_pop.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/scanners/scanner2.py:
|
|
Python 2.6- bug: RETURN_ENDIF, POP_TOP .. POP_TOP should be excluded as a potentional statement beginning
|
|
|
|
2016-09-02 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug33/02_named_and_kwargs.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/semantics/pysource.py:
|
|
Fix Python 3.x named param and kwargs bug
|
|
|
|
2016-09-01 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/04_while_and_stmt_one_line.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py:
|
|
2.6- bug: while..and: stmt - on one line If 2.6 or before POP_BLOCK after a JUMP_IF_FALSE does not constitute
|
|
a new statement. The POP_BLOCK is really part of the JUMP_IF_FALSE.
|
|
In Python 2.7+ it's a single op.
|
|
|
|
2016-09-01 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug26/02_except_as.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/semantics/pysource.py:
|
|
Handle Python 2.6 and below "except <cond>, <var>"
|
|
|
|
2016-08-31 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug35/02_fn_varargs.py,
|
|
uncompyle6/semantics/pysource.py: Python 3.x bug in handling var
|
|
number of args
|
|
|
|
2016-08-31 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug33/04_aug_assign.py, test/test_pyenvlib.py,
|
|
uncompyle6/main.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/verify.py: Bug in 3.x
|
|
detecting "if" structure and ... scanner3.py: bug in 3.x detecting "if" structure Make scanner2.py
|
|
look more like scanner3.py verify.py: add weak-verify which tests
|
|
Pytyon syntax, but not code
|
|
|
|
2016-08-30 rocky <rb@dustyfeet.com>
|
|
|
|
* NEWS, test/simple_source/bug26/03_raise_from.py,
|
|
test/simple_source/bug33/03_raise_from.py,
|
|
uncompyle6/semantics/pysource.py: Handle Python 2 vs 3 raise syntax
|
|
change raise_stmt ::= "raise" expression "," expression becomes: raise_stmt ::= "raise" expression from expression raise expr, expr -> raise
|
|
|
|
2016-08-29 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, __pkginfo__.py, uncompyle6/version.py: Get ready for
|
|
release 2.8.2
|
|
|
|
2016-08-27 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/verify.py: Correct PYPY bit
|
|
logic in previous commit
|
|
|
|
2016-08-27 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/semantics/pysource.py,
|
|
uncompyle6/verify.py: PYPY bugs and inspired changes ... verify.py: Show co_flags when different. pysource.py: PYPY also
|
|
generates normal tryfinallystmt code test_pyenvlib.py: allow
|
|
pypy-5.3.1
|
|
|
|
2016-08-26 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, test/Makefile, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner3.py: Start to handle Python 3.1 bytecode
|
|
|
|
2016-08-26 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, requirements.txt: Bump min requirement versions xdis we need increased so we don't catch old xdis bugs
|
|
|
|
2016-08-25 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug36/01_fstring.py,
|
|
uncompyle6/semantics/pysource.py: Handle 3.6 Format String
|
|
conversions !r, !s, !a
|
|
|
|
2016-08-20 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.8.1
|
|
|
|
2016-08-16 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug22/05_test_yield.py,
|
|
uncompyle6/scanners/scanner2.py: Python 2.2 doesn't have opcode
|
|
LIST_APPEND
|
|
|
|
2016-08-16 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner26.py: Python 2.2 scanner bug: don't
|
|
mung IMPORT_NAME op
|
|
|
|
2016-08-16 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug_pypy27/02_call_method.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Small
|
|
pypy LOOKUP_METHOD cleanups
|
|
|
|
2016-08-16 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #49 from moagstar/master Fixed a bug with FORMAT_VALUE with sub expressions.
|
|
|
|
2016-08-16 DanielBradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_fstring.py, uncompyle6/parsers/parse3.py: Fixed bug
|
|
with FORMAT_VALUE where a sub expression would not be correctly
|
|
interpreted
|
|
|
|
2016-08-14 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: xdis 2.1.1 removes some bugs encountered here
|
|
|
|
2016-08-14 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit a65443ee0225933367be9c7640629298882532c9 Author: rocky
|
|
<rb@dustyfeet.com> Date: Sun Aug 14 22:59:34 2016 -0400
|
|
|
|
2016-08-14 DanielBradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_fstring.py: added examples for known failures
|
|
|
|
2016-08-14 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #45 from rocky/revert-43-patch-1 Revert "Cache pip installation in travis"
|
|
|
|
2016-08-14 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* .travis.yml: Revert "Test with latest PyPy in Travis"
|
|
|
|
2016-08-14 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #44 from thedrow/patch-2 Test with latest PyPy in Travis
|
|
|
|
2016-08-14 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #43 from thedrow/patch-1 Cache pip installation in travis
|
|
|
|
2016-08-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile: Back off of 3.6 testing for now
|
|
|
|
2016-08-13 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 7ccbd419c6b26e8ae9d0929f1bfddedebce6bbaf Author: rocky
|
|
<rb@dustyfeet.com> Date: Sat Aug 13 20:25:19 2016 -0400
|
|
|
|
2016-08-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile: I said - we test 2.2 now.
|
|
|
|
2016-08-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/simple_source/stmts/00_import.py,
|
|
test/test_pythonlib.py: Include Python 2.2 in testing
|
|
|
|
2016-08-13 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, uncompyle6/parser.py, uncompyle6/parsers/parse22.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner22.py,
|
|
uncompyle6/scanners/scanner23.py, uncompyle6/scanners/scanner24.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/semantics/pysource.py:
|
|
Start handling Python 2.2 bytecode and... Fix some bugs in Python 2.3-2.5 bytecode handling
|
|
|
|
2016-08-11 Omer Katz <omer.drow@gmail.com>
|
|
|
|
* .travis.yml: Test with latest PyPy.
|
|
|
|
2016-08-11 Omer Katz <omer.drow@gmail.com>
|
|
|
|
* .travis.yml: Cache pip installation
|
|
|
|
2016-08-10 DanielBradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_fstring.py: small formatting change
|
|
|
|
2016-08-10 DanielBradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_fstring.py, requirements-dev.txt: added hypothesis to
|
|
requirements-dev
|
|
|
|
2016-08-10 DanielBradburn <moagstar@gmail.com>
|
|
|
|
* pytest/test_fstring.py: added hypothesis test (currently failing
|
|
due to limited support) for testing fstring uncompyling
|
|
|
|
2016-08-10 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* : Merge pull request #2 from rocky/master Merging pypy and cpython 3.6 from rocky
|
|
|
|
2016-08-03 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 109e813058380630bda82014eee94a9089cc4666 Author: rocky
|
|
<rb@dustyfeet.com> Date: Wed Aug 3 08:07:47 2016 -0400
|
|
|
|
2016-08-01 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, requirements.txt: Need recent xdis fix for 3.6
|
|
wordcode
|
|
|
|
2016-08-01 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug36/01_fstring.py: Add Python 3.6
|
|
formatted_str test
|
|
|
|
2016-08-01 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #41 from rocky/3.6 Move forward on moagstar's Python 3.6 support
|
|
|
|
2016-08-01 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, README.rst, test/Makefile, test/test_pythonlib.py,
|
|
uncompyle6/bin/uncompile.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse36.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner36.py, uncompyle6/semantics/aligner.py,
|
|
uncompyle6/semantics/pysource.py, uncompyle6/verify.py: Moagstar's
|
|
3.6 wordcode + formattedValue rules
|
|
|
|
2016-07-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/aligner.py: WIP try to keep line numbers the
|
|
same
|
|
|
|
2016-07-29 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/semantics/fragments.py: Small changes
|
|
|
|
2016-07-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse35.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/semantics/pysource.py:
|
|
Fix 3.5 misclassifying RETURN_VALUE We use location of SETUP_EXCEPT instructions to disambiguate.
|
|
|
|
2016-07-28 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* README.rst, test/Makefile, test/bytecode_3.6/fstring.py,
|
|
test/bytecode_3.6/fstring_single.py, test/test_pythonlib.py,
|
|
uncompyle6/bin/uncompile.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner36.py, uncompyle6/semantics/pysource.py,
|
|
uncompyle6/verify.py: Starting adding python 3.6 support to
|
|
uncompyle
|
|
|
|
2016-07-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse23.py,
|
|
uncompyle6/parsers/parse24.py: while1 bug applied to Python 2.3 and
|
|
2.4
|
|
|
|
2016-07-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py, uncompyle6/scanners/tok.py: PyPy
|
|
3.2 bug confusing RETURN_END_IF for except Also fix a instruction formatting bug
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse35.py: Split out 3.5 parser
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse34.py: Add python 3.4 grammar checking DRY grammar testing
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse34.py: Clean and check Python 2.6 grammar
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py: Start
|
|
to segregate and clean up grammar
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/disas.py,
|
|
uncompyle6/scanner.py, uncompyle6/semantics/fragments.py: Add
|
|
is_pypy parameter to places that need it
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/stmts/09_whiletrue_bug.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/pysource.py: 2.6 and 2.7 while1 grammar rule Fixes issue #40
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_grammar.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse3.py: Start grammar checker
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py, uncompyle6/show.py: Show magic number in
|
|
output Fix bugs due to removal of token.format()
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/disas.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner35.py, uncompyle6/scanners/tok.py,
|
|
uncompyle6/show.py: tok.format -> tok.__str__; simplify pypy code
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py, uncompyle6/verify.py: Python 2.7
|
|
set comprehension bug
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: separate semantic action version
|
|
differences Added customize_for_version which uses is_pypy and version to adjust
|
|
tables
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Customize tables better for
|
|
specific Python versions
|
|
|
|
2016-07-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/semantics/pysource.py:
|
|
Small code clean up
|
|
|
|
2016-07-26 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/tok.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/verify.py: Usuability fixes * try using format for __str__ * Explicitly nuke self.attr and self.pattr when no arg * Sync pysource and format wrt make_function
|
|
|
|
2016-07-26 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, README.rst, __pkginfo__.py, requirements.txt,
|
|
test/test_pyenvlib.py, uncompyle6/version.py: Get ready for release
|
|
2.7.1
|
|
|
|
2016-07-26 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug_pypy27/00_assign_pypy.py,
|
|
test/simple_source/bug_pypy27/03_try_return.py, uncompyle6/main.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/semantics/pysource.py: Custom PyPy rules for
|
|
tryfinallysmt, assign{2,3}
|
|
|
|
2016-07-26 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug_pypy27/01_assert2.py,
|
|
test/simple_source/bug_pypy27/03_try_return.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/semantics/pysource.py:
|
|
More PyPy grammar rules * assert one and two-arg form * trystmt Simplify adding multiple grammar rules
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/testdata/if-2.7.right, pytest/testdata/ifelse-2.7.right,
|
|
uncompyle6/scanners/tok.py: Instruction formatting - yet again
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/pysource.py: Add grammar for PyPy 2-arg assert
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/tok.py, uncompyle6/semantics/pysource.py: PyPy
|
|
BUILD_MAP_n. Reinstate bytecode tests
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py: Handle PyPy
|
|
BUILD_MAP_0 where actual kw_args > 0
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Clean
|
|
up PyPy load_attr grammar rules
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile: Enable more PyPy testing
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile: Start checking PyPy bytecodes
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/scanners/pypy27.py,
|
|
uncompyle6/scanners/pypy32.py: Add pypy scanners
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, requirements.txt, test/Makefile,
|
|
test/simple_source/bug27+/05_setattr.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py: Handle PyPy CALL_METHOD op more
|
|
correctly Start testing pypy2.7 and 3.2 bytecodes
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse2.py: add_custom_rules() in 2.x and 3.x
|
|
are more alike
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, test/simple_source/stmts/03_if_elif.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/semantics/pysource.py:
|
|
Handle PyPy JUMP_IF_NOT_DEBUG Update README.rst to note PyPY and reorganize a little
|
|
|
|
2016-07-25 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/testdata/if-2.7.right, pytest/testdata/ifelse-2.7.right,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/tok.py: Better
|
|
assembly formatting of jump instructions
|
|
|
|
2016-07-24 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, test/Makefile, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py: More
|
|
PyPy LOOKUP_METHOD rules
|
|
|
|
2016-07-24 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, __pkginfo__.py, pytest/test_fjt.py, requirements.txt,
|
|
test/Makefile, test/test_pythonlib.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/semantics/pysource.py:
|
|
PyPy support * Use proper PYPY 32 opcodes * handle opcodes LOOKUP_METHOD and CALL_METHOD * Administrative stuff for PyPy
|
|
|
|
2016-07-24 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* : Merge pull request #1 from rocky/master Syncing with rocky
|
|
|
|
2016-07-24 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 21683719e1a07d51095d32200ec294d659746474 Author: rocky
|
|
<rb@dustyfeet.com> Date: Sun Jul 24 04:16:54 2016 -0400
|
|
|
|
2016-07-24 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 7e8173b07620c344a73660b354f05a61c4723d18 Author: rocky
|
|
<rb@dustyfeet.com> Date: Sun Jul 24 03:44:26 2016 -0400
|
|
|
|
2016-07-23 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug27+/05_for_try_except.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner27.py:
|
|
Another 2.7 'continue' detection bug
|
|
|
|
2016-07-23 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug27+/05_for_try_except.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner27.py:
|
|
Another 2.7 'continue' detection bug
|
|
|
|
2016-07-23 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug27+/05_for_try_except.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner27.py:
|
|
Another 2.7 'continue' detection bug
|
|
|
|
2016-07-23 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug27+/05_for_try_except.py,
|
|
uncompyle6/scanners/scanner2.py: 2.7: Detect "continue" inside
|
|
except Fixes issue #38. This is a bit hacky. We need a more general "continue" detection.
|
|
|
|
2016-07-23 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit a5f45f232decad2e74bfdf476255604273fd95fd Author: rocky
|
|
<rb@dustyfeet.com> Date: Sat Jul 23 10:37:41 2016 -0400
|
|
|
|
2016-07-21 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, test/test_pyenvlib.py, uncompyle6/disas.py,
|
|
uncompyle6/main.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py, uncompyle6/verify.py: Start
|
|
handling pypy 2.7 Need to understand whether we care compiling pypy. Pypy 2.7 list
|
|
comprehensions are different and use its own opcode.
|
|
|
|
2016-07-20 rocky <rb@dustyfeet.com>
|
|
|
|
* HISTORY.md, README.rst: Update HISTORY and add link to it in
|
|
README.md
|
|
|
|
2016-07-17 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/semantics/pysource.py: Better
|
|
parse error formatting Start to move away for compiler-oriented terminology: Favor "instructions" over "tokens". Syntax error -> Parse error.
|
|
|
|
2016-07-17 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/testdata/if-2.7.right, pytest/testdata/ifelse-2.7.right,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/tok.py: Align
|
|
disassembly output with xdis align number of offset fields with xdis. Show None type when we
|
|
mean None, not ''
|
|
|
|
2016-07-17 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Respect after/both option in
|
|
scanner3
|
|
|
|
2016-07-17 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/testdata/if-2.7.right, pytest/testdata/ifelse-2.7.right:
|
|
Adjust test data for changed disasm output
|
|
|
|
2016-07-16 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 942b15e3c62963b32aaba877fd451ffe304c07a9 Author: rocky
|
|
<rb@dustyfeet.com> Date: Sat Jul 16 14:12:31 2016 -0400
|
|
|
|
2016-07-16 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: More explicit usage info
|
|
|
|
2016-07-15 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, test/Makefile,
|
|
test/simple_source/bug35/01_matrix_multiply.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: Add
|
|
3.5 matrix mult ops We now run 3.5 verifycation so we need to remove some of the tests
|
|
that fail to verify pending fixing.
|
|
|
|
2016-07-15 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, README.rst, uncompyle6/version.py: Get ready for
|
|
release 2.7.0
|
|
|
|
2016-07-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/semantics/pysource.py: Isolate pseudo op IMPORT_NAME_CONT I think this is a holdover from pre 2.3 days. Possibly it can be
|
|
dropped altogether.
|
|
|
|
2016-07-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Attempt to get 3.5 RETURN_END_IF working This feels hacky and I'm not sure is quite right. Untili we
|
|
understand better what to do though, we'll go with it.
|
|
|
|
2016-07-14 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/semantics/pysource.py: 3.x __qualname__
|
|
= supression Class names have become more complicated so the pattern test needs
|
|
to be more complex as well. Sigh
|
|
|
|
2016-07-14 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: 3.x list comprehenions
|
|
list_if_not, comp_ifnot bug Saw only list_if_not bug, but might also be applicable to comp_ifnot
|
|
|
|
2016-07-14 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/stmts/15_assert.py,
|
|
uncompyle6/scanners/scanner3.py: 3.x ""raise AssertionError" vs
|
|
"assert" Not sure this is totally correct yet.
|
|
|
|
2016-07-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse34.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/verify.py: Python 3.4 assertion handling. Improve verify 3.4 has jump optimization like 3.5. verify.py: show mismatch on
|
|
verification mismatch
|
|
|
|
2016-07-13 rocky <rb@dustyfeet.com>
|
|
|
|
* : Reinstate some code for verification
|
|
|
|
2016-07-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py: Back off showing verification errors Pending why this failing in make.
|
|
|
|
2016-07-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/pysource.py: "return None" -> "pass" Python 3.4 classes have what looks like a return None, but this is
|
|
invalid syntax. So for now we'll remove all "return None"s. There may be a "pass" in there instead.
|
|
|
|
2016-07-13 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit fd0d8d25672b9450bafc1d5c6781bedd7ec8bd1d Author: rocky
|
|
<rb@dustyfeet.com> Date: Wed Jul 13 13:00:03 2016 -0400
|
|
|
|
2016-07-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/stmts/11_return_val.py,
|
|
uncompyle6/semantics/pysource.py: Debugging smutz caused verify
|
|
failures
|
|
|
|
2016-07-12 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Document/correct hide_internal and
|
|
store_locals
|
|
|
|
2016-07-12 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug33/05_store_locals.py,
|
|
test/simple_source/bug33/05_store_name.py,
|
|
uncompyle6/semantics/pysource.py: Better 3.2/33 store_locals
|
|
handling
|
|
|
|
2016-07-11 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/bug33/05_store_name.py,
|
|
test/simple_source/comprehension/05_3x_set_comphension.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Python 3.2 & 3.3 handle STORE_NAME better
|
|
|
|
2016-07-11 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, README.rst, uncompyle6/version.py: Get ready for
|
|
release 2.6.2
|
|
|
|
2016-07-11 rocky <rb@dustyfeet.com>
|
|
|
|
* test/add-test.py,
|
|
test/simple_source/comprehension/05_set_comprehension.py,
|
|
uncompyle6/semantics/pysource.py: Fix some Python set comprehension
|
|
bugs
|
|
|
|
2016-07-11 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/def/05_static_method.py: Add missing a test
|
|
source file
|
|
|
|
2016-07-11 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner3.py: Python 3.(4?) while1 bug Clean up while1 grammar a tad
|
|
|
|
2016-07-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py: Revert recent 2.x code which fail
|
|
verification
|
|
|
|
2016-07-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse34.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner3.py: Structure detection bugs + Had borked 3.4 grammar rules in previous refactor
|
|
|
|
2016-07-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner3.py: DRY and clean up code a little
|
|
|
|
2016-07-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py: Remove JA. Use standard
|
|
JUMP_ABSOLUTE instead
|
|
|
|
2016-07-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Python 2/3 compatibility bug
|
|
|
|
2016-07-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py:
|
|
Bugs caused by 3.x jump_forward misclasification
|
|
|
|
2016-07-10 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner3.py:
|
|
Python 3 better CONTINUE op classification Also document what's up with JUMP_ABSOLUTE classification
|
|
|
|
2016-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse34.py: 3.4 continue handling. More work is
|
|
needed
|
|
|
|
2016-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Need xdis 2.4 bugfix
|
|
|
|
2016-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/parse34.py: Start splitting off 3.4 grammar from
|
|
rest
|
|
|
|
2016-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/comprehension/01_list_comprehension.py,
|
|
uncompyle6/parsers/parse23.py: Python 2.3 list comprehensions
|
|
|
|
2016-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/comprehension/01_list_comprehension.py,
|
|
test/simple_source/operation_binary/add.py,
|
|
test/simple_source/operation_binary/and.py,
|
|
test/simple_source/operation_binary/divide_floor.py,
|
|
test/simple_source/operation_binary/divide_true.py,
|
|
test/simple_source/operation_binary/modulo.py,
|
|
test/simple_source/operation_binary/multiply.py,
|
|
test/simple_source/operation_binary/or.py,
|
|
test/simple_source/operation_binary/power.py,
|
|
test/simple_source/operation_binary/shift_left.py,
|
|
test/simple_source/operation_binary/shift_right.py,
|
|
test/simple_source/operation_binary/subscription.py,
|
|
test/simple_source/operation_binary/subtract.py,
|
|
test/simple_source/operation_binary/xor.py,
|
|
test/simple_source/operation_comparison/equal.py,
|
|
test/simple_source/operation_comparison/greater.py,
|
|
test/simple_source/operation_comparison/greater_equal.py,
|
|
test/simple_source/operation_comparison/less.py,
|
|
test/simple_source/operation_comparison/less_equal.py,
|
|
test/simple_source/operation_comparison/notequal.py,
|
|
test/simple_source/operation_inplace/add.py,
|
|
test/simple_source/operation_inplace/and.py,
|
|
test/simple_source/operation_inplace/divide_floor.py,
|
|
test/simple_source/operation_inplace/divide_true.py,
|
|
test/simple_source/operation_inplace/modulo.py,
|
|
test/simple_source/operation_inplace/multiply.py,
|
|
test/simple_source/operation_inplace/or.py,
|
|
test/simple_source/operation_inplace/power.py,
|
|
test/simple_source/operation_inplace/shift_left.py,
|
|
test/simple_source/operation_inplace/shift_right.py,
|
|
test/simple_source/operation_inplace/subtract.py,
|
|
test/simple_source/operation_inplace/xor.py,
|
|
test/simple_source/operation_unary/invert.py,
|
|
test/simple_source/operation_unary/iter.py,
|
|
test/simple_source/operation_unary/negative.py,
|
|
test/simple_source/operation_unary/not.py,
|
|
test/simple_source/operation_unary/positive.py,
|
|
test/simple_source/precedence/left.py,
|
|
test/simple_source/precedence/right.py,
|
|
test/simple_source/precedence/structure.py,
|
|
test/simple_source/stmts/00_import.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse23.py,
|
|
uncompyle6/parsers/parse25.py, uncompyle6/scanners/scanner26.py: Fix
|
|
some 2.3 bugs; add more 2.3-6. tests
|
|
|
|
2016-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse23.py: 2.3 while1stmt bug
|
|
|
|
2016-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit ac45e5757c8c57af2c918c79ff4f6195268afec1 Author: rocky
|
|
<rocky@gnu.org> Date: Sat Jul 9 05:59:02 2016 -0400
|
|
|
|
2016-07-09 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse23.py: Merge conflict
|
|
|
|
2016-07-09 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Python3 scanner code cleanup
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner33.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/scanners/scanner35.py:
|
|
Python 3 code cleanup
|
|
|
|
2016-07-08 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner24.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py: DRY scanner code. Allow 2.4
|
|
decompile from 3.x
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* : Add more 2.4 and 2.6 tests
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse24.py: 2.4 "import *" grammar rule
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse24.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner24.py, uncompyle6/scanners/scanner26.py:
|
|
Python 2.4 generator expressions and gen_comp_body
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, uncompyle6/parsers/parse24.py,
|
|
uncompyle6/scanners/scanner2.py: <2.5 grammar customizations for
|
|
imports and loops
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, test/Makefile, test/add-test.py,
|
|
test/test_pyenvlib.py, test/test_pythonlib.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse24.py,
|
|
uncompyle6/parsers/parse25.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner24.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/semantics/pysource.py: Start handling Pyton 2.4 bytecodes
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, NEWS, README.rst, uncompyle6/version.py: Get ready for
|
|
release 2.6.1
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/11_return_val.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py:
|
|
2.5/2.6 RETURN_VALUE bug
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py:
|
|
2.5/2.6 fn name clash fixes list conprehension problem
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse25.py: Python 2.5 with statement
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* README.rst: Revise decompilation quality estimate
|
|
|
|
2016-07-08 rocky <rocky@gnu.org>
|
|
|
|
* test/add-test.py, test/simple_source/stmts/05_with.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse25.py,
|
|
uncompyle6/parsers/parse26.py: Start going over Python 2.5 bytecode Fix 2.6 with bug
|
|
|
|
2016-07-07 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py, uncompyle6/version.py: Get ready
|
|
for release 2.6.0
|
|
|
|
2016-07-07 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse26.py: <2.7 add a rare kind of list_for
|
|
|
|
2016-07-07 rocky <rocky@gnu.org>
|
|
|
|
* : Remove 2.7 asynchat verifcation for now
|
|
|
|
2016-07-07 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/looping/08_while1_if_continue.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
|
|
uncompyle6/scanners/scanner2.py: while1 bug in 2.6 and 2.7
|
|
|
|
2016-07-07 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse26.py: <2.7 whileelse rule
|
|
|
|
2016-07-07 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py:
|
|
<2.6 make sure jump back on loops is really "back"
|
|
|
|
2016-07-07 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner2.py: <2.7 lack of POP_IF_ adjustment
|
|
in detect_structure
|
|
|
|
2016-07-07 rocky <rocky@gnu.org>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/scanners/scanner2.py: 2.6 POP_TOP and POP_JUMP_IF bugs
|
|
|
|
2016-07-06 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner2.py: 2.6 bug in handling jumps to
|
|
jumps
|
|
|
|
2016-07-06 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/03_if_elif.py,
|
|
uncompyle6/parsers/parse26.py: 2.6.9 bug: multiple COME_FROMs via
|
|
"or"/"assert"
|
|
|
|
2016-07-06 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/03_if_elif.py,
|
|
uncompyle6/parsers/parse26.py: 2.6.9 elif with multiple COME_FROMs
|
|
|
|
2016-07-06 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/04_raise.py,
|
|
uncompyle6/scanners/scanner2.py: < 2.7 bug in not distinguishing
|
|
raise from assert
|
|
|
|
2016-07-04 rocky <rocky@gnu.org>
|
|
|
|
* : Add 10_if_else_ternary.pyc for 2.5
|
|
|
|
2016-07-03 rocky <rocky@gnu.org>
|
|
|
|
* pytest/test_deparse.py: fragment test update for expanded offsets
|
|
|
|
2016-07-03 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: More offsets captrued Add %b
|
|
specifer %b - associate text before specifier pysource.py: small doc
|
|
correction
|
|
|
|
2016-07-03 rocky <rocky@gnu.org>
|
|
|
|
* : commit 04698f45cc4246b95b3bb8c22f61e0398614b344 Author: rocky
|
|
<rb@dustyfeet.com> Date: Sun Jul 3 11:32:20 2016 -0400
|
|
|
|
2016-07-03 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py:
|
|
Another 2.6 while stmt. Clean up grammar a little
|
|
|
|
2016-07-03 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse26.py, uncompyle6/scanners/scanner2.py:
|
|
2.6 improper tagging of RETURN_END_IF
|
|
|
|
2016-07-02 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py: 2.6.9 tryelsestmt
|
|
|
|
2016-07-02 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/04_withas.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py: Python 2.6 with as stmt
|
|
|
|
2016-07-01 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/06_return_if.py,
|
|
uncompyle6/parsers/parse26.py: 2.6 ifelsestmt
|
|
|
|
2016-07-01 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/looping/07_return_end_if.py,
|
|
uncompyle6/parsers/parse26.py: Another 2.6 return_stmt bug
|
|
|
|
2016-07-01 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/looping/07_return_end_if.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse26.py: 2.6 return_stmt
|
|
bug
|
|
|
|
2016-06-30 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py: Fix import name in setup entry_points. Fixes issue #34
|
|
|
|
2016-06-30 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/06_for_break.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/semantics/pysource.py:
|
|
More 2.6.9 bugs fixed * break loop parsing bug * ifelsestmt semantic-action bug in handling else
|
|
|
|
2016-06-30 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/05_list_comprehension.py,
|
|
uncompyle6/parsers/parse26.py: 2.6 conditional in list comprehension
|
|
bug
|
|
|
|
2016-06-30 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/pysource.py: Oh Python and your f*'d notions
|
|
of spacing
|
|
|
|
2016-06-30 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/05_for_for.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/semantics/pysource.py:
|
|
2.6.9 list comprehension
|
|
|
|
2016-06-30 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/exception/07_try_pass.py,
|
|
uncompyle6/scanners/scanner2.py: <= 2.6 weird jump out of try block Allow COME_FROMs to appare via JUMP_FORWARD in tey/except blocks
|
|
|
|
2016-06-30 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py: CONTINUE handling in 2.6.9
|
|
|
|
2016-06-30 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse26.py: 2.6 except_suite bug
|
|
|
|
2016-06-29 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/08_for_if_for.py,
|
|
uncompyle6/parsers/parse26.py, uncompyle6/semantics/pysource.py: 2.6
|
|
genexpr. Some not quite right.
|
|
|
|
2016-06-29 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/15_assert.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py: 2.6.9 assert 2-arg bug
|
|
|
|
2016-06-29 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/bug26/06_setif_comprehension.py,
|
|
test/simple_source/bug27+/06_setif_comprehension.py,
|
|
test/simple_source/comprehension/06_setif_comprehension.py,
|
|
uncompyle6/parsers/parse26.py: A 2.6 comprehension bug
|
|
|
|
2016-06-29 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #33 from rocky/python-2.6 Python 2.6
|
|
|
|
2016-06-28 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse26.py, uncompyle6/semantics/pysource.py:
|
|
Weird 2.6.9 list comprehension
|
|
|
|
2016-06-28 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/06_return_if.py,
|
|
uncompyle6/parsers/parse26.py: Add more come_from_pops
|
|
|
|
2016-06-28 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/07_withstmt_fn.py,
|
|
uncompyle6/parsers/parse26.py: 2.6. with fn()
|
|
|
|
2016-06-27 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py:
|
|
Base 2.5 off of 2.6. Some other small bugs.
|
|
|
|
2016-06-27 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse26.py: 2.6 try
|
|
except hadnling works now
|
|
|
|
2016-06-27 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse26.py, uncompyle6/semantics/pysource.py:
|
|
2.6 list comprehensions
|
|
|
|
2016-06-27 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/scanners/scanner2.py: JUMP_IF_{TRUE,FALSE}_OR_OP fixes
|
|
|
|
2016-06-27 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse26.py: WIP 2.6 j{f,b}_pop fix
|
|
|
|
2016-06-24 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse27.py, uncompyle6/scanners/scanner2.py: WIP
|
|
deal with JUMP_IF_{TRUE,FALSE} vs with POP version
|
|
|
|
2016-06-24 rocky <rocky@gnu.org>
|
|
|
|
* : WIP Python-2.6 but don't remove opcodes The scheme for turning 2.6 bytecode into 2.7 psuedo bytecode I think
|
|
is a lose. I won't work for fragment handling. Instead, change the grammar and syntax rules This also has the benefits: * We see how code generation changed over releases by looking at grammar and semantic rules rather than arbitrary code * We can better assocate with what's running (in a sense this is a restatement of broken fragment handling) * With the right structure in place we are in a better position to handle 2.5, 2.4, etc. That is, after a while, the incremental
|
|
changes to get say from python 2.3 bytecode to python 2.7 are
|
|
great. Conflicts: uncompyle6/parsers/astnode.py
|
|
|
|
2016-06-24 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner2.py: 2.6 compatibility
|
|
|
|
2016-06-24 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner2.py: Small formating changes ... and premonition of 2.6 byteocde work
|
|
|
|
2016-06-24 rocky <rocky@gnu.org>
|
|
|
|
* : commit 7a4e3a05ff88e8a02b08eafc3e9f862d1e206c7f Author: rocky
|
|
<rocky@gnu.org> Date: Fri Jun 24 09:28:50 2016 -0400
|
|
|
|
2016-06-24 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, uncompyle6/parsers/astnode.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/semantics/pysource.py: WIP 2.6 redo bytecode handling Don't try to convert 2.6 bytecode to 2.7 psuedo bytecode. Instead
|
|
adjust grammar and semantic actions. Down the line we should to segregate version changes in semantic
|
|
code better.
|
|
|
|
2016-06-24 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* uncompyle6/show.py: fixed bug in maybe_show_ast_param_default, if
|
|
default was not a str a TypeError would occur
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* README.rst, __pkginfo__.py: Doc fixes
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py, uncompyle6/version.py: Get ready
|
|
for release 2.5.0
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* README.rst: Update README
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Python 3.5 and setcomp_func's A comprehension walk in Python 3.5 needs to include setcomp_func's.
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/branching/07_if_return_bug.py,
|
|
uncompyle6/parsers/parse3.py: Python 3.5 if handling... Allow RETURN_END_IF in a return statement May want to do this in
|
|
other versions as well, but right now we only need it here.
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/expression/05_yield_from.py,
|
|
test/simple_source/expression/09_yield_from.py,
|
|
uncompyle6/parsers/parse3.py: Another kind of yield_from on 3.5
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/expression/05_yield_from.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
differing ways to do "yield from" in 3.3-3.5
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner23.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Add Python 3.5 yield from and ... * fragments.py: Handle pass stmt sometimes * scanners: regularize Python 2 scanners some * test/test_pyenvlib.py: add python 3.5.1 option
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Python 3 comprehension fixes Sync up fragments.py
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
More 3.2 LOAD_CONST removal More python3 custom grammar DRYing
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py: DRY parse grammar a little More LOAD_CONST grammar removal in 3.2
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/expression/05_lambda.py,
|
|
test/simple_source/expression/10_lambda.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Python 3.2 MAKE_FUNCTION adjustment
|
|
|
|
2016-06-22 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py: Python 2.6 tolerance
|
|
|
|
2016-06-21 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py: Btter Python 3 fragment set
|
|
comprehensions ... fragment handling for "break" and "continue"
|
|
|
|
2016-06-21 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Handle fragment key/value
|
|
offsets better
|
|
|
|
2016-06-20 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Bang on Python 3.2 decompiling.
|
|
|
|
2016-06-20 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py:
|
|
Python 3 needs Python2's RETURN_END_IF Make python2 and python3 scanner look more the same
|
|
|
|
2016-06-20 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py:
|
|
previous 2.7 class decorator bug fixed in 3.x
|
|
|
|
2016-06-20 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py: DRY redundant custom rule checking
|
|
code
|
|
|
|
2016-06-20 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/05_set_comprehension.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Python 3 set comprehension bug
|
|
|
|
2016-06-20 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/07_classderef.py,
|
|
test/simple_source/def/11_classbug_subclass_fn.py,
|
|
uncompyle6/parsers/parse3.py: Python 3.x class bug using subclass
|
|
fns
|
|
|
|
2016-06-20 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/semantics/pysource.py: For Python 3: add LOAD_CLASSDEREF
|
|
op
|
|
|
|
2016-06-20 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/11_mkfunc_closure.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
3.x make closure kw args handling bug
|
|
|
|
2016-06-20 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/10_class_deco.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Python 3.x class decorator bug
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Correct kw+pos args semantics on
|
|
3.3 Sync fragment make_function code
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/10_kw+pos_args-bug.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/pysource.py: Start 3.3 positional and kw
|
|
parameters Semantic routines need more work.
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/exception/10_try_continue_bug.py,
|
|
uncompyle6/parsers/parse3.py: Another 3.x bug involving jumps
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/expression/03_map.py: Revert assert test on 3.4
|
|
until we figure out how to address
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/05_set_comprehension.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
2.7 and 3.x bug in dict comprehensions
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/expression/10_load_assert.py: 3.4 Load assert
|
|
bug
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/exception/06_tryifelse.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse3.py: 3.4 tryifelse
|
|
bug
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/looping/08_while_except_bug.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Python 3 except clause parsing bug
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py: Cover more offsets
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py: Python 3.3 is more like 3.4 than we
|
|
had thought?
|
|
|
|
2016-06-19 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #31 from rocky/ast-format Ast format
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* : commit 10b95cd9a844c274b0ebce3e605932eccc814f1b Author: rocky
|
|
<rocky@gnu.org> Date: Sun Jun 19 02:31:19 2016 -0400
|
|
|
|
2016-06-19 rocky <rocky@gnu.org>
|
|
|
|
* : commit d7b79c2b59eb1fb49614300d7033c69568b7f43b Author: rocky
|
|
<rocky@gnu.org> Date: Sun Jun 19 00:49:22 2016 -0400
|
|
|
|
2016-06-18 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/06_setif_comprehension.py,
|
|
uncompyle6/main.py, uncompyle6/parser.py,
|
|
uncompyle6/semantics/pysource.py: 3.4 set comprehension if bug
|
|
|
|
2016-06-17 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/parsers/parse3.py: Go over grammars.. * Reduce duplication * Remove unused grammar rules * Add grammar checking when parsers run as standalone
|
|
|
|
2016-06-14 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/pysource.py: Not-quite-right 3.5+ * handling
|
|
|
|
2016-06-07 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Add fragment offsets for more
|
|
instructions Save and restore class name across switches
|
|
|
|
2016-06-06 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_deparse.py, uncompyle6/semantics/fragments.py: Set
|
|
comprehension code is not in 2.6 So we need more care in test programs.
|
|
|
|
2016-06-06 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py: Add class offset of Python3
|
|
|
|
2016-06-06 rocky <rocky@gnu.org>
|
|
|
|
* pytest/test_deparse.py,
|
|
test/simple_source/comprehension/05_set_comprehension.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Fix python 3 set comprehension and ... Add a few set/list comprehension offsets for Python 3
|
|
|
|
2016-06-06 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/astnode.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
small changes
|
|
|
|
2016-06-06 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py:
|
|
include offset for starting listcomp
|
|
|
|
2016-06-03 rocky <rocky@gnu.org>
|
|
|
|
* : commit d4006abf15a2e3da768cdcf2e19078d0553ed979 Author: rocky
|
|
<rocky@gnu.org> Date: Fri Jun 3 10:59:29 2016 -0400
|
|
|
|
2016-06-03 rocky <rocky@gnu.org>
|
|
|
|
* test/Makefile, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner23.py: Can't handle python 2.3 on 3.x for
|
|
now
|
|
|
|
2016-06-03 rocky <rocky@gnu.org>
|
|
|
|
* .gitignore, __pkginfo__.py, test/Makefile, test/test_pyenvlib.py,
|
|
test/test_pythonlib.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse23.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner23.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py, uncompyle6/semantics/pysource.py:
|
|
Limited support for Python 2.3
|
|
|
|
2016-06-03 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner33.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/scanners/scanner35.py,
|
|
uncompyle6/semantics/pysource.py: option to show asm and DRY. Get ready for some 2.3 support
|
|
|
|
2016-06-03 rocky <rocky@gnu.org>
|
|
|
|
* README.rst, uncompyle6/scanners/scanner33.py: For Python 3.3
|
|
verification README.rst: reflow paragraph
|
|
|
|
2016-06-02 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/06_list_ifnot_and.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse26.py,
|
|
uncompyle6/scanners/scanner26.py: Start custom grammar for 2.6 and
|
|
... fix a python 2.6.9 deparse with lc if+and+not
|
|
|
|
2016-06-02 rocky <rocky@gnu.org>
|
|
|
|
* .gitignore, README.rst, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner3.py: Misc refactorings
|
|
|
|
2016-06-01 rocky <rocky@gnu.org>
|
|
|
|
* README.rst: Remove things we don't do here anymore. For those other things see xdis.
|
|
|
|
2016-06-01 rocky <rocky@gnu.org>
|
|
|
|
* README.rst: Remove stuff we don't do anymore For these other functions see xdis.
|
|
|
|
2016-06-01 rocky <rocky@gnu.org>
|
|
|
|
* .gitignore, uncompyle6/parsers/astnode.py: print AST children
|
|
counts for internal nodes
|
|
|
|
2016-06-01 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #23 from rocky/diagnostics-to-stream Diagnostics to stream
|
|
|
|
2016-06-01 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py, uncompyle6/show.py: showasm and
|
|
showast now accept file like objects which are used for writing the
|
|
the asm or ast to.
|
|
|
|
2016-06-01 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* uncompyle6/show.py: showasm and showast now accept file like
|
|
objects which are used for writing the the asm or ast to.
|
|
|
|
2016-05-31 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #22 from rocky/xdis-load Xdis load
|
|
|
|
2016-05-31 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, uncompyle6/.gitignore,
|
|
uncompyle6/opcodes/Makefile, uncompyle6/opcodes/__init__.py,
|
|
uncompyle6/opcodes/opcode_23.py, uncompyle6/opcodes/opcode_24.py,
|
|
uncompyle6/opcodes/opcode_25.py, uncompyle6/opcodes/opcode_26.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py: use totally xdis's opcodes Needs xdis 1.1.0 or greater
|
|
|
|
2016-05-30 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_disasm.py, pytest/testdata/if-2.7.right,
|
|
pytest/testdata/ifelse-2.7.right, test/ok_lib2.7/bsddb/dbobj.py,
|
|
test/ok_lib2.7/bsddb/dbrecio.py, test/ok_lib2.7/bsddb/dbshelve.py,
|
|
test/ok_lib2.7/bsddb/dbutils.py,
|
|
test/ok_lib2.7/compiler/__init__.py,
|
|
test/ok_lib2.7/compiler/ast.py, test/ok_lib2.7/compiler/consts.py,
|
|
test/ok_lib2.7/compiler/future.py, test/ok_lib2.7/compiler/misc.py,
|
|
uncompyle6/disas.py: Back of some of the last disasm changes Was failing test_disasm and I don't want to deal with that now. Add more 2.7 bytecode tests
|
|
|
|
2016-05-29 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 08790ab0ab6b24fdbaf6ba90211d159115c6863a Author: rocky
|
|
<rocky@gnu.org> Date: Sun May 29 23:02:31 2016 -0400
|
|
|
|
2016-05-29 rocky <rocky@gnu.org>
|
|
|
|
* test/Makefile, test/ok_lib2.6/anydbm.py, test/test_pythonlib.py,
|
|
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py: DRY scanner25 and scanner26 more
|
|
|
|
2016-05-29 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py:
|
|
Bang again on Python 2.5 and 2.6 scanners
|
|
|
|
2016-05-29 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py: bang on scanner2{5,6}
|
|
|
|
2016-05-29 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner2.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py:
|
|
Start to DRY 2.6 scanner Note: can't use xdis 2.6 opcode until another xdis release.
|
|
|
|
2016-05-29 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner2.py: Remove use of 2.7 globals by
|
|
using self.opc
|
|
|
|
2016-05-28 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit e70e7bfc164c319d5554042336160ee04fb2fdb2 Author: rocky
|
|
<rocky@gnu.org> Date: Sat May 28 19:34:12 2016 -0400
|
|
|
|
2016-05-28 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner33.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/scanners/scanner35.py:
|
|
DRY scanners more
|
|
|
|
2016-05-28 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/06_list_ifnot.py,
|
|
test/simple_source/comprehension/10-list-ifnot.py,
|
|
uncompyle6/semantics/pysource.py: Fix bug in 3x list comprehensions
|
|
with ifnot
|
|
|
|
2016-05-28 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/06_list_ifnot.py,
|
|
test/simple_source/comprehension/10-list-ifnot.py,
|
|
uncompyle6/scanners/dis3.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner35.py, uncompyle6/semantics/pysource.py:
|
|
Remove dis3. Fix in 3.x list if not comprehension
|
|
|
|
2016-05-28 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/opcodes/opcode_3x.py, uncompyle6/scanners/dis3.py: One
|
|
more Python 3 opcode to remove
|
|
|
|
2016-05-28 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/opcodes/opcode_32.py, uncompyle6/opcodes/opcode_33.py,
|
|
uncompyle6/opcodes/opcode_34.py, uncompyle6/scanners/scanner3.py:
|
|
Remove dup 3.x opcodes
|
|
|
|
2016-05-28 rocky <rocky@gnu.org>
|
|
|
|
* .travis.yml: Nuke Travis 3.2 and 3.3 testing for now
|
|
|
|
2016-05-28 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanner.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner33.py, uncompyle6/scanners/scanner34.py:
|
|
xdis for Python 3 opcodes
|
|
|
|
2016-05-28 rocky <rocky@gnu.org>
|
|
|
|
* test/Makefile, uncompyle6/opcodes/opcode_35.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner35.py: use xdis
|
|
3.4-3.5 opcodes
|
|
|
|
2016-05-27 rocky <rocky@gnu.org>
|
|
|
|
* .travis.yml, __pkginfo__.py: More travis versions
|
|
|
|
2016-05-27 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, pytest/test_fjt.py, pytest/test_load.py,
|
|
pytest/test_marsh.py, uncompyle6/__init__.py,
|
|
uncompyle6/bin/pydisassemble.py, uncompyle6/code.py,
|
|
uncompyle6/disas.py, uncompyle6/load.py, uncompyle6/magics.py,
|
|
uncompyle6/main.py, uncompyle6/marsh.py, uncompyle6/parser.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py, uncompyle6/verify.py: Use xdis for
|
|
code, magics, and marshal
|
|
|
|
2016-05-25 rocky <rocky@gnu.org>
|
|
|
|
* : commit b6a0c5a704d7d0a3a2a0eb4f90a15eb7a4aceaa2 Author: rocky
|
|
<rocky@gnu.org> Date: Wed May 25 20:08:12 2016 -0400
|
|
|
|
2016-05-25 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #21 from rocky/fragments-state-fix Fixed bug in pysource / fragments where the use of deparse_code from
|
|
…
|
|
|
|
2016-05-24 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py: Small change 0 shouldn't be used as False.
|
|
|
|
2016-05-23 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/06_ifTrue_optimize_bug.py,
|
|
test/simple_source/def/06_return_bug.py,
|
|
uncompyle6/semantics/pysource.py: final RETURN removal bug We want to remove a final return from a module, but otherwise not.
|
|
Note we'll no lonager be able to verify functools.pyc as there is
|
|
now a return after a raise statement. That will have to be delt with
|
|
separately. May address Issue #17.
|
|
|
|
2016-05-22 rocky <rocky@gnu.org>
|
|
|
|
* README.rst: pydisassemble is in pyxdis now Some small ReST tag fixes
|
|
|
|
2016-05-22 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* .travis.yml: Excluding experimental branch from travis ci
|
|
|
|
2016-05-22 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* .travis.yml: Excluding experimental branch from travis ci
|
|
|
|
2016-05-21 Daniel Bradburn <moagstar@gmail.com>
|
|
|
|
* : Merge pull request #16 from rocky/multi-gen--bug-3.5 Fix 3.x generator bug...
|
|
|
|
2016-05-21 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/expression/11_multi_genexpr.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py: Fix 3.x generator bug... found by Daniel Brandburn. See
|
|
|
|
https://github.com/moagstar/python-uncompyle6/commit/af61622960ba49eef5ea1b5bdf9a738c7b10427c
|
|
|
|
2016-05-21 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/bin/uncompile.py: Check Python version in uncompile.py Seems this is the only place that uses that.
|
|
|
|
2016-05-20 rocky <rocky@gnu.org>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/main.py: Small changes test_pyenvlib.py: cleanup code a little uncompyle6/main.py: more
|
|
explicit decompile msg
|
|
|
|
2016-05-20 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/__init__.py,
|
|
uncompyle6/bin/pydisassemble.py, uncompyle6/bin/uncompile.py,
|
|
uncompyle6/scanners/dis3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/verify.py: Small pyflakes stuff
|
|
|
|
2016-05-20 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Fragment fixes fragments.py: * Use "%x" specifier if for iterators * Add '%D' interpretation pysource.py: TABLE_DIRECT can get messed up from running fragments duplicate "%x" specifier to igore fragment stuff
|
|
|
|
2016-05-19 rocky <rocky@gnu.org>
|
|
|
|
* LICENSE, PKG-INFO, __pkginfo__.py, test/simple_source/README,
|
|
uncompyle6/scanners/scanner33.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py: Small changes and administrivia
|
|
|
|
2016-05-18 rocky <rocky@gnu.org>
|
|
|
|
* pytest/test_marsh.py,
|
|
test/simple_source/expression/06_frozenset.py, uncompyle6/marsh.py:
|
|
Handle marshal frozenset
|
|
|
|
2016-05-18 rocky <rocky@gnu.org>
|
|
|
|
* NEWS, uncompyle6/disas.py, uncompyle6/magics.py,
|
|
uncompyle6/opcodes/opcode_27.py: Allow PyPy 2.7 opcodes and magic
|
|
and ... disas.py: * more aggressive code checking magics.py: * Add PYPY magic opcodes_27.py: * Add PYPY opcodes
|
|
|
|
2016-05-18 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, DECOMPYLE-2.4-CHANGELOG.txt, HISTORY.md, NEWS,
|
|
README.rst, test/test_pyenvlib.py, uncompyle6/version.py: Get ready
|
|
for release 2.4.0
|
|
|
|
2016-05-18 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/verify.py: Add 3.5 to verify
|
|
|
|
2016-05-18 rocky <rocky@gnu.org>
|
|
|
|
* pytest/test_load.py, pytest/testdata/if-2.7.right,
|
|
pytest/testdata/ifelse-2.7.right, uncompyle6/disas.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner33.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py, uncompyle6/scanners/tok.py,
|
|
uncompyle6/verify.py: pydisassemble improvements; DRY scannners disas.py: - disassembles *all* code objects found scanner*.py: - no longer need to pass in version numbers; this is obtained from the class name - no longer pass in opcodes; this is done at initialization from the scanner name - all Pythoin 3 scanners support native disassembly
|
|
|
|
2016-05-17 rocky <rocky@gnu.org>
|
|
|
|
* pytest/testdata/if-2.7.right, pytest/testdata/ifelse-2.7.right,
|
|
uncompyle6/bin/pydisassemble.py, uncompyle6/disas.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/tok.py: Go
|
|
over disassembly routine... * tok.py: - add arg value when it is an integer * pydisassemble.py: - add option -U --uncomplyle for which flavor of disassembly - remove -o option * scanner27.py: - allow for native (non-uncompyle6) output
|
|
|
|
2016-05-17 rocky <rocky@gnu.org>
|
|
|
|
* pytest/test_marsh.py,
|
|
test/simple_source/expression/02_complex.py, uncompyle6/marsh.py:
|
|
Fix marshal bug in handling complex numbers
|
|
|
|
2016-05-17 rocky <rocky@gnu.org>
|
|
|
|
* Makefile, test/simple_source/def/09_class_closure.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Fix Python 3.x bugs * class definitions made via closures * Add "make check-short" to top-level * parse3.py: Python 3.3 uses STORE_LOGALS
|
|
|
|
2016-05-16 rocky <rocky@gnu.org>
|
|
|
|
* test/test_pyenvlib.py, uncompyle6/marsh.py,
|
|
uncompyle6/scanners/scanner3.py: Fix a number of small bugs... test_peynv.py: make Python3 compatible marsh.py: remove duplicate
|
|
test scanner3.py: fix opcode typo
|
|
|
|
2016-05-16 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py: Fix Python 3.x bug in function VAR
|
|
and KW args
|
|
|
|
2016-05-16 rocky <rocky@gnu.org>
|
|
|
|
* : Readd some 3.x loop tests
|
|
|
|
2016-05-16 rocky <rocky@gnu.org>
|
|
|
|
* pytest/test_fjt.py: pytest for last commit
|
|
|
|
2016-05-16 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Correct bugs in Python 3.2 source
|
|
generation
|
|
|
|
2016-05-16 rocky <rocky@gnu.org>
|
|
|
|
* Makefile: Travis can't handle pytest on Python 3.5
|
|
|
|
2016-05-16 rocky <rocky@gnu.org>
|
|
|
|
* HISTORY.md, Makefile, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py: Python 2 loop scanner detection in
|
|
Python 3 scanner*.py: Make scanner27 and scanner3 more aligned Makefile: we
|
|
can run py.test on Python 3.5 HISTORY.md: grammar changes
|
|
|
|
2016-05-16 rocky <rocky@gnu.org>
|
|
|
|
* HISTORY.md, uncompyle6/main.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/verify.py: Misc small
|
|
changes Go over history yet again code cleanups.
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py: Python3 mklambda bug
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/expression/08_genexpr.py,
|
|
test/simple_source/expression/10_genexpr.py,
|
|
uncompyle6/parsers/parse3.py: Python 3 genexpr bug
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* HISTORY.md: Correct info on parser
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Bug in Python 3.x genexpr
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/expression/05_lambda.py,
|
|
test/test_pyenvlib.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/semantics/pysource.py:
|
|
Fix bug in Python 3 lambda expression handling Some other small cleanup changes
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/bin/pydisassemble.py, uncompyle6/disas.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py, uncompyle6/scanners/tok.py:
|
|
pydisassemble disassemble without grammar mangling Some other small cleanups as well
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse3.py: Fix verify bug
|
|
in 3.2
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/looping/12_if_while_bug.py,
|
|
uncompyle6/parsers/parse3.py: 3.4 if/while bug
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* .travis.yml: force Travis 2.7.11 for Python 2.7
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* test/ok_lib2.7/aifc.py, test/ok_lib2.7/antigravity.py,
|
|
test/ok_lib2.7/anydbm.py, test/ok_lib2.7/asynchat.py,
|
|
test/ok_lib2.7/atexit.py, test/ok_lib2.7/audiodev.py,
|
|
test/ok_lib2.7/base64.py, test/ok_lib2.7/binhex.py,
|
|
test/ok_lib2.7/bisect.py, test/ok_lib2.7/calendar.py,
|
|
test/ok_lib2.7/cgitb.py, test/ok_lib2.7/chunk.py,
|
|
test/ok_lib2.7/codeop.py, test/ok_lib2.7/colorsys.py,
|
|
test/ok_lib2.7/commands.py, test/ok_lib2.7/compileall.py,
|
|
test/ok_lib2.7/dircache.py, test/ok_lib2.7/dis.py,
|
|
test/test_pyenvlib.py: Add more Python 2.7 verify tests
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Fix bug in kvlist handling on
|
|
Python 2.7 Created from previous DRY code in Python 3
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/scanners/scanner35.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
DRY scanner34 and scanner35 handle 3.0..3.4 build maps as key/value pairs
|
|
|
|
2016-05-15 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/dis3.py: Optimize Python 2/3 code2num
|
|
|
|
2016-05-14 rocky <rocky@gnu.org>
|
|
|
|
* test/Makefile, uncompyle6/scanners/dis3.py: 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 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/bin/pydisassemble.py, uncompyle6/scanners/dis3.py,
|
|
uncompyle6/scanners/dis35.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py: Start to DRY Python 3.4 and 3.5
|
|
scanners
|
|
|
|
2016-05-14 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, requirements.txt, setup.py: See if travis will
|
|
take spark 1.2.1
|
|
|
|
2016-05-14 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/bin/pydisassemble.py, uncompyle6/bin/uncompile.py: Fix
|
|
names for <program> -V
|
|
|
|
2016-05-14 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, __pkginfo__.py, uncompyle6/version.py: Fix botched
|
|
entry point names Get ready for relase 2.3.6
|
|
|
|
2016-05-14 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.3.5
|
|
|
|
2016-05-13 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py: More fragment bugs
|
|
|
|
2016-05-13 rocky <rocky@gnu.org>
|
|
|
|
* MANIFEST.in, Makefile, __pkginfo__.py, setup.py,
|
|
uncompyle6/semantics/fragments.py: More packaging crap. Did I tell you how much I hate python packaging? fragments.py: track recent change in class decorators.
|
|
|
|
2016-05-13 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, bin/pydisassemble, bin/uncompyle6, setup.py,
|
|
test/simple_source/bug26/05-ret-or.py,
|
|
test/simple_source/def/03_star_arg.py, uncompyle6/bin/__init__.py,
|
|
uncompyle6/bin/pydisassemble.py, uncompyle6/bin/uncompile.py: Python
|
|
packaging - yet again. Did I ever mention how much Python sucks at packaging?
|
|
|
|
2016-05-13 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/10_classdec.py: Test for class decorator See https://github.com/rocky/python-uncompyle6/pull/15
|
|
|
|
2016-05-13 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #15 from Tey/master Fix for class decorators
|
|
|
|
2016-05-12 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py: Back off spark 1.2.0 for now
|
|
|
|
2016-05-12 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner35.py:
|
|
More small changes
|
|
|
|
2016-05-12 rocky <rocky@gnu.org>
|
|
|
|
* test/test_pythonlib.py: Clean up test byte-compile directory
|
|
|
|
2016-05-12 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/15_for_if.py, uncompyle6/main.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py: Misc
|
|
changes Back off of some validation tests for now.
|
|
|
|
2016-05-12 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Misc fixups/cleanups * parse3.py Had botched if-for-else test by grammar addition * semantics/*.py: Show errorstack in failed parse when -g (requires
|
|
sparck 1.2.0) * some optimization in scanner3
|
|
|
|
2016-05-12 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #14 from rocky/make-function-rewrite Make function rewrite
|
|
|
|
2016-05-11 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/03_py3_def.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/dis35.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Redo make_function for *, arg main(*, file='foo') and things like that now work
|
|
|
|
2016-05-11 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/dis35.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner35.py,
|
|
uncompyle6/semantics/pysource.py: WIP Make function redo
|
|
|
|
2016-05-10 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: add
|
|
pos_arg ::= expr to make params of fns clear
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py: * call WIP
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/11_classbug.py,
|
|
uncompyle6/parsers/parse3.py: 3.2 class bug
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/looping/09_if_whiletrue_bug.py,
|
|
uncompyle6/parsers/parse3.py: 3.2 WhileTrue grammar bug
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/09_whiletrue_bug.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Python 3 "while True" bug
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* DECOMPYLE-2.4-CHANGELOG.txt, HISTORY.md, MANIFEST.in: Dan Pascu's
|
|
contribution via Dan
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* HISTORY.md: Another history tweak
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* HISTORY.md, uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner27.py: Some
|
|
grammar cleanup
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/05_closure_bug.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Track recent lc changes in
|
|
fragment semantics
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/07_closure_bug2.py: Another closure
|
|
wrapping bug
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/05_closure_bug.py,
|
|
uncompyle6/parsers/parse3.py: Another Python 3 closure grammar bug
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* HISTORY.md: More small history tweaks
|
|
|
|
2016-05-09 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/11-list-if.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: Fix
|
|
Python 3 list comprehansion closure bug
|
|
|
|
2016-05-08 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/operation_logic/05_dup_top_two.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Python 3
|
|
DUP_TOP_TWO bug
|
|
|
|
2016-05-08 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/looping/11_if_while_bug.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py: DRY parse{2,3} code Add test for last bug.
|
|
|
|
2016-05-08 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Fix
|
|
another if/loop parse bug
|
|
|
|
2016-05-08 rocky <rocky@gnu.org>
|
|
|
|
* HISTORY.md, uncompyle6/main.py: Go over history yet again.
|
|
|
|
2016-05-08 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/10-list-ifnot.py,
|
|
uncompyle6/main.py, uncompyle6/parser.py: come_from_opt handles
|
|
and/or precidence properly main.py: give a better error message when file is not found.
|
|
|
|
2016-05-08 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Semantic routine nonterminal typo
|
|
|
|
2016-05-08 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/looping/11_for_if_loopback2.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse3.py: Yet another
|
|
Python 3.x COME_FROM grammar problem
|
|
|
|
2016-05-08 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/looping/10_for_if_loopback.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner32.py: 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 rocky <rocky@gnu.org>
|
|
|
|
* HISTORY.md, test/simple_source/branching/10_if_pass.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner35.py:
|
|
Fix 3.5 if..pass bug Update HISTORY.MD to include Dan Pascu. Some minor doc corrections
|
|
|
|
2016-05-08 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py: DRY scanner 3.{4,5} code
|
|
|
|
2016-05-07 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/07_classparam.py,
|
|
uncompyle6/parsers/parse3.py: Python 3 build class parsing
|
|
|
|
2016-05-07 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/expression/05_yield_from.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner35.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Handle Python 3 yield from Start dealing with MAKE_FUNCTION flags - not done yet.
|
|
|
|
2016-05-06 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/comprehension/10-genexpr.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: More Python3 deparsing - grammar rule genexpr - More Python3 docstring formatted
|
|
|
|
2016-05-06 rocky <rocky@gnu.org>
|
|
|
|
* bin/pydisassemble, setup.py: Administrivia setup.py: don't need to import pkg_resources pydisassemble: give an error is no file or directory is given usage should go to stderr, not stdout
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* README.rst, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Minor tweaks
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/semantics/pysource.py: All Python 2.7 lib files
|
|
decompile
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/05_try_finally_pass.py,
|
|
test/simple_source/stmts/10_if_break_finally.py,
|
|
uncompyle6/opcodes/opcode_27.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: More
|
|
Python 2 and 3 deparsing bugs fixed * while + if break * try + finall /pass
|
|
|
|
2016-05-05 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Again, not GPL3 but MIT
|
|
|
|
2016-05-05 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py, uncompyle6/opcodes/opcode_27.py: Start
|
|
PYPY 2.7 tolerance
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.3.4
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* .travis.yml: Remove pypy3 add python 3.2 testing Reorder list for testing preference
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* .travis.yml: Remove pypy
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* Makefile, test/Makefile, uncompyle6/semantics/pysource.py: Fix up
|
|
3.2 tests Remove pypy
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* .travis.yml: Try pypy and pypy3
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/def/05_abc_class.py,
|
|
test/simple_source/def/06_classbug.py, uncompyle6/parsers/parse3.py:
|
|
Python 3.5 abc.py bug distilled
|
|
|
|
2016-05-05 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/dis35.py, uncompyle6/scanners/scanner35.py:
|
|
Add cross-Python-protable 3.5 dis module
|
|
|
|
2016-05-04 rocky <rocky@gnu.org>
|
|
|
|
* test/simple_source/stmts/05_with.py,
|
|
uncompyle6/opcodes/opcode_35.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner35.py:
|
|
Handle 3.5 with [as] scanner35.py: Fix a small variable-name typo
|
|
|
|
2016-05-03 rocky <rocky@gnu.org>
|
|
|
|
* : One more test
|
|
|
|
2016-05-03 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/scanners/scanner35.py:
|
|
Don't repeat next_except_jump
|
|
|
|
2016-05-03 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, requirements.txt: Wrong package name
|
|
|
|
2016-05-03 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, requirements.txt, setup.py: More package
|
|
administrivia
|
|
|
|
2016-05-03 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanner.py: Remove one more old-style Python class
|
|
|
|
2016-05-03 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/scanners/scanner27.py: DRY Python 2.7 scanner more
|
|
|
|
2016-05-03 rocky <rocky@gnu.org>
|
|
|
|
* MANIFEST.in: Include LICENSE in package
|
|
|
|
2016-05-03 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
|
|
2.3.3
|
|
|
|
2016-05-02 rocky <rocky@gnu.org>
|
|
|
|
* README.rst: Be more explicit that we need Python 2.6 or later
|
|
|
|
2016-05-02 rocky <rocky@gnu.org>
|
|
|
|
* : commit feec241da88107b97bbdfbabeb3ae7131a7aa923 Author: rocky
|
|
<rocky@gnu.org> Date: Mon May 2 21:20:17 2016 -0400
|
|
|
|
2016-05-02 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Note relation to other uncompyle forks Add some other minor corrections and additions as well.
|
|
|
|
2016-05-02 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py: Trivial spacing change
|
|
|
|
2016-05-02 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py, bin/pydisassemble,
|
|
bin/uncompyle6, setup.py, uncompyle6/__init__.py,
|
|
uncompyle6/version.py: Add -V | --version and simplfy changing it
|
|
|
|
2016-05-01 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/__init__.py: Expose uncompyle_file
|
|
|
|
2016-05-01 rocky <rocky@gnu.org>
|
|
|
|
* test/Makefile, uncompyle6/semantics/pysource.py: Bug
|
|
|
|
2016-05-01 rocky <rocky@gnu.org>
|
|
|
|
* test/Makefile, test/simple_source/expression/05_const_map.py: Add
|
|
test for last fix. Drop 2.5 test until we figure out what's wrong
|
|
|
|
2016-05-01 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner35.py,
|
|
uncompyle6/semantics/pysource.py: Bug in 3.5 constant map parsing
|
|
|
|
2016-05-01 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/__init__.py: Export module load and fns load_file,
|
|
load_module
|
|
|
|
2016-05-01 rocky <rocky@gnu.org>
|
|
|
|
* __pkginfo__.py, setup.py, uncompyle6/marsh.py: License is MIT marsh.py: remove unused import
|
|
|
|
2016-05-01 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py: Forgot to define Python3ParserSingle
|
|
|
|
2016-05-01 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py: Start to DRY Python2 and Python3
|
|
grammars Separate out 3.2, and 3.5+ specific grammar code
|
|
|
|
2016-04-30 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, NEWS, README.rst, __pkginfo__.py: Get ready for release
|
|
2.3.1
|
|
|
|
2016-04-30 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/astnode.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/pysource.py: 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 rocky <rocky@gnu.org>
|
|
|
|
* test/Makefile, test/simple_source/def/06_classbug.py,
|
|
test/test_pythonlib.py: Test optimized Python code and Python 3.2
|
|
|
|
2016-04-30 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py: Pevious commit grammar change is
|
|
Python 3.5 and up
|
|
|
|
2016-04-30 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/parse3.py: 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-28 rocky <rocky@gnu.org>
|
|
|
|
* requirements.txt, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
spark -> spark_parser
|
|
|
|
2016-04-28 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parsers/spark.py: Really remove spark - Use external
|
|
package instead
|
|
|
|
2016-04-27 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #8 from rocky/external-spark External spark
|
|
|
|
2016-04-27 rocky <rocky@gnu.org>
|
|
|
|
* .travis.yml, circle.yml: Note dependencies on spark
|
|
|
|
2016-04-27 rocky <rocky@gnu.org>
|
|
|
|
* .gitignore, README.rst, requirements.txt, uncompyle6/parser.py,
|
|
uncompyle6/parsers/astnode.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Use external spark now.
|
|
|
|
2016-04-20 rocky <rocky@gnu.org>
|
|
|
|
* circle.yml: Back to 2.7.8
|
|
|
|
2016-04-20 rocky <rocky@gnu.org>
|
|
|
|
* circle.yml: Try python 2.7.10
|
|
|
|
2016-04-19 rocky <rocky@gnu.org>
|
|
|
|
* README.rst: Remove link to Mysterie uncompyle2 per request
|
|
|
|
2016-04-19 rocky <rocky@gnu.org>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py: Get ready for release 2.2.0
|
|
|
|
2016-04-18 rocky <rocky@gnu.org>
|
|
|
|
* README.rst: Another typo
|
|
|
|
2016-04-18 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #7 from rocky/single-compile Support single-mode compile
|
|
|
|
2016-04-18 rocky <rocky@gnu.org>
|
|
|
|
* README.rst: Doc typo
|
|
|
|
2016-04-18 Thomas Grainger <tom.grainger@procensus.com>
|
|
|
|
* __pkginfo__.py, setup.cfg, setup.py: declare Python3 support in
|
|
wheel and trove
|
|
|
|
2016-04-18 rocky <rocky@gnu.org>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py: Start to DRY Python 2 and Python 3
|
|
grammar code Move common code to parser.py
|
|
|
|
2016-04-18 rocky <rocky@gnu.org>
|
|
|
|
* pytest/test_single_compile.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Add
|
|
simgle-mode compilation
|
|
|
|
2016-04-17 rocky <rocky@gnu.org>
|
|
|
|
* pytest/test_single_compile.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/pysource.py: Towards single compilation
|
|
|
|
2016-04-10 rocky <rb@dustyfeet.com>
|
|
|
|
* : Back off if_else_ternary pending Fails on Python 3.4 investigation Python 3.5 works though
|
|
|
|
2016-04-10 rocky <rb@dustyfeet.com>
|
|
|
|
* .gitignore: Test administrivia
|
|
|
|
2016-04-07 rocky <rb@dustyfeet.com>
|
|
|
|
* HISTORY.md, README.rst,
|
|
test/simple_source/branching/10_if_else_ternary.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Handle
|
|
Ternary "or". Remove mention of uncompyle3 uncompyle3 removed per Mysterie's request [Fixes Issue #5]
|
|
|
|
2016-03-11 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile: 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-02-23 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* : Merge pull request #3 from lelicopter/master Bug correction (parse cmd options)
|
|
|
|
2016-01-07 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/bytecompile-tests, test/test_pythonlib.py: Add
|
|
Python 3.5 tests that we can do.
|
|
|
|
2016-01-05 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* HISTORY.md: Grammar fixes
|
|
|
|
2016-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py: Get ready for release 2.1.3
|
|
|
|
2016-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/opcodes/opcode_23.py, uncompyle6/opcodes/opcode_25.py,
|
|
uncompyle6/opcodes/opcode_26.py, uncompyle6/opcodes/opcode_27.py,
|
|
uncompyle6/opcodes/opcode_32.py, uncompyle6/opcodes/opcode_33.py,
|
|
uncompyle6/opcodes/opcode_34.py, uncompyle6/opcodes/opcode_35.py,
|
|
uncompyle6/opcodes/opcode_3x.py, uncompyle6/parser.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner33.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/scanners/scanner35.py: Start to DRY opcode code. Limited
|
|
support for decopyling Python 3.5
|
|
|
|
2016-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/ok_lib3.4/antigravity.py,
|
|
test/ok_lib3.4/bisect.py, test/test_pythonlib.py: Start 3.4 library
|
|
verify tests
|
|
|
|
2016-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Regularize spelling of bytecode
|
|
|
|
2016-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, README.rst: Add download shield. Add check-rst target
|
|
|
|
2016-01-02 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Update README.rst
|
|
|
|
2016-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Track recent source class
|
|
semantic actions in fragment actions
|
|
|
|
2016-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanner.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py:
|
|
Make ScannerXX() initialization the same on Python 2.x and 3.x
|
|
|
|
2016-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile,
|
|
test/simple_source/comprehension/05_list_comprehension.py,
|
|
test/simple_source/def/02_closure.py, test/test_pythonlib.py,
|
|
uncompyle6/main.py, uncompyle6/verify.py: Verify 3.4 bytecode.
|
|
verify API call bug fixed.
|
|
|
|
2016-01-02 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/def/05_class.py, uncompyle6/load.py,
|
|
uncompyle6/main.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/pysource.py: Python 3 class deparsing. stop
|
|
earlier in uncompyle6 on a syntax error.
|
|
|
|
2016-01-01 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Fix make_closure compilation from
|
|
2.x of 3.3 bytecode
|
|
|
|
2016-01-01 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/def/02_closure.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: Work
|
|
on MAKE_CLOSURE rules for Python 3.3
|
|
|
|
2015-12-31 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: track source deparsing
|
|
superclass bug fix
|
|
|
|
2015-12-31 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, __pkginfo__.py: Get ready for release 2.1.2
|
|
|
|
2015-12-31 rocky <rb@dustyfeet.com>
|
|
|
|
* test/base_tests/compile_tests,
|
|
test/base_tests/python2.7/test_applyEquiv.py,
|
|
test/base_tests/python2.7/test_augmentedAssign.py,
|
|
test/base_tests/python2.7/test_class.py,
|
|
test/base_tests/python2.7/test_del.py,
|
|
test/base_tests/python2.7/test_divide_future.py,
|
|
test/base_tests/python2.7/test_divide_no_future.py,
|
|
test/base_tests/python2.7/test_docstring.py,
|
|
test/base_tests/python2.7/test_empty.py,
|
|
test/base_tests/python2.7/test_exceptions.py,
|
|
test/base_tests/python2.7/test_exec.py,
|
|
test/base_tests/python2.7/test_expressions.py,
|
|
test/base_tests/python2.7/test_extendedImport.py,
|
|
test/base_tests/python2.7/test_extendedPrint.py,
|
|
test/base_tests/python2.7/test_extendedarg.py-notyet,
|
|
test/base_tests/python2.7/test_functions.py,
|
|
test/base_tests/python2.7/test_global.py,
|
|
test/base_tests/python2.7/test_globals.py,
|
|
test/base_tests/python2.7/test_import.py,
|
|
test/base_tests/python2.7/test_import_as.py,
|
|
test/base_tests/python2.7/test_integers.py,
|
|
test/base_tests/python2.7/test_iterators.py,
|
|
test/base_tests/python2.7/test_lambda.py,
|
|
test/base_tests/python2.7/test_listComprehensions.py,
|
|
test/base_tests/python2.7/test_loops.py,
|
|
test/base_tests/python2.7/test_loops2.py,
|
|
test/base_tests/python2.7/test_mine.py,
|
|
test/base_tests/python2.7/test_misc.py,
|
|
test/base_tests/python2.7/test_nested_elif.py,
|
|
test/base_tests/python2.7/test_nested_scopes.py,
|
|
test/base_tests/python2.7/test_prettyprint.py,
|
|
test/base_tests/python2.7/test_print.py,
|
|
test/base_tests/python2.7/test_print_to.py,
|
|
test/base_tests/python2.7/test_single_stmt.py,
|
|
test/base_tests/python2.7/test_slices.py,
|
|
test/base_tests/python2.7/test_tuple_params.py-notyet,
|
|
test/base_tests/python2.7/test_tuples.py-notyet,
|
|
test/base_tests/python2.7/test_yield.py,
|
|
test/base_tests/python3.4/__init__.py: Remove tests we will never
|
|
use
|
|
|
|
2015-12-31 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml, Makefile: Try travis testing on Python 3.5. Fix up
|
|
Makefile to avoid pytest on 3.5 for now
|
|
|
|
2015-12-31 rocky <rb@dustyfeet.com>
|
|
|
|
* test/ok_lib2.7/dircache.py, test/ok_lib2.7/dis.py: Add a few tests
|
|
from Python 2.7 standard library
|
|
|
|
2015-12-31 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/def/05_class.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Handle Python 3.3 > dotted class names
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Note Python 3.5
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, test/Makefile, uncompyle6/__init__.py,
|
|
uncompyle6/disas.py, uncompyle6/load.py, uncompyle6/magics.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner3.py: Allow Python
|
|
3.5 to decomplyle other versions. No Python 3.5 bytecode support
|
|
just yet though.
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Show details on parsing assert
|
|
failures.
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Remove accidental schmutz. Try using pattr on 3.4 to get fn names
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py: Parses another variation of Python3
|
|
try/except. Reinstate some tests
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* : Reinstate list comprehension test. I think we've found/fixed the
|
|
initialization bug.
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/code.py, uncompyle6/disas.py, uncompyle6/main.py,
|
|
uncompyle6/marsh.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py, uncompyle6/verify.py: Start using
|
|
our replacement for inspect.iscode
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/spark.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Doc changes.
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/spark.py: document GenericASTTraversal.preorder
|
|
and default.
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Walker->SourceWalker
|
|
Traverser->FragmentsWalker
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py: Tidy parse3 grammer a little
|
|
|
|
2015-12-30 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/exception/25_try_except.py,
|
|
test/test_pythonlib.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/semantics/pysource.py:
|
|
Towards Python3 getting try/except working more often.
|
|
|
|
2015-12-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Fix another cross-version bug:
|
|
eliminate version-specific library 'dis' and use corresponding
|
|
version-indepent routine instead.
|
|
|
|
2015-12-29 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/marsh.py: Fix Python 2 cross deparsing
|
|
pythond bytecode tuples co_consts, co_names, co_varnames. Reinstate
|
|
cross Python 2-3 uncompiling
|
|
|
|
2015-12-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner34.py: Syntax error typo
|
|
|
|
2015-12-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/marsh.py: Make sure internObjects is (re)initialized
|
|
|
|
2015-12-29 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parser.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/verify.py: inspect.iscode -> hasattr for now until we
|
|
write a cross-version iscode
|
|
|
|
2015-12-29 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, test/Makefile, uncompyle6/opcodes/opcode_32.py,
|
|
uncompyle6/opcodes/opcode_33.py, uncompyle6/opcodes/opcode_34.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner32.py:
|
|
scanner3: Python 2.6 compatibility: change set initializations. Get
|
|
rid of * import opcode_*: only a little of the much-needed larger
|
|
cleanup Makefile: remove 3.x bytecode checking from Python 2.x for
|
|
now. DRY Makefile a little bit (but more is needed)
|
|
|
|
2015-12-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanners/scanner3.py: Python 2.6.9 compatibility
|
|
|
|
2015-12-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/main.py, uncompyle6/marsh.py: Marshal loading of =
|
|
>python 3.4 from Python < 3.4
|
|
|
|
2015-12-28 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/disas.py, uncompyle6/load.py, uncompyle6/main.py,
|
|
uncompyle6/marsh.py, uncompyle6/scanners/scanner3.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Add Python3 marshal codes and start to handle cross-version Python
|
|
code object types, introducing scan.Code3
|
|
|
|
2015-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/load.py, uncompyle6/marsh.py: Possibly closer to
|
|
getting 2.7 to read 3.4 bytecode
|
|
|
|
2015-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/load.py, uncompyle6/main.py, uncompyle6/marsh.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner33.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/semantics/pysource.py: Fix up Python 2.x's ability to get
|
|
code from Python 3.x's bytecode
|
|
|
|
2015-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pythonlib.py: defer some tests
|
|
|
|
2015-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* : commit 7c5b8d803c5b76b185ebc8f6e7587fa64ef531e9 Author: rocky
|
|
<rb@dustyfeet.com> Date: Sun Dec 27 16:49:37 2015 -0500
|
|
|
|
2015-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* : 3.2 bytecode
|
|
|
|
2015-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, README.rst, __pkginfo__.py: Get ready for release
|
|
2.1.1
|
|
|
|
2015-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* ChangeLog, NEWS, README.rst, __pkginfo__.py,
|
|
test/bytecompile-tests, uncompyle6/opcodes/Makefile,
|
|
uncompyle6/opcodes/opcode_23.py, uncompyle6/opcodes/opcode_24.py,
|
|
uncompyle6/opcodes/opcode_25.py, uncompyle6/opcodes/opcode_26.py,
|
|
uncompyle6/opcodes/opcode_27.py, uncompyle6/opcodes/opcode_32.py,
|
|
uncompyle6/opcodes/opcode_33.py, uncompyle6/opcodes/opcode_34.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner33.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
DRY Python3 scanner code. Some cross version handling fixed. Some
|
|
Python 3.2 and 3.3 deparse fixes.
|
|
|
|
2015-12-27 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, test/bytecompile-tests, uncompyle6/opcodes/Makefile,
|
|
uncompyle6/opcodes/opcode_23.py, uncompyle6/opcodes/opcode_24.py,
|
|
uncompyle6/opcodes/opcode_25.py, uncompyle6/opcodes/opcode_26.py,
|
|
uncompyle6/opcodes/opcode_27.py, uncompyle6/opcodes/opcode_32.py,
|
|
uncompyle6/opcodes/opcode_33.py, uncompyle6/opcodes/opcode_34.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner33.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
DRY Python3 scanner code. Some cross version handling fixed. Some
|
|
Python 3.2 and 3.3 deparse fixes.
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml, test/Makefile, uncompyle6/verify.py: Running native
|
|
on Python 3.3 needs more work
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/test_pythonlib.py: Add ok-2.7 tests for 3.4
|
|
full testing
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/bytecompile-tests, test/test_pythonlib.py: Add
|
|
verify tests. Add Python 2.6 bytecode and use.
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Add node and template code to
|
|
cleanup "for" handling
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml: Try Python 2.6 testing on travis
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile: For testing we can't 3.3 bytecodes on 2.7 yet, so
|
|
use 3.2
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml, Makefile, requirements-dev.txt, test/Makefile,
|
|
test/bytecompile-tests, test/test_pythonlib.py,
|
|
uncompyle6/__init__.py, uncompyle6/opcodes/opcode_32.py,
|
|
uncompyle6/opcodes/opcode_33.py, uncompyle6/opcodes/opcode_34.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner33.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/semantics/pysource.py: Fix up Python 3.2, 3.3, and 3.4
|
|
cross-version scanners Try travis 2.6 and 3.3
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml: Travis: try checking 3.4
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/exception/05_try_except.py,
|
|
test/simple_source/looping/10_while.py,
|
|
test/simple_source/looping/while.py,
|
|
test/simple_source/simple_stmts/00_assign.py,
|
|
test/simple_source/simple_stmts/00_import.py,
|
|
test/simple_source/simple_stmts/00_pass.py,
|
|
test/simple_source/simple_stmts/15_assert.py,
|
|
test/simple_source/stmts/00_assign.py,
|
|
test/simple_source/stmts/00_import.py,
|
|
test/simple_source/stmts/00_pass.py,
|
|
test/simple_source/stmts/15_assert.py,
|
|
test/simple_source/stmts/15_for_if.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner34.py:
|
|
Fix up looping by reinstating JUMP_ABSOLUTE -> JUMP_BACK or CONTINUE
|
|
get jump offsets into jump attributes. Fix up 3.2 scanner paritally
|
|
and use that in 3.4 for in cross version disassembly.
|
|
|
|
2015-12-26 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/exception/01_try_except.py,
|
|
test/simple_source/exception/05_try_except.py, uncompyle6/main.py,
|
|
uncompyle6/opcodes/opcode_34.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/semantics/pysource.py: Python3 try/except handling
|
|
improvements. Add Walker exception and use that: fixes erroneous
|
|
uncompyle success message on parse error.
|
|
|
|
2015-12-25 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/exception/01_try_except.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: WIP redo
|
|
try/except for Python3
|
|
|
|
2015-12-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Fix bugs in using pysource from
|
|
fragments.
|
|
|
|
2015-12-25 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/Makefile, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Two modes of disassembly, one
|
|
where we show hidden code and one where we don't.
|
|
|
|
2015-12-25 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: README.rst typos
|
|
|
|
2015-12-25 rocky <rb@dustyfeet.com>
|
|
|
|
* .gitignore, ChangeLog, MANIFEST.in, NEWS, __pkginfo__.py,
|
|
test/Makefile: Get ready for releaes 2.0.0
|
|
|
|
2015-12-25 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_deparse.py: Port deparse test from python-deparse to
|
|
py.test
|
|
|
|
2015-12-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Remove Python3 class __qualname__
|
|
assignment. Change LOAD_NAME to LOAD_CLASSNAME to make parsing more
|
|
reliable and intentional.
|
|
|
|
2015-12-24 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/def/01_class.py,
|
|
test/simple_source/exception/05_try_except.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Improve Python3 class definition
|
|
handling
|
|
|
|
2015-12-24 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/verify.py: One more place for API change
|
|
|
|
2015-12-24 rocky <rb@dustyfeet.com>
|
|
|
|
* pytest/test_load.py, test/dis-compare.py, uncompyle6/disas.py,
|
|
uncompyle6/load.py, uncompyle6/main.py, uncompyle6/verify.py: Show
|
|
embeded timestamp of byte-decompiled file
|
|
|
|
2015-12-23 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Lint
|
|
|
|
2015-12-23 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/exception/05_try_except.py,
|
|
uncompyle6/parsers/parse3.py: WIP: Python3 exceptions
|
|
|
|
2015-12-23 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/simple_stmts/00_import.py,
|
|
test/simple_source/simple_stmts/00_pass.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Start Python3 class(superclass) handling
|
|
|
|
2015-12-23 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/def/01_class.py, uncompyle6/load.py,
|
|
uncompyle6/main.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/semantics/pysource.py: parse2.py, pysource.py: add
|
|
buildclass nonterminal to structure tree better and make more
|
|
similar to Python3 load.py: handle magic errors better main.py:
|
|
correct use when passing a .py instead of a .pyc better and a
|
|
message err when file not found. pysource.py: fix up main
|
|
docstring; code moved from main.py
|
|
|
|
2015-12-23 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py: Add fragmnet offsets for 'from
|
|
x import..'
|
|
|
|
2015-12-22 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py: Propogate offsets in imports.
|
|
Added a new %x format specifier.
|
|
|
|
2015-12-22 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/def/01_class.py,
|
|
test/simple_source/def/02_def.py, test/simple_source/def/def0.py,
|
|
test/simple_source/def/def1.py, uncompyle6/__init__.py,
|
|
uncompyle6/opcodes/opcode_25.py, uncompyle6/opcodes/opcode_26.py,
|
|
uncompyle6/opcodes/opcode_27.py, uncompyle6/opcodes/opcode_34.py,
|
|
uncompyle6/parsers/astnode.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/parsers/spark.py,
|
|
uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py:
|
|
Allow comments in grammar rules. Start working on Python3 class (not
|
|
finished). More test organization.
|
|
|
|
2015-12-22 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple_source/def/01_class.py,
|
|
test/simple_source/def/10_class.py,
|
|
uncompyle6/opcodes/opcode_32.py, uncompyle6/opcodes/opcode_34.py,
|
|
uncompyle6/parsers/parse3.py: Remove Python2 buitin "print" from
|
|
Python3's grammr. Start class tests
|
|
|
|
2015-12-22 rocky <rb@dustyfeet.com>
|
|
|
|
* bin/uncompyle6, uncompyle6/main.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/spark.py,
|
|
uncompyle6/semantics/pysource.py: main.py, pysource.py DRY
|
|
deparse_code from main. Is better on showing exception errrors such
|
|
as when a pyc file is not found uncompyle6: Hook in --grammar option
|
|
to showing grammar. rules. Default now does not show timestamp.
|
|
|
|
2015-12-22 rocky <rb@dustyfeet.com>
|
|
|
|
* bin/uncompyle6, pytest/test_disasm.py,
|
|
pytest/testdata/if-2.7.right, pytest/testdata/ifelse-2.7.right,
|
|
test/Makefile, test/add-test.py,
|
|
test/simple_source/branching/05_if.py,
|
|
test/simple_source/branching/05_ifelse.py,
|
|
test/simple_source/branching/if.py,
|
|
test/simple_source/branching/ifelse.py,
|
|
test/simple_source/call_arguments/01_positional.py,
|
|
test/simple_source/call_arguments/10_keyword.py,
|
|
test/simple_source/call_arguments/keyword.py,
|
|
test/simple_source/call_arguments/positional.py,
|
|
test/simple_source/exception/20_try_except.py,
|
|
test/simple_source/exception/25_try_except.py,
|
|
test/simple_source/misc/assert.py,
|
|
test/simple_source/misc/assign_none.py,
|
|
test/simple_source/operation_logic/01_boolean.py,
|
|
test/simple_source/operation_logic/10_mixed_boolean.py,
|
|
test/simple_source/operation_logic/or.py,
|
|
test/simple_source/simple_stmts/15_assert.py,
|
|
test/simple_source/slice/01_slice.py,
|
|
test/simple_source/slice/02_slice.py, uncompyle6/main.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/parsers/spark.py,
|
|
uncompyle6/semantics/pysource.py: Add spark option to show grammer.
|
|
Revise uncompyle options. Start to reorganize tests more
|
|
|
|
2015-12-21 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: grammar
|
|
|
|
2015-12-21 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Add meat to CI tag
|
|
|
|
2015-12-21 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Use travis badge for now
|
|
|
|
2015-12-21 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Make README.rst reflect current situation better
|
|
|
|
2015-12-21 rocky <rb@dustyfeet.com>
|
|
|
|
* HISTORY.md, test/simple_source/README,
|
|
test/simple_source/exception/20_try_except.py,
|
|
test/simple_source/looping/10_for.py,
|
|
test/simple_source/looping/for.py, uncompyle6/main.py,
|
|
uncompyle6/opcodes/opcode_34.py, uncompyle6/parsers/spark.py,
|
|
uncompyle6/scanners/scanner34.py: Bug in for loop with try. Add more
|
|
of 2.7's COME_FROM statements. spark.py: add tracing reduce rules.
|
|
main: reduce cutsines. Start history
|
|
|
|
2015-12-21 rocky <rb@dustyfeet.com>
|
|
|
|
* test/bytecode_2.7/README, test/bytecode_3.2/README,
|
|
test/bytecode_3.4/README, test/bytecompile-tests,
|
|
test/simple_source/README,
|
|
test/simple_source/exception/01_try_except.py,
|
|
test/simple_source/misc/assign.py,
|
|
test/simple_source/misc/assign_none_str.py,
|
|
test/simple_source/simple_stmts/00_assign.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py:
|
|
Start Python3 execption handling
|
|
|
|
2015-12-21 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple-source/README, test/simple-source/branching/if.py,
|
|
test/simple-source/branching/ifelse.py,
|
|
test/simple-source/call_arguments/keyword.py,
|
|
test/simple-source/call_arguments/positional.py,
|
|
test/simple-source/comprehension/01-lc.py,
|
|
test/simple-source/comprehension/forelse.py,
|
|
test/simple-source/def/def0.py, test/simple-source/def/def1.py,
|
|
test/simple-source/looping/for.py,
|
|
test/simple-source/looping/while.py,
|
|
test/simple-source/misc/assert.py,
|
|
test/simple-source/misc/assign.py,
|
|
test/simple-source/misc/assign_none.py,
|
|
test/simple-source/misc/assign_none_str.py,
|
|
test/simple-source/operation_binary/add.py,
|
|
test/simple-source/operation_binary/and.py,
|
|
test/simple-source/operation_binary/divide_floor.py,
|
|
test/simple-source/operation_binary/divide_true.py,
|
|
test/simple-source/operation_binary/modulo.py,
|
|
test/simple-source/operation_binary/multiply.py,
|
|
test/simple-source/operation_binary/or.py,
|
|
test/simple-source/operation_binary/power.py,
|
|
test/simple-source/operation_binary/shift_left.py,
|
|
test/simple-source/operation_binary/shift_right.py,
|
|
test/simple-source/operation_binary/subscription.py,
|
|
test/simple-source/operation_binary/subtract.py,
|
|
test/simple-source/operation_binary/xor.py,
|
|
test/simple-source/operation_comparison/equal.py,
|
|
test/simple-source/operation_comparison/greater.py,
|
|
test/simple-source/operation_comparison/greater_equal.py,
|
|
test/simple-source/operation_comparison/less.py,
|
|
test/simple-source/operation_comparison/less_equal.py,
|
|
test/simple-source/operation_comparison/notequal.py,
|
|
test/simple-source/operation_inplace/add.py,
|
|
test/simple-source/operation_inplace/and.py,
|
|
test/simple-source/operation_inplace/divide_floor.py,
|
|
test/simple-source/operation_inplace/divide_true.py,
|
|
test/simple-source/operation_inplace/modulo.py,
|
|
test/simple-source/operation_inplace/multiply.py,
|
|
test/simple-source/operation_inplace/or.py,
|
|
test/simple-source/operation_inplace/power.py,
|
|
test/simple-source/operation_inplace/shift_left.py,
|
|
test/simple-source/operation_inplace/shift_right.py,
|
|
test/simple-source/operation_inplace/subtract.py,
|
|
test/simple-source/operation_inplace/xor.py,
|
|
test/simple-source/operation_logic/and.py,
|
|
test/simple-source/operation_logic/complex1.py,
|
|
test/simple-source/operation_logic/complex2.py,
|
|
test/simple-source/operation_logic/complex3.py,
|
|
test/simple-source/precedence/left.py,
|
|
test/simple-source/precedence/right.py,
|
|
test/simple-source/precedence/structure.py,
|
|
test/simple-source/slice/01-slice.py, test/simple_source/README,
|
|
test/simple_source/branching/if.py,
|
|
test/simple_source/branching/ifelse.py,
|
|
test/simple_source/call_arguments/keyword.py,
|
|
test/simple_source/call_arguments/positional.py,
|
|
test/simple_source/comprehension/01_list_comprehension.py,
|
|
test/simple_source/comprehension/forelse.py,
|
|
test/simple_source/def/def0.py, test/simple_source/def/def1.py,
|
|
test/simple_source/exception/01_try_except.py,
|
|
test/simple_source/looping/for.py,
|
|
test/simple_source/looping/while.py,
|
|
test/simple_source/misc/assert.py,
|
|
test/simple_source/misc/assign.py,
|
|
test/simple_source/misc/assign_none.py,
|
|
test/simple_source/misc/assign_none_str.py,
|
|
test/simple_source/operation_binary/add.py,
|
|
test/simple_source/operation_binary/and.py,
|
|
test/simple_source/operation_binary/divide_floor.py,
|
|
test/simple_source/operation_binary/divide_true.py,
|
|
test/simple_source/operation_binary/modulo.py,
|
|
test/simple_source/operation_binary/multiply.py,
|
|
test/simple_source/operation_binary/or.py,
|
|
test/simple_source/operation_binary/power.py,
|
|
test/simple_source/operation_binary/shift_left.py,
|
|
test/simple_source/operation_binary/shift_right.py,
|
|
test/simple_source/operation_binary/subscription.py,
|
|
test/simple_source/operation_binary/subtract.py,
|
|
test/simple_source/operation_binary/xor.py,
|
|
test/simple_source/operation_comparison/equal.py,
|
|
test/simple_source/operation_comparison/greater.py,
|
|
test/simple_source/operation_comparison/greater_equal.py,
|
|
test/simple_source/operation_comparison/less.py,
|
|
test/simple_source/operation_comparison/less_equal.py,
|
|
test/simple_source/operation_comparison/notequal.py,
|
|
test/simple_source/operation_inplace/add.py,
|
|
test/simple_source/operation_inplace/and.py,
|
|
test/simple_source/operation_inplace/divide_floor.py,
|
|
test/simple_source/operation_inplace/divide_true.py,
|
|
test/simple_source/operation_inplace/modulo.py,
|
|
test/simple_source/operation_inplace/multiply.py,
|
|
test/simple_source/operation_inplace/or.py,
|
|
test/simple_source/operation_inplace/power.py,
|
|
test/simple_source/operation_inplace/shift_left.py,
|
|
test/simple_source/operation_inplace/shift_right.py,
|
|
test/simple_source/operation_inplace/subtract.py,
|
|
test/simple_source/operation_inplace/xor.py,
|
|
test/simple_source/operation_logic/or.py,
|
|
test/simple_source/operation_unary/invert.py,
|
|
test/simple_source/operation_unary/iter.py,
|
|
test/simple_source/operation_unary/negative.py,
|
|
test/simple_source/operation_unary/not.py,
|
|
test/simple_source/operation_unary/positive.py,
|
|
test/simple_source/precedence/left.py,
|
|
test/simple_source/precedence/right.py,
|
|
test/simple_source/precedence/structure.py,
|
|
test/simple_source/slice/01_slice.py: Regularize test names.
|
|
|
|
2015-12-21 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/simple-source/slice/01-slice.py,
|
|
uncompyle6/opcodes/opcode_32.py, uncompyle6/opcodes/opcode_34.py,
|
|
uncompyle6/parsers/astnode.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanners/tok.py,
|
|
uncompyle6/semantics/pysource.py: Start Python3 slices. Split off
|
|
token routine.
|
|
|
|
2015-12-21 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py, uncompyle6/marsh.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Start
|
|
slice and build list on Python3. Do sanity check on marshal load of
|
|
code.
|
|
|
|
2015-12-20 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, bin/uncompyle6, pytest/test_load.py, test/Makefile,
|
|
test/test_pythonlib.py, uncompyle6/__init__.py,
|
|
uncompyle6/deparser.py, uncompyle6/disas.py, uncompyle6/load.py,
|
|
uncompyle6/main.py, uncompyle6/semantics/__init__.py,
|
|
uncompyle6/semantics/fragments.py,
|
|
uncompyle6/semantics/pysource.py, uncompyle6/verify.py,
|
|
uncompyle6/walker.py: Part of a much needed cleanup. Move semantics
|
|
routines into its own directory. Move out lots of stuff from
|
|
__init__ to their own files. Add file loading tests. Document AST
|
|
handling a tad more complete.
|
|
|
|
2015-12-20 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/simple-source/misc/assign_none.py,
|
|
test/simple-source/misc/assign_none_str.py, uncompyle6/marsh.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner34.py:
|
|
Python 3 decompilation from Python2
|
|
|
|
2015-12-20 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/simple-source/comprehension/01-lc.py,
|
|
test/test_pythonlib.py, uncompyle6/deparser.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/walker.py: First list comprehensions from Python3. More
|
|
test makefile hacking
|
|
|
|
2015-12-20 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/disas.py: dissasemble_file output is needed for pytest
|
|
|
|
2015-12-20 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, README.rst, test/Makefile, test/dis-compare.py,
|
|
uncompyle6/deparser.py, uncompyle6/disas.py, uncompyle6/walker.py:
|
|
Go over makefiles to make "make check" work. walker, deparser: use
|
|
zip_longest
|
|
|
|
2015-12-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/deparser.py, uncompyle6/walker.py: 3.4: correct picking
|
|
up parameter names on oa function call
|
|
|
|
2015-12-19 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/deparser.py, uncompyle6/walker.py: Python3 compatiblity
|
|
for getting precidence. n_mkfunc needs to key off of bytecode
|
|
version, not running Python version.
|
|
|
|
2015-12-19 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: rSt-style linking
|
|
|
|
2015-12-19 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst: Update what this is about
|
|
|
|
2015-12-19 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple-source/def/def0.py, test/simple-source/def/def1.py,
|
|
uncompyle6/__init__.py, uncompyle6/deparser.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/verify.py,
|
|
uncompyle6/walker.py: Python 3.4: MAKE_FUNCTION starts to work.
|
|
|
|
2015-12-19 rocky <rb@dustyfeet.com>
|
|
|
|
* LICENSE, README.rst: Docs
|
|
|
|
2015-12-19 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple-source/operation_binary/multiply.py,
|
|
test/simple-source/operation_binary/or.py,
|
|
test/simple-source/operation_binary/power.py,
|
|
test/simple-source/operation_binary/shift_left.py,
|
|
test/simple-source/operation_binary/shift_right.py,
|
|
test/simple-source/operation_binary/subscription.py,
|
|
test/simple-source/operation_binary/subtract.py,
|
|
test/simple-source/operation_binary/xor.py,
|
|
test/simple-source/operation_comparison/equal.py,
|
|
test/simple-source/operation_comparison/greater.py,
|
|
test/simple-source/operation_comparison/greater_equal.py,
|
|
test/simple-source/operation_comparison/less.py,
|
|
test/simple-source/operation_comparison/less_equal.py,
|
|
test/simple-source/operation_comparison/notequal.py,
|
|
test/simple-source/operation_inplace/add.py,
|
|
test/simple-source/operation_inplace/and.py,
|
|
test/simple-source/operation_inplace/divide_floor.py,
|
|
test/simple-source/operation_inplace/divide_true.py,
|
|
test/simple-source/operation_inplace/modulo.py,
|
|
test/simple-source/operation_inplace/multiply.py,
|
|
test/simple-source/operation_inplace/or.py,
|
|
test/simple-source/operation_inplace/power.py,
|
|
test/simple-source/operation_inplace/shift_left.py,
|
|
test/simple-source/operation_inplace/shift_right.py,
|
|
test/simple-source/operation_inplace/subtract.py,
|
|
test/simple-source/operation_inplace/xor.py,
|
|
test/simple-source/operation_logic/and.py,
|
|
test/simple-source/operation_logic/complex1.py,
|
|
test/simple-source/operation_logic/complex2.py,
|
|
test/simple-source/operation_logic/complex3.py,
|
|
test/simple-source/precedence/left.py,
|
|
test/simple-source/precedence/right.py,
|
|
test/simple-source/precedence/structure.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner34.py:
|
|
Python 3 bytecode handles opcodes with varargs (better). Decompiling
|
|
assert works. Add more of the simple tests and their compiled
|
|
bytecode.
|
|
|
|
2015-12-18 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/disas.py, uncompyle6/opcodes/opcode_23.py: disas.py:
|
|
track load_module API change opcode_23.py: make it more like
|
|
opcode_27.py
|
|
|
|
2015-12-18 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py, uncompyle6/magics.py,
|
|
uncompyle6/marsh.py, uncompyle6/verify.py: verify.py: Don't try to
|
|
verify bytecode against compiled code if magics of running
|
|
interpreter mismatch bytecode to be compared. load_module() now
|
|
returns the magic found in the code object file.
|
|
|
|
2015-12-18 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, uncompyle6/__init__.py, uncompyle6/marsh.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner34.py: marshal.py: Python2 marshal code
|
|
shouldn't try to turn a code object into a string. parse3.py: handle
|
|
both keyword and positional function calls. scanner34.py: Remove
|
|
extra level of quoting in LOAD_CONST. Keyward handling now works
|
|
cross Python 2/3. Some other spelling and doc fixes.
|
|
|
|
2015-12-18 rocky <rb@dustyfeet.com>
|
|
|
|
* README.rst, test/simple-source/call_arguments/positional.py,
|
|
uncompyle6/disas.py, uncompyle6/parser.py,
|
|
uncompyle6/parsers/astnode.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/walker.py: Python3 postional arguments. Clean up code
|
|
more along the lines of uncompyle3.
|
|
|
|
2015-12-18 rocky <rb@dustyfeet.com>
|
|
|
|
* test/simple-source/comprehension/forelse.py, uncompyle6/disas.py:
|
|
disas.py: Do better for finding/turning a .py file into a .pyc file
|
|
across supported versions of Python. Add for else list comprehension
|
|
test
|
|
|
|
2015-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py: Restrict marshal.loads when magic is the
|
|
same. This is more stringent than using the Python major/minor
|
|
version
|
|
|
|
2015-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/bytecode_2.5/README, test/bytecompile-tests,
|
|
test/simple-source/misc/assert.py,
|
|
test/simple-source/misc/assign.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py: Frank Ebersoll's grammar fix to make
|
|
"assert isinstance(1, int)" work.
|
|
|
|
2015-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* test/ok_lib2.7/asyncore.py: Remove 2.7 lib testfile pending
|
|
further resolution
|
|
|
|
2015-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile: correct makefile build targets
|
|
|
|
2015-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, bin/pydisassemble, bin/uncompyle6,
|
|
test/bytecompile-tests, test/dis-compare.py,
|
|
uncompyle6/__init__.py, uncompyle6/disas.py,
|
|
uncompyle6/opcodes/opcode_25.py, uncompyle6/opcodes/opcode_26.py,
|
|
uncompyle6/opcodes/opcode_27.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/verify.py: Python 2.6 compatability via ericfrederich's
|
|
patch. DRY version-checking code
|
|
|
|
2015-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml, Makefile, circle.yml, pytest/test_disasm.py,
|
|
pytest/testdata/if-2.7.right, pytest/testdata/ifelse-2.7.right,
|
|
pytest/testdata/test1.right, test/Makefile,
|
|
test/bytecode_2.7/README, test/bytecode_3.4/README,
|
|
test/ok_2.6/anydbm.py, test/ok_2.7/aifc.py,
|
|
test/ok_2.7/antigravity.py, test/ok_2.7/anydbm.py,
|
|
test/ok_2.7/asynchat.py, test/ok_2.7/asyncore.py,
|
|
test/ok_2.7/atexit.py, test/ok_2.7/audiodev.py,
|
|
test/ok_2.7/base64.py, test/ok_2.7/binhex.py,
|
|
test/ok_2.7/bisect.py, test/ok_2.7/bsddb/__init__.py,
|
|
test/ok_2.7/bsddb/db.py, test/ok_2.7/bsddb/dbobj.py,
|
|
test/ok_2.7/bsddb/dbrecio.py, test/ok_2.7/bsddb/dbshelve.py,
|
|
test/ok_2.7/bsddb/dbutils.py, test/ok_2.7/calendar.py,
|
|
test/ok_2.7/cgitb.py, test/ok_2.7/chunk.py, test/ok_2.7/codeop.py,
|
|
test/ok_2.7/colorsys.py, test/ok_2.7/commands.py,
|
|
test/ok_2.7/compileall.py, test/ok_2.7/compiler/__init__.py,
|
|
test/ok_2.7/compiler/ast.py, test/ok_2.7/compiler/consts.py,
|
|
test/ok_2.7/compiler/future.py, test/ok_2.7/compiler/misc.py,
|
|
test/ok_2.7/compiler/syntax.py, test/ok_2.7/ctypes/_endian.py,
|
|
test/ok_2.7/ctypes/util.py, test/ok_2.7/ctypes/wintypes.py,
|
|
test/ok_2.7/curses/__init__.py, test/ok_2.7/curses/ascii.py,
|
|
test/ok_2.7/curses/has_key.py, test/ok_2.7/curses/panel.py,
|
|
test/ok_2.7/curses/wrapper.py, test/ok_2.7/dircache.py,
|
|
test/ok_2.7/dis.py, test/ok_lib2.6/README,
|
|
test/ok_lib2.6/anydbm.py, test/ok_lib2.7/README,
|
|
test/ok_lib2.7/aifc.py, test/ok_lib2.7/antigravity.py,
|
|
test/ok_lib2.7/anydbm.py, test/ok_lib2.7/asynchat.py,
|
|
test/ok_lib2.7/asyncore.py, test/ok_lib2.7/atexit.py,
|
|
test/ok_lib2.7/audiodev.py, test/ok_lib2.7/base64.py,
|
|
test/ok_lib2.7/binhex.py, test/ok_lib2.7/bisect.py,
|
|
test/ok_lib2.7/calendar.py, test/ok_lib2.7/cgitb.py,
|
|
test/ok_lib2.7/chunk.py, test/ok_lib2.7/codeop.py,
|
|
test/ok_lib2.7/colorsys.py, test/ok_lib2.7/commands.py,
|
|
test/ok_lib2.7/compileall.py,
|
|
test/simple-source/operation_binary/add.py,
|
|
test/simple-source/operation_binary/and.py,
|
|
test/simple-source/operation_binary/divide_floor.py,
|
|
test/simple-source/operation_binary/divide_true.py,
|
|
test/simple-source/operation_binary/modulo.py,
|
|
test/test_pythonlib.py, uncompyle6/__init__.py,
|
|
uncompyle6/deparser.py, uncompyle6/disas.py,
|
|
uncompyle6/opcodes/opcode_34.py, uncompyle6/parsers/spark.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner34.py,
|
|
uncompyle6/verify.py, uncompyle6/walker.py: Python3: remove "return
|
|
None" at end of main for uncompyle. Fix up verify for Python3. First
|
|
automated Python 3.4 tests via "makecheck-3.4" in test directory.
|
|
|
|
2015-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* test/bytecompile-tests, test/simple-source/branching/if.py,
|
|
test/simple-source/branching/ifelse.py,
|
|
test/simple-source/looping/for.py, uncompyle6/__init__.py,
|
|
uncompyle6/disas.py, uncompyle6/parsers/spark.py: Add spark grammar
|
|
debugging. Start to comment grammer construct covered by simple
|
|
tests.
|
|
|
|
2015-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/opcodes/opcode_34.py, uncompyle6/parsers/parse3.py:
|
|
Python 3.4 correct grammar for some looping constructs
|
|
|
|
2015-12-17 rocky <rb@dustyfeet.com>
|
|
|
|
* test/bytecompile-tests, test/compile_tests,
|
|
test/simple-source/README, test/simple-source/branching/if.py,
|
|
test/simple-source/branching/ifelse.py,
|
|
test/simple-source/call_arguments/keyword.py,
|
|
test/simple-source/call_arguments/positional.py,
|
|
test/simple-source/looping/for.py,
|
|
test/simple-source/looping/while.py,
|
|
test/source_3.4/branching/if.py,
|
|
test/source_3.4/branching/ifelse.py, uncompyle6/parsers/parse2.py,
|
|
uncompyle6/parsers/parse3.py, uncompyle6/parsers/spark.py,
|
|
uncompyle6/scanners/scanner34.py: Python 3.4 if ifelse decompyling
|
|
now works.
|
|
|
|
2015-12-16 rocky <rb@dustyfeet.com>
|
|
|
|
* test/dis-compare.py, test/simple-uncompyle-code-test.py,
|
|
uncompyle6/__init__.py, uncompyle6/deparser.py,
|
|
uncompyle6/parser.py, uncompyle6/parsers/__init__.py,
|
|
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
|
|
uncompyle6/parsers/spark.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/spark.py,
|
|
uncompyle6/walker.py: Supoer multiple parsers, specifically for
|
|
Python2 and Python3. In the process some OO cleanup and some global
|
|
variable hacks removed.
|
|
|
|
2015-12-16 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/deparser.py, uncompyle6/disas.py,
|
|
uncompyle6/parser.py, uncompyle6/scanner.py, uncompyle6/walker.py:
|
|
Add LICENSE. Add demo programs and DRY code a little
|
|
|
|
2015-12-16 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/opcodes/opcode_34.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner34.py:
|
|
On Python3.4 decompiling Python 3.4 instructions, use its built-in
|
|
disassembler routines. In contrast to what was here, they most
|
|
likely work!
|
|
|
|
2015-12-16 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, pytest/testdata/.gitignore, test/Makefile,
|
|
test/compile_tests, uncompyle6/deparser.py, uncompyle6/disas.py,
|
|
uncompyle6/marsh.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/verify.py: Tidy a
|
|
little bit
|
|
|
|
2015-12-16 rocky <rb@dustyfeet.com>
|
|
|
|
* .gitignore, pytest/.gitignore, pytest/testdata/test1.right,
|
|
pytest/testdata/test_import_25.right, test/compile_tests,
|
|
test/dis-compare.py, test/simple-uncompyle-code-test.py,
|
|
test/source_3.4/branching/if.py,
|
|
test/source_3.4/branching/ifelse.py, test/uncompyle-code.py,
|
|
uncompyle6/.gitignore, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner34.py: Start 3.4 more stringent
|
|
disassembly testing. Disassembly format has changed slightly. misc
|
|
small bugs.
|
|
|
|
2015-12-15 rocky <rb@dustyfeet.com>
|
|
|
|
* : 2.7 pyc for disasm test
|
|
|
|
2015-12-15 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, circle.yml, pytest/Makefile, pytest/test_disasm.py,
|
|
pytest/testdata/test1.right, pytest/testdata/test_import_25.right,
|
|
test-requirements.txt, test/Makefile, test/test_pythonlib.py,
|
|
uncompyle6/marsh.py, uncompyle6/verify.py: Add some disassemble
|
|
tests using pytest.
|
|
|
|
2015-12-15 rocky <rb@dustyfeet.com>
|
|
|
|
* test/.gitignore, uncompyle6/__init__.py: Less ignore. Not sure
|
|
what's up with not finding marsh in python3
|
|
|
|
2015-12-15 rocky <rb@dustyfeet.com>
|
|
|
|
* test/.gitignore, uncompyle6/disasm/__init__.py,
|
|
uncompyle6/disasm/dis_25.py: disasm is unused code. More ignore.
|
|
|
|
2015-12-15 rocky <rb@dustyfeet.com>
|
|
|
|
* .gitignore, __pkginfo__.py, bin/pydisassemble,
|
|
bin/pydissassemble, test/test_pythonlib.py, uncompyle6/__init__.py,
|
|
uncompyle6/deparser.py, uncompyle6/disas.py, uncompyle6/magics.py,
|
|
uncompyle6/marsh.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner34.py:
|
|
Split out marhsal and disassemble code and spell disassemble
|
|
correctly. Fix some lint issues
|
|
|
|
2015-12-15 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Update README.rst
|
|
|
|
2015-12-15 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Update README.rst
|
|
|
|
2015-12-15 rocky <rb@dustyfeet.com>
|
|
|
|
* PKG-INFO, README.rst, bin/pydissassemble, uncompyle6/__init__.py,
|
|
uncompyle6/disas.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner25.py, uncompyle6/scanners/scanner26.py,
|
|
uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner32.py,
|
|
uncompyle6/scanners/scanner34.py: README.rst: note addition of
|
|
pydisassemble Remove duplicate disassembly printing from scanners
|
|
and put common code in caller(s). Show source-code line numbers in
|
|
disassembly output and fix alignment of byte offsets. disas.py:
|
|
workaround Python 2/3 different layouts before we get to bytecodes
|
|
in a code object.
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py: Disable installing pydisassemble for now pending
|
|
understanding what's up with CI
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* __pkginfo__.py, setup.py: Package scripts correctly now
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* MANIFEST.in, __pkginfo__.py, bin/pydissassemble, bin/uncompyle6,
|
|
scripts/pydissassemble, scripts/uncompyle6, setup.py: scripts->bin.
|
|
Add pydisassemble to list of scripts to install
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, README.rst, scripts/pydissassemble, scripts/uncompyle6,
|
|
test/Makefile, uncompyle6/__init__.py, uncompyle6/verify.py: Add a
|
|
standalone disassemble utility. __init__.py: Shun using 0, 1 for
|
|
booleans
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/verify.py: Typos
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py, uncompyle6/deparser.py,
|
|
uncompyle6/disasm/__init__.py, uncompyle6/disasm/dis_25.py,
|
|
uncompyle6/opcodes/opcode_32.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanners/scanner32.py, uncompyle6/verify.py: Start to
|
|
move deparser from python-deparse here. Start Python 3.2 tolerance
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml: Clean up travis file now that I know what works
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml: Travis: try install a different way
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml, circle.yml: Do setup install on CI boxes
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* circle.yml: A correct way to set a circleci envvar?
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* circle.yml: Add --compile to cicleci build
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* circle.yml: Try circleci
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/dparser.py, uncompyle6/parser.py, uncompyle6/walker.py:
|
|
uncompyle6/dparser -> uncompyle6/parser
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py, uncompyle6/disas.py,
|
|
uncompyle6/magics.py, uncompyle6/scanners/scanner34.py: Closer to
|
|
being able to handle Python 3.4 bytecode. Loading of Python Python
|
|
bytecode now works. magics from 3.3 to Python 3.4 has been added.
|
|
Some Python 3.4 scanner issues have been fixed.
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, test/Makefile, test/base-tests/compile_tests,
|
|
test/base-tests/python2.7/test_applyEquiv.py,
|
|
test/base-tests/python2.7/test_applyEquiv.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_augmentedAssign.py,
|
|
test/base-tests/python2.7/test_augmentedAssign.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_class.py,
|
|
test/base-tests/python2.7/test_class.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_del.py,
|
|
test/base-tests/python2.7/test_divide_future.py,
|
|
test/base-tests/python2.7/test_divide_future.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_divide_no_future.py,
|
|
test/base-tests/python2.7/test_docstring.py,
|
|
test/base-tests/python2.7/test_empty.py,
|
|
test/base-tests/python2.7/test_exceptions.py,
|
|
test/base-tests/python2.7/test_exceptions.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_exec.py,
|
|
test/base-tests/python2.7/test_expressions.py,
|
|
test/base-tests/python2.7/test_extendedImport.py,
|
|
test/base-tests/python2.7/test_extendedPrint.py,
|
|
test/base-tests/python2.7/test_extendedarg.py-notyet,
|
|
test/base-tests/python2.7/test_functions.py,
|
|
test/base-tests/python2.7/test_global.py,
|
|
test/base-tests/python2.7/test_globals.py,
|
|
test/base-tests/python2.7/test_import.py,
|
|
test/base-tests/python2.7/test_import_as.py,
|
|
test/base-tests/python2.7/test_integers.py,
|
|
test/base-tests/python2.7/test_iterators.py,
|
|
test/base-tests/python2.7/test_lambda.py,
|
|
test/base-tests/python2.7/test_listComprehensions.py,
|
|
test/base-tests/python2.7/test_loops.py,
|
|
test/base-tests/python2.7/test_loops2.py,
|
|
test/base-tests/python2.7/test_mine.py,
|
|
test/base-tests/python2.7/test_misc.py,
|
|
test/base-tests/python2.7/test_nested_elif.py,
|
|
test/base-tests/python2.7/test_nested_scopes.py,
|
|
test/base-tests/python2.7/test_prettyprint.py,
|
|
test/base-tests/python2.7/test_print.py,
|
|
test/base-tests/python2.7/test_print_to.py,
|
|
test/base-tests/python2.7/test_single_stmt.py,
|
|
test/base-tests/python2.7/test_slices.py,
|
|
test/base-tests/python2.7/test_tuple_params.py-notyet,
|
|
test/base-tests/python2.7/test_tuples.py-notyet,
|
|
test/base-tests/python2.7/test_yield.py,
|
|
test/base_tests/compile_tests,
|
|
test/base_tests/python2.7/test_applyEquiv.py,
|
|
test/base_tests/python2.7/test_augmentedAssign.py,
|
|
test/base_tests/python2.7/test_class.py,
|
|
test/base_tests/python2.7/test_del.py,
|
|
test/base_tests/python2.7/test_divide_future.py,
|
|
test/base_tests/python2.7/test_divide_no_future.py,
|
|
test/base_tests/python2.7/test_docstring.py,
|
|
test/base_tests/python2.7/test_empty.py,
|
|
test/base_tests/python2.7/test_exceptions.py,
|
|
test/base_tests/python2.7/test_exec.py,
|
|
test/base_tests/python2.7/test_expressions.py,
|
|
test/base_tests/python2.7/test_extendedImport.py,
|
|
test/base_tests/python2.7/test_extendedPrint.py,
|
|
test/base_tests/python2.7/test_extendedarg.py-notyet,
|
|
test/base_tests/python2.7/test_functions.py,
|
|
test/base_tests/python2.7/test_global.py,
|
|
test/base_tests/python2.7/test_globals.py,
|
|
test/base_tests/python2.7/test_import.py,
|
|
test/base_tests/python2.7/test_import_as.py,
|
|
test/base_tests/python2.7/test_integers.py,
|
|
test/base_tests/python2.7/test_iterators.py,
|
|
test/base_tests/python2.7/test_lambda.py,
|
|
test/base_tests/python2.7/test_listComprehensions.py,
|
|
test/base_tests/python2.7/test_loops.py,
|
|
test/base_tests/python2.7/test_loops2.py,
|
|
test/base_tests/python2.7/test_mine.py,
|
|
test/base_tests/python2.7/test_misc.py,
|
|
test/base_tests/python2.7/test_nested_elif.py,
|
|
test/base_tests/python2.7/test_nested_scopes.py,
|
|
test/base_tests/python2.7/test_prettyprint.py,
|
|
test/base_tests/python2.7/test_print.py,
|
|
test/base_tests/python2.7/test_print_to.py,
|
|
test/base_tests/python2.7/test_single_stmt.py,
|
|
test/base_tests/python2.7/test_slices.py,
|
|
test/base_tests/python2.7/test_tuple_params.py-notyet,
|
|
test/base_tests/python2.7/test_tuples.py-notyet,
|
|
test/base_tests/python2.7/test_yield.py,
|
|
test/base_tests/python3.4/__init__.py, test/test_pythonlib.py,
|
|
uncompyle6/__init__.py, uncompyle6/opcodes/opcode_23.py,
|
|
uncompyle6/opcodes/opcode_24.py, uncompyle6/opcodes/opcode_25.py,
|
|
uncompyle6/opcodes/opcode_26.py, uncompyle6/opcodes/opcode_27.py,
|
|
uncompyle6/opcodes/opcode_34.py, uncompyle6/scanner.py,
|
|
uncompyle6/scanner25.py, uncompyle6/scanner26.py,
|
|
uncompyle6/scanner27.py, uncompyle6/scanner34.py,
|
|
uncompyle6/scanners/__init__.py, uncompyle6/scanners/scanner25.py,
|
|
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
|
|
uncompyle6/scanners/scanner34.py, uncompyle6/verify.py: Move
|
|
scanners in its own directory. Dir base-tests -> base_tests so we
|
|
can import from that.
|
|
|
|
2015-12-14 rocky <rb@dustyfeet.com>
|
|
|
|
* scripts/uncompyle6, uncompyle6/__init__.py, uncompyle6/disas.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanner25.py,
|
|
uncompyle6/scanner26.py, uncompyle6/scanner27.py: Python3
|
|
compatibility: (disas, scanner*) Reduce useless verbiage in status
|
|
messages and DRY code a little; __init__, uncompyle6
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/test_pythonlib.py: Make sure we pass return
|
|
code back.
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/__init__.py: Add Python version and tidy up stats
|
|
output: don't show verify stats if we didn't verify!
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/test_pythonlib.py: Correct testing python version check
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml: Force 2.7 bytecode compilation on Travis
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml: Try Travis
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/ok_2.7/aifc.pyc_dis,
|
|
test/ok_2.7/antigravity.pyc_dis, test/ok_2.7/anydbm.pyc_dis,
|
|
test/ok_2.7/asynchat.pyc_dis, test/ok_2.7/asyncore.pyc_dis,
|
|
test/ok_2.7/atexit.pyc_dis, test/ok_2.7/audiodev.pyc_dis,
|
|
test/test_pythonlib.py, uncompyle6/walker.py: test_pythonlib: Fix
|
|
bug in traversing directores walker.py: imports; Add test Python2.5
|
|
bytecode - it works! Makefile: remove temporary directories and _dis
|
|
files which were added by mistake
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* MANIFEST.in, test/test_pythonlib.py, uncompyle6/__init__.py,
|
|
uncompyle6/disas.py, uncompyle6/dparser.py, uncompyle6/magics.py,
|
|
uncompyle6/verify.py, uncompyle6/walker.py: need disas.py for cross
|
|
version Python compiling fixup MANIFEST.in pythonlib.py: store
|
|
expected python version and don't compile if it mismatches. Work
|
|
files now go in temp directory. Start masrhal load in Python for
|
|
Python3.
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* test/Makefile, test/base-tests/compile_tests,
|
|
test/base-tests/python2.7/test_applyEquiv.py,
|
|
test/base-tests/python2.7/test_applyEquiv.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_augmentedAssign.py,
|
|
test/base-tests/python2.7/test_augmentedAssign.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_class.py,
|
|
test/base-tests/python2.7/test_class.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_del.py,
|
|
test/base-tests/python2.7/test_divide_future.py,
|
|
test/base-tests/python2.7/test_divide_future.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_divide_no_future.py,
|
|
test/base-tests/python2.7/test_docstring.py,
|
|
test/base-tests/python2.7/test_empty.py,
|
|
test/base-tests/python2.7/test_exceptions.py,
|
|
test/base-tests/python2.7/test_exceptions.pyc_dis_unverified,
|
|
test/base-tests/python2.7/test_exec.py,
|
|
test/base-tests/python2.7/test_expressions.py,
|
|
test/base-tests/python2.7/test_extendedImport.py,
|
|
test/base-tests/python2.7/test_extendedPrint.py,
|
|
test/base-tests/python2.7/test_extendedarg.py-notyet,
|
|
test/base-tests/python2.7/test_functions.py,
|
|
test/base-tests/python2.7/test_global.py,
|
|
test/base-tests/python2.7/test_globals.py,
|
|
test/base-tests/python2.7/test_import.py,
|
|
test/base-tests/python2.7/test_import_as.py,
|
|
test/base-tests/python2.7/test_integers.py,
|
|
test/base-tests/python2.7/test_iterators.py,
|
|
test/base-tests/python2.7/test_lambda.py,
|
|
test/base-tests/python2.7/test_listComprehensions.py,
|
|
test/base-tests/python2.7/test_loops.py,
|
|
test/base-tests/python2.7/test_loops2.py,
|
|
test/base-tests/python2.7/test_mine.py,
|
|
test/base-tests/python2.7/test_misc.py,
|
|
test/base-tests/python2.7/test_nested_elif.py,
|
|
test/base-tests/python2.7/test_nested_scopes.py,
|
|
test/base-tests/python2.7/test_prettyprint.py,
|
|
test/base-tests/python2.7/test_print.py,
|
|
test/base-tests/python2.7/test_print_to.py,
|
|
test/base-tests/python2.7/test_single_stmt.py,
|
|
test/base-tests/python2.7/test_slices.py,
|
|
test/base-tests/python2.7/test_tuple_params.py-notyet,
|
|
test/base-tests/python2.7/test_tuples.py-notyet,
|
|
test/base-tests/python2.7/test_yield.py,
|
|
test/base-tests/python2/compile_tests,
|
|
test/base-tests/python2/test_applyEquiv.py,
|
|
test/base-tests/python2/test_augmentedAssign.py,
|
|
test/base-tests/python2/test_class.py,
|
|
test/base-tests/python2/test_del.py,
|
|
test/base-tests/python2/test_divide_future.py,
|
|
test/base-tests/python2/test_divide_no_future.py,
|
|
test/base-tests/python2/test_docstring.py,
|
|
test/base-tests/python2/test_empty.py,
|
|
test/base-tests/python2/test_exceptions.py,
|
|
test/base-tests/python2/test_exec.py,
|
|
test/base-tests/python2/test_expressions.py,
|
|
test/base-tests/python2/test_extendedImport.py,
|
|
test/base-tests/python2/test_extendedPrint.py,
|
|
test/base-tests/python2/test_extendedarg.py-notyet,
|
|
test/base-tests/python2/test_functions.py,
|
|
test/base-tests/python2/test_global.py,
|
|
test/base-tests/python2/test_globals.py,
|
|
test/base-tests/python2/test_import.py,
|
|
test/base-tests/python2/test_import_as.py,
|
|
test/base-tests/python2/test_integers.py,
|
|
test/base-tests/python2/test_iterators.py,
|
|
test/base-tests/python2/test_lambda.py,
|
|
test/base-tests/python2/test_listComprehensions.py,
|
|
test/base-tests/python2/test_loops.py,
|
|
test/base-tests/python2/test_loops2.py,
|
|
test/base-tests/python2/test_mine.py,
|
|
test/base-tests/python2/test_misc.py,
|
|
test/base-tests/python2/test_nested_elif.py,
|
|
test/base-tests/python2/test_nested_scopes.py,
|
|
test/base-tests/python2/test_prettyprint.py,
|
|
test/base-tests/python2/test_print.py,
|
|
test/base-tests/python2/test_print_to.py,
|
|
test/base-tests/python2/test_single_stmt.py,
|
|
test/base-tests/python2/test_slices.py,
|
|
test/base-tests/python2/test_tuple_params.py-notyet,
|
|
test/base-tests/python2/test_tuples.py-notyet,
|
|
test/base-tests/python2/test_yield.py, test/ok_2.6/anydbm.py,
|
|
test/test_pythonlib.py: add a single Python 2.6 source/code test
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/scanner.py, uncompyle6/scanner34.py: Start off with
|
|
Anton Vorobyov's (DarkFenX) Python 3 scanner.
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* MANIFEST, MANIFEST.in, PKG-INFO, README.rst,
|
|
uncompyle6/opcodes/opcode_23.py, uncompyle6/opcodes/opcode_26.py,
|
|
uncompyle6/opcodes/opcode_27.py, uncompyle6/scanner25.py,
|
|
uncompyle6/scanner26.py, uncompyle6/spark.py, uncompyle6/verify.py:
|
|
Correct MANIFEST->MANIFEST.in more lint
|
|
|
|
2015-12-13 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Update README.rst
|
|
|
|
2015-12-13 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Update README.rst
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* scripts/uncompyle6, uncompyle6/#spark.py#,
|
|
uncompyle6/__init__.py, uncompyle6/disas.py,
|
|
uncompyle6/opcodes/opcode_25.py, uncompyle6/opcodes/opcode_26.py,
|
|
uncompyle6/scanner25.py, uncompyle6/scanner26.py,
|
|
uncompyle6/scanner34.py, uncompyle6/spark.py, uncompyle6/verify.py:
|
|
Make uncompyle6 run on Python3.4 and Python 2.7 We don't need our
|
|
own disassembler. Python's will do fine
|
|
|
|
2015-12-13 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: Update README.rst
|
|
|
|
2015-12-13 R. Bernstein <rocky@users.noreply.github.com>
|
|
|
|
* README.rst: rSt formatting
|
|
|
|
2015-12-13 rocky <rb@dustyfeet.com>
|
|
|
|
* .gitignore, Makefile, README.rst, test/Makefile,
|
|
test/base-tests/python2/compile_tests,
|
|
test/base-tests/python2/test_applyEquiv.py,
|
|
test/base-tests/python2/test_augmentedAssign.py,
|
|
test/base-tests/python2/test_class.py,
|
|
test/base-tests/python2/test_del.py,
|
|
test/base-tests/python2/test_divide_future.py,
|
|
test/base-tests/python2/test_divide_no_future.py,
|
|
test/base-tests/python2/test_docstring.py,
|
|
test/base-tests/python2/test_empty.py,
|
|
test/base-tests/python2/test_exceptions.py,
|
|
test/base-tests/python2/test_exec.py,
|
|
test/base-tests/python2/test_expressions.py,
|
|
test/base-tests/python2/test_extendedImport.py,
|
|
test/base-tests/python2/test_extendedPrint.py,
|
|
test/base-tests/python2/test_extendedarg.py-notyet,
|
|
test/base-tests/python2/test_functions.py,
|
|
test/base-tests/python2/test_global.py,
|
|
test/base-tests/python2/test_globals.py,
|
|
test/base-tests/python2/test_import.py,
|
|
test/base-tests/python2/test_import_as.py,
|
|
test/base-tests/python2/test_integers.py,
|
|
test/base-tests/python2/test_iterators.py,
|
|
test/base-tests/python2/test_lambda.py,
|
|
test/base-tests/python2/test_listComprehensions.py,
|
|
test/base-tests/python2/test_loops.py,
|
|
test/base-tests/python2/test_loops2.py,
|
|
test/base-tests/python2/test_mine.py,
|
|
test/base-tests/python2/test_misc.py,
|
|
test/base-tests/python2/test_nested_elif.py,
|
|
test/base-tests/python2/test_nested_scopes.py,
|
|
test/base-tests/python2/test_prettyprint.py,
|
|
test/base-tests/python2/test_print.py,
|
|
test/base-tests/python2/test_print_to.py,
|
|
test/base-tests/python2/test_single_stmt.py,
|
|
test/base-tests/python2/test_slices.py,
|
|
test/base-tests/python2/test_tuple_params.py-notyet,
|
|
test/base-tests/python2/test_tuples.py-notyet,
|
|
test/base-tests/python2/test_yield.py, test/compile_tests,
|
|
test/ok_2.7/aifc.py, test/ok_2.7/aifc.pyc_dis,
|
|
test/ok_2.7/antigravity.py, test/ok_2.7/antigravity.pyc_dis,
|
|
test/ok_2.7/anydbm.py, test/ok_2.7/anydbm.pyc_dis,
|
|
test/ok_2.7/asynchat.py, test/ok_2.7/asynchat.pyc_dis,
|
|
test/ok_2.7/asyncore.py, test/ok_2.7/asyncore.pyc_dis,
|
|
test/ok_2.7/atexit.py, test/ok_2.7/atexit.pyc_dis,
|
|
test/ok_2.7/audiodev.py, test/ok_2.7/audiodev.pyc_dis,
|
|
test/ok_2.7/base64.py, test/ok_2.7/binhex.py,
|
|
test/ok_2.7/bisect.py, test/ok_2.7/bsddb/__init__.py,
|
|
test/ok_2.7/bsddb/db.py, test/ok_2.7/bsddb/dbobj.py,
|
|
test/ok_2.7/bsddb/dbrecio.py, test/ok_2.7/bsddb/dbshelve.py,
|
|
test/ok_2.7/bsddb/dbutils.py, test/ok_2.7/calendar.py,
|
|
test/ok_2.7/cgitb.py, test/ok_2.7/chunk.py, test/ok_2.7/codeop.py,
|
|
test/ok_2.7/colorsys.py, test/ok_2.7/commands.py,
|
|
test/ok_2.7/compileall.py, test/ok_2.7/compiler/__init__.py,
|
|
test/ok_2.7/compiler/ast.py, test/ok_2.7/compiler/consts.py,
|
|
test/ok_2.7/compiler/future.py, test/ok_2.7/compiler/misc.py,
|
|
test/ok_2.7/compiler/syntax.py, test/ok_2.7/ctypes/_endian.py,
|
|
test/ok_2.7/ctypes/util.py, test/ok_2.7/ctypes/wintypes.py,
|
|
test/ok_2.7/curses/__init__.py, test/ok_2.7/curses/ascii.py,
|
|
test/ok_2.7/curses/has_key.py, test/ok_2.7/curses/panel.py,
|
|
test/ok_2.7/curses/wrapper.py, test/ok_2.7/dircache.py,
|
|
test/ok_2.7/dis.py, test/test_applyEquiv.py,
|
|
test/test_augmentedAssign.py, test/test_class.py, test/test_del.py,
|
|
test/test_divide_future.py, test/test_divide_no_future.py,
|
|
test/test_docstring.py, test/test_empty.py,
|
|
test/test_exceptions.py, test/test_exec.py,
|
|
test/test_expressions.py, test/test_extendedImport.py,
|
|
test/test_extendedPrint.py, test/test_extendedarg.py,
|
|
test/test_functions.py, test/test_global.py, test/test_globals.py,
|
|
test/test_import.py, test/test_import_as.py, test/test_integers.py,
|
|
test/test_iterators.py, test/test_lambda.py,
|
|
test/test_listComprehensions.py, test/test_loops.py,
|
|
test/test_loops2.py, test/test_mine.py, test/test_misc.py,
|
|
test/test_nested_elif.py, test/test_nested_scopes.py,
|
|
test/test_one, test/test_prettyprint.py, test/test_print.py,
|
|
test/test_print_to.py, test/test_pythonlib.py,
|
|
test/test_single_stmt.py, test/test_slices.py,
|
|
test/test_tuple_params.py, test/test_tuples.py, test/test_yield.py,
|
|
test/uncompyle-code.py, test_one, test_pythonlib.py,
|
|
uncompyle-code.py, uncompyle6/#spark.py#, uncompyle6/__init__.py,
|
|
uncompyle6/verify.py: Add tests and start a more turnkey testing
|
|
system.
|
|
|
|
2015-12-12 rocky <rb@dustyfeet.com>
|
|
|
|
* tox.ini, uncompyle-code.py, uncompyle6/dparser.py,
|
|
uncompyle6/scanner25.py, uncompyle6/scanner27.py,
|
|
uncompyle6/scanner34.py, uncompyle6/spark.py, uncompyle6/walker.py:
|
|
Minimal disassemble, ast compile and deparse work on Python 3. Some
|
|
linting
|
|
|
|
2015-12-12 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle6/dparser.py, uncompyle6/parser.py, uncompyle6/walker.py:
|
|
parser -> dparser so as not to conflict with python3's parser.
|
|
|
|
2015-12-12 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle-code.py, uncompyle6/__init__.py, uncompyle6/disas.py,
|
|
uncompyle6/scanner.py, uncompyle6/scanner25.py,
|
|
uncompyle6/scanner26.py, uncompyle6/scanner27.py,
|
|
uncompyle6/verify.py, uncompyle6/walker.py: More Python3
|
|
compatability. Remove duplicate disassembly code and get it from
|
|
Python's standard library instead.
|
|
|
|
2015-12-12 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle-code.py, uncompyle6/__init__.py, uncompyle6/parser.py,
|
|
uncompyle6/scanner.py, uncompyle6/walker.py: Python3 compatibility
|
|
|
|
2015-12-11 rocky <rb@dustyfeet.com>
|
|
|
|
* uncompyle-code.py, uncompyle6/__init__.py, uncompyle6/walker.py:
|
|
python3 compatibiity and remove some flake8 warnings.
|
|
|
|
2015-12-11 rocky <rb@dustyfeet.com>
|
|
|
|
* Makefile, uncompyle6/Makefile, uncompyle6/__init__.py,
|
|
uncompyle6/disas.py, uncompyle6/parser.py, uncompyle6/scanner26.py,
|
|
uncompyle6/scanner27.py, uncompyle6/scanner34.py,
|
|
uncompyle6/walker.py: Lint stuff
|
|
|
|
2015-12-11 rocky <rb@dustyfeet.com>
|
|
|
|
* .gitignore, __pkginfo__.py, setup.py, test/compile_tests,
|
|
test_pythonlib.py, uncompyle-code.py, uncompyle6/__init__.py,
|
|
uncompyle6/magics.py, uncompyle6/opcode/__init__.py,
|
|
uncompyle6/opcode/opcode_23.py, uncompyle6/opcode/opcode_24.py,
|
|
uncompyle6/opcode/opcode_25.py, uncompyle6/opcode/opcode_26.py,
|
|
uncompyle6/opcode/opcode_27.py, uncompyle6/opcodes/__init__.py,
|
|
uncompyle6/opcodes/opcode_23.py, uncompyle6/opcodes/opcode_24.py,
|
|
uncompyle6/opcodes/opcode_25.py, uncompyle6/opcodes/opcode_26.py,
|
|
uncompyle6/opcodes/opcode_27.py, uncompyle6/parser.py,
|
|
uncompyle6/scanner25.py, uncompyle6/scanner26.py,
|
|
uncompyle6/scanner27.py, uncompyle6/spark.py: More python2 ->
|
|
python3 compatibility
|
|
|
|
2015-12-11 rocky <rb@dustyfeet.com>
|
|
|
|
* .travis.yml, Makefile, scripts/uncompyle2, scripts/uncompyle6,
|
|
setup.py, test_one, tox.ini, uncompyle-code.py,
|
|
uncompyle2/__init__.py, uncompyle2/disas.py, uncompyle2/magics.py,
|
|
uncompyle2/opcode/__init__.py, uncompyle2/opcode/opcode_23.py,
|
|
uncompyle2/opcode/opcode_24.py, uncompyle2/opcode/opcode_25.py,
|
|
uncompyle2/opcode/opcode_26.py, uncompyle2/opcode/opcode_27.py,
|
|
uncompyle2/parser.py, uncompyle2/scanner.py,
|
|
uncompyle2/scanner25.py, uncompyle2/scanner26.py,
|
|
uncompyle2/scanner27.py, uncompyle2/spark.py, uncompyle2/verify.py,
|
|
uncompyle2/walker.py, uncompyle6/__init__.py, uncompyle6/disas.py,
|
|
uncompyle6/magics.py, uncompyle6/opcode/__init__.py,
|
|
uncompyle6/opcode/opcode_23.py, uncompyle6/opcode/opcode_24.py,
|
|
uncompyle6/opcode/opcode_25.py, uncompyle6/opcode/opcode_26.py,
|
|
uncompyle6/opcode/opcode_27.py, uncompyle6/parser.py,
|
|
uncompyle6/scanner25.py, uncompyle6/scanner26.py,
|
|
uncompyle6/scanner27.py, uncompyle6/spark.py, uncompyle6/verify.py,
|
|
uncompyle6/walker.py: Start process of making python3 compatible
|
|
|
|
2015-11-25 rocky <rb@dustyfeet.com>
|
|
|
|
* .gitignore, uncompyle-code.py, uncompyle2/walker.py: First steps
|
|
to find-offset-based routine
|
|
|
|
2015-06-25 Mysterie <kajusska@gmail.com>
|
|
|
|
* : Merge pull request #27 from kernelsmith/master call python via /usr/bin/env python to make script more portable
|
|
|
|
2014-11-26 Mysterie <kajusska@gmail.com>
|
|
|
|
* : Merge pull request #23 from jbremer/master support hardcoded 64-bit integers (sorry, so late lol)
|
|
|
|
2014-02-12 root <root@oros.mysterie.fr>
|
|
|
|
* uncompyle2/scanner25.py, uncompyle2/scanner26.py: Fix Raise TODO +
|
|
NOP opcode
|
|
|
|
2013-12-30 root <root@oros.mysterie.fr>
|
|
|
|
* README.rst: MAJ readme
|
|
|
|
2013-07-19 root <root@debian>
|
|
|
|
* uncompyle2/disas.py: marshal unpack cast bug
|
|
|
|
2013-07-18 root <root@debian>
|
|
|
|
* uncompyle2/__init__.py, uncompyle2/disas.py: Fix marshal UTF8 bug
|
|
|
|
2013-07-16 root <root@debian>
|
|
|
|
* uncompyle2/__init__.py, uncompyle2/disas.py,
|
|
uncompyle2/magics.py, uncompyle2/scanner27.py, uncompyle2/walker.py:
|
|
marshal disassembly improvement
|
|
|
|
2013-06-20 Mysterie <kajusska@gmail.com>
|
|
|
|
* : Merge pull request #13 from ralph-moeritz/master Minor script cleanup
|
|
|
|
2013-04-25 root <root@debian>
|
|
|
|
* uncompyle2/scanner25.py, uncompyle2/scanner26.py,
|
|
uncompyle2/scanner27.py, uncompyle2/walker.py: Improvement from
|
|
wibiti
|
|
|
|
2013-03-05 root <root@debian>
|
|
|
|
* README.rst, uncompyle2/parser.py, uncompyle2/scanner.py,
|
|
uncompyle2/scanner25.py, uncompyle2/scanner26.py,
|
|
uncompyle2/scanner27.py, uncompyle2/walker.py: Grammar improvement
|
|
|
|
2013-03-05 Mysterie <kajusska@gmail.com>
|
|
|
|
* : Merge pull request #9 from SuperVirus/master Fix for issue #6
|
|
|
|
2013-02-20 Mysterie <kajusska@gmail.com>
|
|
|
|
* : Merge pull request #8 from skyfion/master fix error
|
|
|
|
2013-02-13 skyfion <sky.fion@gmail.com>
|
|
|
|
* uncompyle2/__init__.py: correct work if list in def
|
|
uncompyle_file
|
|
|
|
2013-02-09 root <root@debian>
|
|
|
|
* test/test_functions.py, uncompyle2/scanner25.py,
|
|
uncompyle2/scanner26.py: Fix for RETURN_END_IF bug
|
|
|
|
2013-01-10 Mysterie <kajusska@gmail.com>
|
|
|
|
* uncompyle2/scanner25.py, uncompyle2/scanner26.py,
|
|
uncompyle2/scanner27.py: Patch bug on LOAD_CLOSURE
|
|
|
|
2012-12-14 Mysterie <kajusska@gmail.com>
|
|
|
|
* uncompyle2/opcode/opcode_25.py, uncompyle2/opcode/opcode_26.py,
|
|
uncompyle2/opcode/opcode_27.py, uncompyle2/scanner.py,
|
|
uncompyle2/scanner25.py, uncompyle2/scanner26.py,
|
|
uncompyle2/scanner27.py: modification of LIST_APPEND opcode handling
|
|
|
|
2012-11-25 Mysterie <kajusska@gmail.com>
|
|
|
|
* : Merge pull request #3 from htgoebel/mysterie Update email and URLs for original author.
|
|
|
|
2012-11-16 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
|
|
|
* build/scripts-2.7/uncompyle2, uncompyle2.py,
|
|
uncompyle2/__init__.py, uncompyle2/parser.py,
|
|
uncompyle2/scanner.py, uncompyle2/scanner25.py,
|
|
uncompyle2/scanner26.py, uncompyle2/scanner27.py,
|
|
uncompyle2/verify.py, uncompyle2/walker.py: Updating original
|
|
authors email-address.
|
|
|
|
2012-10-26 Mysterie <kajusska@gmail.com>
|
|
|
|
* README, README.rst: README patch
|
|
|
|
2012-10-26 Mysterie <kajusska@gmail.com>
|
|
|
|
* MANIFEST, MANIFEST.in, README, test_pythonlib.py,
|
|
uncompyle2/disas.py, uncompyle2/scanner25.py,
|
|
uncompyle2/scanner26.py, uncompyle2/scanner27.py: Patch for while
|
|
loop + manifest + bug in test_pythonlib.py
|
|
|
|
2012-10-11 Mysterie <kajusska@gmail.com>
|
|
|
|
* scripts/uncompyle2, setup.py, test/test_loops.py,
|
|
test/test_tuples.py, test_one, test_pythonlib, test_pythonlib.py,
|
|
uncompyle2.py, uncompyle2/Parser.py, uncompyle2/Scanner.py,
|
|
uncompyle2/Scanner25.py, uncompyle2/Scanner26.py,
|
|
uncompyle2/Scanner27.py, uncompyle2/Walker.py,
|
|
uncompyle2/__init__.py, uncompyle2/disas.py,
|
|
uncompyle2/opcode/opcode_25.py, uncompyle2/opcode/opcode_26.py,
|
|
uncompyle2/opcode/opcode_27.py, uncompyle2/parser.py,
|
|
uncompyle2/scanner.py, uncompyle2/scanner25.py,
|
|
uncompyle2/scanner26.py, uncompyle2/scanner27.py,
|
|
uncompyle2/spark.py, uncompyle2/verify.py, uncompyle2/walker.py:
|
|
Cleaning code & patch
|
|
|
|
2012-09-22 Mysterie <kajusska@gmail.com>
|
|
|
|
* test/test_loops.py, uncompyle2/Scanner25.py,
|
|
uncompyle2/Scanner26.py: Improvement of loop handling
|
|
|
|
2012-09-22 Mysterie <kajusska@gmail.com>
|
|
|
|
* uncompyle2/Scanner26.py: Little modification in Scanner26
|
|
|
|
2012-09-21 Mysterie <kajusska@gmail.com>
|
|
|
|
* test/compile_tests, test/test_applyEquiv.py,
|
|
test/test_augmentedAssign.py, test/test_class.py, test/test_del.py,
|
|
test/test_docstring.py, test/test_exec.py,
|
|
test/test_expressions.py, test/test_extendedImport.py,
|
|
test/test_extendedPrint.py, test/test_extendedarg.py,
|
|
test/test_functions.py, test/test_global.py, test/test_globals.py,
|
|
test/test_import.py, test/test_import_as.py, test/test_integers.py,
|
|
test/test_lambda.py, test/test_listComprehensions.py,
|
|
test/test_loops.py, test/test_loops2.py, test/test_misc.py,
|
|
test/test_nested_elif.py, test/test_nested_scopes.py,
|
|
test/test_prettyprint.py, test/test_print.py,
|
|
test/test_print_to.py, test/test_slices.py,
|
|
test/test_tuple_params.py, test/test_tuples.py,
|
|
uncompyle2/Scanner25.py, uncompyle2/Scanner26.py: Patch for
|
|
conditional tuple
|
|
|
|
2012-09-20 Mysterie <kajusska@gmail.com>
|
|
|
|
* uncompyle2/Scanner25.py, uncompyle2/Scanner26.py: Optimisation for
|
|
bytecode 2.5/2.6 restructuration
|
|
|
|
2012-09-20 Mysterie <kajusska@gmail.com>
|
|
|
|
* uncompyle2/Parser.py, uncompyle2/Scanner25.py,
|
|
uncompyle2/Scanner26.py, uncompyle2/Scanner27.py,
|
|
uncompyle2/Walker.py: Update from master branch uncompyle2
|
|
|
|
2012-06-14 Mysterie <kajusska@gmail.com>
|
|
|
|
* uncompyle2/Scanner25.py, uncompyle2/Scanner26.py,
|
|
uncompyle2/__init__.py: fix for the with statement
|
|
|
|
2012-06-12 Mysterie <kajusska@gmail.com>
|
|
|
|
* uncompyle2/Scanner25.py, uncompyle2/Scanner26.py: fix module & 2.6
|
|
|
|
2012-06-12 Mysterie <kajusska@gmail.com>
|
|
|
|
* uncompyle2/Scanner.py: fix module & 2.6
|
|
|
|
2012-06-05 Mysterie <kajusska@gmail.com>
|
|
|
|
* build/lib.linux-i686-2.7/uncompyle2/Parser.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/Scanner.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/Scanner25.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/Scanner26.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/Scanner27.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/Walker.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/__init__.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/disas.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/magics.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/__init__.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_23.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_24.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_25.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_26.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_27.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/spark.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/verify.py: creating clean .py
|
|
|
|
2012-06-05 Mysterie <kajusska@gmail.com>
|
|
|
|
* build/lib.linux-i686-2.7/uncompyle2/Parser.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/Scanner25.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/Scanner26.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/Scanner27.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/Walker.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/__init__.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/disas.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/magics.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/__init__.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_23.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_24.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_25.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_26.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/opcode/opcode_27.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/spark.py,
|
|
build/lib.linux-i686-2.7/uncompyle2/verify.py,
|
|
uncompyle2/__init__.py: creating clean .py
|
|
|
|
2012-06-05 Mysterie <kajusska@gmail.com>
|
|
|
|
* PKG-INFO, setup.cfg, setup.py: MAJ owner/information
|
|
|
|
2012-06-05 Mysterie <kajusska@gmail.com>
|
|
|
|
* uncompyle2/Scanner.py: delete old file
|
|
|
|
2012-06-05 Mysterie <kajusska@gmail.com>
|
|
|
|
* first commit
|
|
|