{"push_id":732070960,"size":4,"distinct_size":4,"ref":"refs/heads/upstream/master","head":"0cc78d11347e9dac5d9f5723191f05c872d5930f","before":"159f5bcfcbc33deb7c52b340d4c0aed1cb656eb2","commits":[{"sha":"0f724ff5047307e2b3ef0d67c6f3623cebfee693","author":{"email":"a7f3b1612c245dae606b3b9617b4f52187fddb65@google.com","name":"Stefan Beller"},"message":"SubmoduleOp: Have a flag for verbosity of superproject messages\n\nThe revision log being merged is actually redundant information; it can\nbe obtained later by looking at the submodule updates.\n\nChange-Id: I30aaeb96e62ce4fc9e15127d3ec72cd5a5ce34ff","distinct":true,"url":"https://api.github.com/repos/openstack-infra/gerrit/commits/0f724ff5047307e2b3ef0d67c6f3623cebfee693"},{"sha":"ba24004f70d7e1407010d0884b0133780de1b12a","author":{"email":"f3ea74d906fa9fe97c1fef6bad9cb871485c7045@google.com","name":"Shawn Pearce"},"message":"Require getting ChangeJson through a factory\n\nThe ChangeJson object is not thread safe.  It internally has a mutable\noptions array and tracks information about accounts in a local cache.\n\nRestViews keep reusing this object in @Singleton views in a way that\nis not thread safe.\n\nChange the API to require obtaining the ChangeJson from a Factory\nafter passing in the Set<ListChangeOptions> the caller wants to use.\n\nChange-Id: I2167b909fd52c10565fc232aefb2f1d27c65c8de","distinct":true,"url":"https://api.github.com/repos/openstack-infra/gerrit/commits/ba24004f70d7e1407010d0884b0133780de1b12a"},{"sha":"7a4a0130f81068f282eede4d0797ad1f03f9dee5","author":{"email":"f3ea74d906fa9fe97c1fef6bad9cb871485c7045@google.com","name":"Shawn Pearce"},"message":"Merge \"Require getting ChangeJson through a factory\"","distinct":true,"url":"https://api.github.com/repos/openstack-infra/gerrit/commits/7a4a0130f81068f282eede4d0797ad1f03f9dee5"},{"sha":"0cc78d11347e9dac5d9f5723191f05c872d5930f","author":{"email":"ac39666f39dfa5b37bad5e19ae3f186528808854@google.com","name":"Dave Borowitz"},"message":"Use new firstExactRef method for finding edit refs\n\nDfsRefBackends are not optimized for small range scans, but perform\nbetter on random lookups.\n\nChange-Id: I2730b62631df4000ba326997db270a235bbf4d66","distinct":true,"url":"https://api.github.com/repos/openstack-infra/gerrit/commits/0cc78d11347e9dac5d9f5723191f05c872d5930f"}]}