about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2023-09-05 r/6557 feat(tvix/store): fix ctrl-c handling on mount commandFlorian Klink4-6/+60
This enables the tokio `signal` feature, and registers a ctrl_c signal handler, which will use the unmount handle to unmount in case a ctrl-c signal is received. This avoids having disconnected mountpoints when Ctrl-C'ing a `tvix-store mount` invocation. In case the filesystem is unmounted externally (via `umount /path/to/ mountpoint`), the future is waiting for the signal is never resolved and the task is stopped. Change-Id: I149f705a6cb50188177f2a6c6a5fcd77218e2a3f Reviewed-on: https://cl.tvl.fyi/c/depot/+/9218 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2023-09-05 r/6556 feat(tvix/store/fuse): allow listingFlorian Klink3-4/+111
This provides an additional configuration flag to the tvix-store mount subcommand, and logic in the fuse module to request listing for the root of the mountpoint. Change-Id: I05a8bc11f7991b574696f27a30afe0f4e718a58c Reviewed-on: https://cl.tvl.fyi/c/depot/+/9217 Autosubmit: flokli <flokli@flokli.de> Reviewed-by: adisbladis <adisbladis@gmail.com> Tested-by: BuildkiteCI
2023-09-05 r/6555 feat(tvix/store/pathinfosvc): provide listingFlorian Klink9-41/+310
This provides an additional method in the PathInfoService trait, as well as an RPC method on the gRPC layer to list all PathInfo objects in a PathInfoService. Change-Id: I7378f6bbd334bd6ac4e9be92505bd099a1c2b19a Reviewed-on: https://cl.tvl.fyi/c/depot/+/9216 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2023-09-05 r/6554 refactor(tvix/store): infer more typesFlorian Klink1-51/+48
We don't need to explicitly describe the type of the task itself, describing the return type of the async closure is sufficient. Also, use io::Result<_> instead of Result<_, io::Error>. Change-Id: I9ab3f990eb49929b0aea335b2bb07da392ab631f Reviewed-on: https://cl.tvl.fyi/c/depot/+/9267 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: flokli <flokli@flokli.de>
2023-09-05 r/6553 chore(tvix/store): drop walkdir workaround for symlinks at rootFlorian Klink4-25/+9
https://github.com/BurntSushi/walkdir/pull/170 got merged, meaning we don't need to keep our own logic in here anymore. Our test cases already cover this. Change-Id: Ied3043ee651c8aafa10271c1e1ca5d460fb6c0b8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9269 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-05 r/6552 feat(ops/modules): deploy //web/pwcrypt to signup.tvl.fyiVincent Ambo2-0/+20
I verified on whitby that the password hashes generated by //web/pwcrypt are compatible with our OpenLDAP, so it's time to make this thing public. Change-Id: Icc2f095ca7ce4acff6de91a1642dea6461177423 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9266 Tested-by: BuildkiteCI Reviewed-by: flokli <flokli@flokli.de> Autosubmit: tazjin <tazjin@tvl.su>
2023-09-05 r/6551 feat(ops/glesys): delegate signup.tvl.fyi to whitby in DNSVincent Ambo1-0/+1
Change-Id: I7ca1e970228239e87581fd4d65c50334932d85a5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9265 Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Reviewed-by: flokli <flokli@flokli.de>
2023-09-04 r/6550 refactor(tvix/{cli,store}): move TvixStoreIO to tvix-cli crateFlorian Klink10-87/+113
This trait is eval-specific, there's no point in dealing with these things in tvix-store. This implements the EvalIO interface for a Tvix store. The proper place for this glue code (for now) is tvix-cli, which knows about both tvix-store and tvix-eval. There's one annoyance with this move: The `tvix-store import` subcommand previously also used the TvixStoreIO implementation (because it conveniently did what we wanted). Some of this code had to be duplicated, mostly logic to calculate the NAR-based output path and create the PathInfo object. Some, but potentially more of this can be extracted into helper functions in a shared crate, and then be used from both TvixStoreIO in tvix-cli as well as the tvix-store CLI entrypoint. Change-Id: Ia7515e83c1b54f95baf810fbd8414c5521382d40 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9212 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: flokli <flokli@flokli.de>
2023-09-03 r/6549 docs(tazjin/blog): Append link to Vincent's interviewMark Shevchenko1-0/+1
Change-Id: I55840ae2ffce6fa64111716307c0ff2a73652877 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9215 Autosubmit: Mark Shevchenko <markshevchenko@gmail.com> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-03 r/6548 docs(tvix/store): address cargo doc warningsFlorian Klink5-11/+12
Fix some broken link references. Change-Id: I69c9b2b62af35bb777e4df1a01ba3181a368be47 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9214 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2023-09-03 r/6547 docs(tvix/store): update rpc_pathinfo.proto commentsFlorian Klink3-28/+14
Don't repeat the name of the method in the description, don't repeat things already described in request message comments. Change-Id: I180e4792577419050947eea8fea7043861aba463 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9213 Autosubmit: flokli <flokli@flokli.de> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-02 r/6546 refactor(tvix/store): implement rename for node::NodeFlorian Klink2-16/+13
This returns a node with a new name. Change-Id: Iebcab537f8dd63d826b9841d4d0181fcb941afdd Reviewed-on: https://cl.tvl.fyi/c/depot/+/9211 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2023-09-02 r/6545 docs(tvix/store): update commentFlorian Klink1-1/+1
Since the refactor to use URIs for all three services, this actually does talk to a daemon by default. Change-Id: Ied296772b77eef514bfcae0a9dfc50f848a1c2f3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9210 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-02 r/6544 feat(tazjin/tvix-eval-2023): add link collection blog post & QR codeVincent Ambo4-11/+34
Makes it possible for people in the audience to get to the link collection reasonably quickly. Later on that post can also have the talk itself added. For now it is unlisted. Change-Id: If9ae1d88d3c6f22bbd70b2b3cbea0b0d42895a93 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9208 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com> Tested-by: BuildkiteCI
2023-09-02 r/6543 feat(tazjin/tvix-eval-2023): add presenter notes and minor fixesVincent Ambo3-50/+106
Change-Id: I1193f83cf1e9633f74b4359272448ccb44971628 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9207 Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com> Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-02 r/6542 feat(tazjin/presentations): add (intentionally) broken WASM demoVincent Ambo5-0/+956
This demonstrates a Rust stdlib call that just causes runtime panics on WASM, for explaining the problems with porting Tvixbolt. Change-Id: Ief974f1bba509fdac4b9bc9f862ee8f4dfc5158e Reviewed-on: https://cl.tvl.fyi/c/depot/+/9206 Tested-by: BuildkiteCI Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com> Autosubmit: tazjin <tazjin@tvl.su>
2023-09-02 r/6541 chore(tazjin/emacs): refine -> inspetorVincent Ambo1-1/+1
refine doesn't work anymore, inspector seems to be a more modern alternative. it's impressive that they managed to write elisp code that broke. Change-Id: I672de68abdc3d780f66769043afefd8d37438548 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9209 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-01 r/6540 feat(tazjin/presentations): bootstrap tvix-eval-2023 presentationVincent Ambo6-0/+288
I spent way too much time fighting LaTeX to do roughly what I want here again, but all the alternatives are even worse. Change-Id: Ibe12a4ce175ceb73e9d6e276613dcd4827dd76c4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9150 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com> Tested-by: BuildkiteCI
2023-08-31 r/6539 chore(users/Profpatsch/htmx-experiment): move to Multipart2Profpatsch5-304/+13
We don’t strictly need servant-multipart, if all we need is to parse some multipart forms. This removes some deps. Change-Id: I218731fada056b9edfb3d01fc33880673d14473e Reviewed-on: https://cl.tvl.fyi/c/depot/+/9187 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2023-08-29 r/6538 chore(tazjin/khamovnik): load private Emacs config automaticallyVincent Ambo1-2/+5
Change-Id: I26374733c35c2165363eaae45f56ba1e9facfe99 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9167 Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-29 r/6537 refactor(tazjin/nixos): pick correct Emacs from a NixOS optionVincent Ambo2-81/+93
This gives me the ability to override the Emacs per-machine easily. Change-Id: Id480889c108833b0a11c377a9b1e946900c5aba1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9166 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-29 r/6536 chore(tazjin/emacs): remove withLocalEmacsVincent Ambo1-15/+0
I only wrote this as a hack to make my Emacs config run on gLinux, but that isn't relevant anymore. Change-Id: I19c49d500e0ec75bb85644d25a63b0b6c530aa62 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9165 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-29 r/6535 chore(tazjin/emacs): emacs-unstable -> emacs29Vincent Ambo1-1/+1
Instead of staying up-to-date with Emacs master, I'd like to be a bit more laid back and stay with stable releases. Now that native compilation is in this is not a big difference. I tried to use `-pgtk`, but it broke EXWM. Change-Id: I0789a1f73d0149bda912987e726de396545abce1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9164 Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-29 r/6534 refactor(tazjin/gio-list-apps): refactor into dynamic Emacs moduleVincent Ambo7-52/+178
Instead of producing a binary that gets called by Emacs, with input/output serialisation, use a dynamic Emacs module that lets Emacs more-or-less directly call the relevant GTK functions. I'm doing this mostly as an experiment. Might be interesting to end up with a dynamic module that I can dump some experimental code into that improves my workflows. To do this, I've exposed the emacs binary used by my Emacs configuration in an additional `passthru` field. This ensures that the module is linked against the right version of Emacs. Change-Id: I1426994fe3455ed1b2a685c5a09705e29fa40950 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9163 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su>
2023-08-29 r/6533 refactor(tazjin/emacs): refactor LRU workspace list to use ring.elVincent Ambo1-40/+21
This built-in emacs library actually provides a data structure that can work as an LRU list through the existing helper function to move an element to the front of the ring if it already exists. As a result, the code for workspace history moving becomes a lot less brittle and complicated than it was before. No more carefully figuring out when to modify state, just push it in the ring unless it's being rotated already. Change-Id: If354e0618fc5a6d7333776468eec077596cfe9df Reviewed-on: https://cl.tvl.fyi/c/depot/+/9162 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-29 r/6532 chore(tazjin/emacs): remove EXWM gnome-terminal window naming caseVincent Ambo1-8/+0
I haven't used that since ... 2018 or so, time for it to go. Change-Id: I5e1b729bd553940b98335e3d9c7ca5b134fdf692 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9161 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-28 r/6531 feat(tazjin/emacs): add occasionally useful advice-remove-all helperVincent Ambo1-0/+5
Change-Id: I66981e8bec300dff48d7a549f2d2847c637a4557 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9160 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-28 r/6530 chore(tazjin/emacs): remove now builtin packagesVincent Ambo1-2/+0
Change-Id: Ib7bf90a1c1fcd9d4475664f4d68a83967df47bfc Reviewed-on: https://cl.tvl.fyi/c/depot/+/9159 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-26 r/6529 feat(tazjin/emacs): implement run-xdg-app using gio-list-apps toolVincent Ambo4-2/+21
Change-Id: I43111dfc7091c416035be563ca7fc17265667b33 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9158 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-26 r/6528 feat(tazjin/gio-list-apps): CLI to list xdg apps using Gio libraryVincent Ambo5-0/+551
This does nothing other than dump out the list of XDG apps to stdout in JSON format. There are no options or anything. This can be used for selection in app launchers (e.g. dmenu, something based on completing-read in emacs, rofi, etc.). I wrote this because I don't want to deal with having to do this in Elisp. It's also unclear what logic actually hides behind under the hood here, so why not just use the official library. Change-Id: I16fed2c92760cadecc02c59a4e537a1fa247aff9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9157 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-26 r/6527 feat(tazjin/emacs): annotate remote files in reliably-switch-bufferVincent Ambo1-3/+15
Change-Id: I0fa460f2d455114ca9387ad23d5a72bcb5a5d9ea Reviewed-on: https://cl.tvl.fyi/c/depot/+/9156 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-26 r/6526 refactor(tazjin/emacs): ivy,swiper,counsel -> vertico,consultVincent Ambo6-41/+14
vertico and consult are more modern versions of interactive narrowing helpers, as those implemented by ivy and its related packages. The primary differences (and what I care about here) is that they are more focused on integration with the core Emacs primitives, rather than building an ecosystem around them. For example: * vertico enhances `completing-read' and friends, but does not attempt to provide its own ecosystem of functions to *trigger* completions. * vertico integrates with the default `completion-style' system, meaning that I can continue to use things like prescient without extra packages that integrate it with vertico * consult does not rely on vertico or any other specific completion framework (such as counsel/swiper do with ivy), and simply implements its functions using completing-read This reduces the overall amount of code in the dependency closure and leads to a less special setup. Functionality is basically equivalent, except for two things which counsel came with that I will need to substitute: * counsel-notmuch (actually this was a separate package, but I didn't use it much anyways, so just ignoring it for now) * counsel-linux-app (opening desktop shortcuts, this I will need to make) As a side note, consult notes "This package is a part of GNU Emacs", but it doesn't seem to be the case. Change-Id: Ia046b763bf3d401b505e0f6393cfe1ccd6f41293 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9155 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-26 r/6525 chore(tazjin/emacs): remove a bunch of unused codeVincent Ambo5-106/+5
Change-Id: Ife854e83ef97f1e9a26072f2ab2a3b23f5d64840 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9154 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-25 r/6524 fix(emacs-pkgs/term-switcher): apply tramp workaround to first vtermVincent Ambo1-6/+9
Change-Id: Idc01001856cb01104c20b62dc4221c0ad2ab7a3f Reviewed-on: https://cl.tvl.fyi/c/depot/+/9153 Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-24 r/6523 fix(tvix/eval): off-by-one in replaceStringsLinus Heckemann3-2/+3
replaceStrings would previously fail to replace the last character in a string. Change-Id: I43a7c960945350b2e7a5b731b7fdb617723eb38f Reviewed-on: https://cl.tvl.fyi/c/depot/+/9151 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2023-08-23 r/6522 fix(tazjin/emacs): suppress incredibly ennoying EPA error bufferVincent Ambo1-1/+3
When entering an incorrect GPG key password, I don't want my whole buffer layout ruined. A small error message in the modeline is enough. Change-Id: I7318d685e74fa4e110a9bff30d0de9f7f18b2be4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9149 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-23 r/6521 chore(tazjin/emacs): disable some nonsensical ivy optionsVincent Ambo1-3/+1
Especially the recursive minibuffers only cause a mess. Change-Id: I6f7f790acd6a2f8cc4cec26c9cf97d5e53e77106 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9148 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-23 r/6520 feat(tazjin/emacs): implement reliably-switch-bufferVincent Ambo2-0/+22
Adds a completing-read function (defaulting to ivy for me, but it doesn't matter) that offers a reliable alternative to standard buffer-switching implementations. In particular, this implementation retains a mapping of buffer names to their buffer *objects*, so that the correct buffer is selected even if some renaming took place during the selection. I tried to account for a bunch of the common behaviours I could think of: * invisible buffers are ... invisible * entering a buffer name manually creates that buffer, if there is no match * ... unless that buffer is an invisible buffer, in which case it is selected and switched to * the first element is always `(other-buffer (current-buffer))`, because of the ordering of #'buffer-list Yet, the entire code of my implementation is less than the *setup* code of ivy-switch-buffers, so it's possible I missed something. Well, I'll find out ... Change-Id: I08be0da0863d06c9a930e5efaf916719655db90e Reviewed-on: https://cl.tvl.fyi/c/depot/+/9147 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-23 r/6519 refactor(emacs-pkgs/term-switcher): un-dash term-switcher.elVincent Ambo1-5/+5
The builtin `seq' has everything I need, and this way bpalmer will be less annoyed. Change-Id: Ic8e5ac07d5214f36d77e9b577a3f805cdf89f220 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9146 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-23 r/6518 fix(emacs-pkgs/term-switcher): switch buffers by object, not nameVincent Ambo1-15/+13
The terminal switcher uses ivy to select buffers from a list of buffer *names*, however this can cause weird situations if, for example, two `vterm` sessions are in the same folder and buffer name uniquification is active. This commit implements a corrected solution, which constructs an association list of buffer names to their actual buffer object, and retrieves the buffer object from that list after the user has made their selection. This way, changes in buffer names during terminal selection do not lead to confusing results. Change-Id: I3ab3d6b715b32606cf771dabc31d9d4507c8b856 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9145 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-22 r/6517 fix(ops/nixery): switch nixery.dev to stable nixpkgs channelVincent Ambo1-2/+3
The current unstable has a bunch of breakage which people have been reporting, lets move the public instance to the stable channel until that is sorted out. Example breakage: https://github.com/tazjin/nixery/issues/159 Change-Id: Id5eb11ebd235928b85c01c178c32da3badea517f Reviewed-on: https://cl.tvl.fyi/c/depot/+/9126 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2023-08-21 r/6516 feat(tvl-users): grant wheel privileges to flokliVincent Ambo1-1/+1
Flokli needs deploy access to whitby to ~~break auth~~ experiment with Dex. Change-Id: If39763192961e227ee569a312f6a0e3ae2c10786 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9113 Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2023-08-21 r/6515 docs(docs/REVIEWS): explain disadvantages of patch submissionFlorian Klink1-3/+16
There's been some patch submissions gone wrong recently, and piling up in Gerrit. Describe a bit more why patch submission via email is less convenient for both sides. Change-Id: I9dfb5e912511a8b5b828f443c25d5cf36ec5acea Reviewed-on: https://cl.tvl.fyi/c/depot/+/9089 Tested-by: BuildkiteCI Autosubmit: flokli <flokli@flokli.de> Reviewed-by: tazjin <tazjin@tvl.su> Reviewed-by: raitobezarius <tvl@lahfa.xyz>
2023-08-20 r/6514 refactor(tvix): assemble cragoDeps outputHashes from Cargo.nixFlorian Klink1-12/+21
We already have these hashes accessible in the Cargo.nix file created by cargo2nix, so there's no need to also manually maintain them here. It removes one potential footgun I ran into while updating wu-manber to a different rev, without updating it here. Change-Id: I93932ac8ba55f83746ee38571b7740af2d49bbdf Reviewed-on: https://cl.tvl.fyi/c/depot/+/9090 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: raitobezarius <tvl@lahfa.xyz>
2023-08-20 r/6513 docs(tvix/nix-compat/nixhash): update commentsFlorian Klink1-4/+6
Change-Id: I46660da84065fd6938f581e14d67e231dca3c3ea Reviewed-on: https://cl.tvl.fyi/c/depot/+/9112 Reviewed-by: raitobezarius <tvl@lahfa.xyz> Tested-by: BuildkiteCI
2023-08-20 r/6512 refactor(tvix/nix-compat/nixhash): validate digest lengthsFlorian Klink6-43/+99
There was a NixHash::new() before, which didn't perform any validation of the digest length. We had some length validation when parsing nix hashes or SRI hashes, but some places didn't perform validation and/or constructed the struct directly. Replace NixHash::new() with a `impl TryFrom<(HashAlgo, Vec<u8>)> for NixHash`, which does do this validation, and update constructing code to use that, rather than populating structs directly. In some rare cases where we're sure the digest length is correct we still populate the struct manually. Fixes b/291. Change-Id: I7a323c5b18d94de0ec15e391b3e7586df42f4229 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9109 Reviewed-by: raitobezarius <tvl@lahfa.xyz> Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2023-08-20 r/6511 refactor(tvix/nix-compat): cargo clippyFlorian Klink1-8/+8
Change-Id: I1c1608a6e75e451940fe1c61dc5ace5f0e7d7752 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9111 Reviewed-by: raitobezarius <tvl@lahfa.xyz> Tested-by: BuildkiteCI
2023-08-20 r/6510 docs(tvix/docs): add document about drvPath differencesFlorian Klink1-0/+46
This question popped up every once in a while. While already explained quite well at https://inbox.tvl.su/depot/20230316120039.j4fkp3puzrtbjcpi@tp/T/#t, it's not easily accessible. Lift it from there into tvix/docs for better visibility. Change-Id: I5f2d4aff31ab4adc421e06a7d36c871f45e09100 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9080 Autosubmit: flokli <flokli@flokli.de> Reviewed-by: raitobezarius <tvl@lahfa.xyz> Tested-by: BuildkiteCI
2023-08-20 r/6509 refactor(tvix/eval): don't use `format!` in `write!` argsFlorian Klink1-1/+1
Change-Id: I0b2fdb418c2e36280d5c551a81634e1742193903 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9105 Tested-by: BuildkiteCI Autosubmit: flokli <flokli@flokli.de> Reviewed-by: raitobezarius <tvl@lahfa.xyz>
2023-08-20 r/6508 refactor(tvix/eval/vm): don't put HashMap in a BoxFlorian Klink1-1/+1
HashMap already is on the heap. Change-Id: I53763e17469359e85862f297b5c2e7c0d8c3a980 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9104 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: raitobezarius <tvl@lahfa.xyz>