{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":322484700,"defaultBranch":"main","name":"jj","ownerLogin":"martinvonz","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2020-12-18T04:05:27.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/891642?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1717266968.0","currentOid":""},"activityList":{"items":[{"before":"21b9453d59e87d1d5db4f52ef8204e40852e6c28","after":"b1e5ca5348a4f818eeda2d3e307e77dd0936bceb","ref":"refs/heads/main","pushedAt":"2024-06-02T01:42:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ilyagr","name":"Ilya Grigoriev","path":"/ilyagr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4123047?s=80&v=4"},"commit":{"message":"cli `git push`: clearer user-facing messages\n\n\"Move forward\" instead of \"Move\", \"Move sideways\" or \"Move backward\"\ninstead of (now misleading) \"Force...\".","shortMessageHtmlLink":"cli git push: clearer user-facing messages"}},{"before":"2714976b499dbd91987233eaa3fabe967ca44c8d","after":"17be663ea4fb72e7737a36c2187f50e2e4d56b98","ref":"refs/heads/gh-pages","pushedAt":"2024-06-02T01:39:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deployed 21b9453 to prerelease with MkDocs 1.6.0 and mike 2.1.1","shortMessageHtmlLink":"Deployed 21b9453 to prerelease with MkDocs 1.6.0 and mike 2.1.1"}},{"before":"2c9132adfcb1d4d591c0b93be4da0d6b9e746497","after":"21b9453d59e87d1d5db4f52ef8204e40852e6c28","ref":"refs/heads/main","pushedAt":"2024-06-02T01:38:23.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"ilyagr","name":"Ilya Grigoriev","path":"/ilyagr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4123047?s=80&v=4"},"commit":{"message":"`jj help`: note that `move`, `checkout`, and `merge` as deprecated","shortMessageHtmlLink":"jj help: note that move, checkout, and merge as deprecated"}},{"before":"11c15223dad6f158d06c390b270085258546dcdb","after":"2714976b499dbd91987233eaa3fabe967ca44c8d","ref":"refs/heads/gh-pages","pushedAt":"2024-06-02T01:29:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deployed 2c9132a to prerelease with MkDocs 1.6.0 and mike 2.1.1","shortMessageHtmlLink":"Deployed 2c9132a to prerelease with MkDocs 1.6.0 and mike 2.1.1"}},{"before":"a30df323bdb6286504697bf014a3b100ad999be5","after":"2c9132adfcb1d4d591c0b93be4da0d6b9e746497","ref":"refs/heads/main","pushedAt":"2024-06-02T01:28:54.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"yuja","name":"Yuya Nishihara","path":"/yuja","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/172069?s=80&v=4"},"commit":{"message":"revset: remove RevsetExpression::StringPattern hack\n\nIt's no longer needed since we have proper AST tree now.","shortMessageHtmlLink":"revset: remove RevsetExpression::StringPattern hack"}},{"before":"1303564fee27dc2ad902b3845f6c408fded0d660","after":"4f644c0993f3e863662f1497aff83fdeb2b2a5cc","ref":"refs/heads/bnjmnt4n/push-ysquxrmpzsyt","pushedAt":"2024-06-01T18:39:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"bnjmnt4n","name":"Benjamin Tan","path":"/bnjmnt4n","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/813865?s=80&v=4"},"commit":{"message":"new: allow `--insert-before` and `--insert-after` simultaneously","shortMessageHtmlLink":"new: allow --insert-before and --insert-after simultaneously"}},{"before":null,"after":"1303564fee27dc2ad902b3845f6c408fded0d660","ref":"refs/heads/bnjmnt4n/push-ysquxrmpzsyt","pushedAt":"2024-06-01T18:36:08.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"bnjmnt4n","name":"Benjamin Tan","path":"/bnjmnt4n","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/813865?s=80&v=4"},"commit":{"message":"new: allow `--insert-before` and `--insert-after` simultaneously","shortMessageHtmlLink":"new: allow --insert-before and --insert-after simultaneously"}},{"before":"07bfe4a0f2a7fe4bd504ff1d96719bcb5406ff42","after":"11c15223dad6f158d06c390b270085258546dcdb","ref":"refs/heads/gh-pages","pushedAt":"2024-06-01T18:20:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deployed a30df32 to prerelease with MkDocs 1.6.0 and mike 2.1.1","shortMessageHtmlLink":"Deployed a30df32 to prerelease with MkDocs 1.6.0 and mike 2.1.1"}},{"before":"5e7cb3435e0c8febc4648ba6651ba527cb0350b3","after":"a30df323bdb6286504697bf014a3b100ad999be5","ref":"refs/heads/main","pushedAt":"2024-06-01T18:19:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ilyagr","name":"Ilya Grigoriev","path":"/ilyagr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4123047?s=80&v=4"},"commit":{"message":"`jj git push` docs: document safety checks\n\nAs discussed in\nhttps://discord.com/channels/968932220549103686/1226363798483636265/1226415448615288864","shortMessageHtmlLink":"jj git push docs: document safety checks"}},{"before":"cc635f9d5dc4f525ffa363a0e84216778d34cc7d","after":"1f903b3c62214d5c8051c89e0e731d564316eebf","ref":"refs/heads/bnjmnt4n/push-osorqwynqkoo","pushedAt":"2024-06-01T10:39:59.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"bnjmnt4n","name":"Benjamin Tan","path":"/bnjmnt4n","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/813865?s=80&v=4"},"commit":{"message":"backout: include backed out commit's subject in new commit","shortMessageHtmlLink":"backout: include backed out commit's subject in new commit"}},{"before":"a1905c39d2c241182a38054ae68fa00c70395fa1","after":"07bfe4a0f2a7fe4bd504ff1d96719bcb5406ff42","ref":"refs/heads/gh-pages","pushedAt":"2024-06-01T02:01:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deployed 5e7cb34 to prerelease with MkDocs 1.6.0 and mike 2.1.1","shortMessageHtmlLink":"Deployed 5e7cb34 to prerelease with MkDocs 1.6.0 and mike 2.1.1"}},{"before":"4c57a8868fa175ada435bce96e3805da8607f4b9","after":"5e7cb3435e0c8febc4648ba6651ba527cb0350b3","ref":"refs/heads/main","pushedAt":"2024-06-01T02:01:16.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"yuja","name":"Yuya Nishihara","path":"/yuja","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/172069?s=80&v=4"},"commit":{"message":"git: unset unborn HEAD ref on export\n\nOtherwise, newly created default branch would be re-imported as a new Git HEAD.\nThis could be addressed by cmd_git_init(), but the same situation can be\ncrafted by using \"git checkout -b\".","shortMessageHtmlLink":"git: unset unborn HEAD ref on export"}},{"before":null,"after":"7cc06861430e2e021123725c0cb6db70ef63764c","ref":"refs/heads/push-yurquzoskpmz","pushedAt":"2024-06-01T01:18:36.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"},"commit":{"message":"merged_tree: make tree builder attempt to resolve conflicts\n\nAs we discovered in the `jj fix` tests,\n`MergedTreeBuilder::write_tree()` doesn't try to resolve conflicts,\nnot even trivial ones. This patch fixes that.","shortMessageHtmlLink":"merged_tree: make tree builder attempt to resolve conflicts"}},{"before":"e93c2d6c35f0e2f2b5b5c14995daf4762e5e73a0","after":"9f8c46a060575f2025e98fa79642eb2066425e4f","ref":"refs/heads/push-yowrlmvyxssp","pushedAt":"2024-05-31T21:34:29.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"},"commit":{"message":"fix: don't store ToolInput as value in map","shortMessageHtmlLink":"fix: don't store ToolInput as value in map"}},{"before":"c5f9c9e1474b933f5900dfd4835a985aff9870f3","after":null,"ref":"refs/heads/dependabot/github_actions/github-dependencies-544203f129","pushedAt":"2024-05-31T15:45:53.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"}},{"before":"0fd616960f68f91efc25c0080cb150b2142fef8f","after":"4c57a8868fa175ada435bce96e3805da8607f4b9","ref":"refs/heads/main","pushedAt":"2024-05-31T15:45:52.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"github: bump github/codeql-action in the github-dependencies group\n\nBumps the github-dependencies group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).\n\n\nUpdates `github/codeql-action` from 3.25.6 to 3.25.7\n- [Release notes](https://github.com/github/codeql-action/releases)\n- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/github/codeql-action/compare/9fdb3e49720b44c48891d036bb502feb25684276...f079b8493333aace61c81488f8bd40919487bd9f)\n\n---\nupdated-dependencies:\n- dependency-name: github/codeql-action\n dependency-type: direct:production\n update-type: version-update:semver-patch\n dependency-group: github-dependencies\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"github: bump github/codeql-action in the github-dependencies group"}},{"before":"42b86c7ae7cef0beb1e09dc4899d7936b76f8566","after":null,"ref":"refs/heads/dependabot/cargo/cargo-dependencies-1c4fca089f","pushedAt":"2024-05-31T15:45:37.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"}},{"before":"458580cee2fd1ae8de7e6e09c9f50ceebf3b9161","after":"0fd616960f68f91efc25c0080cb150b2142fef8f","ref":"refs/heads/main","pushedAt":"2024-05-31T15:45:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"cargo: bump tokio from 1.37.0 to 1.38.0 in the cargo-dependencies group\n\nBumps the cargo-dependencies group with 1 update: [tokio](https://github.com/tokio-rs/tokio).\n\n\nUpdates `tokio` from 1.37.0 to 1.38.0\n- [Release notes](https://github.com/tokio-rs/tokio/releases)\n- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.37.0...tokio-1.38.0)\n\n---\nupdated-dependencies:\n- dependency-name: tokio\n dependency-type: direct:production\n update-type: version-update:semver-minor\n dependency-group: cargo-dependencies\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"cargo: bump tokio from 1.37.0 to 1.38.0 in the cargo-dependencies group"}},{"before":null,"after":"42b86c7ae7cef0beb1e09dc4899d7936b76f8566","ref":"refs/heads/dependabot/cargo/cargo-dependencies-1c4fca089f","pushedAt":"2024-05-31T15:35:48.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"cargo: bump tokio from 1.37.0 to 1.38.0 in the cargo-dependencies group\n\nBumps the cargo-dependencies group with 1 update: [tokio](https://github.com/tokio-rs/tokio).\n\n\nUpdates `tokio` from 1.37.0 to 1.38.0\n- [Release notes](https://github.com/tokio-rs/tokio/releases)\n- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.37.0...tokio-1.38.0)\n\n---\nupdated-dependencies:\n- dependency-name: tokio\n dependency-type: direct:production\n update-type: version-update:semver-minor\n dependency-group: cargo-dependencies\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"cargo: bump tokio from 1.37.0 to 1.38.0 in the cargo-dependencies group"}},{"before":null,"after":"c5f9c9e1474b933f5900dfd4835a985aff9870f3","ref":"refs/heads/dependabot/github_actions/github-dependencies-544203f129","pushedAt":"2024-05-31T15:08:46.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"github: bump github/codeql-action in the github-dependencies group\n\nBumps the github-dependencies group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).\n\n\nUpdates `github/codeql-action` from 3.25.6 to 3.25.7\n- [Release notes](https://github.com/github/codeql-action/releases)\n- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/github/codeql-action/compare/9fdb3e49720b44c48891d036bb502feb25684276...f079b8493333aace61c81488f8bd40919487bd9f)\n\n---\nupdated-dependencies:\n- dependency-name: github/codeql-action\n dependency-type: direct:production\n update-type: version-update:semver-patch\n dependency-group: github-dependencies\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"github: bump github/codeql-action in the github-dependencies group"}},{"before":"404f31cbc1fa2f603e83630fe1229d88a9694569","after":"458580cee2fd1ae8de7e6e09c9f50ceebf3b9161","ref":"refs/heads/main","pushedAt":"2024-05-31T12:28:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mlcui-corp","name":"mlcui","path":"/mlcui-corp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/74218657?s=80&v=4"},"commit":{"message":"working_copy: Add `is_file_states_sorted` to tree state proto\n\nSee #2651 and a935a4f70c9c4c4a76009f9aee3bdaa1f7b9084e for more\nbackground.\n\nThis speeds up `jj log` in a large repo with watchman enabled by around\n9%:\n\n```\n$ hyperfine --sort command --warmup 3 --runs 20 -L bin \\\njj-before,jj-after \"target/release/{bin} -R ~/chromiumjj/src log\"\nBenchmark 1: target/release/jj-before -R ~/chromiumjj/src log\n Time (mean ± σ): 788.3 ms ± 3.4 ms [User: 618.6 ms, System: 168.8 ms]\n Range (min … max): 783.1 ms … 793.3 ms 20 runs\n\nBenchmark 2: target/release/jj-after -R ~/chromiumjj/src log\n Time (mean ± σ): 713.4 ms ± 5.2 ms [User: 536.1 ms, System: 176.2 ms]\n Range (min … max): 706.6 ms … 724.7 ms 20 runs\n\nRelative speed comparison\n 1.11 ± 0.01 target/release/jj-before -R ~/chromiumjj/src log\n 1.00 target/release/jj-after -R ~/chromiumjj/src log\n```","shortMessageHtmlLink":"working_copy: Add is_file_states_sorted to tree state proto"}},{"before":"e1cecc2f68bf7415d26f049b6fbac5c24074b491","after":"a1905c39d2c241182a38054ae68fa00c70395fa1","ref":"refs/heads/gh-pages","pushedAt":"2024-05-31T01:28:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deployed 404f31c to prerelease with MkDocs 1.6.0 and mike 2.1.1","shortMessageHtmlLink":"Deployed 404f31c to prerelease with MkDocs 1.6.0 and mike 2.1.1"}},{"before":"20816cf71b6adb352f5539529343e062ef27f555","after":null,"ref":"refs/heads/push-ktvkyyrulzom","pushedAt":"2024-05-31T01:27:39.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"}},{"before":"e0e123873ba5060fd3b38c8f1c11b9cc551c4874","after":"404f31cbc1fa2f603e83630fe1229d88a9694569","ref":"refs/heads/main","pushedAt":"2024-05-31T01:27:39.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"},"commit":{"message":"backend: add error variant for access denied, handle when diffing\n\nSome backends, like the one we have at Google, can restrict access to\ncertain files. For such files, if they return a regular\n`BackendError::ReadObject`, then that will terminate iteration in many\ncases (e.g. when diffing or listing files). This patch adds a new\nerror variant for them to return instead, plus handling of such errors\nin diff output and in the working copy.\n\nIn order to test the feature, I added a new commit backend that\nreturns the new `ReadAccessDenied` error when the caller tries to read\ncertain objects.","shortMessageHtmlLink":"backend: add error variant for access denied, handle when diffing"}},{"before":"ff79a0206df6c7c205b70e09688a637d8b594a06","after":"20816cf71b6adb352f5539529343e062ef27f555","ref":"refs/heads/push-ktvkyyrulzom","pushedAt":"2024-05-31T01:18:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"},"commit":{"message":"backend: add error variant for access denied, handle when diffing\n\nSome backends, like the one we have at Google, can restrict access to\ncertain files. For such files, if they return a regular\n`BackendError::ReadObject`, then that will terminate iteration in many\ncases (e.g. when diffing or listing files). This patch adds a new\nerror variant for them to return instead, plus handling of such errors\nin diff output and in the working copy.\n\nIn order to test the feature, I added a new commit backend that\nreturns the new `ReadAccessDenied` error when the caller tries to read\ncertain objects.","shortMessageHtmlLink":"backend: add error variant for access denied, handle when diffing"}},{"before":"1480d7071381570f14164202c107095579bd2ab4","after":"ff79a0206df6c7c205b70e09688a637d8b594a06","ref":"refs/heads/push-ktvkyyrulzom","pushedAt":"2024-05-31T01:13:01.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"},"commit":{"message":"backend: add error variant for access denied, handle when diffing\n\nSome backends, like the one we have at Google, can restrict access to\ncertain files. For such files, if they return a regular\n`BackendError::ReadObject`, then that will terminate iteration in many\ncases (e.g. when diffing or listing files). This patch adds a new\nerror variant for them to return instead, plus handling of such errors\nin diff output and in the working copy.\n\nIn order to test the feature, I added a new commit backend that\nreturns the new `ReadAccessDenied` error when the caller tries to read\ncertain objects.","shortMessageHtmlLink":"backend: add error variant for access denied, handle when diffing"}},{"before":"32f88a032217570f291f0fdb8124138a598b8d20","after":"1480d7071381570f14164202c107095579bd2ab4","ref":"refs/heads/push-ktvkyyrulzom","pushedAt":"2024-05-31T01:11:06.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"},"commit":{"message":"backend: add error variant for access denied, handle when diffing\n\nSome backends, like the one we have at Google, can restrict access to\ncertain files. For such files, if they return a regular\n`BackendError::ReadObject`, then that will terminate iteration in many\ncases (e.g. when diffing or listing files). This patch adds a new\nerror variant for them to return instead, plus handling of such errors\nin diff output and in the working copy.\n\nIn order to test the feature, I added a new commit backend that\nreturns the new `ReadAccessDenied` error when the caller tries to read\ncertain objects.","shortMessageHtmlLink":"backend: add error variant for access denied, handle when diffing"}},{"before":"0447a5b175f4cd525b14425b2f5f9d65cba3ac3d","after":"32f88a032217570f291f0fdb8124138a598b8d20","ref":"refs/heads/push-ktvkyyrulzom","pushedAt":"2024-05-31T00:57:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"},"commit":{"message":"backend: add error variant for access denied, handle when diffing\n\nSome backends, like the one we have at Google, can restrict access to\ncertain files. For such files, if they return a regular\n`BackendError::ReadObject`, then that will terminate iteration in many\ncases (e.g. when diffing or listing files). This patch adds a new\nerror variant for them to return instead, plus handling of such errors\nin diff output and in the working copy.\n\nIn order to test the feature, I added a new commit backend that\nreturns the new `ReadAccessDenied` error when the caller tries to read\ncertain objects.","shortMessageHtmlLink":"backend: add error variant for access denied, handle when diffing"}},{"before":"a6aa6a6d467b469015f580240ee35266795f942f","after":"0447a5b175f4cd525b14425b2f5f9d65cba3ac3d","ref":"refs/heads/push-ktvkyyrulzom","pushedAt":"2024-05-31T00:51:45.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"},"commit":{"message":"backend: add error variant for access denied, handle when diffing\n\nSome backends, like the one we have at Google, can restrict access to\ncertain files. For such files, if they return a regular\n`BackendError::ReadObject`, then that will terminate iteration in many\ncases (e.g. when diffing or listing files). This patch adds a new\nerror variant for them to return instead, plus handling of such errors\nin diff output and in the working copy.\n\nIn order to test the feature, I added a new commit backend that\nreturns the new `ReadAccessDenied` error when the caller tries to read\ncertain objects.","shortMessageHtmlLink":"backend: add error variant for access denied, handle when diffing"}},{"before":"e4d9e242548dcafc3c8d53bfb805faca763cc1fe","after":"a6aa6a6d467b469015f580240ee35266795f942f","ref":"refs/heads/push-ktvkyyrulzom","pushedAt":"2024-05-31T00:46:55.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"martinvonz","name":"Martin von Zweigbergk","path":"/martinvonz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/891642?s=80&v=4"},"commit":{"message":"backend: add error variant for access denied, handle when diffing\n\nSome backends, like the one we have at Google, can restrict access to\ncertain files. For such files, if they return a regular\n`BackendError::ReadObject`, then that will terminate iteration in many\ncases (e.g. when diffing or listing files). This patch adds a new\nerror variant for them to return instead, plus handling of such errors\nin diff output and in the working copy.\n\nIn order to test the feature, I added a new commit backend that\nreturns the new `ReadAccessDenied` error when the caller tries to read\ncertain objects.","shortMessageHtmlLink":"backend: add error variant for access denied, handle when diffing"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEWffjmAA","startCursor":null,"endCursor":null}},"title":"Activity · martinvonz/jj"}