aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com
Commit message (Collapse)AuthorAge
* Limit command line length to accomodate Windows.Gravatar Dmitry Lomov2016-01-29
| | | | | -- MOS_MIGRATED_REVID=113350910
* 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
* Adds v13 support library in the default android repository template.Gravatar Takeshi Hagikura2016-01-29
| | | | | | | | | | | | v13 library doesn't have resources like v4 library. So adding only the jar dependency should work. That fixes https://github.com/bazelbuild/bazel/issues/827 -- Change-Id: I1b8e5e2a359472ab9525a1910ac5050c4fb2c9a7 Reviewed-on: https://bazel-review.googlesource.com/#/c/2790/ MOS_MIGRATED_REVID=113344673
* Small refactoring of SkyframeBuildView to reduce the diff for the next change.Gravatar Ulf Adams2016-01-29
| | | | | -- MOS_MIGRATED_REVID=113338481
* Parallelize top-level invalidation. No need to do all of these in sequence.Gravatar Eric Fellheimer2016-01-29
| | | | | -- MOS_MIGRATED_REVID=113313675
* Parallelize Package retrieval during Sky-query operation. To maintain ↵Gravatar Eric Fellheimer2016-01-29
| | | | | | | type-safety, we now must pass in the exception type of the callback. -- MOS_MIGRATED_REVID=113313312
* Rollback of commit e379f28f464faacc4db21f4fed3a48fa6d4d23f0.Gravatar Googler2016-01-29
| | | | | | | | | | | | | *** Reason for rollback *** The new test apparently breaks some targets. Rolling back to fix the build. *** Original change description *** Include .dwp file in the runfiles for cc_test when building with Fission. -- MOS_MIGRATED_REVID=113310353
* Clear up some confusion about glob prefetching (the old comment was wrong). ↵Gravatar Nathan Harmata2016-01-29
| | | | | | | | | Also add some TODOs for potentially improving package loading performance. This CL has no semantic impact. -- MOS_MIGRATED_REVID=113301656
* Include .dwp file in the runfiles for cc_test when building with Fission.Gravatar Googler2016-01-29
| | | | | -- MOS_MIGRATED_REVID=113295790
* Make Skylark dicts mutableGravatar Francois-Rene Rideau2016-01-29
| | | | | | | | | | Represent Skylark dict using a new subclass SkylarkDict<K, V> of Map<K, V>. Back it with a TreeMap to provide a deterministic iteration order. Also make SkylarkList generic in its element type <E>. Have Artifact implement Comparable<Object> so it can be used as TreeMap key. -- MOS_MIGRATED_REVID=113277489
* Rollback of commit 464caa54500f65fa4dad1c3031602f4338cd1b23.Gravatar Kristina Chodorow2016-01-28
| | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Issue that caused the rollback (#819) is resolved *** Original change description *** Automated [] rollback of []. *** Reason for rollback *** Breaks genrule referencing //pkg from @bazel_tools *** Original change description *** Add @bazel_tools prefix to objc tools This is in preparation for removing the requirement that base_workspace be in bazel's package_path. -- MOS_MIGRATED_REVID=113259199
* Refactor DependencyResolver to collect and return loading errors.Gravatar Ulf Adams2016-01-28
| | | | | | | | | This should never be triggered in production, where we always run a loading phase first and only analyze targets that load successfully. I.e., this is just plumbing which will be hooked up in a subsequent change. -- MOS_MIGRATED_REVID=113258593
* Resolve repository-relative labels within the current repositoryGravatar Kristina Chodorow2016-01-28
| | | | | | | | | | | Using $(location //foo) from an external repository was resolving to @//foo, not @repo//foo, which generally wouldn't be in the main repository. This may also fix other cases where getRelative was resolving incorrectly. Fixes #819. -- MOS_MIGRATED_REVID=113256854
* Stop wrapping SkylarkList-s into new MutableList-sGravatar Francois-Rene Rideau2016-01-28
| | | | | | | | Fix convertToSkylark that was wrapping List-s into new MutableList-s, which became wrong since SkylarkList now implements List. -- MOS_MIGRATED_REVID=113256638
* Don't display irrelevant line in --verbose_explanations of cc compile.Gravatar Googler2016-01-28
| | | | | -- MOS_MIGRATED_REVID=113251721
* Rename native.rule and native.rules to {existing_rule,existing_rules}Gravatar Han-Wen Nienhuys2016-01-28
| | | | | | | | | | | | This is to avoid confusion between rule(), which declares a new build rules, and native.rule(), which can only be used in macros to inspect the BUILD file processed so far. native.{rule,rules} is maintained and marked deprecated to smooth the transition for early adopters. -- MOS_MIGRATED_REVID=113250194
* Remove unused ${SYNOPSIS} variable from Bazel native rule inline documentation.Gravatar David Chen2016-01-28
| | | | | | | | | | This variable is no longer used because the docgen template directly calls RuleDocumentationAttribte.getSynopsis() instead of using the SYNOPSIS variable, and RuleDocumentationAttribute.getHtmlDocumentation() resolves the SYNOPSIS variable to the empty string. -- MOS_MIGRATED_REVID=113249993
* Inject the TOOLS_REPOSITORY constant in the RuleClassProvider instead of ↵Gravatar Luis Fernando Pino Duque2016-01-28
| | | | | | | | | | | using Constants.java It also includes one example on how to use the new mechanism in BazelCppRuleClasses. This is the first phase for the removal of the TOOLS_REPOSITORY constant. -- MOS_MIGRATED_REVID=113244399
* Pass "--working_dir ." to the compile_protos scriptGravatar Chris Parsons2016-01-28
| | | | | -- MOS_MIGRATED_REVID=113200224
* workspace() is now documented in its annotationGravatar Kristina Chodorow2016-01-28
| | | | | | | ...and this documentation is incorrect. -- MOS_MIGRATED_REVID=113198846
* Intern IntVersions.Gravatar Janak Ramakrishnan2016-01-28
| | | | | -- MOS_MIGRATED_REVID=113197641
* Ensure repository names are valid workspace namesGravatar Kristina Chodorow2016-01-28
| | | | | | | RELNOTES: Repository rules must use names that are valid workspace names. -- MOS_MIGRATED_REVID=113197588
* Fix SkyframeBuilder's error handling, and change the contract of ↵Gravatar Janak Ramakrishnan2016-01-28
| | | | | | | | | | | EvaluationResult to return true for hasError() iff errorMap is non-empty or there is a catastrophe. There was no good reason for the previous behavior of saying hasError even if there was a transitive recovered-from error, since callers shouldn't care. This was a latent bug that was only benign since none of the consumers of hasError were invoking Skyframe with recoverable SkyFunctions. Also add an EvaluationResultSubject so that tests can more fluently assert things about EvaluationResult objects going forward. -- MOS_MIGRATED_REVID=113192415
* Always declare dependency on xcode gcov.Gravatar Peter Schmitt2016-01-28
| | | | | | | RELNOTES[INC]: Removes --objc_gcov_binary flag. -- MOS_MIGRATED_REVID=113190035
* Don't load dumpsyms in configurations.Gravatar Peter Schmitt2016-01-28
| | | | | | | RELNOTES[INC]: Removed --objc_dump_syms_binary. -- MOS_MIGRATED_REVID=113186554
* Rollback of commit 38c537da56fa8633aa30b6fec1ab5aeee432e038.Gravatar Kristina Chodorow2016-01-28
| | | | | | | | | | | | | | | | *** Reason for rollback *** Breaks genrule referencing //pkg from @bazel_tools *** Original change description *** Add @bazel_tools prefix to objc tools This is in preparation for removing the requirement that base_workspace be in bazel's package_path. -- MOS_MIGRATED_REVID=113167322
* Add documentation about our plans to handle symlinks on Windows.Gravatar Lukacs Berki2016-01-27
| | | | | -- MOS_MIGRATED_REVID=113154309
* Fix: return an error from the analysis phase with keep_going in error cases.Gravatar Ulf Adams2016-01-27
| | | | | | | | | | | - if there are failed top-level aspects - if there are conflicting actions I ended up rewriting how errors are signaled from the SkyframeBuildView. I think this is safe, but please review carefully. -- MOS_MIGRATED_REVID=113150100
* Fix typoGravatar Googler2016-01-27
| | | | | -- MOS_MIGRATED_REVID=113139138
* Store data about aspect configurations on Dependencies.Gravatar Michael Staib2016-01-27
| | | | | | | | | | | | | | | | | | | | Dependencies are the data structure which needs to propagate the configuration for each aspect as created by trimConfigurations down to the point where it's actually used. We need this to store different configurations for different aspects in a world where aspects have their own configurations, which may have more fragments than the target they're attached to. That world is on its way. Also in this CL: * Refactor Dependency to be an abstract parent class with separate implementations for Attribute.Transitions and BuildConfigurations, as well as null configurations, to avoid having to check nullness in various places. Users of the API will not see this, but get factory methods instead of constructors. As a consequence of this, refactor Dependency to be its own top-level class instead of a nested class in DependencyResolver. -- MOS_MIGRATED_REVID=113109615
* Readds the JackAspect for Jack support for Java dependencies.Gravatar Michael Staib2016-01-27
| | | | | | | | | | | This creates a JackAspect which is calculated for Java dependencies of Android libraries and binaries and their Java dependencies. Note that this only applies to java_library and java_import at this time because they are the only ones exporting the necessary provider. -- MOS_MIGRATED_REVID=113107408
* Convert j2objc workspace name to use _, not -Gravatar Kristina Chodorow2016-01-27
| | | | | | | | | | We're restricted repository names in preparation for improving the runfiles situation. RELNOTES: j2objc tools can now be accessed via @bazel_j2objc, not @bazel-j2objc. -- MOS_MIGRATED_REVID=113071304
* Make local-jdk conform to workspace name rulesGravatar Kristina Chodorow2016-01-27
| | | | | | | | RELNOTES: JDK-related targets are now available via @local_jdk (instead of @local-jdk). -- MOS_MIGRATED_REVID=113067049
* Describe some of the more likely license typesGravatar Kristina Chodorow2016-01-27
| | | | | | | Fixes #643. -- MOS_MIGRATED_REVID=113055336
* 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
* Return opaque value for native.rule() on a select() statement.Gravatar Han-Wen Nienhuys2016-01-27
| | | | | | | | | | | | | | | | | | | | | | | | | This is imperfect in many ways: 1) the value is opaque, and not a BUILD value, so it cannot be used in rule arguments 2) its representation has a pointer address, so it breaks hermeticity. Despite its problem, we return this value because otherwise native.rules() fails if there is any rule using a select() in the BUILD file. A future solution would be to convert BuildType.SelectorList back to syntax.SelectorList. To do so, we would have to 1) recurse into the Selector contents of SelectorList, so those values are run through skylarkifyValue too 2) get the right Class<?> value. We could probably get at that by looking at ((SelectorList)val).getSelectors().first().getEntries().first().getClass(). -- MOS_MIGRATED_REVID=113051612
* Make runfiles tree creation on Windows depend on the artifacts of the actual ↵Gravatar Lukacs Berki2016-01-26
| | | | | | | | | | | | | | | runfiles. This is necessary because the plan for Windows calls for knowing if the target of the symlink is a directory or a file, thus, we cannot create runfiles trees before the artifacts in them are built. This probably comes with a performance hit due to the extra scheduling constraints. This makes almost every test pass save: - test_tmpdir in bazel_test_test, which I hereby dismiss as a fluke - test_http_archive_tgz in external_integration_test (Maybe a permissions issue due to copying things?) - A bunch of test in external_correctness_test, probably related to the fact that since we are copying things, we don't notice changes to the original files. -- MOS_MIGRATED_REVID=113050025
* Followup change [] that fixes indentation as requested by Ulf.Gravatar Lukacs Berki2016-01-26
| | | | | -- MOS_MIGRATED_REVID=113048962
* 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
* Separate runfiles middlemen into two layers: one that is a middleman for the ↵Gravatar Lukacs Berki2016-01-26
| | | | | | | | | | | files itself, and one that contains this middleman and the runfiles output manifest. This is in preparation for Windows symlink support in runfiles manifests: on Windows, we'll need the target files created before we can create the runfiles symlinks for them, but we can't do that by adding the current runfiles middleman to the inputs of SymlinkTreeAction because it would create a cycle (output manifest -> SymlinkTreeAction -> runfiles manifest -> MiddlemanAction -> output manifest) The alternative is to just add the artifacts to the inputs of SymlinkTreeAction, but that would create a bunch of extra edges and, more importantly, reverse edges in the action graph which we don't want. -- MOS_MIGRATED_REVID=113041344
* RELNOTES[INC]: Set stamping to false by default (i.e., --nostamp)Gravatar Damien Martin-Guillerez2016-01-26
| | | | | | | Stamping make build non-deterministic and should not be the default. -- MOS_MIGRATED_REVID=113040937
* 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
* Add documentation for workspace functionGravatar Kristina Chodorow2016-01-26
| | | | | -- MOS_MIGRATED_REVID=112971086
* Stop inserting local shell environment into CppCompileAction.Gravatar Han-Wen Nienhuys2016-01-26
| | | | | -- MOS_MIGRATED_REVID=112956748
* Move RepositoryName to its own top-level classGravatar Kristina Chodorow2016-01-26
| | | | | | | | | | As it's about to get more important in its own right. The only change that isn't just moving code around is making RepositoryName.validate package-private. -- MOS_MIGRATED_REVID=112956571
* Fix some generic warnings.Gravatar Ulf Adams2016-01-25
| | | | | -- MOS_MIGRATED_REVID=112952552
* Rollback of commit bd9f25c593a140acb15d3fd3fc7f66d091e1a898.Gravatar Ulf Adams2016-01-25
| | | | | | | | | | | | | | | | *** Reason for rollback *** Violates layering - genrule should not depend on platform- or language-specific parts. *** Original change description *** Add a DEVELOPER_DIR make variable to genrules to propagate the apple xcode environment variable DEVELOPER_DIR to commands. If $(DEVELOPER_DIR) is included in the genrule command, we bootstrap the XCODE_VERSION_OVERRIDE environment variable to the command. The contract with the actual action executor is, if XCODE_VERSION_OVERRIDE is present in the environment, to additionally bootstrap the DEVELOPER_DIR absolute path to the command. -- MOS_MIGRATED_REVID=112951074
* Share some error handling code between aspects and top-level aspects.Gravatar Ulf Adams2016-01-25
| | | | | -- MOS_MIGRATED_REVID=112948493
* Export the AndroidManifest.xml from the resource processing. This is an ↵Gravatar Googler2016-01-25
| | | | | | | initial step toward changing the manifest merge to use the Gradle merger, as well as ensuring the custom library package is reflected in the manifest. -- MOS_MIGRATED_REVID=112943820
* Make AspectFunction error handling match TopLevelAspectFunction.Gravatar Ulf Adams2016-01-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also match ConfiguredTargetFunction for target loading. It isn't currently possible to trigger either of these code paths - the loading phase ensures that we never attempt to analyze targets that fail to load - the Skylark import or conversion cannot fail, because Skylark checks during .bzl execution that all referenced symbols are Skylark aspects Therefore, the only way to trigger this would be if there was a native rule requesting a non-existent or broken Skylark aspect for its dependencies, but that is currently not possible - native rules can only request native aspects. However, for interleaved loading and analysis, we need to limit the set of exception classes that can be thrown from AspectFunction - we do that here by changing the constructor of AspectFunctionException to only accept either NoSuchThingException or AspectCreationException. That in turn requires that we re-throw the Skylark import and conversion exceptions as AspectCreationException, which is exactly what TopLevelAspectFunction is already doing, and necessary for correct error handling if we do ever support Skylark aspects in native rules. Alternatively, I could change the code path to crash Bazel, but that seems strictly worse. Even if we can't test this code, it's conceptually the right way to handle these errors. I'll move part of the error handling into loadSkylarkAspect in a subsequent change. -- MOS_MIGRATED_REVID=112938284