)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"f0ef618e5bb781d720e2c2fd0b1052763ed1db58","unresolved":true,"context_lines":[{"line_number":11,"context_line":"workspace (see cl/7533)."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This commit checks in the generated Cargo.nix file which can be"},{"line_number":14,"context_line":"regenerated with a parameterless invocation of `crate2nix generate` in"},{"line_number":15,"context_line":"`//tvix`. I tried generating this in IFD, but it turned out to be"},{"line_number":16,"context_line":"harder than what seemed worthwhile for now."},{"line_number":17,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"1ef0a6c3_05e4c6c1","line":14,"updated":"2022-12-12 08:58:36.000000000","message":"I think this should be added to the README, not only the commit history. People tinkering with Tvix will inevitably run into having to do this, so it makes sense for it to be documented.","commit_id":"1fd77832ef5e269b4d2d33fe68ba91efa5befd56"},{"author":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"change_message_id":"8990856b219abae32923f01abe42e461a056691e","unresolved":false,"context_lines":[{"line_number":11,"context_line":"workspace (see cl/7533)."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This commit checks in the generated Cargo.nix file which can be"},{"line_number":14,"context_line":"regenerated with a parameterless invocation of `crate2nix generate` in"},{"line_number":15,"context_line":"`//tvix`. I tried generating this in IFD, but it turned out to be"},{"line_number":16,"context_line":"harder than what seemed worthwhile for now."},{"line_number":17,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"c6ea843e_dba8b0c7","line":14,"in_reply_to":"1ef0a6c3_05e4c6c1","updated":"2022-12-12 09:14:46.000000000","message":"Done","commit_id":"1fd77832ef5e269b4d2d33fe68ba91efa5befd56"},{"author":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"f0ef618e5bb781d720e2c2fd0b1052763ed1db58","unresolved":true,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This commit checks in the generated Cargo.nix file which can be"},{"line_number":14,"context_line":"regenerated with a parameterless invocation of `crate2nix generate` in"},{"line_number":15,"context_line":"`//tvix`. I tried generating this in IFD, but it turned out to be"},{"line_number":16,"context_line":"harder than what seemed worthwhile for now."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"In this setup, the various build targets for Rust projects end up"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"b860ece3_a145edd9","line":15,"updated":"2022-12-12 08:58:36.000000000","message":"crate2nix isn\u0027t made available in the toplevel direnv, and it\u0027s also not available in an `mg shell //tvix:shell` after cl/7540\n\nWhenever we check in generated files, I feel like we should have CI to ensure the file doesn\u0027t get out of sync - see cl/7322 for an example.","commit_id":"1fd77832ef5e269b4d2d33fe68ba91efa5befd56"},{"author":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"6e347dec5fd65c93ba87305238060ee2a66718f1","unresolved":true,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This commit checks in the generated Cargo.nix file which can be"},{"line_number":14,"context_line":"regenerated with a parameterless invocation of `crate2nix generate` in"},{"line_number":15,"context_line":"`//tvix`. I tried generating this in IFD, but it turned out to be"},{"line_number":16,"context_line":"harder than what seemed worthwhile for now."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"In this setup, the various build targets for Rust projects end up"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"e32b250a_e0c49575","line":15,"in_reply_to":"67137fd3_6575549d","updated":"2022-12-12 10:22:25.000000000","message":"The second part of my comment was not about running crate2nix inside a derivation, but ensuring it\u0027s always up to date. Check cl/7322 again, we `mg run` that check, and ensure there\u0027s no dirty working tree.\n\nAlso, please add some documentation around this workflow to the //tvix README.\n\nConsidering this all is not just a `cargo build` / `cargo test` anymore, I feel like it makes sense to document the workflow.","commit_id":"1fd77832ef5e269b4d2d33fe68ba91efa5befd56"},{"author":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"change_message_id":"91ddb1d932583e0334b97f6fc093379f2ebd1165","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This commit checks in the generated Cargo.nix file which can be"},{"line_number":14,"context_line":"regenerated with a parameterless invocation of `crate2nix generate` in"},{"line_number":15,"context_line":"`//tvix`. I tried generating this in IFD, but it turned out to be"},{"line_number":16,"context_line":"harder than what seemed worthwhile for now."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"In this setup, the various build targets for Rust projects end up"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"67137fd3_6575549d","line":15,"in_reply_to":"b860ece3_a145edd9","updated":"2022-12-12 09:14:35.000000000","message":"Generating these files in derivations (and by extension in IFD) is hard, and the only supported way (which is in the official crate2nix repo) apparently has some Nix \u003e2.5 (!) specific code which I don\u0027t have the time to rewrite/debug at the moment.\n\nI\u0027ll add crate2nix to the top-level direnv, we might start using it for other stuff, too.","commit_id":"1fd77832ef5e269b4d2d33fe68ba91efa5befd56"},{"author":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"change_message_id":"37a1c74f08c4d97f58f224626be4081bad119246","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This commit checks in the generated Cargo.nix file which can be"},{"line_number":14,"context_line":"regenerated with a parameterless invocation of `crate2nix generate` in"},{"line_number":15,"context_line":"`//tvix`. I tried generating this in IFD, but it turned out to be"},{"line_number":16,"context_line":"harder than what seemed worthwhile for now."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"In this setup, the various build targets for Rust projects end up"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"55607701_49b6453e","line":15,"in_reply_to":"ca9d6cb1_6d576292","updated":"2022-12-12 11:09:16.000000000","message":"I filed a bug for checking the generated files: b/230\n\nI don\u0027t think this needs to be 100% perfect at the first commit. For now, random people that are not familiar with the workflow are unlikely to modify this file and we\u0027d likely get CI failures on the Rust side of things anyways.\n\n\u003e but not on the \"how to build and test this\" part\n\nThere\u0027s nothing special about how tvix parts are built vs. other projects in depot. You can use either `nix-build -A path.to.the.thing` or the `mg` command. We don\u0027t usually put this into the documentation of each depot project, but I would definitely accept a CL adding whatever documentation you think is useful here.","commit_id":"1fd77832ef5e269b4d2d33fe68ba91efa5befd56"},{"author":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"7d810965d4b999e3739f5486c4b3e169d2eb15b2","unresolved":true,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This commit checks in the generated Cargo.nix file which can be"},{"line_number":14,"context_line":"regenerated with a parameterless invocation of `crate2nix generate` in"},{"line_number":15,"context_line":"`//tvix`. I tried generating this in IFD, but it turned out to be"},{"line_number":16,"context_line":"harder than what seemed worthwhile for now."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"In this setup, the various build targets for Rust projects end up"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"ca9d6cb1_6d576292","line":15,"in_reply_to":"e32b250a_e0c49575","updated":"2022-12-12 10:24:49.000000000","message":"Sorry, I initially missed the now-existing docs on crate2nix (and now commented there), but not on the \"how to build and test this\" part.","commit_id":"1fd77832ef5e269b4d2d33fe68ba91efa5befd56"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"9977627eec5b37041de76736474519ba600c5694","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"639c1ed3_39241d7e","updated":"2022-12-08 10:51:19.000000000","message":"This (or the previous CL) breaks `mg shell //tvix:shell` entirely.","commit_id":"f1ebc70e73953fa005132b26cbd8e7e8a49d1ecd"},{"author":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"be178fc9edaff361f968ed6884a2697c5aa07c29","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":6,"id":"b7009e96_d4fbd086","in_reply_to":"639c1ed3_39241d7e","updated":"2022-12-08 10:51:59.000000000","message":"unresolved","commit_id":"f1ebc70e73953fa005132b26cbd8e7e8a49d1ecd"},{"author":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"change_message_id":"95097d2f2f08b5bee25f4f783d2fd09d8748b1af","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":6,"id":"c22471d3_736b5311","in_reply_to":"b7009e96_d4fbd086","updated":"2022-12-08 11:46:54.000000000","message":"//tvix is not a target, //tvix/store, //tvix/eval etc. are. I see that there\u0027s a manually written shell.nix there, maybe move that into the //tvix/default.nix config with a virtual target name that matches what you\u0027d expect.\n\nIn general I don\u0027t think it\u0027s reasonable to have a \"tvix-wide\" shell, but adding that also doesn\u0027t break anything so I\u0027m not strongly against it.","commit_id":"f1ebc70e73953fa005132b26cbd8e7e8a49d1ecd"},{"author":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"change_message_id":"8c3ff803850b1958cb57eb7a23e7cc6c946496bd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"273a7366_f05f19f8","in_reply_to":"c22471d3_736b5311","updated":"2022-12-08 17:09:49.000000000","message":"Figured out that you mean the manually written `shell.nix` file. We\u0027ve made that a depot target now in cl/7540.","commit_id":"f1ebc70e73953fa005132b26cbd8e7e8a49d1ecd"}],"tvix/README.md":[{"author":{"_account_id":1000036,"name":"flokli","email":"flokli@flokli.de","username":"flokli"},"change_message_id":"7d810965d4b999e3739f5486c4b3e169d2eb15b2","unresolved":true,"context_lines":[{"line_number":18,"context_line":"`//tvix` itself and commit the changes to the generated `Cargo.nix`"},{"line_number":19,"context_line":"file."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"`crate2nix` is available via `direnv` inside of depot, or in nixpkgs"},{"line_number":22,"context_line":"under the same name."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"## License structure"}],"source_content_type":"text/x-gfm","patch_set":9,"id":"9da02940_2cbb9fd4","line":21,"updated":"2022-12-12 10:24:49.000000000","message":"Different crate2nix versions can produce different outputs - we should probably refer to the nix-build invocation that pulls it from the tvl nixpkgs pin - or the `mg run` command.","commit_id":"4a25f9c3bdfb0c415f518345c7d0b956ad21183a"},{"author":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"change_message_id":"feab8cfbbec015b3ad0ff87ae910c2295e52a386","unresolved":false,"context_lines":[{"line_number":18,"context_line":"`//tvix` itself and commit the changes to the generated `Cargo.nix`"},{"line_number":19,"context_line":"file."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"`crate2nix` is available via `direnv` inside of depot, or in nixpkgs"},{"line_number":22,"context_line":"under the same name."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"## License structure"}],"source_content_type":"text/x-gfm","patch_set":9,"id":"976fc109_18dfb37b","line":21,"in_reply_to":"5be2a5a9_df1e5e21","updated":"2022-12-12 11:09:45.000000000","message":"Done","commit_id":"4a25f9c3bdfb0c415f518345c7d0b956ad21183a"},{"author":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"change_message_id":"37a1c74f08c4d97f58f224626be4081bad119246","unresolved":true,"context_lines":[{"line_number":18,"context_line":"`//tvix` itself and commit the changes to the generated `Cargo.nix`"},{"line_number":19,"context_line":"file."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"`crate2nix` is available via `direnv` inside of depot, or in nixpkgs"},{"line_number":22,"context_line":"under the same name."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"## License structure"}],"source_content_type":"text/x-gfm","patch_set":9,"id":"5be2a5a9_df1e5e21","line":21,"in_reply_to":"9da02940_2cbb9fd4","updated":"2022-12-12 11:09:16.000000000","message":"Updated to point people only towards the depot sources of `crate2nix`.","commit_id":"4a25f9c3bdfb0c415f518345c7d0b956ad21183a"}]}
