[engine] Implement support for recursive path globs

Review Request #3540 - Created March 7, 2016 and submitted

Information
Stu Hood
pants
3015
3548
Reviewers
pants-reviews
dturner-tw, gmalmquist, kwlzn, nhoward_tw, patricklaw

This fills in the blanks left behind in the PathGlobs implementation. It now supports all forms of filespec as implemented by wrapped_globs. PathGlobs are projected from Sources objects in the new engine to implement the capture of Paths and FilesContent for Sources objects.

  • Propagate the errno when enhancing exceptions in ProjectTree.
  • Add fs test to cover PathGlobs.create.
  • Rename PathGlob to PathLiteral.
  • Make DirectoryListing "optional" in the sense that a non-existent entry is treated as empty.
  • Implement support for single and double (recursive) wildcards in PathGlobs.

Attached is a rendering of the recursive glob for:

./pants run src/python/pants/engine/exp/examples:viz-fs -- \
  . \
  walk \
  'examples/tests/scala/org/pantsbuild/**/*.scala'

https://travis-ci.org/pantsbuild/pants/builds/114646055

Files


Kris Wilson
Kris Wilson
David Turner
Stu Hood
Stu Hood
Stu Hood
Review request changed

Status: Closed (submitted)

Change Summary:

Merged as f0bb69134c1a054ea647aae7699f8f8c25f2ab14

Loading...