mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2024-10-07 10:13:39 +00:00
Update to use xdis 4.4.0 ...
with more correct SipHash and other needed bug fixes.
This commit is contained in:
parent
ced33a8f0b
commit
1d7e8f1617
@ -14,7 +14,6 @@ matrix:
|
|||||||
|
|
||||||
install:
|
install:
|
||||||
- pip install -e .
|
- pip install -e .
|
||||||
- pip install git+git://github.com/rocky/python-xdis.git#egg=xdis-4.3.3
|
|
||||||
- pip install -r requirements-dev.txt
|
- pip install -r requirements-dev.txt
|
||||||
|
|
||||||
script:
|
script:
|
||||||
|
@ -58,7 +58,7 @@ entry_points = {
|
|||||||
]}
|
]}
|
||||||
ftp_url = None
|
ftp_url = None
|
||||||
install_requires = ["spark-parser >= 1.8.9, < 1.9.0",
|
install_requires = ["spark-parser >= 1.8.9, < 1.9.0",
|
||||||
"xdis >= 4.3.2, < 4.4.0"]
|
"xdis >= 4.4.0, < 4.5.0"]
|
||||||
|
|
||||||
license = "GPL3"
|
license = "GPL3"
|
||||||
mailing_list = "python-debugger@googlegroups.com"
|
mailing_list = "python-debugger@googlegroups.com"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright (c) 2015-2016, 2818-2019 by Rocky Bernstein
|
# Copyright (c) 2015-2016, 2818-2020 by Rocky Bernstein
|
||||||
# Copyright (c) 2005 by Dan Pascu <dan@windowmaker.org>
|
# Copyright (c) 2005 by Dan Pascu <dan@windowmaker.org>
|
||||||
# Copyright (c) 2000-2002 by hartmut Goebel <h.goebel@crazy-compilers.com>
|
# Copyright (c) 2000-2002 by hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||||
# Copyright (c) 1999 John Aycock
|
# Copyright (c) 1999 John Aycock
|
||||||
@ -100,7 +100,9 @@ def disassemble_file(filename, outstream=None):
|
|||||||
try to find the corresponding compiled object.
|
try to find the corresponding compiled object.
|
||||||
"""
|
"""
|
||||||
filename = check_object_path(filename)
|
filename = check_object_path(filename)
|
||||||
(version, timestamp, magic_int, co, is_pypy, source_size) = load_module(filename)
|
(version, timestamp, magic_int, co, is_pypy, source_size, sip_hash) = load_module(
|
||||||
|
filename
|
||||||
|
)
|
||||||
if type(co) == list:
|
if type(co) == list:
|
||||||
for con in co:
|
for con in co:
|
||||||
disco(version, con, outstream)
|
disco(version, con, outstream)
|
||||||
|
@ -22,7 +22,7 @@ from xdis.bytecode import Bytecode, findlinestarts, offset2line
|
|||||||
|
|
||||||
def line_number_mapping(pyc_filename, src_filename):
|
def line_number_mapping(pyc_filename, src_filename):
|
||||||
(version, timestamp, magic_int, code1, is_pypy,
|
(version, timestamp, magic_int, code1, is_pypy,
|
||||||
source_size) = load_module(pyc_filename)
|
source_size, sip_hash) = load_module(pyc_filename)
|
||||||
try:
|
try:
|
||||||
code2 = load_file(src_filename)
|
code2 = load_file(src_filename)
|
||||||
except SyntaxError as e:
|
except SyntaxError as e:
|
||||||
|
@ -183,7 +183,7 @@ def decompile_file(
|
|||||||
|
|
||||||
filename = check_object_path(filename)
|
filename = check_object_path(filename)
|
||||||
code_objects = {}
|
code_objects = {}
|
||||||
(version, timestamp, magic_int, co, is_pypy, source_size) = load_module(
|
(version, timestamp, magic_int, co, is_pypy, source_size, sip_hash) = load_module(
|
||||||
filename, code_objects
|
filename, code_objects
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -392,7 +392,7 @@ def compare_code_with_srcfile(pyc_filename, src_filename, verify):
|
|||||||
is returned. Otherwise a string message describing the mismatch is returned.
|
is returned. Otherwise a string message describing the mismatch is returned.
|
||||||
"""
|
"""
|
||||||
(version, timestamp, magic_int, code_obj1, is_pypy,
|
(version, timestamp, magic_int, code_obj1, is_pypy,
|
||||||
source_size) = load_module(pyc_filename)
|
source_size, sip_hash) = load_module(pyc_filename)
|
||||||
if magic_int != PYTHON_MAGIC_INT:
|
if magic_int != PYTHON_MAGIC_INT:
|
||||||
msg = ("Can't compare code - Python is running with magic %s, but code is magic %s "
|
msg = ("Can't compare code - Python is running with magic %s, but code is magic %s "
|
||||||
% (PYTHON_MAGIC_INT, magic_int))
|
% (PYTHON_MAGIC_INT, magic_int))
|
||||||
@ -417,9 +417,9 @@ def compare_code_with_srcfile(pyc_filename, src_filename, verify):
|
|||||||
def compare_files(pyc_filename1, pyc_filename2, verify):
|
def compare_files(pyc_filename1, pyc_filename2, verify):
|
||||||
"""Compare two .pyc files."""
|
"""Compare two .pyc files."""
|
||||||
(version1, timestamp, magic_int1, code_obj1, is_pypy,
|
(version1, timestamp, magic_int1, code_obj1, is_pypy,
|
||||||
source_size) = uncompyle6.load_module(pyc_filename1)
|
source_size, sip_hash) = uncompyle6.load_module(pyc_filename1)
|
||||||
(version2, timestamp, magic_int2, code_obj2, is_pypy,
|
(version2, timestamp, magic_int2, code_obj2, is_pypy,
|
||||||
source_size) = uncompyle6.load_module(pyc_filename2)
|
source_size, sip_hash) = uncompyle6.load_module(pyc_filename2)
|
||||||
if (magic_int1 != magic_int2) and verify == 'verify':
|
if (magic_int1 != magic_int2) and verify == 'verify':
|
||||||
verify = 'weak_verify'
|
verify = 'weak_verify'
|
||||||
cmp_code_objects(version1, is_pypy, code_obj1, code_obj2, verify)
|
cmp_code_objects(version1, is_pypy, code_obj1, code_obj2, verify)
|
||||||
|
Loading…
Reference in New Issue
Block a user