bitter-ability-32190
07/22/2022, 3:48 PMappend-only-caches
?enough-analyst-54434
07/22/2022, 3:56 PMbitter-ability-32190
07/22/2022, 3:57 PMenough-analyst-54434
07/22/2022, 3:57 PMDo we have an equivalent way to expose a "cache" dir for writing cache files?I'm not following. An equivalent to Pex's infra?
bitter-ability-32190
07/22/2022, 4:00 PMenough-analyst-54434
07/22/2022, 4:01 PMimmutable_input_digests
on `Process`is the only other primitive I'm aware of: https://github.com/pantsbuild/pants/blob/710ff093a390718084ecdf3f0f0d159f3e107963/src/python/pants/backend/codegen/protobuf/go/rules.py#L247bitter-ability-32190
07/22/2022, 4:10 PMenough-analyst-54434
07/22/2022, 4:12 PMbitter-ability-32190
07/22/2022, 4:13 PMenough-analyst-54434
07/22/2022, 4:16 PMbitter-ability-32190
07/22/2022, 4:16 PMenough-analyst-54434
07/22/2022, 4:18 PMbash -c ....
or a custom script.happy-kitchen-89482
07/22/2022, 4:59 PMbitter-ability-32190
07/22/2022, 4:59 PMto support the mypy cacheThats actually what I'm looking into đ
happy-kitchen-89482
07/22/2022, 4:59 PMbitter-ability-32190
07/22/2022, 4:59 PMhappy-kitchen-89482
07/22/2022, 5:00 PMbitter-ability-32190
07/22/2022, 5:07 PMaverage-vr-56795
07/22/2022, 5:23 PMSemi-related. Given a digest, how "expensive" is it to ask for every file's fingerprint?Pretty much free
bitter-ability-32190
07/22/2022, 5:24 PM--pants
flag to mypy, akin to --bazel
witty-crayon-22786
07/22/2022, 5:42 PMappend_only_caches
is really: âthe cache was designed to be 1. shared by multiple processes, 2. in multiple reposâbitter-ability-32190
07/22/2022, 5:43 PMwitty-crayon-22786
07/22/2022, 5:43 PMbitter-ability-32190
07/22/2022, 5:44 PM--bazel
hardcodes CWD for the cache dir is basically the only issuewitty-crayon-22786
07/22/2022, 5:45 PM--bazel
flag (and i havenât looked at it recently) is that no caches would be necessary, because you could treat mypy like a compiler: files and compilation-results-from-dependencies in, compilation results out, etcbitter-ability-32190
07/22/2022, 5:46 PMwitty-crayon-22786
07/22/2022, 5:47 PMbitter-ability-32190
07/22/2022, 5:48 PMwitty-crayon-22786
07/22/2022, 5:50 PMbitter-ability-32190
07/22/2022, 5:50 PM--bazel
basically outputs the same cache as always, just tweaked for sandbox's sake.
I think one important thing here is that mypy
will output the "artifact" for our file and every file it depends on, including stdlib.
So might get very busy for a single "compile". This is hurting my brain though, we're reaching the limit of used brain cellswitty-crayon-22786
07/22/2022, 5:52 PMbitter-ability-32190
07/22/2022, 5:52 PMwitty-crayon-22786
07/22/2022, 5:52 PMbitter-ability-32190
07/22/2022, 5:54 PMwitty-crayon-22786
07/22/2022, 5:54 PMbitter-ability-32190
07/22/2022, 5:55 PMwitty-crayon-22786
07/22/2022, 5:56 PMbitter-ability-32190
07/22/2022, 5:57 PMwitty-crayon-22786
07/22/2022, 5:59 PMjvm
compilation: would be happy to help pair on it if youâre interested in tackling!bitter-ability-32190
07/22/2022, 6:01 PMwitty-crayon-22786
07/22/2022, 6:03 PMbitter-ability-32190
07/22/2022, 6:09 PMwitty-crayon-22786
07/22/2022, 6:32 PMAlmost makes you wonder if we could leverage that for file invalidation w.r.t. dependencies đ¤yea, totally. to be clear though, that should be the effect of feeding a check only the cache and not files themselves for dependencies
âŚfeeding a check only the cache and not files themselves for dependenciesassuming mypy allows that. đ¤
--bazel
mode doesnât, it should.