2018-12-30  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, uncompyle6/version.py: Get ready for release 3.2.5

2018-12-26  rocky <rb@dustyfeet.com>

	* admin-tools/pyenv-newer-versions, uncompyle6/parsers/parse27.py: 
	Use raw string in regexp with "\d"...  Bump python versions used in testing

2018-12-25  rocky <rb@dustyfeet.com>

	* uncompyle6/bin/uncompile.py, uncompyle6/main.py: main.main
	parameter "codes" is not used. Note that.

2018-12-15  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py, uncompyle6/scanners/scanner3.py: 
	Python 3.6+ control flow

2018-12-15  rocky <rb@dustyfeet.com>

	* : commit ffad6ae6d51ddb13cde80e7a7f153d2a34b51067 Author: rocky
	<rb@dustyfeet.com> Date:   Sat Dec 15 09:11:41 2018 -0500

2018-12-15  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Typo

2018-12-15  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Add karma section

2018-12-10  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py: More complete fragment parsing
	for imports

2018-11-12  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: CI runtest skips

2018-11-12  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: CI runtest skips

2018-11-12  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: runtests on CI again

2018-11-12  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: runtests on CI again

2018-11-12  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Typo in last test name

2018-11-12  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: More stdlib test removal

2018-11-12  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Another test bites the dust due to
	control flow complexity

2018-11-12  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Add FIXME not for attribute
	parenthesis

2018-11-11  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py: Control flow bits again

2018-10-27  rocky <rb@dustyfeet.com>

	* NEWS: Correct the last release date

2018-10-27  rocky <rb@dustyfeet.com>

	* admin-tools/pyenv-newer-versions: Administrivia

2018-10-27  rocky <rb@dustyfeet.com>

	* .travis.yml: Tweak travis

2018-10-27  rocky <rb@dustyfeet.com>

	* : commit 2362045c84b3f4f101b6a54dbeb5ff7104df15b6 Author: rocky
	<rb@dustyfeet.com> Date:   Sat Oct 27 11:20:07 2018 -0400

2018-10-27  rocky <rb@dustyfeet.com>

	* .travis.yml, admin-tools/pyenv-newer-versions: Get ready for
	release

2018-10-27  rocky <rb@dustyfeet.com>

	* .github/ISSUE_TEMPLATE/bug-report.md,
	.github/ISSUE_TEMPLATE/feature-request.md, NEWS, __pkginfo__.py,
	uncompyle6/version.py: Get ready for release 3.2.4

2018-10-17  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py: Fix indentation iftrue_stmt24 Fixes #187

2018-10-05  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/04_lastc_with_loops.py,
	uncompyle6/parsers/parse26.py: extend Python 2.6- lastc grammar-rule Fixes #192

2018-10-01  rocky <rb@dustyfeet.com>

	* .github/ISSUE_TEMPLATE/bug-report.md: Note that bytecode should be
	provided.

2018-09-20  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse3.py: Small typos

2018-09-19  rocky <rb@dustyfeet.com>

	* .github/ISSUE_TEMPLATE/bug-report.md,
	.github/ISSUE_TEMPLATE/feature-request.md,
	test/simple_source/expression/06_huge_list.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner2.py,
	uncompyle6/semantics/helper.py: Reinstat expr32 and expr1024
	rules...  to speed up handling long literal lists. See also issue #188 Update issue forms to simplfy via putting instructions as comments.

2018-09-19  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py: decompile bytecode_version defaults to Python
	intepreter version Fixes #189

2018-09-19  rocky <rb@dustyfeet.com>

	* test/simple-uncompyle-code-test.py: Not sure why this is here, but
	fix it so it works.

2018-08-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse24.py, uncompyle6/semantics/customize.py: 
	Handle Python 2.4 if true

2018-08-02  rocky <rb@dustyfeet.com>

	* .github/ISSUE_TEMPLATE/bug-report.md: Update bug report template

2018-08-02  rocky <rb@dustyfeet.com>

	* .github/ISSUE_TEMPLATE/bug-report.md,
	.github/ISSUE_TEMPLATE/feature-request.md, requirements-dev.txt: 
	Guidleines for reporting bugs and openning feature requests

2018-07-15  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/{astnode.py =>
	treenode.py}, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/customize.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/helper.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Change AST to SyntaxTree in many
	places

2018-07-13  rocky <rb@dustyfeet.com>

	* .travis.yml: Python 3.7 is too new for TravisCI

2018-07-13  rocky <rb@dustyfeet.com>

	* .travis.yml: Try 3.7.0 on travis

2018-07-05  rocky <rb@dustyfeet.com>

	* : commit 1b71cfef077fb6e66b33e362166e5f5168ce8a74 Author: rocky
	<rb@dustyfeet.com> Date:   Thu Jul 5 21:47:36 2018 -0400

2018-07-05  R. Bernstein <rocky@users.noreply.github.com>

	* HOW-TO-REPORT-A-BUG.md: Update HOW-TO-REPORT-A-BUG.md

2018-07-03  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: Skip botched 3.8.5 release

2018-07-03  rocky <rb@dustyfeet.com>

	* test/simple_source/bug30/01_comprehension.py: Add a 3.0 test

2018-06-26  rocky <rb@dustyfeet.com>

	* circle.yml: Remove CircleCI 1.1

2018-06-25  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Generalize stdlib test

2018-06-25  rocky <rb@dustyfeet.com>

	* .circleci/config.yml: Another CircleCI 2.0 try

2018-06-25  rocky <rb@dustyfeet.com>

	* .circleci/config.yml: Convert to CircleCI 2.0

2018-06-24  rocky <rb@dustyfeet.com>

	* test/test_pyenvlib.py: Small typo

2018-06-24  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner30.py: 
	Remove some of the 3.0 3.x instruction hackiness

2018-06-24  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py, uncompyle6/semantics/pysource.py: 
	Python 3.0 comprehensions are a snowflake

2018-06-24  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py, uncompyle6/scanners/scanner3.py,
	uncompyle6/scanners/scanner30.py: Make Python 3.0 control flow more
	like 3.x

2018-06-24  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py: Python 3.0 compare-chained2 grammar
	rule

2018-06-24  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py: Extend Python 3.0 "or" grammar rule

2018-06-24  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py: Expand 3.0 while grammar rule

2018-06-24  rocky <rb@dustyfeet.com>

	* test/simple_source/bug30/06_listcomp.py,
	uncompyle6/parsers/parse30.py: Add 3.0 comp_if_not grammar rule

2018-06-24  rocky <rb@dustyfeet.com>

	* test/simple_source/bug31/06_listcomp.py,
	uncompyle6/parsers/parse30.py, uncompyle6/semantics/pysource.py: 
	Improve 3.0 list comprehensions

2018-06-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py, uncompyle6/semantics/pysource.py: 
	Fix Python 3.0 "and" parse rule

2018-06-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py: Had botched 2.6 grammar

2018-06-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse30.py,
	uncompyle6/semantics/pysource.py: More Python 3.0 parse errors

2018-06-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py: Fix one more Python 3.0 parse bug

2018-06-23  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/bug30/00_chained-compare.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse30.py: Python
	3.0 chained comparisions

2018-06-23  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parsers/parse30.py,
	uncompyle6/scanners/scanner30.py: Another Python 3.0 (while) parse
	bug

2018-06-23  rocky <rb@dustyfeet.com>

	* test/simple_source/bug30/02_try_except_except.py,
	uncompyle6/parsers/parse30.py: Fix 3.0 try except bug

2018-06-22  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py: 2nd attempt to get check_grammar working
	on 3.x

2018-06-22  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, pytest/validate.py,
	uncompyle6/scanners/scanner2.py: Some bugs...  Python 3 compiling Python 2 tolerance. Fixes issue #180.  pytest
	test_grammar.py and validate.py fixes for 3.6 testing

2018-06-22  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py: Fix another 3.0 bug

2018-06-22  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py, uncompyle6/semantics/customize3.py: 
	Fix two Python 3.0 bugs...  * don't add _[0] list comprehension variables * add POP_TOP in _ifstmts_jmp; c_stmst for now isn't optional

2018-06-19  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Better is_pypy defaults

2018-06-19  rocky <rb@dustyfeet.com>

	* : commit 98cd06d6e05f816187df20ddb69e8562d935a69f Author: rocky
	<rb@dustyfeet.com> Date:   Tue Jun 19 04:08:20 2018 -0400

2018-06-18  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Omit another test on gcc110

2018-06-14  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Previous two releases botched
	iterated list comprehensions

2018-06-13  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/stmts/00_assign.py: Add first
	3.0 run test

2018-06-13  rocky <rb@dustyfeet.com>

	* README.rst: One last grammar typo

2018-06-13  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/version.py: Get ready for release 3.2.3

2018-06-13  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/parsers/parse30.py: Fix one more 3.0
	parsing bug

2018-06-13  rocky <rb@dustyfeet.com>

	* README.rst, test/Makefile, test/test_pythonlib.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse13.py,
	uncompyle6/parsers/parse14.py, uncompyle6/scanner.py,
	uncompyle6/scanners/scanner13.py: Add Python 1.3 decompilation ..  Reduced checking via "make check-short"

2018-06-13  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/make_function.py: Had botched parameter order
	in 3.x. Sigh

2018-06-12  rocky <rb@dustyfeet.com>

	* README.rst: Note that we handle Python 1.4 now

2018-06-12  rocky <rb@dustyfeet.com>

	* README.rst: Fix wording

2018-06-12  rocky <rb@dustyfeet.com>

	* pytest/validate.py, requirements.txt: Administrivia: Remove six
	dependency..  add version of hypothesis known to work

2018-06-12  rocky <rb@dustyfeet.com>

	* pytest/test_fstring.py, pytest/test_function_call.py,
	pytest/test_single_compile.py: Disable hypothesis on 2.6.9

2018-06-12  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/version.py: Get ready for release 3.2.2

2018-06-12  rocky <rb@dustyfeet.com>

	* README.rst: Update documentation

2018-06-12  rocky <rb@dustyfeet.com>

	* README.rst, uncompyle6/scanner.py: Fix bug introduced in last
	commit

2018-06-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py, uncompyle6/scanner.py,
	uncompyle6/scanners/scanner3.py: More 3.0 bug fixing and tollerance
	and...  add some 1.4 bytecode tests

2018-06-12  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, admin-tools/check-newer-versions.sh,
	admin-tools/check-older-versions.sh, uncompyle6/scanner.py: Python
	3.0 fixes + administrivia

2018-06-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py, uncompyle6/scanners/scanner3.py: 
	Better "continue" detection on Python 3.0

2018-06-11  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py: Remove unused 3.0 grammar rules

2018-06-11  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, setup.py, uncompyle6/bin/uncompile.py,
	uncompyle6/semantics/make_function.py: Allow Python 3.0 and fix
	default param bug in 3.0

2018-06-10  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py,
	uncompyle6/semantics/make_function.py: Fix more Python 3.0 parse
	bugs

2018-06-10  rocky <rb@dustyfeet.com>

	* test/simple_source/bug30/03_pop_top.py,
	uncompyle6/parsers/parse30.py: More 3.0 grammar fixes...  3.0 is such as snowflake

2018-06-10  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: last change left 3.2 finding
	comp_iter broken

2018-06-09  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py, uncompyle6/semantics/pysource.py: 
	3.0 list comprehensions

2018-06-09  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse30.py, uncompyle6/semantics/pysource.py: 
	Python 3.0 set comprehensions

2018-06-09  rocky <rb@dustyfeet.com>

	* uncompyle6/disas.py, uncompyle6/parsers/parse30.py,
	uncompyle6/semantics/pysource.py: Some Python 3.0 fixes...  Needs more in this direction though.

2018-06-04  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: wrong test disabled

2018-06-04  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh, uncompyle6/parsers/parse27.py,
	uncompyle6/scanners/scanner2.py: More bugs - note and disable tests
	for them

2018-06-04  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/version.py: Get ready for release 3.2.1

2018-06-04  rocky <rb@dustyfeet.com>

	* test/simple_source/bug14/00_unpack_list.py,
	uncompyle6/parsers/parse14.py, uncompyle6/parsers/parse15.py,
	uncompyle6/parsers/parse2.py, uncompyle6/scanners/scanner15.py: Fix
	Python 1.5- bug in handling unpack list

2018-06-04  rocky <rb@dustyfeet.com>

	* test/simple_source/bug14/01_print.py,
	test/simple_source/bug14/02_continue.py,
	test/stdlib/{compile_file_1x.py => compile-file-1x.py},
	uncompyle6/parsers/parse14.py: Fix more Python 1.4 decompilation
	bugs

2018-06-04  rocky <rb@dustyfeet.com>

	* test/simple_source/bug14/01_print.py,
	test/stdlib/compile-file.py, test/stdlib/compile_file_1x.py,
	uncompyle6/parsers/parse14.py, uncompyle6/scanners/scanner14.py: 
	Improve Python 1.4 bytecode coverage

2018-06-04  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse14.py: Some Python
	1.4 fixes

2018-06-03  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/parser.py: Remove schmutz

2018-06-03  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/parser.py,
	uncompyle6/parsers/parse14.py: Better Python 1.4 support

2018-05-21  rocky <rb@dustyfeet.com>

	* appveyor.yml: See if we can get Appveyor working again...

2018-05-19  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py: Past fix of conditional_not bleed
	into 2.5...  and it shouldn't have

2018-05-19  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/version.py: Get ready for release 3.2.0

2018-05-19  rocky <rb@dustyfeet.com>

	* circle.yml: CircleCI administrivia

2018-05-19  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: xdis 3.8.2 has python 1.4 support

2018-05-19  rocky <rb@dustyfeet.com>

	* uncompyle6/scanner.py: Tolerate bytecode < 1.5

2018-05-19  rocky <rb@dustyfeet.com>

	* test/Makefile, test/test_pythonlib.py,
	uncompyle6/parsers/parse14.py, uncompyle6/scanners/scanner14.py: Add
	bytecode 1.4 small tests Many bugs in 1.4 exist. For a future release

2018-05-19  rocky <rb@dustyfeet.com>

	* test/simple_source/comprehension/05_dict_comp.py,
	uncompyle6/parsers/parse14.py, uncompyle6/parsers/parse15.py,
	uncompyle6/scanner.py, uncompyle6/scanners/scanner14.py,
	uncompyle6/scanners/scanner15.py, uncompyle6/scanners/scanner21.py,
	uncompyle6/scanners/scanner22.py, uncompyle6/scanners/scanner23.py,
	uncompyle6/scanners/scanner24.py, uncompyle6/scanners/scanner25.py: 
	Start Python 1.4 decompilation ...  Tidy up test code for issue 162 and comments for some disassembly
	massaging.

2018-05-14  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: batch workaround

2018-05-13  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Adjust showtree() calls

2018-05-13  rocky <rb@dustyfeet.com>

	* uncompyle6/bin/uncompile.py, uncompyle6/semantics/pysource.py,
	uncompyle6/show.py: --tree++ shows template rule when it is used

2018-05-11  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Tweak 2.6.9 for batch test machine

2018-05-09  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/03_complex_and.py,
	uncompyle6/parsers/parse26.py: More 2.6 control flow logix futzing

2018-05-08  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Need full filename in runtests.sh

2018-05-08  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Limit more tests in batch

2018-05-08  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/05_try_else.py, test/stdlib/runtests.sh: 
	Note we can't handle try/else sometimes in 2.7

2018-05-08  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py: "and" handling before 2.6 is
	different

2018-05-08  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py: 2.6 if-else-not handling...  For now, we say that conditional-not can't be in an "and".

2018-05-08  rocky <rb@dustyfeet.com>

	* : commit e76f1f107f8b5b36291f0d0bd9b466a830eda8dd Author: rocky
	<rb@dustyfeet.com> Date:   Tue May 8 08:49:43 2018 -0400

2018-05-03  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: remove 2.6.9 test_grammar.py for now

2018-05-03  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/03_for_try_raise.py,
	uncompyle6/parsers/parse27.py: Fixes #174

2018-05-01  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py: Add Another 2.7.5 "while 1" rule

2018-05-01  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py: Add if_not rule for Python 2.7

2018-05-01  rocky <rb@dustyfeet.com>

	* test/simple_source/bug275/01_while1.py,
	uncompyle6/parsers/parse27.py: Python 2.7.5 tolerance

2018-04-29  rocky <rocky@gnu.org>

	* test/stdlib/runtests.sh: stdlib batch testing workarounds

