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. 145
      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. 194
      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 @@ @@ -1,7 +1,9 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
# SharpDevelop 4.3
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
# 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}"
EndProject
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", @@ -10,7 +12,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop",
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "..\..\..\Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}"
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
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit", "..\..\..\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj", "{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}"
EndProject
@ -32,7 +34,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonEdit.AddIn", "..\..\D @@ -32,7 +34,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonEdit.AddIn", "..\..\D
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PackageManagement.PowerShell", "PowerShell\Project\PackageManagement.PowerShell.csproj", "{A406803B-C584-43A3-BCEE-A0BB3132CB5F}"
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
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.NRefactory", "..\..\..\Libraries\NRefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj", "{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}"
EndProject
@ -40,175 +42,93 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil", "..\..\..\Libr @@ -40,175 +42,93 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil", "..\..\..\Libr
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.NRefactory.CSharp", "..\..\..\Libraries\NRefactory\ICSharpCode.NRefactory.CSharp\ICSharpCode.NRefactory.CSharp.csproj", "{53DCA265-3C3C-42F9-B647-F72BA678122B}"
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
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
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}.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
{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}.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
{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}.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.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
{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.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.Build.0 = Release|Any CPU
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{87E61430-4243-45F2-B74E-0A4C096CEBF3}.Debug|Any CPU.ActiveCfg = Debug|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
{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
{2FF700C2-A38A-48BD-A637-8CAFD4FE6237}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2FF700C2-A38A-48BD-A637-8CAFD4FE6237}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2FF700C2-A38A-48BD-A637-8CAFD4FE6237}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2FF700C2-A38A-48BD-A637-8CAFD4FE6237}.Release|Any CPU.Build.0 = Release|Any CPU
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Any CPU.ActiveCfg = Debug|WithNRefactory
{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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.Build.0 = Release|Any CPU
{A406803B-C584-43A3-BCEE-A0BB3132CB5F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{56E98A01-8398-4A08-9578-C7337711A52B}.Debug|Any CPU.Build.0 = 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}.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
{1B753D7F-7C77-4D5E-B928-02982690879C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1B753D7F-7C77-4D5E-B928-02982690879C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1B753D7F-7C77-4D5E-B928-02982690879C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1B753D7F-7C77-4D5E-B928-02982690879C}.Release|Any CPU.Build.0 = Release|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.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}.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.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}.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.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.Build.0 = Debug|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.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
{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}.Release|Any CPU.ActiveCfg = Debug|Any CPU
{4980B743-B32F-4ABA-AABD-45E2CAD3568D}.Release|Any CPU.Build.0 = Debug|Any CPU
EndGlobalSection
EndGlobal

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

