By factoring their shared logic out into +build-dependency, which gets
passed the relevant details about how to track the file being built in
the dependency stack.
Hoon files may want to import nouns from all files in a given directory.
/~ lets you do so, importing as a (map @ta *) (but with typed values).
Note the description as "directories" here, instead of "path prefix".
The behavior, as implemented, will not include /path/hoon for /~ /path,
instead only including /path/more/hoon and more deeply nested files.
This seems to be, generally, the behavior you want, for example when
importing from /app/myapp/* for /app/myapp/hoon.
Actually using the resulting map requires some manual casting, which is
not ideal. Some code style improvement work remains to be done as well.
Makes the thread return a simple boolean; almost as simple as just
returning %.y or %.n.
gcpManager now stores whether GCP is configured as a private variable.
Also fixes some type errors in gcp.
Pull-hook side of the previous change to push-hook
(479fbfd798). Noop on unsupported
unversioned marks, waiting for the publisher to upgrade and kick. Same
tradeoffs as previous change apply.
Mainnet is currently experiencing undue load due to a watch-kick loop.
If the watch is unsupported, it will be kicked due to a mark mismatch,
which will be interpreted by the unversioned hooks as a network pressure
kick, prompting a resub and continuing the loop. Instead, we now no-op
on unversioned, unsupported watches, waiting for the subscriber to
rewatch after it processes the versioning OTA. This will silently break
groups for the subscriber until the reach the latest OTA, but is
preferable to nacking, and kicking them permanently
* master: (160 commits)
glob: update to 0v6.8mn05.16g61.46lkc.lgddc.3ifug
metadata-push-hook: fixes issue with adding unmanaged metadata
pills: update solid
graph-push-hook: don't crash on multipart add
glob: update to 0v5.g86fq.9ngth.ki9h1.q7kut.icm5f
graph-store: scry only once during +validate-graph
graph-store: fewer allocations in +validate-graph
graph-store: speed up +validate-graph by using +turn and no longer virtualizing
interface: version local state by commit hash
graph-push-hook: add hc where appropriate and enforce type-checking to prevent issue in future
graph-validators: speed up validators by adding type casts
build: only run publish-npm-packages on pkg/npm
build: match on path subdirectories
glob: update to 0v1.4ujsp.698kt.ojftv.7jual.4hhu5
launch: prevent aggressive tutorial render
launch: get tutorial state from zustand
push-hook: add version scries
glob: update to 0v5.b7cjf.2kc12.85sng.lkqav.7sn0k
readme: update arvo maintainers list
notifications: clear before applying unreads
...
In +en-json, the vast majority of our time is in +jesc (json string
escaping). Since ships will always be string-safe, we pretend they're
numbers to bypass the escaper. This saves about a second on initial
landscape load.
Avoid allocating hundreds of thousands of cells when giving large
requests. This took the footprint of this function on initial landscape
load from 1 second to 100 ms.
We commonly print many names in a row, often the same ones. For
example, on landscape's initial load, we send all the members of all the
groups we're in, and there's substantial overlap.
At least half the cost is in +fein, which is not currently jetted, but I
believe there's an old jet in the git history.
~littel-ponnys no longer maintains Eyre, so I will take over.
/lib/test goes without a dedicated maintainer for now.
Additionally, #4463 and follow-up work sees me taking charge of the terminal
stack, so I will take over formal ownership of that going forward.