Browse Source

Initial port to NuGet 3.0

This is an early version that is very broken.

Uses a custom build of NuGet 3.0 which targets .NET 4.5:

https://github.com/mrward/nuget/tree/3.0-ctp1-net45

Official binaries target .NET 4.5.1 so they cannot be used with
SharpDevelop.

NuGet binaries are not added to source control since this branch
is still a work in progress. So NuGet will need to be compiled from
source and the binaries copied to the RequiredLibraries directory.

It looks like SharpDevelop may get the automatic rollback that
happens in Visual Studio when a package fails to install since it
looks like the code is now in NuGet.Core.

What works:

Installing a package.
Uninstalling a package.
Updating a package.

Issues:

1. Uninstalling/updating does not remove the old files from the
packages directory.
2. Managing at the solution level is not implemented.
3. Fails to connect to new NuGet 3.0 feed. Getting an Http version not
supported error back from the NuGet 3.0 package source.
4. Unit tests do not compile due to various API changes.
nuget-3.0-ctp
Matt Ward 11 years ago
parent
commit
f7f3b65bd2
  1. 138
      src/AddIns/Misc/PackageManagement/PackageManagement.sln
  2. 20
      src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManagementProject.cs
  3. 156
      src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManager.cs
  4. 10
      src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageOperation.cs
  5. 143
      src/AddIns/Misc/PackageManagement/Project/Src/Design/FakeProjectManager.cs
  6. 2
      src/AddIns/Misc/PackageManagement/Project/Src/Design/FakeProjectSystem.cs
  7. 9
      src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementProject.cs
  8. 9
      src/AddIns/Misc/PackageManagement/Project/Src/ISharpDevelopPackageManager.cs
  9. 1
      src/AddIns/Misc/PackageManagement/Project/Src/ISharpDevelopProjectManager.cs
  10. 5
      src/AddIns/Misc/PackageManagement/Project/Src/IUpdatePackagesAction.cs
  11. 3
      src/AddIns/Misc/PackageManagement/Project/Src/InstallPackageAction.cs
  12. 7
      src/AddIns/Misc/PackageManagement/Project/Src/PackageFilesForOperations.cs
  13. 17
      src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementProject.cs
  14. 112
      src/AddIns/Misc/PackageManagement/Project/Src/PackageViewModel.cs
  15. 5
      src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageOperationsAction.cs
  16. 180
      src/AddIns/Misc/PackageManagement/Project/Src/SharpDevelopPackageManager.cs
  17. 9
      src/AddIns/Misc/PackageManagement/Project/Src/SharpDevelopProjectManager.cs
  18. 2
      src/AddIns/Misc/PackageManagement/Project/Src/SharpDevelopProjectSystem.cs
  19. 3
      src/AddIns/Misc/PackageManagement/Project/Src/UpdatePackageAction.cs
  20. 7
      src/AddIns/Misc/PackageManagement/Project/Src/UpdatePackagesAction.cs
  21. 5
      src/AddIns/Misc/PackageManagement/Project/Src/UpdatePackagesActionFactory.cs
  22. 29
      src/AddIns/Misc/PackageManagement/Project/Src/UpdateSolutionPackagesAction.cs
  23. 3
      src/AddIns/Misc/PackageManagement/Test/Src/ConsolePackageActionRunnerTests.cs
  24. 3
      src/AddIns/Misc/PackageManagement/Test/Src/Helpers/ExceptionThrowingPackageManagementProject.cs
  25. 15
      src/AddIns/Misc/PackageManagement/Test/Src/Helpers/FakeSharedPackageRepository.cs
  26. 9
      src/AddIns/Misc/PackageManagement/Test/Src/Helpers/PackageOperationHelper.cs
  27. 70
      src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestableProjectManager.cs

138
src/AddIns/Misc/PackageManagement/PackageManagement.sln

@ -1,7 +1,9 @@
 
