{"push_id":1471336801,"size":4,"distinct_size":4,"ref":"refs/heads/github-master","head":"32cacdce4230dc88343a2d856b1bba0471f89068","before":"e4464e801ef9359f4d7d1f4f6192f07c16e36cb2","commits":[{"sha":"e7efa95e7b63b38ad7e0bf27edcb68bbafafdf9d","author":{"name":"Ognjen Dragoljevic","email":"e9734b0c0077fc279b03277caf5e73109dc92e0d@fb.com"},"message":"Use exception mechanism instead of Optional when size limit is exceeded\n\nSummary: Optionals are another abstraction that is heavily misused accross the Buck's codebase. This is practically a schoolbok example of when exception should be used. Not only this removes this Optional clutter all around rule key factory, but it also unwinds immediately instead of finishing iterating through all the fields only to do nothing.\n\nTest Plan: tests\n\nReviewed By: illicitonion\n\nfbshipit-source-id: 7e5412a","distinct":true,"url":"https://api.github.com/repos/GerritCodeReview/buck/commits/e7efa95e7b63b38ad7e0bf27edcb68bbafafdf9d"},{"sha":"3b890810e28c97d5b1a1e027b4fbefaa5d842ffc","author":{"name":"Ognjen Dragoljevic","email":"e9734b0c0077fc279b03277caf5e73109dc92e0d@fb.com"},"message":"Refactor DependencyFileRuleKeyFactory [1]\n\nSummary:\nDefaultDependencyFileRuleKeyFactory extends InputBasedRuleKeyFactory. However, by analyzing the code, there are no grounds for actually doing that. The upcoming diffs will demonstrate that in fact there is almost nothing in common between these two, and they should not share the same hierarchy chain.\nIf you carefulyl look at what the implementation does, all the methods of interest do something like this:\n\n  if (dep-file-factory) {\n    do one thing\n  } else if (input-based) {\n    do another thing\n  }\n\nThis diff, the first in the stack, just duplicates the original InputBasedRuleKeyFactory to be used specifically for DependencyFileRuleKeyFactory. In the next diff I'll remove all the bits from each factory that are not necessary for it which will clearly show that these two are mostly mutually exclusive.\n\nTest Plan: tests\n\nReviewed By: illicitonion\n\nfbshipit-source-id: e90eac2","distinct":true,"url":"https://api.github.com/repos/GerritCodeReview/buck/commits/3b890810e28c97d5b1a1e027b4fbefaa5d842ffc"},{"sha":"c02f1629e2bb599c672432191f745eb1cade3692","author":{"name":"Ognjen Dragoljevic","email":"e9734b0c0077fc279b03277caf5e73109dc92e0d@fb.com"},"message":"Remove unused stuff from InputBased and DepFile rule key factories\n\nSummary: Now that we split these two, we can remove stuff used only by the other.\n\nTest Plan: tests\n\nReviewed By: illicitonion\n\nfbshipit-source-id: 27aa051","distinct":true,"url":"https://api.github.com/repos/GerritCodeReview/buck/commits/c02f1629e2bb599c672432191f745eb1cade3692"},{"sha":"32cacdce4230dc88343a2d856b1bba0471f89068","author":{"name":"Daniel Wagner-Hall","email":"a66f99cb67733caeee340612e9fef663e6dc880e@fb.com"},"message":"Use BuildContext's SourcePathResolver: android\n\nSummary: A subsequent diff will remove the getResolver() method from AbstractBuildRule\n\nTest Plan: CI\n\nReviewed By: plamenko\n\nfbshipit-source-id: 13ec509","distinct":true,"url":"https://api.github.com/repos/GerritCodeReview/buck/commits/32cacdce4230dc88343a2d856b1bba0471f89068"}]}
{"actor":{"display_login":"lucamilanesio"}}