2018-04-28  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/01_ifelse_listcomp.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/pysource.py: 
	2.6, 2.7 Parse if else inside list comprehension Fixes #171

2018-04-28  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Set precedence better for list
	comprehensions.

2018-04-27  rocky <rb@dustyfeet.com>

	* test/simple_source/looping/04_while1_while1.py,
	uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse27.py: while1
	grammar rule cleanup Closes #172

2018-04-25  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/consts.py: Typo

2018-04-25  rocky <rb@dustyfeet.com>

	* test/simple_source/branching/02_ifelse_lambda.py,
	uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse36.py, uncompyle6/semantics/consts.py: 
	Handle if not else in lambdas...  Fixes #170

2018-04-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py,
	uncompyle6/parsers/parse36.py-notyet: CALL_FUNCTION_EX
	specialization in 3.6

2018-04-23  rocky <rb@dustyfeet.com>

	* : commit a18dc340ce4622a4435bf577fb3a37735fd95a62 Author: rocky
	<rb@dustyfeet.com> Date:   Mon Apr 23 15:16:03 2018 -0400

2018-04-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py: Start to narrow 3.7 FUNCTION_EX
	grammar

2018-04-21  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse35.py: Correct (3.7) use fof
	BUILD_MAP_UNPACK_WITH_CALL

2018-04-20  rocky <rb@dustyfeet.com>

	* Makefile, uncompyle6/parsers/parse36.py,
	uncompyle6/semantics/customize3.py: Fix 3.7 aysnc def testing

2018-04-19  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse37.py: Generalize 3.7 attribute with
	LOAD_METHOD

2018-04-19  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py, uncompyle6/parsers/parse37.py,
	uncompyle6/semantics/customize3.py: customize "async for" on 3.6.
	and 3.7

2018-04-19  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse35.py, uncompyle6/parsers/parse36.py,
	uncompyle6/semantics/customize3.py: Fix some 3.6/3.7 bugs

2018-04-18  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: 2.6 compatability

2018-04-18  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Ooops - remove debug statement.

2018-04-18  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse35.py, uncompyle6/parsers/parse36.py,
	uncompyle6/scanners/scanner3.py: A more uniform way to track opcodes
	seen...  use a set rather than these boolean variables. Done in 3.x only for
	now. May do more later..

2018-04-16  rocky <rb@dustyfeet.com>

	* admin-tools/pyenv-newer-versions, pytest/test_grammar.py: 
	Administrivia

2018-04-16  rocky <rb@dustyfeet.com>

	* NEWS, pytest/test_grammar.py, uncompyle6/parsers/parse3.py: python
	2.6 grammar test tweak

2018-04-16  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse37.py, uncompyle6/version.py: Get ready for
	release 3.8.1 ...  and more 3.7 grammar customization

2018-04-15  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py: Plough forward on 3.7
	CALL_FUNCTION_EX

2018-04-15  rocky <rb@dustyfeet.com>

	* README.rst: More wordsmithing

2018-04-15  rocky <rb@dustyfeet.com>

	* README.rst: Wordsmithing

2018-04-15  rocky <rocky@gnu.org>

	* test/stdlib/runtests.sh: testing administrivia

2018-04-14  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py: Fix bug in fragment parser

2018-04-13  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize3.py,
	uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/make_function.py: codeNode->code_node

2018-04-13  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py: More 3.7 grammar rules...  largely adapted from 3.6

2018-04-13  rocky <rb@dustyfeet.com>

	* test/Makefile, test/test_pythonlib.py,
	uncompyle6/parsers/parse36.py, uncompyle6/parsers/parse37.py: Forge
	on with 3.7

2018-04-13  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse37.py, uncompyle6/scanners/scanner3.py,
	uncompyle6/semantics/customize3.py: Small 3.7 steps

2018-04-12  rocky <rb@dustyfeet.com>

	* uncompyle6/bin/uncompile.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse37.py: Start to handle 3.7

2018-04-12  rocky <rb@dustyfeet.com>

	* README.rst, admin-tools/pycdc-runtests.sh,
	admin-tools/uncompyle2-runtests.sh,
	uncompyle6/semantics/customize3.py: Testing with other decompiler
	tools

2018-04-12  rocky <rb@dustyfeet.com>

	* admin-tools/pycdc-runtests.sh: Note verification process and
	results

2018-04-12  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize3.py,
	uncompyle6/semantics/pysource.py: Isolate Python 3 class code from
	Python2

2018-04-12  rocky <rb@dustyfeet.com>

	* : commit edbab038ca1e9d078b6e99ce38d253e8ad251e8f Author: rocky
	<rb@dustyfeet.com> Date:   Thu Apr 12 17:59:39 2018 -0400

2018-04-12  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Batch testing adjustment

2018-04-09  rocky <rb@dustyfeet.com>

	* test/bytecode_2.4_run/README, test/bytecode_2.5_run/README,
	test/bytecode_2.6_run/README, test/bytecode_2.7_run/README,
	test/bytecode_3.0_run/README, test/bytecode_3.1_run/README,
	test/bytecode_3.2_run/README, test/bytecode_3.3_run/README,
	test/bytecode_3.4_run/README, test/bytecode_3.5_run/README,
	test/bytecode_3.6_run/README, uncompyle6/bin/uncompile.py: Small doc
	typos

2018-04-08  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/version.py: Get ready for release 3.1.2

2018-04-08  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_call_function.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: 
	Slightly Python 3.x handing of subclasses...  which are created via a call to create a subclass.  Should be more general though.

2018-04-08  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, admin-tools/pyenv-newer-versions, setup.py,
	uncompyle6/semantics/make_function.py: Can run on 3.1. Fix some 3.1
	function-call bugs

2018-04-07  rocky <rb@dustyfeet.com>

	* test/simple_source/bug33/02_named_and_kwargs.py: Update test

2018-04-07  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/bug31/05_abc_test.py,
	uncompyle6/semantics/pysource.py: Handle class with one kwarg
	subclass

2018-04-06  rocky <rb@dustyfeet.com>

	* .gitignore: Administrivia

2018-04-06  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/07_build_map_unpack.py,
	uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py,
	uncompyle6/semantics/customize3.py: Improve 3.5+ BUILD_MAP_UNPACK...  And add build_tuple_unpack runtime test from a previous commit.  We are far from out of the woods, as there is more to do and we've
	uncovered more bugs in handling this.

2018-04-06  rocky <rocky@gnu.org>

	* test/grammar-cover/grammar.sh, test/run-and-email.sh: Testing
	administriva

2018-04-06  rocky <rocky@gnu.org>

	* test/stdlib/run-and-email.sh: Add more stdlib run test coverage

2018-04-06  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize3.py,
	uncompyle6/semantics/pysource.py: Make sure we call 'expr' go set
	precidence right

2018-04-06  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner3.py,
	uncompyle6/semantics/customize3.py,
	uncompyle6/semantics/pysource.py: Better handling of
	BUILD_TUPLE_UNPACK

2018-04-05  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: Start folding in 3.5 vararg ops
	as varargs ops

2018-04-04  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: Bump xdis version

2018-04-04  rocky <rb@dustyfeet.com>

	* Makefile, pytest/test_grammar.py: More testing

2018-04-04  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py,
	uncompyle6/semantics/customize3.py,
	uncompyle6/semantics/make_function.py: Small tweaks

2018-04-04  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py,
	uncompyle6/semantics/customize3.py,
	uncompyle6/semantics/pysource.py: Split of Python 3 semantic-action
	customization...  And remove duplicate customization code in pysource.

2018-04-04  rocky <rb@dustyfeet.com>

	* test/run-and-email.sh, test/stdlib/runtests.sh: Increase testing

2018-04-04  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/make_function.py: Fix 3.2 to 3.3
	make_function more properly

2018-04-03  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py,
	uncompyle6/semantics/make_function.py: 3.2-3.4 Functions
	cals/defininitions yet again And we're still not out of the woods.

2018-04-03  rocky <rb@dustyfeet.com>

	* : commit e9c0d03b8bc538ca12ace0738d1abfdedc8dbdb2 Author: rocky
	<rb@dustyfeet.com> Date:   Tue Apr 3 17:57:37 2018 -0400

2018-04-03  rocky <rb@dustyfeet.com>

	* Makefile, requirements-dev.txt: More administrivia

2018-04-03  rocky <rb@dustyfeet.com>

	* requirements-dev.txt: Administrivia Adjust requirements-dev for 2.6.9

2018-04-03  rocky <rb@dustyfeet.com>

	* Makefile, pytest/test_fjt.py, pytest/test_function_call.py,
	pytest/test_grammar.py, pytest/test_single_compile.py,
	uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
	uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner3.py: 
	DRY scanner code more...  Expand 2.6 testing

2018-04-03  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_call_function.py,
	uncompyle6/semantics/customize.py: 3.5 CALL_FUNCTION_VAR bug

2018-04-03  rocky <rb@dustyfeet.com>

	* pytest/test_fjt.py, uncompyle6/scanner.py,
	uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
	uncompyle6/scanners/scanner27.py, uncompyle6/scanners/scanner3.py: 
	DRY instruction building code...  There is a little more that could be done with
	self.offset2inst_index

2018-04-01  rocky <rb@dustyfeet.com>

	* test/run-and-email.sh: More pyenv testing

2018-04-01  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, admin-tools/pyenv-newer-versions: Add 3.2 to list
	of supported distributions

2018-04-01  rocky <rb@dustyfeet.com>

	* NEWS: Update NEWS

2018-04-01  rocky <rb@dustyfeet.com>

	* uncompyle6/version.py: Get ready for release 3.1.1

2018-04-01  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/01_map_unpack.py,
	uncompyle6/semantics/pysource.py: Work on 3.5+ BUILD_MAP_UNPACK...  bugs still remain, just reduced.

2018-04-01  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: 
	Handle 3.5+ BUILD_MAP_UNPACK used in dictionaries A number of weaknesses have been uncovered though

2018-04-01  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/10_argparse.py,
	uncompyle6/semantics/customize.py: More 3.6 CALL_FUNCTION argument
	parsing

2018-04-01  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_call_function.py, uncompyle6/main.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py,
	uncompyle6/semantics/customize.py,
	uncompyle6/semantics/make_function.py: Add Python  3.6 setcomp and
	another call bug

2018-03-31  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/10_argparse.py,
	uncompyle6/parsers/parse36.py, uncompyle6/semantics/customize.py: 
	3.6 argument parsing

2018-03-31  rocky <rb@dustyfeet.com>

	* test/simple_source/bug25/04_try_except_else.py,
	test/simple_source/bug35/06_try_return.py,
	test/simple_source/bug36/05-for-ifelse.py,
	test/simple_source/exception/04_assert_continue.py,
	uncompyle6/parsers/parse36.py: Another 3.6 control-flow bug...  and add source to some previous bytecode tests

2018-03-29  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py: Add semantic action rule for
	except_return

2018-03-29  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_call_function.py,
	uncompyle6/semantics/make_function.py: Python 3.6 MAKE_FUNCTION yet
	again...  And we'll eventually have to do more down the line

2018-03-29  rocky <rb@dustyfeet.com>

	* uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
	uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner27.py,
	uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner30.py: 
	Replace all_instrs with inst_matches...  which works on 3.6+. Still should write a pytest for this.

2018-03-29  rocky <rb@dustyfeet.com>

	* : commit 7d110f17bc307593db0ca202ca2ce87ed6cf3c20 Author: rocky
	<rb@dustyfeet.com> Date:   Thu Mar 29 17:21:22 2018 -0400

2018-03-29  R. Bernstein <rocky@users.noreply.github.com>

	* : Merge pull request #166 from rocky/grammer-reduce Some 3.x grammar reduction...

2018-03-28  rocky <rb@dustyfeet.com>

	* test/Makefile: Limit coverage on 3.6 for now

2018-03-28  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/01_loop_if_continue.py,
	uncompyle6/parsers/parse35.py: 3.5, 3.6 loop if/continue handling

2018-03-28  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/05_not_unconditional.py,
	test/simple_source/stmts/15_assert.py: Reinstate a test

2018-03-27  R. Bernstein <rocky@users.noreply.github.com>

	* : Merge pull request #165 from rocky/grammar-cleanup2 Grammar reduction for 2.6/2.7,3.x

2018-03-27  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/01_while_if_then.py,
	uncompyle6/parsers/parse35.py, uncompyle6/scanners/scanner3.py: 3.5+
	handle then before "if" jump going to loop

2018-03-27  rocky <rb@dustyfeet.com>

	* test/Makefile, test/grammar-cover/grammar.sh,
	uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py: Grammar
	reduction for 2.6/2.7,3.x

2018-03-27  rocky <rocky@gnu.org>

	* test/grammar-cover/run-and-email.sh: grammar-cover run-and-email
	fixup

2018-03-27  rocky <rocky@gnu.org>

	* test/grammar-cover/.gitignore, test/grammar-cover/convert.sh,
	test/grammar-cover/run-and-email.sh, test/stdlib/.gitignore: 
	grammar-cover administrivia

2018-03-27  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py: Python 3.6 CALL_FUNCTION_EX
	fixes

2018-03-26  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/semantics/customize.py: 3.5
	CALL_FUNCTION_EX

2018-03-26  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_call_function.py,
	uncompyle6/semantics/customize.py: More Python 3.4 CALL_FUNCTION_VAR

2018-03-26  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/stmts/15_assert.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse34.py: LOAD
	assert needs to be on 3.x...  Expand testing

2018-03-26  rocky <rb@dustyfeet.com>

	* : commit c5f8bbf32d976d6f50baf1d514a2018398ee2596 Author: rocky
	<rb@dustyfeet.com> Date:   Mon Mar 26 14:50:17 2018 -0400

2018-03-26  rocky <rb@dustyfeet.com>

	* test/Makefile: Limit grammar coverage of 3.5.5 for now

2018-03-26  rocky <rb@dustyfeet.com>

	* test/Makefile: cover all of 2.6.9

2018-03-26  rocky <rocky@gnu.org>

	* test/grammar-cover/grammar-all.sh: There is no 2.8

2018-03-26  rocky <rb@dustyfeet.com>

	* test/grammar-cover/README.md, test/grammar-cover/grammar.sh: 
	Grammar coverage hacking

2018-03-26  rocky <rb@dustyfeet.com>

	* test/grammar-cover/grammar-all.sh, test/grammar-cover/grammar.sh,
	test/grammar-cover/grammar24.sh, test/grammar-cover/grammar26.sh,
	test/grammar-cover/grammar27.sh, test/grammar-cover/grammar33.sh,
	test/grammar-cover/grammar34.sh: DRY grammar code

2018-03-26  rocky <rocky@gnu.org>

	* test/Makefile: Back off full 2.7.14 testing for now

2018-03-26  rocky <rb@dustyfeet.com>

	* test/grammar-cover/grammar34.sh: Grammar coverage work

2018-03-26  rocky <rocky@gnu.org>

	* test/Makefile: Administrivia: grammar coverage

2018-03-26  rocky <rocky@gnu.org>

	* test/Makefile, test/grammar-cover/grammar26.sh,
	test/grammar-cover/grammar27.sh: Administrivia: grammar coverage

2018-03-26  rocky <rb@dustyfeet.com>

	* test/grammar-cover/grammar26.sh, test/grammar-cover/grammar27.sh,
	test/grammar-cover/grammar33.sh: Grammar coverage hacking

2018-03-26  rocky <rb@dustyfeet.com>

	* test/Makefile, test/grammar-cover/grammar24.sh: More grammar
	coverage hacking

2018-03-26  rocky <rb@dustyfeet.com>

	* test/grammar-cover/convert.sh, test/grammar-cover/grammar24.sh: 
	Start grammar coverage testing

2018-03-26  rocky <rb@dustyfeet.com>

	* : 3.5 CALL_FUNCTION_VAR runnable test

2018-03-26  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_call_function.py,
	uncompyle6/semantics/customize.py: Python 3.5 CALL_FUNCTION_VAR
	handling

2018-03-26  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_call_function.py,
	uncompyle6/semantics/customize.py, uncompyle6/semantics/pysource.py: 
	Bang on 3.4 CALL_FUNCTION_VAR

2018-03-25  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: 3.6.4 runtests.sh futzing

2018-03-25  rocky <rb@dustyfeet.com>

	* test/stdlib/run-and-email.sh: Put 3.5.5 back into testing

