Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: Ic0ee18466fbaca1a374e7489be640f49571eb9c5
|
|
Change-Id: I76c9c2c5cc82c7d0f59f907b6f1abee92a92cbf7
|
|
This incorporates feedback from sterni from cl/4052 and chipb on IRC.
Change-Id: I0547d130dcd578746d5183c563be4b1d042cb5f8
|
|
See cl/4049
Change-Id: I583e4bcf88342a998d7a5a9fd92f73d0710ee2e9
|
|
Change-Id: I8bec643267785c6d3523380a2a17ab5e9213b51c
|
|
This post is intended to just let people know about the existence of
Tvix, tell them a bit about the background and how to follow along.
Change-Id: Ib5194d3aa385a0e30b4768ba28cb063784f6e0a3
|
|
Change-Id: I4d1f9284ec004931c07c04d614b01f28eedea508
|
|
Change-Id: I8720d49f8f3f4010f57a53e763a4f246bf4eb3d8
|
|
Instead of manually tracking the build status through Buildkite
metadata, use the Buildkite GraphQL API in the `:duck:` build
step (i.e. the one that determines the status of the entire pipeline
to be reported back to Gerrit) to fetch the number of failed jobs.
This way we have less manual state accounting in the pipeline.
The downside is that the GraphQL query embedded here is a little hard
to read.
Notes:
* This needs an access token for Buildkite. We already have one for
besadii which is also run by the agents, so I've given it GraphQL
permissions and reused it.
* I almost introduced a very rare bug here: My initial intuition was
to simply `exit $FAILED_JOBS` - in the extremely rare case where
`$FAILED_JOBS % 256 = 0` this would mean we would ... fail to fail
the build :)
Change-Id: I61976b11b591d722494d3010a362b544efe2cb25
|
|
This seems to do sorting slightly better.
Change-Id: I0d354a77b45b1a83d4bb5eb0acd024187b06929f
|
|
for work
Change-Id: Ib8a8928f8315823a34b653d3e3dff46d10f930e6
|
|
I wanna be able to man libc stuff
Change-Id: Ie38e6751af24ffcffa912621dc217dcef5c84dda
|
|
We had a problem on whitby where decoding of the drv files would fail
with an utf8-decoding error.
This version of nix-diff will leniently input files as utf-8, with
replacement characters if necessary.
Change-Id: I5cb245923c6db0875e63e420cb0783e235b6859f
|
|
... some issue snuck in on the first one, as is tradition.
Change-Id: I06ce4df82cde26231cd1ab3df500de02e981d9bc
|
|
Change-Id: I85025754695a6173a23c9ea2eb19ddc8e97e4dcd
|
|
For cases where a word raises more questions than are answered by my
existing notes, roots, translations and so on.
Change-Id: Ic9dd79ba4aef6e3c8e7e8e965195b67f7a0c65f3
|
|
Adds a set of words that I consider "known" (but that should be in the
most frequent word list anyways). This set can be populated by
invoking `mark-last-russian-word-as-known` after display, and is
automatically persisted.
Right now there's nothing automatically loading it back in, just as
there is nothing loading any of this automatically, that's for the
future.
Change-Id: I51ee4f37114c6b95925e8ad5bdc5dc9b8657bdad
|
|
This will make it possible to do operations on that word (i.e. marking
it as known, or opening the full definition page).
Change-Id: Ib77f7d2e4e96d6ab754b311a69f72e2b080657ac
|
|
Change-Id: Ie666b6556d91513babd884b2ed1140cd6c0ed2a9
|
|
We are changing the Gerrit hooks which invoke besadii, but this
structure will be used for both kinds.
Change-Id: Idb1cb0c640d2c42db8e7af39f3ab372a97bfef91
|
|
This should keep up passive exposure to words, but needs a subsequent
function for filtering out things that are definitely known.
Since I'm keeping the frequent word list mostly intact the majority of
words are very basic, but it's those last 15-20% I'm interested
in (not completely imported yet).
Change-Id: I7a5684b8dca1fe5301e8b394be2627550a60e3c6
|
|
Adds a stupid macro that populates a 'russian-words' hash table in
which merged definitions of words are available.
Change-Id: Ide7825577ba26d63ff564e54601541f39ab5a1a6
|
|
This is causing failures when trying to update Sourcegraph at least,
for good measure I've trimmed both.
Change-Id: I40266ee83b4e266ffe50f16bb365eb2e51952513
|
|
Change-Id: I434c0b8d5e5ce2d077630de2dd71de309b7d076f
|
|
Change-Id: Ib1e1fe9749e56eefc83016b1946e6fe0b1f72339
|
|
When a creature is killed, it now drops all the contents of its
inventory on the ground.
Change-Id: Ie95c397308ba2c9861f10e58b99c91c9cc759c56
|
|
If a creature has a weapon wielded, then they now use that weapon to
attack the player *instead of* their natural attacks. This uses a new
`creatureAttackMessage` field on the Item raw for the message to use.
Change-Id: I73614f33dbf88dd4c68081f15710fa27b7b21ba2
|
|
Add an `equippedItems` field to the CreatureType raw, which provides a
chance for generating that creature with an item equipped, which goes
into a new `inventory` field on the creature entity itself. Currently
the creature doesn't actually *use* this equipped item, but it's a step.
This commit also adds a broken-dagger equipped 90% of the time to the
"husk" creature.
Change-Id: I6416c0678ba7bc1b002c5ce6119f7dc97dd86437
|
|
This is a bit silly, I assumed hte previous one would concatenate the
path before importing it into the store - but it doesn't.
Change-Id: Iebb4c9cb432751448deeac07d6b7ad8225711d30
|
|
* The API for gradleGen changed which makes our override a bit simpler
at least.
Change-Id: Ib5d7bc33d30a4545235a8a74eadbb418cd76d1d0
|
|
* Enforce the U+0000 to U+10FFFF range in `count` and throw an error if
the given codepoint exceeds the range (encoding U+0000 won't work of
course, but this is Nix's fault…).
* Check if the produced bytes are well formed and output an error if
not. This indicates that the codepoint can't be encoded as UTF-8, like
U+D800 which is reserved for UTF-16.
Change-Id: I18336e527484580f28cbfe784d51718ee15c5477
|
|
Having `prettyRes` in the execline script causes it to fail because of
the argv limit if your test suite is long enough. For the succeeding one
we can work around this by hashing it (since we only care that something
changes if the test suite changes), in the case of the failing one where
we want to print the results, we use runExecline's stdin mechanism.
Change-Id: I2489f76acfbe809351f51caefe2a477328a70ee3
|
|
Previously we would check the first byte only when trying to figure out
the predicate for the second byte. If the first byte was invalid, we'd
then throw with a helpful error message. However this made
wellFormedByte a very weird function.
At the expense of doing the same check twice, we now check the first
byte, when it is first passed, and always return a boolean.
Change-Id: I32ab6051c844711849e5b4a115e2511b53682baa
|
|
This implementation is still a bit rough as it doesn't check if the
produced string is valid UTF-8 which may happen if an invalid Unicode
codepoint is passed.
Change-Id: Ibaa91dafa8937142ef704a175efe967b62e3ee7b
|
|
This is not really used anywhere and kind of useless. A better
decodeSafe would never return null and instead make use of replacement
characters to represent invalid bytes in the input.
Change-Id: Ib4111529bf0e472dbfa720a5d0b939c2d2511de5
|
|
... rather than nix-shelling them every time.
Change-Id: I9ab6ad67efbd6c16c7fd8cc9938d86d35f8418bc
|
|
This function is also generally useful for readTree consumers that
have the concept of subtargets.
Change-Id: Ic7fc03380dec6953fb288763a28e50ab3624d233
|
|
Discovering CI targets is relevant to all readTree consumers and this
logic is not TVL-specific.
Change-Id: I81ed3d3f76a6c36119f04bee28ca995a013f0e35
|
|
Change-Id: I8de9cd28c822ac5befbcd16e118440cd13cd86e9
|
|
builtins.genericClosure is a quite powerful (and undocumented) Nix
primop: It repeatedly applies a function to values it produces and
collects them into a list. Additionally individual results can be
identified via a key attribute.
Since genericClosure only ever creates a single list value internally,
we can eliminate a huge performance bottleneck when building a list in a
recursive algorithm: list concatenation. Because Nix needs to copy the
entire chunk of memory used internally to represent the list, building
big lists one element at a time grinds Nix to a halt.
After rewriting decode using genericClosure decoding the LaTeX source
of my 20 page term paper now takes 2s instead of 14min.
Change-Id: I33847e4e7dd95d7f4d78ac83eb0d74a9867bfe80
|
|
This is often used when bootstrapping a repository with readTree,
before lib is available. Having this definition in readTree is more
convenient than copy&pasting it around to callsites.
Change-Id: I6d5d27ed142bea704843fe289ad2674be8c4d360
|
|
Where I'm using stable in the non-versioning sense of the word.
https: //github.com/edolstra/nix-serve/issues/28
Change-Id: I87869a62bc0f3b289950a79aabd4d2041390bb09
|
|
This is generally useful for readTree users and should be part of
readTree itself.
This is a move towards exposing several readTree-related features from
the library itself, in the future also including logic like 'gather'.
Note that this has a small functional change: In error messages of the
function, the notation for accessing Nix attributes is now used rather
than the Perforce-style `//` notation common in TVL.
For example, an error at `//web/tvl/logo` will produce `web.tvl.logo`
in the error message (which corresponds to the readTree attribute
itself).
This makes more sense for non-TVL consumers of readTree, as the
Perforce-style notation is custom to us specifically.
Change-Id: I8e199e473843c40db40b404c20d2c71f48a0f658
|
|
Creatures are going to have an inventory too now in addition to
characters, so all the data types and lenses and stuff that define
inventory need to be broken out into a separate module so the Creature
entity can use them.
Change-Id: I83f1c70d316afaaf2e75901f9dc28f79fd2cd31f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3901
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
|
|
This slightly improves how the module reads imo
Change-Id: Ib1efcbbd5392ece6b46461e8075162f03846d421
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3886
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
|
|
There is too much breakage with the newer version than I have time to
deal with right now (and I think the same goes for the others).
Change-Id: I54045d1ef16d0215e516986477d734c54e48f1f8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3904
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: lukegb <lukegb@tvl.fyi>
|
|
Since GCP nuked us, the backups are now moving to GleSYS'
S3-compatible object storage.
This refactors the restic module to support S3-compatible storage
instead of GCP, and switches to the appropriate new secret paths.
The secrets were placed on whitby manually and I verified that the
backups work.
This fixes b/157
Change-Id: I6a9d2b0581967605ce736605a3befb44cdeae7e1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3883
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
|
|
Because floating points, it's possible that a creature has reached their
destination even if the *progress* to that destination is at 0 - if that
happens, they should pick a new destination regardless. This fixes the
issue where creatures would occasionally get "stuck" and never move
after wandering around for a bit.
Change-Id: I01a11ce4bd448c25a818c886825e4fad56dffe03
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3885
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
|
|
Change-Id: If941c0237f5291bebe201e22cc74484f17b148ae
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3884
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
|
|
Add a new magit-gerrit-checkout command, which prompts for a CL number
then fetches and checks out the latest patchset of that CL with a
detached HEAD.
Change-Id: I88b8209d40017479d97ed40ecbd5fd1ccd7cf650
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3880
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
|