| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125589653
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125449526
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-XX:TieredStopAtLevel=1 instead of -client, as the latter is ignored on 64-bit JVMs since at least JDK 6.
The new flags have been shown to cut down CPU time by 50% due to reduced time spent in JIT and improving overall run time for short running actions, some times also cutting them in half.
Here's a benchmark of Bazel building itself, giving a nice 2-4x speedup:
./output/bazel clean && ./output/bazel build //src:bazel
Bazel before this change:
INFO: Elapsed time: 197.783s, Critical Path: 194.10s
INFO: Elapsed time: 198.928s, Critical Path: 195.65s
INFO: Elapsed time: 194.913s, Critical Path: 191.56s
Bazel before this change with --strategy=Javac=worker:
INFO: Elapsed time: 130.436s, Critical Path: 124.27s
INFO: Elapsed time: 116.114s, Critical Path: 112.30s
INFO: Elapsed time: 116.852s, Critical Path: 84.45s
Bazel with this change:
INFO: Elapsed time: 121.625s, Critical Path: 119.08s
INFO: Elapsed time: 119.401s, Critical Path: 115.80s
INFO: Elapsed time: 121.198s, Critical Path: 119.03s
Bazel with this change and --strategy=Javac=worker:
INFO: Elapsed time: 54.456s, Critical Path: 51.28s
INFO: Elapsed time: 53.272s, Critical Path: 51.09s
INFO: Elapsed time: 52.966s, Critical Path: 49.86s
Bazel with this change and --strategy=Javac=worker and stripping -XX:TieredStopAtLevel=1 from JVM flags when using workers:
INFO: Elapsed time: 61.599s, Critical Path: 58.93s
INFO: Elapsed time: 48.695s, Critical Path: 45.02s
INFO: Elapsed time: 46.874s, Critical Path: 43.91s
INFO: Elapsed time: 46.174s, Critical Path: 43.32s
(The latter is a possible optimization for workers and it's also nice to know that the limited tiered compilation does not hurt their performance.)
--
MOS_MIGRATED_REVID=125448089
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125160288
|
|
|
|
|
|
|
| |
Small steps towards #1150.
--
MOS_MIGRATED_REVID=125158135
|
|
|
|
|
|
|
| |
This should help with #1203.
--
MOS_MIGRATED_REVID=125154544
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
repositories
One interesting side effect of how this is implemented is that for external
repositories, bin/ and genfiles/ are combined. External repo output is under
bazel-out/local-fastbuild/repo_name for each repo.
Fixes #1262.
RELNOTES[INC]: Previously, an external repository would be symlinked into the
execution root at execroot/local_repo/external/remote_repo. This changes it to
be at execroot/remote_repo. This may break genrules/Skylark actions that
hardcode execution root paths. If this causes breakages for you, ensure that
genrules are using $(location :target) to access files and Skylark rules are
using http://bazel.io/docs/skylark/lib/File.html's path, dirname, etc.
functions.
--
MOS_MIGRATED_REVID=125095799
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=124008772
|
|
|
|
|
|
|
|
|
|
|
| |
functional. This will improve signal-to-noise ratio for Android and our
external users.
Specifically, disables ClassName, DepAnn, LongLiteralLowerCaseSuffix,
MultipleTopLevelClasses, and StaticAccessedFromInstance.
--
MOS_MIGRATED_REVID=123459006
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=123431237
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=123342439
|
|
|
|
|
|
|
| |
The generated sources are useful for debugging annotation processors.
--
MOS_MIGRATED_REVID=122683781
|
|
|
|
|
|
|
|
| |
This allows --experimental_java_header_compilation=true to be used with Bazel.
It is still off by default.
--
MOS_MIGRATED_REVID=121623213
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=121520005
|
|
|
|
|
|
|
|
|
|
| |
RELNOTES: Bazel's workspace name is now io_bazel. If you are using Bazel's
source as an external repository, then you may want to update the name you're
referring to it as or you'll begin seeing warnings about name mismatches in your
code.
--
MOS_MIGRATED_REVID=120926179
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=120846643
|
|
|
|
|
|
|
|
|
| |
Prefer Writer to OutputStream to reduce the number of char/byte conversions,
and pass in a Writer for the persistent worker entry point instead of
redirecting stdout and stderr.
--
MOS_MIGRATED_REVID=120771072
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=120742339
|
|
|
|
|
|
|
|
| |
This is consistent with JavaBuilder. Some actions (e.g. resource compilations)
don't set these flags.
--
MOS_MIGRATED_REVID=120590777
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
commit 790d2f6009d47fe92cf0cd92a1473bbf0141f32e.
*** Reason for rollback ***
Broke non-Bazel projects on ci.bazel.io
Fixes #1168
*** Original change description ***
Move the runfiles for external repositories to under the x.runfiles/ directory
This also sets the Bazel workspace name to io_bazel_source.
Fixes #848.
Relevant to #1116, #1124,
RELNOTES[INC]: All repositories are now directly under the x.runfiles directory in the runfiles tree (previously, external repositories were at x.runfiles/main-repo/external/other-repo. This simplifies handling remote repository runfiles considerably, but will break existing references to external repository runfiles....
***
--
MOS_MIGRATED_REVID=120535721
|
|
|
|
|
|
|
|
| |
Explicitly close the PrintWriter before exiting, calling write(String) on an
auto-flushing PrintWriter doesn't flush the output.
--
MOS_MIGRATED_REVID=120473105
|
|
|
|
|
|
|
| |
standard annotations.
--
MOS_MIGRATED_REVID=120351013
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Along the path, fix the build for JDK 7 and get rid of
most ugliness in the JDK 7 build. Now simply setting
JAVA_VERSION to 1.7 will build a JDK 7 compatible version.
Fixes #1159.
--
Change-Id: I9599283844a57d9e053f12d37445907f22a9232e
Reviewed-on: https://bazel-review.googlesource.com/#/c/3452
MOS_MIGRATED_REVID=120332747
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This also sets the Bazel workspace name to io_bazel_source.
Fixes #848.
Relevant to #1116, #1124,
RELNOTES[INC]: All repositories are now directly under the x.runfiles directory in the runfiles tree (previously, external repositories were at x.runfiles/main-repo/external/other-repo. This simplifies handling remote repository runfiles considerably, but will break existing references to external repository runfiles.
---
Furthermore, if a Bazel project does not provide a workspace name in the WORKSPACE file, Bazel will now default to using __main__ as the workspace name (instead of "", as previously). The repository's runfiles will appear under x.runfiles/__main__/.
--
MOS_MIGRATED_REVID=120224534
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change disables --java_langtools, --javabuilder_top, --singlejar_top,
--genclass_top, and --ijar_top, and finishes replacing them with
java_toolchain.{javac,javabuilder,singlejar,genclass,ijar}.
RELNOTES: Replace --java_langtools, --javabuilder_top, --singlejar_top,
--genclass_top, and --ijar_top with
java_toolchain.{javac,javabuilder,singlejar,genclass,ijar}
--
MOS_MIGRATED_REVID=120154954
|
|
|
|
|
|
|
| |
--
Change-Id: Ie4236fbadc63ef38f08783acc0162cf0dd4fe872
Reviewed-on: https://bazel-review.googlesource.com/3422
MOS_MIGRATED_REVID=120146252
|
|
|
|
|
|
|
| |
Fixes #1104.
--
MOS_MIGRATED_REVID=120098776
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=119421719
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=119394125
|
|
|
|
|
|
|
| |
If NATIVE_HEADER_OUTPUT is set (which it always was for ZipOutputFileManager), then javac will emit jni headers for native methods. Emitting the the headers requires doing unnecessary additional work and completing additional symbols, which may not be present on the classpath.
--
MOS_MIGRATED_REVID=119286406
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=119188524
|
|
|
|
|
|
|
|
|
|
| |
Some annotation processors use non-standard APIs to examine the AST, and are
broken by tree pruning. This change adds configuration to Turbine to allow a
blacklist of processors to be provided, and disables tree pruning if any
blacklisted processors are found.
--
MOS_MIGRATED_REVID=119079114
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=118967358
|
|
|
|
|
|
|
| |
for compatibility with JavaBuilder.
--
MOS_MIGRATED_REVID=118802288
|
|
|
|
|
|
|
| |
Also rename the build method from add* to set*.
--
MOS_MIGRATED_REVID=118746866
|
|
|
|
|
|
|
|
|
| |
instead of initializing all file objects to empty. Some annotation processors
speculatively open files and handle FileNotFoundException, and we were always
providing empty files.
--
MOS_MIGRATED_REVID=118730162
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously turbine whitelisted -source and -target flags and ignored all other
configured javacopts, including custom annotation processor options and javac
debug flags.
The change switches to allowing all javacopts, and blackisting options that are
known to be incompatible.
Also ensure that invalid flags result in an error.
--
MOS_MIGRATED_REVID=118718745
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=118713377
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=118488877
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=118488791
|
|
|
|
|
|
|
| |
Avoids spurious diagnostics about annotation processor generated class names not matching the file path.
--
MOS_MIGRATED_REVID=118488628
|
|
|
|
|
|
|
| |
JavaBuilder overwrites files when extracting source jars, silently ignoring duplicates. It it'd be better if it didn't, but until it's fixed turbine should have the same behaviour.
--
MOS_MIGRATED_REVID=118487939
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=118410183
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Certain annotation processors that generate references to transitive
dependencies are exempt from Strict Java Deps.
Dagger ensures that all references to transitive types are reachable via a
chain of direct dependencies specified in @Component interfaces. We don't
record dependencies inside dagger-generated code, since Dagger is already
enforcing strict dependencies. By not recording the deps we allow dependency
management tools to remove depednencies that are only needed transitively by
dagger.
This approach doesn't work in general, since processors may generate references
to transitive types that are not reachable via a chain of direct deps, and
which may be subject to pruning by the reduced classpath optimization.
This change causes strict deps to record dependencies (but not emit strict deps
errors) inside code generated by exempt annotation processors other than
Dagger.
--
MOS_MIGRATED_REVID=117882599
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The //tools/defaults package exports the values of blaze flags, including
--java_langtools. That flag is being deprecated and the configuration moved
into the java_toolchain rule.
This change migrates from the //tools/defaults targets for Java tools to the
canonical versions of those tools.
Unlike the previous solution, the tools in the package are no longer affected
by the current build configuration (e.g. the value of --java_toolchain). If
that configurability becomes necessary again, we can achieve it using Skylark
(via the java.compilation_info.boot_classpath provider), or by expanding the
blaze query output for java_toolchain (as used in java_toolchain_content).
--
MOS_MIGRATED_REVID=117485737
|
|
|
|
|
|
|
|
| |
This prevents processors from seeing turbine's version of e.g. guava. javac is
still available becuase Blaze puts it on the bootstrap classpath.
--
MOS_MIGRATED_REVID=117363448
|
|
|
|
|
|
|
| |
//third_party/protobuf.
--
MOS_MIGRATED_REVID=117336377
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=117151379
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=116498132
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Roll-forward of I3762e6be911b79a133a2959fce3a8bf34d183232 with fixes.
Otherwise it prints the wrong message when the target which is missing
a dependency is in a repository other than the default one.
Second try with the new test disabled for jdk7 because that uses an old,
fixed version of the code.
--
Change-Id: I7e16fa874066e1b63064662df42a98784fcae233
Reviewed-on: https://bazel-review.googlesource.com/#/c/3032/
MOS_MIGRATED_REVID=116248259
|