Skip to content

Conversation

@atsushieno
Copy link
Contributor

This shold fix https://bugzilla.xamarin.com/show_bug.cgi?id=42091

When we fixed #27553 we reorganized the entire Java library resolution
step so that the build tasks could consistently resolve jars to package.
Sadly AndroidExternalJavaLibrary dropped out from the Javac reference
which should actually be different list than CompileToDalvik candidate.
This brings back AndroidExternalJavaLibrary to "reference-only" list.

This shold fix https://bugzilla.xamarin.com/show_bug.cgi?id=42091

When we fixed #27553 we reorganized the entire Java library resolution
step so that the build tasks could consistently resolve jars to package.
Sadly AndroidExternalJavaLibrary dropped out from the Javac reference
which should actually be different list than CompileToDalvik candidate.
This brings back AndroidExternalJavaLibrary to "reference-only" list.
@jonpryor jonpryor merged commit 32b9437 into dotnet:master Aug 19, 2016
jonpryor added a commit that referenced this pull request Jun 16, 2022
Context: https://dl-ssl.google.com/android/repository/repository2-3.xml
Context: 22bc14b

Changes: dotnet/android-tools@ec346d0...9c641b3

  * dotnet/android-tools@9c641b3 [Xamarin.Android.Tools.AndroidSdk] Update SDK component for API-32 (#169)

Commit dotnet/android-tools@9c641b3 bumps
`$(AndroidSdkBuildToolsVersion)` to 32.0.0.  (We looked at bumping
to 33.0.0, but that broke various unit tests; we will investigate
supporting build-tools 33.0.0 later.)

The "problem" is that [build-tools 31.0.0 *removed* `dx`][0], and
thus Classic Xamarin.Android has stuck with build-tools 30.0.0 as the
default version for years.

Commit 22bc14b introduced warning XA1023 (an *error* in .NET 5+),
as we saw no reason to support `dx` in .NET 5 when it was already
deprecated.

Warning XA1023 has been emitted in Classic Xamarin.Android since
Visual Studio 16.9 (released 2021-Mar); we feel there has been ample
time to migrate away from `dx` and to the replacement of `d8`.

Turn XA1023 into an *error* for Classic Xamarin.Android builds,
ensuring things are consistent between Classic Xamarin.Android and
.NET 6+.

Commit dotnet/android-tools@9c641b3 *also* bumps
`$(AndroidCommandLineToolsVersion)` to 7.0.  Update
`$(CommandLineToolsVersion)` in `Configuration.props` accordingly.

The `cmdline-tools` package v7.0 contains contains [`lint` 7.2][1],
which introduces a new `lint` check called `RedundantLabel`:

> Redundant label on activity in manifest

meaning that the `//actviity/@android:label` value is identical to
the `//application/@android:label` value, and thus isn't needed.

This causes a warning from `BuildTest.CheckLintErrorsAndWarnings()`:

	obj/Debug/android/AndroidManifest.xml(12,44): warning XA0102:
	Redundant label can be removed [RedundantLabel]

For now, update `BuildTest.CheckLintErrorsAndWarnings()` to ignore
`RedundantLabel` warnings.

TODO:

Remove support for `dx` and ProGuard.

[0]: https://android-developers.googleblog.com/2020/02/the-path-to-dx-deprecation.html
[1]: http://googlesamples.github.io/android-custom-lint-rules/usage/changes.md.html
jonathanpeppers pushed a commit that referenced this pull request Jun 30, 2022
Context: https://dl-ssl.google.com/android/repository/repository2-3.xml
Context: 22bc14b

Changes: dotnet/android-tools@ec346d0...9c641b3

  * dotnet/android-tools@9c641b3 [Xamarin.Android.Tools.AndroidSdk] Update SDK component for API-32 (#169)

Commit dotnet/android-tools@9c641b3 bumps
`$(AndroidSdkBuildToolsVersion)` to 32.0.0.  (We looked at bumping
to 33.0.0, but that broke various unit tests; we will investigate
supporting build-tools 33.0.0 later.)

The "problem" is that [build-tools 31.0.0 *removed* `dx`][0], and
thus Classic Xamarin.Android has stuck with build-tools 30.0.0 as the
default version for years.

Commit 22bc14b introduced warning XA1023 (an *error* in .NET 5+),
as we saw no reason to support `dx` in .NET 5 when it was already
deprecated.

Warning XA1023 has been emitted in Classic Xamarin.Android since
Visual Studio 16.9 (released 2021-Mar); we feel there has been ample
time to migrate away from `dx` and to the replacement of `d8`.

Turn XA1023 into an *error* for Classic Xamarin.Android builds,
ensuring things are consistent between Classic Xamarin.Android and
.NET 6+.

Commit dotnet/android-tools@9c641b3 *also* bumps
`$(AndroidCommandLineToolsVersion)` to 7.0.  Update
`$(CommandLineToolsVersion)` in `Configuration.props` accordingly.

The `cmdline-tools` package v7.0 contains contains [`lint` 7.2][1],
which introduces a new `lint` check called `RedundantLabel`:

> Redundant label on activity in manifest

meaning that the `//actviity/@android:label` value is identical to
the `//application/@android:label` value, and thus isn't needed.

This causes a warning from `BuildTest.CheckLintErrorsAndWarnings()`:

	obj/Debug/android/AndroidManifest.xml(12,44): warning XA0102:
	Redundant label can be removed [RedundantLabel]

For now, update `BuildTest.CheckLintErrorsAndWarnings()` to ignore
`RedundantLabel` warnings.

TODO:

Remove support for `dx` and ProGuard.

[0]: https://android-developers.googleblog.com/2020/02/the-path-to-dx-deprecation.html
[1]: http://googlesamples.github.io/android-custom-lint-rules/usage/changes.md.html
@github-actions github-actions bot locked and limited conversation to collaborators Feb 6, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants