Skip to content

Commit 55b269f

Browse files
committed
Get ready for release 2.6.2
1 parent 8e04132 commit 55b269f

File tree

4 files changed

+209
-20
lines changed

4 files changed

+209
-20
lines changed

ChangeLog

Lines changed: 185 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,190 @@
1+
2016-07-11 rocky <rb@dustyfeet.com>
2+
3+
* test/add-test.py,
4+
test/simple_source/comprehension/05_set_comprehension.py,
5+
uncompyle6/semantics/pysource.py: Fix some Python set comprehension
6+
bugs
7+
8+
2016-07-11 rocky <rb@dustyfeet.com>
9+
10+
* test/simple_source/def/05_static_method.py: Add missing a test
11+
source file
12+
13+
2016-07-11 rocky <rb@dustyfeet.com>
14+
15+
* uncompyle6/parser.py, uncompyle6/parsers/parse26.py,
16+
uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
17+
uncompyle6/scanners/scanner3.py: Python 3.(4?) while1 bug Clean up while1 grammar a tad
18+
19+
2016-07-10 rocky <rb@dustyfeet.com>
20+
21+
* uncompyle6/scanners/scanner2.py: Revert recent 2.x code which fail
22+
verification
23+
24+
2016-07-10 rocky <rb@dustyfeet.com>
25+
26+
* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse34.py,
27+
uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
28+
uncompyle6/scanners/scanner3.py: Structure detection bugs + Had borked 3.4 grammar rules in previous refactor
29+
30+
2016-07-10 rocky <rb@dustyfeet.com>
31+
32+
* uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
33+
uncompyle6/scanners/scanner3.py: DRY and clean up code a little
34+
35+
2016-07-10 rocky <rb@dustyfeet.com>
36+
37+
* uncompyle6/scanners/scanner2.py,
38+
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
39+
uncompyle6/scanners/scanner3.py: Remove JA. Use standard
40+
JUMP_ABSOLUTE instead
41+
42+
2016-07-10 rocky <rb@dustyfeet.com>
43+
44+
* uncompyle6/scanners/scanner3.py: Python 2/3 compatibility bug
45+
46+
2016-07-10 rocky <rb@dustyfeet.com>
47+
48+
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py:
49+
Bugs caused by 3.x jump_forward misclasification
50+
51+
2016-07-10 rocky <rb@dustyfeet.com>
52+
53+
* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner2.py,
54+
uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner3.py:
55+
Python 3 better CONTINUE op classification Also document what's up with JUMP_ABSOLUTE classification
56+
57+
2016-07-09 rocky <rb@dustyfeet.com>
58+
59+
* uncompyle6/parsers/parse34.py: 3.4 continue handling. More work is
60+
needed
61+
62+
2016-07-09 rocky <rb@dustyfeet.com>
63+
64+
* __pkginfo__.py: Need xdis 2.4 bugfix
65+
66+
2016-07-09 rocky <rb@dustyfeet.com>
67+
68+
* uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
69+
uncompyle6/parsers/parse34.py: Start splitting off 3.4 grammar from
70+
rest
71+
72+
2016-07-09 rocky <rb@dustyfeet.com>
73+
74+
* test/simple_source/comprehension/01_list_comprehension.py,
75+
uncompyle6/parsers/parse23.py: Python 2.3 list comprehensions
76+
77+
2016-07-09 rocky <rb@dustyfeet.com>
78+
79+
* test/simple_source/comprehension/01_list_comprehension.py,
80+
test/simple_source/operation_binary/add.py,
81+
test/simple_source/operation_binary/and.py,
82+
test/simple_source/operation_binary/divide_floor.py,
83+
test/simple_source/operation_binary/divide_true.py,
84+
test/simple_source/operation_binary/modulo.py,
85+
test/simple_source/operation_binary/multiply.py,
86+
test/simple_source/operation_binary/or.py,
87+
test/simple_source/operation_binary/power.py,
88+
test/simple_source/operation_binary/shift_left.py,
89+
test/simple_source/operation_binary/shift_right.py,
90+
test/simple_source/operation_binary/subscription.py,
91+
test/simple_source/operation_binary/subtract.py,
92+
test/simple_source/operation_binary/xor.py,
93+
test/simple_source/operation_comparison/equal.py,
94+
test/simple_source/operation_comparison/greater.py,
95+
test/simple_source/operation_comparison/greater_equal.py,
96+
test/simple_source/operation_comparison/less.py,
97+
test/simple_source/operation_comparison/less_equal.py,
98+
test/simple_source/operation_comparison/notequal.py,
99+
test/simple_source/operation_inplace/add.py,
100+
test/simple_source/operation_inplace/and.py,
101+
test/simple_source/operation_inplace/divide_floor.py,
102+
test/simple_source/operation_inplace/divide_true.py,
103+
test/simple_source/operation_inplace/modulo.py,
104+
test/simple_source/operation_inplace/multiply.py,
105+
test/simple_source/operation_inplace/or.py,
106+
test/simple_source/operation_inplace/power.py,
107+
test/simple_source/operation_inplace/shift_left.py,
108+
test/simple_source/operation_inplace/shift_right.py,
109+
test/simple_source/operation_inplace/subtract.py,
110+
test/simple_source/operation_inplace/xor.py,
111+
test/simple_source/operation_unary/invert.py,
112+
test/simple_source/operation_unary/iter.py,
113+
test/simple_source/operation_unary/negative.py,
114+
test/simple_source/operation_unary/not.py,
115+
test/simple_source/operation_unary/positive.py,
116+
test/simple_source/precedence/left.py,
117+
test/simple_source/precedence/right.py,
118+
test/simple_source/precedence/structure.py,
119+
test/simple_source/stmts/00_import.py,
120+
uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse23.py,
121+
uncompyle6/parsers/parse25.py, uncompyle6/scanners/scanner26.py: Fix
122+
some 2.3 bugs; add more 2.3-6. tests
123+
124+
2016-07-09 rocky <rb@dustyfeet.com>
125+
126+
* uncompyle6/parsers/parse23.py: 2.3 while1stmt bug
127+
128+
2016-07-09 rocky <rb@dustyfeet.com>
129+
130+
* : commit ac45e5757c8c57af2c918c79ff4f6195268afec1 Author: rocky
131+
<rocky@gnu.org> Date: Sat Jul 9 05:59:02 2016 -0400
132+
133+
2016-07-09 rocky <rb@dustyfeet.com>
134+
135+
* uncompyle6/parsers/parse23.py: Merge conflict
136+
137+
2016-07-09 rocky <rocky@gnu.org>
138+
139+
* uncompyle6/scanners/scanner3.py: Python3 scanner code cleanup
140+
141+
2016-07-08 rocky <rocky@gnu.org>
142+
143+
* uncompyle6/scanners/scanner3.py,
144+
uncompyle6/scanners/scanner32.py, uncompyle6/scanners/scanner33.py,
145+
uncompyle6/scanners/scanner34.py, uncompyle6/scanners/scanner35.py:
146+
Python 3 code cleanup
147+
148+
2016-07-08 rocky <rb@dustyfeet.com>
149+
150+
* test/Makefile, uncompyle6/scanner.py,
151+
uncompyle6/scanners/scanner24.py, uncompyle6/scanners/scanner25.py,
152+
uncompyle6/scanners/scanner26.py: DRY scanner code. Allow 2.4
153+
decompile from 3.x
154+
155+
2016-07-08 rocky <rocky@gnu.org>
156+
157+
* : Add more 2.4 and 2.6 tests
158+
159+
2016-07-08 rocky <rocky@gnu.org>
160+
161+
* uncompyle6/parsers/parse24.py: 2.4 "import *" grammar rule
162+
163+
2016-07-08 rocky <rocky@gnu.org>
164+
165+
* uncompyle6/parsers/parse24.py, uncompyle6/scanners/scanner2.py,
166+
uncompyle6/scanners/scanner24.py, uncompyle6/scanners/scanner26.py:
167+
Python 2.4 generator expressions and gen_comp_body
168+
169+
2016-07-08 rocky <rocky@gnu.org>
170+
171+
* __pkginfo__.py, uncompyle6/parsers/parse24.py,
172+
uncompyle6/scanners/scanner2.py: <2.5 grammar customizations for
173+
imports and loops
174+
175+
2016-07-08 rocky <rocky@gnu.org>
176+
177+
* __pkginfo__.py, test/Makefile, test/add-test.py,
178+
test/test_pyenvlib.py, test/test_pythonlib.py,
179+
uncompyle6/parser.py, uncompyle6/parsers/parse24.py,
180+
uncompyle6/parsers/parse25.py, uncompyle6/scanner.py,
181+
uncompyle6/scanners/scanner24.py, uncompyle6/scanners/scanner25.py,
182+
uncompyle6/semantics/pysource.py: Start handling Pyton 2.4 bytecodes
183+
1184
2016-07-08 rocky <rocky@gnu.org>
2185

