mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2024-11-23 05:00:07 +00:00
Get ready for release 3.7.4
This commit is contained in:
parent
8eb4d6a576
commit
28855767fb
11
NEWS.md
11
NEWS.md
@ -1,3 +1,14 @@
|
|||||||
|
3.7.4: 2020-8-05
|
||||||
|
================
|
||||||
|
|
||||||
|
* Fragment parsing was borked. This means deparsing in trepan2/trepan3k was broken
|
||||||
|
* 3.7+: narrow precedence for call tatement
|
||||||
|
* del_stmt -> delete to better match Python AST
|
||||||
|
* 3.8+ Add another `forelsestmt` (found only in a loop)
|
||||||
|
* 3.8+ Add precedence on walrus operator
|
||||||
|
* More files blackened
|
||||||
|
* bump min xdis version
|
||||||
|
|
||||||
3.7.3: 2020-7-25
|
3.7.3: 2020-7-25
|
||||||
================
|
================
|
||||||
|
|
||||||
|
@ -33,65 +33,71 @@
|
|||||||
# 3.4 | pip | 19.1.1 |
|
# 3.4 | pip | 19.1.1 |
|
||||||
|
|
||||||
# Things that change more often go here.
|
# Things that change more often go here.
|
||||||
copyright = """
|
copyright = """
|
||||||
Copyright (C) 2015-2020 Rocky Bernstein <rb@dustyfeet.com>.
|
Copyright (C) 2015-2020 Rocky Bernstein <rb@dustyfeet.com>.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
classifiers = ["Development Status :: 5 - Production/Stable",
|
classifiers = [
|
||||||
"Intended Audience :: Developers",
|
"Development Status :: 5 - Production/Stable",
|
||||||
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
|
"Intended Audience :: Developers",
|
||||||
"Operating System :: OS Independent",
|
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
|
||||||
"Programming Language :: Python",
|
"Operating System :: OS Independent",
|
||||||
"Programming Language :: Python :: 2.4",
|
"Programming Language :: Python",
|
||||||
"Programming Language :: Python :: 2.5",
|
"Programming Language :: Python :: 2.4",
|
||||||
"Programming Language :: Python :: 2.6",
|
"Programming Language :: Python :: 2.5",
|
||||||
"Programming Language :: Python :: 2.7",
|
"Programming Language :: Python :: 2.6",
|
||||||
"Programming Language :: Python :: 3.0",
|
"Programming Language :: Python :: 2.7",
|
||||||
"Programming Language :: Python :: 3.1",
|
"Programming Language :: Python :: 3.0",
|
||||||
"Programming Language :: Python :: 3.2",
|
"Programming Language :: Python :: 3.1",
|
||||||
"Programming Language :: Python :: 3.3",
|
"Programming Language :: Python :: 3.2",
|
||||||
"Programming Language :: Python :: 3.4",
|
"Programming Language :: Python :: 3.3",
|
||||||
"Programming Language :: Python :: 3.5",
|
"Programming Language :: Python :: 3.4",
|
||||||
"Programming Language :: Python :: 3.6",
|
"Programming Language :: Python :: 3.5",
|
||||||
"Programming Language :: Python :: 3.7",
|
"Programming Language :: Python :: 3.6",
|
||||||
"Programming Language :: Python :: 3.8",
|
"Programming Language :: Python :: 3.7",
|
||||||
"Topic :: Software Development :: Debuggers",
|
"Programming Language :: Python :: 3.8",
|
||||||
"Topic :: Software Development :: Libraries :: Python Modules",
|
"Topic :: Software Development :: Debuggers",
|
||||||
]
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
||||||
|
]
|
||||||
|
|
||||||
# The rest in alphabetic order
|
# The rest in alphabetic order
|
||||||
author = "Rocky Bernstein, Hartmut Goebel, John Aycock, and others"
|
author = "Rocky Bernstein, Hartmut Goebel, John Aycock, and others"
|
||||||
author_email = "rb@dustyfeet.com"
|
author_email = "rb@dustyfeet.com"
|
||||||
entry_points = {
|
entry_points = {
|
||||||
"console_scripts": [
|
"console_scripts": [
|
||||||
"uncompyle6=uncompyle6.bin.uncompile:main_bin",
|
"uncompyle6=uncompyle6.bin.uncompile:main_bin",
|
||||||
"pydisassemble=uncompyle6.bin.pydisassemble:main",
|
"pydisassemble=uncompyle6.bin.pydisassemble:main",
|
||||||
]}
|
]
|
||||||
ftp_url = None
|
}
|
||||||
install_requires = ["spark-parser >= 1.8.9, < 1.9.0",
|
ftp_url = None
|
||||||
"xdis >= 4.7.0, <5.1.0"]
|
install_requires = ["spark-parser >= 1.8.9, < 1.9.0", "xdis >= 5.0.4, <5.1.0"]
|
||||||
|
|
||||||
license = "GPL3"
|
license = "GPL3"
|
||||||
mailing_list = "python-debugger@googlegroups.com"
|
mailing_list = "python-debugger@googlegroups.com"
|
||||||
modname = "uncompyle6"
|
modname = "uncompyle6"
|
||||||
py_modules = None
|
py_modules = None
|
||||||
short_desc = "Python cross-version byte-code decompiler"
|
short_desc = "Python cross-version byte-code decompiler"
|
||||||
web = "https://github.com/rocky/python-uncompyle6/"
|
web = "https://github.com/rocky/python-uncompyle6/"
|
||||||
|
|
||||||
# tracebacks in zip files are funky and not debuggable
|
# tracebacks in zip files are funky and not debuggable
|
||||||
zip_safe = True
|
zip_safe = True
|
||||||
|
|
||||||
|
|
||||||
import os.path
|
import os.path
|
||||||
|
|
||||||
|
|
||||||
def get_srcdir():
|
def get_srcdir():
|
||||||
filename = os.path.normcase(os.path.dirname(os.path.abspath(__file__)))
|
filename = os.path.normcase(os.path.dirname(os.path.abspath(__file__)))
|
||||||
return os.path.realpath(filename)
|
return os.path.realpath(filename)
|
||||||
|
|
||||||
|
|
||||||
srcdir = get_srcdir()
|
srcdir = get_srcdir()
|
||||||
|
|
||||||
|
|
||||||
def read(*rnames):
|
def read(*rnames):
|
||||||
return open(os.path.join(srcdir, *rnames)).read()
|
return open(os.path.join(srcdir, *rnames)).read()
|
||||||
|
|
||||||
|
|
||||||
# Get info from files; set: long_description and VERSION
|
# Get info from files; set: long_description and VERSION
|
||||||
long_description = ( read("README.rst") + "\n" )
|
long_description = read("README.rst") + "\n"
|
||||||
exec(read("uncompyle6/version.py"))
|
exec(read("uncompyle6/version.py"))
|
||||||
|
@ -55,11 +55,11 @@
|
|||||||
# Make packages and tag
|
# Make packages and tag
|
||||||
|
|
||||||
$ . ./admin-tools/make-dist-older.sh
|
$ . ./admin-tools/make-dist-older.sh
|
||||||
$ pyenv local 3.8.4
|
$ pyenv local 3.8.5
|
||||||
$ twine check dist/uncompyle6-$VERSION*
|
|
||||||
$ ./admin-tools/make-dist-newer.sh
|
|
||||||
$ twine check dist/uncompyle6-$VERSION*
|
$ twine check dist/uncompyle6-$VERSION*
|
||||||
$ git tag release-python-2.4-$VERSION
|
$ git tag release-python-2.4-$VERSION
|
||||||
|
$ ./admin-tools/make-dist-newer.sh
|
||||||
|
$ twine check dist/uncompyle6-$VERSION*
|
||||||
|
|
||||||
# Check package on github
|
# Check package on github
|
||||||
|
|
||||||
|
@ -5,4 +5,4 @@ if [[ $0 == ${BASH_SOURCE[0]} ]] ; then
|
|||||||
echo "This script should be *sourced* rather than run directly through bash"
|
echo "This script should be *sourced* rather than run directly through bash"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
export PYVERSIONS='3.5.9 3.6.11 2.6.9 3.3.7 2.7.18 3.2.6 3.1.5 3.4.10 3.7.8 3.8.5'
|
export PYVERSIONS='3.5.9 3.6.12 2.6.9 3.3.7 2.7.18 3.2.6 3.1.5 3.4.10 3.7.9 3.8.5'
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright (C) 2018 Rocky Bernstein <rocky@gnu.org>
|
# Copyright (C) 2018, 2020 Rocky Bernstein <rocky@gnu.org>
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License as published by
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -47,8 +47,11 @@ def maybe_show_tree(walker, ast):
|
|||||||
stream = walker.showast
|
stream = walker.showast
|
||||||
else:
|
else:
|
||||||
stream = sys.stdout
|
stream = sys.stdout
|
||||||
if (isinstance(walker.showast, dict) and walker.showast.get("Full", False)
|
if (
|
||||||
and hasattr(walker, "str_with_template")):
|
isinstance(walker.showast, dict)
|
||||||
|
and walker.showast.get("Full", False)
|
||||||
|
and hasattr(walker, "str_with_template")
|
||||||
|
):
|
||||||
walker.str_with_template(ast)
|
walker.str_with_template(ast)
|
||||||
else:
|
else:
|
||||||
stream.write(str(ast))
|
stream.write(str(ast))
|
||||||
|
@ -5,10 +5,12 @@
|
|||||||
from math import copysign
|
from math import copysign
|
||||||
from uncompyle6 import PYTHON_VERSION
|
from uncompyle6 import PYTHON_VERSION
|
||||||
|
|
||||||
|
|
||||||
def is_negative_zero(n):
|
def is_negative_zero(n):
|
||||||
"""Returns true if n is -0.0"""
|
"""Returns true if n is -0.0"""
|
||||||
return n == 0.0 and copysign(1, n) == -1
|
return n == 0.0 and copysign(1, n) == -1
|
||||||
|
|
||||||
|
|
||||||
def better_repr(v, version):
|
def better_repr(v, version):
|
||||||
"""Work around Python's unorthogonal and unhelpful repr() for primitive float
|
"""Work around Python's unorthogonal and unhelpful repr() for primitive float
|
||||||
and complex."""
|
and complex."""
|
||||||
|
@ -12,4 +12,4 @@
|
|||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
# This file is suitable for sourcing inside POSIX shell as
|
# This file is suitable for sourcing inside POSIX shell as
|
||||||
# well as importing into Python
|
# well as importing into Python
|
||||||
VERSION="3.7.3" # noqa
|
VERSION="3.7.4" # noqa
|
||||||
|
Loading…
Reference in New Issue
Block a user