Bug 17864 - Visual Studio 2013 and Xamarin.Android entire solution rebuilds even if only one project is changed.
Summary: Visual Studio 2013 and Xamarin.Android entire solution rebuilds even if only ...
Status: RESOLVED FIXED
Alias: None
Product: Android
Classification: Xamarin
Component: MSBuild ()
Version: 4.10.2
Hardware: PC Windows
: Normal normal
Target Milestone: ---
Assignee: dean.ellis
URL:
Depends on:
Blocks:
 
Reported: 2014-02-18 20:19 UTC by Jon Goldberger [MSFT]
Modified: 2017-06-28 20:44 UTC (History)
6 users (show)

Tags: bb clb
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:
Status:
RESOLVED FIXED

Comment 1 Jon Goldberger [MSFT] 2014-02-18 20:21:07 UTC
From desk case:
I've found when using
Xamarin.Android 4.10.01073 (d23a19bf) in Visual Studio 2013 that my whole
solution is forced to re-build when just making one change in a particular
project. I have several projects linked to my Android solution but a change
to any of them forces a complete re-build of the whole solution. It really
slows down my development and noticed in Xamarin Studio on my mac when using
Xamarin.Android I don't get this.
-----------------------------------------
Have attached some files with the VS2013 Info and also copied build output (with MSBuild output verbosity set to diagnostic).



Have copied out some of the bits where I can see MSBuild is re-building projects, not sure why and if I have perhaps got something set-up incorrectly in the solution. This same solution in Xamarin Studio on my Mac doesn’t do this.



Project 'McColls.DashMate.Entities' is not up to date. Input file 'c:\users\gavin\dropbox\dev\mccolls\mccolls.dashmate\dashmate\src\mccolls.dashmate\mccolls.dashserver.networkentities\bin\debug\mccolls.dashserver.networkentities.dll' is modified after output file 'C:\Users\Gavin\Dropbox\Dev\McColls\mccolls.dashmate\Dashmate\src\McColls.DashMate\McColls.DashMate.Entities\bin\Debug\McColls.DashMate.Entities.pdb'.

Project 'McColls.DashMate.NewFatigue' is not up to date. Input file 'c:\users\gavin\dropbox\dev\mccolls\mccolls.dashmate\dashmate\src\mccolls.dashmate\mccolls.dashserver.networkentities\bin\debug\mccolls.dashserver.networkentities.dll' is modified after output file 'C:\Users\Gavin\Dropbox\Dev\McColls\mccolls.dashmate\Dashmate\src\McColls.DashMate\McColls.NewFatigue\bin\Debug\McColls.DashMate.NewFatigue.pdb'.

Project 'McColls.DashMate.Core' is not up to date. Input file 'c:\users\gavin\dropbox\dev\mccolls\mccolls.dashmate\dashmate\src\mccolls.dashmate\mccolls.newfatigue\bin\debug\mccolls.dashmate.newfatigue.dll' is modified after output file 'C:\Users\Gavin\Dropbox\Dev\McColls\mccolls.dashmate\Dashmate\src\McColls.DashMate\McColls.DashMate.Core\bin\Debug\McColls.DashMate.Core.pdb'.

Project 'McColls.DashMate.UI.Droid' is not up to date. Input file 'c:\users\gavin\dropbox\dev\mccolls\mccolls.dashmate\dashmate\src\mccolls.dashmate\mccolls.dashmate.core\bin\debug\mccolls.dashmate.core.dll' is modified after output file 'C:\Users\Gavin\Dropbox\Dev\McColls\mccolls.dashmate\Dashmate\src\McColls.DashMate\McColls.DashMate.UI.Droid\bin\Debug\McColls.DashMate.UI.Droid.pdb'.
Comment 3 Jonathan Pryor 2014-02-27 11:55:50 UTC
Theoretically, that may be correct behavior; when a project A is rebuilt, all projects which reference project A must likewise be rebuilt (in case something was changed or removed in an incompatible manner, so that you can find out that you broke it).

That said... this may be an issue in our .pdb-to-.mdb infrastructure. Offhand, I'm not sure why the .pdb being "stale" would require rebuilding the project; at the same time, if the .dll was rebuilt I don't understand why the .pdb wouldn't be rebuilt at the same time.

Dean, can you please investigate?
Comment 4 Jeremy Kolb 2014-05-18 18:45:36 UTC
I'm seeing this too.  If I change my application it goes in and recompiles the bindings projects that the application depends on.
Comment 5 Koby 2014-07-17 03:51:14 UTC
I'm experiencing the same problem, small change forces recompile of all dependencies.
Comment 6 Cody Beyer (MSFT) 2017-06-28 20:44:10 UTC
Thank you for taking the time to submit this report. After reviewing the description of this bug, we believe it no longer affects the current version of Xamarin.Android. If you are still experiencing the issue after updating your packages, please reopen this report with an attached reproduction.