Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
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
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 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.
After building and deploying a project to device A, I wanted to deploy the same package to device B, so I changed the selected device and invoked the Deploy using the project context menu.
The output shows the waiting for device message, but fails to show the 'Removing any previous version' and 'Copying application to device' messages.
Waiting for device..
========== Build: 2 succeeded or up-to-date, 0 failed, 0 skipped ==========
========== Deploy: 1 succeeded, 0 failed, 0 skipped ==========
In order to determine if we need to deploy the package, we check 2 conditions:
- The package has changed.
- The package isn't already on the device.
I can see where this scenario might cause the deploy code to think the package hasn't changed.
But I don't see how checking if the package is already on the device could fail. We query the device for a list of all packages it has, and if it's not there, we will install it.
Could device B already have the package or a package with the same name?
Is the issue that the package isn't on device B? or that it didn't update the package that was already on device B?
There is an older version of the package on device B.
So, in sum...
- The package hasn't changed since it has just been deployed into device A
- The package is already on device B (though it's an older version)
These conditions will be considered as "no need for deploy", is this correct?
Ok, that makes sense. We still need to fix the first condition so it takes different devices into account. (We had that code before but it somehow got removed.)
I just didn't understand why the second condition wasn't firing. Now I do.
Fixed in ae59e6cc4d79032936fb92a795a761f6ed19b0cd.
Thanks for the report!
That's what we're here for! :)
Thanks for the fix!