{"push_id":1158330308,"size":5,"distinct_size":5,"ref":"refs/heads/master","head":"387bb116c96863aaf2e07fff278a363e15bbfd34","before":"500dd5fd26d97437223fa4d60c601accac3c5cbb","commits":[{"sha":"ebcbba1b7953a7ce390556cb08a576b593d6e337","author":{"name":"Garrett Malmquist","email":"261c35170c3d90a9ed13cb8070ecb826577abca3@gmail.com"},"message":"Fix warnings about AliasTarget not having a BUILD alias.\n\nBefore:\n\n    ```\n    ~/Src/Pants ./pants export --output-file=/tmp/foobar\n    testprojects/src/java/org/pantsbuild/testproject/aliases::\n    WARN]\n    AliasTarget(BuildFileAddress(BuildFile(testprojects/src/java/org/pantsbuild/testproject/aliases/BUILD,\n    FileSystemProjectTree(/Users/gmalmquist/Src/Pants)), convenient)) has no\n    BUILD alias, suggesting a broken macro that does not assign one.\n    WARN]\n    AliasTarget(BuildFileAddress(BuildFile(testprojects/src/java/org/pantsbuild/testproject/aliases/BUILD,\n    FileSystemProjectTree(/Users/gmalmquist/Src/Pants)), indirection)) has\n    no BUILD alias, suggesting a broken macro that does not assign one.\n\n    ~/Src/Pants\n    ```\n\nAfter:\n\n    ```\n    ~/Src/Pants ./pants export --output-file=/tmp/foobar\n    testprojects/src/java/org/pantsbuild/testproject/aliases::\n\n    ~/Src/Pants\n    ```\n\nTesting Done:\nCI went green: https://travis-ci.org/pantsbuild/pants/builds/136698233\n\nBugs closed: 3579\n\nReviewed at https://rbcommons.com/s/twitter/r/3993/","distinct":true,"url":"https://api.github.com/repos/baroquebobcat/pants/commits/ebcbba1b7953a7ce390556cb08a576b593d6e337"},{"sha":"6e2598db524e0ee86e9b624bc1c6104c74067c75","author":{"name":"Garrett Malmquist","email":"261c35170c3d90a9ed13cb8070ecb826577abca3@gmail.com"},"message":"Prepare the 1.1.0-pre5 release.\n\nTesting Done:\nCI went green here: https://travis-ci.org/pantsbuild/pants/builds/136775048\n\nBugs closed: 3581\n\nReviewed at https://rbcommons.com/s/twitter/r/3994/","distinct":true,"url":"https://api.github.com/repos/baroquebobcat/pants/commits/6e2598db524e0ee86e9b624bc1c6104c74067c75"},{"sha":"c871964a43a6bb35590e0d6b23bcb01d9ec9fe0a","author":{"name":"Kris Wilson","email":"1784dd4621fe43ec280d75357be9d0382700ba73@twopensource.com"},"message":"Ensure multiple calls to `OptionsInitializer.setup()` don't re-register backends/plugins.\n\n- Decompose `OptionsInitializer` into smaller methods.\n- Add caching of the internally generated `BuildConfiguration` object on the `OptionsInitializer` class level for secondary calls to `OptionsInitializer.setup()` without side effects (see #3564). Essentially, because `BuildConfiguration` construction requires execution of backends/plugins `register.py`, there is no way to easily or efficiently reconstruct the `BuildConfiguration` state for subsequent reuse when otherwise simple, secondary options parsing is needed. Additionally, a Subsystem is not an option here because `OptionsInitializer` is pre-subsystem - so this adds a small bit of global state in the same vein as the storage on `Goal`, etc.\n- Factor out some finer grained targets in `src/python/pants/bin:bin`.\n- Add an integration test that fails before and passes after the change.\n\nFTR, the longer term strategy here is to eliminate global state/Subsystems in general by allowing the engine to manage the construction and caching of such objects. This is mostly a stopgap.\n\nTesting Done:\nhttps://travis-ci.org/pantsbuild/pants/builds/136232742\n\nBugs closed: 3564, 3570\n\nReviewed at https://rbcommons.com/s/twitter/r/3987/","distinct":true,"url":"https://api.github.com/repos/baroquebobcat/pants/commits/c871964a43a6bb35590e0d6b23bcb01d9ec9fe0a"},{"sha":"aa25c820f37a3a65e7a4762e3a8b5875a4f321a8","author":{"name":"Eric Ayers","email":"ad822c88bead07678bfed363e8b5b9ac5caffc29@squareup.com"},"message":"Remove docgen from list of default packages, don't deprecate the option.\n\nFollowup to  https://rbcommons.com/s/twitter/r/3988/, remove the deprecated conditional from --default-backend-packages and actually remove pangs.backend.docgen.\n\nTesting Done:\nCI running at https://travis-ci.org/pantsbuild/pants/builds/136816686\n\nBugs closed: 3582\n\nReviewed at https://rbcommons.com/s/twitter/r/3996/","distinct":true,"url":"https://api.github.com/repos/baroquebobcat/pants/commits/aa25c820f37a3a65e7a4762e3a8b5875a4f321a8"},{"sha":"387bb116c96863aaf2e07fff278a363e15bbfd34","author":{"name":"Stu Hood","email":"50abbb3a4290d1d6c08c7e8a002d0c743d331242@gmail.com"},"message":"[engine] Use scandir, and preserve symlink paths in output\n\nThis patch fixes an issue where symlinked directories and files were resolved to their canonical names during execution. That meant that a glob for `d.ln/2.txt` (where `d.ln` was a symlink to a directory `a`) might result in a match for the path `a/2.txt`. Instead, users expect that the symlink is treated as if it had the same type as the underlying file.\n\nAdditionally, this review switches to using `scandir` to compute directory listings, which should result in 1 syscall per directory listing, rather than N+1.\n\n- Convert `Path` into a holder for a symbolic name and the `Stat` that underlies it.\n- Generate directory listings via scandir: fewer syscalls, and fewer FilesystemNodes.\n- Satisfy a point lookup for a literal Path using the directory listing that contains it (to allow the same underlying syscall to be reused there).\n- Preserve file ordering in EagerFilesetWithSpec, and cover with a test (resolves [#3497](https://github.com/pantsbuild/pants/issues/3497).)\n\nTesting Done:\nhttp://jenkins.pantsbuild.org/job/pantsbuild/job/pants/branch/PR-3575/5/\n\nBugs closed: 3497, 3575\n\nReviewed at https://rbcommons.com/s/twitter/r/3991/","distinct":true,"url":"https://api.github.com/repos/baroquebobcat/pants/commits/387bb116c96863aaf2e07fff278a363e15bbfd34"}]}
{"actor":{"display_login":"baroquebobcat"}}