2018-03-25  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_call_function.py,
	uncompyle6/parsers/parse35.py, uncompyle6/semantics/customize.py: 
	3.5 *() arg without further args

2018-03-25  R. Bernstein <rocky@users.noreply.github.com>

	* : Merge pull request #163 from rocky/grammar-cleanup Grammar cleanup

2018-03-25  rocky <rb@dustyfeet.com>

	* test/stdlib/run-and-email.sh: Adjust stdlib tests

2018-03-25  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py: Adjust test_grammar for recent changes

2018-03-25  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: More
	grammar specialization by instruction

2018-03-25  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py: More raise vs. assert hacky
	distinctions

2018-03-25  rocky <rb@dustyfeet.com>

	* : commit 631940887f4406d476f500170ca369ac831e646f Author: rocky
	<rb@dustyfeet.com> Date:   Sun Mar 25 17:34:38 2018 -0400

2018-03-25  rocky <rocky@gnu.org>

	* test/.gitignore, test/stdlib/run-and-email.sh: Increase testing

2018-03-25  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/pysource.py: Less ambigouus 2.x grammar rule
	for BUILD_MAP

2018-03-24  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py: bang on CALL_FUNCTION_EX_KW

2018-03-24  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py: 3.5 CALL_FUNCTION_VAR semantic
	handling

2018-03-24  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_call_function.py,
	uncompyle6/semantics/customize.py, uncompyle6/semantics/pysource.py: 
	Towards handling 3.x' CALL_FUNCTION_VAR correctly

2018-03-24  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/pysource.py: Fix bug introduced in last commit

2018-03-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/semantics/customize.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Fix parser slowness in decompiling
	3.x locale.py..  And remove grammar inefficiency in adding extraneous kwargs in <=
	3.2 kwargs was nullable so it might not have been wasn't wrong, just
	inefficient.

2018-03-22  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/04_try_finally.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/customize.py: 
	3.6 try except-as bug

2018-03-22  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/consts.py, uncompyle6/semantics/customize.py: 
	Localize call_kw precedence to 3.6

2018-03-22  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py: 
	Isolate some 3.x dictcomp grammar rules

2018-03-21  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Omit 2.7 test_generators.py

2018-03-21  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/version.py: Get ready for release 3.1.0

2018-03-21  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py: Comment out test/demo code

2018-03-21  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/01_fstring.py,
	test/simple_source/bug36/02_kwargs.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/customize.py: A
	couple of 3.6 bugs...  remove parens around decorators by adjusting precidence Partial
	handling of quotes within 3.6 format strings

2018-03-21  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: Messed up API compatibility

2018-03-21  rocky <rb@dustyfeet.com>

	* : commit 9368b63a2f9733a826e01322721df4ca348b344a Author: rocky
	<rb@dustyfeet.com> Date:   Wed Mar 21 16:52:22 2018 -0400

2018-03-21  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/04_class_kwargs.py,
	uncompyle6/semantics/pysource.py: 3.6 subclass extraction bug

2018-03-21  rocky <rb@dustyfeet.com>

	* : commit 0c3db340fa69acb2e06832260fdf1428f7d370ee Author: rocky
	<rb@dustyfeet.com> Date:   Wed Mar 21 13:18:18 2018 -0400

2018-03-21  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/04_class_kwargs.py,
	uncompyle6/semantics/pysource.py: 3.6 CALL_FUNCTION_KW handling

2018-03-21  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py: Back off write "mode" setting to < 3.0

2018-03-21  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py: Python code output should be binary...  as it may contain weird characters in strings. in 3.6 or so r

2018-03-20  rocky <rb@dustyfeet.com>

	* test/run-and-email.sh: Test administrivia

2018-03-20  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Another 2.7 runtests.sh ignore.

2018-03-20  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: ignore 2.6.9 test in runtests.sh It seems to fail intermittently

2018-03-20  rocky <rb@dustyfeet.com>

	* : commit ff50a7f37b2e62012b4bcfc2fc211f448bfcd1f5 Author: rocky
	<rb@dustyfeet.com> Date:   Tue Mar 20 16:14:53 2018 -0400

2018-03-20  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py: Work on fragments API...  * Add code_deparse_around_offset * find_globals -> find_globals_and_nonlocals

2018-03-20  rocky <rb@dustyfeet.com>

	* test/run-and-email.sh: Administrivia: run-and-email.sh tweaks

2018-03-20  rocky <rb@dustyfeet.com>

	* .travis.yml, test/run-and-email.sh: Administrivia: Adjust Travis 2.7 environment Batch testing of all 3.4.8 pyenv files

2018-03-20  rocky <rb@dustyfeet.com>

	* test/simple_source/bug34/05_while1_if_continue.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse34.py: Adjust
	3.x while1else reduction check

2018-03-20  rocky <rb@dustyfeet.com>

	* test/simple_source/bug34/05_while1_if_continue.py,
	uncompyle6/parsers/parse34.py: Extend 3.4: "while 1: if : continue"
	handling

2018-03-20  rocky <rocky@gnu.org>

	* test/stdlib/run-and-email.sh: Fix status on failed runtests

2018-03-20  rocky <rocky@gnu.org>

	* test/run-and-email.sh: Correct max on email subject header

2018-03-20  rocky <rb@dustyfeet.com>

	* test/run-and-email.sh: Increase batch testing for 3.4.8

2018-03-20  rocky <rb@dustyfeet.com>

	* test/simple_source/bug34/05_while1_if_continue.py: Note where
	3.4's 05 test came from

2018-03-20  rocky <rb@dustyfeet.com>

	* test/simple_source/bug34/05_while1_if_continue.py,
	uncompyle6/parsers/parse34.py, uncompyle6/semantics/helper.py: Two
	3.4 fixes..  * LOAD_DEREF does not signal "nonlocal" variables * Add rule for "if" with a "continue" and "return"

2018-03-19  rocky <rocky@gnu.org>

	* test/run-and-email.sh: Add 3.5.5 pyenv testing

2018-03-19  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse36.py: Python 2 "for" grammar rule isolation

2018-03-19  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/03_try_return_except.py,
	uncompyle6/parsers/parse36.py: Fix 3.6 try/except with return

2018-03-19  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/04_try_finally.py,
	test/simple_source/bug36/05_if_and_comp.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py: Fix a
	3.6 try/except-as bug

2018-03-19  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/05_36lambda.py,
	uncompyle6/parsers/parse3.py: More 3.6 lambda handling

2018-03-19  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/05_36lambda.py,
	uncompyle6/parsers/parse3.py: Another 3.6 lambda parsing bug

2018-03-19  rocky <rb@dustyfeet.com>

	* test/simple_source/bug33/05_nonlocal.py,
	uncompyle6/semantics/helper.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Handle 3.x "nonlocal" statement

2018-03-19  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/05_while_and_if.py,
	uncompyle6/parsers/parse36.py: Adjust 3.6 "while" loop grammar

2018-03-18  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/05_36lambda.py,
	uncompyle6/parsers/parse3.py: Add Python 3.6 mklambda rule

2018-03-18  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/05_if_and_comp.py,
	uncompyle6/parsers/parse36.py: Fix 3.6 list if "and" comprehension
	bug

2018-03-08  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/scanners/scanner2.py: 
	Slightly better assert detection

2018-03-08  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: We don't do python 3.1 or 3.2

2018-03-07  rocky <rb@dustyfeet.com>

	* test/run-and-email.sh: And another

2018-03-07  rocky <rocky@gnu.org>

	* test/run-and-email.sh: One more

2018-03-07  rocky <rocky@gnu.org>

	* test/run-and-email.sh: More run-and-email tweaks

2018-03-07  rocky <rocky@gnu.org>

	* test/run-and-email.sh: Another run-and-email shell tweak

2018-03-07  rocky <rb@dustyfeet.com>

	* test/run-and-email.sh: Test administrivia

2018-03-07  rocky <rocky@gnu.org>

	* test/stdlib/runtests.sh: Tweak summary message

2018-03-07  rocky <rocky@gnu.org>

	* test/run-and-email.sh, test/stdlib/run-and-email.sh: More test
	shell tweaking

2018-03-07  rocky <rb@dustyfeet.com>

	* test/run-and-email.sh: Allow setting max tests via MAX_TESTS env
	var

2018-03-07  rocky <rb@dustyfeet.com>

	* test/run-and-email.sh, test/stdlib/run-and-email.sh: Only run if
	pyenv works

2018-03-07  rocky <rocky@gnu.org>

	* test/run-and-email.sh: Set pyenv version in test

2018-03-07  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py: Need additional try vs try/else
	checks

2018-03-07  rocky <rocky@gnu.org>

	* .gitignore, test/run-and-email.sh: Add another batch test

2018-03-07  rocky <rb@dustyfeet.com>

	* NEWS, __pkginfo__.py, uncompyle6/version.py: Get ready for release
	3.0.1

2018-03-07  rocky <rocky@gnu.org>

	* test/stdlib/run-and-email.sh: For batch testing

2018-03-06  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Go over 2.6.9 runtests.sh

2018-03-06  rocky <rb@dustyfeet.com>

	* test/test_pyenvlib.py: test_pyenvlib.py return number of failed
	now

2018-03-06  rocky <rb@dustyfeet.com>

	* test/simple_source/stmts/02_while1else.py,
	uncompyle6/parsers/parse26.py: Last 2.6 while1 bug...  before all of 2.6.9 stdlib parses without error.

2018-03-06  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/03_tryelse_continue.py,
	uncompyle6/parsers/parse26.py: Another 2.6 try parse bug

2018-03-06  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/03_tryelse_continue.py,
	uncompyle6/parsers/parse26.py: Better 2.6 tryifelse detection

2018-03-06  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/02_while1_if_and.py,
	uncompyle6/parsers/parse26.py: More 2.6 while-loop control flow
	parsing

2018-03-06  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Type comp_ifnot ->
	comp_if_not...  By the way, the sense of comp_if and list_if is reversed.  Will fix
	later...

2018-03-06  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/02_while1_if_and.py,
	uncompyle6/parsers/parse26.py: Python 2.6 while1 if/and handling

2018-03-06  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py: 2.6- CONTINUE/JUMP_BACK confusion
	workaroud

2018-03-05  rocky <rb@dustyfeet.com>

	* admin-tools/run-pyenvlib-test-all.sh, admin-tools/setup-master.sh: 
	Administrivia...  - Add script to run test_pyenvlib.py on everything - Bump 3.6 version 3.6.4

2018-03-05  rocky <rb@dustyfeet.com>

	* test/simple_source/stmts/01_rel_import.py,
	uncompyle6/scanners/scanner2.py, uncompyle6/semantics/pysource.py: 
	Small changes...  pysource.py: Bug fix for relative imports.  scanner2.py: Remove a debug expression

2018-03-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse22.py: Python 2.2 code anomoly? Python 2.2 may generate PRINT_ITEM_CONT in some places for
	PRINT_ITEM

2018-03-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	Need to back off set_comp change a little...  There was set_comp already. So what had been setcomp_func is now
	merely set_comp_func rather than set_comp. Small improvement but in
	the right direction, still

2018-03-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	dictcomp_func -> dict_comp_func...  to match AST better. Also adds a correction in last commit,
	including set_comp -> set_comp_expr where apprpriate Note: can't use dict_comp as that was already used.  But
	dict_comp_func is matches AST better than dictcomp_func

2018-03-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	setcomp_func -> set_comp ...  to match AST name more closely

2018-03-05  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/comprehension/05_dict_comp.py,
	uncompyle6/parsers/parse27.py: Dictcomp with if for 2.7...  extend grammar in last commit to 2.7 which also has dictionary
	comprehensions

2018-03-05  rocky <rb@dustyfeet.com>

	* test/simple_source/comprehension/05_dict_comp.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/pysource.py: grammar and semantics for dict
	comp with "if" Fixes #162

2018-03-05  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/08_distbug.py,
	uncompyle6/parsers/parse26.py: Adjust that 2.2-2.6 "while" may not
	have COME_FROM

2018-03-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse24.py,
	uncompyle6/parsers/parse26.py: additional while1 grammar rules for
	2.3-2.6

2018-03-04  rocky <rb@dustyfeet.com>

	* test/simple_source/bug25/08_if_while_else.py,
	uncompyle6/parsers/parse26.py, uncompyle6/scanners/scanner2.py: 2.6
	and before COME_FROM handling...  also, add in some of the test bytecode from the python-2.4 branch

2018-03-04  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/make_function.py: look for "closure" node
	from the end...  Fix previous commit. Looking from the beginning fails because there
	are a variable number of default values. From the end though seems
	fixed.

2018-03-04  rocky <rb@dustyfeet.com>

	* test/simple_source/bug33/03_func_params.py,
	uncompyle6/semantics/make_function.py: Picking out 3.3 function
	default values

2018-03-04  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36.10_long_elif.py,
	test/simple_source/bug36/01_call_function.py,
	uncompyle6/semantics/pysource.py: 3.6 class signature problems...  This time getting the class name in when a "load_closure" is added.

2018-03-04  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py, uncompyle6/semantics/customize.py: 
	Prevent 3.6 call_kw deriving itself..  Was causing some calls to be parsed incorrectly

2018-03-04  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Tweak HOW-TO-REPORT...

2018-03-04  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/01_call_function.py,
	uncompyle6/parsers/parse36.py, uncompyle6/semantics/customize.py,
	uncompyle6/semantics/pysource.py: Fix a 3.6 CALL_FUNCTION_EX_KW
	problem..  and remove 3.6 customization from pysource.

2018-03-03  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/05_call_star_kw.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: 3.6 function/class prototype
	fixes..  Had got the order backwards in: class Foo(a=B.c) String defaults in
	default parameter tuples need to be quoted

2018-03-03  rocky <rb@dustyfeet.com>

	* admin-tools/pyenv-newer-versions: Bump python versions

2018-03-02  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: Licence is GPL3

2018-03-02  rocky <rb@dustyfeet.com>

	* NEWS: Get ready for release 3.0.0

2018-03-02  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/05_not_unconditional.py,
	test/stdlib/runtests.sh, uncompyle6/parsers/parse27.py: Back off
	unconditional_true test for now - Sigh

2018-03-02  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/03_fn_defaults.py,
	uncompyle6/semantics/make_function.py: Instruction fixup broken 3.x
	make_func...  for handling default values

2018-03-02  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/09_ext_arg_jump.py,
	uncompyle6/scanner.py: Use get_inst and self.insts more..  needed more in 3.6 to handle EXTENDED_ARGS before JUMP_xxx

2018-03-01  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py: 
	Better "continue" detection for 2.7

2018-03-01  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: Better CONTINUE detection on 3.x Helps when line numbers have been stripped say in optimization

2018-03-01  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse34.py: Code generation changes between
	3.4.2 and 3.4.4

2018-03-01  rocky <rb@dustyfeet.com>

	* test/simple_source/bug33/10_while1_popblock.py,
	uncompyle6/parsers/parse34.py: 3.4 while1 bug fix

2018-03-01  rocky <rb@dustyfeet.com>

	* pytest/test_token.py: small test tweak..  Allow it to run not under pytest

2018-03-01  rocky <rb@dustyfeet.com>

	* pytest/test_deparse.py, uncompyle6/semantics/linemap.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/parser_error.py,
	uncompyle6/semantics/pysource.py: more deparse_code -> code_deparse
	API additions

2018-03-01  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Imports yet again

2018-03-01  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py: Towards better 3.6 parameter
	handling 3.6 is still a mess though.

2018-03-01  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/05_call_star_kw.py,
	uncompyle6/scanners/scanner3.py, uncompyle6/scanners/tok.py,
	uncompyle6/semantics/make_function.py: Fix 3.6 MAKE_FUNCTION for kw
	params...  and remove duplicated attributies in pattr of MAKE_FUNCITON token.

2018-03-01  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Exclude early versions of Python
	in last change

2018-02-28  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, 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, uncompyle6/semantics/pysource.py: 
	Fallout from more precise token attributes

2018-02-28  rocky <rb@dustyfeet.com>

	* pytest/test_token.py, uncompyle6/scanners/scanner3.py,
	uncompyle6/scanners/tok.py, uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Token.format(), shows CONST values
	better...  We were not showing the proper value for None, or False.  Start a unit test for Token().  I think this cleans the Token class up a little more.  More work is needed for MAKE_FUNCTION...  Note: Some debug stuff is commented out in make_funciton.py for
	upcoming work.