@ -23,6 +23,8 @@ using System.Linq; @@ -23,6 +23,8 @@ using System.Linq;
using ICSharpCode.PackageManagement;
using ICSharpCode.PackageManagement.EnvDTE;
using NuGet;
using NuGet.Resolver;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement.Design
{
@ -79,7 +81,7 @@ namespace ICSharpCode.PackageManagement.Design @@ -79,7 +81,7 @@ namespace ICSharpCode.PackageManagement.Design
public bool IgnoreDependenciesPassedToGetInstallPackageOperations;
public bool AllowPrereleaseVersionsPassedToGetInstallPackageOperations;
public virtual IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction)
public virtual IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction)
{
PackagePassedToGetInstallPackageOperations = package;
IgnoreDependenciesPassedToGetInstallPackageOperations = installAction.IgnoreDependencies;
@ -91,7 +93,7 @@ namespace ICSharpCode.PackageManagement.Design @@ -91,7 +93,7 @@ namespace ICSharpCode.PackageManagement.Design
public ILogger Logger { get; set; }
public IPackage PackagePassedToInstallPackage;
public IEnumerable<PackageOperation> PackageOperationsPassedToInstallPackage;
public IEnumerable<PackageAction> PackageOperationsPassedToInstallPackage;
public bool IgnoreDependenciesPassedToInstallPackage;
public bool AllowPrereleaseVersionsPassedToInstallPackage;
@ -106,7 +108,7 @@ namespace ICSharpCode.PackageManagement.Design @@ -106,7 +108,7 @@ namespace ICSharpCode.PackageManagement.Design
public FakePackageOperation AddFakeInstallOperation()
{
var package = new FakePackage("MyPackage");
var operation = new FakePackageOperation(package, PackageAction.Install);
var operation = new FakePackageOperation(package, PackageActionType.Install);
FakeInstallOperations.Add(operation);
return operation;
}
@ -114,7 +116,7 @@ namespace ICSharpCode.PackageManagement.Design @@ -114,7 +116,7 @@ namespace ICSharpCode.PackageManagement.Design
public FakePackageOperation AddFakeUninstallOperation()
{
var package = new FakePackage("MyPackage");
var operation = new FakePackageOperation(package, PackageAction.Uninstall);
var operation = new FakePackageOperation(package, PackageActionType.Uninstall);
FakeInstallOperations.Add(operation);
return operation;
}
@ -137,7 +139,7 @@ namespace ICSharpCode.PackageManagement.Design @@ -137,7 +139,7 @@ namespace ICSharpCode.PackageManagement.Design
}
public IPackage PackagePassedToUpdatePackage;
public IEnumerable<PackageOperation> PackageOperationsPassedToUpdatePackage;
public IEnumerable<PackageAction> PackageOperationsPassedToUpdatePackage;
public bool UpdateDependenciesPassedToUpdatePackage;
public bool AllowPrereleaseVersionsPassedToUpdatePackage;
public bool IsUpdatePackageCalled;
@ -249,10 +251,10 @@ namespace ICSharpCode.PackageManagement.Design @@ -249,10 +251,10 @@ namespace ICSharpCode.PackageManagement.Design
public UpdatePackagesAction UpdatePackagesActionPassedToGetUpdatePackagesOperations;
public IUpdatePackageSettings SettingsPassedToGetUpdatePackagesOperations;
public List<IPackage> PackagesOnUpdatePackagesActionPassedToGetUpdatePackagesOperations;
public List<PackageOperation> PackageOperationsToReturnFromGetUpdatePackagesOperations =
new List<PackageOperation>();
public List<PackageAction> PackageOperationsToReturnFromGetUpdatePackagesOperations =
new List<PackageAction>();
public IEnumerable<PackageOperation> GetUpdatePackagesOperations(
public IEnumerable<PackageAction> GetUpdatePackagesOperations(
IEnumerable<IPackage> packages,
IUpdatePackageSettings settings)
{
@ -261,7 +263,7 @@ namespace ICSharpCode.PackageManagement.Design @@ -261,7 +263,7 @@ namespace ICSharpCode.PackageManagement.Design
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; @@ -21,6 +21,7 @@ using System.Collections.Generic;
using System.Linq;
using ICSharpCode.PackageManagement;
using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement.Design
{
@ -54,7 +55,7 @@ namespace ICSharpCode.PackageManagement.Design @@ -54,7 +55,7 @@ namespace ICSharpCode.PackageManagement.Design
public FakeFileSystem FakeFileSystem = new FakeFileSystem();
public IPackageRepository LocalRepository { get; set; }
public ISharedPackageRepository LocalRepository { get; set; }
public ILogger Logger { get; set; }
public IPackageRepository SourceRepository { get; set; }
public ISharpDevelopProjectManager ProjectManager { get; set; }
@ -63,7 +64,7 @@ namespace ICSharpCode.PackageManagement.Design @@ -63,7 +64,7 @@ namespace ICSharpCode.PackageManagement.Design
public FakePackageManager()
{
ProjectManager = FakeProjectManager;
// ProjectManager = FakeProjectManager;
SourceRepository = FakeSourceRepository;
}
@ -78,12 +79,12 @@ namespace ICSharpCode.PackageManagement.Design @@ -78,12 +79,12 @@ namespace ICSharpCode.PackageManagement.Design
IsRefreshProjectBrowserCalledWhenUninstallPackageCalled = FakeProjectService.IsRefreshProjectBrowserCalled;
}
public void UninstallPackage(IPackage package, bool forceRemove, bool removeDependencies)
{
throw new NotImplementedException();
}
// public void UninstallPackage(IPackage package, bool forceRemove, bool removeDependencies)
// {
// throw new NotImplementedException();
// }
public IEnumerable<PackageOperation> PackageOperationsPassedToInstallPackage;
public IEnumerable<PackageAction> PackageOperationsPassedToInstallPackage;
public void InstallPackage(IPackage package, InstallPackageAction installAction)
{
@ -96,12 +97,12 @@ namespace ICSharpCode.PackageManagement.Design @@ -96,12 +97,12 @@ namespace ICSharpCode.PackageManagement.Design
IsRefreshProjectBrowserCalledWhenInstallPackageCalled = FakeProjectService.IsRefreshProjectBrowserCalled;
}
public List<PackageOperation> PackageOperationsToReturnFromGetInstallPackageOperations = new List<PackageOperation>();
public List<PackageAction> PackageOperationsToReturnFromGetInstallPackageOperations = new List<PackageAction>();
public IPackage PackagePassedToGetInstallPackageOperations;
public bool IgnoreDependenciesPassedToGetInstallPackageOperations;
public bool AllowPrereleaseVersionsPassedToGetInstallPackageOperations;
public IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction)
public IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction)
{
PackagePassedToGetInstallPackageOperations = package;
IgnoreDependenciesPassedToGetInstallPackageOperations = installAction.IgnoreDependencies;
@ -110,7 +111,7 @@ namespace ICSharpCode.PackageManagement.Design @@ -110,7 +111,7 @@ namespace ICSharpCode.PackageManagement.Design
}
public IPackage PackagePassedToUpdatePackage;
public IEnumerable<PackageOperation> PackageOperationsPassedToUpdatePackage;
public IEnumerable<PackageAction> PackageOperationsPassedToUpdatePackage;
public bool UpdateDependenciesPassedToUpdatePackage;
public void UpdatePackage(IPackage package, UpdatePackageAction updateAction)
@ -136,66 +137,66 @@ namespace ICSharpCode.PackageManagement.Design @@ -136,66 +137,66 @@ namespace ICSharpCode.PackageManagement.Design
throw new NotImplementedException();
}
}
public void UpdatePackage(IPackage newPackage, bool updateDependencies)
{
throw new NotImplementedException();
}
public void UpdatePackage(string packageId, IVersionSpec versionSpec, bool updateDependencies)
{
throw new NotImplementedException();
}
public void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
{
throw new NotImplementedException();
}
public void InstallPackage(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions)
{
throw new NotImplementedException();
}
public void UpdatePackage(IPackage newPackage, bool updateDependencies, bool allowPrereleaseVersions)
{
throw new NotImplementedException();
}
public void UpdatePackage(string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions)
{
throw new NotImplementedException();
}
public void UpdatePackage(string packageId, IVersionSpec versionSpec, bool updateDependencies, bool allowPrereleaseVersions)
{
throw new NotImplementedException();
}
public void UninstallPackage(string packageId, SemanticVersion version, bool forceRemove, bool removeDependencies)
{
throw new NotImplementedException();
}
//
// public void UpdatePackage(IPackage newPackage, bool updateDependencies)
// {
// throw new NotImplementedException();
// }
//
// public void UpdatePackage(string packageId, IVersionSpec versionSpec, bool updateDependencies)
// {
// throw new NotImplementedException();
// }
//
// public void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
// {
// throw new NotImplementedException();
// }
//
// public void InstallPackage(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions)
// {
// throw new NotImplementedException();
// }
//
// public void UpdatePackage(IPackage newPackage, bool updateDependencies, bool allowPrereleaseVersions)
// {
// throw new NotImplementedException();
// }
//
// public void UpdatePackage(string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions)
// {
// throw new NotImplementedException();
// }
//
// public void UpdatePackage(string packageId, IVersionSpec versionSpec, bool updateDependencies, bool allowPrereleaseVersions)
// {
// throw new NotImplementedException();
// }
//
// public void UninstallPackage(string packageId, SemanticVersion version, bool forceRemove, bool removeDependencies)
// {
// throw new NotImplementedException();
// }
public void UpdatePackages(UpdatePackagesAction updateAction)
{
UpdatePackagesActionsPassedToUpdatePackages = updateAction;
}
public List<PackageOperation> PackageOperationsToReturnFromGetUpdatePackageOperations = new List<PackageOperation>();
public List<PackageAction> PackageOperationsToReturnFromGetUpdatePackageOperations = new List<PackageAction>();
public IUpdatePackageSettings SettingsPassedToGetUpdatePackageOperations;
public IEnumerable<IPackage> PackagesPassedToGetUpdatePackageOperations;
public IEnumerable<PackageOperation> GetUpdatePackageOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings)
public IEnumerable<PackageAction> GetUpdatePackageOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings)
{
SettingsPassedToGetUpdatePackageOperations = settings;
PackagesPassedToGetUpdatePackageOperations = packages;
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();
}
@ -208,12 +209,12 @@ namespace ICSharpCode.PackageManagement.Design @@ -208,12 +209,12 @@ namespace ICSharpCode.PackageManagement.Design
PackagePassedToUpdatePackageReference = package;
SettingsPassedToUpdatePackageReference = settings;
}
public void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions, bool ignoreWalkInfo)
{
throw new NotImplementedException();
}
//
// public void InstallPackage(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions, bool ignoreWalkInfo)
// {
// throw new NotImplementedException();
// }
//
public DependencyVersion DependencyVersion {
get {
throw new NotImplementedException();
@ -222,8 +223,19 @@ namespace ICSharpCode.PackageManagement.Design @@ -222,8 +223,19 @@ namespace ICSharpCode.PackageManagement.Design
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 {
throw new NotImplementedException();
}
@ -231,5 +243,25 @@ namespace ICSharpCode.PackageManagement.Design @@ -231,5 +243,25 @@ namespace ICSharpCode.PackageManagement.Design
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 @@ @@ -18,18 +18,20 @@
using System;
using NuGet;
using NuGet.Resolver;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement.Design
{
public class FakePackageOperation : PackageOperation
public class FakePackageOperation : PackageAction
{
public FakePackageOperation()
: this(new FakePackage("MyPackage"), PackageAction.Install)
: this(new FakePackage("MyPackage"), PackageActionType.Install)
{
}
public FakePackageOperation(FakePackage package, PackageAction action)
: base(package, action)
public FakePackageOperation(FakePackage package, PackageActionType action)
: base(action, package)
{
this.FakePackage = package;
}

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

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

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

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

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

@ -22,6 +22,7 @@ using System.Linq; @@ -22,6 +22,7 @@ using System.Linq;
using ICSharpCode.PackageManagement.EnvDTE;
using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement
{
@ -45,21 +46,21 @@ namespace ICSharpCode.PackageManagement @@ -45,21 +46,21 @@ namespace ICSharpCode.PackageManagement
IQueryable<IPackage> GetPackages();
IEnumerable<IPackage> GetPackagesInReverseDependencyOrder();
IEnumerable<PackageOperation> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction);
IEnumerable<PackageOperation> GetUpdatePackagesOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings);
IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction);
IEnumerable<PackageAction> GetUpdatePackagesOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings);
void InstallPackage(IPackage package, InstallPackageAction installAction);
void UpdatePackage(IPackage package, UpdatePackageAction updateAction);
void UninstallPackage(IPackage package, UninstallPackageAction uninstallAction);
void UpdatePackages(UpdatePackagesAction action);
void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings);
// void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings);
InstallPackageAction CreateInstallPackageAction();
UninstallPackageAction CreateUninstallPackageAction();
UpdatePackageAction CreateUpdatePackageAction();
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 @@ @@ -19,6 +19,7 @@
using System;
using System.Collections.Generic;
using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement
{
@ -30,11 +31,11 @@ namespace ICSharpCode.PackageManagement @@ -30,11 +31,11 @@ namespace ICSharpCode.PackageManagement
void UninstallPackage(IPackage package, UninstallPackageAction uninstallAction);
void UpdatePackage(IPackage package, UpdatePackageAction 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<PackageOperation> GetUpdatePackageOperations(IEnumerable<IPackage> packages, IUpdatePackageSettings settings);
IEnumerable<PackageAction> GetInstallPackageOperations(IPackage package, InstallPackageAction installAction);
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 @@ -25,6 +25,7 @@ namespace ICSharpCode.PackageManagement
{
IPackagePathResolver PathResolver { get; }
bool IsInstalled(string packageId);
bool IsInstalled(IPackage package);
bool HasOlderPackageInstalled(IPackage package);
}
}

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

@ -19,15 +19,16 @@ @@ -19,15 +19,16 @@
using System;
using System.Collections.Generic;
using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement
{
public interface IUpdatePackagesAction : IPackageAction, IUpdatePackageSettings
{
IEnumerable<PackageOperation> Operations { get; }
IEnumerable<PackageAction> Operations { get; }
ILogger Logger { get; set; }
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; @@ -21,6 +21,7 @@ using System.Collections.Generic;
using System.IO;
using ICSharpCode.SharpDevelop.Project;
using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement
{
@ -35,7 +36,7 @@ namespace ICSharpCode.PackageManagement @@ -35,7 +36,7 @@ namespace ICSharpCode.PackageManagement
public bool IgnoreDependencies { get; set; }
protected override IEnumerable<PackageOperation> GetPackageOperations()
protected override IEnumerable<PackageAction> GetPackageOperations()
{
return Project.GetInstallPackageOperations(Package, this);
}

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

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

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

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

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

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

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

@ -19,6 +19,7 @@ @@ -19,6 +19,7 @@
using System;
using System.Collections.Generic;
using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement
{
@ -31,7 +32,7 @@ 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()
{
@ -53,7 +54,7 @@ namespace ICSharpCode.PackageManagement @@ -53,7 +54,7 @@ namespace ICSharpCode.PackageManagement
}
}
protected virtual IEnumerable<PackageOperation> GetPackageOperations()
protected virtual IEnumerable<PackageAction> GetPackageOperations()
{
return null;
}

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

@ -21,6 +21,8 @@ using System.Collections.Generic; @@ -21,6 +21,8 @@ using System.Collections.Generic;
using ICSharpCode.PackageManagement.Scripting;
using ICSharpCode.SharpDevelop.Project;
using NuGet;
using NuGet.Resolver;
using PackageAction = NuGet.Resolver.PackageAction;
namespace ICSharpCode.PackageManagement
{
@ -69,50 +71,58 @@ namespace ICSharpCode.PackageManagement @@ -69,50 +71,58 @@ namespace ICSharpCode.PackageManagement
SharpDevelopProjectManager CreateProjectManager(PackageReferenceRepository packageRefRepository)
{
return new SharpDevelopProjectManager(LocalRepository, PathResolver, projectSystem, packageRefRepository);
}
public void InstallPackage(IPackage package)
{
bool ignoreDependencies = false;
bool allowPreleaseVersions = false;
InstallPackage(package, ignoreDependencies, allowPreleaseVersions);
return new SharpDevelopProjectManager(this, PathResolver, projectSystem, packageRefRepository);
}
// public void InstallPackage(IPackage package)
// {
// bool ignoreDependencies = false;
// bool allowPreleaseVersions = false;
// InstallPackage(package, ignoreDependencies, allowPreleaseVersions);
// }
public void InstallPackage(IPackage package, InstallPackageAction installAction)
{
RunPackageOperations(installAction.Operations);
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);
}
// 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);
// }
//
public void UninstallPackage(IPackage package, UninstallPackageAction uninstallAction)
{
UninstallPackage(package, uninstallAction.ForceRemove, uninstallAction.RemoveDependencies);
}
public override void UninstallPackage(IPackage package, bool forceRemove, bool removeDependencies)
{
ProjectManager.RemovePackageReference(package.Id, forceRemove, removeDependencies);
if (!IsPackageReferencedByOtherProjects(package)) {
base.UninstallPackage(package, forceRemove, removeDependencies);
}
}
var resolver = new ActionResolver {
Logger = Logger,
DependencyVersion = DependencyVersion.Lowest,
ForceRemove = uninstallAction.ForceRemove,
RemoveDependencies = uninstallAction.RemoveDependencies
};
resolver.AddOperation(NuGet.PackageAction.Uninstall, package, ProjectManager);
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)
{
@ -127,59 +137,78 @@ namespace ICSharpCode.PackageManagement @@ -127,59 +137,78 @@ namespace ICSharpCode.PackageManagement
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);
return resolver.ResolveOperations(package);
var resolver = new ActionResolver {
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)
{
return packageOperationResolverFactory.CreateInstallPackageOperationResolver(
LocalRepository,
SourceRepository,
Logger,
installAction);
}
// IPackageOperationResolver CreateInstallPackageOperationResolver(InstallPackageAction installAction)
// {
// return packageOperationResolverFactory.CreateInstallPackageOperationResolver(
// LocalRepository,
// SourceRepository,
// Logger,
// installAction);
// }
public void UpdatePackage(IPackage package, UpdatePackageAction updateAction)
{
RunPackageOperations(updateAction.Operations);
UpdatePackageReference(package, updateAction);
}
public void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings)
{
UpdatePackageReference(package, settings.UpdateDependencies, settings.AllowPrereleaseVersions);
}
void UpdatePackageReference(IPackage package, bool updateDependencies, bool allowPrereleaseVersions)
{
var monitor = new RemovedPackageReferenceMonitor(ProjectManager);
using (monitor) {
ProjectManager.UpdatePackageReference(package.Id, package.Version, updateDependencies, allowPrereleaseVersions);
}
monitor.PackagesRemoved.ForEach(packageRemoved => UninstallPackageFromSolutionRepository(packageRemoved));
}
// UpdatePackageReference(package, updateAction);
}
// public void UpdatePackageReference(IPackage package, IUpdatePackageSettings settings)
// {
// UpdatePackageReference(package, settings.UpdateDependencies, settings.AllowPrereleaseVersions);
// }
//
// void UpdatePackageReference(IPackage package, bool updateDependencies, bool allowPrereleaseVersions)
// {
// var monitor = new RemovedPackageReferenceMonitor(ProjectManager);
// using (monitor) {
// ProjectManager.UpdatePackageReference(package.Id, package.Version, updateDependencies, allowPrereleaseVersions);
// }
//
// monitor.PackagesRemoved.ForEach(packageRemoved => UninstallPackageFromSolutionRepository(packageRemoved));
// }
public void UpdatePackages(UpdatePackagesAction updateAction)
{
RunPackageOperations(updateAction.Operations);
foreach (IPackage package in updateAction.Packages) {
UpdatePackageReference(package, updateAction);
}
// foreach (IPackage package in updateAction.Packages) {
// UpdatePackageReference(package, updateAction);
// }
}
public IEnumerable<PackageOperation> GetUpdatePackageOperations(
public IEnumerable<PackageAction> GetUpdatePackageOperations(
IEnumerable<IPackage> packages,
IUpdatePackageSettings settings)
{
IPackageOperationResolver resolver = CreateUpdatePackageOperationResolver(settings);
var reducedOperations = new ReducedPackageOperations(resolver, packages);
reducedOperations.Reduce();
return reducedOperations.Operations;
var resolver = new ActionResolver {
Logger = Logger,
IgnoreDependencies = !settings.UpdateDependencies,
DependencyVersion = DependencyVersion.Lowest,
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)
@ -191,11 +220,20 @@ namespace ICSharpCode.PackageManagement @@ -191,11 +220,20 @@ namespace ICSharpCode.PackageManagement
settings);
}
public void RunPackageOperations(IEnumerable<PackageOperation> operations)
public void RunPackageOperations(IEnumerable<PackageAction> operations)
{
foreach (PackageOperation operation in operations) {
Execute(operation);
}
var executor = new ActionExecutor {
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 @@ -24,11 +24,11 @@ namespace ICSharpCode.PackageManagement
public class SharpDevelopProjectManager : ProjectManager, ISharpDevelopProjectManager
{
public SharpDevelopProjectManager(
IPackageRepository sourceRepository,
IPackageManager packageManager,
IPackagePathResolver pathResolver,
IProjectSystem project,
IPackageRepository localRepository)
: base(sourceRepository, pathResolver, project, localRepository)
: base(packageManager, pathResolver, project, localRepository)
{
}
@ -37,6 +37,11 @@ namespace ICSharpCode.PackageManagement @@ -37,6 +37,11 @@ namespace ICSharpCode.PackageManagement
return LocalRepository.Exists(packageId);
}
public bool IsInstalled(IPackage package)
{
return LocalRepository.Exists(package);
}
public bool HasOlderPackageInstalled(IPackage package)
{
IPackage installedPackage = LocalRepository.FindPackage(package.Id);

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@ -58,5 +58,20 @@ namespace PackageManagement.Tests.Helpers @@ -58,5 +58,20 @@ namespace PackageManagement.Tests.Helpers
{
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; @@ -20,22 +20,23 @@ using System;
using System.Collections.Generic;
using ICSharpCode.PackageManagement.Design;
using NuGet;
using PackageAction = NuGet.Resolver.PackageAction;
namespace PackageManagement.Tests.Helpers
{
public static class PackageOperationHelper
{
public static PackageOperation CreateInstallOperationWithFile(string fileName)
public static PackageAction CreateInstallOperationWithFile(string fileName)
{
var package = new FakePackage();
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>();
operations.Add(operation);
return operations;

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

@ -44,49 +44,49 @@ namespace PackageManagement.Tests.Helpers @@ -44,49 +44,49 @@ namespace PackageManagement.Tests.Helpers
}
public TestableProjectManager()
: base(new FakePackageRepository(),
: base(new FakePackageManager(),
new FakePackagePathResolver(),
new FakeProjectSystem(),
new FakePackageRepository())
{
}
public override void AddPackageReference(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions)
{
var package = new FakePackage();
package.Id = packageId;
package.Version = version;
PackagePassedToAddPackageReference = package;
IgnoreDependenciesPassedToAddPackageReference = ignoreDependencies;
AllowPrereleaseVersionsPassedToAddPackageReference = allowPrereleaseVersions;
}
// public override void AddPackageReference(string packageId, SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions)
// {
// var package = new FakePackage();
// package.Id = packageId;
// package.Version = version;
// PackagePassedToAddPackageReference = package;
// IgnoreDependenciesPassedToAddPackageReference = ignoreDependencies;
// AllowPrereleaseVersionsPassedToAddPackageReference = allowPrereleaseVersions;
// }
public override void AddPackageReference(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
{
PackagePassedToAddPackageReference = package;
IgnoreDependenciesPassedToAddPackageReference = ignoreDependencies;
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;
UpdateDependenciesPassedToUpdatePackageReference = updateDependencies;
AllowPrereleaseVersionsPassedToUpdatePackageReference = 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)
{

Loading…
Cancel
Save