)]}'
{"id":"depot~2849","triplet_id":"depot~canon~I8363b9825c6c730e624eb8016a5482d63cbc1890","project":"depot","branch":"canon","hashtags":[],"change_id":"I8363b9825c6c730e624eb8016a5482d63cbc1890","subject":"feat(web/bubblegum): report some errors to the user via HTTP","status":"MERGED","created":"2021-04-05 00:00:33.000000000","updated":"2021-04-05 10:55:31.000000000","submitted":"2021-04-05 10:54:32.000000000","submitter":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"2850","meta_rev_id":"ff88484ad52af54a7041be1deb69e66b22a2de33","_number":2849,"virtual_id_number":2849,"owner":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"actions":{},"labels":{"Code-Review":{"approved":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"all":[{"tag":"autogenerated:gerrit:merged","value":2,"date":"2021-04-05 10:54:32.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},{"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":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},{"tag":"autogenerated:gerrit:merged","value":1,"date":"2021-04-05 10:54:32.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":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},{"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":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"all":[{"value":0,"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},{"value":0,"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}]},"Conformant-Commit-Message":{"approved":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"all":[{"value":0,"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},{"value":0,"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}]}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2021-04-05 00:02:31.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"}],"messages":[{"id":"11e790184b4e02b9725ecaac1b05805c6aebd613","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 00:00:33.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"f72521f614337089989e864484a071a4976c759b","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-05 00:02:31.000000000","message":"Patch Set 1: Verified+1\n\nBuild of patchset 1 passed: https://buildkite.com/tvl/depot/builds/6142","accounts_in_message":[],"_revision_number":1},{"id":"5d6ceeabf7aceece62dc5b4b221ebfd2fdef4698","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 00:43:40.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.","accounts_in_message":[],"_revision_number":2},{"id":"94885a56dee69fe32cef70c017de99e416106abf","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-05 00:44:40.000000000","message":"Patch Set 2: Verified+1\n\nBuild of patchset 2 passed: https://buildkite.com/tvl/depot/builds/6145","accounts_in_message":[],"_revision_number":2},{"id":"dbbe8d07f06315f6a676505780f6060c953468b5","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 10:51:58.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"44b8a89d184c8d14b6b4026ffcad7f0ef058f984","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-05 10:53:02.000000000","message":"Patch Set 3: Verified+1\n\nBuild of patchset 3 passed: https://buildkite.com/tvl/depot/builds/6157","accounts_in_message":[],"_revision_number":3},{"id":"5e75f5dbf12a939d923604ac543b0c1f2853484f","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 10:53:52.000000000","message":"Patch Set 3: Code-Review+2","accounts_in_message":[],"_revision_number":3},{"id":"329df85477383ef3355efdcfbbffb3f25f5e78c4","tag":"autogenerated:gerrit:merged","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 10:54:32.000000000","message":"Change has been successfully rebased and submitted as 1c0f89f4cadba4957e95fc80b25b1b8b6dd1a3b3","accounts_in_message":[],"_revision_number":4},{"id":"ff88484ad52af54a7041be1deb69e66b22a2de33","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-05 10:55:31.000000000","message":"Patch Set 4:\n\nBuild of patchset 4 passed: https://buildkite.com/tvl/depot/builds/6162","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"1c0f89f4cadba4957e95fc80b25b1b8b6dd1a3b3","revisions":{"36143b974030ab00fff9c237849e4a12f9154dd5":{"kind":"REWORK","_number":1,"created":"2021-04-05 00:00:33.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/49/2849/1","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/49/2849/1","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/49/2849/1"}}},"commit":{"parents":[{"commit":"f5432d6392bbc63f8e8ecfb28361e4623bcf63f7","subject":"feat(users/sterni/clock): dot time clock","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003df5432d6392bbc63f8e8ecfb28361e4623bcf63f7"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-04 23:53:21.000000000","tz":120},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-04 23:56:59.000000000","tz":120},"subject":"feat(web/bubblegum): report some errors to the user via HTTP","message":"feat(web/bubblegum): report some errors to the user via HTTP\n\nWe can actually catch some errors that may be generated in bubblegum\napplications where we can report them to the user in a way that doesn\u0027t\nrequire curl -vv:\n\n* Type errors in the status argument: By removing yants completely we\n  not only (presumably) gain some performance, but also the ability to\n  return an internal server error on an unexpected type instead of\n  throwing.\n\n* User generated evaluation errors: by using builtins.tryEval we can\n  catch throws and asserts the user inserted when generating the body\n  and report to the user that something went wrong. To do: also support\n  for the headers.\n\nChange-Id: I8363b9825c6c730e624eb8016a5482d63cbc1890\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d36143b974030ab00fff9c237849e4a12f9154dd5"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d36143b974030ab00fff9c237849e4a12f9154dd5"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"f5432d6392bbc63f8e8ecfb28361e4623bcf63f7","is_merged_in_target_branch":false,"change_id":"Ib25dd7f38a8e3097bcf6818156e7650e29f3cfe3","change_number":2652,"patch_set_number":16,"change_status":"ABANDONED"}],"branch":"refs/heads/canon"},"7e0fe7e6d579b4c87c8ef668e02ab28cf57d31c1":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2021-04-05 00:43:40.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/49/2849/2","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/49/2849/2","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/49/2849/2"}}},"commit":{"parents":[{"commit":"cbd6f5bbae95c26b1e67993ac609e83fa4b117fb","subject":"feat(tverskoy): Configure whitby binary cache","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dcbd6f5bbae95c26b1e67993ac609e83fa4b117fb"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-04 23:53:21.000000000","tz":120},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-05 00:43:33.000000000","tz":120},"subject":"feat(web/bubblegum): report some errors to the user via HTTP","message":"feat(web/bubblegum): report some errors to the user via HTTP\n\nWe can actually catch some errors that may be generated in bubblegum\napplications where we can report them to the user in a way that doesn\u0027t\nrequire curl -vv:\n\n* Type errors in the status argument: By removing yants completely we\n  not only (presumably) gain some performance, but also the ability to\n  return an internal server error on an unexpected type instead of\n  throwing.\n\n* User generated evaluation errors: by using builtins.tryEval we can\n  catch throws and asserts the user inserted when generating the body\n  and report to the user that something went wrong. To do: also support\n  for the headers.\n\nChange-Id: I8363b9825c6c730e624eb8016a5482d63cbc1890\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7e0fe7e6d579b4c87c8ef668e02ab28cf57d31c1"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7e0fe7e6d579b4c87c8ef668e02ab28cf57d31c1"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"cbd6f5bbae95c26b1e67993ac609e83fa4b117fb","is_merged_in_target_branch":true,"change_id":"I51d4b42998d6005da15e4d0bed82062cd4e36fe9","change_number":2848,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"bcac2fd5ac8aa1a7ee48768c3b76030384547471":{"kind":"REWORK","_number":3,"created":"2021-04-05 10:51:58.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/49/2849/3","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/49/2849/3","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/49/2849/3"}}},"commit":{"parents":[{"commit":"cbd6f5bbae95c26b1e67993ac609e83fa4b117fb","subject":"feat(tverskoy): Configure whitby binary cache","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dcbd6f5bbae95c26b1e67993ac609e83fa4b117fb"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-04 23:53:21.000000000","tz":120},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-05 10:50:58.000000000","tz":120},"subject":"feat(web/bubblegum): report some errors to the user via HTTP","message":"feat(web/bubblegum): report some errors to the user via HTTP\n\nWe can actually catch some errors that may be generated in bubblegum\napplications where we can report them to the user in a way that doesn\u0027t\nrequire curl -vv:\n\n* Type errors in the status argument: By removing yants completely we\n  not only (presumably) gain some performance, but also the ability to\n  return an internal server error on an unexpected type instead of\n  throwing.\n\n* User generated evaluation errors: by using builtins.tryEval we can\n  catch throws and asserts the user inserted when generating the body\n  and report to the user that something went wrong. To do: also support\n  for the headers.\n\nChange-Id: I8363b9825c6c730e624eb8016a5482d63cbc1890\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dbcac2fd5ac8aa1a7ee48768c3b76030384547471"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dbcac2fd5ac8aa1a7ee48768c3b76030384547471"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"cbd6f5bbae95c26b1e67993ac609e83fa4b117fb","is_merged_in_target_branch":true,"change_id":"I51d4b42998d6005da15e4d0bed82062cd4e36fe9","change_number":2848,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"1c0f89f4cadba4957e95fc80b25b1b8b6dd1a3b3":{"kind":"NO_CODE_CHANGE","_number":4,"created":"2021-04-05 10:54:32.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/49/2849/4","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/49/2849/4","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/49/2849/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/49/2849/4"}}},"commit":{"parents":[{"commit":"cbd6f5bbae95c26b1e67993ac609e83fa4b117fb","subject":"feat(tverskoy): Configure whitby binary cache","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dcbd6f5bbae95c26b1e67993ac609e83fa4b117fb"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-04 23:53:21.000000000","tz":120},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-05 10:54:32.000000000","tz":0},"subject":"feat(web/bubblegum): report some errors to the user via HTTP","message":"feat(web/bubblegum): report some errors to the user via HTTP\n\nWe can actually catch some errors that may be generated in bubblegum\napplications where we can report them to the user in a way that doesn\u0027t\nrequire curl -vv:\n\n* Type errors in the status argument: By removing yants completely we\n  not only (presumably) gain some performance, but also the ability to\n  return an internal server error on an unexpected type instead of\n  throwing.\n\n* User generated evaluation errors: by using builtins.tryEval we can\n  catch throws and asserts the user inserted when generating the body\n  and report to the user that something went wrong. To do: also support\n  for the headers.\n\nChange-Id: I8363b9825c6c730e624eb8016a5482d63cbc1890\nReviewed-on: https://cl.tvl.fyi/c/depot/+/2849\nTested-by: BuildkiteCI\nReviewed-by: sterni \u003csternenseemann@systemli.org\u003e\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d1c0f89f4cadba4957e95fc80b25b1b8b6dd1a3b3"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d1c0f89f4cadba4957e95fc80b25b1b8b6dd1a3b3"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"cbd6f5bbae95c26b1e67993ac609e83fa4b117fb","is_merged_in_target_branch":true,"change_id":"I51d4b42998d6005da15e4d0bed82062cd4e36fe9","change_number":2848,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"}},"requirements":[],"submit_records":[{"status":"CLOSED","labels":[{"label":"Conformant-Commit-Message","status":"OK","applied_by":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"}},{"label":"All-Comments-Resolved","status":"OK","applied_by":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"}},{"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":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"}}]},{"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":[]}}]}
