aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/vfs
Commit message (Collapse)AuthorAge
* Merge Dmitry's jury-rigged WindowsFileSystem to decrease the number of ↵Gravatar Lukacs Berki2016-01-29
| | | | | | | | | changes between his branch and HEAD. This code will need some JNI to make it work properly, but for now, it will do. -- MOS_MIGRATED_REVID=113349143
* Add documentation about our plans to handle symlinks on Windows.Gravatar Lukacs Berki2016-01-27
| | | | | -- MOS_MIGRATED_REVID=113154309
* Rename FilesystemUtils to NativePosixFiles.Gravatar Lukacs Berki2016-01-27
| | | | | | | This helps avoid confusion with File*S*ystemUtils, which differs in only the case of a character but is a completely different class. -- MOS_MIGRATED_REVID=113054116
* Make local_repository and new_local_repository work with the limitations of ↵Gravatar Lukacs Berki2016-01-26
| | | | | | | our plans for symlink support on Windows. -- MOS_MIGRATED_REVID=113043269
* Add a (working) windows compatibility mode that makes Bazel create hardlinks ↵Gravatar Lukacs Berki2016-01-26
| | | | | | | | | | | for links to writable files. Curiously enough, the native Unix JNI wrapper already had a function for link(), but it wasn't on the Java interface. build-runfiles is also updated accordingly. -- MOS_MIGRATED_REVID=113029168
* Create the convenience symlinks only after the build, and only those that ↵Gravatar Lukacs Berki2016-01-21
| | | | | | | | | point to an existing directory. This required fixing the worker strategy so that it reads params files not through said convenience symlinks, but from the execroot. -- MOS_MIGRATED_REVID=112682485
* Scaffolding for implementing symlinks on Windows. Gravatar Lukacs Berki2016-01-21
| | | | | | | | | | | | | | | At first, this will only be used for emulating the planned implementation on Linux to validate it a little more before starting with the big work of porting everything to Windows in case it is doomed to failure. In logging mode, the only places where we create symbolic links that we can't emulate with the plan (pointing to a non-existent file or to a file outside the output base and the source root, which are assumed to be writable): - ExecutionTool.createOutputDirectoryLinks(). If we won't have the convenience symlinks on Windows, I won't shed a tear (I'm wondering why, though, because they are between the output base and the source tree) - In the implementation of new_local_repository (Would need to be special-cased for Windows. No big deal.) - In the implementation of the .tar.gz decompressor (doesn't seem to be serious, either.) So this seems to be alright. Note, however, that we didn't check build-runfiles.cc, which might cause trouble. I don't remember any place where we create a link there that is illegal according to the above rules, though. -- MOS_MIGRATED_REVID=112659070
* Add a Java property to influence symlinking strategy so that we can test ↵Gravatar Lukacs Berki2016-01-20
| | | | | | | what kind of performance we could get from how we imagine it would work under Windows. -- MOS_MIGRATED_REVID=112572621
* cache SDKROOT value for local execution of actions using apple toolkitGravatar Chris Parsons2015-12-15
| | | | | -- MOS_MIGRATED_REVID=110174447
* Use Bazel Preconditions variant which avoids varargs array creationGravatar Mark Schaller2015-12-10
| | | | | | | Reduces garbage. -- MOS_MIGRATED_REVID=109914243
* ASwB aspect: parse java packages during executionGravatar Googler2015-12-03
| | | | | -- MOS_MIGRATED_REVID=109305952
* Make AbstractFileSystem correct in isolation. Previously there was ↵Gravatar Nathan Harmata2015-11-19
| | | | | | | | | (accidentally) the implicit requirement that the deriving class override FileSystem#stat. Even though this wasn't a problem in practice in the Bazel codebase (since all of our transitive subclasses had custom 'stat' implementation), it's good hygiene to have things correct (e.g. if we added a new subclass). -- MOS_MIGRATED_REVID=108158039
* C++ libraries in remote repos don't need to set include pathsGravatar Kristina Chodorow2015-11-12
| | | | | | | | | Fixes #445, based on https://github.com/bazelbuild/bazel/compare/master...ulfjack:cpp-include-path. RELNOTES: C++ libraries no longer need includes = ["."] (or similar copts) to include paths relative to a remote repository's root. -- MOS_MIGRATED_REVID=107593486
* Close some streams that we didn'tGravatar Miguel Alcon Pinto2015-11-05
| | | | | -- MOS_MIGRATED_REVID=107048547
* Avoid copying file contents when reading the expected number of bytes ↵Gravatar Eric Fellheimer2015-11-04
| | | | | | | in#readContentWithLimit(). -- MOS_MIGRATED_REVID=106995917
* Augment JNI utime() method.Gravatar Eric Fellheimer2015-10-30
| | | | | -- MOS_MIGRATED_REVID=106634616
* Reduce memory churn while creating PathFragments.Gravatar Eric Fellheimer2015-10-27
| | | | | -- MOS_MIGRATED_REVID=106329484
* Change the preprocessor interface to take the byte[] contents of the BUILD ↵Gravatar Nathan Harmata2015-10-21
| | | | | | | | | file rather than a ParserInputSource. This is part of a series of changes with the net result being that we open, read, and parse each BUILD file exactly once. -- MOS_MIGRATED_REVID=105911557
* Introduce Path#isSpecialFile, FileSystem#isSpecialFile, and ↵Gravatar Nathan Harmata2015-10-21
| | | | | | | FileStatus#isSpecialFile to help disambiguate between a regular file and a special file, since the file size of a special file cannot be trusted. -- MOS_MIGRATED_REVID=105903622
* Enable Blaze profiling for the VFS_READ on InputStream#read(), since some ↵Gravatar Nathan Harmata2015-10-13
| | | | | | | | | helper classes do call that method to see if the stream has more data. This is part of a series of changes with the net result being that we open, read, and parse each BUILD file exactly once. -- MOS_MIGRATED_REVID=105253425
* Description redacted.Gravatar Nathan Harmata2015-10-09
| | | | | -- MOS_MIGRATED_REVID=105050723
* Rationalize copyright headersGravatar Damien Martin-Guillerez2015-09-25
| | | | | | | | | | | The headers were modified with `find . -type f -exec 'sed' '-Ei' 's|Copyright 201([45]) Google|Copyright 201\1 The Bazel Authors|' '{}' ';'` And manual edit for not Google owned copyright. Because of the nature of ijar, I did not modified the header of file owned by Alan Donovan. The list of authors were extracted from the git log. It is missing older Google contributors that can be added on-demand. -- MOS_MIGRATED_REVID=103938715
* Introduce Path#readSymbolicLinkUnchecked, intended to only be used when the ↵Gravatar Nathan Harmata2015-09-17
| | | | | | | caller already knows the path is a symlink, and use this new method throughout the codebase. -- MOS_MIGRATED_REVID=103229983
* Remove unused 'followSymlinks' parameter to FileSystem#getxattr. It is ↵Gravatar Nathan Harmata2015-09-16
| | | | | | | always true in practice. -- MOS_MIGRATED_REVID=103221081
* Code cleanupGravatar Laurent Le Brun2015-09-03
| | | | | -- MOS_MIGRATED_REVID=102239051
* Rollback of not-actually-thread-safe code introduced in a previous change. ↵Gravatar Nathan Harmata2015-09-03
| | | | | | | IdentityHashMap#get can't be safely called concurrently with #put. -- MOS_MIGRATED_REVID=102189513
* Make FileSystemUtils#asByteSource() private againGravatar Michajlo Matijkiw2015-09-01
| | | | | -- MOS_MIGRATED_REVID=101976891
* In GlobVisitor, use a ConcurrentHashSet and sort the results at the end ↵Gravatar Nathan Harmata2015-08-31
| | | | | | | | | rather than use a synchronized TreeSet that maintains the result in sorted order. Consider M adds to the set resulting in N unique elements (so M >= N). The old approach was O(MlogN) and the new approach is O(M + NlogN) and has less lock contention; the time spent holding the lock is O(N) vs O(MlogN) - and actually ought to be small in practice because of the internal striping in CHS. -- MOS_MIGRATED_REVID=101784791
* Expose the #asByteSource() method in FileSystemUtils.Gravatar Eric Fellheimer2015-08-27
| | | | | -- MOS_MIGRATED_REVID=101628787
* Description redacted.Gravatar Michajlo Matijkiw2015-08-24
| | | | | -- MOS_MIGRATED_REVID=101221537
* Don't acquire the lock when we don't need to mutate the 'children' map.Gravatar Nathan Harmata2015-08-21
| | | | | | | []FIXED=23350182 -- MOS_MIGRATED_REVID=101158691
* Add comments about subtle benign race in PathFragment#hashCode.Gravatar Nathan Harmata2015-08-11
| | | | | -- MOS_MIGRATED_REVID=100285918
* TemplateExpansionAction now consistently uses UTF-8 instead of mixing UTF-8 ↵Gravatar Florian Weikert2015-08-04
| | | | | | | with Latin-1 -- MOS_MIGRATED_REVID=99651466
* Fix up some faulty documentation.Gravatar Googler2015-07-20
| | | | | -- MOS_MIGRATED_REVID=98507575
* Tolerate "..." as the base filename for the fdo profile.Gravatar Janak Ramakrishnan2015-07-10
| | | | | | | This is fragile, and there might be other places in the codebase this issue occurs. -- MOS_MIGRATED_REVID=97784977
* Refactor the legacy globbing thread pool to make use of more modern ↵Gravatar Eric Fellheimer2015-06-29
| | | | | | | | | concurrency abstractions. Care is taken to maintain the invariant that the glob result returns after all of the work is done, even if there was an exception that cuts the task short. Interruption is an exception to this: In this case, the GlobCache later cancels the task and ensures it is done. -- MOS_MIGRATED_REVID=97000506
* Extract, reuse excluded directory assertionGravatar Mark Schaller2015-06-23
| | | | | | | Also adds tests for it. -- MOS_MIGRATED_REVID=96572991
* Minor cleanup: Unnecessary "static" on interface.Gravatar Eric Fellheimer2015-06-18
| | | | | -- MOS_MIGRATED_REVID=96302792
* Deal properly with IOExceptions when globbing in a single thread.Gravatar Janak Ramakrishnan2015-06-17
| | | | | -- MOS_MIGRATED_REVID=96204334
* Ignore relative entries in SearchPath.Gravatar Han-Wen Nienhuys2015-06-03
| | | | | -- MOS_MIGRATED_REVID=95102460
* Add vfs.SearchPath for searching binaries.Gravatar Han-Wen Nienhuys2015-06-03
| | | | | -- MOS_MIGRATED_REVID=95097699
* Minor FileSystem refactoring.Gravatar Eric Fellheimer2015-06-03
| | | | | -- MOS_MIGRATED_REVID=95054907
* Slight refactoring of readdir().Gravatar Eric Fellheimer2015-06-03
| | | | | -- MOS_MIGRATED_REVID=95036998
* Change UnixGlob#matcher to treat "**/" and "/**" as matching zero or more ↵Gravatar Janak Ramakrishnan2015-05-18
| | | | | | | directories, as is specified in various places, not one or more. -- MOS_MIGRATED_REVID=93758086
* Minor refactoring of filesystem tests.Gravatar Eric Fellheimer2015-04-29
| | | | | -- MOS_MIGRATED_REVID=92291970
* Use VFS_READLINK rather than VFS_LINK, to avoid confusion with theGravatar Han-Wen Nienhuys2015-03-13
| | | | | | | link system call. -- MOS_MIGRATED_REVID=88441395
* Allow BUILD files directly under the build rootGravatar Kristina Chodorow2015-03-10
| | | | | | | | | This makes the empty package name legal (//:foo). If the empty package is used, this symlinks everything under the build root to the exec root. This includes directories. -- MOS_MIGRATED_REVID=87960882
* Some cleanup changes.Gravatar Ulf Adams2015-03-05
| | | | | -- MOS_MIGRATED_REVID=87821306
* Skylark: enable relative paths in load statements. Only paths with 1 segment ↵Gravatar Googler2015-02-09
| | | | | | | | | are treated as relative paths. Obsolete tests are removed from ASTFileLookupFunctionTest. -- MOS_MIGRATED_REVID=85885578
* Update from Google.Gravatar Han-Wen Nienhuys2015-02-25
-- MOE_MIGRATED_REVID=85702957