about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2024-10-15 r/8811 refactor(tvix/glue/builtins/import): refactorFlorian Klink6-231/+204
This removes all the intermediate helper functions and reorganizes the import code to only do the calculations where/when needed, and hopefully makes things easier to understand as well. Change-Id: I7e4c89c742bf8569b45e303523f7f801da7127ea Reviewed-on: https://cl.tvl.fyi/c/depot/+/12627 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: Jörg Thalheim <joerg@thalheim.io> Reviewed-by: edef <edef@edef.eu>
2024-10-15 r/8810 test(tvix/glue): improve comments and test cases a bitFlorian Klink1-14/+12
This makes it easier to understand what the specific test is testing. Change-Id: I34b2798841c6b9367849668451af2165dc78f997 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12626 Autosubmit: flokli <flokli@flokli.de> Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com> Tested-by: BuildkiteCI Reviewed-by: Jörg Thalheim <joerg@thalheim.io>
2024-10-15 r/8809 test(tvix/glue): add builtins.storeDir regression testFlorian Klink3-0/+9
Change-Id: Ib87f41b3e0d634dd76e648acfe1b3026211f947a Reviewed-on: https://cl.tvl.fyi/c/depot/+/12619 Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com> Autosubmit: flokli <flokli@flokli.de> Reviewed-by: Jörg Thalheim <joerg@thalheim.io> Tested-by: BuildkiteCI
2024-10-15 r/8808 fix(tvix/glue/import): builtins.storeDir fixesFlorian Klink3-39/+23
This didn't support store paths with a subpath joined to them, while Nix does. Use state.path_exists, which does. This also means we can drop the `store_path_exists` helper, which was only used here. Change-Id: I918ccb270f64acbdc41cb4d2a9c3c5871ce15002 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12618 Tested-by: BuildkiteCI Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com> Reviewed-by: Jörg Thalheim <joerg@thalheim.io> Autosubmit: flokli <flokli@flokli.de>
2024-10-15 r/8807 refactor(nix-compat/store_path): use Path in from_absolute_path_fullFlorian Klink2-32/+17
These are not necessarily strings, and making it paths allows us to stop converting them to lossy strings. Change-Id: I11366c721dc5da1778aafe89092a1966b5a43178 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12617 Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com> Reviewed-by: Jörg Thalheim <joerg@thalheim.io> Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2024-10-15 r/8806 refactor(nix-compat/store_path): add SP for build_nar_based_store_pathFlorian Klink1-6/+12
Make this generic on the StorePath<SP> that's being used, similar to the other functions in there. Change-Id: I453d1fd3749053d4e5aca156abc18da1f95ca264 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12616 Tested-by: BuildkiteCI Autosubmit: flokli <flokli@flokli.de> Reviewed-by: Jörg Thalheim <joerg@thalheim.io> Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2024-10-13 r/8805 refactor(tvix/tracing): remove use of lazy_staticFlorian Klink4-17/+15
This is now supported in the standard library via std::sync::LazyLock, but requires some manual shuffling around of code. Change-Id: I14bee4068dc73c948321481b5a4e1fc922a89a27 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12611 Tested-by: BuildkiteCI Autosubmit: flokli <flokli@flokli.de> Reviewed-by: tazjin <tazjin@tvl.su>
2024-10-13 r/8804 refactor(tvix/build): remove use of lazy_staticFlorian Klink4-12/+2
This is now supported in the standard library via std::sync::LazyLock, but requires some manual shuffling around of code. Change-Id: Ie2af74beda9fcf8aa19fca7d844bcbe732f05bf8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12610 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2024-10-13 r/8803 refactor(tvix/glue): remove use of lazy_staticVincent Ambo6-50/+64
This is now supported in the standard library via std::sync::LazyLock, but requires some manual shuffling around of code. Change-Id: Ibb3be8458b8a8912ea04c9360d64c5cf914254d4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12609 Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Reviewed-by: flokli <flokli@flokli.de>
2024-10-13 r/8802 refactor(tvix/nix-compat): remove use of lazy_staticVincent Ambo9-110/+92
This is now supported in the standard library via std::sync::LazyLock, but requires some manual shuffling around of code. I found at least one dead variable along the way, which I deleted. Change-Id: I8600c87c49078fb5ff72671994c77b919259e67b Reviewed-on: https://cl.tvl.fyi/c/depot/+/12608 Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su>
2024-10-12 r/8801 chore(tvix/tools): move narinfo2parquet to //users/edefVincent Ambo6-176/+448
This is not a core Tvix tool, it's a tool that uses a Tvix component. Change-Id: I81d2b2374da23489df0097dcabb8295c82652fc1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12606 Reviewed-by: edef <edef@edef.eu> Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su>
2024-10-12 r/8800 chore(tvix/tools): move weave to //users/edefVincent Ambo9-3/+3
This is not a core Tvix tool, it's a tool that uses a Tvix component. Change-Id: I705f2c4ab87f1512e005007c933e16b84ed4279f Reviewed-on: https://cl.tvl.fyi/c/depot/+/12605 Reviewed-by: edef <edef@edef.eu> Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su>
2024-10-12 r/8799 chore(tvix/tools): move turbofetch to //users/edefVincent Ambo9-0/+0
This was introduced in cl/9925 without any commit message, but this is clearly not relevant to Tvix itself (it even says so in a comment in Cargo.toml). Change-Id: I84f12d5145c3f53c9df23863f887bad913856c50 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12604 Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: edef <edef@edef.eu>
2024-10-12 r/8798 chore(tvix/tools): move crunch-v2 to //users/edefVincent Ambo12-3/+3
This is not a core Tvix tool, it's some sort of one-off analysis thing. Change-Id: I05fcbed45abad27d6b5cfd49db1727249dad3971 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12603 Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Reviewed-by: edef <edef@edef.eu>
2024-10-12 r/8797 refactor(tvix/eval): remove usage of lazy_staticVincent Ambo6-38/+26
Equivalent logic is now in the standard library, and this dependency is no longer needed for eval. Change-Id: Iaa4410d89fdaa5b84cbd9e6bc6ae479c659d92f2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12602 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: edef <edef@edef.eu> Tested-by: BuildkiteCI
2024-10-12 r/8796 refactor(tvix/eval): Make `strict` an EvalMode enumAspen Smith8-31/+50
Refactor the `strict` boolean passed into evaluation at the top-level to be a (two-variant, so far) EvalMode enum of Lazy and Strict. This is more explicit than a boolean, and if we ever add more EvalModes it's a simple extension of the enum. Change-Id: I3de50e74ec971011664f6cd0999d08b792118410 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12186 Tested-by: BuildkiteCI Reviewed-by: flokli <flokli@flokli.de> Autosubmit: aspen <root@gws.fyi>
2024-10-12 r/8795 chore(users/picnoir/tvix-daemon): bump crate dependenciesFlorian Klink2-1260/+671
Change-Id: I437126bba36b61b8f266915e0fe0ecc229a5bc5b Reviewed-on: https://cl.tvl.fyi/c/depot/+/12600 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2024-10-12 r/8794 chore(tvix/tools/crunch-v2): bump crate dependenciesFlorian Klink2-1974/+1266
Change-Id: Ib67e0121cebf6b2f049490125c7ded9637955928 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12599 Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com> Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2024-10-12 r/8793 chore(tvix/tools/weave): bump crate dependenciesFlorian Klink2-1208/+903
Change-Id: I31e5f3d46321265d662d41aa79aa4178e121818f Reviewed-on: https://cl.tvl.fyi/c/depot/+/12598 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2024-10-12 r/8792 chore(tvix/tools/turbofetch): bump crate dependenciesFlorian Klink2-685/+1354
Change-Id: I81988571344829708881021527b83e7d99b598c3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12597 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2024-10-12 r/8791 chore(tvix): bump crate dependenciesFlorian Klink5-1541/+1650
tonic-build deprecated their `compile()` function, it's now called `compile_protos()`. Change-Id: I8cacd7f01a251c207401e4e226b0e880744e96e8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12596 Tested-by: BuildkiteCI Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com> Autosubmit: flokli <flokli@flokli.de>
2024-10-11 r/8790 test(tvix/store/signing_wrapper): restructureFlorian Klink1-14/+16
Move things around a bit to make it easier to understand what's going on: - We first validate our fixture invariants - We then insert into the PathInfoService - Do all comparisons and checks we can on the returned PathInfo struct - Only convert to the NarInfo variant to calculate the fingerprint, and don't keep intermediate let bindings for this Before cl/12588, this was arguably much harder to do that way, as we relied on some of the conversions done in the to_narinfo() function. Change-Id: Iaddbf1079f73ce566ef6d56f69a823e080b2e006 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12595 Reviewed-by: Marijan Petričević <marijan.petricevic94@gmail.com> Tested-by: BuildkiteCI Reviewed-by: flokli <flokli@flokli.de> Reviewed-by: sinavir <tvix@sinavir.fr>
2024-10-11 r/8789 refactor(tvix/glue/register_in_path_info_service): return only PathInfoFlorian Klink3-33/+42
The store path is already contained in the PathInfo, and the ca bits is already passed into the function, so known to the caller - there's no need to duplicate this. We can also avoid having two separate block_on in our import builtin - we already know the content hash before constructing, as we pass it in via ca_hash. There's still some room to unclutter some more of the code around importing - we still do NAR calculation twice in some cases, and some of the code might be share-able from other places producing PathInfo too. Log a TODO for this cleanup. Change-Id: I6a5fc427d15bc9293a396310143c7694dd2996c0 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12592 Reviewed-by: Marijan Petričević <marijan.petricevic94@gmail.com> Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2024-10-11 r/8788 refactor(nix-compat/store_path): consistently use SP as type paramFlorian Klink3-10/+13
We also use S in other places in the same file, but that's for the string-like references. SP is now consistently used as the type parameter for StorePath<_> (and build_output_path) gets support for it). By being a bit more careful in the order of assignments in nix-compat/ src/derivation, we can nudge the compiler to use the type we want. Change-Id: Ia7c298e110dff98d3b113d2388674ce9e22b80e8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12590 Reviewed-by: flokli <flokli@flokli.de> Reviewed-by: Marijan Petričević <marijan.petricevic94@gmail.com> Tested-by: BuildkiteCI
2024-10-11 r/8787 refactor(tvix/store): use strictly typed PathInfo structMarijan Petričević26-1042/+726
This switches the PathInfoService trait from using the proto-derived PathInfo struct to a more restrictive struct, and updates all implementations to use it. It removes a lot of the previous conversion and checks, as invalid states became nonrepresentable, and validations are expressed on the type level. PathInfoService implementations consuming protobuf need to convert and do the verification internally, and can only return the strongly typed variant. The nix_compat::narinfo::NarInfo conversions for the proto PathInfo are removed, we only keep a version showing a NarInfo representation for the strong struct. Converting back to a PathInfo requires the root node now, but is otherwise trivial, so left to the users. Co-Authored-By: Florian Klink <flokli@flokli.de> Change-Id: I6fdfdb44063efebb44a8f0097b6b81a828717e03 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12588 Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2024-10-11 r/8786 chore(tvix/build): Bump oci-spec dependencyIlan Joselevich4-202/+149
Our oci-spec was a bit oudated and there were some renamings in one of the release, which made building tvix-build fail if it's a dependency. I encountered this issue while working on tvix-eval-jobs. Change-Id: I6d982965176b83170a07445e351d3f5e5679ed2e Reviewed-on: https://cl.tvl.fyi/c/depot/+/12586 Reviewed-by: flokli <flokli@flokli.de> Autosubmit: Ilan Joselevich <personal@ilanjoselevich.com> Tested-by: BuildkiteCI
2024-10-10 r/8785 feat(tvix/composition): allow urls as anonymous storesYureka9-91/+151
This allows specifying an url in place of a named reference to another composition entry, if the castore crate has been compiled with the xp-store-composition feature. Example: `--directory-service-addr cache://?near=memory://&far=memory://` This would be equivalent to the instantiation via toml file: ```toml [memory1] type = "memory" [memory2] type = "memory" [default] type = "cache" near = "memory1" far = "memory2" ``` Note that each anonymous url causes a distinct instance to be created. Change-Id: Iee5a07a94b063b5e767c704d9cad0114fa843164 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12146 Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2024-10-10 r/8784 feat(tvix/dirsvc/Cache): support building from urlYureka1-5/+6
Change-Id: I80121319795319bb977427efeca3666c6b87a1b7 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12147 Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2024-10-10 r/8783 feat(tvix/pathinfo/nixhttp): use ingest stores from urlYureka1-2/+18
This still defaults to the "default" services, but allows users to tell the nix+http pathinfoservice to ingest the castore nodes into a non-default blob-/directoryservice when used with the experimental store composition. Change-Id: I5c0f683ce95d888eadf3f302520a47f42f1a481d Reviewed-on: https://cl.tvl.fyi/c/depot/+/12148 Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
2024-10-09 r/8782 refactor(tvix/cli/args): remove log-level argumentMarijan Petričević3-12/+0
RUST_LOG allows for a more granular tracing configuration Change-Id: Iea29fc2b154345eb7479dfd8bbea6abfd4716341 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12585 Tested-by: BuildkiteCI Reviewed-by: flokli <flokli@flokli.de>
2024-10-06 r/8781 feat(tazjin/nixos): persist yggdrasil keys for tverskoyVincent Ambo3-11/+5
Change-Id: If2513b009a82a07b90eb06a5dc4db0859aa6c78d Reviewed-on: https://cl.tvl.fyi/c/depot/+/12584 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2024-10-05 r/8780 chore(users/Profpatsch/sync-abfall): parkProfpatsch4-0/+0
Change-Id: I9284417cb88f0eb2a0525db789069ca6507a500f Reviewed-on: https://cl.tvl.fyi/c/depot/+/12583 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8779 chore(users/Profpatsch/reverse-haskell-deps): parkProfpatsch4-0/+0
Change-Id: I3940764f8aba806f97d62b0e1cf8d200aa6346ff Reviewed-on: https://cl.tvl.fyi/c/depot/+/12582 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2024-10-05 r/8778 fix(users/Profpatsch): remove parked projects from CIProfpatsch2-0/+0
Change-Id: Idf10af114c236f33ed40052fa05f85d1683d78b6 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12581 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2024-10-05 r/8777 chore(users/Profpatsch): park mailbox-orgProfpatsch7-5/+0
I should probably remove the default.nix files in these as well so they don’t get built on CI. Change-Id: I09764f2ee198ab4016a1649f1675f7c45d207b09 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12580 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8776 chore(users/Profpatsch): remove iniProfpatsch2-42/+0
Change-Id: I289e133ef64766d4b1a199a26d2eea9db52918a0 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12579 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8775 chore(users/Profpatsch/.gitignore): ignore all js lockfilesProfpatsch1-0/+4
Change-Id: Ieeb79ce72e72ffe12ee26576f644e64a5cad456e Reviewed-on: https://cl.tvl.fyi/c/depot/+/12578 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8774 chore(users/Profpatsch/my-prelude): vendor pa-jsonProfpatsch8-4/+535
Want to be able to make changes with low overhead, and having it in a separate library is just annoying. Change-Id: I30b76885d8e0e6ebaefe9506cf36672783ed4988 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12577 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8773 fix(users/Profpatsch/lyric/ext): print upload message to logProfpatsch1-0/+2
Change-Id: I178077894eb78c9f9cb5da07c1be23b7dba6c7cb Reviewed-on: https://cl.tvl.fyi/c/depot/+/12576 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8772 fix(users/Profpatsch/lyric/ext): set user agent in all fetchesProfpatsch1-4/+7
Change-Id: I8de1ef76c4d5789536e528f49226e58ee90b8749 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12575 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2024-10-05 r/8771 chore(users/Profpatsch): remove AoC stuffProfpatsch4-269/+0
Change-Id: Ifb134053c0f92dfdb4f2c0a3418c0c6a7a1a8507 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12574 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8770 feat(users/Profpatsch): move eslint & prettier to toplevelProfpatsch8-156/+120
the linters & prettier config should apply to my whole subdir. This is somewhat nasty, you have to `npm` in the toplevel dir before it starts working, otoh dev tooling is dev time and I’m working on these alone. Change-Id: I96721f549b24a40b7ffbb2d310f37a40d2590b2b Reviewed-on: https://cl.tvl.fyi/c/depot/+/12573 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8769 feat(users/Profpatsch/lyric): add tapping & improve silence warningProfpatsch2-18/+67
Add a tapping command that does not quantize the timestamps. For the silence warning, we make it BPM-dependent (defaulting to 120BPM as everywhere else), meaning for slower songs we give a higher possible time difference before we display a warning. Change-Id: Idefc44166639b23c2105a1a810ac22ed84457225 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12563 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2024-10-05 r/8768 fix(users/Profpatsch/lyric): create new lyric file if not existsProfpatsch1-15/+15
That was the original intention, but I didn’t understand that lua would fail with "r+" if the file does not exist (and "w+" truncates the file, so you have to try "r+" and then fall back to "w+" which will create the file as well.) Change-Id: Ib238f0b73ab403ceeaf035d053a14eba718d1b48 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12562 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2024-10-05 r/8767 feat(users/Profpatsch/lyric/ext): add lrc upload & ms offsetProfpatsch3-6/+405
This adds support for uploading the lyrics part of an .lrc file to lrclib, see https://lrclib.net/docs I pretty much only used ChatGPT to translate the rust “proof of work” challenge to nodejs and it worked first try lol. Before uploading the lyrics, I construct a webview with a preview of what is going to be uploaded, and then only upload when that is accepted. Pretty sweet. Also adds two commands for increasing/decreasing the current timestamp by 100ms and starting playback from 2 seconds before that, very handy for fine-tuning lines. Change-Id: Ia6adfe26d0c21c62554c8f8c55e97e2caec95d1e Reviewed-on: https://cl.tvl.fyi/c/depot/+/12561 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2024-10-05 r/8766 chore(users/Profpatsch/lyric): add typescript linting rulesProfpatsch6-89/+140
Change-Id: I9ab0336450519648f7a8edeec94bd64b78e2f05b Reviewed-on: https://cl.tvl.fyi/c/depot/+/12554 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8765 feat(users/Profpatsch/lyric/ext): add bpm on quantizationProfpatsch1-8/+102
If the bpm header already exists, overwrite it with the new value. Also use an existing header as suggestion. Change-Id: If6431e8056504db437c31313d885b5ba0d0e55d5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12553 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8764 feat(users/Profpatsch/lyric): add .lrc header for new filesProfpatsch1-2/+27
Insert the length and stuff into the .lrc file headers. Change-Id: Id2565c95c516208f1e46b79d5b8da50f3d6bee62 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12552 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 r/8763 feat(users/Profpatsch/lyric/ext): add bpm quantizationProfpatsch3-1/+186
It’s a bit crappy and really depends on the input field opening quickly again (which it often doesn’t really do…), but it was the easiest way I figured how to do it haha. Aligning to eigth notes is pretty much the easiest way to sync everything up after tapping in the timestamps (for most songs). Change-Id: Ibbb072f62b6ee17d983e81b6c1554bc3516fa636 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12551 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2024-10-05 r/8762 feat(users/Profpatsch/lyric/ext): add lyric shiftingProfpatsch2-7/+137
Change-Id: I1b52e2a295ae81d5d9bf488b1e584dda4d5aac9b Reviewed-on: https://cl.tvl.fyi/c/depot/+/12550 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI