You've already forked python-uncompyle6
mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2025-08-03 08:49:51 +08:00
Merge branch 'master' of github.com:rocky/python-uncompyle6
This commit is contained in:
@@ -2,18 +2,26 @@
|
||||
|
||||
## The difficulty of the problem
|
||||
|
||||
There is no Python decompiler yet, that I know about that will
|
||||
decompyle everything. This one probably does the best job of *any*
|
||||
Python decompiler. But it is a constant work in progress: Python keeps
|
||||
This decompiler is a constant work in progress: Python keeps
|
||||
changing, and so does its code generation.
|
||||
|
||||
I have found bugs in *every* Python decompiler I have tried. Even
|
||||
those where authors/maintainers claim that they have used it on
|
||||
the entire Python standard library. And I don't mean that
|
||||
the program doesn't come out with the same Python source instructions,
|
||||
but that the program is *semantically* not equivalent.
|
||||
There is no Python decompiler yet that I know about that will
|
||||
decompile everything. Overall, I think this one probably does the best
|
||||
job of *any* Python decompiler that handles such a wide range of
|
||||
versions.
|
||||
|
||||
So it is likely you'll find a mistranslation in decompiling.
|
||||
But at any given time, there are maybe dozens of valid Python bytecode
|
||||
files that I know of that will cause problems. And when I get through
|
||||
those and all the issues of decompiler bugs that are currently logged,
|
||||
I could probably easily find dozens more bugs just by doing a
|
||||
decompile of all the Python bytecode on any one of my
|
||||
computers. Unless you want to help out by _fixing_ bugs, or are
|
||||
willing to do work by isolating and narrowing bugs, don't feel you are
|
||||
doing me a favor by doing scans on your favorite sets of bytecode
|
||||
files.
|
||||
|
||||
In sum, it is not uncommon that you will find a mistranslation in
|
||||
decompiling.
|
||||
|
||||
|
||||
## Is it really a bug?
|
||||
@@ -72,10 +80,11 @@ The basic requirement is pretty simple:
|
||||
* Python source text
|
||||
|
||||
Please don't put files on download services that one has to register
|
||||
for. If you can't attach it to the issue, or create a github gist,
|
||||
then the code you are sending is too large.
|
||||
for or can't get to by issuing curl or wget. If you can't attach it to
|
||||
the issue, or create a github gist, then the code you are sending is
|
||||
too large.
|
||||
|
||||
Please also try to narrow the bug. See below.
|
||||
Also try to narrow the bug. See below.
|
||||
|
||||
## What to send (additional helpful information)
|
||||
|
||||
@@ -106,9 +115,9 @@ one fool can learn, so can another."
|
||||
|
||||
## Narrowing the problem
|
||||
|
||||
I don't need or want the entire source code base for which one file or module
|
||||
can't be decompiled. I just need that one file or module only. If
|
||||
there are several files, file a bug report for each file.
|
||||
I don't need or want the entire source code base for which one file or
|
||||
module can't be decompiled. I just need that one file or module
|
||||
only. If there are several files, file a bug report for each file.
|
||||
|
||||
Python modules can get quite large, and usually decompilation problems
|
||||
occur in a single function or maybe the main-line code but not any of
|
||||
|
Reference in New Issue
Block a user