Leonid Shalupov [Tue, 19 Nov 2019 16:16:24 +0000 (18:16 +0200)]
https for buildserver.labs.intellij.net
GitOrigin-RevId:
03d7b8619bfe960f3b19539381ee0891056a477a
Dmitry Avdeev [Thu, 14 Nov 2019 09:39:43 +0000 (12:39 +0300)]
fixing serialization for android gradle model
default constructors are required by new gradle model serialization engine
GitOrigin-RevId:
8e4257028de1aa5d76a306fb4f92bb75447d824d
Dmitry Avdeev [Wed, 16 Oct 2019 14:19:52 +0000 (17:19 +0300)]
layoutlib resources replaced by framework_res.jar
GitOrigin-RevId:
d977bbf9c531ecacd5a8732c602863d315f25dc2
android-build-team Robot [Mon, 5 Aug 2019 21:05:37 +0000 (21:05 +0000)]
Merging AOSP/Android Studio 3.5 Tools Base sources into intellij
GitOrigin-RevId:
904cb6d36a940c86983ad62a1c7df5ec06acc3d6
Vladimir Krivosheev [Thu, 8 Aug 2019 15:25:21 +0000 (17:25 +0200)]
fix AndroidGradleTaskManagerTest, update mockito to 3 (no API changes, just java 8 is required)
GitOrigin-RevId:
3c0c5228b530e9e5bb7d6421bd8ecbf73474b6de
Dmitry Avdeev [Wed, 7 Aug 2019 20:37:05 +0000 (23:37 +0300)]
IDEA-219113 Intellij 2019.2 with AndroidStudio plugin - Layout preview not working
GitOrigin-RevId:
0ee71498375fd722f92fe544e2b8770ee65cef01
Dmitry Avdeev [Wed, 7 Aug 2019 14:06:47 +0000 (17:06 +0300)]
building patched layoutlib-api
GitOrigin-RevId:
55ca5d9a985bf64df0ef03093fb70ae5e8ce9a49
android-build-team Robot [Mon, 5 Aug 2019 21:05:37 +0000 (21:05 +0000)]
Snap for
5781323 from
3ebf0d36b94867b45916f347e5bba7c1721430ef to studio-3.5-release
Change-Id: Ifd66fcca9b91b5aabdf4865722379a4268375b8f
Jerome Dochez [Thu, 1 Aug 2019 20:31:46 +0000 (13:31 -0700)]
removed dummyTaskRecord.
it prevented classloaders to be gc'ed when users switched
classpath (by adding/removing a plugin for instance).
Test: Adapted existing.
Fixes:
138649175
Change-Id: I364d2accd8773879560a99f626900f67b656c87f
(cherry picked from commit
9fe43fca763d0a05f4baa59147c1f9ff2d707633)
Matthew Gharrity [Tue, 9 Jul 2019 19:34:01 +0000 (12:34 -0700)]
Fix performance issue in StringAuthLeakDetector
Java regex matching can actually be quite slow.
In the case of StringAuthLeakDetector, it could take
10s to match a string of length 50k. We fix this by
only looking at strings of length 512 or less, which
take less than 10ms to match.
Test: existing (StringAuthLeakDetectorTest), and manual timing tests
Fixes:
133377376
Change-Id: I4ea4abf41a7a7015bdc8407c61aa6409fa5f6337
(cherry picked from commit
173358c301b2e0a7819b96edf924f86243de4960)
android-build-team Robot [Thu, 25 Jul 2019 13:19:01 +0000 (13:19 +0000)]
Snap for
5751500 from
5e870417f7d5e0e39a33824881c0da04fd101bcf to studio-3.5-release
Change-Id: I8522eb2addb4a5fcfe13cccf5124dd9dbff64fe8
Konstantin Bulenkov [Wed, 24 Jul 2019 17:10:21 +0000 (19:10 +0200)]
Remove unused imports and import duplicates from java files
GitOrigin-RevId:
e5d5f6df09f21ae2e894451bf0c5255f82836755
Alexander Luyblinsky [Mon, 22 Jul 2019 09:07:52 +0000 (11:07 +0200)]
Merge branch 'aliublinskii/OC-18684-receive-build-messages-directly-from-Xcode'
GitOrigin-RevId:
23fc7e127a2dc2681a702251990eb0e8c070fe4f
Anton Makeev [Sun, 14 Jul 2019 17:02:52 +0000 (19:02 +0200)]
Merge branch 'amakeev/gradle-resolve'
GitOrigin-RevId:
d23fec1c3c5add7e56330807ab891c0b25f97193
Alexander Luyblinsky [Fri, 28 Jun 2019 10:10:45 +0000 (12:10 +0200)]
Merge branch 'master' into aliublinskii/OC-18684-receive-build-messages-directly-from-Xcode
GitOrigin-RevId:
79aef992b1b3688e1ba08ab94f5c96093f06d5a6
Leonid Bushuev [Sun, 14 Jul 2019 16:22:50 +0000 (18:22 +0200)]
Merge branch 'oracle-debugger'
GitOrigin-RevId:
9720882fea107fe1b87e3e9e4765418f16a9ff95
Vasily Romanikhin [Fri, 5 Jul 2019 18:17:55 +0000 (21:17 +0300)]
Merge branch 'master' of ssh://git.jetbrains.team/intellij
GitOrigin-RevId:
d42a64dfaa5a076d18ed4456c708240e51b827b6
Leonid Bushuev [Tue, 25 Jun 2019 22:29:02 +0000 (01:29 +0300)]
Merge branch 'oracle-debugger'
GitOrigin-RevId:
eaf882946dd281965c20276d40901a21fe7d1500
Vasily Romanikhin [Fri, 5 Jul 2019 17:49:36 +0000 (20:49 +0300)]
CPP-7050: manual resolving merge-conflict
GitOrigin-RevId:
c8ac4610a891a13733832f147d243ab159f3d94d
Philipp Smorygo [Wed, 19 Jun 2019 14:08:20 +0000 (17:08 +0300)]
Merge remote-tracking branch 'origin/master'
GitOrigin-RevId:
13d2b6d1bcf648f67c1eff9ddaf0a639f44278f2
Leonid Bushuev [Mon, 17 Jun 2019 17:26:08 +0000 (19:26 +0200)]
Merge branch 'oracle-debugger'
GitOrigin-RevId:
c5fa33169830ac8cedf1014b83dd067c93800029
Vasily Romanikhin [Tue, 25 Jun 2019 14:15:08 +0000 (17:15 +0300)]
Merge branch 'master' into vromanik/CPP-7050_RemoteGDBServer
GitOrigin-RevId:
37dabc82f8976677b3567fa672c2fad426ddc97f
Philipp Smorygo [Wed, 19 Jun 2019 14:07:33 +0000 (17:07 +0300)]
Merge remote-tracking branch 'origin/master'
GitOrigin-RevId:
44a64da94f611c46ae320031b1a878c1b0513b68
Artem Gainanov [Mon, 17 Jun 2019 12:48:31 +0000 (15:48 +0300)]
Merge remote-tracking branch 'origin/master'
GitOrigin-RevId:
bd3f40d8953442bd0c9b8fc96a76320e438f9d68
Leonid Bushuev [Thu, 13 Jun 2019 21:11:31 +0000 (23:11 +0200)]
Merge branch 'oracle-debugger'
GitOrigin-RevId:
66fa6ce0c7e410cbc22012d0a9cf199847de15b0
Vasily Romanikhin [Tue, 25 Jun 2019 13:39:40 +0000 (16:39 +0300)]
Merge branch 'master' into vromanik/CPP-7050_RemoteGDBServer
GitOrigin-RevId:
ad81aebf662ea14cd3204ef41333463e8a4a6665
Philipp Smorygo [Wed, 19 Jun 2019 13:09:59 +0000 (16:09 +0300)]
Merge branch 'fsmorygo/parallelize-module-maps-dependencies'
# Conflicts:
# CIDR/cidr-lang/src/com/jetbrains/cidr/lang/modulemap/resolve/ModuleMapResolveService.kt
GitOrigin-RevId:
60e65328939f706b44b6b1202a588e037da96ce5
Artem Gainanov [Mon, 17 Jun 2019 12:46:07 +0000 (15:46 +0300)]
Merge remote-tracking branch 'origin/master'
# Conflicts:
# plugins/JavaScriptLanguage/testSrc/com/intellij/lang/javascript/typescript/TypeScriptHighlightingTest.java
GitOrigin-RevId:
a78288b74d096c36419334dc47cbc7165caf2e9c
Eldar Abusalimov [Sat, 15 Jun 2019 23:42:45 +0000 (02:42 +0300)]
Merge remote-tracking branch 'origin/eldar/cidr-debugger'
GitOrigin-RevId:
62d4cc57300e18689a4a48b6d9c56913cc728d0b
Vyacheslav Karpukhin [Wed, 12 Jun 2019 19:54:49 +0000 (21:54 +0200)]
Merge remote-tracking branch 'origin/master'
GitOrigin-RevId:
a750f816e997dd4766ed1428d58e7bf269b173c7
Leonid Bushuev [Mon, 10 Jun 2019 13:23:25 +0000 (15:23 +0200)]
Merge branch 'oracle-debugger'
GitOrigin-RevId:
c662179ecd842a986f4e60dc8a0435aadd83af3c
Vasily Romanikhin [Wed, 19 Jun 2019 10:35:29 +0000 (13:35 +0300)]
Merge branch 'master' into vromanik/CPP-7050_RemoteGDBServer
GitOrigin-RevId:
c4351434ae8bcefc4a077949ed8c97b08231e720
Philipp Smorygo [Mon, 10 Jun 2019 13:37:37 +0000 (16:37 +0300)]
Merge branch 'master' into fsmorygo/parallelize-module-maps-dependencies
# Conflicts:
# CIDR/cidr-lang/src/com/jetbrains/cidr/lang/modulemap/resolve/ModuleMapResolveService.kt
GitOrigin-RevId:
4eb8e2e5ebd34cea2caf0330574a02b24c955a4b
Eldar Abusalimov [Mon, 10 Jun 2019 09:41:12 +0000 (12:41 +0300)]
Merge remote-tracking branch 'origin/master' into eldar/cidr-debugger
# Conflicts:
# CIDR/cidr-debugger/resources/META-INF/CidrDebuggerPlugin.xml
GitOrigin-RevId:
de8e0298bef122544fd1af40c209050903b3d263
Vyacheslav Karpukhin [Wed, 12 Jun 2019 19:20:04 +0000 (21:20 +0200)]
Merge branch 'slava/coverage_with_jbdevice_refactoring'
# Conflicts:
# CIDR-appcode/appcode-build/groovy/org/jetbrains/intellij/build/appCode/AppCodeProperties.groovy
GitOrigin-RevId:
b69de039e2d0ff52b80049459ee80583789590a7
Vladislav Rassokhin [Mon, 10 Jun 2019 20:18:35 +0000 (23:18 +0300)]
IDEA-210698 Include Terraform plugin
GitOrigin-RevId:
3a65fde9e44f7ec9be565f5b3c9f334447d6dfca
Eldar Abusalimov [Mon, 10 Jun 2019 00:32:40 +0000 (03:32 +0300)]
Merge remote-tracking branch 'origin/leomash/debugger-console-completion'
GitOrigin-RevId:
e3a3222014ea4c2608f804340a54c2cd0e594089
Vyacheslav Karpukhin [Wed, 12 Jun 2019 17:50:21 +0000 (19:50 +0200)]
Merge branch 'slava/out_of_process_sim_and_dev' into slava/coverage_with_jbdevice_refactoring
# Conflicts:
# CIDR-appcode/appcode/bin/libjbdevice.dylib.commit
# CIDR-appcode/appcode/native/JBDeviceKit/JBDeviceKit/JBDevice.m
GitOrigin-RevId:
6bb166b710228df4a87ea5d479176ee843604b31
Vyacheslav Karpukhin [Wed, 12 Jun 2019 15:37:11 +0000 (17:37 +0200)]
Vyacheslav Karpukhin [Wed, 12 Jun 2019 17:23:33 +0000 (19:23 +0200)]
Fedor Kudasov [Mon, 15 Apr 2019 12:26:36 +0000 (13:26 +0100)]
Prevent stackoverflow when rendering xml
An attempt to fail earlier than stack overflow happens and to
provide a useful error message with a render of xml
Bug:
130315019
Test: all tests should pass
Change-Id: I8e846f1f1f95405f9787c7908114fef8a90fe59e
(cherry picked from commit
278cf00f05597d883c283d131c9dab1844b956df)
Udam Saini [Wed, 17 Jul 2019 22:44:13 +0000 (15:44 -0700)]
Use resolved component to get the resolved dep information
As we iterate through the dependencies, to get the dependency order
information, we should use the resolved component information, to get
the correct dependencies that are pulled into the final package.
bug:
137768457
Test: added integration test.
Change-Id: Ifd0fb4c592108087fb5ae4d13e9d8bc35fe64d7f
(cherry picked from commit
fc49493ddad828b90e8e17e1b461a92ab8e56c5a)
Fabien Sanglard [Thu, 18 Jul 2019 01:41:36 +0000 (18:41 -0700)]
IRR: Fix PM crash caused by early pipe closure
Problem: Upon issuing a cmd command, the forked process STDERR
and STDIN pipe were returned to the caller. If they were not
needed (a.k.a the caller was not interested in the child
outputs) these fds were closed. These closed pipe resulted in
a SIGPIPE in the child process if it tried to write().
Solution: If we know that the child process stdout and stderr
will not be inspected by the parent, we can redirect the
child stdout and stderr fds to "/dev/null" which will act as
a sink for any write(2) from the child process.
Bug:
137795791
Test: None
Change-Id: I5d7469cedacc9124191f549e054c70e47b5cb00c
android-build-team Robot [Thu, 18 Jul 2019 05:33:04 +0000 (05:33 +0000)]
Snap for
5736792 from
dabc6791fa77bc3a9bbbf2e58c4139614426f455 to studio-3.5-release
Change-Id: Iff6173b13b17a74cad5e53d891732a08ac16f457
Amr Afifiy [Wed, 17 Jul 2019 17:28:37 +0000 (17:28 +0000)]
Revert "Only filter resources directories for remote libraries"
This reverts commit
b13d353e01b38edd89b30915c14b14a57c83dde5.
Reason for revert: b/
137729143
Change-Id: Ie799838d719edd4ad9041d88ff7ae8d70bd813e5
diegoperez [Thu, 11 Jul 2019 16:54:48 +0000 (17:54 +0100)]
Fix mappings documented in DAC
Fixes some old mappings that did not match the documented ones in DAC at
https://developer.android.com/jetpack/androidx/migrate
Fixes:
137277710
Test: Adds regression test
Change-Id: I386a2f1844081835c2f07fe5b0736029372ebbb2
(cherry picked from commit
041057fa510283000746740dca4a5a29044d358a)
diegoperez [Tue, 9 Jul 2019 11:36:09 +0000 (12:36 +0100)]
Add exoplayer migration rule
Fixes:
137073253
Test: N/A
Change-Id: Ia3c358556e1253b8abd79f0a16340e8d14ade280
diegoperez [Mon, 24 Jun 2019 14:39:14 +0000 (15:39 +0100)]
Add the workmanager androidx migration rules
The rules were disabled because the artifact did not exist in androidx.
Test: Manually tested
Fixes:
133770823
Change-Id: I733d84b5cdf7e270634c53365845a7c11901acf0
(cherry picked from commit
f1198d95cb168f78c8aff1045216df2abb08dd8e)
Ivan Gavrilovic [Thu, 16 May 2019 10:20:49 +0000 (11:20 +0100)]
Run Jacoco instrumentation out-of-process for Bazel tests
When running Jacoco instrumentation with classloader isolation
we were hitting quite a lot of MissingResourceException when
running tests from Bazel. This is most likely a Gradle issue
(https://github.com/gradle/gradle/issues/9221), and they are
working on a fix. In the meantime, they advised that running
Jacoco out-of-process should fix the issue.
This CL does not change how we run Jacoco in production, as
we received no reports that resemble b/
130596259.
BUG:
130596259
Test: existing jacoco tests
Change-Id: I4476aa482d4aa465952a3ed366b1c301e36269a4
(cherry picked from commit
24643da34e728e2222ad4fcda612024fefd55a6e)
Alan Leung [Wed, 10 Jul 2019 22:03:16 +0000 (15:03 -0700)]
Split up SWAP_FAILED
They are mostly technical debt for lazily throwing that
error when something goes wrong. Some of them probably
never happen as far as I can tell.
Bug:
137015111
Test: None
Change-Id: Ia1a186fa4cf3a26f0f223d6fb24ecedd2a96dbdf
(cherry picked from commit
8b51ef245af3ba9d5a232b07bc438a44d260362f)
android-build-team Robot [Wed, 10 Jul 2019 14:45:26 +0000 (14:45 +0000)]
Snap for
5717432 from
4e398484706d11893ae9faf87c872baa5bf8b109 to studio-3.5-release
Change-Id: I5105edde364937f6bdbe410b6e8f0d2447ad84d0
Alan Leung [Mon, 8 Jul 2019 23:29:03 +0000 (16:29 -0700)]
Catch all of the PM install errors.
Bug:
136685146
Test: None
Change-Id: I53151104224c69ab586cb3b76e43f6c37b1c6b5a
Amr Afifiy [Mon, 8 Jul 2019 12:05:23 +0000 (13:05 +0100)]
Only compare columns in SourcePosition if both column values are set
Previously while comparing two SourcePosition objects if one of them
doesn't have a column value, the compare method will return incorrect
values which leads to MergingLog unable to find original position for
some source positions. This change changes the compare function to only
compare columns if both objects have the column value set.
Bug:
136987001
Test: Updated MergingLogTest with a test case that is fixed with the
change
Change-Id: I594c3e0a13a4c907cfa5354a93937446580f1693
(cherry picked from commit
7aa4b57a7602a05a914aa2e1b3b72385733b3f39)
Amr Afifiy [Thu, 20 Jun 2019 12:01:50 +0000 (13:01 +0100)]
Only look in the manifest merge blame if the file is a merged manifest
In aapt exception rewritting, there is an error where some xml files are
replaced incorrectly with android manifest. This change checks first if
the file is in merged manifests directory before looking up the merge
blame.
Fixes:
135665414
Test: updated ManifestHelperTest
Change-Id: I9adf0ac3d70e87a93d03a9faa9eb6b5d8f86d865
(cherry picked from commit
20d509d418ef406d1972357abd319f842fb8df9c)
android-build-team Robot [Wed, 3 Jul 2019 22:50:53 +0000 (22:50 +0000)]
Merge cherrypicks of [
8450222,
8451592,
8444786,
8450099,
8450223,
8451847] into studio-3.5-release
Change-Id: I19abce33396a02096682935e93eb64fe3b1e51c4
Juan Chen [Tue, 2 Jul 2019 19:48:28 +0000 (12:48 -0700)]
Update Kotlin dependencies to 1.3.41
Bug: b/
136686004
Test: existing
Change-Id: I09102af439c2a6a42a6889bbe87f6142e0a60d10
(cherry picked from commit
b0d9a98cdb3685727819a8138ced0b401b590107)
Juan Chen [Tue, 2 Jul 2019 19:48:28 +0000 (12:48 -0700)]
Update Kotlin dependencies to 1.3.41
Bug: b/
136686004
Test: existing
Change-Id: I09102af439c2a6a42a6889bbe87f6142e0a60d10
android-build-team Robot [Tue, 2 Jul 2019 17:17:43 +0000 (17:17 +0000)]
Snap for
5694533 from
b00f795853038afba236497e141001e06241ef64 to studio-3.5-release
Change-Id: I446cd1c7671798e9537ac7ccc266a02cbd83a6a5
Jerome Dochez [Thu, 20 Jun 2019 18:24:22 +0000 (11:24 -0700)]
Support multi-apk for packageForUnitTest task
The task implementation was assuming there is only one build output
which is clearly not the case in the multi apk case.
Test: Added unit and integration tests.
Fixes:
130740393
Change-Id: I9fcb5fb963709dc0a5b8564d16949b30a504cd81
Xavier Ducrohet [Thu, 27 Jun 2019 02:06:15 +0000 (19:06 -0700)]
Prevent calling initWith with the receiver.
this.initWith(this) can end up with calling
this.set(this) on Property<*> objects which leads
to stack overflow. This CL bails early in initWith if the arg
is this as a safety measure.
The real fix is making the property get the current value
of the other rather than dynamic link itself with the other
property. initWith is meant as a copy of values, not a
synchronization between build types.
Change-Id: Id6804f177b830b1b7bd1b53e855984d0f39f7d16
Fixes:
130102823
Test: added a new integ test: InitWithThisTest
Scott Pollom [Thu, 27 Jun 2019 16:26:59 +0000 (09:26 -0700)]
Use CLASS_MATCHER not CLASS_PATTERN in MergeClassesTransform
Bug:
136150634
Test: MergeClassesTransformTest
Change-Id: Ie4bcbf7a59ece3fd975f90d4b6dcd7f299771344
Bruno Buss [Wed, 26 Jun 2019 08:25:30 +0000 (09:25 +0100)]
Fix ConcurrentModificationException on taskSpans.
addSpan() can be called at the same time as writeTaskSpan(), which
causes the backing List (taskSpans) to be modified while it is being
copied by the writer.
Just making a copy of taskSpans before passing it would not be enough,
because we would still be exposed to change the list while we are making
the copy.
Fix:
136028926
Test: SetSdkDirHyperlinkTest not being flaky anymore + existing
Change-Id: I562721238dc0147935376f2acfaf002c1318954d
Xavier Ducrohet [Fri, 21 Jun 2019 23:58:48 +0000 (16:58 -0700)]
Java Res filters excludes both java and kt files.
For project using the old Eclipse-compatible source set configuration
that use src for both code and java res, it's important we properly
exclude all types of source files from the java resources.
Change-Id: I83180d19dcc9e9ce471209100c4ef38aa7610ebf
Fixes:
128835109
Test: new KotlinWithEclipseSourceSetTest
Juan Chen [Wed, 12 Jun 2019 16:57:05 +0000 (09:57 -0700)]
Update Kotlin dependencies to 1.3.40.
Bug: n/a
Test: existing
Change-Id: Ic5ad4ac97a73ded231e410a7edb9414ac4d8fb0d
Hung Nguyen [Wed, 5 Jun 2019 16:13:00 +0000 (17:13 +0100)]
Data binding: Optimize resource merging for library modules.
Data binding consumes the layout info output of resource merging.
A. For a variant in a library module, there are actually 2 types of
resource merging tasks:
1. "Package resources" task: merges the resources from the current
module.
2. "Merge resources" task: merges the resources from both the current
module and its dependencies.
The "merge resources" task should not be needed, but it is currently
kept because external libraries (e.g., the Kotlin Android extensions
plugin) might consume it.
See bug
110412851 for more details.
B. For a variant in a non-library module (or for an Android test
variant), there is currently only 1 "merge resources" task.
Data binding used to depend on the "merge resources" task in all cases.
but it actually only needs the "package resources" task.
This CL lets data binding depend on the "package resources" task for
library modules to improve performance. In the other cases, it still
depends on the "merge resources" task as the "package resources" task is
not created, and creating "package resources" instead of "merge
resources" might break other tasks that need the "merge resources" task.
Bug:
133092984
Bug:
110412851
Test: Existing tests should pass
Change-Id: I81996274a5d0ea6b41d3a764f664b9c5d89e8a52
android-build-team Robot [Wed, 19 Jun 2019 18:54:27 +0000 (18:54 +0000)]
Snap for
5673292 from
01f2988c75d953b54170ed8874b224c2f8a2aef2 to studio-3.5-release
Change-Id: Ic205105cca1d7993adacf74b91a2ff8d81b949af
Alan Leung [Fri, 14 Jun 2019 17:59:42 +0000 (10:59 -0700)]
Prevents Splitting of a Remote APK.
This serves as a temp fix for the odd control flow where we tries
to split an remove APK. We do a File.exists() check before splitting.
Ideally, we should never call splitter this way in the algorithm.
Bug:
135202430
Test: testApkNotRecognized added.
Change-Id: Iddf1340a2783c74b3dc4d2ae42efae371af56b0d
(cherry picked from commit
1fa966a7e7e21c4197883a55a9611e6aea0e9a8d)
android-build-team Robot [Mon, 17 Jun 2019 21:00:21 +0000 (21:00 +0000)]
Merge cherrypicks of [
8038918,
8038919,
8038938,
8037075] into studio-3.5-release
Change-Id: Ice7603676af556f3009d5a7301a8a08b99ac5682
Izabela Orlowska [Mon, 17 Jun 2019 14:55:57 +0000 (15:55 +0100)]
Ignore warning about compressed resources.arsc
Bug:
130617130
Test: N/A
Change-Id: Iac03a638d24b4370bd6b03ddb85916b299c8a854
(cherry picked from commit
5755a6f19b97478237a56bb4dd20bbf00ad30277)
Xavier Ducrohet [Fri, 14 Jun 2019 00:04:14 +0000 (17:04 -0700)]
Disable runtime->compile classpath constraints for test/feature modules.
Modules that consume another APK module (so separate test modules and
dynamic feature modules) have a restricted view of the runtime classpath.
It contains the APK they consume but not the transitive dependencies
as we don't want to package the dependencies of the consumed APK
in the test app or in the dynamic features.
Because of this the runtime classpath of these modules is very limited
and therefore using it to set constraints on the compile classpath
does not work. We need to find a better way to synchronize these
classpaths.
For now, disable the constraint mechanism for these modules in
order to reduce issues in 3.5.
Bug:
132939682
Test: just existing test, proper fix in master will have actual scenario tests.
Change-Id: I4493041c89a53b8a5bde41db5f145ff5830698a3
Izabela Orlowska [Mon, 17 Jun 2019 14:55:57 +0000 (15:55 +0100)]
Ignore warning about compressed resources.arsc
Bug:
130617130
Test: N/A
Change-Id: Iac03a638d24b4370bd6b03ddb85916b299c8a854
android-build-team Robot [Mon, 17 Jun 2019 19:45:17 +0000 (19:45 +0000)]
Snap for
5665964 from
e10902cb9ea60b211fc7259b1957beaaa5bc2587 to studio-3.5-release
Change-Id: I4b7dcdb0172c642e3e1039b364bdefadbc6ed951
Fabien Sanglard [Fri, 7 Jun 2019 22:49:09 +0000 (15:49 -0700)]
IRR: Fix Windows build (use .stripped.exe)
Problem: ".stripped" target does not generate a ".stripped"
executable ouput on on Windows.
Solution: Use ".stripped.exe" which is what is generated by bazel.
Bug: None
Test: Bazel build on Windows
Change-Id: I6ba9e8316e7812aa3f3625ce869cc6cf6a3e7c1c
(cherry picked from commit
8dc15383874d466fed0286805ab95258917d119e)
Fabien Sanglard [Thu, 6 Jun 2019 18:28:49 +0000 (11:28 -0700)]
IRR: Make raw and android part of binary name.
Problem: Raw ouput and matryoshka output have the same filename
which makes it confusing and error prone when looking at bazel
folders.
Solution: Raw outputs are explicitly tagged with "_raw" in the
filename. Android outputs are explicitly tagger with "android-".
Test: Bazel build
Bug: None
Change-Id: Ia930cde7392aa38b4cf4b56b7e0e39040f9a9557
(cherry picked from commit
1534563795d2f0e323d4222d20e40fcf07aa4053)
Fedor Kudasov [Wed, 22 May 2019 19:02:20 +0000 (20:02 +0100)]
Allow nav graphs in library but ignore them
Bug:
133280833
Test: all tests should pass
Change-Id: I2e414186e4e72e236778e04611a64ff2b1f9a7b0
(cherry picked from commit
05f6c57991a903dce6f51827ba8e07c70905baff)
Noah Zimmt [Wed, 5 Jun 2019 23:45:01 +0000 (16:45 -0700)]
Fix deployer metric formatting issue
Bug: None
Test: None
Change-Id: I1e70b060304fa2c359fa22289b6a5a5ab9838ea8
(cherry picked from commit
8563becce8111d738929fef789ac5c055b8e3c1a)
Sergey Prigogin [Tue, 4 Jun 2019 19:41:21 +0000 (12:41 -0700)]
Support new format of public.xml introduced in Android Q
prebuilts/studio/layoutlib/data/res/values/public.xml has not been updated yet to the latest Q version, but FrameworkResourceRepositoryTest passes with both, the current and the latest Q version of public.xml.
Test: FrameworkResourceRepositoryTest
Bug:
133526948
Change-Id: I816c70860ee5d7039cbbfac85c904e27ccacdb8d
(cherry picked from commit
67bcaa17364949dc3e0ccc5b427073ac204dffc3)
android-build-team Robot [Fri, 14 Jun 2019 16:38:29 +0000 (16:38 +0000)]
Snap for
5658768 from
fd1030c7c660f51efca9dfad34ef5e64623383a7 to studio-3.5-release
Change-Id: Ib543f01d6c682b2d33dda041b8918fbac1dcbf96
Stephen Atwood [Fri, 24 May 2019 03:14:05 +0000 (20:14 -0700)]
Use AAPT2 Version as Task input instead of AAPT Binary
AAPT2 binaries differ across platforms, so when the binary is used as a
task input machines running on different platforms cannot share a cache.
Using the AAPT2 version as an input, instead, allows for remote cache
hits even if the cache was populated by a machine with a different OS.
Bug: b/
126775254
Test: Existing tests
Change-Id: I30cb9d47ef5d1a6b750d25813e89cb439333d14a
Jeff Gaston [Thu, 2 May 2019 20:17:31 +0000 (16:17 -0400)]
Lint no longer considering media to be a containing project of media2/...MediaPlayer.java
Bug:
131844902
Change-Id: I1f001b7ed23b77361a322590d23e8dfcd18e20ed
(cherry picked from commit
2922c2d5b7f106979c471f14d4a446d557add95e)
Tor Norbye [Mon, 10 Jun 2019 14:13:01 +0000 (07:13 -0700)]
111487505: Unnecessary warning for Attribute 'importantForAutofill'
Fixes:
111487505
Test: Unit test included
Change-Id: If193684bb0778c7acf3caa57a4c21c35ac54b1a6
(cherry picked from commit
943edb37e3a1a77b889ecd8e492983f91582839d)
Shukang Zhou [Tue, 4 Jun 2019 21:31:22 +0000 (14:31 -0700)]
Strip the transport binary
Use the same BUILD file pattern as libjvmtiagent.so in
transport's BUILD rules.
Bug:
134421845
Test: manual
Change-Id: Ib5173f910be7cfacafa9efb9141d0ef8666657dc
Hannah Chu [Wed, 5 Jun 2019 00:03:15 +0000 (17:03 -0700)]
Improve error message when ADB cannot be executed
Bug:
134515798
Test: Manually tested on a Windows 7 installation without the Universal C runtime update
Change-Id: I7ba6d851995d6890eef621f9394e5b0274b74e92
(cherry picked from commit
a0bd3fea1422901f7f45cc07de5be5b3ab61ad0b)
Andrii Dehtiarov [Wed, 5 Jun 2019 21:32:23 +0000 (22:32 +0100)]
Change Android API 29 version string to the finalized one.
This changes the version string to 10.0 and adds
the corresponding test to verify the strings.
Test: Added.
Bug:
134580062
Change-Id: I1486cf91687730f1c064b76d2edc5eb78d607917
(cherry picked from commit
812eb72f1abbb9a421c55f08461cdf49504698bb)
Xavier Ducrohet [Wed, 22 May 2019 00:31:38 +0000 (17:31 -0700)]
Whitelists guava's listenablefuture not use constraints for test.
com.google.guava:listenablefuture:1.0 was extract from Guava but it's still
in the guava artifact as well. To avoid the same class on the classpath
guava depends on version
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
which is empty, so that version promotion removes the duplicated class
from the classpath.
However since AGP 3.3 we have strict version matching between app and
test.
The following scenario breaks:
- app depends on some AndroidX libraries that depend on listenablefuture
(which was extracted for them)
- test depends on guava somehow.
Now the constraints cannot be resolved.
The fix is to whitelist the artifact to not setup constraints for
it for the test/prod sync.
Fixes:
131431257
Test: new GuavaWhitelistTest
(cherry picked from commit
d87b4f3070c59b4b9a98d9264fbd7eb6b2467615)
Change-Id: Id4a8d4b16ee4ec55a51d0f7ba24d0e6d21bc9ec4
Izabela Orlowska [Wed, 5 Jun 2019 11:13:32 +0000 (12:13 +0100)]
Always clean GenerateResValues directory before use
The resValues file got renamed between 3.4 and 3.5 and the task didn't
clean its output directory before use and therefore you'd end up with
duplicate resources. We should always clean before use.
Test: GenerateResValuesTest + verified manually
Fixes:
133273847
Change-Id: Icd1da7c69fcba7870c0508d29b95d252c0ab5739
(cherry picked from commit
b9728b94ac08d5eec902465f8189aaf325f03c3a)
Amr Afifiy [Wed, 29 May 2019 13:16:28 +0000 (14:16 +0100)]
Added jar artifacts for all variants as input to LintPerVariantTask
LintPerVariantTask will eventually call ModelBuilder which will query
Gradle for jar artifacts for other variants, this change adds the jar
artifacts for all variants as input to the task so Gradle would make
sure that they are resolved before starting the task.
Bug:
132783036
Test: Verified manually. Ran FlavorsTest 500 times successfully while
usually it takes 50 times to produce a timeout.
Change-Id: I8ace375442df0efd8fdd0fc5ccdfd3983acccdfd
(cherry picked from commit
1f9787310d64a66370627a2aaefa1e616565c17d)
Vladimir Krivosheev [Mon, 3 Jun 2019 19:12:14 +0000 (21:12 +0200)]
fix yellow code - rationalize static call
GitOrigin-RevId:
2dc783a75d852bd9c8a537ef6ed6bfac07640177
Ying Chen [Mon, 3 Jun 2019 19:35:29 +0000 (12:35 -0700)]
Parse "disable src download" propery from IDE.
The project properties set by IDE are serialized and
deserialized by Gradle api, thus not keeping the original
value type.
This change converts the expected boolean type to String
first, then parse boolean value from string.
Bug:
129008025
Test: NA
Change-Id: I6d284ea32fd157739147e6c9243f4f819d27ae97
(cherry picked from commit
d378a4709f2a8e2b9dfec5d16ac0ef66a753831b)
Ivan Gavrilovic [Thu, 23 May 2019 15:14:38 +0000 (16:14 +0100)]
Report all D8 desugaring warnings as info
Output was cluttered with desugaring warnings. While those can be
very useful when running standalone D8, within the build system, it
is mostly noise. The reason is that the build system sets up the
classpath, so all available types are already in the desugaring
classpath for the classes compiled in the project. For classes coming
from Maven, there is not much we can do, so it makes sense not to
report these warnings.
Users are still able to show the warnings with "--info".
BUG:
118842646
Test: manually verified
Change-Id: Ie6a10235b5f4b82b66d13ed0f286a008868e584d
(cherry picked from commit
a4a1616c6f208172d9ed2933f35506ef3fdbc496)
Dmitry Avdeev [Mon, 3 Jun 2019 10:06:46 +0000 (13:06 +0300)]
running tests on module classpath
GitOrigin-RevId:
b73610a3e291859d428d4f992e06772e4c89b6c8
Dmitry Avdeev [Mon, 3 Jun 2019 09:36:33 +0000 (12:36 +0300)]
releasing buffer for jre9
GitOrigin-RevId:
b37fd00bb3697492b143117446321f17a0fb0550
Ivan Gavrilovic [Fri, 31 May 2019 08:49:50 +0000 (09:49 +0100)]
Filter multi-release classes from dirs when using R8
Multi-release classes may come from directories so when
using R8 we have to filter them out.
BUG:
134093979
Test: R8ToolTest
Change-Id: Ib74e35db8b1b4f856f4134970b1441df6c7e7bf0
(cherry picked from commit
730b0a82778330ce2a10ac68e1cb0beaf674425b)
Amr Afifiy [Wed, 22 May 2019 18:03:26 +0000 (19:03 +0100)]
Added jar artifacts as inputs to Lint
There is a deadlock that happens from time to time running lint on a
multi module project, :lib:lint tries to resolve jar artifacts and
:app:lint waits for :lib:lint to finish to enter a synchronized block
which doesn't happen.
This change adds those artifacts as inputs to make sure that they are
resolved before starting the task to avoid this issue.
Fixes:
132783036
Test: Verified manually. Ran LibMinifiyJarDepTest 2000 time successfully
while it usually takes only 100 times to produce a timeout.
Change-Id: I7c83d77fbaf7e3cefdf8615bc204598a97a84c90
(cherry picked from commit
9da4dbdef1418c3c370db00f853264c9248adf84)
Adarsh Fernando [Wed, 29 May 2019 20:43:11 +0000 (13:43 -0700)]
Docs: Updating useProGuard javadocs
Test: ./gradlew base:docs:dslHtml (docs only)
Bug:
133248269
Change-Id: I6d7c38afd474ba698f0827c30cdf646ad4b095c5
(cherry picked from commit
e4175b0ac34a82690074e8168d2148e022b90471)
Ivan Gavrilovic [Thu, 30 May 2019 09:46:11 +0000 (10:46 +0100)]
Fix merging library projects' dex from directories
Library project dex files can come from directories. E.g.
this is what happens when users apply Firebase Performance
plugin. This CL adds a check to make sure total number of
generated DEX files is below the threshold.
Also, theshold for merging library projects has been reduced to
500 instead of Integer.MAX_VALUE.
BUG:
132840182
Test: DexMergingTaskTest
Change-Id: I2561e4b4229862f9997873c88ddd21ecff41330e
(cherry picked from commit
4ba4224cecddfd0ba36a9359e60c06bc76f0a10f)
android-build-team Robot [Thu, 30 May 2019 14:27:14 +0000 (14:27 +0000)]
Snap for
5617320 from
0c66ad192e7a068d8058b86bd287f21dfbe12705 to studio-3.5-release
Change-Id: I821ecb2f817ce420f0e8ccd341a8d1df9736cfb6
Jomo Fisher [Tue, 30 Apr 2019 02:42:03 +0000 (19:42 -0700)]
Handle invalid % code in cxx logging string
Bug:
131271062
Test: Unittest
Change-Id: I42587f59282ce64fe3e6b25c2af640f6d6dc1498
(cherry picked from commit
ad9dce86bd8c2267d39c3fe82aef5e22e2605f97)
Christophe Rhodes [Wed, 29 May 2019 13:16:17 +0000 (16:16 +0300)]
make filling ModelCache recursive-safe
In JDK 9+, updating a HashMap within computeIfAbsent (for example
by having the function fill in leaves of a tree, depth first) is
not allowed.
- Manually disentangle computing values and inserting them into
the HashMap;
- Make ModelCache.computeIfAbsent() synchronized to defend against
concurrent modification.
Test: ModelCacheTest.computeIfAbsentReentrant
Bug:
128919710
Change-Id: Ib7c49d6d00d8decfd7311415e61ea65ea733090b
Signed-off-by: Nikita Skvortsov <nikita.skvortsov@jetbrains.com>
GitOrigin-RevId:
172c87b35bd18128445ec7a6a1c479e648775e18
Ivan Gavrilovic [Thu, 23 May 2019 13:59:20 +0000 (14:59 +0100)]
Do not pass classpath to D8 if min sdk version is N+
D8 supports desugaring lambdas without classpath. This means
that we can avoid having bootclasspath/classpath as task inputs
when min sdk version is 24+, and we can also avoid passing these
to D8.
BUG:
133394180
Test: existing desugaring tests
Change-Id: If28cb74dac91a804d4294fb9c4e65cad49f1c69d
(cherry picked from commit
a68bfc05c49eb6f07bbccc229ee189235e00d8ef)