-
Notifications
You must be signed in to change notification settings - Fork 537
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
Enabling proguard in d15-7 now causes ClassNotFoundException on startup #1373
Comments
You forgot to attach the sources, those archives are both build artifacts. |
Also, the last time I touched Proguard task was like Oct. 2016. It's more about MSBuild tasks, so @dellis1972 and probably @jonathanpeppers (who made the last commit) would know what happened there. https://github.com/xamarin/xamarin-android/commits/master/src/Xamarin.Android.Build.Tasks/Tasks/Proguard.cs |
@atsushieno sorry for not including source, from what I have seen this reproduces with any project. Here's a simple demo that can be used: |
Hey guys, it looks like the same commits for the So I guess it means the issue lies somewhere else? I will be coming back from parental leave part time on Monday, I can probably take a deeper look then if someone else hasn't yet. |
This is indeed a fallout from #1131 -- something that was added for 15.7 right before I went on leave. It looks like this for-loop needs changed, since |
…-map.txt file Fixes dotnet#1373 Since dotnet#1131, the contents of the `acw-map.txt` file have changed. We have removed the fully qualified type names from the file, and there is some code in the `<Proguard />` task that relies on a specific number of lines per C# type. We need to update the for-loop to skip every third line instead of every fourth line. I also updated the loop to only index against the `acwLines` array once per loop interation, as a small performance improvement. The code is also a little more readable from this change. Lastly, I added some code to the proguard test so that it validates the proguard configuration file contains the appropriate contents. Prior to this, the test was only making sure the build succeeded.
…-map.txt file Fixes dotnet#1373 Since dotnet#1131, the contents of the `acw-map.txt` file have changed. We have removed the fully qualified type names from the file, and there is some code in the `<Proguard />` task that relies on a specific number of lines per C# type. We need to update the for-loop to skip every third line instead of every fourth line. I also updated the loop to only index against the `acwLines` array once per loop interation, as a small performance improvement. The code is also a little more readable from this change. Lastly, I added some code to the proguard test so that it validates the proguard configuration file contains the appropriate contents. Prior to this, the test was only making sure the build succeeded.
Fixes: #1373 Since e5b1c92, the contents of the `acw-map.txt` file have changed. We have removed the fully qualified type names from the file, and there is some code in the `<Proguard />` task that relies on a specific number of lines per C# type. We need to update the for-loop to skip every third line instead of every fourth line. I also updated the loop to only index against the `acwLines` array once per loop interation, as a small performance improvement. The code is also a little more readable from this change. Lastly, I added some code to the proguard test so that it validates the proguard configuration file contains the appropriate contents. Prior to this, the test was only making sure the build succeeded.
Fixes: #1373 Since e5b1c92, the contents of the `acw-map.txt` file have changed. We have removed the fully qualified type names from the file, and there is some code in the `<Proguard />` task that relies on a specific number of lines per C# type. We need to update the for-loop to skip every third line instead of every fourth line. I also updated the loop to only index against the `acwLines` array once per loop interation, as a small performance improvement. The code is also a little more readable from this change. Lastly, I added some code to the proguard test so that it validates the proguard configuration file contains the appropriate contents. Prior to this, the test was only making sure the build succeeded.
Verified fixed in XA 8.3.0.10. |
Projects which enable proguard are crashing on startup when using d15-7. This is a regression as compared to d15-6.
This 'behavior' was previously reported as #1331, however the stack trace encountered in that instance was different than in this new failure. I've attached an .apk file as well as the intermediate output of that build.
Steps to Reproduce
Release.zip
App29.App29-Signed.zip
Version Information
Xamarin.Android SDK 8.3.0.1
Log File
The text was updated successfully, but these errors were encountered: