| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
String categories are deprecated, replace this special-cased value with a specific OptionMetadata tag, TRIGGERED_BY_ALL_INCOMPATIBLE_CHANGES.
RELNOTES: None.
PiperOrigin-RevId: 191069412
|
|
|
|
|
|
| |
experimental flag. It also adds a logging handler for Execute calls so that they are logged.
PiperOrigin-RevId: 190991493
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In future reviews, we will use this to be able to pass assets and resources
individually.
Introduce replacement for ResourceContainerConverter that can handle generics
and should be about as flexible.
To support that replacement, slightly improve how CustomCommandLine handles
generics.
RELNOTES: none
PiperOrigin-RevId: 190970298
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a re-attempt at https://github.com/bazelbuild/bazel/pull/4058 which got reverted via https://github.com/bazelbuild/bazel/issues/4780
#4780 was being caused because cc plugin and j2objc plugin used different paths for outputs. I also manually verified that this works for both external cc_proto_librarys and external j2objc java_proto_libraries.
The output files are created without a repository, but the expected
filenames have them
This resolves issues when having a proto_library from an external build
file.
cc @c-parsons @pmbethe09
Closes #4793.
PiperOrigin-RevId: 190950452
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As part of decoupling Android resources and assets, rename
LocalResourceContainer to AndroidResources and remove asset code from it. Some
general asset and manfiest code still remains and will be dealt with in future
changes.
Remove LocalResourceContainer from the ParsingActionBuilder, since it's always
used to build the ResourceContainer that is subsequently passed in.
RELNOTES: none
PiperOrigin-RevId: 190945260
|
|
|
|
|
|
|
| |
clients have a particular super-hot key, and want to avoid the cpu cost of doing a map lookup.
RELNOTES: None
PiperOrigin-RevId: 190848508
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 190823566
|
|
|
|
| |
PiperOrigin-RevId: 190805577
|
|
|
|
| |
PiperOrigin-RevId: 190804641
|
|
|
|
|
|
| |
Users should instead pass `--swiftcopt=-whole-module-optimization`, which has the same effect.
PiperOrigin-RevId: 190800123
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 190785580
|
|
|
|
|
|
| |
with CodecRegisterer.
PiperOrigin-RevId: 190780559
|
|
|
|
| |
PiperOrigin-RevId: 190779535
|
|
|
|
|
|
|
|
|
| |
--incompatible_disable_objc_provider_resources is true.
This involves propagating SkylarkSemantics to all ObjcProvider constructors.
RELNOTES: Introduce --incompatible_disable_objc_provider_resources to turn off all resource-related fields of the Objc provider.
PiperOrigin-RevId: 190778491
|
|
|
|
|
|
|
|
|
| |
These have all had a chance to be categorized with the OptionDocumentationCategory enum, and the help output already uses the enum-grouped format.
The "incompatible changes" category has meaning for --all_incompatible_changes and will be removed separately.
RELNOTES: None.
PiperOrigin-RevId: 190773778
|
|
|
|
| |
PiperOrigin-RevId: 190771926
|
|
|
|
|
|
|
|
| |
Working on link build variables I see they cannot stay in a single file, they're
too big and complicated. This will make the followup cl smaller.
RELNOTES: None.
PiperOrigin-RevId: 190771072
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 190759949
|
|
|
|
|
|
| |
are now internal, and the one that https://github.com/bazelbuild/bazel/commit/d350a897f6182d637ea819c41cd292a50c2db53d just snuck in...
PiperOrigin-RevId: 190705224
|
|
|
|
|
|
|
|
|
|
| |
utility method getConfiguration(ConfiguredTarget). Done using IntelliJ structural replace, with
$val$.getConfiguration() -> getConfiguration($val$)
and Expression type: TransitiveInfoCollection, applying constraint within type hierarchy. Had to clean up a few compile errors.
PiperOrigin-RevId: 190692493
|
|
|
|
|
|
| |
ConfiguredTarget#getConfiguration(). Add convenience methods in four Java test classes for use by refactoring tools to do this#getConfiguration(ConfiguredTarget) instead of ConfiguredTarget#getConfiguration.
PiperOrigin-RevId: 190684008
|
|
|
|
|
|
|
|
|
| |
counters, optimized
for the use-case of hot keys.
RELNOTES: None
PiperOrigin-RevId: 190678987
|
|
|
|
|
|
| |
ConfiguredTarget#getConfiguration.
PiperOrigin-RevId: 190676253
|
|
|
|
|
|
|
| |
struct field on the j2objc fragment.
RELNOTES: None.
PiperOrigin-RevId: 190672475
|
|
|
|
| |
PiperOrigin-RevId: 190667019
|
|
|
|
|
|
|
|
|
| |
RELNOTES[INC]:
Variables PACKAGE_NAME and REPOSITORY_NAME are deprecated in favor of
functions `package_name()` and `repository_name()`.
https://docs.bazel.build/versions/master/skylark/lib/native.html#package_name
PiperOrigin-RevId: 190657188
|
|
|
|
|
|
| |
most elegant solution, but I don't have a better idea.
PiperOrigin-RevId: 190656869
|
|
|
|
|
|
|
|
|
| |
to use @SkylarkCallable instead."
expand_location.targets needed to be a named parameter.
RELNOTES: None.
PiperOrigin-RevId: 190624472
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 190617155
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For CLIF it doesn't matter whether we use PIC or no-PIC, the important thing
is we get an output protobuf. Before https://github.com/bazelbuild/bazel/commit/35773928532c132e3229b490ad98f4ebfd3e5770, using no-PIC was hardcoded.
In this CL it was decided to generate PIC instead because the toolchains used
by CLIF targets appeared to all have needsPic. In b/73955395 it has been shown
not to be the case.
In this CL I'm changing the logic again to use no-PIC for CLIF and to
circumvent the logic that checks what the configuration and the toolchain say.
At the same time, SWIG also used the method setGenerateNoPic() after the
variable onlySingleOutput was removed in https://github.com/bazelbuild/bazel/commit/4e9c9f93b15dd2594097644c6b9ca5a579c712fb. In this CL I use the
enum to apply PIC and no-PIC in the same cases as before for SWIG.
This CL also refactors the methods and boolean variables used to determine whether to use PIC or not, hopefully making it clearer.
RELNOTES:none
PiperOrigin-RevId: 190615548
|
|
|
|
| |
PiperOrigin-RevId: 190611069
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
remote cache.
The remote cache protocol only knows about regular files and
directories. Currently, during action output upload, symlinks are
resolved into regular files. This means cached "executions" of an
action may have different output file types than the original
execution, which can be a footgun. This CL bans symlinks from cachable
spawn outputs and fixes https://github.com/bazelbuild/bazel/issues/4840.
The interface of SpawnCache.CacheHandle.store is refactored:
1. The outputs parameter is removed, since that can be retrieved from the underlying Spawn.
2. It can now throw ExecException in order to fail actions.
Closes #4902.
Change-Id: I0d1d94d48779b970bb5d0840c66a14c189ab0091
PiperOrigin-RevId: 190608852
|
|
|
|
|
|
| |
*** Reason for rollback ***
PiperOrigin-RevId: 190600296
|
|
|
|
|
|
|
| |
Build variable global_whole_archive is not exposed in bazel anymore.
RELNOTES: None
PiperOrigin-RevId: 190598137
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a preparation work to expose Variables instance for all compile actions
to Skylark.
I didn't do linking variables in this cl, because this cl is already too big.
But they're coming shortly in a separate cl.
This is also in line with our goal to make build variables more discoverable and
better document.
RELNOTES: None.
PiperOrigin-RevId: 190591080
|
|
|
|
|
|
| |
Currently unnecessary
PiperOrigin-RevId: 190568226
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 190544948
|
|
|
|
|
|
|
| |
Also add tests for leading "+" in int(<string>) form.
RELNOTES: None
PiperOrigin-RevId: 190507678
|
|
|
|
| |
PiperOrigin-RevId: 190500851
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Roll-forward with fix (equality and hashcode for relevant classes). Also add a bit more debugging info in case of failure.
PiperOrigin-RevId: 190492934
|
|
|
|
|
|
| |
holds a variety of strategy/context maps.
PiperOrigin-RevId: 190491357
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- The number of stat() syscalls in the SymlinkedSandboxedSpawn was way too high. Do less, feel better.
- When using --experimental_sandbox_base, ensure that symlinks in the path are resolved. Before this, you had to check whether on your system /dev/shm is a symlink to /run/shm and then use that instead. Now it no longer matters, as symlinks are resolved.
- Remove an unnecessary directory creation from each sandboxed invocation. Turns out that the "tmpdir" that we created was no longer used after some changes to Bazel's TMPDIR handling.
- Use simpler sandbox paths, by using the unique ID for each Spawn provided by SpawnExecutionPolicy instead of a randomly generated temp folder name. This also saves a round-trip from our VFS to NIO and back. Clean up the sandbox base before each build to ensure that the unique IDs are actually unique. ;)
- Use Java 8's Process#isAlive to check whether a process is alive instead of trying to get the exitcode and catching an exception.
Closes #4913.
PiperOrigin-RevId: 190472170
|
|
|
|
|
|
|
| |
instead.
RELNOTES: None.
PiperOrigin-RevId: 190463597
|
|
|
|
|
|
| |
better, get rid of it, and immutableSetMarshaller for good measure.
PiperOrigin-RevId: 190294922
|
|
|
|
|
|
|
|
|
|
|
| |
BazelPackageBuilderHelperForTesting#sanityCheckBazelPackageLoader.
I should have written this comment more precisely. I am sorry I didn't. I vaguely recall some issues where the PackageFactory usage would do some scan of all the skylark classes and do some mutation to global state (this wouldn't normally be a problem since for blaze/bazel, there's one PackageFactory instance created per blaze/bazel server, and it's created at the beginning of the server).
Nevertheless, I do not see any problems now.
RELNOTES: None
PiperOrigin-RevId: 190229913
|
|
|
|
| |
PiperOrigin-RevId: 190224987
|
|
|
|
|
|
|
|
|
| |
work done by BazelPackageBuilderHelperForTesting#sanityCheckBazelPackageLoader.
We fix this flakiness by _not_ having RepositoryDelegatorFunction unconditionally 'fetch' local repos. We then have to make a change to BazelPackageLoader test to reinstate these mutations, since it was only working before due to the unconditional filesystem mutations done here :p
RELNOTES: None
PiperOrigin-RevId: 190222830
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove Optional<> where it's not needed. It's nice for return values, but IMHO it was overused in this code (e.g. Optional<List<X>> is an anti-pattern, as the list itself can already signal that it is empty).
- Use Bazel's own Path class when dealing with paths, not String or java.io.File.
- Move LinuxSandboxUtil into the "sandbox" package.
- Remove dead code and unused fields.
- Migrate deprecated VFS method calls to their replacements.
- Fix a bug in ExecutionStatistics where a FileInputStream was not closed.
Closes #4868.
PiperOrigin-RevId: 190217476
|
|
|
|
|
|
|
|
|
|
| |
- fix negatives + prefixes
- fix boundary cases (min int value)
The only remaining relevant differences from Python are that we disallow int() with zero args, we don't allow whitespace in strings, and we take Python 3's view on prohibiting leading 0s when base is 0.
RELNOTES: None
PiperOrigin-RevId: 190216646
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Closes #4781.
Fix https://github.com/bazelbuild/bazel/issues/4149
RELNOTES:
Users can now pass --experimental_shortened_obj_file_path=true to have a shorter object file path, the object file paths (and all other related paths) will be constructed as following:
If there's no two or more source files with the same base name:
<bazel-bin>/<target_package_path>/_objs/<target_name>/<source_base_name>.<extension>
otherwise:
<bazel-bin>/<target_package_path>/_objs/<target_name>/N/<source_base_name>.<extension>
N = the file?s order among the source files with the same basename, starts from 0.
Examples:
1. Output names for ["lib1/foo.cc", "lib2/bar.cc"] are ["foo", "bar"]
2. Output names for ["foo.cc", "bar.cc", "foo.cpp", "lib/foo.cc"] are
["0/foo", "bar", "1/foo", "2/foo"]
The default value of --experimental_shortened_obj_file_path option is false, but we plan to flip it to true and eventually remove this option.
You shouldn't depend on the format of generated object file path, but if you do and this change breaks you, please use --experimental_shortened_obj_file_path=false to work around it.
PiperOrigin-RevId: 190214375
|