Bug 13064 - user getting to activate with Trial when checking option 'Embed assemblies in native code'
Summary: user getting to activate with Trial when checking option 'Embed assemblies in...
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: Android Add-in ()
Version: 4.0.9
Hardware: PC Mac OS
: --- normal
Target Milestone: 4.0.10 (for async)
Assignee: Mikayla Hutchinson [MSFT]
Depends on:
Reported: 2013-07-05 05:31 UTC by narayanp
Modified: 2013-07-12 04:56 UTC (History)
4 users (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description narayanp 2013-07-05 05:31:33 UTC
Steps to Reproduce:
[Condition: License is Indie or business on disk]
1. Open or create Android application.
2. Go to project option->Android Build.
3. Click checkbox for 'Embed assemblies in native code'

Actual Result: When user select the option 'Embed assemblies in native code, pricing trigger appears which prompts to activate with Trial and Enterprises as shown in this screencast: http://screencast.com/t/sQomuklD

When license is Trial on disk and user select this option then it prompts us to activate with Enterprise and shown as "Trial has ended", this is the screencast for the same: http://screencast.com/t/RYDBN0bktS9

Expected Result: User should not see opting to activate as Trial in pricing trigger popup it should show only 'Purchase a License'.

Environment details:
All Mac
X.S 4.0.9(build 15)
Mono 3.0.12
Xamarin.Android 4.7.11-2-1
Comment 1 Jonathan Pryor 2013-07-08 10:33:03 UTC
Fixed in master/5ba1c37e.
Comment 2 PJ 2013-07-08 17:29:41 UTC
JonP's fix now makes Trial work as if it's a priority license (previously, the Trial license was equivalent to the Business level).

Expected behavior changes:

Now, when you are activated with Starter/Indie/Business, you will see the workflow when attempting to use the feature.

If you are Trial or Priority, you should not be stopped from using the feature. The bundle assemblies cases should pass on both Trial and Priority.

Note that this behavior must also be true in Visual Studio, and will be the first time there is an in-IDE trigger pop up in VS. (A business user who tries to use the feature will be given the UPGRADE workflow).
Comment 3 PJ 2013-07-08 17:32:56 UTC
Adding Dominique to the CC so he can see the expected behavior changes.
Comment 4 PJ 2013-07-08 17:36:51 UTC
Whoops, Dean is implementing this feature. CCing him instead.
Comment 5 PJ 2013-07-09 15:21:04 UTC
So the ramification of this change is that we now have the following scenario:

1. User is activated as a business user
2. User tries to use embed assemblies
3. User is prompted with Trial/Purchase
4. User selects 'Start a Trial'

Actual behavior:

XS re-activates with the Business subscription.
User is re-prompted  to purchase/trial when trying to use the feature again.
Trial is started on the server (I got the email)

Expected behavior:

User is activated with the 'Priority' trial.

JonP, thoughts?
Comment 6 PJ 2013-07-09 18:16:10 UTC
Lewing commented on IRC that the fix from JonP mentioned in comment 2 would have even broader implications that he should have been a part of discussing.

We're going to need to figure out what to do here, and quickly. It seems to me like the best option is to revert the possibly dangerous change (Trial to Priority), and add some logic in XS that hides the Trial option when attempting to use the mkbundle feature.

We would also have to make sure the wording on the dialog at least remotely makes sense after this change, but those are are smaller and more contained changes than the original fix.

Then again, that option requires more effort from Dean to take care of, so we do need to decide fast.
Comment 7 PJ 2013-07-11 14:42:37 UTC
Lewing, JonP, Mhutch and I had a meeting yesterday to discuss this issue. We decided that we should keep Jonp's change from comment 1 and work around this particular issue (comment 5), and then test to find other possible consequences.

We checked with Nat to make sure that changing trial to be equivalent to Enterprise was the right move, and he agreed.

To fix the issue, Lewing changed the hierarchy of returned licenses on a GetLicenses call so that Trial supersedes Business, and hutch fixed logic in XS so that the returned trial would be activated over the current business license.

This fix is available in the 4.0.10 (RC) test build.
Comment 8 narayanp 2013-07-12 04:56:27 UTC
Today we have checked this issue with following builds:

X.S 4.0.10
Mono 3.1.1-2
Xamarin.Android 4.8.0-1

Now we observed that we are able to use option 'Embed Assemblies in Native code' for Trail as well as priority.

When License is Starter/Indie/Business on disk and user check option, Trigger popup appears with Tral and Purchase and after selecting Trail, license gets activated and options gets checked.

When License is Trial on Disk and user check option, License gets activated and options gets checked.

When License is Priority on Disk and user check option, License gets activated and options gets checked.

Changing the status to Verified