2018-02-28  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/06_listcomp_nest.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: Keep
	pre-3.6 listcomp code patterns in 3.6

2018-02-28  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/06_listcomp_nest.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: Fix
	3.6+ nested list comprehensions Modified "load_closure" rule and changed semantic actions since
	LOAD_CLOSUREs are stored inside a MAKE_TUPLE.  FIXME: Not sure if we have additional "if" clauses correct. Test and
	correct

2018-02-27  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/aligner.py: revise API for aligner

2018-02-27  rocky <rb@dustyfeet.com>

	* HISTORY.md, uncompyle6/main.py, uncompyle6/semantics/fragments.py: 
	Start simplifying higher-level API

2018-02-27  rocky <rb@dustyfeet.com>

	* uncompyle6/__init__.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: Start changing API to make version
	optional...  and use debug option dictionary

2018-02-27  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Remove trepan debug

2018-02-27  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/consts.py, uncompyle6/semantics/pysource.py: 
	Revise comprehension walking in 3.x...  less rigidly and with less magic and more verbiage as to what's
	going on

2018-02-27  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/04_try_finally.py,
	uncompyle6/parsers/parse36.py, uncompyle6/semantics/customize.py: 
	3.6+ try/finally bugs Another day another 3.6 bug fix attempted

2018-02-27  rocky <rb@dustyfeet.com>

	* COPYING, LICENSE, MANIFEST.in, __pkginfo__.py,
	uncompyle6/disas.py, uncompyle6/linenumbers.py, uncompyle6/main.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse36.py,
	uncompyle6/parsers/parse37.py, uncompyle6/scanner.py,
	uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner3.py,
	uncompyle6/scanners/scanner33.py, uncompyle6/scanners/scanner34.py,
	uncompyle6/scanners/scanner35.py, uncompyle6/scanners/scanner37.py,
	uncompyle6/scanners/tok.py, uncompyle6/show.py,
	uncompyle6/verify.py, uncompyle6/version.py: Move to GPL3 license

2018-02-27  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: Fix Bug in recalculating prev_op
	...  in removing EXTENDED_ARG

2018-02-26  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/05_call_star_kw.py, uncompyle6/main.py,
	uncompyle6/semantics/make_function.py: 3.6 MAKE_FUNCTION workarounds Still wrong, but points to diretions for improvements

2018-02-26  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/05_call_function_kw2.py,
	uncompyle6/semantics/customize.py: 3.6 keyword args bugs in
	CALL_FUNCTION_KW

2018-02-26  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/09_while_if_while.py,
	uncompyle6/parsers/parse36.py: 3.6 while-if-while bug

2018-02-25  rocky <rb@dustyfeet.com>

	* test/test_pyenvlib.py, uncompyle6/scanners/scanner3.py: Use
	get_inst() to paper around EXTENDED_ARG

2018-02-25  rocky <rb@dustyfeet.com>

	* uncompyle6/scanner.py: More EXTENDED_ARGS woes on 3.6+

2018-02-25  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36.10_long_elif.py: Add another 3.6 test for
	EXTENDED_ARGS

2018-02-25  R. Bernstein <rocky@users.noreply.github.com>

	* : Merge pull request #161 from rocky/extended_args Extended args handling to address 3.6+ problems

2018-02-25  rocky <rb@dustyfeet.com>

	* pytest/test_fjt.py, uncompyle6/scanners/scanner3.py: bild_lines
	API changed. Adjust test for change

2018-02-25  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: EXTENDED_ARG in 3.6 fixes 3.6 uses EXTENDED_ARG more often appearing as the targets of jump
	instructions at the beginning of line statements. All of this wreaks
	havoc in the current way that our instruction processing works

2018-02-25  rocky <rb@dustyfeet.com>

	* : commit 8c0f256b78d13fbdf130200d6905b41ca3f41f7b Author: rocky
	<rb@dustyfeet.com> Date:   Sun Feb 25 09:42:04 2018 -0500

2018-02-25  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: Add another guard on a test

2018-02-25  rocky <rb@dustyfeet.com>

	* : commit ab1c2ec5bb7acf629b0b9bb6c053579772c4c9de Merge: e3d0b1b9
	cb249731 Author: rocky <rb@dustyfeet.com> Date:   Sun Feb 25
	08:53:15 2018 -0500

2018-02-25  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: move more toward
	instruction-based ingest...  rather than bytecode-based. This cleans up code up a little bit
	better by using more general instructions

2018-02-25  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: WIP: Handle EXTENDED_ARGS better

2018-02-24  R. Bernstein <rocky@users.noreply.github.com>

	* : Merge pull request #160 from wangym5106/master Keep global statements in fixed order

2018-02-22  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: yield before 2.4 may need "None"

2018-02-22  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Go over runtest.sh exceptions

2018-02-22  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py: More
	2.4-2.6 try vs try/else determination

2018-02-22  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: 2.4 test_typespy was fixed by commit from
	a while ago

2018-02-22  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/semantics/aligner.py,
	uncompyle6/semantics/check_ast.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/helper.py,
	uncompyle6/semantics/pysource.py, uncompyle6/show.py: grammar tree
	-> parse tree

2018-02-22  rocky <rb@dustyfeet.com>

	* uncompyle6/__init__.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/aligner.py, uncompyle6/semantics/check_ast.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/helper.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py, uncompyle6/show.py: Start
	distinguishing AST from grammar tree

2018-02-21  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: == -> is

2018-02-21  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: version=None in deparse_code()
	uses sys.version...  (the current interpreter version) as the version to decompile.  Fixes #159.

2018-02-21  rocky <rb@dustyfeet.com>

	* test/simple_source/bug25/03_try_else.py, test/stdlib/runtests.sh,
	uncompyle6/parsers/parse25.py: Fix 2.4/2.5 try/else detection...  in a hacky way

2018-02-19  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py: Narrow the 2.7 unconditional_true
	reduction

2018-02-19  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse30.py, uncompyle6/parsers/parse33.py: DRY
	and limit STORE_LOCALS

2018-02-19  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/03_not_dead_code.py,
	test/stdlib/runtests.sh, uncompyle6/parsers/parse27.py: Refine 2.7
	dead code test ..  in a hacky way. Will probalby have to expand this in the future or
	better do dead code analysis

2018-02-18  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/05_for_try_else.py,
	uncompyle6/parsers/parse27.py: 2.7 for .. try-else bug

2018-02-17  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py: Another 2.7 "if" with return fix This works is in conjunction with the commit before the previous
	release commit.

2018-02-17  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/version.py: Get ready for release 2.16.0

2018-02-17  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py, uncompyle6/scanners/scanner2.py: 
	Beter 2.7 end_if and COME_FROM determination Fixes #149 ... Add more tests too

2018-02-15  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: Wierd comprehension bug seen via
	new loctraceback

2018-02-15  rocky <rb@dustyfeet.com>

	* : commit 083ae5f3fd16f4aebdaecc26c4f44e1906ee0656 Author: rocky
	<rb@dustyfeet.com> Date:   Thu Feb 15 10:42:00 2018 -0500

2018-02-15  rocky <rb@dustyfeet.com>

	* uncompyle6/bin/pydisassemble.py: Misc pydisasm fixes

2018-02-12  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py: Fix up 3.6+ CALL_FUNCTION_EX

2018-02-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/scanners/scanner36.py,
	uncompyle6/semantics/customize.py: Handle 3.6+ FUNCTION_EX a little
	more generally

2018-02-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py,
	uncompyle6/parsers/parse36.py: Isolate Python 3.5 custom parse
	rules...  are isolated into parse35.py now and removed from parse3.py This causes some code duplicated from parse3.py into parse3{5,6}.py We will deal with that later.

2018-02-12  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/03_double_star_unpack.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/customize.py: Fix
	Python 3.5 CALL_FUNCTION_VAR handling

2018-02-09  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py: Python 3.5 CALL_FUNCTION_VAR
	bugs

2018-02-09  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/03_double_star_unpack.py,
	uncompyle6/semantics/customize.py: Start to handle 3.5+
	BUILD_LIST_UNPACK in call ..  to implement multple star arguments

2018-02-08  rocky <rb@dustyfeet.com>

	* test/bytecode_3.6_run/.gitignore,
	uncompyle6/semantics/customize.py: Add custom 3.5 handling for f(*a,
	*b, *c)

2018-02-05  rocky <rb@dustyfeet.com>

	* admin-tools/how-to-make-a-release.md: Administrivia

2018-02-05  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/version.py: Get ready for release 2.15.1

2018-02-04  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner2.py: One more change to revert

2018-02-04  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py, uncompyle6/scanners/scanner2.py: 
	Revert most of last change

2018-02-04  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/05_while_if_return.py,
	uncompyle6/bin/uncompile.py, uncompyle6/parsers/parse27.py,
	uncompyle6/scanners/scanner2.py: 2.7 control flow futzing.  Some overall cleanup. But again we need to attack all of this more
	head on.  Closes Issue #149

2018-02-04  rocky <rb@dustyfeet.com>

	* pytest/test_fjt.py, uncompyle6/scanners/scanner2.py,
	uncompyle6/scanners/scanner26.py: Add self.offset2inst_index and
	document more

2018-02-03  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py: Small cleanups

2018-02-03  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/consts.py, uncompyle6/semantics/fragments.py: 
	Clean up fragments code for "for"...  And make a little more precise.  tag "store" part of "for" in
	consts.

2018-02-01  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py: Small changes

2018-02-01  rocky <rb@dustyfeet.com>

	* pytest/test_deparse.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: List comprehension fragment bugs
	in 3.4

2018-02-01  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py, uncompyle6/semantics/fragments.py: Add
	fragment rules for RAISE_VARARGS and ...  Fix a fragment offset-sorting bug

2018-01-30  rocky <rb@dustyfeet.com>

	* pytest/test_deparse.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: fragments gen_ast more like
	pysource gen_ast Skip deparse test for now

2018-01-29  rocky <rb@dustyfeet.com>

	* uncompyle6/scanner.py: Fix extended_arg breakage from last commit

2018-01-29  rocky <rb@dustyfeet.com>

	* uncompyle6/scanner.py: Add a scanner next_offset() routine Remove extended_arg_val() as that is now in xdis

2018-01-29  rocky <rb@dustyfeet.com>

	* pytest/test_deparse.py, uncompyle6/bin/uncompile.py,
	uncompyle6/main.py, uncompyle6/semantics/fragments.py: Add
	uncompyle6 option to show fragments

2018-01-29  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Small change

2018-01-29  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: I said "go over runtests.sh for 2.7"

2018-01-29  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Go over 2.7 run tests

2018-01-29  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/make_function.py: 3.x bug in adding extra ,
	in **kargs

2018-01-29  rocky <rb@dustyfeet.com>

	* circle.yml: reduce CircleCI test time Use say just test_p-z*.py tests

2018-01-29  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Runtest.sh improvements; reduce CircleCI
	test time runtests.sh: show total elapsed time. Be smart about when patterns
	are entered as a parameter

2018-01-29  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/make_function.py: Fix 3.0 .. 3.2 kwargs bug

2018-01-29  rocky <rb@dustyfeet.com>

	* circle.yml: CircleCI Mongo testing take 3

2018-01-29  rocky <rb@dustyfeet.com>

	* circle.yml: Another attempt at massive CircleCI testing

2018-01-29  rocky <rb@dustyfeet.com>

	* circle.yml: On CircleCI try massive 2.7 test

2018-01-29  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/04_try_tryelse.py,
	uncompyle6/scanners/scanner2.py: Fix Python 2.7 try: try: else: bug

2018-01-29  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/05_while_if_continue.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse27.py: fixes 151

2018-01-28  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/05_deadcode.py,
	uncompyle6/parsers/parse2.py: Remove restriction that there are no
	more statements after a "return" statement

2018-01-27  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: Typo

2018-01-27  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: Bump xdis

2018-01-27  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: Bump xdis version

2018-01-27  rocky <rb@dustyfeet.com>

	* NEWS, admin-tools/how-to-make-a-release.md, uncompyle6/version.py: 
	Get ready for release 2.15.0

2018-01-27  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py: Small format typo

2018-01-27  R. Bernstein <rocky@users.noreply.github.com>

	* : Merge pull request #152 from rocky/linemap Linemap

2018-01-27  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/customize.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	DRY fragments by using OO more effectively Split grammar customization to its own file. It's quite large now.

2018-01-27  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/linemap.py, uncompyle6/semantics/pysource.py: 
	More linestart hacking.  Not very successful though

2018-01-26  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py, uncompyle6/semantics/linemap.py: Possibly
	linemap improvements

2018-01-24  rocky <rb@dustyfeet.com>

	* : Start us off with a 2.7 run test

2018-01-24  rocky <rb@dustyfeet.com>

	* test/Makefile: Remove erroneous Makefile target

2018-01-24  rocky <rb@dustyfeet.com>

	* test/Makefile, test/bytecode_2.4_run/README,
	test/bytecode_2.5_run/README, test/bytecode_2.6_run/README,
	test/bytecode_2.7_run/README, test/bytecode_3.0/README,
	test/bytecode_3.0_run/README, test/bytecode_3.1/README,
	test/bytecode_3.1_run/README, test/bytecode_3.2_run/README,
	test/bytecode_3.3_run/README, test/bytecode_3.4_run/README,
	test/bytecode_3.5_run/README, test/test_pyenvlib.py,
	test/test_pythonlib.py, uncompyle6/bin/uncompile.py,
	uncompyle6/main.py, uncompyle6/verify.py: Go over verification
	routines again Add meager verify-run tests for those versions. More tests will
	follow

2018-01-24  rocky <rb@dustyfeet.com>

	* pytest/test_disasm.py, uncompyle6/disas.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/linemap.py: 
	Add deparse_code_with_fragments_and_map and simplify

2018-01-23  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py: Adjust linemap start offset

2018-01-23  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Update runtests for 2.7

2018-01-22  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/linemap.py: linemap and merge fixes

2018-01-22  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py, uncompyle6/semantics/linemap.py: Fix Linemap
	bugs

2018-01-20  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/linemap.py: Forgot to add linemap file

2018-01-20  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/aligner.py: Record source-to-translation line
	mappings

2018-01-22  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/02_ifelsetmtl.py, uncompyle6/main.py,
	uncompyle6/parsers/parse27.py, uncompyle6/scanners/scanner27.py: 
	JUMP_BACK and CONTINUE need to be treated more similar...  fixes 148

2018-01-22  rocky <rb@dustyfeet.com>

	* uncompyle6/bin/uncompile.py: A stray syntax-error bug

2018-01-20  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/linemap.py: 2.7 compatibility

2018-01-20  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py, uncompyle6/semantics/linemap.py: Add missing
	linemap.py file

2018-01-20  rocky <rb@dustyfeet.com>

	* uncompyle6/bin/uncompile.py, uncompyle6/main.py,
	uncompyle6/semantics/pysource.py: Add --weak-verify and --linemap
	options...  Fix bugs in --verify not finding tempfile; remove tempfile on exit.

2018-01-20  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: Mark more 3.6+ code that needs to
	be fixed

2018-01-19  rocky <rb@dustyfeet.com>

	* README.rst: What's up with 3.6

2018-01-19  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/10_long_pop_jump.py,
	uncompyle6/scanners/scanner3.py: Handle 3.6+ EXTENDED_ARGs for
	POP_JUMP_IF... instructions

2018-01-19  rocky <rb@dustyfeet.com>

	* NEWS, test/simple_source/bug36/02_kwargs.py,
	uncompyle6/semantics/pysource.py: Correct 3.6+ calls with kwargs

2018-01-19  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/version.py: Get ready for release 2.14.3

2018-01-19  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, test/simple_source/bug35/04_async_stmt.py,
	uncompyle6/main.py, uncompyle6/semantics/pysource.py: Fix bug in
	3.5+ async stmt ..  and in verification status message

2018-01-18  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: Bump needed xdis version 3.6.5

2018-01-18  rocky <rb@dustyfeet.com>

	* uncompyle6/scanner.py: Python 2.6 compatibility

2018-01-18  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: We need xdis 3.6.4 or better now

2018-01-18  rocky <rb@dustyfeet.com>

	* uncompyle6/__init__.py, uncompyle6/scanner.py: Handle 3.5.2..3.5.2
	magic...  And handle magic better overal by improved xdis use

2018-01-13  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py: Fix bug in last commit

2018-01-13  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py: test_pyenvlib.py: correct/improve status

