Propagates the PreToolUse enforce-pr-target.sh backstop (byte-identical to
claridtimo/bang-game master) that denies any `gh pr create` not explicitly
aimed at claridtimo/*, guarding against accidental PRs on the greyhavens
upstream fork parent. Ships the 103-case regression battery and a CI job
(.github/workflows/hook-battery.yml) that gates it.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E3cmNbMM8gGpprBy8kcNuV
For now I'm going to move everything to snapshot dependencies. After all the
dust settles, I'll publish new releases of everything and move back to stable
depends.
I wasn't thinking clearly when I introduced that Depot depend. ooo-util is
*just* supposed to depend on Guava and samskivert and the fact that it was able
to do DB stuff because of samskivert's (unfortunate) database stuff was an
unhappy accident. ooo-util is really for only the most generic utility stuff.
I'm creating a new library, ooo-db which extends ooo-util with database stuff,
and OOO projects that do database things (which is not Narya, Nenya, Vilya &c)
can depend on ooo-db instead of ooo-util and they'll get a sensible Depot in
addition to a sensible Guava and samskivert.
don't want to all of a sudden foist a Depot on all the non-Depot needing
libraries that happen to already depend on ooo-util.
Originally lived in projectx and had a bunch more interesting stuff.
But the code that used it (gates, minerals, themes) went away because
all that mineral stuff went away.
Kept what's still in use. In particular, singleton() is quite useful
(really, Google should add it to Multisets or ImmutableMultiset).
The count ordering stuff is perhaps semi-deprecated, since Google has
added Multisets.copyHighestCountFirst().
Sometimes we have a Map already built via other methods, and there's
really no reason to copy each key/value into a Multimap prior
to encoding them.
Accept a Map<?, ?> and just take the small extra step of toStringing
every key and value, otherwise we'd have to transform the map
values and that's a bunch of extra wrapping.
Translations are sometimes done by third parties long after
development is done. A runtime exception is not appropriate
here. Return what we can and log extensively.
This was noticed when "{0 }" was written instead of "{0}".