{"push_id":917223605,"size":16,"distinct_size":16,"ref":"refs/heads/master","head":"d7b9aab9735583cf49e7488439e85e55790fa6d4","before":"493bde1cf6c31e836023887166697e642c08ce8b","commits":[{"sha":"44fd0aca3b1b19a5e388cbc83da868c3bbad6775","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"SubmitTypeRecord: Make fields final and document them\n\nThese are never assigned after construction, so just make them final\nto avoid confusion, and populate them directly using static factory\nmethods.\n\nChange-Id: I57a8dbd07dcdaa0ac37a9f68d5e4849df30dea4d","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/44fd0aca3b1b19a5e388cbc83da868c3bbad6775"},{"sha":"be4d7a7c9d0ae043d7131534336a421b18e58609","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"Store SubmitTypeRecord lazily in ChangeData\n\nAdd convenience method isOk() to SubmitTypeRecord to make it easier\nfor callers to check whether this result was successful.\n\nChange-Id: I1551d5fdce208631f4d97d815fa882ff44502467","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/be4d7a7c9d0ae043d7131534336a421b18e58609"},{"sha":"ace3210a622f6affb5755716b6262e7f79325b19","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"Expose submit type in ChangeInfo\n\nAs noted in the removed TODO, this is already needed to compute the\nkey for the mergeability cache, so including it in the ChangeInfo is\nfree.\n\nThe submit type always corresponds to current patch set, for the same\nreason the mergeable bit does: only the current patch may be submitted\nat all. It is also only shown in the UI for the current patch set.\n\nChange-Id: I62aecac9bed035e8c3199e78691c0e01f3564151","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/ace3210a622f6affb5755716b6262e7f79325b19"},{"sha":"501db2475611d12f6d4e9f64fd673d675d1f2dbe","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"ChangeScreen: Use submit type from ChangeInfo\n\nAvoids an extra request to /revisions/current/submit_type.\n\nChange-Id: Iefc1531f3b2b64a8ecf58007d8f2e47df0771ca9","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/501db2475611d12f6d4e9f64fd673d675d1f2dbe"},{"sha":"974a947fc85c4ded85f9c83a266d80ddd9b0c82e","author":{"email":"aa743a0aaec8f7d7a1f01442503957f4d7a2d634@ostrovsky.org","name":"David Ostrovsky"},"message":"Buck: Fix typo in gerrit_plugin.bucklet\n\nTypo that was introduced in Ia6cf1bad wasn't discovered for years.\nWhen plugin is trying to add classpath rule:\n\n  java_library(\n    name = 'classpath',\n    deps = GERRIT_GWT_API + GERRIT_PLUGIN_API + [\n      ':<plugin>__plugin',\n    ],\n  )\n\nthen Buck is reporting non-existing rule. Note that in bucklets\nthe correct constant is defined:\n\n  GERRIT_GWT_API = ['//lib/gerrit:gwtui-api']\n\nChange-Id: Ice8418d27b08a8ee7925a4040c3a18ce5cd553f2","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/974a947fc85c4ded85f9c83a266d80ddd9b0c82e"},{"sha":"9c259f32a73e038691b63378538c9849736de0de","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"Remove unnecessary calls to SubmitRuleEvaluator#setPatchSet\n\nThis defaults to currentPatchSet() from the passed in ChangeData.\n\nChange-Id: I328aa1897631177a10d48bd0a330636e6079e19f","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/9c259f32a73e038691b63378538c9849736de0de"},{"sha":"479e7006315c14a8b4ead86f6e354b8648a4949c","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"MergeOp: Check commit status separately after merge strategies\n\nThe updateChangeStatus method was a little weird, basically following\ndisjoint codepaths depending on the value of the boolean dryRun\nargument. The first time through, which happened immediately after\nrunning the submit strategies, might throw exceptions for missing\ndependencies or other invalid statuses. The second time through, after\nexecuting ref updates, was actually responsible for setting the status\non the change objects in the database. (It could theoretically throw\nin the same cases as the first time it was called, but those should\nhave already thrown already so it's essentially dead code.)\n\nSplit the first set of checks into a new method,\ncheckMergeStrategyResults, that has an explicit name for what it does,\nand uses the same problem/failFast structure as we've started adopting\nelsewhere.\n\nChange-Id: I3ea6e5a47d3173749773c0cf7fa175c8048b1a0a","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/479e7006315c14a8b4ead86f6e354b8648a4949c"},{"sha":"b958579cb1f0293f982e0d0757b93d02cec32163","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"MergeOp: Simplify updateChangeStatus\n\nAfter updating branch tips, we only need to consider status codes that\nindicate successful merging, and add appropriate messages for those\nstatus codes. The rest of the status codes should have been caught in\nthe previous call to checkMergeStrategyResults.\n\nThis also means we no longer need the setNew method, which was left\nover from when changes were moved into state SUBMITTED at the\nbeginning of the process. Now that we are appropriately failing fast\nand no longer have that state, we don't actually need to record in the\nchanges what went wrong during the merge; it all comes from the\nResourceConflictException message handed to the user.\n\nIf there are any errors in this phase, give a more detailed report of\nwhich changes failed, even though we can't really do anything about it\nat this point. This is slightly different from the existing failFast\nmethod because we don't want the header boilerplate saying that\nsubmitting all the changes failed, since some may have succeeded.\n\nChange-Id: I8c1380551449f7f1b5dc7a29af84a79259495461","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/b958579cb1f0293f982e0d0757b93d02cec32163"},{"sha":"63d6c82515f0995eb8e4cc0d4fa9054dcb179694","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"MergeValidationException: Allow arbitrary string messages\n\nThe purpose of these exceptions is to be thrown by merge validation\nlisteners, which may come from plugins. It doesn't make sense to force\nplugins to choose a status message from a list of messages in\nCommitMergeStatus that is a hard-coded enum in core.\n\nThis restriction on MergeValidationException is how we ended up with a\nbunch of very specific error messages tightly coupled to the\nProjectConfigValidator.\n\nInstead, allow arbitrary string messages, which we are now able to\neffectively report from MergeOp. We don't even need to set the status\non the CodeReviewCommit when handling this exception from within\nMergeOp, since failFast causes the process to abort before we ever\ninspect the CodeReviewCommits.\n\nChange-Id: Iaef3e0a5080522b9812e4709217955c877809567","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/63d6c82515f0995eb8e4cc0d4fa9054dcb179694"},{"sha":"28a64fc484aca6ad136e278c0ff1fb4118fffbdf","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"CommitMergeStatus: Remove REVISION_GONE and NO_PATCH_SET\n\nThat these were only set on special sentinel CodeReviewCommits with no\nSHA-1 attached was a smell that they don't really belong as status of\na commit per se. Since the recent MergeOp refactorings, we now use a\nmore descriptive error in every case where we used to set these values\non commits; they are now dead code and can be removed.\n\nChange-Id: I8a14ac1684b68c838bd238a47f025a2aa8a138fc","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/28a64fc484aca6ad136e278c0ff1fb4118fffbdf"},{"sha":"29f636697377c679258e7d256fa1adfe6d2faed5","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"Tie CommitMergeStatus explicitly to submit strategies\n\nThis enum is _only_ used to communicate between submit strategies and\nthe phase of MergeOp that executes the submit strategy; all other\nunrelated usages of this enum have been removed. Document it as such,\nand move it adjacent to SubmitStrategy to make this extra clear.\n\nChange-Id: I20212f427940196c740739442cb1445434aa55f2","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/29f636697377c679258e7d256fa1adfe6d2faed5"},{"sha":"6a55317d4c7b0148280cef7ae84b76f0ad17718f","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"Replace PolyGerritUiIndexServlet with SingleFileServlet\n\nChange-Id: I19688f1145d67784f71cd9fd060798a51eae8a40","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/6a55317d4c7b0148280cef7ae84b76f0ad17718f"},{"sha":"684ecf9ed7b4d00b66d88eff06578a2579e7d088","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"Merge changes from topics 'mergeop-refactor', 'change-data-submit-type'\n\n* changes:\n  Tie CommitMergeStatus explicitly to submit strategies\n  CommitMergeStatus: Remove REVISION_GONE and NO_PATCH_SET\n  MergeValidationException: Allow arbitrary string messages\n  MergeOp: Simplify updateChangeStatus\n  MergeOp: Check commit status separately after merge strategies\n  Remove unnecessary calls to SubmitRuleEvaluator#setPatchSet\n  ChangeScreen: Use submit type from ChangeInfo\n  Expose submit type in ChangeInfo\n  Store SubmitTypeRecord lazily in ChangeData\n  SubmitTypeRecord: Make fields final and document them","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/684ecf9ed7b4d00b66d88eff06578a2579e7d088"},{"sha":"267a1bd435aa2aef8f6bfb47b29b37ee0816298e","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"Fix deprecation warnings from new Truth version\n\nChange-Id: Id0f976b2c0a4291eb946671a726f0775bc0c2487","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/267a1bd435aa2aef8f6bfb47b29b37ee0816298e"},{"sha":"1009c6bfb14a45240426bfdbae5f740bbf7726e1","author":{"email":"d43fb6c98c97e553b671ed9a9318100f1de386e7@google.com","name":"Edwin Kempin"},"message":"Merge \"Buck: Fix typo in gerrit_plugin.bucklet\"","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/1009c6bfb14a45240426bfdbae5f740bbf7726e1"},{"sha":"d7b9aab9735583cf49e7488439e85e55790fa6d4","author":{"email":"d97133394f73ea329221f93b2759894ae8bf31ce@gmail.com","name":"joshuawilson"},"message":"Merge remote-tracking branch 'gerrit/master'","distinct":true,"url":"https://api.github.com/repos/MerritCR/merrit/commits/d7b9aab9735583cf49e7488439e85e55790fa6d4"}]}