2018-01-13  rocky <rb@dustyfeet.com>

	* : commit abf85faf7996a5590991dd062c06ebf3260599bd Author: rocky
	<rb@dustyfeet.com> Date:   Sat Jan 13 08:17:28 2018 -0500

2018-01-13  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Update 2.6 stdlib test failures

2018-01-13  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/03_tryelse_continue.py,
	uncompyle6/scanners/scanner2.py: Fix 2.6 IF/THEN misclassification..  with an exception condition

2018-01-12  rocky <rb@dustyfeet.com>

	* test/simple_source/bug27+/04_loop_try_else.py: Test for 2.7 loop
	try else bug

2018-01-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py: Bug in 2.7 try else in a loop

2018-01-12  rocky <rb@dustyfeet.com>

	* : commit db9eaa75032544137757bf6691d4b8a7d68a5aa6 Author: rocky
	<rb@dustyfeet.com> Date:   Fri Jan 12 20:14:09 2018 -0500

2018-01-12  rocky <rb@dustyfeet.com>

	* uncompyle6/main.py: Fix ok status on --weak-verify

2018-01-12  rocky <rb@dustyfeet.com>

	* test/test_pyenvlib.py, uncompyle6/main.py: Improve test
	framework...  test_pyenvlib.py: get list of python versions from xdis main.py:
	bump okay_files appropriately when --verify is off

2018-01-11  rocky <rb@dustyfeet.com>

	* : 2.4 whileelse test

2018-01-11  rocky <rb@dustyfeet.com>

	* test/simple_source/looping/03_whileelse_bug.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse34.py: Fix
	whileelse bug

2018-01-11  rocky <rb@dustyfeet.com>

	* test/test_pyenvlib.py: Bugs in handing new --max option

2018-01-11  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Simplify remove slop in
	CALL_FUNCTION_VAR on 3.5

2018-01-11  rocky <rb@dustyfeet.com>

	* : commit 07ba16ac3a8c053a4f17668e547e8fa3d537ab9b Author: rocky
	<rb@dustyfeet.com> Date:   Thu Jan 11 09:53:15 2018 -0500

2018-01-11  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/semantics/consts.py: funcdefdeco
	-> function_def_deco ...  to match AST grammar more analogously

2018-01-10  rocky <rb@dustyfeet.com>

	* : Add decorator tests

2018-01-10  rocky <rb@dustyfeet.com>

	* test/simple_source/bug25/02_decorator.py,
	test/stdlib/runtests.sh, uncompyle6/parsers/parse25.py: Correct
	Python 2.5- decorator parsing

2018-01-10  rocky <rb@dustyfeet.com>

	* setup.py: Correct setup.py version checking

2018-01-10  rocky <rb@dustyfeet.com>

	* setup.py: Correct setup.py version checking

2018-01-10  rocky <rb@dustyfeet.com>

	* setup.py: Check Python version in setup.py ...  to make sure we are running a compatible version. Fixes #146

2018-01-09  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Reinstate run tests that now work

2018-01-09  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/03_tryelse_continue.py,
	test/stdlib/runtests.sh, uncompyle6/parsers/parse26.py: Fix 2.6-
	parsing of "for .. try/else" ...  with "continue"  inside

2018-01-09  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse21.py: Remove 2.1 for_iter duplication

2018-01-09  rocky <rb@dustyfeet.com>

	* admin-tools/how-to-make-a-release.md: Small typo

2018-01-09  rocky <rb@dustyfeet.com>

	* NEWS, admin-tools/how-to-make-a-release.md,
	uncompyle6/parsers/parse37.py, uncompyle6/version.py: Get ready for
	release 2.14.2

2018-01-08  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py,
	uncompyle6/semantics/pysource.py: Correct 3.6 FUNCTION_EX handling,
	somewhat Some Python 2.4 compatibility snuck in but I suppose that is not so
	bad

2018-01-08  rocky <rb@dustyfeet.com>

	* pytest/test_pysource.py, test/stdlib/runtests.sh,
	uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/pysource.py: Stronger while 1 testing...  Make instructions available in reduce tests.  Back off of a while
	test that was semantically different.

2018-01-08  rocky <rb@dustyfeet.com>

	* test/Makefile,
	test/simple_source/bug35/{04_CALL_FUNCTION_VAR_KW.py =>
	04_call_function.py}, uncompyle6/semantics/pysource.py: correct 3.5
	CALL_FUNCTION_VAR handling Sigh, 3.6 changes this so this fix is just for this version

2018-01-08  rocky <rb@dustyfeet.com>

	* README.rst: My grammar she is weak.

2018-01-08  rocky <rb@dustyfeet.com>

	* pytest/test_fjt.py, test/simple_source/bug35/05_empty_ifs.py,
	uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner36.py: 
	Fix 3.5+ bug in if's with pass bodies Fixes #104 in a somewhat hacky way.

2018-01-07  rocky <rb@dustyfeet.com>

	* test/simple_source/bug25/02_try_else_loop.py,
	test/simple_source/bug25/03_try_else.py, test/stdlib/runtests.sh,
	uncompyle6/parsers/parse24.py, uncompyle6/parsers/parse25.py,
	uncompyle6/parsers/parse26.py: try/else on 2.6 fixup

2018-01-07  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py: Limit pypy exception customization
	to pypy

2018-01-07  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh, uncompyle6/parser.py,
	uncompyle6/parsers/parse24.py, uncompyle6/parsers/parse25.py,
	uncompyle6/scanners/tok.py: Fix another 2.5- try/else (in loop) bug

2018-01-06  rocky <rb@dustyfeet.com>

	* circle.yml: CircleCI again

2018-01-06  rocky <rb@dustyfeet.com>

	* circle.yml: CircleCI again

2018-01-06  rocky <rb@dustyfeet.com>

	* circle.yml: See if pytest 3.2.5 works

2018-01-06  rocky <rb@dustyfeet.com>

	* circle.yml: Try to appeas CircleCI

2018-01-06  rocky <rb@dustyfeet.com>

	* pytest/testdata/if-2.7.right, pytest/testdata/ifelse-2.7.right: 
	Change disassembly to make offsets in COME_FROMs

2018-01-06  rocky <rb@dustyfeet.com>

	* circle.yml: See if this makes CircleCI happy

2018-01-06  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh, uncompyle6/parsers/parse24.py,
	uncompyle6/parsers/parse25.py, uncompyle6/scanners/scanner2.py,
	uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner3.py: 
	Fix bug in 2.5- try/else inside ifelsestmt

2017-12-15  rocky <rb@dustyfeet.com>

	* pytest/test_fjt.py: Update pytest test_fjt.py for self.insts

2017-12-15  rocky <rb@dustyfeet.com>

	* uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
	uncompyle6/scanners/scanner26.py: Fix bugs in
	scanner.last_instr()...  And ave instruction stream self.insts like we do in Python 3 so we
	can start simplifying code.

2017-12-15  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py, uncompyle6/semantics/pysource.py: 
	3.6 FUNCTION_EX_KW fixes

2017-12-15  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py, uncompyle6/semantics/pysource.py: 
	Grammar rule for 3.6 with .. return

2017-12-15  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Bang on Python 3.6 MAKE_FUNCTION

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py,
	uncompyle6/semantics/pysource.py: Towards handling
	CALL_FUNCTION_EX_KW...  more work is needed though

2017-12-14  rocky <rb@dustyfeet.com>

	* test/simple_source/bug22/02_try_except_finally.py,
	test/stdlib/runtests.sh, uncompyle6/semantics/pysource.py: Handle
	2.4- try/finally properly

2017-12-14  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py: Make grammar check work again..  Add the known unused rules in LHS to include those things we
	recently added custom rules for

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse36.py: Increase test
	coverage. Remove some epsilon reductionsa

2017-12-14  rocky <rb@dustyfeet.com>

	* .gitignore, uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse3.py: More Python 2/3 grammar restriction

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Python
	2 grammar restricion to match recent Python 3

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Add a missing 3.6 generator rule

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Better grammar specialization for
	Python 3

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse21.py, uncompyle6/parsers/parse24.py,
	uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse30.py, uncompyle6/parsers/parse35.py,
	uncompyle6/parsers/parse36.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	NT return_stmt -> return to match AST

2017-12-14  R. Bernstein <rocky@users.noreply.github.com>

	* : Merge pull request #145 from rocky/AST-simplify Ast simplify

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py: Add 3.6 withas rule

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Comment better what's up

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/semantics/pysource.py: 
	Start handling 3.6 CALL_FUNCTION_KW

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse35.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py: NT passtmt -> pass to match AST

2017-12-14  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, uncompyle6/parser.py: Try removing more singleton
	rules

2017-12-14  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner2.py: Update comment

2017-12-14  rocky <rb@dustyfeet.com>

	* : commit 63820c4300e0a38cbb7727bf0683b37bc115f89d Author: rocky
	<rb@dustyfeet.com> Date:   Thu Dec 14 04:00:22 2017 -0500

2017-12-13  rocky <rb@dustyfeet.com>

	* : Add more 3.6 tests

2017-12-13  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/scanners/scanner2.py: 
	Back off of previous refactor a little bit

2017-12-13  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/scanners/scanner2.py: 
	Simplify scanner2 so it relies less on custimize dict

2017-12-13  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse3.py: Start parse2 customize_grammar_rule
	refactor

2017-12-13  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Note runtests.sh 2.7 failures

2017-12-13  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: runtests.sh for 2.4 and 2.5

2017-12-13  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse22.py,
	uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse24.py,
	uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse30.py, uncompyle6/parsers/parse31.py,
	uncompyle6/parsers/parse32.py, uncompyle6/parsers/parse33.py,
	uncompyle6/parsers/parse34.py, uncompyle6/parsers/parse35.py,
	uncompyle6/parsers/parse36.py: add_custom_rules ->
	customize_grammar_rules

2017-12-13  rocky <rb@dustyfeet.com>

	* README.rst: RsT hacking

2017-12-13  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md, README.rst, test/stdlib/runtests.sh: Sync
	with Python 2.4 branch

2017-12-13  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: Update stdlib/runtest.sh code and
	failures

2017-12-13  rocky <rb@dustyfeet.com>

	* test/simple_source/bug33/01_triple_compare.py,
	uncompyle6/scanners/scanner2.py: Fix "or" bug in 2.6- seen via
	chained comparisons

2017-12-12  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh, test/test_pyenvlib.py,
	uncompyle6/parsers/parse26.py: Another ternary compare fix...  More is need in 2.6-

2017-12-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py: Reinstate needed 2.6 grammar
	rules...  removed from last commit .

2017-12-12  rocky <rb@dustyfeet.com>

	* test/simple_source/branching/02_ifelse_lambda.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py: Fix
	2.6- chained compare in lambda

2017-12-12  rocky <rb@dustyfeet.com>

	* test/simple_source/branching/02_ifelse_lambda.py,
	test/stdlib/runtests.sh, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py: Fix 2.7 lambda with chained
	compare...  More work needs to be done for 2.6-

2017-12-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse21.py, uncompyle6/parsers/parse22.py,
	uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py: NT
	"_for" -> "for_iter" reduces confusion w/ "for"

2017-12-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse21.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py: NT: "forstmt" renamed to "for" to
	match AST

2017-12-12  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: Isolation of <= 3.5 bogus
	COME_FROM workaround Fixes #144

2017-12-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py,
	uncompyle6/scanners/scanner36.py, uncompyle6/semantics/pysource.py: 
	Bang on 3.6 CALL_FUNCTION(_VAR)_KW

2017-12-12  rocky <rb@dustyfeet.com>

	* : Reinstate a 3.5 test

2017-12-12  rocky <rb@dustyfeet.com>

	* README.rst: Update README.rst

2017-12-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py, uncompyle6/semantics/pysource.py: 
	Bang on BUILD_MAP_UNPACK_WITH_CALL a little...  more cases are needed still. And there's a bug in
	BUILD_TUPLE_UNPACK_WITH_CALL now in adding the count twice.

2017-12-12  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Grammar specialization of DELETE_xxx
	in 3.x

2017-12-11  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse35.py, uncompyle6/parsers/parse36.py: DRY
	3.{5,6} SETUP_WITH a little bit

2017-12-11  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parsers/parse35.py,
	uncompyle6/parsers/parse36.py, uncompyle6/semantics/helper.py,
	uncompyle6/semantics/pysource.py: DRY code; localize 3.{5,6} grammar
	rules..  helper.py, pysource: has code to flatten list used in n_list and
	n_build_tuple_unpack_with_call parse3{5,6}.py: localize grammar
	rules with BEFORE_ASYNC_WITH

2017-12-11  rocky <rb@dustyfeet.com>

	* admin-tools/how-to-make-a-release.md,
	uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse31.py, uncompyle6/parsers/parse36.py,
	uncompyle6/scanners/scanner36.py, uncompyle6/semantics/pysource.py: 
	Start to handle CALL_FUNCTION_EX more accurately

2017-12-10  rocky <rb@dustyfeet.com>

	* admin-tools/how-to-make-a-release.md: Administrivia

2017-12-10  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/make_function.py: Fix last-minute bug due to
	kwargs->kwargs1

2017-12-10  rocky <rb@dustyfeet.com>

	* NEWS, uncompyle6/parsers/parse35.py, uncompyle6/version.py: Get
	ready for release 2.14.1

2017-12-09  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Small updates to "how to report a bug"

2017-12-09  rocky <rb@dustyfeet.com>

	* .gitignore, ChangeLog: ChangeLog should not be in git

2017-12-07  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/06_while_return.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py: Fix 3.1
	and 3.2 named and kwargs parsing..  Improve 3.4 coverage and note a 3.5 while bug

2017-12-07  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/02_while_and.py,
	uncompyle6/scanners/scanner3.py: Back off 3.5 control flow for now

2017-12-07  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/semantics/consts.py: 
	Reinstate kwargs1...  was just missing the semantic action rule for it

2017-12-07  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse3.py: Reduce
	singletons rules and ..  fix recently introduced kwargs bug.

2017-12-07  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Fix grammar cover from last commit

2017-12-07  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse35.py, uncompyle6/parsers/parse36.py: 
	grammar isolation and reduction

2017-12-07  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/03_while-if-break.py,
	uncompyle6/parsers/parse35.py, uncompyle6/scanner.py,
	uncompyle6/scanners/scanner3.py: Skirt around control-flow
	problems...  Tag some of the weaknesses if we can't address them now

2017-12-06  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Fix while1/if parsing in 3.x.
	Reinstate some tests

2017-12-06  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/semantics/pysource.py: Back off
	pervasiveness of singleton reductions

2017-12-06  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Partial fix for removing
	singleton expr reduction

2017-12-06  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/semantics/pysource.py: Start to
	reduce singleton reductions

2017-12-06  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py: Fix grammar after last change

2017-12-06  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/check_ast.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/fragments.py: 
	NT break_stmt, continue_stmt -> break, continue...  to match AST

2017-12-06  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/check_ast.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py: NT continue_stmt -> continue to
	match AST

2017-12-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse36.py: Sync NT
	joined_str and formmated_value with AST

2017-12-05  rocky <rb@dustyfeet.com>

	* test/simple_source/stmts/10_del.py: Fix 10_del.py syntax

2017-12-05  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: runtest.sh: remove from exlusion stdlib
	test that now work

2017-12-05  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Remove debug schmutz

2017-12-05  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: unicode bug fix try #2...  this time, for sure!

2017-12-05  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: logic bug: and->or

2017-12-05  rocky <rb@dustyfeet.com>

	* test/simple_source/stmts/05_unicode_literals.py,
	test/stdlib/runtests.sh, uncompyle6/semantics/pysource.py: Start to
	handle FUTURE_UNICODE_LITERALS flag

2017-12-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py: Bug in 2.6 tryelse rule

2017-12-05  rocky <rb@dustyfeet.com>

	* test/simple_source/def/02_def.py,
	uncompyle6/semantics/make_function.py: Fix bug in single param **arg

2017-12-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Python 3.x raise statement reduction

2017-12-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Narrow 3.x mkfunc rules

2017-12-05  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Separate rules for set, tuple,
	dict from list...  Sync fragments.py with pysource

2017-12-04  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: More verbiage about the
	comprehension mess

2017-12-04  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/03_weird26.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/pysource.py: 
	Slightly better 3.x list comprehension handling

2017-12-04  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py: Slight picayune correction

2017-12-04  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: More
	tidiness...  Shorten/improve description of what's up with add_customize_rules