Microsoft Visual Studio Solution File, Format Version 11.00 Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2010 # Visual Studio 2012
# SharpDevelop 4.3 # SharpDevelop 4.4
VisualStudioVersion = 12.0.20827.3
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PackageManagement", "Project\PackageManagement.csproj", "{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PackageManagement", "Project\PackageManagement.csproj", "{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PackageManagement.Tests", "Test\PackageManagement.Tests.csproj", "{56E98A01-8398-4A08-9578-C7337711A52B}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PackageManagement.Tests", "Test\PackageManagement.Tests.csproj", "{56E98A01-8398-4A08-9578-C7337711A52B}"
@ -10,7 +12,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop",
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "..\..\..\Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "..\..\..\Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonDock", "..\..\..\Libraries\AvalonDock\AvalonDock\AvalonDock.csproj", "{87E61430-4243-45F2-B74E-0A4C096CEBF3}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonDock", "..\..\..\Libraries\AvalonDock\AvalonDock\AvalonDock.csproj", "{2FF700C2-A38A-48BD-A637-8CAFD4FE6237}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit", "..\..\..\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj", "{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit", "..\..\..\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj", "{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}"
EndProject EndProject
@ -32,7 +34,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonEdit.AddIn", "..\..\D
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PackageManagement.PowerShell", "PowerShell\Project\PackageManagement.PowerShell.csproj", "{A406803B-C584-43A3-BCEE-A0BB3132CB5F}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PackageManagement.PowerShell", "PowerShell\Project\PackageManagement.PowerShell.csproj", "{A406803B-C584-43A3-BCEE-A0BB3132CB5F}"
EndProject EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "SharpDevelop.EnvDTE", "SharpDevelop.EnvDTE\SharpDevelop.EnvDTE.vbproj", "{6FB1260D-68A2-41A0-BB09-F5F710842E99}" Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "SharpDevelop.EnvDTE", "SharpDevelop.EnvDTE\SharpDevelop.EnvDTE.vbproj", "{1B753D7F-7C77-4D5E-B928-02982690879C}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.NRefactory", "..\..\..\Libraries\NRefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj", "{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.NRefactory", "..\..\..\Libraries\NRefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj", "{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}"
EndProject EndProject
@ -40,175 +42,93 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil", "..\..\..\Libr
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.NRefactory.CSharp", "..\..\..\Libraries\NRefactory\ICSharpCode.NRefactory.CSharp\ICSharpCode.NRefactory.CSharp.csproj", "{53DCA265-3C3C-42F9-B647-F72BA678122B}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.NRefactory.CSharp", "..\..\..\Libraries\NRefactory\ICSharpCode.NRefactory.CSharp\ICSharpCode.NRefactory.CSharp.csproj", "{53DCA265-3C3C-42F9-B647-F72BA678122B}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "..\..\..\Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4aba-AABD-45E2CAD3568D}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "..\..\..\Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4ABA-AABD-45E2CAD3568D}"
EndProject EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU Release|Any CPU = Release|Any CPU
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution GlobalSection(ProjectConfigurationPlatforms) = postSolution
{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Release|Any CPU.Build.0 = Release|Any CPU {AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Release|Any CPU.ActiveCfg = Release|Any CPU {AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{56E98A01-8398-4A08-9578-C7337711A52B}.Debug|Any CPU.Build.0 = Debug|Any CPU {AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Release|Any CPU.Build.0 = Release|Any CPU
{56E98A01-8398-4A08-9578-C7337711A52B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {56E98A01-8398-4A08-9578-C7337711A52B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{56E98A01-8398-4A08-9578-C7337711A52B}.Release|Any CPU.Build.0 = Release|Any CPU {56E98A01-8398-4A08-9578-C7337711A52B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{56E98A01-8398-4A08-9578-C7337711A52B}.Release|Any CPU.ActiveCfg = Release|Any CPU {56E98A01-8398-4A08-9578-C7337711A52B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.Build.0 = Debug|Any CPU {56E98A01-8398-4A08-9578-C7337711A52B}.Release|Any CPU.Build.0 = Release|Any CPU
{2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.Build.0 = Release|Any CPU
{2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.Build.0 = Debug|Any CPU {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.Build.0 = Release|Any CPU
{2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.ActiveCfg = Release|Any CPU {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.ActiveCfg = Release|Any CPU
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.Build.0 = Debug|Any CPU {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.Build.0 = Release|Any CPU
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.Build.0 = Debug|Any CPU {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.Build.0 = Release|Any CPU
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.ActiveCfg = Release|Any CPU {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.Build.0 = Release|Any CPU {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.Build.0 = Release|Any CPU
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.ActiveCfg = Release|Any CPU {2FF700C2-A38A-48BD-A637-8CAFD4FE6237}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Debug|Any CPU.Build.0 = Debug|Any CPU {2FF700C2-A38A-48BD-A637-8CAFD4FE6237}.Debug|Any CPU.Build.0 = Debug|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2FF700C2-A38A-48BD-A637-8CAFD4FE6237}.Release|Any CPU.ActiveCfg = Release|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Debug|Any CPU.Build.0 = Debug|Any CPU {2FF700C2-A38A-48BD-A637-8CAFD4FE6237}.Release|Any CPU.Build.0 = Release|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Any CPU.ActiveCfg = Debug|WithNRefactory
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Release|Any CPU.Build.0 = Release|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Release|Any CPU.Build.0 = Release|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Any CPU.Build.0 = Debug|Any CPU {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Any CPU.Build.0 = Release|Any CPU
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Any CPU.ActiveCfg = Release|Any CPU {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Any CPU.Build.0 = Release|Any CPU {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Any CPU.Build.0 = Release|Any CPU
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|Any CPU.Build.0 = Debug|Any CPU {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|Any CPU.Build.0 = Release|Any CPU
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|Any CPU.ActiveCfg = Release|Any CPU {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|Any CPU.Build.0 = Release|Any CPU {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|Any CPU.Build.0 = Release|Any CPU
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.Build.0 = Debug|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.Build.0 = Debug|Any CPU {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.Build.0 = Debug|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.Build.0 = Release|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.ActiveCfg = Release|Any CPU {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.ActiveCfg = Release|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.Build.0 = Release|Any CPU {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.Build.0 = Release|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.Build.0 = Debug|Any CPU {8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Release|Any CPU.Build.0 = Release|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Release|Any CPU.ActiveCfg = Release|Any CPU {8035765F-D51F-4A0C-A746-2FD100E19419}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Release|Any CPU.Build.0 = Release|Any CPU {8035765F-D51F-4A0C-A746-2FD100E19419}.Release|Any CPU.Build.0 = Release|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|Any CPU.Build.0 = Debug|Any CPU {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|Any CPU.Build.0 = Release|Any CPU
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|Any CPU.ActiveCfg = Release|Any CPU {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|Any CPU.Build.0 = Release|Any CPU {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|Any CPU.Build.0 = Release|Any CPU
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{85C09AD8-183B-403A-869A-7226646218A9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{85C09AD8-183B-403A-869A-7226646218A9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {85C09AD8-183B-403A-869A-7226646218A9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{85C09AD8-183B-403A-869A-7226646218A9}.Debug|Any CPU.Build.0 = Debug|Any CPU {85C09AD8-183B-403A-869A-7226646218A9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{85C09AD8-183B-403A-869A-7226646218A9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{85C09AD8-183B-403A-869A-7226646218A9}.Release|Any CPU.Build.0 = Release|Any CPU
{85C09AD8-183B-403A-869A-7226646218A9}.Release|Any CPU.ActiveCfg = Release|Any CPU {85C09AD8-183B-403A-869A-7226646218A9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{85C09AD8-183B-403A-869A-7226646218A9}.Release|Any CPU.Build.0 = Release|Any CPU {85C09AD8-183B-403A-869A-7226646218A9}.Release|Any CPU.Build.0 = Release|Any CPU
{85C09AD8-183B-403A-869A-7226646218A9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Debug|Any CPU.Build.0 = Debug|Any CPU {E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Release|Any CPU.Build.0 = Release|Any CPU
{E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Release|Any CPU.ActiveCfg = Release|Any CPU {E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Release|Any CPU.Build.0 = Release|Any CPU {E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Release|Any CPU.Build.0 = Release|Any CPU
{E0A5E80A-003B-4335-A9DC-A76E2E46D38D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{11115C83-3DB1-431F-8B98-59040359238D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{11115C83-3DB1-431F-8B98-59040359238D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {11115C83-3DB1-431F-8B98-59040359238D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{11115C83-3DB1-431F-8B98-59040359238D}.Debug|Any CPU.Build.0 = Debug|Any CPU {11115C83-3DB1-431F-8B98-59040359238D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{11115C83-3DB1-431F-8B98-59040359238D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{11115C83-3DB1-431F-8B98-59040359238D}.Release|Any CPU.Build.0 = Release|Any CPU
{11115C83-3DB1-431F-8B98-59040359238D}.Release|Any CPU.ActiveCfg = Release|Any CPU {11115C83-3DB1-431F-8B98-59040359238D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{11115C83-3DB1-431F-8B98-59040359238D}.Release|Any CPU.Build.0 = Release|Any CPU {11115C83-3DB1-431F-8B98-59040359238D}.Release|Any CPU.Build.0 = Release|Any CPU
{11115C83-3DB1-431F-8B98-59040359238D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.Build.0 = Debug|Any CPU {0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0162E499-42D0-409B-AA25-EED21F75336B}.Release|Any CPU.Build.0 = Release|Any CPU
{0162E499-42D0-409B-AA25-EED21F75336B}.Release|Any CPU.ActiveCfg = Release|Any CPU {0162E499-42D0-409B-AA25-EED21F75336B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0162E499-42D0-409B-AA25-EED21F75336B}.Release|Any CPU.Build.0 = Release|Any CPU {0162E499-42D0-409B-AA25-EED21F75336B}.Release|Any CPU.Build.0 = Release|Any CPU
{0162E499-42D0-409B-AA25-EED21F75336B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Debug|Any CPU.Build.0 = Debug|Any CPU {A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Release|Any CPU.Build.0 = Release|Any CPU
{A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Release|Any CPU.ActiveCfg = Release|Any CPU {A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Release|Any CPU.Build.0 = Release|Any CPU {A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Release|Any CPU.Build.0 = Release|Any CPU
{A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Release|Any CPU.ActiveCfg = Release|Any CPU {1B753D7F-7C77-4D5E-B928-02982690879C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{56E98A01-8398-4A08-9578-C7337711A52B}.Debug|Any CPU.Build.0 = Debug|Any CPU {1B753D7F-7C77-4D5E-B928-02982690879C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{56E98A01-8398-4A08-9578-C7337711A52B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {1B753D7F-7C77-4D5E-B928-02982690879C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{56E98A01-8398-4A08-9578-C7337711A52B}.Release|Any CPU.Build.0 = Release|Any CPU {1B753D7F-7C77-4D5E-B928-02982690879C}.Release|Any CPU.Build.0 = Release|Any CPU
{56E98A01-8398-4A08-9578-C7337711A52B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Release|Any CPU.Build.0 = Release|Any CPU
{AE4AB0FA-6087-4480-AF37-0FA1452B3DA1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6FB1260D-68A2-41A0-BB09-F5F710842E99}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6FB1260D-68A2-41A0-BB09-F5F710842E99}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6FB1260D-68A2-41A0-BB09-F5F710842E99}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6FB1260D-68A2-41A0-BB09-F5F710842E99}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6FB1260D-68A2-41A0-BB09-F5F710842E99}.Release|Any CPU.Build.0 = Release|Any CPU
{6FB1260D-68A2-41A0-BB09-F5F710842E99}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6FB1260D-68A2-41A0-BB09-F5F710842E99}.Release|Any CPU.Build.0 = Release|Any CPU
{6FB1260D-68A2-41A0-BB09-F5F710842E99}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|Any CPU.ActiveCfg = net_4_5_Debug|Any CPU {3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|Any CPU.ActiveCfg = net_4_5_Debug|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|Any CPU.Build.0 = Release|Any CPU {3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|Any CPU.Build.0 = net_4_5_Debug|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|Any CPU.ActiveCfg = Release|Any CPU {3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|Any CPU.Build.0 = Release|Any CPU {3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|Any CPU.Build.0 = Release|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.Build.0 = net_2_0_Debug|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.ActiveCfg = net_2_0_Debug|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.Build.0 = net_2_0_Debug|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.ActiveCfg = net_4_0_Debug|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.ActiveCfg = net_4_0_Debug|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.Build.0 = net_2_0_Debug|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.Build.0 = net_4_0_Debug|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.ActiveCfg = net_2_0_Debug|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.ActiveCfg = net_2_0_Debug|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.Build.0 = net_2_0_Debug|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.Build.0 = net_2_0_Debug|Any CPU
{D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.ActiveCfg = net_2_0_Debug|Any CPU
{53DCA265-3C3C-42F9-B647-F72BA678122B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{53DCA265-3C3C-42F9-B647-F72BA678122B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{53DCA265-3C3C-42F9-B647-F72BA678122B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{53DCA265-3C3C-42F9-B647-F72BA678122B}.Debug|Any CPU.ActiveCfg = net_4_5_Debug|Any CPU {53DCA265-3C3C-42F9-B647-F72BA678122B}.Debug|Any CPU.ActiveCfg = net_4_5_Debug|Any CPU
{53DCA265-3C3C-42F9-B647-F72BA678122B}.Release|Any CPU.Build.0 = Release|Any CPU {53DCA265-3C3C-42F9-B647-F72BA678122B}.Debug|Any CPU.Build.0 = net_4_5_Debug|Any CPU
{53DCA265-3C3C-42F9-B647-F72BA678122B}.Release|Any CPU.ActiveCfg = Release|Any CPU {53DCA265-3C3C-42F9-B647-F72BA678122B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{53DCA265-3C3C-42F9-B647-F72BA678122B}.Release|Any CPU.Build.0 = Release|Any CPU {53DCA265-3C3C-42F9-B647-F72BA678122B}.Release|Any CPU.Build.0 = Release|Any CPU
{53DCA265-3C3C-42F9-B647-F72BA678122B}.Release|Any CPU.ActiveCfg = Release|Any CPU {4980B743-B32F-4ABA-AABD-45E2CAD3568D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4980B743-B32F-4aba-AABD-45E2CAD3568D}.Debug|Any CPU.Build.0 = Debug|Any CPU {4980B743-B32F-4ABA-AABD-45E2CAD3568D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4980B743-B32F-4aba-AABD-45E2CAD3568D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4980B743-B32F-4ABA-AABD-45E2CAD3568D}.Release|Any CPU.ActiveCfg = Debug|Any CPU
{4980B743-B32F-4aba-AABD-45E2CAD3568D}.Debug|Any CPU.Build.0 = Debug|Any CPU {4980B743-B32F-4ABA-AABD-45E2CAD3568D}.Release|Any CPU.Build.0 = Debug|Any CPU
{4980B743-B32F-4aba-AABD-45E2CAD3568D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4980B743-B32F-4aba-AABD-45E2CAD3568D}.Release|Any CPU.Build.0 = Debug|Any CPU
{4980B743-B32F-4aba-AABD-45E2CAD3568D}.Release|Any CPU.ActiveCfg = Debug|Any CPU
{4980B743-B32F-4aba-AABD-45E2CAD3568D}.Release|Any CPU.Build.0 = Debug|Any CPU
{4980B743-B32F-4aba-AABD-45E2CAD3568D}.Release|Any CPU.ActiveCfg = Debug|Any CPU
EndGlobalSection EndGlobalSection
EndGlobal EndGlobal

20
src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManagementProject.cs

@ -23,6 +23,8 @@ using System.Linq;
using ICSharpCode.PackageManagement; using ICSharpCode.PackageManagement;
using ICSharpCode.PackageManagement.EnvDTE; using ICSharpCode.PackageManagement.EnvDTE;
using NuGet; using NuGet;
using NuGet.Resolver;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement.Design namespace ICSharpCode.PackageManagement.Design
{ {
@ -79,7 +81,7 @@ namespace ICSharpCode.PackageManagement.Design
public bool IgnoreDependenciesPassedToGetInstallPackageOperations; public bool IgnoreDependenciesPassedToGetInstallPackageOperations;
public bool AllowPrereleaseVersionsPassedToGetInstallPackageOperations; public bool AllowPrereleaseVersionsPassedToGetInstallPackageOperations;
public virtual IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction) public virtual IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction)
{ {
PackagePassedToGetInstallPackageOperations = package; PackagePassedToGetInstallPackageOperations = package;
IgnoreDependenciesPassedToGetInstallPackageOperations = installAction.IgnoreDependencies; IgnoreDependenciesPassedToGetInstallPackageOperations = installAction.IgnoreDependencies;
@ -91,7 +93,7 @@ namespace ICSharpCode.PackageManagement.Design
public ILogger Logger { get; set; } public ILogger Logger { get; set; }
public IPackage PackagePassedToInstallPackage; public IPackage PackagePassedToInstallPackage;
public IEnumerable<PackageOperation> PackageOperationsPassedToInstallPackage; public IEnumerable<PackageAction> PackageOperationsPassedToInstallPackage;
public bool IgnoreDependenciesPassedToInstallPackage; public bool IgnoreDependenciesPassedToInstallPackage;
public bool AllowPrereleaseVersionsPassedToInstallPackage; public bool AllowPrereleaseVersionsPassedToInstallPackage;
@ -106,7 +108,7 @@ namespace ICSharpCode.PackageManagement.Design
public FakePackageOperation AddFakeInstallOperation() public FakePackageOperation AddFakeInstallOperation()
{ {
var package = new FakePackage("MyPackage"); var package = new FakePackage("MyPackage");
var operation = new FakePackageOperation(package, PackageAction.Install); var operation = new FakePackageOperation(package, PackageActionType.Install);
FakeInstallOperations.Add(operation); FakeInstallOperations.Add(operation);
return operation; return operation;
} }
@ -114,7 +116,7 @@ namespace ICSharpCode.PackageManagement.Design
public FakePackageOperation AddFakeUninstallOperation() public FakePackageOperation AddFakeUninstallOperation()
{ {
var package = new FakePackage("MyPackage"); var package = new FakePackage("MyPackage");
var operation = new FakePackageOperation(package, PackageAction.Uninstall); var operation = new FakePackageOperation(package, PackageActionType.Uninstall);
FakeInstallOperations.Add(operation); FakeInstallOperations.Add(operation);
return operation; return operation;
} }
@ -137,7 +139,7 @@ namespace ICSharpCode.PackageManagement.Design
} }
public IPackage PackagePassedToUpdatePackage; public IPackage PackagePassedToUpdatePackage;
public IEnumerable<PackageOperation> PackageOperationsPassedToUpdatePackage; public IEnumerable<PackageAction> PackageOperationsPassedToUpdatePackage;
public bool UpdateDependenciesPassedToUpdatePackage; public bool UpdateDependenciesPassedToUpdatePackage;
public bool AllowPrereleaseVersionsPassedToUpdatePackage; public bool AllowPrereleaseVersionsPassedToUpdatePackage;
public bool IsUpdatePackageCalled; public bool IsUpdatePackageCalled;
@ -249,10 +251,10 @@ namespace ICSharpCode.PackageManagement.Design
public UpdatePackagesAction UpdatePackagesActionPassedToGetUpdatePackagesOperations; public UpdatePackagesAction UpdatePackagesActionPassedToGetUpdatePackagesOperations;
public IUpdatePackageSettings SettingsPassedToGetUpdatePackagesOperations; public IUpdatePackageSettings SettingsPassedToGetUpdatePackagesOperations;
public List<IPackage> PackagesOnUpdatePackagesActionPassedToGetUpdatePackagesOperations; public List<IPackage> PackagesOnUpdatePackagesActionPassedToGetUpdatePackagesOperations;
public List<PackageOperation> PackageOperationsToReturnFromGetUpdatePackagesOperations = public List<PackageAction> PackageOperationsToReturnFromGetUpdatePackagesOperations =
new List<PackageOperation>(); new List<PackageAction>();
public IEnumerable<PackageOperation> GetUpdatePackagesOperations( public IEnumerable<PackageAction> GetUpdatePackagesOperations(
IEnumerable<IPackage> packages, IEnumerable<IPackage> packages,
IUpdatePackageSettings settings) IUpdatePackageSettings settings)
{ {
@ -261,7 +263,7 @@ namespace ICSharpCode.PackageManagement.Design
return PackageOperationsToReturnFromGetUpdatePackagesOperations; return PackageOperationsToReturnFromGetUpdatePackagesOperations;
} }
public void RunPackageOperations(IEnumerable<PackageOperation> expectedOperations) public void RunPackageOperations(IEnumerable<PackageAction> expectedOperations)
{ {
} }

156
src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManager.cs

@ -21,6 +21,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using ICSharpCode.PackageManagement; using ICSharpCode.PackageManagement;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement.Design namespace ICSharpCode.PackageManagement.Design
{ {
@ -54,7 +55,7 @@ namespace ICSharpCode.PackageManagement.Design
public FakeFileSystem FakeFileSystem = new FakeFileSystem(); public FakeFileSystem FakeFileSystem = new FakeFileSystem();
public IPackageRepository LocalRepository { get; set; } public ISharedPackageRepository LocalRepository { get; set; }
public ILogger Logger { get; set; } public ILogger Logger { get; set; }
public IPackageRepository SourceRepository { get; set; } public IPackageRepository SourceRepository { get; set; }
public ISharpDevelopProjectManager ProjectManager { get; set; } public ISharpDevelopProjectManager ProjectManager { get; set; }
@ -63,7 +64,7 @@ namespace ICSharpCode.PackageManagement.Design
public FakePackageManager() public FakePackageManager()
{ {
ProjectManager = FakeProjectManager; // ProjectManager = FakeProjectManager;
SourceRepository = FakeSourceRepository; SourceRepository = FakeSourceRepository;
} }
@ -78,12 +79,12 @@ namespace ICSharpCode.PackageManagement.Design
IsRefreshProjectBrowserCalledWhenUninstallPackageCalled = FakeProjectService.IsRefreshProjectBrowserCalled; IsRefreshProjectBrowserCalledWhenUninstallPackageCalled = FakeProjectService.IsRefreshProjectBrowserCalled;
} }
public void UninstallPackage(IPackage package, bool forceRemove, bool removeDependencies) // public void UninstallPackage(IPackage package, bool forceRemove, bool removeDependencies)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
public IEnumerable<PackageOperation> PackageOperationsPassedToInstallPackage; public IEnumerable<PackageAction> PackageOperationsPassedToInstallPackage;
public void InstallPackage(IPackage package, InstallPackageAction installAction) public void InstallPackage(IPackage package, InstallPackageAction installAction)
{ {
@ -96,12 +97,12 @@ namespace ICSharpCode.PackageManagement.Design
IsRefreshProjectBrowserCalledWhenInstallPackageCalled = FakeProjectService.IsRefreshProjectBrowserCalled; IsRefreshProjectBrowserCalledWhenInstallPackageCalled = FakeProjectService.IsRefreshProjectBrowserCalled;
} }
public List<PackageOperation> PackageOperationsToReturnFromGetInstallPackageOperations = new List<PackageOperation>(); public List<PackageAction> PackageOperationsToReturnFromGetInstallPackageOperations = new List<PackageAction>();
public IPackage PackagePassedToGetInstallPackageOperations; public IPackage PackagePassedToGetInstallPackageOperations;
public bool IgnoreDependenciesPassedToGetInstallPackageOperations; public bool IgnoreDependenciesPassedToGetInstallPackageOperations;
public bool AllowPrereleaseVersionsPassedToGetInstallPackageOperations; public bool AllowPrereleaseVersionsPassedToGetInstallPackageOperations;
public IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction) public IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction)
{ {
PackagePassedToGetInstallPackageOperations = package; PackagePassedToGetInstallPackageOperations = package;
IgnoreDependenciesPassedToGetInstallPackageOperations = installAction.IgnoreDependencies; IgnoreDependenciesPassedToGetInstallPackageOperations = installAction.IgnoreDependencies;
@ -110,7 +111,7 @@ namespace ICSharpCode.PackageManagement.Design
} }
public IPackage PackagePassedToUpdatePackage; public IPackage PackagePassedToUpdatePackage;
public IEnumerable<PackageOperation> PackageOperationsPassedToUpdatePackage; public IEnumerable<PackageAction> PackageOperationsPassedToUpdatePackage;
public bool UpdateDependenciesPassedToUpdatePackage; public bool UpdateDependenciesPassedToUpdatePackage;
public void UpdatePackage(IPackage package, UpdatePackageAction updateAction) public void UpdatePackage(IPackage package, UpdatePackageAction updateAction)
@ -136,66 +137,66 @@ namespace ICSharpCode.PackageManagement.Design
throw new NotImplementedException(); throw new NotImplementedException();
} }
} }
//
public void UpdatePackage(IPackage newPackage, bool updateDependencies) // public void UpdatePackage(IPackage newPackage, bool updateDependencies)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void UpdatePackage(string packageId, IVersionSpec versionSpec, bool updateDependencies) // public void UpdatePackage(string packageId, IVersionSpec versionSpec, bool updateDependencies)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions) // public void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void InstallPackage(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions) // public void InstallPackage(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void UpdatePackage(IPackage newPackage, bool updateDependencies, bool allowPrereleaseVersions) // public void UpdatePackage(IPackage newPackage, bool updateDependencies, bool allowPrereleaseVersions)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void UpdatePackage(string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions) // public void UpdatePackage(string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void UpdatePackage(string packageId, IVersionSpec versionSpec, bool updateDependencies, bool allowPrereleaseVersions) // public void UpdatePackage(string packageId, IVersionSpec versionSpec, bool updateDependencies, bool allowPrereleaseVersions)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void UninstallPackage(string packageId, SemanticVersion version, bool forceRemove, bool removeDependencies) // public void UninstallPackage(string packageId, SemanticVersion version, bool forceRemove, bool removeDependencies)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
public void UpdatePackages(UpdatePackagesAction updateAction) public void UpdatePackages(UpdatePackagesAction updateAction)
{ {
UpdatePackagesActionsPassedToUpdatePackages = updateAction; UpdatePackagesActionsPassedToUpdatePackages = updateAction;
} }
public List<PackageOperation> PackageOperationsToReturnFromGetUpdatePackageOperations = new List<PackageOperation>(); public List<PackageAction> PackageOperationsToReturnFromGetUpdatePackageOperations = new List<PackageAction>();
public IUpdatePackageSettings SettingsPassedToGetUpdatePackageOperations; public IUpdatePackageSettings SettingsPassedToGetUpdatePackageOperations;
public IEnumerable<IPackage> PackagesPassedToGetUpdatePackageOperations; public IEnumerable<IPackage> PackagesPassedToGetUpdatePackageOperations;
public IEnumerable<PackageOperation> GetUpdatePackageOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings) public IEnumerable<PackageAction> GetUpdatePackageOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings)
{ {
SettingsPassedToGetUpdatePackageOperations = settings; SettingsPassedToGetUpdatePackageOperations = settings;
PackagesPassedToGetUpdatePackageOperations = packages; PackagesPassedToGetUpdatePackageOperations = packages;
return PackageOperationsToReturnFromGetUpdatePackageOperations; return PackageOperationsToReturnFromGetUpdatePackageOperations;
} }
public List<PackageOperation> PackageOperationsPassedToRunPackageOperations; public List<PackageAction> PackageOperationsPassedToRunPackageOperations;
public void RunPackageOperations(IEnumerable<PackageOperation> operations) public void RunPackageOperations(IEnumerable<PackageAction> operations)
{ {
PackageOperationsPassedToRunPackageOperations = operations.ToList(); PackageOperationsPassedToRunPackageOperations = operations.ToList();
} }
@ -208,12 +209,12 @@ namespace ICSharpCode.PackageManagement.Design
PackagePassedToUpdatePackageReference = package; PackagePassedToUpdatePackageReference = package;
SettingsPassedToUpdatePackageReference = settings; SettingsPassedToUpdatePackageReference = settings;
} }
//
public void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions, bool ignoreWalkInfo) // public void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions, bool ignoreWalkInfo)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public DependencyVersion DependencyVersion { public DependencyVersion DependencyVersion {
get { get {
throw new NotImplementedException(); throw new NotImplementedException();
@ -222,8 +223,19 @@ namespace ICSharpCode.PackageManagement.Design
throw new NotImplementedException(); throw new NotImplementedException();
} }
} }
//
public bool WhatIf { // public bool WhatIf {
// get {
// throw new NotImplementedException();
// }
// set {
// throw new NotImplementedException();
// }
// }
// NuGet 3.0 - follows
public bool BindingRedirectEnabled {
get { get {
throw new NotImplementedException(); throw new NotImplementedException();
} }
@ -231,5 +243,25 @@ namespace ICSharpCode.PackageManagement.Design
throw new NotImplementedException(); throw new NotImplementedException();
} }
} }
public void Execute(PackageOperation operation)
{
throw new NotImplementedException();
}
public bool IsProjectLevel(IPackage package)
{
throw new NotImplementedException();
}
public void AddBindingRedirects(IProjectManager projectManager)
{
throw new NotImplementedException();
}
public IPackage LocatePackageToUninstall(IProjectManager projectManager, string id, SemanticVersion version)
{
throw new NotImplementedException();
}
} }
} }

10
src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageOperation.cs

@ -18,18 +18,20 @@
using System; using System;
using NuGet; using NuGet;
using NuGet.Resolver;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement.Design namespace ICSharpCode.PackageManagement.Design
{ {
public class FakePackageOperation : PackageOperation public class FakePackageOperation : PackageAction
{ {
public FakePackageOperation() public FakePackageOperation()
: this(new FakePackage("MyPackage"), PackageAction.Install) : this(new FakePackage("MyPackage"), PackageActionType.Install)
{ {
} }
public FakePackageOperation(FakePackage package, PackageAction action) public FakePackageOperation(FakePackage package, PackageActionType action)
: base(package, action) : base(action, package)
{ {
this.FakePackage = package; this.FakePackage = package;
} }

143
src/AddIns/Misc/PackageManagement/Project/Src/Design/FakeProjectManager.cs

@ -23,22 +23,22 @@ namespace ICSharpCode.PackageManagement.Design
{ {
public class FakeProjectManager : ISharpDevelopProjectManager public class FakeProjectManager : ISharpDevelopProjectManager
{ {
public FakePackageRepository FakeLocalRepository { // public FakePackageRepository FakeLocalRepository {
get { return LocalRepository as FakePackageRepository; } // get { return LocalRepository as FakePackageRepository; }
set { LocalRepository = value; } // set { LocalRepository = value; }
} // }
//
public FakePackageRepository FakeSourceRepository { // public FakePackageRepository FakeSourceRepository {
get { return SourceRepository as FakePackageRepository; } // get { return SourceRepository as FakePackageRepository; }
set { SourceRepository = value; } // set { SourceRepository = value; }
} // }
//
public bool IsInstalledReturnValue; public bool IsInstalledReturnValue;
public FakeProjectManager() public FakeProjectManager()
{ {
LocalRepository = new FakePackageRepository(); // LocalRepository = new FakePackageRepository();
SourceRepository = new FakePackageRepository(); // SourceRepository = new FakePackageRepository();
} }
public event EventHandler<PackageOperationEventArgs> PackageReferenceAdded; public event EventHandler<PackageOperationEventArgs> PackageReferenceAdded;
@ -66,7 +66,7 @@ namespace ICSharpCode.PackageManagement.Design
public IPackageRepository LocalRepository { get; set; } public IPackageRepository LocalRepository { get; set; }
public ILogger Logger { get; set; } public ILogger Logger { get; set; }
public IPackageRepository SourceRepository { get; set; } // public IPackageRepository SourceRepository { get; set; }
public IPackagePathResolver PathResolver { get; set; } public IPackagePathResolver PathResolver { get; set; }
public IProjectSystem Project { public IProjectSystem Project {
@ -76,11 +76,11 @@ namespace ICSharpCode.PackageManagement.Design
public FakeProjectSystem FakeProjectSystem = new FakeProjectSystem(); public FakeProjectSystem FakeProjectSystem = new FakeProjectSystem();
public void RemovePackageReference(string packageId, bool forceRemove, bool removeDependencies) // public void RemovePackageReference(string packageId, bool forceRemove, bool removeDependencies)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public IPackage PackagePassedToIsInstalled; public IPackage PackagePassedToIsInstalled;
public bool IsInstalled(IPackage package) public bool IsInstalled(IPackage package)
@ -88,14 +88,14 @@ namespace ICSharpCode.PackageManagement.Design
PackagePassedToIsInstalled = package; PackagePassedToIsInstalled = package;
return IsInstalledReturnValue; return IsInstalledReturnValue;
} }
//
public string PackageIdPassedToIsInstalled; // public string PackageIdPassedToIsInstalled;
//
public bool IsInstalled(string packageId) // public bool IsInstalled(string packageId)
{ // {
PackageIdPassedToIsInstalled = packageId; // PackageIdPassedToIsInstalled = packageId;
return IsInstalledReturnValue; // return IsInstalledReturnValue;
} // }
public void FirePackageReferenceAdded(IPackage package) public void FirePackageReferenceAdded(IPackage package)
{ {
@ -106,32 +106,32 @@ namespace ICSharpCode.PackageManagement.Design
{ {
OnPackageReferenceRemoving(package); OnPackageReferenceRemoving(package);
} }
//
public void AddPackageReference(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions) // public void AddPackageReference(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void RemovePackageReference(IPackage package, bool forceRemove, bool removeDependencies) // public void RemovePackageReference(IPackage package, bool forceRemove, bool removeDependencies)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void AddPackageReference(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions) // public void AddPackageReference(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void UpdatePackageReference(string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions) // public void UpdatePackageReference(string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public void UpdatePackageReference(string packageId, IVersionSpec versionSpec, bool updateDependencies, bool allowPrereleaseVersions) // public void UpdatePackageReference(string packageId, IVersionSpec versionSpec, bool updateDependencies, bool allowPrereleaseVersions)
{ // {
throw new NotImplementedException(); // throw new NotImplementedException();
} // }
//
public IPackage PackagePassedToHasOlderPackageInstalled; public IPackage PackagePassedToHasOlderPackageInstalled;
public bool HasOlderPackageInstalledReturnValue; public bool HasOlderPackageInstalledReturnValue;
@ -140,17 +140,39 @@ namespace ICSharpCode.PackageManagement.Design
PackagePassedToHasOlderPackageInstalled = package; PackagePassedToHasOlderPackageInstalled = package;
return HasOlderPackageInstalledReturnValue; return HasOlderPackageInstalledReturnValue;
} }
//
// public DependencyVersion DependencyVersion {
// get {
// throw new NotImplementedException();
// }
// set {
// throw new NotImplementedException();
// }
// }
//
// public bool WhatIf {
// get {
// throw new NotImplementedException();
// }
// set {
// throw new NotImplementedException();
// }
// }
//
// public void UpdatePackageReference(IPackage remotePackage, bool updateDependencies, bool allowPrereleaseVersions)
// {
// throw new NotImplementedException();
// }
// NuGet 3.0 - follows
public DependencyVersion DependencyVersion { public IPackageManager PackageManager {
get { get {
throw new NotImplementedException(); throw new NotImplementedException();
} }
set {
throw new NotImplementedException();
}
} }
public bool WhatIf { public IPackageConstraintProvider ConstraintProvider {
get { get {
throw new NotImplementedException(); throw new NotImplementedException();
} }
@ -159,7 +181,12 @@ namespace ICSharpCode.PackageManagement.Design
} }
} }
public void UpdatePackageReference(IPackage remotePackage, bool updateDependencies, bool allowPrereleaseVersions) public bool IsInstalled(string packageId)
{
throw new NotImplementedException();
}
public void Execute(PackageOperation operation)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

2
src/AddIns/Misc/PackageManagement/Project/Src/Design/FakeProjectSystem.cs

@ -40,7 +40,7 @@ namespace ICSharpCode.PackageManagement.Design
throw new NotImplementedException(); throw new NotImplementedException();
} }
public void AddReference(string referencePath, Stream stream) public void AddReference(string referencePath)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }

9
src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementProject.cs

@ -22,6 +22,7 @@ using System.Linq;
using ICSharpCode.PackageManagement.EnvDTE; using ICSharpCode.PackageManagement.EnvDTE;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
@ -45,21 +46,21 @@ namespace ICSharpCode.PackageManagement
IQueryable<IPackage> GetPackages(); IQueryable<IPackage> GetPackages();
IEnumerable<IPackage> GetPackagesInReverseDependencyOrder(); IEnumerable<IPackage> GetPackagesInReverseDependencyOrder();
IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction); IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction);
IEnumerable<PackageOperation> GetUpdatePackagesOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings); IEnumerable<PackageAction> GetUpdatePackagesOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings);
void InstallPackage(IPackage package, InstallPackageAction installAction); void InstallPackage(IPackage package, InstallPackageAction installAction);
void UpdatePackage(IPackage package, UpdatePackageAction updateAction); void UpdatePackage(IPackage package, UpdatePackageAction updateAction);
void UninstallPackage(IPackage package, UninstallPackageAction uninstallAction); void UninstallPackage(IPackage package, UninstallPackageAction uninstallAction);
void UpdatePackages(UpdatePackagesAction action); void UpdatePackages(UpdatePackagesAction action);
void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings); // void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings);
InstallPackageAction CreateInstallPackageAction(); InstallPackageAction CreateInstallPackageAction();
UninstallPackageAction CreateUninstallPackageAction(); UninstallPackageAction CreateUninstallPackageAction();
UpdatePackageAction CreateUpdatePackageAction(); UpdatePackageAction CreateUpdatePackageAction();
UpdatePackagesAction CreateUpdatePackagesAction(); UpdatePackagesAction CreateUpdatePackagesAction();
void RunPackageOperations(IEnumerable<PackageOperation> expectedOperations); void RunPackageOperations(IEnumerable<PackageAction> expectedOperations);
} }
} }

9
src/AddIns/Misc/PackageManagement/Project/Src/ISharpDevelopPackageManager.cs

@ -19,6 +19,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
@ -30,11 +31,11 @@ namespace ICSharpCode.PackageManagement
void UninstallPackage(IPackage package, UninstallPackageAction uninstallAction); void UninstallPackage(IPackage package, UninstallPackageAction uninstallAction);
void UpdatePackage(IPackage package, UpdatePackageAction updateAction); void UpdatePackage(IPackage package, UpdatePackageAction updateAction);
void UpdatePackages(UpdatePackagesAction updateAction); void UpdatePackages(UpdatePackagesAction updateAction);
void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings); //void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings);
IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction); IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction);
IEnumerable<PackageOperation> GetUpdatePackageOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings); IEnumerable<PackageAction> GetUpdatePackageOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings);
void RunPackageOperations(IEnumerable<PackageOperation> operations); void RunPackageOperations(IEnumerable<PackageAction> operations);
} }
} }

1
src/AddIns/Misc/PackageManagement/Project/Src/ISharpDevelopProjectManager.cs

@ -25,6 +25,7 @@ namespace ICSharpCode.PackageManagement
{ {
IPackagePathResolver PathResolver { get; } IPackagePathResolver PathResolver { get; }
bool IsInstalled(string packageId); bool IsInstalled(string packageId);
bool IsInstalled(IPackage package);
bool HasOlderPackageInstalled(IPackage package); bool HasOlderPackageInstalled(IPackage package);
} }
} }

5
src/AddIns/Misc/PackageManagement/Project/Src/IUpdatePackagesAction.cs

@ -19,15 +19,16 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
public interface IUpdatePackagesAction : IPackageAction, IUpdatePackageSettings public interface IUpdatePackagesAction : IPackageAction, IUpdatePackageSettings
{ {
IEnumerable<PackageOperation> Operations { get; } IEnumerable<PackageAction> Operations { get; }
ILogger Logger { get; set; } ILogger Logger { get; set; }
void AddPackages(IEnumerable<IPackageFromRepository> packages); void AddPackages(IEnumerable<IPackageFromRepository> packages);
void AddOperations(IEnumerable<PackageOperation> operations); void AddOperations(IEnumerable<PackageAction> operations);
} }
} }

3
src/AddIns/Misc/PackageManagement/Project/Src/InstallPackageAction.cs

@ -21,6 +21,7 @@ using System.Collections.Generic;
using System.IO; using System.IO;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
@ -35,7 +36,7 @@ namespace ICSharpCode.PackageManagement
public bool IgnoreDependencies { get; set; } public bool IgnoreDependencies { get; set; }
protected override IEnumerable<PackageOperation> GetPackageOperations() protected override IEnumerable<PackageAction> GetPackageOperations()
{ {
return Project.GetInstallPackageOperations(Package, this); return Project.GetInstallPackageOperations(Package, this);
} }

7
src/AddIns/Misc/PackageManagement/Project/Src/PackageFilesForOperations.cs

@ -19,14 +19,15 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
public class PackageFilesForOperations public class PackageFilesForOperations
{ {
IEnumerable<PackageOperation> operations; IEnumerable<PackageAction> operations;
public PackageFilesForOperations(IEnumerable<PackageOperation> operations) public PackageFilesForOperations(IEnumerable<PackageAction> operations)
{ {
this.operations = operations; this.operations = operations;
} }
@ -43,7 +44,7 @@ namespace ICSharpCode.PackageManagement
IEnumerable<PackageFiles> GetPackageFilesForEachOperation() IEnumerable<PackageFiles> GetPackageFilesForEachOperation()
{ {
foreach (PackageOperation operation in operations) { foreach (PackageAction operation in operations) {
yield return new PackageFiles(operation.Package); yield return new PackageFiles(operation.Package);
} }
} }

17
src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementProject.cs

@ -23,6 +23,7 @@ using System.Linq;
using ICSharpCode.PackageManagement.EnvDTE; using ICSharpCode.PackageManagement.EnvDTE;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
@ -99,7 +100,7 @@ namespace ICSharpCode.PackageManagement
return projectManager.LocalRepository.GetPackages(); return projectManager.LocalRepository.GetPackages();
} }
public IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction) public IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction)
{ {
return packageManager.GetInstallPackageOperations(package, installAction); return packageManager.GetInstallPackageOperations(package, installAction);
} }
@ -157,14 +158,14 @@ namespace ICSharpCode.PackageManagement
return new UpdatePackagesAction(this, packageManagementEvents); return new UpdatePackagesAction(this, packageManagementEvents);
} }
public IEnumerable<PackageOperation> GetUpdatePackagesOperations( public IEnumerable<PackageAction> GetUpdatePackagesOperations(
IEnumerable<IPackage> packages, IEnumerable<IPackage> packages,
IUpdatePackageSettings settings) IUpdatePackageSettings settings)
{ {
return packageManager.GetUpdatePackageOperations(packages, settings); return packageManager.GetUpdatePackageOperations(packages, settings);
} }
public void RunPackageOperations(IEnumerable<PackageOperation> operations) public void RunPackageOperations(IEnumerable<PackageAction> operations)
{ {
packageManager.RunPackageOperations(operations); packageManager.RunPackageOperations(operations);
} }
@ -173,10 +174,10 @@ namespace ICSharpCode.PackageManagement
{ {
return projectManager.HasOlderPackageInstalled(package); return projectManager.HasOlderPackageInstalled(package);
} }
//
public void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings) // public void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings)
{ // {
packageManager.UpdatePackageReference(package, settings); // packageManager.UpdatePackageReference(package, settings);
} // }
} }
} }

112
src/AddIns/Misc/PackageManagement/Project/Src/PackageViewModel.cs

@ -22,6 +22,8 @@ using System.Linq;
using System.Windows.Input; using System.Windows.Input;
using ICSharpCode.PackageManagement; using ICSharpCode.PackageManagement;
using NuGet; using NuGet;
using NuGet.Resolver;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
@ -34,7 +36,7 @@ namespace ICSharpCode.PackageManagement
PackageManagementSelectedProjects selectedProjects; PackageManagementSelectedProjects selectedProjects;
IPackageManagementEvents packageManagementEvents; IPackageManagementEvents packageManagementEvents;
IPackageFromRepository package; IPackageFromRepository package;
IEnumerable<PackageOperation> packageOperations = new PackageOperation[0]; IEnumerable<PackageAction> packageOperations = new PackageAction[0];
PackageViewModelOperationLogger logger; PackageViewModelOperationLogger logger;
readonly IPackageActionRunner actionRunner; readonly IPackageActionRunner actionRunner;
IPackageViewModelParent parent; IPackageViewModelParent parent;
@ -267,7 +269,7 @@ namespace ICSharpCode.PackageManagement
void GetInstallOperationsForSelectedProjects(IEnumerable<IPackageManagementSelectedProject> projects) void GetInstallOperationsForSelectedProjects(IEnumerable<IPackageManagementSelectedProject> projects)
{ {
packageOperations = new PackageOperation[0]; packageOperations = new PackageAction[0];
IPackageManagementSelectedProject firstSelectedProject = projects.FirstOrDefault(project => project.IsSelected); IPackageManagementSelectedProject firstSelectedProject = projects.FirstOrDefault(project => project.IsSelected);
@ -297,8 +299,8 @@ namespace ICSharpCode.PackageManagement
IList<IPackage> GetPackagesToBeInstalled() IList<IPackage> GetPackagesToBeInstalled()
{ {
var packages = new List<IPackage>(); var packages = new List<IPackage>();
foreach (PackageOperation operation in packageOperations) { foreach (PackageAction operation in packageOperations) {
if (operation.Action == PackageAction.Install) { if (operation.ActionType == PackageActionType.Install) {
packages.Add(operation.Package); packages.Add(operation.Package);
} }
} }
@ -342,13 +344,20 @@ namespace ICSharpCode.PackageManagement
InstallPackageAction installAction, InstallPackageAction installAction,
IPackageFromRepository installPackage) IPackageFromRepository installPackage)
{ {
var resolverFactory = new PackageOperationsResolverFactory(); var resolver = new ActionResolver {
var resolver = resolverFactory.CreateInstallPackageOperationResolver( Logger = logger,
solutionRepository.Repository, IgnoreDependencies = installAction.IgnoreDependencies,
installPackage.Repository, DependencyVersion = DependencyVersion.Lowest,
logger, AllowPrereleaseVersions = installAction.AllowPrereleaseVersions
installAction); };
packageOperations = resolver.ResolveOperations(installPackage); resolver.AddOperation(NuGet.PackageAction.Install, package, null);
// var resolverFactory = new PackageOperationsResolverFactory();
// var resolver = resolverFactory.CreateInstallPackageOperationResolver(
// solutionRepository.Repository,
// installPackage.Repository,
// logger,
// installAction);
// packageOperations = resolver.ResolveOperations(installPackage);
} }
void InstallPackageIntoSolution( void InstallPackageIntoSolution(
@ -356,17 +365,17 @@ namespace ICSharpCode.PackageManagement
InstallPackageAction installAction, InstallPackageAction installAction,
IPackageFromRepository installPackage) IPackageFromRepository installPackage)
{ {
var packageManager = new PackageManager( // var packageManager = new PackageManager(
installPackage.Repository, // installPackage.Repository,
solutionRepository.PackagePathResolver, // solutionRepository.PackagePathResolver,
solutionRepository.FileSystem, // solutionRepository.FileSystem,
solutionRepository.Repository); // solutionRepository.Repository);
//
packageManager.InstallPackage( // packageManager.InstallPackage(
installPackage.Id, // installPackage.Id,
installPackage.Version, // installPackage.Version,
installAction.IgnoreDependencies, // installAction.IgnoreDependencies,
installAction.AllowPrereleaseVersions); // installAction.AllowPrereleaseVersions);
} }
protected virtual void TryUpdatingPackageInSolution() protected virtual void TryUpdatingPackageInSolution()
@ -400,13 +409,13 @@ namespace ICSharpCode.PackageManagement
UpdatePackageAction updateAction, UpdatePackageAction updateAction,
IPackageFromRepository updatePackage) IPackageFromRepository updatePackage)
{ {
var resolverFactory = new PackageOperationsResolverFactory(); // var resolverFactory = new PackageOperationsResolverFactory();
var resolver = resolverFactory.CreateUpdatePackageOperationResolver( // var resolver = resolverFactory.CreateUpdatePackageOperationResolver(
solutionRepository.Repository, // solutionRepository.Repository,
updatePackage.Repository, // updatePackage.Repository,
logger, // logger,
updateAction); // updateAction);
packageOperations = resolver.ResolveOperations(updatePackage); // packageOperations = resolver.ResolveOperations(updatePackage);
} }
void UpdateSolutionLevelPackage( void UpdateSolutionLevelPackage(
@ -414,16 +423,16 @@ namespace ICSharpCode.PackageManagement
UpdatePackageAction updateAction, UpdatePackageAction updateAction,
IPackageFromRepository updatePackage) IPackageFromRepository updatePackage)
{ {
var packageManager = new PackageManager( // var packageManager = new PackageManager(
updatePackage.Repository, // updatePackage.Repository,
solutionRepository.PackagePathResolver, // solutionRepository.PackagePathResolver,
solutionRepository.FileSystem, // solutionRepository.FileSystem,
solutionRepository.Repository); // solutionRepository.Repository);
//
packageManager.UpdatePackage( // packageManager.UpdatePackage(
updatePackage.Id, // updatePackage.Id,
updateAction.UpdateDependencies, // updateAction.UpdateDependencies,
updateAction.AllowPrereleaseVersions); // updateAction.AllowPrereleaseVersions);
} }
void TryInstallingPackageIntoProject() void TryInstallingPackageIntoProject()
@ -444,7 +453,7 @@ namespace ICSharpCode.PackageManagement
InstallPackageIntoProject(packageOperations); InstallPackageIntoProject(packageOperations);
} }
void InstallPackageIntoProject(IEnumerable<PackageOperation> installOperations) void InstallPackageIntoProject(IEnumerable<PackageAction> installOperations)
{ {
IPackageManagementProject project = GetSingleProjectSelected(); IPackageManagementProject project = GetSingleProjectSelected();
ProcessPackageOperationsAction action = CreateInstallPackageAction(project); ProcessPackageOperationsAction action = CreateInstallPackageAction(project);
@ -505,17 +514,18 @@ namespace ICSharpCode.PackageManagement
protected void TryUninstallingPackageFromSolution(IPackage removePackage) protected void TryUninstallingPackageFromSolution(IPackage removePackage)
{ {
try { try {
var solutionPackageRepository = PackageManagementServices.Solution.CreateSolutionPackageRepository(); throw new NotImplementedException("UninstallingPackageFromSolution");
var packageManager = new PackageManager( // var solutionPackageRepository = PackageManagementServices.Solution.CreateSolutionPackageRepository();
solutionPackageRepository.Repository, // var packageManager = new PackageManager(
solutionPackageRepository.PackagePathResolver, // solutionPackageRepository.Repository,
solutionPackageRepository.FileSystem); // solutionPackageRepository.PackagePathResolver,
// solutionPackageRepository.FileSystem);
packageManager.UninstallPackage(removePackage); //
// packageManager.UninstallPackage(removePackage);
solutionPackageRepository.Repository.RemovePackage(removePackage); //
// solutionPackageRepository.Repository.RemovePackage(removePackage);
packageManagementEvents.OnParentPackageUninstalled(removePackage); //
// packageManagementEvents.OnParentPackageUninstalled(removePackage);
} catch (Exception ex) { } catch (Exception ex) {
ReportError(ex); ReportError(ex);

5
src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageOperationsAction.cs

@ -19,6 +19,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
@ -31,7 +32,7 @@ namespace ICSharpCode.PackageManagement
{ {
} }
public IEnumerable<PackageOperation> Operations { get; set; } public IEnumerable<PackageAction> Operations { get; set; }
public override bool HasPackageScriptsToRun() public override bool HasPackageScriptsToRun()
{ {
@ -53,7 +54,7 @@ namespace ICSharpCode.PackageManagement
} }
} }
protected virtual IEnumerable<PackageOperation> GetPackageOperations() protected virtual IEnumerable<PackageAction> GetPackageOperations()
{ {
return null; return null;
} }

180
src/AddIns/Misc/PackageManagement/Project/Src/SharpDevelopPackageManager.cs

@ -21,6 +21,8 @@ using System.Collections.Generic;
using ICSharpCode.PackageManagement.Scripting; using ICSharpCode.PackageManagement.Scripting;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using NuGet; using NuGet;
using NuGet.Resolver;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
@ -69,50 +71,58 @@ namespace ICSharpCode.PackageManagement
SharpDevelopProjectManager CreateProjectManager(PackageReferenceRepository packageRefRepository) SharpDevelopProjectManager CreateProjectManager(PackageReferenceRepository packageRefRepository)
{ {
return new SharpDevelopProjectManager(LocalRepository, PathResolver, projectSystem, packageRefRepository); return new SharpDevelopProjectManager(this, PathResolver, projectSystem, packageRefRepository);
} }
public void InstallPackage(IPackage package) // public void InstallPackage(IPackage package)
{ // {
bool ignoreDependencies = false; // bool ignoreDependencies = false;
bool allowPreleaseVersions = false; // bool allowPreleaseVersions = false;
InstallPackage(package, ignoreDependencies, allowPreleaseVersions); // InstallPackage(package, ignoreDependencies, allowPreleaseVersions);
} // }
public void InstallPackage(IPackage package, InstallPackageAction installAction) public void InstallPackage(IPackage package, InstallPackageAction installAction)
{ {
RunPackageOperations(installAction.Operations); RunPackageOperations(installAction.Operations);
AddPackageReference(package, installAction.IgnoreDependencies, installAction.AllowPrereleaseVersions); // AddPackageReference(package, installAction.IgnoreDependencies, installAction.AllowPrereleaseVersions);
}
void AddPackageReference(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
{
var monitor = new RemovedPackageReferenceMonitor(ProjectManager);
using (monitor) {
ProjectManager.AddPackageReference(package.Id, package.Version, ignoreDependencies, allowPrereleaseVersions);
}
monitor.PackagesRemoved.ForEach(packageRemoved => UninstallPackageFromSolutionRepository(packageRemoved));
}
public override void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
{
base.InstallPackage(package, ignoreDependencies, allowPrereleaseVersions);
AddPackageReference(package, ignoreDependencies, allowPrereleaseVersions);
} }
// void AddPackageReference(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
// {
// var monitor = new RemovedPackageReferenceMonitor(ProjectManager);
// using (monitor) {
// ProjectManager.AddPackageReference(package.Id, package.Version, ignoreDependencies, allowPrereleaseVersions);
// }
//
// monitor.PackagesRemoved.ForEach(packageRemoved => UninstallPackageFromSolutionRepository(packageRemoved));
// }
//
// public override void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
// {
// base.InstallPackage(package, ignoreDependencies, allowPrereleaseVersions);
// AddPackageReference(package, ignoreDependencies, allowPrereleaseVersions);
// }
//
public void UninstallPackage(IPackage package, UninstallPackageAction uninstallAction) public void UninstallPackage(IPackage package, UninstallPackageAction uninstallAction)
{ {
UninstallPackage(package, uninstallAction.ForceRemove, uninstallAction.RemoveDependencies); var resolver = new ActionResolver {
} Logger = Logger,
DependencyVersion = DependencyVersion.Lowest,
public override void UninstallPackage(IPackage package, bool forceRemove, bool removeDependencies) ForceRemove = uninstallAction.ForceRemove,
{ RemoveDependencies = uninstallAction.RemoveDependencies
ProjectManager.RemovePackageReference(package.Id, forceRemove, removeDependencies); };
if (!IsPackageReferencedByOtherProjects(package)) { resolver.AddOperation(NuGet.PackageAction.Uninstall, package, ProjectManager);
base.UninstallPackage(package, forceRemove, removeDependencies); IEnumerable<PackageAction> actions = resolver.ResolveActions();
} RunPackageOperations(actions);
} }
//
// public override void UninstallPackage(IPackage package, bool forceRemove, bool removeDependencies)
// {
// ProjectManager.RemovePackageReference(package.Id, forceRemove, removeDependencies);
// if (!IsPackageReferencedByOtherProjects(package)) {
// base.UninstallPackage(package, forceRemove, removeDependencies);
// }
// }
public void UninstallPackageFromSolutionRepository(IPackage package) public void UninstallPackageFromSolutionRepository(IPackage package)
{ {
@ -127,59 +137,78 @@ namespace ICSharpCode.PackageManagement
return sharedRepository.IsReferenced(package.Id, package.Version); return sharedRepository.IsReferenced(package.Id, package.Version);
} }
public IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction) public IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction)
{ {
IPackageOperationResolver resolver = CreateInstallPackageOperationResolver(installAction); var resolver = new ActionResolver {
return resolver.ResolveOperations(package); Logger = Logger,
IgnoreDependencies = installAction.IgnoreDependencies,
DependencyVersion = DependencyVersion.Lowest,
AllowPrereleaseVersions = installAction.AllowPrereleaseVersions
};
resolver.AddOperation(NuGet.PackageAction.Install, package, ProjectManager);
return resolver.ResolveActions();
// IPackageOperationResolver resolver = CreateInstallPackageOperationResolver(installAction);
// return resolver.ResolveOperations(package);
} }
IPackageOperationResolver CreateInstallPackageOperationResolver(InstallPackageAction installAction)
{ // IPackageOperationResolver CreateInstallPackageOperationResolver(InstallPackageAction installAction)
return packageOperationResolverFactory.CreateInstallPackageOperationResolver( // {
LocalRepository, // return packageOperationResolverFactory.CreateInstallPackageOperationResolver(
SourceRepository, // LocalRepository,
Logger, // SourceRepository,
installAction); // Logger,
} // installAction);
// }
public void UpdatePackage(IPackage package, UpdatePackageAction updateAction) public void UpdatePackage(IPackage package, UpdatePackageAction updateAction)
{ {
RunPackageOperations(updateAction.Operations); RunPackageOperations(updateAction.Operations);
UpdatePackageReference(package, updateAction); // UpdatePackageReference(package, updateAction);
} }
public void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings) // public void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings)
{ // {
UpdatePackageReference(package, settings.UpdateDependencies, settings.AllowPrereleaseVersions); // UpdatePackageReference(package, settings.UpdateDependencies, settings.AllowPrereleaseVersions);
} // }
//
void UpdatePackageReference(IPackage package, bool updateDependencies, bool allowPrereleaseVersions) // void UpdatePackageReference(IPackage package, bool updateDependencies, bool allowPrereleaseVersions)
{ // {
var monitor = new RemovedPackageReferenceMonitor(ProjectManager); // var monitor = new RemovedPackageReferenceMonitor(ProjectManager);
using (monitor) { // using (monitor) {
ProjectManager.UpdatePackageReference(package.Id, package.Version, updateDependencies, allowPrereleaseVersions); // ProjectManager.UpdatePackageReference(package.Id, package.Version, updateDependencies, allowPrereleaseVersions);
} // }
//
monitor.PackagesRemoved.ForEach(packageRemoved => UninstallPackageFromSolutionRepository(packageRemoved)); // monitor.PackagesRemoved.ForEach(packageRemoved => UninstallPackageFromSolutionRepository(packageRemoved));
} // }
public void UpdatePackages(UpdatePackagesAction updateAction) public void UpdatePackages(UpdatePackagesAction updateAction)
{ {
RunPackageOperations(updateAction.Operations); RunPackageOperations(updateAction.Operations);
foreach (IPackage package in updateAction.Packages) { // foreach (IPackage package in updateAction.Packages) {
UpdatePackageReference(package, updateAction); // UpdatePackageReference(package, updateAction);
} // }
} }
public IEnumerable<PackageOperation> GetUpdatePackageOperations( public IEnumerable<PackageAction> GetUpdatePackageOperations(
IEnumerable<IPackage> packages, IEnumerable<IPackage> packages,
IUpdatePackageSettings settings) IUpdatePackageSettings settings)
{ {
IPackageOperationResolver resolver = CreateUpdatePackageOperationResolver(settings); var resolver = new ActionResolver {
Logger = Logger,
var reducedOperations = new ReducedPackageOperations(resolver, packages); IgnoreDependencies = !settings.UpdateDependencies,
reducedOperations.Reduce(); DependencyVersion = DependencyVersion.Lowest,
return reducedOperations.Operations; AllowPrereleaseVersions = settings.AllowPrereleaseVersions
};
foreach (IPackage package in packages) {
resolver.AddOperation(NuGet.PackageAction.Update, package, ProjectManager);
}
return resolver.ResolveActions();
// IPackageOperationResolver resolver = CreateUpdatePackageOperationResolver(settings);
//
// var reducedOperations = new ReducedPackageOperations(resolver, packages);
// reducedOperations.Reduce();
// return reducedOperations.Operations;
} }
IPackageOperationResolver CreateUpdatePackageOperationResolver(IUpdatePackageSettings settings) IPackageOperationResolver CreateUpdatePackageOperationResolver(IUpdatePackageSettings settings)
@ -191,11 +220,20 @@ namespace ICSharpCode.PackageManagement
settings); settings);
} }
public void RunPackageOperations(IEnumerable<PackageOperation> operations) public void RunPackageOperations(IEnumerable<PackageAction> operations)
{ {
foreach (PackageOperation operation in operations) { var executor = new ActionExecutor {
Execute(operation); Logger = Logger
};
executor.Execute(operations);
} }
protected override void ExecuteUninstall(IPackage package)
{
// Not working...
// if (IsPackageReferencedByOtherProjects(package)) {
// base.ExecuteUninstall(package);
// }
} }
} }
} }

9
src/AddIns/Misc/PackageManagement/Project/Src/SharpDevelopProjectManager.cs

@ -24,11 +24,11 @@ namespace ICSharpCode.PackageManagement
public class SharpDevelopProjectManager : ProjectManager, ISharpDevelopProjectManager public class SharpDevelopProjectManager : ProjectManager, ISharpDevelopProjectManager
{ {
public SharpDevelopProjectManager( public SharpDevelopProjectManager(
IPackageRepository sourceRepository, IPackageManager packageManager,
IPackagePathResolver pathResolver, IPackagePathResolver pathResolver,
IProjectSystem project, IProjectSystem project,
IPackageRepository localRepository) IPackageRepository localRepository)
: base(sourceRepository, pathResolver, project, localRepository) : base(packageManager, pathResolver, project, localRepository)
{ {
} }
@ -37,6 +37,11 @@ namespace ICSharpCode.PackageManagement
return LocalRepository.Exists(packageId); return LocalRepository.Exists(packageId);
} }
public bool IsInstalled(IPackage package)
{
return LocalRepository.Exists(package);
}
public bool HasOlderPackageInstalled(IPackage package) public bool HasOlderPackageInstalled(IPackage package)
{ {
IPackage installedPackage = LocalRepository.FindPackage(package.Id); IPackage installedPackage = LocalRepository.FindPackage(package.Id);

2
src/AddIns/Misc/PackageManagement/Project/Src/SharpDevelopProjectSystem.cs

@ -81,7 +81,7 @@ namespace ICSharpCode.PackageManagement
return project.GetEvaluatedProperty(propertyName); return project.GetEvaluatedProperty(propertyName);
} }
public void AddReference(string referencePath, Stream stream) public void AddReference(string referencePath)
{ {
ReferenceProjectItem assemblyReference = CreateReference(referencePath); ReferenceProjectItem assemblyReference = CreateReference(referencePath);
AddReferenceToProject(assemblyReference); AddReferenceToProject(assemblyReference);

3
src/AddIns/Misc/PackageManagement/Project/Src/UpdatePackageAction.cs

@ -19,6 +19,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
@ -36,7 +37,7 @@ namespace ICSharpCode.PackageManagement
public bool UpdateDependencies { get; set; } public bool UpdateDependencies { get; set; }
public bool UpdateIfPackageDoesNotExistInProject { get; set; } public bool UpdateIfPackageDoesNotExistInProject { get; set; }
protected override IEnumerable<PackageOperation> GetPackageOperations() protected override IEnumerable<PackageAction> GetPackageOperations()
{ {
var installAction = Project.CreateInstallPackageAction(); var installAction = Project.CreateInstallPackageAction();
installAction.AllowPrereleaseVersions = AllowPrereleaseVersions; installAction.AllowPrereleaseVersions = AllowPrereleaseVersions;

7
src/AddIns/Misc/PackageManagement/Project/Src/UpdatePackagesAction.cs

@ -20,13 +20,14 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using ICSharpCode.PackageManagement.Scripting; using ICSharpCode.PackageManagement.Scripting;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
public class UpdatePackagesAction : IUpdatePackagesAction public class UpdatePackagesAction : IUpdatePackagesAction
{ {
List<IPackage> packages = new List<IPackage>(); List<IPackage> packages = new List<IPackage>();
List<PackageOperation> operations = new List<PackageOperation>(); List<PackageAction> operations = new List<PackageAction>();
IPackageManagementEvents packageManagementEvents; IPackageManagementEvents packageManagementEvents;
public UpdatePackagesAction( public UpdatePackagesAction(
@ -45,7 +46,7 @@ namespace ICSharpCode.PackageManagement
get { return packages; } get { return packages; }
} }
public IEnumerable<PackageOperation> Operations { public IEnumerable<PackageAction> Operations {
get { return operations; } get { return operations; }
} }
@ -59,7 +60,7 @@ namespace ICSharpCode.PackageManagement
return files.HasAnyPackageScripts(); return files.HasAnyPackageScripts();
} }
public void AddOperations(IEnumerable<PackageOperation> operations) public void AddOperations(IEnumerable<PackageAction> operations)
{ {
this.operations.AddRange(operations); this.operations.AddRange(operations);
} }

5
src/AddIns/Misc/PackageManagement/Project/Src/UpdatePackagesActionFactory.cs

@ -21,6 +21,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
@ -53,13 +54,13 @@ namespace ICSharpCode.PackageManagement
action.AddPackages(packages); action.AddPackages(packages);
action.Logger = logger; action.Logger = logger;
IEnumerable<PackageOperation> operations = GetPackageOperations(action); IEnumerable<PackageAction> operations = GetPackageOperations(action);
action.AddOperations(operations); action.AddOperations(operations);
return action; return action;
} }
IEnumerable<PackageOperation> GetPackageOperations(IUpdatePackagesAction action) IEnumerable<PackageAction> GetPackageOperations(IUpdatePackagesAction action)
{ {
return project.GetUpdatePackagesOperations(packages, action); return project.GetUpdatePackagesOperations(packages, action);
} }

29
src/AddIns/Misc/PackageManagement/Project/Src/UpdateSolutionPackagesAction.cs

@ -21,13 +21,14 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using ICSharpCode.PackageManagement.Scripting; using ICSharpCode.PackageManagement.Scripting;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement namespace ICSharpCode.PackageManagement
{ {
public class UpdateSolutionPackagesAction : IUpdatePackagesAction public class UpdateSolutionPackagesAction : IUpdatePackagesAction
{ {
List<IPackageFromRepository> packages = new List<IPackageFromRepository>(); List<IPackageFromRepository> packages = new List<IPackageFromRepository>();
List<PackageOperation> operations = new List<PackageOperation>(); List<PackageAction> operations = new List<PackageAction>();
List<IPackageManagementProject> projects; List<IPackageManagementProject> projects;
IPackageManagementEvents packageManagementEvents; IPackageManagementEvents packageManagementEvents;
@ -46,7 +47,7 @@ namespace ICSharpCode.PackageManagement
public bool AllowPrereleaseVersions { get; set; } public bool AllowPrereleaseVersions { get; set; }
public ILogger Logger { get; set; } public ILogger Logger { get; set; }
public IEnumerable<PackageOperation> Operations { public IEnumerable<PackageAction> Operations {
get { return operations; } get { return operations; }
} }
@ -60,7 +61,7 @@ namespace ICSharpCode.PackageManagement
return files.HasAnyPackageScripts(); return files.HasAnyPackageScripts();
} }
public void AddOperations(IEnumerable<PackageOperation> operations) public void AddOperations(IEnumerable<PackageAction> operations)
{ {
this.operations.AddRange(operations); this.operations.AddRange(operations);
} }
@ -94,7 +95,7 @@ namespace ICSharpCode.PackageManagement
void ExecuteCore() void ExecuteCore()
{ {
RunPackageOperations(); RunPackageOperations();
UpdatePackageReferences(); //UpdatePackageReferences();
packageManagementEvents.OnParentPackagesUpdated(Packages); packageManagementEvents.OnParentPackagesUpdated(Packages);
} }
@ -119,16 +120,16 @@ namespace ICSharpCode.PackageManagement
return projects; return projects;
} }
void UpdatePackageReferences() // void UpdatePackageReferences()
{ // {
foreach (IPackageManagementProject project in GetProjects()) { // foreach (IPackageManagementProject project in GetProjects()) {
foreach (IPackageFromRepository package in packages) { // foreach (IPackageFromRepository package in packages) {
if (project.HasOlderPackageInstalled(package)) { // if (project.HasOlderPackageInstalled(package)) {
project.UpdatePackageReference(package, this); // project.UpdatePackageReference(package, this);
} // }
} // }
} // }
} // }
protected virtual RunAllProjectPackageScriptsAction CreateRunPackageScriptsAction( protected virtual RunAllProjectPackageScriptsAction CreateRunPackageScriptsAction(
IPackageScriptRunner scriptRunner, IPackageScriptRunner scriptRunner,

3
src/AddIns/Misc/PackageManagement/Test/Src/ConsolePackageActionRunnerTests.cs

@ -23,6 +23,7 @@ using ICSharpCode.PackageManagement.Design;
using ICSharpCode.PackageManagement.Scripting; using ICSharpCode.PackageManagement.Scripting;
using ICSharpCode.Scripting.Tests.Utils; using ICSharpCode.Scripting.Tests.Utils;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
using NUnit.Framework; using NUnit.Framework;
using PackageManagement.Tests.Helpers; using PackageManagement.Tests.Helpers;
@ -51,7 +52,7 @@ namespace PackageManagement.Tests
{ {
var project = new FakePackageManagementProject(); var project = new FakePackageManagementProject();
var action = new FakeInstallPackageAction(project); var action = new FakeInstallPackageAction(project);
action.Operations = new PackageOperation[0]; action.Operations = new PackageAction[0];
return action; return action;
} }

3
src/AddIns/Misc/PackageManagement/Test/Src/Helpers/ExceptionThrowingPackageManagementProject.cs

@ -21,6 +21,7 @@ using System.Collections.Generic;
using ICSharpCode.PackageManagement; using ICSharpCode.PackageManagement;
using ICSharpCode.PackageManagement.Design; using ICSharpCode.PackageManagement.Design;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace PackageManagement.Tests.Helpers namespace PackageManagement.Tests.Helpers
{ {
@ -43,7 +44,7 @@ namespace PackageManagement.Tests.Helpers
throw ExceptionToThrowWhenCreateUninstallPackageActionCalled; throw ExceptionToThrowWhenCreateUninstallPackageActionCalled;
} }
public override IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction) public override IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction)
{ {
if (ExceptionToThrowWhenGetInstallPackageOperationsCalled != null) { if (ExceptionToThrowWhenGetInstallPackageOperationsCalled != null) {
throw ExceptionToThrowWhenGetInstallPackageOperationsCalled; throw ExceptionToThrowWhenGetInstallPackageOperationsCalled;

15
src/AddIns/Misc/PackageManagement/Test/Src/Helpers/FakeSharedPackageRepository.cs

@ -58,5 +58,20 @@ namespace PackageManagement.Tests.Helpers
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }
public void RegisterRepository(PackageReferenceFile packageReferenceFile)
{
throw new NotImplementedException();
}
public void UnregisterRepository(PackageReferenceFile packageReferenceFile)
{
throw new NotImplementedException();
}
public IEnumerable<IPackageRepository> LoadProjectRepositories()
{
throw new NotImplementedException();
}
} }
} }

9
src/AddIns/Misc/PackageManagement/Test/Src/Helpers/PackageOperationHelper.cs

@ -20,22 +20,23 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using ICSharpCode.PackageManagement.Design; using ICSharpCode.PackageManagement.Design;
using NuGet; using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace PackageManagement.Tests.Helpers namespace PackageManagement.Tests.Helpers
{ {
public static class PackageOperationHelper public static class PackageOperationHelper
{ {
public static PackageOperation CreateInstallOperationWithFile(string fileName) public static PackageAction CreateInstallOperationWithFile(string fileName)
{ {
var package = new FakePackage(); var package = new FakePackage();
package.AddFile(fileName); package.AddFile(fileName);
return new PackageOperation(package, PackageAction.Install); return new FakePackageAction(package, PackageActionType.Install);
} }
public static List<PackageOperation> CreateListWithOneInstallOperationWithFile(string fileName) public static List<PackageAction> CreateListWithOneInstallOperationWithFile(string fileName)
{ {
PackageOperation operation = CreateInstallOperationWithFile(fileName); PackageAction operation = CreateInstallOperationWithFile(fileName);
var operations = new List<PackageOperation>(); var operations = new List<PackageOperation>();
operations.Add(operation); operations.Add(operation);
return operations; return operations;

70
src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestableProjectManager.cs

@ -44,49 +44,49 @@ namespace PackageManagement.Tests.Helpers
} }
public TestableProjectManager() public TestableProjectManager()
: base(new FakePackageRepository(), : base(new FakePackageManager(),
new FakePackagePathResolver(), new FakePackagePathResolver(),
new FakeProjectSystem(), new FakeProjectSystem(),
new FakePackageRepository()) new FakePackageRepository())
{ {
} }
public override void AddPackageReference(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions) // public override void AddPackageReference(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions)
{ // {
var package = new FakePackage(); // var package = new FakePackage();
package.Id = packageId; // package.Id = packageId;
package.Version = version; // package.Version = version;
PackagePassedToAddPackageReference = package; // PackagePassedToAddPackageReference = package;
IgnoreDependenciesPassedToAddPackageReference = ignoreDependencies; // IgnoreDependenciesPassedToAddPackageReference = ignoreDependencies;
AllowPrereleaseVersionsPassedToAddPackageReference = allowPrereleaseVersions; // AllowPrereleaseVersionsPassedToAddPackageReference = allowPrereleaseVersions;
} // }
public override void AddPackageReference(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
{
PackagePassedToAddPackageReference = package;
IgnoreDependenciesPassedToAddPackageReference = ignoreDependencies;
AllowPrereleaseVersionsPassedToAddPackageReference = allowPrereleaseVersions;
}
public override void RemovePackageReference(IPackage package, bool force, bool removeDependencies)
{
PackagePassedToRemovePackageReference = package;
ForcePassedToRemovePackageReference = force;
RemoveDependenciesPassedToRemovePackageReference = removeDependencies;
}
public override void UpdatePackageReference(string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions)
{
var package = new FakePackage();
package.Id = packageId;
package.Version = version;
PackagePassedToUpdatePackageReference = package; // public override void AddPackageReference(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
UpdateDependenciesPassedToUpdatePackageReference = updateDependencies; // {
AllowPrereleaseVersionsPassedToUpdatePackageReference = allowPrereleaseVersions; // PackagePassedToAddPackageReference = package;
// IgnoreDependenciesPassedToAddPackageReference = ignoreDependencies;
// AllowPrereleaseVersionsPassedToAddPackageReference = allowPrereleaseVersions;
// }
PackagesPassedToUpdatePackageReference.Add(package); // public override void RemovePackageReference(IPackage package, bool force, bool removeDependencies)
} // {
// PackagePassedToRemovePackageReference = package;
// ForcePassedToRemovePackageReference = force;
// RemoveDependenciesPassedToRemovePackageReference = removeDependencies;
// }
//
// public override void UpdatePackageReference(string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions)
// {
// var package = new FakePackage();
// package.Id = packageId;
// package.Version = version;
//
// PackagePassedToUpdatePackageReference = package;
// UpdateDependenciesPassedToUpdatePackageReference = updateDependencies;
// AllowPrereleaseVersionsPassedToUpdatePackageReference = allowPrereleaseVersions;
//
// PackagesPassedToUpdatePackageReference.Add(package);
// }
public FakePackage AddFakePackageToProjectLocalRepository(string packageId, string version) public FakePackage AddFakePackageToProjectLocalRepository(string packageId, string version)
{ {

Loading…
Cancel
Save