-
Notifications
You must be signed in to change notification settings - Fork 524
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Xamarin.Android.Build.Tasks] Make XA0115 error more actionable #2967
[Xamarin.Android.Build.Tasks] Make XA0115 error more actionable #2967
Conversation
3a997ed
to
36105e2
Compare
@@ -7,9 +7,13 @@ property will need to be updated to remove it before they will build | |||
successfully with newer versions of Xamarin.Android. The newer armeabi-v7a ABI | |||
should now be used instead. The `$(AndroidSupportedAbis)` setting can be found | |||
in the **Advanced** section of the **Android Options** project properties in | |||
Visual Studio and **Android Build** project properties in Visual Studio for Mac. | |||
Visual Studio and the **Advanced** tab of the **Android Build** project |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have an entire file (and eventually URL) here. Let's take advantage of it. :-)
Please add separate # Section
s so separately address Visual Studio for Windows vs. macOS. Screenshots may be helpful.
|
||
Example message: | ||
- `Invalid value 'armeabi' in $(AndroidSupportedAbis). This ABI is no longer supported. Please update your project properties.` | ||
|
||
* `Invalid value 'armeabi' in $(AndroidSupportedAbis). This ABI is no longer supported. Please update your project properties to remove the old value. If the properties page does not show an 'armeabi' checkbox, un-check and re-check one of the other ABIs and save the changes.` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you should also show an example of the XML in the csproj file. Sometimes that will be clear to devs, because they will view the diff of their csproj in whichever source control they use.
Context: https://forums.xamarin.com/discussion/146174/vs2019-error-this-abi-is-no-longer-supported Context: https://developercommunity.visualstudio.com/comments/485766/view.html Change the wording of the armeabi build error to make it more actionable at the cost of also making it a bit longer. In addition to the questions about this error from users on the forums and Developer Community, another motivation for this change is that compared to back when I added the original wording for this message, I have now had more practice updating other error messages and thinking about how to make them as actionable as possible on their own. Unfortunately the correct action to take in the IDE in this case is a little confusing because the property page in Visual Studio on Windows is currently different from the property page in Visual Studio for Mac. For example, in Visual Studio for Mac, the **Advanced** tab of the **Android Build** page will show a checkbox for `armeabi` if that setting is present in the `$(AndroidSupportedAbis)` property in the `.csproj` file, so users can just un-check that option to remove the `armeabi` value. But on Windows, the **Advanced** modal window under the **Android Options** page now *never* shows a checkbox for `armeabi`, so the easiest way to remove the value is to change and change back one of the other ABIs and save the properties. That rewrites `$(AndroidSupportedAbis)` to contain only the values that are *shown* as selected in the modal window.
36105e2
to
cde1b90
Compare
Context: https://forums.xamarin.com/discussion/146174/vs2019-error-this-abi-is-no-longer-supported
Context: https://developercommunity.visualstudio.com/comments/485766/view.html
Change the wording of the armeabi build error to make it more actionable
at the cost of also making it a bit longer.
In addition to the questions about this error from users on the forums
and Developer Community, another motivation for this change is that
compared to back when I added the original wording for this message, I
have now had more practice updating other error messages and thinking
about how to make them as actionable as possible on their own.
Unfortunately the correct action to take in the IDE in this case is a
little confusing because the property page in Visual Studio on Windows
is currently different from the property page in Visual Studio for Mac.
For example, in Visual Studio for Mac, the Advanced tab of the
Android Build page will show a checkbox for
armeabi
if thatsetting is present in the
$(AndroidSupportedAbis)
property in the.csproj
file, so users can just un-check that option to remove thearmeabi
value. But on Windows, the Advanced modal window underthe Android Options page now never shows a checkbox for
armeabi
,so the easiest way to remove the value is to change and change back one
of the other options and save the properties. That rewrites
$(AndroidSupportedAbis)
to contain only the values that are shown asselected in the modal window.