| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
BUG=33295755
--
PiperOrigin-RevId: 150633735
MOS_MIGRATED_REVID=150633735
|
|
|
|
|
|
|
|
|
|
|
| |
Having a correlation between an output jar and a source jar is not enough.
There may be situations when an output jar is generated from more source jars,
not just one. We need this flexibility especially in Skylark for the java
sandwich, when the user can compile multiple source jars.
--
PiperOrigin-RevId: 149510534
MOS_MIGRATED_REVID=149510534
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Broke tests on CI: http://ci.bazel.io/job/bazel-tests/570/
*** Original change description ***
Roll forward execroot change
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. Cust...
--
PiperOrigin-RevId: 147833177
MOS_MIGRATED_REVID=147833177
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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. Custom crosstools that hardcode external/<repo> paths will have to
be updated.
Issue #1262.
--
PiperOrigin-RevId: 147726370
MOS_MIGRATED_REVID=147726370
|
|
|
|
|
|
|
|
|
| |
This functionality is never used, have never been exposed to Skylark
and is a continuous pain to maintain and test.
--
PiperOrigin-RevId: 145079832
MOS_MIGRATED_REVID=145079832
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Roll forward after fixing tests. Changes from rolled-back CL:
Native aspect now determines 'isExternal' identically to skylark aspect.
RepositoryName.isMain was unreliable (at least in testing environment),
because unknown repos (occurring due to some race condition) are flagged
as being in the 'default' repo, distinct from the 'main' repo.
We now bypass RepositoryName entirely, and use the same label string
heuristic as used in the Skylark aspect.
--
PiperOrigin-RevId: 141314075
MOS_MIGRATED_REVID=141314075
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
This change make AndroidStudioInfoAspectTest#testAndroidLibrary flaky
bazel test --nocache_test_results --runs_per_test 10 //src/test/java/com/google/devtools/build/lib:ideinfo_test
gives 2 to 3 failures out of 10 run.
Fixes #2192
*** Original change description ***
Pass isExternal field to blaze ide info proto
Roll forward after fixing tests. The intellij aspect tests now
correctly retains the required toolchain targets in the WORKSPACE file.
--
PiperOrigin-RevId: 141174688
MOS_MIGRATED_REVID=141174688
|
|
|
|
|
|
|
|
|
| |
Roll forward after fixing tests. The intellij aspect tests now
correctly retains the required toolchain targets in the WORKSPACE file.
--
PiperOrigin-RevId: 141093346
MOS_MIGRATED_REVID=141093346
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Broke ci.bazel.io
See http://ci.bazel.io/job/bazel-tests/BAZEL_VERSION=HEAD-jdk7,PLATFORM_NAME=linux-x86_64/379/console for error log.
See https://cr.bazel.build/7610/ for tests that confirm fix.
*** Original change description ***
Pass isExternal field to blaze ide info proto
--
Change-Id: Ieff9fbc719ea7baf8321bf50570fae5f7d6c7fdd
Reviewed-on: https://cr.bazel.build/7610
PiperOrigin-RevId: 141029777
MOS_MIGRATED_REVID=141029777
|
|
|
|
|
|
| |
--
PiperOrigin-RevId: 140862659
MOS_MIGRATED_REVID=140862659
|
|
|
|
|
|
|
|
|
| |
android_studio_ide_info -> intellij_ide_info
RuleIdeInfo -> TargetIdeInfo
Drop "rule" from all sub-ide infos (eg. JavaRuleIdeInfo -> JavaIdeInfo)
--
MOS_MIGRATED_REVID=140438983
|
|
|
|
|
|
|
|
| |
Also clean up the setting of aspect name in ConfiguredAspect and
AspectDefintion - it is now obtained from the AspectClass.
--
MOS_MIGRATED_REVID=140357052
|
|
|
|
|
|
|
| |
Also add test to make sure jar filter handles multiple source jars correctly (which it already did).
--
MOS_MIGRATED_REVID=139462526
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=138182982
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=137178015
|
|
|
|
|
|
|
|
|
|
|
| |
This supports genrules that output srcjars that
are then inputs to java_libraries.
Also add support to produce a source jar with
the contents of the gen jar.
--
MOS_MIGRATED_REVID=136099457
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=135816762
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
With this approach, the R.class winds up in the filtered jar because its origin isn't among the "normal" Java sources. I'll have to be a little smarter, but start with rolling this back.
*** Original change description ***
Support srcjar files in filtered gen jar.
If a java_library has any srcjar files in its sources
attribute, the output of these would be discarded.
To make it more robust, invert the jar filter to
keep everything *except* source artifact java files.
Previously, we would build a manifest containing all
the generated java files and use that to filter.
This should also be ever so slightly faster since
we can skip an action.
--
MOS_MIGRATED_REVID=135406849
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a java_library has any srcjar files in its sources
attribute, the output of these would be discarded.
To make it more robust, invert the jar filter to
keep everything *except* source artifact java files.
Previously, we would build a manifest containing all
the generated java files and use that to filter.
This should also be ever so slightly faster since
we can skip an action.
--
MOS_MIGRATED_REVID=135351129
|
|
|
|
|
|
|
| |
new AIDL files in relation to their location.
--
MOS_MIGRATED_REVID=134687843
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=134566270
|
|
|
|
|
|
|
| |
RELNOTES: Remove deprecated absolute paths in blaze IDE artifacts
--
MOS_MIGRATED_REVID=133758389
|
|
|
|
|
|
|
|
|
|
|
|
| |
by class.
TransitiveInfoProviderMap enforces that the provider implements the interface it's keyed by
and provides accessors the reduce the amount of casting. This in general reduces boilerplate throughout wherever TransitiveInfoProviders are mapped by their class.
Also add shorthand for adding a provider where it only implements TransitiveInfoProvider once, reducing the redundant specification of the TransitiveInfoProvider class. Infer the class as the exclusive direct implementor of TransitiveInfoProvider to account for special cases like AutoValue and LicenseProvider.
--
MOS_MIGRATED_REVID=133386336
|
|
|
|
|
|
|
| |
This is part of prepping for #1262.
--
MOS_MIGRATED_REVID=132553178
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Any java rule that mixes generated and non-generated sources
will produce a filtered jar containing only the generated
output.
For a java rule with only "normal" sources or only generated
source files, no filtered jar is produced.
This will allow the IDE to resolve those generated sources.
RELNOTES:None
--
MOS_MIGRATED_REVID=132113568
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This doesn't do anything yet, it's in preparation for the execroot rearranging
change. The execroot will have one bazel-out per repo, so it'll look like:
execroot/
repo1/
bazel-out/
local-fastbuild/
bin/
repo2/
bazel-out/
local-fastbuild/
bin/
genfiles/
repo3/
bazel-out/
local-fastbuild/
testlogs/
and so on. Thus, any output path (getBinDirectory() & friends) needs to know
what the repo name is. This changes so many places in the code I thought it
would be good to do separately, then just flip the functionality in the
execroot-rearranging commit.
While I was poking around, I changed all of the refs I could from getPackageRelativeArtifact() to getBin/GenfilesArtifact(), so that 1) rule implementation don't have to know as much about roots and 2) they'll be more isolated from other output dir changes.
`bazel info` and similar just return roots for the main repository.
The only "change" is passing around a target label in the Java rules.
Continues work on #1262.
--
MOS_MIGRATED_REVID=129985336
|
|
|
|
|
|
|
|
|
|
|
|
| |
This output group will contain all artifacts that are
needed to compile the project (and get compilation errors),
but aren't needed during the resolve step.
Initially ide-compile is the object file output from
any cc_* rule, so we can get compile errors.
--
MOS_MIGRATED_REVID=129937436
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
I want to do this in a way that exposes the data attribute only for android_test and android_binary, so I'll add it to the deploy manifest instead.
*** Original change description ***
Expose test "data" attribute to IDE.
This is needed to deploy android_tests to the device for testing. For
symmetry we expose it for all tests rules.
--
MOS_MIGRATED_REVID=129926351
|
|
|
|
|
|
|
|
| |
This is needed to deploy android_tests to the device for testing. For
symmetry we expose it for all tests rules.
--
MOS_MIGRATED_REVID=129918247
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
execroot change
This is in prep for making the execution root path for external repositories
../repo_name (instead of external/repo_name). Right now, the getRunfilesPath() returns that path, so that is renamed getExecRoot() (since the runfiles are really just a reflection of the execRoot structure). getSourceRoot() replaces getPathFragment, which has always been a confusing name (it's not clear from the name
what the difference is between it and getPackageFragment()). It returns the relative path to source files for external repositories (external/repo_name).
Also renamed/moved to more sensible class a few static RepositoryName fields.
--
MOS_MIGRATED_REVID=128594419
|
|
|
|
|
|
|
|
|
|
| |
Both source and generated hdrs are included in the output group.
Might be cleaner to only include generated headers -- perhaps by
adding a new field to CppCompilationContext. This solution seems
lighter-weight, however.
--
MOS_MIGRATED_REVID=126725901
|
|
|
|
|
|
|
|
| |
* Support package manifest
* Add android_resource support
--
MOS_MIGRATED_REVID=124187461
|
|
|
|
|
|
|
|
|
| |
The IDE currently extracts these from the output jars by
a fragile string comparison. This will allow the IDE to
do so more robustly (eg. in case the resource jar output is renamed).
--
MOS_MIGRATED_REVID=123939803
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=123858617
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=123675084
|
|
|
|
|
|
|
|
|
| |
If we convert the aspect to a string it's kept in the analysis cache
along with the original proto, even if the associated action is
never used.
--
MOS_MIGRATED_REVID=123280808
|
|
|
|
|
|
|
|
|
|
| |
The IDE doesn't add generated sources. Including these causes
execution of actions that generate sources, including building
whatever tools they need. This is not necessary for the IDE
stage.
--
MOS_MIGRATED_REVID=123004127
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=122846987
|
|
|
|
|
|
|
|
|
|
|
| |
* Do not include cc info for non-C rules
* Omit exported headers (unused on the IDE side)
This CL reduces aspect output size (and memory footprint) by ~50MB
for an example real-life project.
--
MOS_MIGRATED_REVID=122537339
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=122170387
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=121612007
|
|
|
|
| |
MOS_MIGRATED_REVID=121373163
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NativeAspectClass.
This a large refactoring of the aspects, currently we have the following:
- AspectClasses: The interface AspectClass is a implemented by either
SkylarkAspectClass or NativeAspectClass<NativeAspectFactory>.
They are wrappers for the AspectFactories and they hold the information about
the Class<> of the factory.
- AspectFactories (FooAspect.java): Represented by the interfaces
ConfiguredAspectFactory and NativeAspectFactory, also by
the interface ConfiguredNativeAspectFactory which is the union of the two
aforementioned interfaces.
All aspects implement ConfiguredNativeAspectFactory except Skylark aspects
which implement only ConfiguredAspectFactory.
After this CL the distinction between NativeAspectFactories and NativeAspectClasses
dissappear, namely aspect that extends NativeAspectClass is considered native
and if it implements ConfiguredAspectFactory it is configured.
Therefore the interfaces NativeAspectFactory and ConfiguredNativeAspectFactory
both disappear.
With this refactoring the aspectFactoryMap in the ConfiguredRuleClassProvider
changes its type from (String -> Class<? extends NativeAspectClass>)
to (String -> NativeAspectClass) which means it is now able to have an instance
of the aspect instead of its Class only.
By doing this, it is now possible to pass parameters when creating an
aspect in the ConfiguredRuleClassProvider.
--
MOS_MIGRATED_REVID=120819647
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=119755803
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=118565877
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=117560803
|
|
|
|
|
|
|
|
|
|
| |
For backwards compatibility reasons, resources show up in both the
originating rule as well as the containing rule. Implementations can
check the :resources attribute to see if they should ignore their
resources.
--
MOS_MIGRATED_REVID=116698804
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=116549753
|
|
|
|
|
|
|
|
| |
Also expose functionality to calculate resource source directory from
Android resource artifact.
--
MOS_MIGRATED_REVID=115492705
|
|
|
|
|
|
|
|
|
|
|
|
| |
resources.
In Java code, it is a shared logic in
LocalResourceContainer.definesAndroidResources (that method has a fair
number of usages). This CL exposes that information on
AndroidIdeInfoProvider and futher on AndroidSkylarkInforProvider.
--
MOS_MIGRATED_REVID=115453472
|