Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
c812aaf
wip
mivanit Oct 17, 2025
64821c3
Merge branch 'main' into dev-0.9
mivanit Oct 28, 2025
d626f20
remove old demo
mivanit Oct 28, 2025
83e0ec1
fix type hints for legacy compat
mivanit Oct 28, 2025
46f635b
make format
mivanit Oct 28, 2025
8446d8e
add Command
mivanit Oct 28, 2025
534612a
fix type hint
mivanit Oct 28, 2025
98b6a1d
try to fix type checking
mivanit Oct 28, 2025
e503b90
type fixes
mivanit Oct 28, 2025
eb5fda6
fix @override import
mivanit Oct 28, 2025
e85fa01
weasyprint fixes
mivanit Oct 28, 2025
90b8c2e
fix import type hint ignore
mivanit Oct 28, 2025
30d0cb0
fix not passing `doc` to `SerializableField` init
mivanit Oct 29, 2025
49ee854
fix minor serialization bugs
mivanit Oct 29, 2025
573ef83
add a lot of tests
mivanit Oct 29, 2025
3fb953d
fix benchmark parallel tests
mivanit Oct 29, 2025
cfca63c
format, fix one path
mivanit Oct 29, 2025
7edf9df
more dbg tests
mivanit Oct 29, 2025
8ba78fb
makefile merging wip
mivanit Oct 29, 2025
50d14a6
merging makefile pt2
mivanit Oct 29, 2025
a3ca613
remove old makefile
mivanit Oct 29, 2025
8a1ed6b
_COUNTER assert to prevent removal from imports
mivanit Oct 29, 2025
c4fa438
fix type hint
mivanit Oct 29, 2025
16b5e64
type fix
mivanit Oct 29, 2025
3aada01
will be doing lots of type checking fixes B)
mivanit Oct 29, 2025
6f5736c
typing-summary recipe
mivanit Oct 29, 2025
83eec0a
some typing fixes
mivanit Oct 30, 2025
d004e54
make JSONitem type recursive!
mivanit Oct 30, 2025
1624803
typing
mivanit Oct 30, 2025
8a8de95
fix assert (counter was 0 lol)
mivanit Oct 30, 2025
3dd88f5
typing fixes
mivanit Oct 30, 2025
9d0824e
better type checking config
mivanit Oct 30, 2025
6997c6c
todos for claude
mivanit Oct 30, 2025
e90cfa0
fix array stuff, mostly for type hints. no more 0-dim list mode
mivanit Oct 30, 2025
ae66696
type hint global ignores
mivanit Oct 30, 2025
c340c1a
none type handled?
mivanit Oct 30, 2025
54b69cb
explicit kwargs
mivanit Oct 30, 2025
2d3ab89
fix dict type hints
mivanit Oct 30, 2025
bbe6ec7
make format
mivanit Oct 30, 2025
52ba540
json serialize related type fixes
mivanit Oct 30, 2025
2c3e5da
typed dicts for dbg config
mivanit Oct 30, 2025
cabe36b
`ty check muutils` passes !!!
mivanit Oct 30, 2025
35b7435
wip
mivanit Oct 30, 2025
a760fac
typing ignores?
mivanit Nov 3, 2025
15e14a6
better typing breakdown
mivanit Nov 3, 2025
9bf4bc3
better `try_catch` type hints
mivanit Nov 3, 2025
6724830
format
mivanit Nov 3, 2025
d244867
handling type warnings vs errors
mivanit Nov 3, 2025
53d7000
fixes in logger type hints
mivanit Nov 3, 2025
8a0ca93
format
mivanit Nov 3, 2025
84ad194
fix and restrict lots of array saving/loading type hints
mivanit Nov 3, 2025
54d8e10
add json_serialize.types to help avoid import cycles
mivanit Nov 3, 2025
7b4e469
full typing summary
mivanit Nov 3, 2025
1a7c968
typing summary stuff
mivanit Nov 3, 2025
2da2ec5
fix typing breakdown type hints
mivanit Nov 3, 2025
79136e1
more typing summary
mivanit Nov 3, 2025
5986d63
type fixes
mivanit Nov 3, 2025
0ee66ed
wip, lots of type fixes.
mivanit Nov 3, 2025
22a39fe
wip
mivanit Nov 3, 2025
24a4bcc
?
mivanit Nov 3, 2025
54efcf7
wip
mivanit Nov 3, 2025
0fdb121
re-run typing summary
mivanit Nov 3, 2025
c6f63e1
wip
mivanit Nov 3, 2025
5b2c871
wip typing
mivanit Nov 4, 2025
dc1fb45
some typing fixes, wip
mivanit Jan 19, 2026
47e7fe8
more typing wip
mivanit Jan 19, 2026
b593fe2
more wip typing fixes
mivanit Jan 19, 2026
bdb12fa
typing wip
mivanit Jan 19, 2026
cbcce7c
make format
mivanit Jan 19, 2026
cf22ca4
more typing fixes!
mivanit Jan 19, 2026
e208c3b
more wip typing fixes
mivanit Jan 19, 2026
3f19fe0
make format
mivanit Jan 19, 2026
db2f5ec
re-run typing summary
mivanit Jan 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# local stuff (pypi token, commit log)
.meta/local/**
.meta/.type-errors/**
.coverage.*

# this one is cursed
Expand Down
67 changes: 59 additions & 8 deletions .meta/requirements/requirements-all.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ backports-tarfile==1.2.0 ; python_full_version < '3.12' and platform_machine !=
# via jaraco-context
backports-zoneinfo==0.2.1 ; python_full_version < '3.9'
# via arrow
basedpyright==1.32.1
beartype==0.19.0 ; python_full_version < '3.9'
beartype==0.22.2 ; python_full_version == '3.9.*'
beartype==0.22.4 ; python_full_version >= '3.10'
Expand All @@ -60,6 +61,10 @@ bleach==6.3.0 ; python_full_version >= '3.10'
# via nbconvert
bracex==2.6 ; python_full_version >= '3.11'
# via wcmatch
brotli==1.1.0 ; platform_python_implementation == 'CPython'
# via fonttools
brotlicffi==1.1.0.0 ; platform_python_implementation != 'CPython'
# via fonttools
certifi==2025.10.5
# via
# httpcore
Expand All @@ -68,13 +73,17 @@ certifi==2025.10.5
cffi==1.17.1 ; python_full_version < '3.9'
# via
# argon2-cffi-bindings
# brotlicffi
# cryptography
# pyzmq
# weasyprint
cffi==2.0.0 ; python_full_version >= '3.9'
# via
# argon2-cffi-bindings
# brotlicffi
# cryptography
# pyzmq
# weasyprint
charset-normalizer==3.4.4
# via requests
cli-exit-tools==1.2.7 ; python_full_version >= '3.11'
Expand Down Expand Up @@ -119,6 +128,10 @@ coverage==7.11.0 ; python_full_version >= '3.10'
coverage-badge==1.1.2
cryptography==46.0.3 ; platform_machine != 'ppc64le' and platform_machine != 's390x' and sys_platform == 'linux'
# via secretstorage
cssselect2==0.7.0 ; python_full_version < '3.9'
# via weasyprint
cssselect2==0.8.0 ; python_full_version >= '3.9'
# via weasyprint
cycler==0.12.1
# via matplotlib
debugpy==1.8.17
Expand Down Expand Up @@ -151,9 +164,13 @@ filelock==3.19.1 ; python_full_version == '3.9.*'
filelock==3.20.0 ; python_full_version >= '3.10' and python_full_version < '3.14'
# via torch
fonttools==4.57.0 ; python_full_version < '3.9'
# via matplotlib
# via
# matplotlib
# weasyprint
fonttools==4.60.1 ; python_full_version >= '3.9'
# via matplotlib
# via
# matplotlib
# weasyprint
fqdn==1.5.1
# via jsonschema
fsspec==2025.3.0 ; python_full_version < '3.9'
Expand All @@ -162,6 +179,8 @@ fsspec==2025.9.0 ; python_full_version >= '3.9' and python_full_version < '3.14'
# via torch
h11==0.16.0
# via httpcore
html5lib==1.1 ; python_full_version < '3.9'
# via weasyprint
httpcore==1.0.9
# via httpx
httpx==0.28.1
Expand Down Expand Up @@ -462,6 +481,8 @@ networkx==3.5 ; python_full_version >= '3.11' and python_full_version < '3.14'
# via torch
nh3==0.3.1
# via readme-renderer
nodejs-wheel-binaries==22.20.0
# via basedpyright
notebook==7.3.3 ; python_full_version < '3.9'
# via jupyter
notebook==7.4.7 ; python_full_version >= '3.9'
Expand Down Expand Up @@ -594,11 +615,17 @@ pexpect==4.9.0 ; (python_full_version < '3.10' and sys_platform == 'emscripten')
pickleshare==0.7.5 ; python_full_version < '3.9'
# via ipython
pillow==10.4.0 ; python_full_version < '3.9'
# via matplotlib
# via
# matplotlib
# weasyprint
pillow==11.3.0 ; python_full_version == '3.9.*'
# via matplotlib
# via
# matplotlib
# weasyprint
pillow==12.0.0 ; python_full_version >= '3.10'
# via matplotlib
# via
# matplotlib
# weasyprint
pkgutil-resolve-name==1.3.10 ; python_full_version < '3.9'
# via jsonschema
platformdirs==4.3.6 ; python_full_version < '3.9'
Expand Down Expand Up @@ -634,6 +661,8 @@ pycln==2.5.0 ; python_full_version < '3.9'
pycln==2.6.0 ; python_full_version >= '3.9'
pycparser==2.23 ; python_full_version < '3.9' or implementation_name != 'PyPy'
# via cffi
pydyf==0.11.0
# via weasyprint
pygments==2.19.2
# via
# ipython
Expand All @@ -648,6 +677,10 @@ pyparsing==3.1.4 ; python_full_version < '3.9'
# via matplotlib
pyparsing==3.2.5 ; python_full_version >= '3.9'
# via matplotlib
pyphen==0.16.0 ; python_full_version < '3.9'
# via weasyprint
pyphen==0.17.2 ; python_full_version >= '3.9'
# via weasyprint
pytest==8.3.5 ; python_full_version < '3.9'
# via pytest-cov
pytest==8.4.2 ; python_full_version >= '3.9'
Expand Down Expand Up @@ -777,6 +810,7 @@ six==1.17.0
# via
# astunparse
# bleach
# html5lib
# python-dateutil
# rfc3339-validator
sniffio==1.3.1
Expand All @@ -796,9 +830,17 @@ terminado==0.18.1
# jupyter-server
# jupyter-server-terminals
tinycss2==1.2.1 ; python_full_version < '3.9'
# via bleach
# via
# bleach
# cssselect2
# weasyprint
tinycss2==1.4.0 ; python_full_version >= '3.9'
# via bleach
# via
# bleach
# cssselect2
# weasyprint
tinyhtml5==2.0.0 ; python_full_version >= '3.9'
# via weasyprint
tomli==2.3.0 ; python_full_version <= '3.11'
# via
# coverage
Expand Down Expand Up @@ -854,7 +896,7 @@ triton==3.5.0 ; python_full_version >= '3.10' and python_full_version < '3.14' a
# via torch
twine==6.1.0 ; python_full_version < '3.9'
twine==6.2.0 ; python_full_version >= '3.9'
ty==0.0.1a24
ty==0.0.12
typeguard==4.4.0 ; python_full_version < '3.9'
# via jaxtyping
typer==0.20.0
Expand Down Expand Up @@ -914,14 +956,21 @@ wcmatch==10.1 ; python_full_version >= '3.11'
# via igittigitt
wcwidth==0.2.14
# via prompt-toolkit
weasyprint==61.2 ; python_full_version < '3.9'
# via muutils
weasyprint==66.0 ; python_full_version >= '3.9'
# via muutils
webcolors==24.8.0 ; python_full_version < '3.9'
# via jsonschema
webcolors==24.11.1 ; python_full_version >= '3.9'
# via jsonschema
webencodings==0.5.1
# via
# bleach
# cssselect2
# html5lib
# tinycss2
# tinyhtml5
websocket-client==1.8.0 ; python_full_version < '3.9'
# via jupyter-server
websocket-client==1.9.0 ; python_full_version >= '3.9'
Expand All @@ -938,3 +987,5 @@ zipp==3.23.0 ; (python_full_version >= '3.9' and python_full_version < '3.12' an
# via
# importlib-metadata
# importlib-resources
zopfli==0.2.3.post1
# via fonttools
5 changes: 4 additions & 1 deletion .meta/requirements/requirements-dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ backports-tarfile==1.2.0 ; python_full_version < '3.12' and platform_machine !=
# via jaraco-context
backports-zoneinfo==0.2.1 ; python_full_version < '3.9'
# via arrow
basedpyright==1.32.1
beartype==0.19.0 ; python_full_version < '3.9'
beartype==0.22.2 ; python_full_version == '3.9.*'
beartype==0.22.4 ; python_full_version >= '3.10'
Expand Down Expand Up @@ -422,6 +423,8 @@ nest-asyncio==1.6.0
# via ipykernel
nh3==0.3.1
# via readme-renderer
nodejs-wheel-binaries==22.20.0
# via basedpyright
notebook==7.3.3 ; python_full_version < '3.9'
# via jupyter
notebook==7.4.7 ; python_full_version >= '3.9'
Expand Down Expand Up @@ -721,7 +724,7 @@ traitlets==5.14.3
# nbformat
twine==6.1.0 ; python_full_version < '3.9'
twine==6.2.0 ; python_full_version >= '3.9'
ty==0.0.1a24
ty==0.0.12
typer==0.20.0
# via pycln
typing-extensions==4.13.2 ; python_full_version < '3.9'
Expand Down
62 changes: 61 additions & 1 deletion .meta/requirements/requirements-extras.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,32 @@
# This file was autogenerated by uv via the following command:
# uv export --no-hashes --no-group dev --no-group lint --extra array --extra array_no_torch --extra notebook --extra parallel
# uv export --no-hashes --no-group dev --no-group lint --extra array --extra array_no_torch --extra notebook --extra parallel --extra web
-e .
appnope==0.1.4 ; python_full_version < '3.9' and sys_platform == 'darwin'
# via ipython
asttokens==3.0.0
# via stack-data
backcall==0.2.0 ; python_full_version < '3.9'
# via ipython
brotli==1.1.0 ; platform_python_implementation == 'CPython'
# via fonttools
brotlicffi==1.1.0.0 ; platform_python_implementation != 'CPython'
# via fonttools
cffi==1.17.1 ; python_full_version < '3.9'
# via
# brotlicffi
# weasyprint
cffi==2.0.0 ; python_full_version >= '3.9'
# via
# brotlicffi
# weasyprint
colorama==0.4.6 ; sys_platform == 'win32'
# via
# ipython
# tqdm
cssselect2==0.7.0 ; python_full_version < '3.9'
# via weasyprint
cssselect2==0.8.0 ; python_full_version >= '3.9'
# via weasyprint
decorator==5.2.1
# via ipython
dill==0.4.0
Expand All @@ -27,10 +43,16 @@ filelock==3.19.1 ; python_full_version == '3.9.*'
# via torch
filelock==3.20.0 ; python_full_version >= '3.10' and python_full_version < '3.14'
# via torch
fonttools==4.57.0 ; python_full_version < '3.9'
# via weasyprint
fonttools==4.60.1 ; python_full_version >= '3.9'
# via weasyprint
fsspec==2025.3.0 ; python_full_version < '3.9'
# via torch
fsspec==2025.9.0 ; python_full_version >= '3.9' and python_full_version < '3.14'
# via torch
html5lib==1.1 ; python_full_version < '3.9'
# via weasyprint
importlib-metadata==8.5.0 ; python_full_version < '3.9'
# via typeguard
importlib-metadata==8.7.0 ; python_full_version == '3.9.*' and platform_machine == 'x86_64' and sys_platform == 'linux'
Expand Down Expand Up @@ -159,26 +181,52 @@ pexpect==4.9.0 ; (python_full_version < '3.10' and sys_platform == 'emscripten')
# via ipython
pickleshare==0.7.5 ; python_full_version < '3.9'
# via ipython
pillow==10.4.0 ; python_full_version < '3.9'
# via weasyprint
pillow==11.3.0 ; python_full_version == '3.9.*'
# via weasyprint
pillow==12.0.0 ; python_full_version >= '3.10'
# via weasyprint
prompt-toolkit==3.0.52
# via ipython
ptyprocess==0.7.0 ; (python_full_version < '3.10' and sys_platform == 'emscripten') or (sys_platform != 'emscripten' and sys_platform != 'win32')
# via pexpect
pure-eval==0.2.3
# via stack-data
pycparser==2.23 ; python_full_version < '3.9' or implementation_name != 'PyPy'
# via cffi
pydyf==0.11.0
# via weasyprint
pygments==2.19.2
# via
# ipython
# ipython-pygments-lexers
pyphen==0.16.0 ; python_full_version < '3.9'
# via weasyprint
pyphen==0.17.2 ; python_full_version >= '3.9'
# via weasyprint
setuptools==80.9.0 ; (python_full_version >= '3.12' and python_full_version < '3.14') or (python_full_version == '3.9.*' and platform_machine == 'x86_64' and sys_platform == 'linux')
# via
# torch
# triton
six==1.17.0 ; python_full_version < '3.9'
# via html5lib
stack-data==0.6.3
# via ipython
sympy==1.13.3 ; python_full_version < '3.9'
# via torch
sympy==1.14.0 ; python_full_version >= '3.9' and python_full_version < '3.14'
# via torch
tinycss2==1.2.1 ; python_full_version < '3.9'
# via
# cssselect2
# weasyprint
tinycss2==1.4.0 ; python_full_version >= '3.9'
# via
# cssselect2
# weasyprint
tinyhtml5==2.0.0 ; python_full_version >= '3.9'
# via weasyprint
torch==2.4.1 ; python_full_version < '3.9'
# via muutils
torch==2.8.0 ; python_full_version == '3.9.*'
Expand Down Expand Up @@ -216,7 +264,19 @@ wadler-lindig==0.1.7 ; python_full_version >= '3.10'
# via jaxtyping
wcwidth==0.2.14
# via prompt-toolkit
weasyprint==61.2 ; python_full_version < '3.9'
# via muutils
weasyprint==66.0 ; python_full_version >= '3.9'
# via muutils
webencodings==0.5.1
# via
# cssselect2
# html5lib
# tinycss2
# tinyhtml5
zipp==3.20.2 ; python_full_version < '3.9'
# via importlib-metadata
zipp==3.23.0 ; python_full_version == '3.9.*' and platform_machine == 'x86_64' and sys_platform == 'linux'
# via importlib-metadata
zopfli==0.2.3.post1
# via fonttools
Loading
Loading