)]}'
{"id":"depot~2106","triplet_id":"depot~canon~I84235bed9104ff430a0acf686d4a96f1e2e9a897","project":"depot","branch":"canon","topic":"tvix","attention_set":{},"removed_from_attention_set":{"1000001":{"account":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"last_update":"2020-11-18 22:10:47.000000000","reason":"removed on reply"},"1000010":{"account":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"last_update":"2020-11-19 00:29:42.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I84235bed9104ff430a0acf686d4a96f1e2e9a897","subject":"fix(tvix): Use copy constructor to add strings to protos","status":"MERGED","created":"2020-11-18 14:04:46.000000000","updated":"2020-11-19 00:32:08.000000000","submitted":"2020-11-19 00:29:42.000000000","submitter":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"2106-tvix","meta_rev_id":"df08fbace52076a838b3280c6789c8868e80d9a5","_number":2106,"virtual_id_number":2106,"owner":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"actions":{},"labels":{"Code-Review":{"approved":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"all":[{"tag":"autogenerated:gerrit:merged","value":2,"date":"2020-11-19 00:29:42.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"value":0,"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},{"value":0,"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}],"values":{"-2":"This shall not be merged","-1":"I would prefer this is not merged as is"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me, approved"},"description":"","default_value":0},"Verified":{"approved":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"value":0,"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},{"tag":"autogenerated:gerrit:merged","value":1,"date":"2020-11-19 00:29:42.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}],"values":{"-1":"Fails"," 0":"No score","+1":"Verified"},"description":"","default_value":0},"Autosubmit":{"all":[{"value":0,"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"value":0,"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},{"value":0,"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}],"values":{" 0":"Submit manually","+1":"Submit automatically"},"description":"","default_value":0,"optional":true},"All-Comments-Resolved":{"approved":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"all":[{"value":0,"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"value":0,"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},{"value":0,"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}]},"Conformant-Commit-Message":{"approved":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"all":[{"value":0,"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"value":0,"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},{"value":0,"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}]}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2020-11-18 14:05:19.000000000","updated_by":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"reviewer":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2020-11-18 14:36:22.000000000","updated_by":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"reviewer":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"state":"REVIEWER"}],"messages":[{"id":"71bb45ae46530f00a56707e1d1a158757d3a72e8","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"date":"2020-11-18 14:04:46.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"bcbf26fa972eb51b89adb01037c7777db82a7c4f","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2020-11-18 14:05:19.000000000","message":"Patch Set 1: Verified-1\n\nBuild of patchset 1 failed: https://buildkite.com/tvl/depot/builds/3689","accounts_in_message":[],"_revision_number":1},{"id":"8a206158175cb44ab9a617d299f0faa7e9352744","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"date":"2020-11-18 14:29:24.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"fa1bd7ddadc3219027efb34dca10c0cfdfce7695","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2020-11-18 14:29:51.000000000","message":"Patch Set 2: Verified-1\n\nBuild of patchset 2 failed: https://buildkite.com/tvl/depot/builds/3691","accounts_in_message":[],"_revision_number":2},{"id":"c531a1f7d603e226e165c4881f6bf92e0edd38f0","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"date":"2020-11-18 14:32:54.000000000","message":"Uploaded patch set 3: Commit message was updated.","accounts_in_message":[],"_revision_number":3},{"id":"2f655a695da736a2cbf2279d6995faf0c0c46825","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2020-11-18 14:35:51.000000000","message":"Patch Set 3: Verified+1\n\nBuild of patchset 3 passed: https://buildkite.com/tvl/depot/builds/3692","accounts_in_message":[],"_revision_number":3},{"id":"5f75f5f3d2686bdc3a50541086cc1c2c9214b714","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"date":"2020-11-18 14:37:36.000000000","message":"Uploaded patch set 4: New patch set was added with same tree, parent, and commit message as Patch Set 3.","accounts_in_message":[],"_revision_number":4},{"id":"0bcde1b7c98306c24afa7cf47768cdc50c5a4978","tag":"autogenerated:gerrit:setTopic","author":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"date":"2020-11-18 14:38:09.000000000","message":"Topic set to tvix","accounts_in_message":[],"_revision_number":4},{"id":"efb194a31cbba3dfd02e21e233a5f7991c2ef5c2","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2020-11-18 14:38:47.000000000","message":"Patch Set 4:\n\nBuild of patchset 4 passed: https://buildkite.com/tvl/depot/builds/3694","accounts_in_message":[],"_revision_number":4},{"id":"35fc6fb7404d0a08643095f65f03d3452f4e44c3","author":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"date":"2020-11-18 22:10:47.000000000","message":"Patch Set 4: Code-Review+2","accounts_in_message":[],"_revision_number":4},{"id":"90d4912120eb5d0f55cab08f4f43c14038c588bf","tag":"autogenerated:gerrit:merged","author":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"date":"2020-11-19 00:29:42.000000000","message":"Change has been successfully rebased and submitted as 8d24a975f1d300f43485aa33e72187a016d23a49","accounts_in_message":[],"_revision_number":5},{"id":"df08fbace52076a838b3280c6789c8868e80d9a5","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2020-11-19 00:32:08.000000000","message":"Patch Set 5:\n\nBuild of patchset 5 passed: https://buildkite.com/tvl/depot/builds/3700","accounts_in_message":[],"_revision_number":5}],"current_revision_number":5,"current_revision":"8d24a975f1d300f43485aa33e72187a016d23a49","revisions":{"54edff26a5f0ee0148f28283b61d392874a43c48":{"kind":"REWORK","_number":1,"created":"2020-11-18 14:04:46.000000000","uploader":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"ref":"refs/changes/06/2106/1","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/06/2106/1","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/06/2106/1"}}},"commit":{"parents":[{"commit":"886c6ff7cbc49b024ae748e69ebe3c43d3ab5476","subject":"fix(tvix): Use mutable field for assigning proto fields","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d886c6ff7cbc49b024ae748e69ebe3c43d3ab5476"}]}],"author":{"name":"Griffin Smith","email":"grfn@gws.fyi","date":"2020-11-18 14:02:25.000000000","tz":-300},"committer":{"name":"Griffin Smith","email":"grfn@gws.fyi","date":"2020-11-18 14:02:25.000000000","tz":-300},"subject":"fix(tvix): Use copy constructor to add strings to protos","message":"fix(tvix): Use copy constructor to add strings to protos\n\nPassing a string directly to add_paths like this causes the proto class\nto take ownership over the string, meaning when it is destructed it\nwill *explicitly* free the string. When the string\u0027s actual owner (the\nderivation struct) then goes out of scope it\u0027ll get freed again, causing\na double-free.\n\nFixes: b/64\nChange-Id: I84235bed9104ff430a0acf686d4a96f1e2e9a897\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d54edff26a5f0ee0148f28283b61d392874a43c48"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d54edff26a5f0ee0148f28283b61d392874a43c48"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"886c6ff7cbc49b024ae748e69ebe3c43d3ab5476","is_merged_in_target_branch":false,"change_id":"I950a4eafb214e9113639ea54d2dfd4659b7be931","change_number":2104,"patch_set_number":7,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"816ffb223b1c38a66c09f8da9af76d56a4ff6a2b":{"kind":"REWORK","_number":2,"created":"2020-11-18 14:29:24.000000000","uploader":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"ref":"refs/changes/06/2106/2","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/06/2106/2","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/06/2106/2"}}},"commit":{"parents":[{"commit":"886c6ff7cbc49b024ae748e69ebe3c43d3ab5476","subject":"fix(tvix): Use mutable field for assigning proto fields","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d886c6ff7cbc49b024ae748e69ebe3c43d3ab5476"}]}],"author":{"name":"Griffin Smith","email":"grfn@gws.fyi","date":"2020-11-18 14:02:25.000000000","tz":-300},"committer":{"name":"Griffin Smith","email":"grfn@gws.fyi","date":"2020-11-18 14:28:48.000000000","tz":-300},"subject":"fix(tvix): Use copy constructor to add strings to protos","message":"fix(tvix): Use copy constructor to add strings to protos\n\nPassing a string directly to add_paths like this causes the proto class\nto take ownership over the string, meaning when it is destructed it\nwill *explicitly* free the string. When the string\u0027s actual owner (the\nderivation struct) then goes out of scope it\u0027ll get freed again, causing\na double-free. This fixes that to instead use the copy constructor to\nassign to a pointer to a new path, and covers the whole to_proto method\nwith a test.\n\nFixes: b/64\nChange-Id: I84235bed9104ff430a0acf686d4a96f1e2e9a897\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d816ffb223b1c38a66c09f8da9af76d56a4ff6a2b"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d816ffb223b1c38a66c09f8da9af76d56a4ff6a2b"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"886c6ff7cbc49b024ae748e69ebe3c43d3ab5476","is_merged_in_target_branch":false,"change_id":"I950a4eafb214e9113639ea54d2dfd4659b7be931","change_number":2104,"patch_set_number":7,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"17b98cdbc28c58256f1df48c8fbd5f66b5e04862":{"kind":"NO_CODE_CHANGE","_number":3,"created":"2020-11-18 14:32:54.000000000","uploader":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"ref":"refs/changes/06/2106/3","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/06/2106/3","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/06/2106/3"}}},"commit":{"parents":[{"commit":"886c6ff7cbc49b024ae748e69ebe3c43d3ab5476","subject":"fix(tvix): Use mutable field for assigning proto fields","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d886c6ff7cbc49b024ae748e69ebe3c43d3ab5476"}]}],"author":{"name":"Griffin Smith","email":"grfn@gws.fyi","date":"2020-11-18 14:02:25.000000000","tz":-300},"committer":{"name":"Griffin Smith","email":"grfn@gws.fyi","date":"2020-11-18 14:32:22.000000000","tz":-300},"subject":"fix(tvix): Use copy constructor to add strings to protos","message":"fix(tvix): Use copy constructor to add strings to protos\n\nPassing a string directly to add_paths like this causes the proto class\nto take ownership over the string, meaning when it is destructed it\nwill *explicitly* free the string. When the string\u0027s actual owner (the\nderivation struct) then goes out of scope it\u0027ll get freed again, causing\na double-free. This fixes that to instead use the copy constructor to\nassign to a pointer to a new path, and covers the whole to_proto method\nwith a rapidcheck test.\n\nFixes: b/64\nChange-Id: I84235bed9104ff430a0acf686d4a96f1e2e9a897\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d17b98cdbc28c58256f1df48c8fbd5f66b5e04862"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d17b98cdbc28c58256f1df48c8fbd5f66b5e04862"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"886c6ff7cbc49b024ae748e69ebe3c43d3ab5476","is_merged_in_target_branch":false,"change_id":"I950a4eafb214e9113639ea54d2dfd4659b7be931","change_number":2104,"patch_set_number":7,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"8d84e3456c9c445b157720b8735fbe95e8e37829":{"kind":"NO_CHANGE","_number":4,"created":"2020-11-18 14:37:36.000000000","uploader":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"ref":"refs/changes/06/2106/4","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/06/2106/4","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/06/2106/4"}}},"commit":{"parents":[{"commit":"e21bcebde480385cdb790202e0ed061e89752b56","subject":"fix(tvix): Use mutable field for assigning proto fields","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de21bcebde480385cdb790202e0ed061e89752b56"}]}],"author":{"name":"Griffin Smith","email":"grfn@gws.fyi","date":"2020-11-18 14:02:25.000000000","tz":-300},"committer":{"name":"Griffin Smith","email":"grfn@gws.fyi","date":"2020-11-18 14:37:30.000000000","tz":-300},"subject":"fix(tvix): Use copy constructor to add strings to protos","message":"fix(tvix): Use copy constructor to add strings to protos\n\nPassing a string directly to add_paths like this causes the proto class\nto take ownership over the string, meaning when it is destructed it\nwill *explicitly* free the string. When the string\u0027s actual owner (the\nderivation struct) then goes out of scope it\u0027ll get freed again, causing\na double-free. This fixes that to instead use the copy constructor to\nassign to a pointer to a new path, and covers the whole to_proto method\nwith a rapidcheck test.\n\nFixes: b/64\nChange-Id: I84235bed9104ff430a0acf686d4a96f1e2e9a897\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d8d84e3456c9c445b157720b8735fbe95e8e37829"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d8d84e3456c9c445b157720b8735fbe95e8e37829"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"e21bcebde480385cdb790202e0ed061e89752b56","is_merged_in_target_branch":false,"change_id":"I950a4eafb214e9113639ea54d2dfd4659b7be931","change_number":2104,"patch_set_number":8,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"8d24a975f1d300f43485aa33e72187a016d23a49":{"kind":"REWORK","_number":5,"created":"2020-11-19 00:29:42.000000000","uploader":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"},"ref":"refs/changes/06/2106/5","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/06/2106/5","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/06/2106/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/06/2106/5"}}},"commit":{"parents":[{"commit":"20e206a3f61c74d1a2994a614fa7eec49109f995","subject":"fix(tvix): Use mutable field for assigning proto fields","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d20e206a3f61c74d1a2994a614fa7eec49109f995"}]}],"author":{"name":"Griffin Smith","email":"grfn@gws.fyi","date":"2020-11-18 14:02:25.000000000","tz":-300},"committer":{"name":"glittershark","email":"grfn@gws.fyi","date":"2020-11-19 00:29:42.000000000","tz":0},"subject":"fix(tvix): Use copy constructor to add strings to protos","message":"fix(tvix): Use copy constructor to add strings to protos\n\nPassing a string directly to add_paths like this causes the proto class\nto take ownership over the string, meaning when it is destructed it\nwill *explicitly* free the string. When the string\u0027s actual owner (the\nderivation struct) then goes out of scope it\u0027ll get freed again, causing\na double-free. This fixes that to instead use the copy constructor to\nassign to a pointer to a new path, and covers the whole to_proto method\nwith a rapidcheck test.\n\nFixes: b/64\nChange-Id: I84235bed9104ff430a0acf686d4a96f1e2e9a897\nReviewed-on: https://cl.tvl.fyi/c/depot/+/2106\nReviewed-by: tazjin \u003cmail@tazj.in\u003e\nTested-by: BuildkiteCI\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d8d24a975f1d300f43485aa33e72187a016d23a49"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d8d24a975f1d300f43485aa33e72187a016d23a49"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"20e206a3f61c74d1a2994a614fa7eec49109f995","is_merged_in_target_branch":true,"change_id":"I950a4eafb214e9113639ea54d2dfd4659b7be931","change_number":2104,"patch_set_number":9,"change_status":"MERGED"}],"branch":"refs/heads/canon","description":"Rebase"}},"requirements":[],"submit_records":[{"status":"CLOSED","labels":[{"label":"Conformant-Commit-Message","status":"OK","applied_by":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"}},{"label":"All-Comments-Resolved","status":"OK","applied_by":{"_account_id":1000010,"name":"aspen","email":"root@gws.fyi","username":"aspen"}},{"label":"Verified","status":"OK","applied_by":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"}}]},{"status":"CLOSED"}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dCustom-Rule"],"failing_atoms":[]}},{"name":"All-Comments-Resolved","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:All-Comments-Resolved\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:All-Comments-Resolved\u003dCustom-Rule"],"failing_atoms":[]}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dCustom-Rule"],"failing_atoms":[]}},{"name":"Custom-Rule","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"rule:Custom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["Custom-Rule"],"failing_atoms":[]}},{"name":"Conformant-Commit-Message","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Conformant-Commit-Message\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Conformant-Commit-Message\u003dCustom-Rule"],"failing_atoms":[]}}]}