2017-12-04  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse32.py,
	uncompyle6/semantics/pysource.py: Tidy a little ...  parse32.py: Move common grammar rules from parse32.py to parse3.py             parse32 should just have 3.2ish specific stuff.  parse3.py: favor addRule over add_unique_rule pysource.py: make more clear what's up with comprehensions.               more later.

2017-12-04  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse3.py: Python 3.x needs conditional_not

2017-12-03  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/03_weird26.py, test/stdlib/runtests.sh: 
	More weirdness testing

2017-12-03  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/{03_weird.py => 03_weird26.py},
	test/stdlib/runtests.sh, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/semantics/consts.py: 
	Handle a wierd 2.6 conditional false expression...  from 2.6. test_grammar

2017-12-03  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/03_weird.py,
	uncompyle6/parsers/parse26.py: Fix some really weird Python 2.6
	constructs From 2.6's test grammar.

2017-12-03  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/pysource.py: 
	NT: load_attr -> attribute to match AST

2017-12-03  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/pysource.py: Parens around constant  in method
	call ..  again.  Note what fails in 2.7 runtests

2017-12-03  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/bug22/01_ops.py,
	test/simple_source/exception/25_try_except.py,
	uncompyle6/parsers/parse2.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/helper.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Two bugs and a refactor ..  1. parse2.py: try except in a loop with a (virtual) continue    treat CONTINUE like JUMP_ABSOLUTE which it is 2. in taking methods off of constants, a parenthesis needs to be
	added Some refactoring of global code done

2017-12-03  rocky <rb@dustyfeet.com>

	* : commit 5b916567fe2ddbf26c1a2cc7c5fa15bf0d15f534 Author: rocky
	<rb@dustyfeet.com> Date:   Sun Dec 3 06:30:33 2017 -0500

2017-12-03  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/02_except_as.py,
	test/stdlib/runtests.sh, uncompyle6/semantics/pysource.py: Fix bug
	in 2.6- except_cond3

2017-12-03  rocky <rb@dustyfeet.com>

	* test/simple_source/looping/12_if_while_bug.py,
	uncompyle6/parsers/parse27.py: One more _come_from -> _come_froms

2017-12-03  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse25.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse30.py,
	uncompyle6/parsers/parse32.py, uncompyle6/scanners/scanner2.py: 
	Grammar "COME_FROM"_from cleanups ...  tryelse constructs in 2.x fixed up _come_from -> _come_froms
	(COME_FROM*) consolidate come_froms rule into sincle parser.py

2017-12-02  rocky <rb@dustyfeet.com>

	* README.rst: Update README

2017-12-02  rocky <rb@dustyfeet.com>

	* HISTORY.md: update history

2017-12-02  rocky <rb@dustyfeet.com>

	* README.rst: Update doc

2017-12-02  rocky <rb@dustyfeet.com>

	* test/simple_source/bug32/03_if_try_raise.py,
	test/simple_source/bug_pypy27/03_try_return.py,
	test/simple_source/exception/01_try_except.py,
	test/simple_source/exception/20_try_except.py,
	test/simple_source/exception/25_try_except.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse32.py, uncompyle6/parsers/parse33.py,
	uncompyle6/parsers/parse36.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	NT trystmt -> try_except to match AST

2017-12-02  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/02_except_as.py,
	uncompyle6/parsers/parse3.py: Remove 3-arg raise in 3.x and..  add tests in 2.x

2017-12-02  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/stmts/00_docstring.py,
	uncompyle6/semantics/helper.py, uncompyle6/semantics/pysource.py: 
	Fix docstring bug..  small sync with python 2.4 branch

2017-12-02  rocky <rb@dustyfeet.com>

	* test/Makefile: Administrivia

2017-12-02  rocky <rb@dustyfeet.com>

	* test/Makefile, test/stdlib/runtests.sh: Adminsitrivia

2017-12-02  rocky <rb@dustyfeet.com>

	* test/simple_source/stmts/10_del.py, test/stdlib/runtests.sh,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Add global statements even for
	read of globals

2017-12-02  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, admin-tools/check-older-versions.sh,
	admin-tools/how-to-make-a-release.md: Administrivia

2017-12-02  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py, uncompyle6/verify.py: Add Python
	2.4 importmultiple rule

2017-12-02  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: runtests.sh tweaks

2017-12-02  rocky <rb@dustyfeet.com>

	* test/simple_source/bug22/01_ops.py: A couple more tests

2017-12-02  rocky <rb@dustyfeet.com>

	* test/simple_source/bug30/01_ops.py, test/stdlib/runtests.sh,
	uncompyle6/semantics/consts.py: Fix chained compares with -'s

2017-12-02  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/scanners/scanner2.py: 
	Small grammar isolation bugs

2017-12-02  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner2.py: Correct hacky version number

2017-12-02  rocky <rb@dustyfeet.com>

	* test/simple_source/stmts/02_test_exec.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse35.py,
	uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py: 
	2.7 exec stmt grammar rule isolation/reduction

2017-12-02  rocky <rb@dustyfeet.com>

	* test/simple_source/bug31/07_forelselast.py: Improve 3.x
	forelselast coverage

2017-12-02  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse32.py, uncompyle6/parsers/parse35.py: 
	whileTrue grammar reduction

2017-12-02  rocky <rb@dustyfeet.com>

	* admin-tools/pyenv-newer-versions, pytest/test_grammar.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse36.py, uncompyle6/scanners/scanner2.py: Fix
	bug in 2.6 tryelse get test_grammar working...  localize grammar rules

2017-12-01  rocky <rb@dustyfeet.com>

	* admin-tools/pyenv-newer-versions, test/Makefile,
	test/test_pyenvlib.py, uncompyle6/parsers/parse35.py: Python 3.5
	grammar reduction

2017-12-01  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py: 
	Isolate and reduce 3.x conditionals and lambda rules

2017-12-01  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py: 
	opt_come_from_loop -> come_from_loops...  ANd remove unused rules associated with COME_FROM_FINALLY

2017-12-01  rocky <rb@dustyfeet.com>

	* test/simple_source/bug26/06_setif_comprehension.py,
	test/simple_source/comprehension/01_list_comprehension.py,
	test/simple_source/comprehension/05_list_comprehension.py,
	test/simple_source/comprehension/06_list_ifnot_and.py,
	test/simple_source/def/01_class.py,
	test/simple_source/def/02_closure.py,
	test/simple_source/def/05_class.py,
	test/simple_source/def/05_closure_bug.py,
	test/simple_source/def/07_closure_bug2.py,
	test/simple_source/def/10_classdec.py,
	test/simple_source/exception/20_try_except.py,
	test/simple_source/expression/11_multi_genexpr.py,
	test/simple_source/looping/10_for.py,
	test/simple_source/stmts/00_assign.py,
	test/simple_source/stmts/00_pass.py,
	test/simple_source/stmts/04_withas.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/pysource.py: NT funcdef -> function_def to
	match AST

2017-12-01  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/03_fn_defaults.py,
	uncompyle6/semantics/make_function.py: Fix bugs in 3.6 default
	parameter handling Mentioned in Issue #139

2017-12-01  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py: Small tweak

2017-12-01  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/parser.py,
	uncompyle6/parsers/parse15.py, uncompyle6/parsers/parse24.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/pysource.py: NT
	importfrom -> import_from ...  to match AST better and importstar -> import_from_star misc administrivia

2017-12-01  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: NT build_list -> list to match AST

2017-11-30  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py: Modify test_grammar for last change

2017-11-30  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	NT mapexpr -> dict to match AST

2017-11-30  rocky <rb@dustyfeet.com>

	* admin-tools/pyenv-all-versions, test/Makefile: ops coverage on
	3.{0,1}

2017-11-30  rocky <rb@dustyfeet.com>

	* README.rst: Typo

2017-11-30  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: _ifstmts_jump rule reduction in 3.x

2017-11-30  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse35.py: Isolate unmap_dict rule in 3.5

2017-11-30  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Last commit introduced a bug

2017-11-30  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Isolate listcomp a little in Python
	3 too

2017-11-30  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parsers/parse2.py,
	uncompyle6/scanners/scanner2.py: Isolate listcomp rule in 2.7

2017-11-30  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: NT dictcomp -> dict_comp to match
	AST

2017-11-30  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	NT setcomp -> set_comp to match AST

2017-11-29  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse32.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	list_compr -> list_comp to match AST...  more Python 3 custom rule cleanup

2017-11-29  rocky <rb@dustyfeet.com>

	* HISTORY.md, uncompyle6/parsers/parse3.py: Claan up 3.x custom
	MAKE_{FUNCTION,CLOSURE} rules

2017-11-29  rocky <rb@dustyfeet.com>

	* README.rst, uncompyle6/parser.py, uncompyle6/parsers/parse15.py,
	uncompyle6/parsers/parse24.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py: NT importstmt -> import to match
	AST

2017-11-29  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Python 3.x reduction of listcomp
	with closures

2017-11-29  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse32.py, uncompyle6/parsers/parse33.py: Reduce
	3.x rules, esp. listcomp

2017-11-29  rocky <rb@dustyfeet.com>

	* test/simple_source/bug30/01_ops.py,
	test/simple_source/stmts/00_import.py, uncompyle6/parsers/parse3.py: 
	Better grammar coverage; reduce 3.x mklambda rules

2017-11-29  rocky <rb@dustyfeet.com>

	* test/simple_source/bug22/01_ops.py,
	test/simple_source/bug30/01_ops.py,
	test/simple_source/stmts/01_augmented_assign.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse3.py, uncompyle6/semantics/check_ast.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/fragments.py: 
	NT augassign -> aug_assign to match AST

2017-11-29  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse21.py,
	uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse24.py,
	uncompyle6/parsers/parse32.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: import_as -> alias; and reinstate
	rule

2017-11-29  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse32.py: More test coverage; simplify 3.2
	grammar

2017-11-29  rocky <rb@dustyfeet.com>

	* admin-tools/pyenv-newer-versions,
	admin-tools/pyenv-older-versions,
	admin-tools/pyenv-oldest-versions,
	test/simple_source/stmts/10_del.py: Administrivia and more coverage

2017-11-29  rocky <rb@dustyfeet.com>

	* test/Makefile: More coverage on 3.2 and 3.3

2017-11-29  rocky <rb@dustyfeet.com>

	* test/simple_source/stmts/00_import.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse33.py,
	uncompyle6/semantics/pysource.py: Fix import and 3.x class bugs...  import x.y as z was failing across all Python versions class
	decorators for Python 3.0..3.3 was failing reduce 3.x while grammar
	rules

2017-11-29  rocky <rb@dustyfeet.com>

	* README.rst: More Wordsmithing

2017-11-29  rocky <rb@dustyfeet.com>

	* README.rst: More wordsmithing

2017-11-29  rocky <rb@dustyfeet.com>

	* README.rst: Wordsmithing

2017-11-29  rocky <rb@dustyfeet.com>

	* README.rst: Wordsmithing

2017-11-29  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py: Sync up some 2.4-branch changes

2017-11-29  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse21.py,
	uncompyle6/parsers/parse22.py, uncompyle6/parsers/parse23.py,
	uncompyle6/parsers/parse24.py, uncompyle6/parsers/parse25.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse30.py,
	uncompyle6/parsers/parse31.py, uncompyle6/parsers/parse35.py,
	uncompyle6/parsers/parse36.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	NT designatore -> store to match AST

2017-11-29  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse31.py, uncompyle6/parsers/parse32.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: NT binary_subscr -> subscript to
	match AST

2017-11-28  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse25.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse35.py,
	uncompyle6/parsers/parse36.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	NT call_function -> call to match AST

2017-11-28  rocky <rb@dustyfeet.com>

	* README.rst: Add link to parser

2017-11-28  rocky <rb@dustyfeet.com>

	* README.rst: Typo

2017-11-28  rocky <rb@dustyfeet.com>

	* README.rst: Update doc

2017-11-28  rocky <rb@dustyfeet.com>

	* README.rst: nots tie me in knots

2017-11-28  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py: One more genexpr -> generator_exp

2017-11-28  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/pysource.py: NT genexpr -> generate_exp to
	match AST

2017-11-28  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse36.py,
	uncompyle6/scanners/scanner3.py: Narrow unused classdefdeco2 rules

2017-11-28  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse27.py: Small Python 2 grammar reduction

2017-11-28  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse24.py: Python 2.4- doesn't do "with"

2017-11-28  rocky <rb@dustyfeet.com>

	* test/simple_source/bug22/02_generators.py: More tests

2017-11-28  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse24.py: Python 2.4 grammar reduction...  while increasing 2.4 increase test coverage

2017-11-28  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/02_genexpr.py,
	uncompyle6/parsers/parse3.py: 3.6 genexpr has changed Fixes Issue #139

2017-11-27  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse24.py: Sync
	with python-2.4 branch

2017-11-27  rocky <rb@dustyfeet.com>

	* test/simple_source/bug25/02_unary_convert.py,
	uncompyle6/parser.py, uncompyle6/semantics/pysource.py: Add UNARY
	convert; improve 2.1 imports

2017-11-27  rocky <rb@dustyfeet.com>

	* __pkginfo__.py,
	test/simple_source/bug25/01_inplace_true_divide.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse25.py: Mege hell

2017-11-27  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse33.py: Reinstate a 3.3 grammar rule

2017-11-27  rocky <rb@dustyfeet.com>

	* : Add 2.5 INVERT_OP test

2017-11-27  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, uncompyle6/parsers/parse25.py,
	uncompyle6/parsers/parse26.py: Python 2.5- grammar reduction

2017-11-27  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py: 2.6- grammar reduction

2017-11-27  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: bump min parser version

2017-11-27  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py: Grammar reduction inch by inch

2017-11-27  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse21.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse32.py: Grammar hell

2017-11-27  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse23.py, uncompyle6/parsers/parse27.py: 
	Grammar isolation

2017-11-27  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py: Grammar
	isolation

2017-11-27  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse32.py,
	uncompyle6/parsers/parse33.py: Grammar isolation fixes

2017-11-27  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse33.py: need kvlist in 3.3+

2017-11-27  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/scanner2.py: 
	Grammar reduction

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py: Small grammar sync

2017-11-26  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/parser.py: Back off previous reduction a
	little

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse3.py: Remove
	some unused grammar rules

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py: 
	localize Python2 ifelsetmtr, compare_chained: 2.7

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse21.py,
	uncompyle6/parsers/parse27.py, uncompyle6/scanners/scanner2.py,
	uncompyle6/scanners/scanner26.py: More grammar isolation

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py: More
	specific 2.7 dictcomp and setcomp rules

2017-11-26  rocky <rb@dustyfeet.com>

	* README.rst: Another RsT typo

2017-11-26  rocky <rb@dustyfeet.com>

	* README.rst: RsT typo

2017-11-26  rocky <rb@dustyfeet.com>

	* admin-tools/pyenv-newer-versions: Update test version
	2.7.13->2.7.14

2017-11-26  rocky <rb@dustyfeet.com>

	* ChangeLog, NEWS, README.rst, uncompyle6/version.py: Get ready for
	release 2.14.0

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py: Back of build_set/build_list
	separation

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/pysource.py: Isolate build_set from build_list
	in Python 2...  More work is needed. Not done in Python 3 yet

2017-11-26  rocky <rb@dustyfeet.com>

	* test/stdlib/runtests.sh: stdlib/runtess.sh python version
	detection

2017-11-26  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, test/simple_source/bug22/01_kv.py,
	test/simple_source/bug32/05_while_true_break.py: Work around grammar
	remove rule bug...  And reinstate source to a current 3.3 bug (which we don't detect).
	But at least it is noted for future work.

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse22.py,
	uncompyle6/parsers/parse24.py, uncompyle6/parsers/parse25.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse32.py: Isolaate kv, kv2 and kv3 better

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse22.py: Localize kv

2017-11-26  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse32.py: remove comp_ifnot

2017-11-25  rocky <rb@dustyfeet.com>

	* : Another test

2017-11-25  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/bug27+/05_for_try_except.py,
	uncompyle6/parsers/parse27.py: 2.7 control-flow bug: except/pass in
	loop

2017-11-25  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/semantics/pysource.py: back off of build_slice{2,3}
	->slice{2,3} There is another slice rule that interferes with this.

2017-11-25  rocky <rb@dustyfeet.com>

	* test/simple_source/slice/02_slice.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/scanners/scanner2.py, uncompyle6/scanners/scanner26.py,
	uncompyle6/semantics/pysource.py: localize 2 and 3 argument
	BUILD_SLICE...  Nontermninal name matches AST anme now. Add test.

2017-11-25  rocky <rb@dustyfeet.com>

	* test/Makefile: Improve grammar-cover targets

2017-11-25  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, test/Makefile, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: remove unpack_list rule and ...  tidy things a bit more

2017-11-24  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/pysource.py: Fix bug in 2.x with decorator of
	old-style class

2017-11-24  rocky <rb@dustyfeet.com>

	* test/simple_source/expression/01_float.py,
	uncompyle6/semantics/pysource.py: Handle inf, +inf, -nan, and nan
	constants

2017-11-24  rocky <rb@dustyfeet.com>

	* test/simple_source/expression/03_tuple_assign.py,
	test/simple_source/stmts/04_withas.py,
	uncompyle6/semantics/consts.py, uncompyle6/semantics/pysource.py: A
	couple more bugs found running 2.7 stdlib tests

2017-11-24  rocky <rb@dustyfeet.com>

	* : One more (lambda) test

2017-11-24  rocky <rb@dustyfeet.com>

	* test/simple_source/expression/10_lambda.py,
	uncompyle6/semantics/make_function.py: Fix bug where lambda has a
	yield in it

2017-11-24  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/semantics/consts.py: cmp ->
	compare ...  to better match the Python AST name Compare.  This forces us to
	change compare -> compare_single Relates to Issue #29

2017-11-24  rocky <rb@dustyfeet.com>

	* test/simple_source/bug33/01_triple_compare.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse32.py,
	uncompyle6/semantics/consts.py: cmp_list -> compare_chained ...  to better match the Python AST name Compare. Relates to Issue #29

2017-11-23  rocky <rb@dustyfeet.com>

	* test/stdlib/README.md, test/stdlib/compile-file.py,
	test/stdlib/runtests.sh, uncompyle6/parsers/parse2.py: Start another
	kind of testing...  And fix a bug found in that with 3-way equal

2017-11-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py: Forgot to update a call in last
	change

2017-11-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py: Reduce 3.5 call_aysnc grammar rules

2017-11-23  rocky <rb@dustyfeet.com>

	* test/simple_source/bug32/03_if_try_raise.py,
	uncompyle6/parsers/parse32.py: Trystmt grammar from 3.3 needed in
	3.2 Add test to cover this

2017-11-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse32.py, uncompyle6/parsers/parse33.py,
	uncompyle6/parsers/parse35.py: Add triple compare from 3.3 into 3.2

2017-11-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse32.py, uncompyle6/parsers/parse33.py: 
	Improve try else in 3.2...  Grammar from 3.3 is relevant here

2017-11-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse34.py: Remove
	whileelselastsmt ...  Right now I don't know what it does and we don't have something that
	needs it

2017-11-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse27.py: provisional 2.7 whileelselast rule

2017-11-23  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse27.py, uncompyle6/parsers/parse34.py: 
	grammar reduction of while loops

2017-11-23  rocky <rb@dustyfeet.com>

	* test/simple_source/bug30/01_ops.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse32.py: 3.x Grammar reduction of custom
	rules...  by looking for token patterns GET_ITER CALL_FUNCTION_1

2017-11-23  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/bug33/01_triple_compare.py,
	uncompyle6/parser.py, uncompyle6/parsers/parse26.py,
	uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse32.py,
	uncompyle6/parsers/parse33.py: Grammar coverage and pruning

2017-11-22  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse3.py: Isotate
	conditionalnot

2017-11-22  rocky <rb@dustyfeet.com>

	* test/simple_source/expression/02_true_divide.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse25.py,
	uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py: 2.x
	Grammar reduction/isolation

2017-11-22  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse24.py: Grammar reduction for load_attrs

2017-11-22  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py: Reduce
	unecessary grammar rules in 2.x

2017-11-22  rocky <rb@dustyfeet.com>

	* test/simple_source/stmts/01_augmented_assign.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py: 
	Increase grammar coverage

2017-11-22  rocky <rb@dustyfeet.com>

	* admin-tools/setup-master.sh, admin-tools/setup-python-2.4.sh: 
	Administrivia: add "git pull"s

2017-11-18  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse33.py,
	uncompyle6/parsers/parse34.py: 3.3. grammar cleanup ...  need build_list in for BUILD_TUPLE_0

2017-11-18  rocky <rb@dustyfeet.com>

	* pytest/test_grammar.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse24.py, uncompyle6/semantics/pysource.py: 
	Grammar cleanup: import_as_cont -> import_as

2017-11-18  rocky <rb@dustyfeet.com>

	* __pkginfo__.py, pytest/test_grammar.py: Track spark_parser changes

2017-11-17  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/parsers/parse3.py: custom rule hacking
	...  Reduce extraneous 3.x "load_list" and "load_closure" rules

2017-11-17  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse3.py, uncompyle6/parsers/parse33.py: 
	Python 3 grammar clean up and reorganization

2017-11-17  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/parser.py,
	uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse3.py,
	uncompyle6/parsers/parse36.py: More grammar isolation. narrow custom
	rules...  Specifically: _mklambda with load_closure is Python2 only Add
	classdefdeco2 rule only when we have seen a LOAD_BUILD_CLASS

2017-11-16  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse34.py: Python 3.4 while grammar cleanup

2017-11-16  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse3.py: More grammar
	cleanups

2017-11-16  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/consts.py: Tag %c nonterminals in more
	template rules

2017-11-16  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py: Bump copyright

2017-11-16  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse2.py,
	uncompyle6/parsers/parse3.py: More grammar isolation: assert2 in
	Python3

2017-11-16  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse3.py: 
	Isolate "assert2" rule

2017-11-16  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse23.py: Isolate
	"and2" rule to 2.3

2017-11-16  rocky <rb@dustyfeet.com>

	* test/simple_source/stmts/05_with.py,
	uncompyle6/parsers/parse25.py, uncompyle6/parsers/parse26.py: Python
	2.5 "with"; Isolate 2.5-2.6 grammar better

2017-11-16  rocky <rb@dustyfeet.com>

	* test/simple_source/expression/02_true_divide.py: Add
	BINARY_TRUE_DIVIDE tests for 2.{6,7}

2017-11-16  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse26.py, uncompyle6/parsers/parse27.py: More
	grammar cleanup

2017-11-16  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner2.py: 2.7 continue-detection bug

2017-11-15  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py: More
	2.7/2.7- grammer separation & cleanup

2017-11-15  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py: 
	Grammar cleanup: separate some 2.7 from 2.7- rules

2017-11-15  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py: I said, remove dict/setcomp from <= 2.6!

2017-11-15  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py, uncompyle6/parsers/parse27.py,
	uncompyle6/parsers/parse3.py: grammar cleanup: dict/set
	comprehensions 2.7+

2017-11-15  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Grammar typo

2017-11-15  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Grammar typo

2017-11-15  rocky <rb@dustyfeet.com>

	* : One more pypy test

2017-11-15  rocky <rb@dustyfeet.com>

	* : Keep bytecode_2.7 pypy free...  We need to add _another_ pypy directory

2017-11-15  rocky <rb@dustyfeet.com>

	* : del stmt testing on 2.7

2017-11-15  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/parsers/parse3.py: Stronger 3.4 testing
	...  parse3.py: remove unused grammar rule

2017-11-15  rocky <rb@dustyfeet.com>

	* test/Makefile, test/simple_source/stmts/10_del.py,
	test/test_pyenvlib.py, uncompyle6/parsers/parse26.py,
	uncompyle6/semantics/check_ast.py, uncompyle6/semantics/pysource.py: 
	Profiling workarounds, more coverage ...  test/Makefile: more grammar checking. Update python versions
	10_del.pyc add test of DEL_GLOBAL check_ast.py, pysource.py: Profileing workarounds

2017-11-14  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse2.py: Guard around null ast This can happen in profiling

2017-11-13  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: bug report doc tweak

2017-11-13  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: add note on illegal use

2017-11-13  rocky <rb@dustyfeet.com>

	* ChangeLog, uncompyle6/parser.py, uncompyle6/semantics/pysource.py: 
	detected old-style Python 2.4 class better

2017-11-13  rocky <rb@dustyfeet.com>

	* admin-tools/check-older-versions.sh: Administrivia

2017-11-13  rocky <rb@dustyfeet.com>

	* ChangeLog, NEWS, uncompyle6/version.py: Get ready for release
	2.13.3

2017-11-12  rocky <rb@dustyfeet.com>

	* test/Makefile: Back off --verify for --weak-verify

2017-11-12  rocky <rb@dustyfeet.com>

	* test/Makefile: Back off --verify for --weak-verify

2017-11-12  rocky <rb@dustyfeet.com>

	* : Reinstate previously failed tests 2.6, 3.5 and 3.6 decompilation has gotten better

2017-11-10  rocky <rb@dustyfeet.com>

	* __pkginfo__.py: Use newer xdis

2017-11-09  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py, uncompyle6/semantics/pysource.py: 
	Fix bug in return-optimized try stmt

2017-11-09  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: More detail is needed in bug reporting...  sigh.

2017-11-09  rocky <rb@dustyfeet.com>

	* test/simple_source/bug35/04_importlist.py, uncompyle6/parser.py,
	uncompyle6/semantics/consts.py: bug in 3.x importlists consts.py: add rule for importlists. imports weren't separated by ',
	'.  parser.py: Make importlist a list type of node.  test/* add test for importlist

2017-11-08  rocky <rb@dustyfeet.com>

	* : commit e9b60ddbf020ee7f14d8d77c6f4a8588d2968377 Author: rocky
	<rb@dustyfeet.com> Date:   Wed Nov 8 23:05:01 2017 -0500

2017-11-08  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: more wordsmithing

2017-11-08  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: more wordsmithing

2017-11-08  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: more wordsmithing

2017-11-08  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Typo

2017-11-08  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Typo

2017-11-08  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Typo

2017-11-08  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Typo

2017-11-08  rocky <rb@dustyfeet.com>

	* HOW-TO-REPORT-A-BUG.md: Tweak how to report a bug.

2017-11-08  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/parsers/parse36.py,
	uncompyle6/scanners/scanner3.py: Add 3.6+ grammar for except's
	ending in RETURN...  Not totally out of the maze in 3.6 control flow...  There are still
	problems with erroneous RETURN_VALUEs becoming RETURN_END_IF,

2017-11-07  R. Bernstein <rocky@users.noreply.github.com>

	* : Merge pull request #135 from rocky/3.6-instruction-refactor 3.6 instruction refactor

2017-11-06  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner3.py: Small tweaks to sync up better
	with scanner2.py

2017-11-06  rocky <rb@dustyfeet.com>

	* pytest/test_fjt.py: Remove parts of erroneous 2.7 test for now

2017-11-06  rocky <rb@dustyfeet.com>

	* pytest/test_fjt.py, uncompyle6/scanners/scanner3.py,
	uncompyle6/scanners/scanner36.py: Fix 3.{3,4} pytest. Remove dup
	find_jump_targets

2017-11-06  rocky <rb@dustyfeet.com>

	* Makefile, uncompyle6/scanners/scanner3.py,
	uncompyle6/scanners/scanner36.py: Move refactored find-jump-targets
	from 3.6 to 3.x

2017-11-06  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/scanners/scanner3.py,
	uncompyle6/scanners/scanner36.py: Move refactored ingest from 3.6 to
	3.x...  We are getting away from working with bytecode in favor of working
	with full-fledged structured instructions Up next: find_jump_targets()

2017-11-06  rocky <rb@dustyfeet.com>

	* uncompyle6/parsers/parse36.py: awith custom COME_FROMs ...  Now that jump branching has been properly fixed up for EXTENDED_ARG
	instructions which are more prevalent with wordcode encoding.

2017-11-06  rocky <rb@dustyfeet.com>

	* : commit 9379922c89573972aa387e4f0b9abcba7358d1a3 Author: rocky
	<rb@dustyfeet.com> Date:   Mon Nov 6 00:38:22 2017 -0500

2017-11-06  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner36.py: Revert change that should have
	been in a branch

2017-11-06  rocky <rb@dustyfeet.com>

	* uncompyle6/scanners/scanner2.py,
	uncompyle6/scanners/scanner26.py, uncompyle6/scanners/scanner3.py,
	uncompyle6/scanners/scanner36.py: xdis _disassemble->disassemble

2017-11-04  rocky <rb@dustyfeet.com>

	* uncompyle6/semantics/fragments.py,
	uncompyle6/semantics/make_function.py,
	uncompyle6/semantics/pysource.py: Add flag to tolerate deparse
	errors...  and keep going. The fragment parser should ignore errors in nested
	function definitions

2017-11-04  rocky <rb@dustyfeet.com>

	* uncompyle6/scanner.py, uncompyle6/semantics/fragments.py: Add
	Python 3.6.3 scanner lookup

2017-11-03  R. Bernstein <rocky@users.noreply.github.com>

	* : Merge pull request #134 from mikemrm/master Corrected python3 import from queue

2017-10-29  rocky <rb@dustyfeet.com>

	* test/simple_source/bug36/10_extended_arg_loop.py,
	uncompyle6/parsers/parse36.py, uncompyle6/scanners/scanner3.py: 
	Python 3.6 control flow bug...  Much more is needed, but it's a start

2017-10-29  rocky <rb@dustyfeet.com>

	* uncompyle6/verify.py: In verify, JUMP_BACK is the same as
	CONTINUE...  at least for now. See FIXME in verify

2017-10-29  rocky <rb@dustyfeet.com>

	* uncompyle6/scanner.py, uncompyle6/scanners/scanner2.py,
	uncompyle6/scanners/scanner3.py, uncompyle6/scanners/scanner30.py: 
	Python 3.6-inspired instruction size cleanup Revise and generalize for Python 3.6+ instructions vs < 3.6
	instuctions.  Used more of the generalized methods in xdis and
	remove some (but not all) of the magic numbers.  This is a lot of changes, but not all of the refactoring needed.
	Much crap still remains. Also, there are still bugs in handling 3.6
	bytecodes.

2017-10-24  rocky <rb@dustyfeet.com>

	* Makefile, __pkginfo__.py: Bump uncompyle. Pypy 5.8.0-beta
	tolerance

2017-10-13  rocky <rb@dustyfeet.com>

	* test/Makefile, uncompyle6/semantics/consts.py: Tag more semantic
	actions with nonterminals

2017-10-13  rocky <rb@dustyfeet.com>

	* uncompyle6/parser.py, uncompyle6/semantics/consts.py: More node
	checking in tables

2017-10-13  rocky <rb@dustyfeet.com>

	* pytest/test_pysource.py, uncompyle6/parser.py,
	uncompyle6/parsers/parse24.py, uncompyle6/semantics/consts.py,
	uncompyle6/semantics/fragments.py, uncompyle6/semantics/pysource.py: 
	Start allowing node names in template engine These are now used to assert we have the right node type.  Simplify import_from

2017-10-13  rocky <rb@dustyfeet.com>

	* HISTORY.md, uncompyle6/semantics/pysource.py: Small changes

2017-10-12  rocky <rb@dustyfeet.com>

	* admin-tools/make-dist-newer.sh, admin-tools/make-dist-older.sh: 
	Administrivia - generalize shell code

2017-10-12  rocky <rb@dustyfeet.com>

	* admin-tools/how-to-make-a-release.md: Update install doc

2017-10-12  rocky <rb@dustyfeet.com>

	* admin-tools/how-to-make-a-release.md: Update instructions

2017-10-12  rocky <rb@dustyfeet.com>

	* admin-tools/make-dist-newer.sh, admin-tools/make-dist-older.sh: 
	Administrivia

2017-10-12  rocky <rb@dustyfeet.com>

	* admin-tools/how-to-make-a-release.md: Minor

2017-10-12  rocky <rb@dustyfeet.com>

	* : commit 491572ed2dd01bf655288638a121bf48c530b303 Author: rocky
	<rb@dustyfeet.com> Date:   Thu Oct 12 06:48:49 2017 -0400

2017-10-12  rocky <rb@dustyfeet.com>

	* ChangeLog, Makefile, NEWS, admin-tools/how-to-make-a-release.txt,
	uncompyle6/version.py: Get ready for release 2.13.2

2017-10-11  rocky <rb@dustyfeet.com>

	* admin-tools/check-older-versions.sh,
	admin-tools/make-dist-newer.sh, admin-tools/make-dist-older.sh,
	admin-tools/pyenv-newer-versions, admin-tools/pyenv-older-versions,
	admin-tools/setup-master.sh: Administrivia

2017-10-11  rocky <rb@dustyfeet.com>

	* admin-tools/check-newer-versions.sh,
	admin-tools/check-older-versions.sh,
	admin-tools/how-to-make-a-release.txt,
	admin-tools/make-dist-newer.sh, admin-tools/make-dist-older.sh: 
	Adminstrivia

2017-10-11  rocky <rb@dustyfeet.com>

	* admin-tools/README.md, admin-tools/check-newer-versions.sh,
	admin-tools/check-older-versions.sh,
	admin-tools/how-to-make-a-release.txt,
	admin-tools/make-dist-newer.sh, admin-tools/make-dist-older.sh,
	admin-tools/pyenv-newer-versions, admin-tools/pyenv-older-versions,
	admin-tools/setup-master.sh, admin-tools/setup-python-2.4.sh: Some
	admin tools I use.

2017-10-11  rocky <rb@dustyfeet.com>

	* setup.py: remove python_requires

2017-10-11  rocky <rb@dustyfeet.com>

	* uncompyle6/bin/uncompile.py: Program name was incorrect.  uncompile -> uncompyle6

2017-10-11  rocky <rb@dustyfeet.com>

	* Makefile, NEWS, setup.py, uncompyle6/version.py: Administrivia
	woes

2017-10-10  rocky <rb@dustyfeet.com>

	* : commit 9cfd7d669edc7f065bfc314924cfecbb6c7219ec Author: rocky
	<rb@dustyfeet.com> Date:   Tue Oct 10 21:50:06 2017 -0400

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_if_file.py => 01_extended_arg.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_true_else.py => 03_if_1_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_attr.py => 04_def_annotate.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_name.py =>
	05_store_locals.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/{comprehension =>
	bug27+}/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/{dis35.py =>
	dis3.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 => stmts}/00_assign.py,
	test/simple_source/{simple_stmts => stmts}/00_import.py,
	test/simple_source/{simple_stmts => stmts}/00_pass.py,
	test/simple_source/{simple_stmts => 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/{positional.py =>
	01_positional.py}, test/simple_source/call_arguments/10_keyword.py,
	test/simple_source/call_arguments/keyword.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 => 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/{for.py => 10_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_none_str.py,
	test/simple_source/{misc/assign.py => 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/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
	=> simple_source}/README, test/{simple-source =>
	simple_source}/branching/if.py, test/{simple-source =>
	simple_source}/branching/ifelse.py, test/{simple-source =>
	simple_source}/call_arguments/keyword.py, test/{simple-source =>
	simple_source}/call_arguments/positional.py,
	test/{simple-source/comprehension/01-lc.py =>
	simple_source/comprehension/01_list_comprehension.py},
	test/{simple-source => simple_source}/comprehension/forelse.py,
	test/{simple-source => simple_source}/def/def0.py,
	test/{simple-source => simple_source}/def/def1.py,
	test/simple_source/exception/01_try_except.py, test/{simple-source
	=> simple_source}/looping/for.py, test/{simple-source =>
	simple_source}/looping/while.py, test/{simple-source =>
	simple_source}/misc/assert.py, test/{simple-source =>
	simple_source}/misc/assign.py, test/{simple-source =>
	simple_source}/misc/assign_none.py, test/{simple-source =>
	simple_source}/misc/assign_none_str.py, test/{simple-source =>
	simple_source}/operation_binary/add.py, test/{simple-source =>
	simple_source}/operation_binary/and.py, test/{simple-source =>
	simple_source}/operation_binary/divide_floor.py,
	test/{simple-source =>
	simple_source}/operation_binary/divide_true.py, test/{simple-source
	=> simple_source}/operation_binary/modulo.py, test/{simple-source
	=> simple_source}/operation_binary/multiply.py, test/{simple-source
	=> simple_source}/operation_binary/or.py, test/{simple-source =>
	simple_source}/operation_binary/power.py, test/{simple-source =>
	simple_source}/operation_binary/shift_left.py, test/{simple-source
	=> simple_source}/operation_binary/shift_right.py,
	test/{simple-source =>
	simple_source}/operation_binary/subscription.py,
	test/{simple-source => simple_source}/operation_binary/subtract.py,
	test/{simple-source => simple_source}/operation_binary/xor.py,
	test/{simple-source =>
	simple_source}/operation_comparison/equal.py, test/{simple-source
	=> simple_source}/operation_comparison/greater.py,
	test/{simple-source =>
	simple_source}/operation_comparison/greater_equal.py,
	test/{simple-source => simple_source}/operation_comparison/less.py,
	test/{simple-source =>
	simple_source}/operation_comparison/less_equal.py,
	test/{simple-source =>
	simple_source}/operation_comparison/notequal.py,
	test/{simple-source => simple_source}/operation_inplace/add.py,
	test/{simple-source => simple_source}/operation_inplace/and.py,
	test/{simple-source =>
	simple_source}/operation_inplace/divide_floor.py,
	test/{simple-source =>
	simple_source}/operation_inplace/divide_true.py,
	test/{simple-source => simple_source}/operation_inplace/modulo.py,
	test/{simple-source =>
	simple_source}/operation_inplace/multiply.py, test/{simple-source
	=> simple_source}/operation_inplace/or.py, test/{simple-source =>
	simple_source}/operation_inplace/power.py, test/{simple-source =>
	simple_source}/operation_inplace/shift_left.py, test/{simple-source
	=> simple_source}/operation_inplace/shift_right.py,
	test/{simple-source =>
	simple_source}/operation_inplace/subtract.py, test/{simple-source
	=> 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
	=> simple_source}/precedence/left.py, test/{simple-source =>
	simple_source}/precedence/right.py, test/{simple-source =>
	simple_source}/precedence/structure.py,
	test/{simple-source/slice/01-slice.py =>
	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/disas.py, uncompyle6/load.py, uncompyle6/main.py,
	uncompyle6/semantics/__init__.py, uncompyle6/{deparser.py =>
	semantics/fragments.py}, uncompyle6/{walker.py =>
	semantics/pysource.py}, uncompyle6/verify.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.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/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_2.6 => ok_lib2.6}/anydbm.py, test/ok_lib2.7/README,
	test/{ok_2.7 => ok_lib2.7}/aifc.py, test/{ok_2.7 =>
	ok_lib2.7}/antigravity.py, test/{ok_2.7 => ok_lib2.7}/anydbm.py,
	test/{ok_2.7 => ok_lib2.7}/asynchat.py, test/{ok_2.7 =>
	ok_lib2.7}/asyncore.py, test/{ok_2.7 => ok_lib2.7}/atexit.py,
	test/{ok_2.7 => ok_lib2.7}/audiodev.py, test/{ok_2.7 =>
	ok_lib2.7}/base64.py, test/{ok_2.7 => ok_lib2.7}/binhex.py,
	test/{ok_2.7 => ok_lib2.7}/bisect.py, test/{ok_2.7 =>
	ok_lib2.7}/calendar.py, test/{ok_2.7 => ok_lib2.7}/cgitb.py,
	test/{ok_2.7 => ok_lib2.7}/chunk.py, test/{ok_2.7 =>
	ok_lib2.7}/codeop.py, test/{ok_2.7 => ok_lib2.7}/colorsys.py,
	test/{ok_2.7 => ok_lib2.7}/commands.py, test/{ok_2.7 =>
	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/{compile_tests => bytecompile-tests},
	test/simple-source/README, test/{source_3.4 =>
	simple-source}/branching/if.py, test/{source_3.4 =>
	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, 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/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/{uncompyle-code.py =>
	simple-uncompyle-code-test.py}, test/source_3.4/branching/if.py,
	test/source_3.4/branching/ifelse.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, {scripts => bin}/pydissassemble,
	{scripts => bin}/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 => 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/python2.7/test_applyEquiv.pyc_dis_unverified,
	test/base-tests/python2.7/test_augmentedAssign.pyc_dis_unverified,
	test/base-tests/python2.7/test_class.pyc_dis_unverified,
	test/base-tests/python2.7/test_divide_future.pyc_dis_unverified,
	test/base-tests/python2.7/test_exceptions.pyc_dis_unverified,
	test/{base-tests => base_tests}/compile_tests, test/{base-tests =>
	base_tests}/python2.7/test_applyEquiv.py, test/{base-tests =>
	base_tests}/python2.7/test_augmentedAssign.py, test/{base-tests =>
	base_tests}/python2.7/test_class.py, test/{base-tests =>
	base_tests}/python2.7/test_del.py, test/{base-tests =>
	base_tests}/python2.7/test_divide_future.py, test/{base-tests =>
	base_tests}/python2.7/test_divide_no_future.py, test/{base-tests =>
	base_tests}/python2.7/test_docstring.py, test/{base-tests =>
	base_tests}/python2.7/test_empty.py, test/{base-tests =>
	base_tests}/python2.7/test_exceptions.py, test/{base-tests =>
	base_tests}/python2.7/test_exec.py, test/{base-tests =>
	base_tests}/python2.7/test_expressions.py, test/{base-tests =>
	base_tests}/python2.7/test_extendedImport.py, test/{base-tests =>
	base_tests}/python2.7/test_extendedPrint.py, test/{base-tests =>
	base_tests}/python2.7/test_extendedarg.py-notyet, test/{base-tests
	=> base_tests}/python2.7/test_functions.py, test/{base-tests =>
	base_tests}/python2.7/test_global.py, test/{base-tests =>
	base_tests}/python2.7/test_globals.py, test/{base-tests =>
	base_tests}/python2.7/test_import.py, test/{base-tests =>
	base_tests}/python2.7/test_import_as.py, test/{base-tests =>
	base_tests}/python2.7/test_integers.py, test/{base-tests =>
	base_tests}/python2.7/test_iterators.py, test/{base-tests =>
	base_tests}/python2.7/test_lambda.py, test/{base-tests =>
	base_tests}/python2.7/test_listComprehensions.py, test/{base-tests
	=> base_tests}/python2.7/test_loops.py, test/{base-tests =>
	base_tests}/python2.7/test_loops2.py, test/{base-tests =>
	base_tests}/python2.7/test_mine.py, test/{base-tests =>
	base_tests}/python2.7/test_misc.py, test/{base-tests =>
	base_tests}/python2.7/test_nested_elif.py, test/{base-tests =>
	base_tests}/python2.7/test_nested_scopes.py, test/{base-tests =>
	base_tests}/python2.7/test_prettyprint.py, test/{base-tests =>
	base_tests}/python2.7/test_print.py, test/{base-tests =>
	base_tests}/python2.7/test_print_to.py, test/{base-tests =>
	base_tests}/python2.7/test_single_stmt.py, test/{base-tests =>
	base_tests}/python2.7/test_slices.py, test/{base-tests =>
	base_tests}/python2.7/test_tuple_params.py-notyet, test/{base-tests
	=> base_tests}/python2.7/test_tuples.py-notyet, test/{base-tests =>
	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/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/{python2 => }/compile_tests,
	test/base-tests/{python2 => python2.7}/test_applyEquiv.py,
	test/base-tests/python2.7/test_applyEquiv.pyc_dis_unverified,
	test/base-tests/{python2 => python2.7}/test_augmentedAssign.py,
	test/base-tests/python2.7/test_augmentedAssign.pyc_dis_unverified,
	test/base-tests/{python2 => python2.7}/test_class.py,
	test/base-tests/python2.7/test_class.pyc_dis_unverified,
	test/base-tests/{python2 => python2.7}/test_del.py,
	test/base-tests/{python2 => python2.7}/test_divide_future.py,
	test/base-tests/python2.7/test_divide_future.pyc_dis_unverified,
	test/base-tests/{python2 => python2.7}/test_divide_no_future.py,
	test/base-tests/{python2 => python2.7}/test_docstring.py,
	test/base-tests/{python2 => python2.7}/test_empty.py,
	test/base-tests/{python2 => python2.7}/test_exceptions.py,
	test/base-tests/python2.7/test_exceptions.pyc_dis_unverified,
	test/base-tests/{python2 => python2.7}/test_exec.py,
	test/base-tests/{python2 => python2.7}/test_expressions.py,
	test/base-tests/{python2 => python2.7}/test_extendedImport.py,
	test/base-tests/{python2 => python2.7}/test_extendedPrint.py,
	test/base-tests/{python2 => python2.7}/test_extendedarg.py-notyet,
	test/base-tests/{python2 => python2.7}/test_functions.py,
	test/base-tests/{python2 => python2.7}/test_global.py,
	test/base-tests/{python2 => python2.7}/test_globals.py,
	test/base-tests/{python2 => python2.7}/test_import.py,
	test/base-tests/{python2 => python2.7}/test_import_as.py,
	test/base-tests/{python2 => python2.7}/test_integers.py,
	test/base-tests/{python2 => python2.7}/test_iterators.py,
	test/base-tests/{python2 => python2.7}/test_lambda.py,
	test/base-tests/{python2 => python2.7}/test_listComprehensions.py,
	test/base-tests/{python2 => python2.7}/test_loops.py,
	test/base-tests/{python2 => python2.7}/test_loops2.py,
	test/base-tests/{python2 => python2.7}/test_mine.py,
	test/base-tests/{python2 => python2.7}/test_misc.py,
	test/base-tests/{python2 => python2.7}/test_nested_elif.py,
	test/base-tests/{python2 => python2.7}/test_nested_scopes.py,
	test/base-tests/{python2 => python2.7}/test_prettyprint.py,
	test/base-tests/{python2 => python2.7}/test_print.py,
	test/base-tests/{python2 => python2.7}/test_print_to.py,
	test/base-tests/{python2 => python2.7}/test_single_stmt.py,
	test/base-tests/{python2 => python2.7}/test_slices.py,
	test/base-tests/{python2 => python2.7}/test_tuple_params.py-notyet,
	test/base-tests/{python2 => python2.7}/test_tuples.py-notyet,
	test/base-tests/{python2 => python2.7}/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/{test_extendedarg.py =>
	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/{test_tuple_params.py =>
	base-tests/python2/test_tuple_params.py-notyet},
	test/{test_tuples.py => 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_one => test/test_one,
	test/test_pythonlib.py, uncompyle-code.py =>
	test/uncompyle-code.py, test_pythonlib.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/{parser.py => dparser.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 => opcodes}/__init__.py,
	uncompyle6/{opcode => opcodes}/opcode_23.py, uncompyle6/{opcode =>
	opcodes}/opcode_24.py, uncompyle6/{opcode => opcodes}/opcode_25.py,
	uncompyle6/{opcode => opcodes}/opcode_26.py, uncompyle6/{opcode =>
	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 => uncompyle6},
	setup.py, test_one, tox.ini, uncompyle-code.py,
	uncompyle2/magics.py, uncompyle2/scanner.py, {uncompyle2 =>
	uncompyle6}/__init__.py, {uncompyle2 => uncompyle6}/disas.py,
	uncompyle6/magics.py, {uncompyle2 =>
	uncompyle6}/opcode/__init__.py, {uncompyle2 =>
	uncompyle6}/opcode/opcode_23.py, {uncompyle2 =>
	uncompyle6}/opcode/opcode_24.py, {uncompyle2 =>
	uncompyle6}/opcode/opcode_25.py, {uncompyle2 =>
	uncompyle6}/opcode/opcode_26.py, {uncompyle2 =>
	uncompyle6}/opcode/opcode_27.py, {uncompyle2 =>
	uncompyle6}/parser.py, {uncompyle2 => uncompyle6}/scanner25.py,
	{uncompyle2 => uncompyle6}/scanner26.py, {uncompyle2 =>
	uncompyle6}/scanner27.py, {uncompyle2 => uncompyle6}/spark.py,
	{uncompyle2 => uncompyle6}/verify.py, {uncompyle2 =>
	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>

	* setup.py, test/test_loops.py, test/test_tuples.py, test_one,
	test_pythonlib => test_pythonlib.py, scripts/uncompyle2 =>
	uncompyle2.py, uncompyle2/Scanner.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 => parser.py}, uncompyle2/scanner.py,
	uncompyle2/{Scanner25.py => scanner25.py}, uncompyle2/{Scanner26.py
	=> scanner26.py}, uncompyle2/{Scanner27.py => scanner27.py},
	uncompyle2/spark.py, uncompyle2/verify.py, uncompyle2/{Walker.py =>
	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

