about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2021-01-06 r/2062 feat(tazjin/rlox): Parse & interpret while statementsVincent Ambo2-0/+40
Change-Id: Iee772274de95dfd6a6d4af973402859aeda17b1d Reviewed-on: https://cl.tvl.fyi/c/depot/+/2325 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2021-01-06 r/2061 feat(tazjin/rlox): Parse & interpret logical operatorsVincent Ambo2-2/+55
Change-Id: I1a7d0eda61f7f077b820dc0d2c2516e204966962 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2324 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2021-01-06 r/2060 feat(tazjin/rlox): Interpret if statementsVincent Ambo1-1/+13
Change-Id: Ic6aed29bec42098eb07e1ba9eb01dbcaae8d11e3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2322 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-01-06 r/2059 feat(tazjin/rlox): Parse if statementsVincent Ambo3-1/+45
Change-Id: I2352d75a3f02d65a5a2d04fb2cc4daa50f11ca1e Reviewed-on: https://cl.tvl.fyi/c/depot/+/2321 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-01-03 r/2058 feat(Profpatsch/netencode): add netencode-mustacheProfpatsch3-1/+123
A little executable, combining the netencode and mustache libraries to make easy templating from the command line possible. Combined with the nix netencode generators, it’s now trivial to populate a mustache template with (nearly) arbitrary data. Yay. Change-Id: I5b892c38fbc33dd826a26174dd9567f0b72e6322 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2320 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2021-01-03 r/2057 feat(Profpatsch): dump netencode spec & parserProfpatsch4-0/+761
The netencode standard, a no-nonsense extension of netstrings for structured data. Includes a nix generator module and a rust parsing library. Imported from https://github.com/openlab-aux/vuizvui/tree/e409df3861f48de44d0e37277ce007e348a7a0dc/pkgs/profpatsch/netencode Original license GPLv3, but I’m the sole author, so I transfer it to whatever license depot uses. Change-Id: I4f6fa97120a0fd861eeef35085a3dd642ab7c407 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2319 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-03 r/2056 feat(Profpatsch/writers): add rustSimple writersProfpatsch4-10/+110
A bunch of writer functions wrapping the `buildRustCrate` functionality of nixpkgs. Can be used to write inline rust code, or rust code read from files with `builtins.readFile`. Change-Id: I9d74e9381b858b485925e4dc3fbb7fc392877c0a Reviewed-on: https://cl.tvl.fyi/c/depot/+/2318 Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2021-01-03 r/2055 feat(Profpatsch): add netstring helper function & python libProfpatsch2-0/+103
Simple helper function to generate a netstring that is a list of key-value pairs, to serialize a nix dict. Also adds a python lib to read the serialized form into a dict again. Change-Id: I306c0cfd51640c0658d32c8d3a4f3d332ba448f0 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2315 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-03 r/2054 fix(Profpatsch/writers): ignore the most annoying flake errorsProfpatsch1-3/+22
Change-Id: I3b8f51ff0dcdd842811e2fd9876cd4925c64f135 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2314 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-03 r/2053 feat(Profpatsch/writers): add yants types to python3 writerProfpatsch1-3/+8
Uses the new restrict type to make sure flake errors start with an E. Change-Id: I30369ade28e1ef612c91a368de2d5b128e6cf2a9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2313 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-03 r/2052 feat(users/Profpatsch): add writers.python3Profpatsch2-6/+31
This is a reexport of nixpkgs.writers.writePython3, but the libraries are passed the package set, like with other writers. Change-Id: Ia5a2ed1b6b329700836a8575d2bde768bf64fb31 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2311 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-03 r/2051 feat(users/Profpatsch): add python3Lib writerProfpatsch3-0/+63
Smol writer to create a python lib directly from a nix string. The resulting library can be consumed by the writePython3 writer. Change-Id: Id3d793564d230b38a08f65140bda4287285e1a72 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2310 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-01-03 r/2050 feat(nix/yants): add restrictProfpatsch2-0/+30
`restrict` uses a predicate function to restrict a type, giving the restricting a descriptive name in the process. First, the wrapped type definition is checked (e.g. int) and then the value is checked with the predicate, so the predicate can already depend on the value being of the wrapped type. Change-Id: Ic3edde45a8f34c31bc164414580d0a1aa5a821d5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2312 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de> Reviewed-by: tazjin <mail@tazj.in>
2021-01-02 r/2049 feat(nix): add runExecline.localProfpatsch2-17/+17
Similar to runCommandLocal, this turns off substitutions and prefers building locally. Change-Id: I823b34c7fc54990b54a82324172c299aeffdbf41 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2309 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de> Reviewed-by: lukegb <lukegb@tvl.fyi>
2021-01-01 r/2048 feat(emacs-tree-sitter-move): shell and json test filesProfpatsch2-0/+28
Change-Id: Idadb58a935abdbfa99327ba79de8b33d38b8c722 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2264 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2021-01-01 r/2047 fix(emacs-tree-sitter-move): get named parents & check for nilsProfpatsch1-8/+16
If there was no parent, the while loop would try to get the parent of a `nil`, which crashes and burns. We now also ignore any non-named parents; this might be unnecessary, if tree-sitter parent nodes are always named, but I don’t know that at the moment and it’s not documented very well, so better safe than sorry. Change-Id: Ia72ee9241b885ab312f8ecf7a8fbfece7eea8f1b Reviewed-on: https://cl.tvl.fyi/c/depot/+/2263 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2021-01-01 r/2046 feat(emacs-tree-sitter-move): load more than one tree sitter grammarProfpatsch2-8/+23
Change-Id: I43b8ddb180c056f1b8c650ccc915ec41bae83960 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2262 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2021-01-01 r/2045 feat(emacs-tree-sitter-move): add a simple down movement as wellProfpatsch1-4/+4
Always goes to the first child for now. Change-Id: I1d00b2f2013ba7e5f88622d1de3c99500e5f1a7a Reviewed-on: https://cl.tvl.fyi/c/depot/+/2261 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2021-01-01 r/2044 feat(emacs-tree-sitter-move): left and up movements, skip unnamedProfpatsch2-6/+22
We skip intermediate nodes that do not have any siblings, because they are irrelevant to navigation and just add extra keypresses without any highlight changes. This might not be the best choice, we’ll see. Change-Id: I75fbf79aa7915172e426442a076d57cfbebf5421 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2260 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2021-01-01 r/2043 feat(emacs-tree-sitter-move): Add tree-sitter-move-resetProfpatsch2-20/+27
Resets the cursor to the named node under the cursor. `-right` does not do it anymore, so it’s possible to navigate on higher levels of the tree instead of always resetting to a leaf. Change-Id: Id330854c72ea24da0cc8611f30f5617e0f127c1b Reviewed-on: https://cl.tvl.fyi/c/depot/+/2259 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2021-01-01 r/2042 feat(users/Profpatsch): moving around via the tree-sitter parse treeProfpatsch6-0/+154
Has a little setup to get the cursor position and map it onto a tree sitter node. The current node is saved in a cursor variable, and a highlight overlay marks the range of the current node in the buffer. Change-Id: I0af56115f928732e993fbefe978a246ca7c757ee Reviewed-on: https://cl.tvl.fyi/c/depot/+/2258 Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2021-01-01 r/2041 chore(OWNERS): move Profpatsch up to nix/Profpatsch4-9/+0
I can review all nix-related changes. Change-Id: I13e5bb7b523d4b9c79dbe2083d9e23c217466651 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2308 Tested-by: BuildkiteCI Reviewed-by: lukegb <lukegb@tvl.fyi>
2021-01-01 r/2040 feat(nix): add mergePatchProfpatsch1-0/+186
Change-Id: Id6a9ecbfb04886e6d96750b1451c29dc3f68154e Reviewed-on: https://cl.tvl.fyi/c/depot/+/2307 Tested-by: BuildkiteCI Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-12-31 r/2039 refactor(tazjin/rlox): Hold shared environment ptr in interpreterVincent Ambo1-17/+37
Change-Id: Ia4c4ef330be431a344d42bc00d3a518825fb9399 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2305 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2020-12-31 r/2038 feat(tazjin/rlox): Implement block scope in interpreterVincent Ambo1-1/+28
This is currently a bit hacky because of the environment wrapping/unwrapping, will refactor this to just keep a single Rc around instead. Change-Id: Iad1cbbe35112d0329248d4655a09260fc60644c8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2304 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2020-12-31 r/2037 feat(tazjin/rlox): Implement block parsingVincent Ambo3-6/+23
Change-Id: I1b7235ed71fa36120984a36f22cd564f59581352 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2303 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-31 r/2036 refactor(tazjin/rlox): Unify parser::Statement & parser::DeclarationVincent Ambo2-27/+20
Change-Id: I6f21b246eb9d3bf760edb3220ce6be5de5b05b08 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2302 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-31 r/2035 feat(tazjin/rlox): Add support for scoped environmentsVincent Ambo1-8/+26
Adds scoped environments using a sophisticated structure known as an SRPT, which stands for "shitty parent pointer tree". Change-Id: I62f66aabe6eb32ea01c4cabcca5b03cfefcc28ee Reviewed-on: https://cl.tvl.fyi/c/depot/+/2301 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-31 r/2034 refactor(tazjin/rlox): Separate assignment and definitionVincent Ambo1-1/+14
So that: > var a = 15; > b = 12; Error in program: Error { line: 0, kind: UndefinedVariable("b") } > a = 12; print a; Number(12.0) Change-Id: I687e95ccc2d3084e39a71bd452656ae981c95191 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2300 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-31 r/2033 feat(tazjin/rlox): Implement mutable variable assignmentVincent Ambo3-33/+74
Change-Id: I56db10a5ac26958ae27a8d4c8fa7b8f8285bc7e1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2299 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-31 r/2032 refactor(tazjin/rlox): Retain interpreter state in REPLVincent Ambo2-30/+30
Change-Id: Id60760e241ad0e45871b48e499f58e9831d57316 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2298 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2020-12-31 r/2031 feat(tazjin/rlox): Add global variable support in interpreterVincent Ambo2-76/+137
Change-Id: I4134cf78dc3934a517ad0c848ae1d3729abaf882 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2297 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2020-12-26 r/2030 chore(whitby): Double number of build usersVincent Ambo1-1/+1
more = betterer Change-Id: I6d5414d6ebb087e7f9fb912d5a514c31ebcd8b7e Reviewed-on: https://cl.tvl.fyi/c/depot/+/2296 Tested-by: BuildkiteCI Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-12-23 r/2029 chore(3p/immer): Remove vendored copy of immerVincent Ambo311-74216/+0
We ended up dropping the use of this library again. Change-Id: I2c44cd22a6128d23f87a582402bf5fb84991d608 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2292 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2020-12-23 r/2028 refactor(tvix/libexpr): Remove Bindings::SortedByKeys()Vincent Ambo5-65/+47
Since we don't have a Bindings implementation with unstable order this function is not required, as its callers can just iterate over the attributes instead. Change-Id: I01b35277b5a2dde69d684bc881dbd7c0701bcbb3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2291 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-22 r/2027 feat(tazjin/rlox): Parse variable assignment & accessVincent Ambo3-3/+46
Change-Id: I9894d76716d739e85a4757d9e658f884228e7f52 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2290 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-22 r/2026 fix(tazjin/emacs): Don't override CARGO_INCREMENTALVincent Ambo1-1/+0
Change-Id: Ib25c45795cb8aea87fc7e22343af6710a6339d32 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2289 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-22 r/2025 refactor(tazjin/rlox): Introduce declarations in parserVincent Ambo2-15/+36
Change-Id: I873fdd53319ec36da18926d9477e809a69dbace7 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2288 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-22 r/2024 feat(tazjin/rlox): Add support for statementsVincent Ambo3-35/+73
First part of https://craftinginterpreters.com/statements-and-state.html Supports print statements, as well as evaluation for the sake of it (i.e. future side-effects). Change-Id: Ic6653b568f98d6cfe3f297615b7113c0ba1d9a70 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2287 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-20 r/2023 fix(whitby): Include lukegb's & grfn's SSH keys in initrdVincent Ambo1-3/+4
Change-Id: I8921d645b1a81510e04314e519195c1c01d3fd14 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2286 Reviewed-by: lukegb <lukegb@tvl.fyi> Tested-by: BuildkiteCI
2020-12-20 r/2022 fix(whitby): Disable git's gc.autoDetach featureVincent Ambo1-0/+6
This feature can cause object removal to happen while the git folder is in use in Buildkite, causing CI to fail semi-reegularly. Change-Id: Ide1a9b2f1761be029e97a058c1983b4cff5e27bf Reviewed-on: https://cl.tvl.fyi/c/depot/+/2285 Tested-by: BuildkiteCI Reviewed-by: multi <depot@in-addr.xyz>
2020-12-20 r/2021 fix(tazjin/emacs): Bind notmuch shortcuts via EXWMVincent Ambo2-3/+5
Change-Id: I082ee9f75f9e0ef486bc240b4aeda3dec8e79019 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2284 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-20 r/2020 chore(tazjin/emacs): Remove #'fefes-blogVincent Ambo1-5/+0
It's not worth reading anymore, he's getting old. Change-Id: Ia9bac99169949c3f057c0e9c526cbc99e925af76 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2283 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-20 r/2019 feat(tazjin/rlox): Add runtime type error handlingVincent Ambo2-14/+32
Change-Id: I0d52bc9ff5be6421cb4131265ed28ce1ea7d8ff3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2282 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-20 r/2018 feat(tazjin/rlox): Implement tree-walk interpreter of exprsVincent Ambo2-10/+74
This is only a subset of the Lox spec so far. It implements the language up to the runtime error chapter on https://craftinginterpreters.com/evaluating-expressions.html Change-Id: I295dbf4b6544420d6fe80b6aaba661fb21acdea6 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2281 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2020-12-20 r/2017 fix(3p/gerrit): fix left padding on account chipLuke Granger-Brown2-0/+112
We don't have an avatar provider at the moment, so it's wonky. I'll make this a CL upstream as well once my work laptop has charged. Change-Id: I79754560b2de6981508ba7e10faf6b50cb9c3f8f Reviewed-on: https://cl.tvl.fyi/c/depot/+/2266 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2020-12-20 r/2016 chore(3p/gerrit): bump to latest version deployed on gerrit-reviewLuke Granger-Brown8-14/+14
Change-Id: I0aee39b21346f378964bab69bd903e8f43b7e7e8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2265 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2020-12-15 r/2015 fix(gs/yeren): Increase fd soft limit to 65535Griffin Smith1-0/+15
I'm building a database! I have to open all the files! Change-Id: Ie77ad6fafe837c0ddba6b5d56cdc06d787807d4e Reviewed-on: https://cl.tvl.fyi/c/depot/+/2257 Reviewed-by: glittershark <grfn@gws.fyi> Tested-by: BuildkiteCI
2020-12-14 r/2014 chore(3p/lieer): Upgrade to lieer 1.3Vincent Ambo4-50/+19
* rebases the send scope patch * removes the API key override patch, lieer now has a configuration option for this Change-Id: I198e8b61855f6cdb2b1439a1c8f2d9d69261c1b5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2242 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 r/2013 fix(3p/notmuch): Rebase dottime patch on notmuch 0.31Vincent Ambo2-16/+31
Change-Id: I43e8f59cd7f58b9c8b501983edbe55a3cb2f20d0 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2241 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi>