Staging
v0.8.1
https://github.com/python/cpython
Revision 345cd37abe324ad4f60f80e2c3133b8849e54e9b authored by Eric Snow on 23 October 2020, 00:42:51 UTC, committed by GitHub on 23 October 2020, 00:42:51 UTC
The original tool wasn't working right and it was simpler to create a new one, partially re-using some of the old code. At this point the tool runs properly on the master. (Try: ./python Tools/c-analyzer/c-analyzer.py analyze.)  It take ~40 seconds on my machine to analyze the full CPython code base.

Note that we'll need to iron out some OS-specific stuff (e.g. preprocessor). We're okay though since this tool isn't used yet in our workflow. We will also need to verify the analysis results in detail before activating the check in CI, though I'm pretty sure it's close.

https://bugs.python.org/issue36876
1 parent ec388cf
History
Tip revision: 345cd37abe324ad4f60f80e2c3133b8849e54e9b authored by Eric Snow on 23 October 2020, 00:42:51 UTC
bpo-36876: Fix the C analyzer tool. (GH-22841)
Tip revision: 345cd37
File Mode Size
asyncio
collections
concurrent
ctypes
curses
dbm
distutils
email
encodings
ensurepip
html
http
idlelib
importlib
json
lib2to3
logging
msilib
multiprocessing
pydoc_data
site-packages
sqlite3
test
tkinter
turtledemo
unittest
urllib
venv
wsgiref
xml
xmlrpc
zoneinfo
__future__.py -rw-r--r-- 5.0 KB
__phello__.foo.py -rw-r--r-- 64 bytes
_aix_support.py -rw-r--r-- 3.2 KB
_bootlocale.py -rw-r--r-- 1.8 KB
_bootsubprocess.py -rw-r--r-- 2.6 KB
_collections_abc.py -rw-r--r-- 25.8 KB
_compat_pickle.py -rw-r--r-- 8.5 KB
_compression.py -rw-r--r-- 5.2 KB
_markupbase.py -rw-r--r-- 14.3 KB
_osx_support.py -rw-r--r-- 19.1 KB
_py_abc.py -rw-r--r-- 6.0 KB
_pydecimal.py -rw-r--r-- 223.3 KB
_pyio.py -rw-r--r-- 91.2 KB
_sitebuiltins.py -rw-r--r-- 3.0 KB
_strptime.py -rw-r--r-- 24.7 KB
_threading_local.py -rw-r--r-- 7.1 KB
_weakrefset.py -rw-r--r-- 5.7 KB
abc.py -rw-r--r-- 5.9 KB
aifc.py -rw-r--r-- 31.8 KB
antigravity.py -rw-r--r-- 500 bytes
argparse.py -rw-r--r-- 95.4 KB
ast.py -rw-r--r-- 51.3 KB
asynchat.py -rw-r--r-- 11.1 KB
asyncore.py -rw-r--r-- 19.6 KB
base64.py -rwxr-xr-x 20.4 KB
bdb.py -rw-r--r-- 30.7 KB
binhex.py -rw-r--r-- 14.4 KB
bisect.py -rw-r--r-- 3.1 KB
bz2.py -rw-r--r-- 11.9 KB
cProfile.py -rwxr-xr-x 6.0 KB
calendar.py -rw-r--r-- 23.9 KB
cgi.py -rwxr-xr-x 32.8 KB
cgitb.py -rw-r--r-- 11.8 KB
chunk.py -rw-r--r-- 5.3 KB
cmd.py -rw-r--r-- 14.5 KB
code.py -rw-r--r-- 10.4 KB
codecs.py -rw-r--r-- 35.8 KB
codeop.py -rw-r--r-- 6.2 KB
colorsys.py -rw-r--r-- 4.0 KB
compileall.py -rw-r--r-- 19.6 KB
configparser.py -rw-r--r-- 53.1 KB
contextlib.py -rw-r--r-- 23.1 KB
contextvars.py -rw-r--r-- 129 bytes
copy.py -rw-r--r-- 8.5 KB
copyreg.py -rw-r--r-- 7.0 KB
crypt.py -rw-r--r-- 3.7 KB
csv.py -rw-r--r-- 15.8 KB
dataclasses.py -rw-r--r-- 49.1 KB
datetime.py -rw-r--r-- 86.0 KB
decimal.py -rw-r--r-- 320 bytes
difflib.py -rw-r--r-- 82.4 KB
dis.py -rw-r--r-- 20.1 KB
doctest.py -rw-r--r-- 102.1 KB
enum.py -rw-r--r-- 35.7 KB
filecmp.py -rw-r--r-- 9.7 KB
fileinput.py -rw-r--r-- 14.4 KB
fnmatch.py -rw-r--r-- 5.8 KB
formatter.py -rw-r--r-- 14.8 KB
fractions.py -rw-r--r-- 23.8 KB
ftplib.py -rw-r--r-- 34.3 KB
functools.py -rw-r--r-- 36.6 KB
genericpath.py -rw-r--r-- 4.9 KB
getopt.py -rw-r--r-- 7.3 KB
getpass.py -rw-r--r-- 5.8 KB
gettext.py -rw-r--r-- 26.6 KB
glob.py -rw-r--r-- 7.5 KB
graphlib.py -rw-r--r-- 9.3 KB
gzip.py -rw-r--r-- 21.3 KB
hashlib.py -rw-r--r-- 9.8 KB
heapq.py -rw-r--r-- 22.3 KB
hmac.py -rw-r--r-- 6.8 KB
imaplib.py -rw-r--r-- 53.6 KB
imghdr.py -rw-r--r-- 3.7 KB
imp.py -rw-r--r-- 10.3 KB
inspect.py -rw-r--r-- 116.1 KB
io.py -rw-r--r-- 3.5 KB
ipaddress.py -rw-r--r-- 72.6 KB
keyword.py -rw-r--r-- 1.0 KB
linecache.py -rw-r--r-- 5.3 KB
locale.py -rw-r--r-- 76.4 KB
lzma.py -rw-r--r-- 12.7 KB
mailbox.py -rw-r--r-- 76.9 KB
mailcap.py -rw-r--r-- 8.0 KB
mimetypes.py -rw-r--r-- 21.2 KB
modulefinder.py -rw-r--r-- 23.8 KB
netrc.py -rw-r--r-- 5.4 KB
nntplib.py -rw-r--r-- 40.1 KB
ntpath.py -rw-r--r-- 27.1 KB
nturl2path.py -rw-r--r-- 2.5 KB
numbers.py -rw-r--r-- 10.0 KB
opcode.py -rw-r--r-- 5.5 KB
operator.py -rw-r--r-- 10.5 KB
optparse.py -rw-r--r-- 59.0 KB
os.py -rw-r--r-- 38.1 KB
pathlib.py -rw-r--r-- 51.5 KB
pdb.py -rwxr-xr-x 61.2 KB
pickle.py -rw-r--r-- 63.3 KB
pickletools.py -rw-r--r-- 91.3 KB
pipes.py -rw-r--r-- 8.7 KB
pkgutil.py -rw-r--r-- 23.9 KB
platform.py -rwxr-xr-x 39.1 KB
plistlib.py -rw-r--r-- 27.2 KB
poplib.py -rw-r--r-- 14.8 KB
posixpath.py -rw-r--r-- 15.3 KB
pprint.py -rw-r--r-- 21.7 KB
profile.py -rwxr-xr-x 22.2 KB
pstats.py -rw-r--r-- 28.6 KB
pty.py -rw-r--r-- 4.7 KB
py_compile.py -rw-r--r-- 7.6 KB
pyclbr.py -rw-r--r-- 14.9 KB
pydoc.py -rwxr-xr-x 107.5 KB
queue.py -rw-r--r-- 11.2 KB
quopri.py -rwxr-xr-x 7.1 KB
random.py -rw-r--r-- 30.6 KB
re.py -rw-r--r-- 15.5 KB
reprlib.py -rw-r--r-- 5.1 KB
rlcompleter.py -rw-r--r-- 7.1 KB
runpy.py -rw-r--r-- 11.9 KB
sched.py -rw-r--r-- 6.2 KB
secrets.py -rw-r--r-- 2.0 KB
selectors.py -rw-r--r-- 19.1 KB
shelve.py -rw-r--r-- 8.3 KB
shlex.py -rw-r--r-- 13.2 KB
shutil.py -rw-r--r-- 49.9 KB
signal.py -rw-r--r-- 2.2 KB
site.py -rw-r--r-- 21.4 KB
smtpd.py -rwxr-xr-x 34.0 KB
smtplib.py -rwxr-xr-x 43.5 KB
sndhdr.py -rw-r--r-- 6.9 KB
socket.py -rwxr-xr-x 35.8 KB
socketserver.py -rw-r--r-- 26.3 KB
sre_compile.py -rw-r--r-- 26.1 KB
sre_constants.py -rw-r--r-- 7.0 KB
sre_parse.py -rw-r--r-- 39.3 KB
ssl.py -rw-r--r-- 49.6 KB
stat.py -rw-r--r-- 5.4 KB
statistics.py -rw-r--r-- 37.2 KB
string.py -rw-r--r-- 10.3 KB
stringprep.py -rw-r--r-- 12.6 KB
struct.py -rw-r--r-- 257 bytes
subprocess.py -rw-r--r-- 81.2 KB
sunau.py -rw-r--r-- 17.7 KB
symtable.py -rw-r--r-- 10.0 KB
sysconfig.py -rw-r--r-- 24.1 KB
tabnanny.py -rwxr-xr-x 11.1 KB
tarfile.py -rwxr-xr-x 92.1 KB
telnetlib.py -rw-r--r-- 22.7 KB
tempfile.py -rw-r--r-- 27.0 KB
textwrap.py -rw-r--r-- 19.3 KB
this.py -rw-r--r-- 1003 bytes
threading.py -rw-r--r-- 51.0 KB
timeit.py -rwxr-xr-x 13.2 KB
token.py -rw-r--r-- 2.3 KB
tokenize.py -rw-r--r-- 25.2 KB
trace.py -rwxr-xr-x 28.5 KB
traceback.py -rw-r--r-- 23.3 KB
tracemalloc.py -rw-r--r-- 17.6 KB
tty.py -rw-r--r-- 879 bytes
turtle.py -rw-r--r-- 140.2 KB
types.py -rw-r--r-- 9.6 KB
typing.py -rw-r--r-- 73.0 KB
uu.py -rwxr-xr-x 6.8 KB
uuid.py -rw-r--r-- 26.7 KB
warnings.py -rw-r--r-- 19.2 KB
wave.py -rw-r--r-- 17.6 KB
weakref.py -rw-r--r-- 20.7 KB
webbrowser.py -rwxr-xr-x 23.5 KB
xdrlib.py -rw-r--r-- 5.8 KB
zipapp.py -rw-r--r-- 7.4 KB
zipfile.py -rw-r--r-- 85.7 KB
zipimport.py -rw-r--r-- 26.9 KB

back to top