ARE WE NATIVE YET?

Live compatibility status of pyscriptc: which builtins, standard-library modules and PyPI packages compile to native code today.

generated 2026-10-28 at commit 7f67db8da943

99%76 of 77 probed builtins and stdlib modules compile (full or partial)

Builtins

2 full ·15 partial ·1 none

18 probed

Standard library

0 full ·59 partial ·0 none

59 probed

PyPI top 100

2 full ·7 partial ·9 none

18 probed

Support at a glance

One square per probed item. Green is full, amber partial, red none. Hover for details; click a square to jump to its table row.

Adoption ladder

How far a script gets: compiles, and compiles plus passes its output checks. Lanes say where each import lands in the compiled tree.

RungCorpusScriptsCompiledPassed
R1 — Single-file scriptbenchmarks/scripts_corpus/scripts451613
R2 — Multi-module treebenchmarks/scripts_corpus/trees544
native83%273 imports
pack0%1 imports
extern17%56 imports
island0%0 imports
absent0%0 imports

Builtins

ItemStatusCountUnsupportedFences
abs, all, any, bin, chr, divmod, enumerate, getattr, hasattr, hex, iter, len, map, next, oct, ord, pow, range, repr, reversed, round, sum, bool, setfull24——
printpartial1file= other than sys.stdout or sys.stderrPS2002
inputpartial1prompt argumentPS2003
intpartial1unknown keyword, int(bool)PS2003
floatpartial1float(bool)PS2003
strpartial1str of a user classPS2003
listpartial1list(str)PS2002
min, maxpartial2key= a function namePS2003
sortedpartial1key= a function name, sorted(dict)PS2003
zippartial1more than 2 listsPS2003
filterfull1——
isinstancepartial1tuple of typesPS2001
openpartial1keywords other than encoding=PS2003
idpartial1id of intPS2003
frozensetpartial1non-constant argumentPS2002
evalpartial1anything but a constant expressionPS2002
BaseException and subclassespartial7ExceptionGroupPS2003
bytes, bytearray, memoryview, callable, complex, dict, format, tuple, type, object, super, vars, dir, globals, locals, exec, issubclass, ascii, setattr, delattr, slice, hash, __import__none23all (`dict` displays and `{}` work; `dict(...)` does not)PS2002

Standard library

ItemStatusCountUnsupportedFences
mathpartial1asin, sinh, degrees, fsum, factorial, comb, isqrt, copysign, fmod, cbrt, log with a basePS2001, PS2003
repartial1finditer, 5+ groups, sub with a functionPS1001, PS2001, PS2002
jsonpartial1ensure_ascii=False, JSONDecodeErrorPS1106, PS2003
tomllibpartial1load (file object), keyword argumentsPS2001, PS2003
dotenvpartial1stream, verbose, interpolate, override, encoding arguments, other dotenv members (find_dotenv, set_key, DotEnv), interpolation ($VAR stays literal)PS2001, PS2003
yamlpartial1load, dump, safe_dump, keyword argumentsPS2001, PS2003
jwtpartial1RS256 and other asymmetric algorithms, non-literal algorithm, other jwt members (get_unverified_header, PyJWTError), claims beyond str values (exp, aud), options dict, headers argumentPS1003, PS2001, PS2003
orjsonpartial1default callable, other OPT_ flags, other orjson members (Fragment, JSONDecodeError)PS2001, PS2003
urllib.request, urllib.errorpartial2urlopen header keyword, other urllib.request members (build_opener, install_opener, urlretrieve), HTTPError attribute readsPS2001, PS2003
urllib.parsepartial1urlparse, urljoin, urlunsplit, parse_qslPS2001
base64partial1b32, b16, a85, encodebytesPS2001
hashlibpartial1blake2, sha3, sha224, new, pbkdf2_hmac, incremental update (no-argument constructor)PS2001, PS2003
structpartial1calcsize, unpack_from, non-literal formatPS2001
datetimepartial1timezone and tzinfo, utcnow, datetime.strftimePS2001
timepartial1time_ns, ctime, process_timePS2001
collectionspartial1ChainMapPS1106
functoolspartial1reduce with a lambda, reduce with an initializer, partial, wraps, lru_cache, cmp_to_key, cache, total_orderingPS2001, PS2002
itertoolspartial1count, cycle (infinite), permutations, pairwise, batched, tee, dropwhile, compressPS2001
operatorpartial1itemgetter, attrgetter, methodcaller, and_, not_, getitemPS2001
contextlibpartial1closing, redirect_stdout, ExitStack, contextmanagerPS2001
ospartial1scandir, system, urandom, cpu_count, kill, symlink, rmdir, getuid, keyword arguments (makedirs exist_ok)PS2001, PS2003
posixpathpartial1commonpath, ismount, lexistsPS2001
pathlibpartial1rglob, absolute, rmdir, with_suffix, relative_to, resolve to str, PurePathPS2001
statpartial1S_IMODE, S_ISFIFO, S_ISSOCK, filemodePS2001
fnmatchpartial1fnmatchcase, translatePS2001
warningspartial1warn with a category, simplefilterPS2001
iopartial1TextIOWrapper, BufferedReader, io.openPS1106
syspartial1stdin, path, modules, getsizeof, getrecursionlimit, stdout.flushPS2001
importlibpartial1import_module, reloadPS2001
inspectpartial1getsource, isclass, signature, iscoroutinefunctionPS2001
threadingpartial1main_thread, Thread target is a callable, Timer, Lock in `with`PS1003, PS1106, PS2001, PS2002
queuepartial1PriorityQueue, a queue without an element annotation, an unknown queue method, a bool element typePS1001, PS1106, PS2001, PS2002
loggingpartial1basicConfig(level=...), format args (`logging.info(fmt, a)`), exception, handlers (StreamHandler)PS2001, PS2003
asynciopartial1bare Queue annotation (element type needed), get_event_loop, sleep outside a coroutinePS1001, PS2001, PS2002
subprocesspartial1Popen, getoutputPS2001
socketpartial1socket(), gethostbynamePS2001
sslpartial1contexts (create_default_context)PS2001
ctypespartial1CDLL, c_int(...), sizeof of other typesPS2001
stringpartial1capwords, TemplatePS2001
bisectpartial1insort, bisect, key=, list[str]PS2001
errnopartial1errorcodePS2001
importlib.resourcespartial1read_text, is_resourcePS2001
hmacpartial1hexdigest, digestmod=PS2001
unicodedatapartial1ucd_3_2_0 (also: Latin-1 only)PS2001
tempfilepartial1mkstemp, TemporaryDirectoryPS2001
atexitpartial1register of a function with arguments, unregisterPS2001
shutilpartial1make_archive, disk_usage, chownPS2001
enumpartial1Flag, str-valued members, methods on the enumPS2002
dataclassespartial1field(), asdict, frozen=, order= and other optionsPS1201, PS2001
randompartial1sample, gauss, Random, choices(k=)PS2001, PS2003
csvpartial1DictReader, writer on a non-filePS2001
textwrappartial1TextWrapperPS2001
copypartial1copy of a user classPS2001
argparsepartial1subparsers, nargs=, choices=PS2003
platformpartial1processorPS2001
calendarpartial1monthcalendarPS2001
zipfilepartial1ZipFilePS2001
tarfilepartial1TarFilePS2001
typing, typing_extensionspartial2Any annotation, bare Callable, multi-arm union, optional of a multi-arm union, Literal annotation, Self return, TypeAlias declaration, PEP 695 type alias, PEP 695 TypeVar parameter, forward reference string, TypedDict class base, NamedTuple class base, NewType value, ParamSpec value, cast value, get_type_hints reflection, isinstance with a generic, __annotations__ readPS1101, PS1102, PS1103, PS1104, PS1105, PS1106, PS2001, PS2002