3-
* README.rst, uncompyle6/version.py: Get ready for release 2.6.1
186+
* ChangeLog, NEWS, README.rst, uncompyle6/version.py: Get ready for
187+
release 2.6.1
4188

5189
2016-07-08 rocky <rocky@gnu.org>
6190

NEWS

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
uncompyle6 2.6.2 2016-07-11 Manhattenhenge
2+
3+
- Extend bytecodes back to 2.3
4+
- Fix bugs:
5+
* 3.x and 2.7 set comprehensions,
6+
* while1 loops
7+
* continue statements
8+
- DRY and segregate grammar more
9+
110
uncompyle6 2.6.1 2016-07-08
211

312
- Go over Python 2.5 bytecode deparsing

README.rst

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ Introduction
1111
------------
1212

1313
*uncompyle6* translates Python bytecode back into equivalent Python
14-
source code. It accepts bytecodes from Python version 2.5 to 3.5 or
14+
source code. It accepts bytecodes from Python version 2.3 to 3.5 or
1515
so. The code requires Python 2.6 or later and has been tested on Python
16-
running versions 2.6, 2.7, 3.2, 3.3, 3.4 and 3.5.
16+
running versions 2.3-2.7, and 3.2-3.5.
1717

1818
Why this?
1919
---------
@@ -84,25 +84,21 @@ for usage help.
8484
Known Bugs/Restrictions
8585
-----------------------
8686