PyPI top 100

The pinned packages of the PyPI top-100 corpus, with the fences that block them.

PackageVersionStatusDefinitionsFencedTop fences
certifi2026.7.22full50—
colorama0.4.6none7748PS1204 (51), PS2002 (42), PS1001 (36)
python-dotenv1.2.4none7542PS2002 (85), PS1106 (10), PS1001 (7)
filelock4.1.1partial641238PS2002 (411), PS2001 (78), PS1103 (52)
h110.16.0none13374PS2002 (106), PS1106 (17), PS1203 (15)
idna3.20none5637PS2002 (46), PS2003 (23), PS1101 (7)
iniconfig2.3.1partial3413PS2002 (6), PS1003 (5), PS1103 (4)
jmespath1.1.0none200107PS1001 (93), PS2002 (14), PS1204 (9)
pyjwt2.15.1partial17165PS2002 (55), PS1104 (20), PS2001 (15)
mdurl0.1.2none127PS2002 (15), PS2003 (2), PS2001 (1)
packaging26.3partial558279PS2002 (214), PS1106 (90), PS1204 (52)
pathspec1.1.1none13292PS2002 (108), PS1106 (21), PS1201 (20)
platformdirs4.13.0partial388154PS2002 (131), PS1102 (33), PS2001 (22)
pytz2026.5partial10232PS2002 (30), PS1001 (18), PS2001 (3)
shellingham1.5.4none2519PS2002 (27), PS1001 (18), PS2001 (1)
trove-classifiers2026.9.21.13partial00PS2002 (1)
tzdata2026.5full00—
zipp4.1.1none7557PS1001 (50), PS2002 (15), PS2001 (3)

Fence census

Fence diagnostics across the pinned PyPI corpus, by code. A fence is a reported, numbered divergence — never a silent miscompile.

CodeTitleCountPackages
PS2002construct not supported130616
PS1001annotation missing or not supported30113
PS2001stdlib name not supported20915
PS1106annotation names a type the compiler does not take1979
PS1204class body statement1257
PS1103generic alias annotation1218
PS1101union annotation929
PS2003call arguments not supported7910
PS1201decorator728
PS1104dynamic or structural annotation676
PS1003type mismatch508
PS1102Optional annotation425
PS1203class header form255
PS1105forward reference annotation146
PS2004operator or operand not supported115
PS2006decorator expression is not a typed callable63
PS4203finalizer refused11
PS4201dynamic attribute protocol refused11

History

DateCommitPackages fullPartialNoneFences
2026-10-25d4987c81acf426102721
2026-10-269b915eea78b92792719
2026-10-2795debbd232c82792719
2026-10-287f67db8da9432792719