87-
Python 2 deparsing decompiles each and all the Python 2.7.10 and
88-
2.7.11 installed packages I have on my system, more than 90% verify
89-
ok. Some of these failures may be bugs in the verification process.
90-
At this point, 2.7 decompilation is better than uncompyle2. A number
91-
of bugs have been fixed over what was in uncompyle2.
87+
Python 2 deparsing decompiles each and all the Python 2.3 to 2.7.10
88+
installed packages I have on my system. Later distributions average
89+
about 200 files.
9290

93-
All of the Python 3.2-3.5 Python standard lib packages that I have
94-
installed on my system deparse. Each Python version has about 200
95-
bytecode files. I'm not sure how well these verify though.
91+
More than 90% of the 2.7 files verify ok Some of these failures may be
92+
bugs in the verification process. At this point, 2.7 decompilation is
93+
better than uncompyle2. A number of bugs have been fixed over what was
94+
in uncompyle2.
9695

97-
There are a few constructs that still need to be added to Python 3.5
98-
Python 3.6 changes things drastically by using word codes rather than
99-
byte codes. So that will be yet another challenge
96+
That said, I'd like the decompilation process still feels a little bit
97+
hacky in certain places and we still get parse errors too often.
10098

101-
Python 2.5 and 2.6 installed library routines also decompile; it is
102-
probably the same as uncompyle2, although some 2.6 bugs from
103-
uncompyle2 have been fixed. We handle 2.5 and 2.6 bytecode a little
104-
bit differently than the way uncompyle2 does so it is harder to assess
105-
quality.
99+
There are a few constructs that still need to be added to Python 3.5.
100+
Python 3.6 changes things drastically by using word codes rather than
101+
byte codes. So that will be yet another challenge.
106102

107103
There is lots to do, so please dig in and help.
108104

uncompyle6/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# This file is suitable for sourcing inside bash as
22
# well as importing into Python
3-
VERSION='2.6.1'
3+
VERSION='2.6.2'

0 commit comments

Comments
 (0)