Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
84 commits
Select commit Hold shift + click to select a range
a49aecd
Added relationship table to hold ancesstors and descendents relations…
erdembayar Jul 31, 2020
ee3e059
Now 1065 is solved because we pass correct update PackageSpec of chil…
erdembayar Aug 1, 2020
7c5eaf4
Remove RelationshipTree for now.
erdembayar Aug 2, 2020
3e3a9cd
Add unshipped public api.
erdembayar Aug 2, 2020
0b1c6d0
Remove unused item and add initial value to dictionary to prevent fro…
erdembayar Aug 2, 2020
875968b
More streamline package reference type code restore.
erdembayar Aug 3, 2020
b78a8c8
Revert "More streamline package reference type code restore."
erdembayar Aug 4, 2020
ac8ae7a
Restore NugetBuiltIntegrated restore works only in 1 pass.
erdembayar Aug 4, 2020
8a919a0
Minor refactoring for naming.
erdembayar Aug 4, 2020
de82bb9
Explicit clearing of cache.
erdembayar Aug 4, 2020
049388a
Initial refactoring of moving caching of updated PackageSpec near to …
erdembayar Aug 4, 2020
5a7eee8
Made BuiltIntegratedProject project upgrade/downgrade parallel run fo…
erdembayar Aug 5, 2020
7cca356
Fix minor typos.
erdembayar Aug 5, 2020
e8ff4fa
Remove unused methods and variables.
erdembayar Aug 5, 2020
efa1782
Remove more unused item.
erdembayar Aug 5, 2020
f0ce777
Revert "Remove more unused item."
erdembayar Aug 5, 2020
cc68cd6
Patching in memory works.
erdembayar Aug 6, 2020
d070102
Cleanup
erdembayar Aug 6, 2020
41d2762
Minor text change
erdembayar Aug 7, 2020
db54f02
More code cleanup.
erdembayar Aug 7, 2020
abe53cb
Rename PreviewBuildIntegratedProjectActionsParallelAsync method to Pr…
erdembayar Aug 7, 2020
9d46759
Add unit tests for covering PreviewBuildIntegratedProjectsActionsAsyn…
erdembayar Aug 8, 2020
c0cb7f5
Add more unit tests for BuildIntegratedTests
erdembayar Aug 8, 2020
1f8ad2f
Address Andy's code review comment.
erdembayar Aug 8, 2020
8e5b0dd
Add unit test for DependencyGraphSpec>>WithReplacedPackageSpecs new m…
erdembayar Aug 8, 2020
790fdac
Get Andy's advise for reduce runtime time complexity.
erdembayar Aug 8, 2020
2aafd95
Change package versions because it's failing on .NetCore unit tests.
erdembayar Aug 9, 2020
1a67342
Check if Newtonsoft version matches.
erdembayar Aug 9, 2020
642229a
Try different pacakge for unit test.
erdembayar Aug 9, 2020
8d705f5
Test
erdembayar Aug 10, 2020
e56ad1c
Address comment about foreach loop variable name.
erdembayar Aug 11, 2020
a0525f3
Remove 'parallel' word from comment. Because actual parallel code is …
erdembayar Aug 11, 2020
2f42ca4
PackageReference/SDK style unit tests start working.
erdembayar Aug 11, 2020
c8c80c3
Making source works for unit tests.
erdembayar Aug 12, 2020
d0cd1f7
Fixed problem of Unit test project not picking up my custom PackageSo…
erdembayar Aug 12, 2020
ba98238
Revert LegacyPackageReferenceProject related changes, maybe I don't n…
erdembayar Aug 12, 2020
026fc78
Git clean up and fix added unit tests with new PackSource logic.
erdembayar Aug 12, 2020
db37312
Fix typo.
erdembayar Aug 12, 2020
3e37a97
Add NU1065 and new PackageSource handling to some unit test I forgot …
erdembayar Aug 13, 2020
6cb39e0
Fix formatting recommendation in code review.
erdembayar Aug 13, 2020
5e9b137
Remove parallel wording from method comment, because actual paralleli…
erdembayar Aug 13, 2020
ec71170
Fix typo.
erdembayar Aug 13, 2020
084c67b
Refactor code after Andy's code review.
erdembayar Aug 13, 2020
45b7488
Fix small typo.
erdembayar Aug 13, 2020
722f9a8
After refactoring code PreviewBuildIntegratedProjectActionsAsync and …
erdembayar Aug 14, 2020
c08c972
All PreviewProjectsInstallPackageAsync related unit test for NugetPac…
erdembayar Aug 17, 2020
de5ea18
Remove the spaces and correct comments.
erdembayar Aug 18, 2020
0adfabc
Revert changes to BuildIntegratedTests.cs since we already ported all…
erdembayar Aug 18, 2020
eedff34
Fix typo.
erdembayar Aug 18, 2020
3d64f5e
Revert changes to LegacyPackageReferenceProjectTests.cs
erdembayar Aug 18, 2020
1607bee
Revert back unneeded changes to NuGetPackageManagerTests.cs
erdembayar Aug 18, 2020
d214833
Remove unneeded change.
erdembayar Aug 18, 2020
1907b16
Merge branch 'dev' into dev-eryondon-PMUIslowBecauseRestorerunsforEve…
erdembayar Aug 18, 2020
75d0698
Add missing copy right notice for new file GetPackageReferenceUtility.cs
erdembayar Aug 18, 2020
2e476cc
Add missing copyright notice for ProjectInstalledPackages.cs
erdembayar Aug 18, 2020
69d269a
Merge branch 'dev' into dev-eryondon-PMUIslowBecauseRestorerunsforEve…
erdembayar Aug 19, 2020
72229ab
Remove wrong file.
erdembayar Aug 19, 2020
409b26a
Revert unneeded changes.
erdembayar Aug 19, 2020
0f86276
Fix typos.
erdembayar Aug 19, 2020
68b9140
Address code review comments and clean up.
erdembayar Aug 24, 2020
8b24b6c
Merge branch 'dev' into dev-eryondon-PMUIslowBecauseRestorerunsforEve…
erdembayar Aug 25, 2020
8344ca5
Now also remembers we evaluated the parents too.
erdembayar Aug 25, 2020
d6f3edf
Rename method name after nkolve92 code review.
erdembayar Aug 27, 2020
7b33158
Address Nikolche code review comment about parent projects.
erdembayar Aug 27, 2020
17c2ba9
Remove method PreviewResolveActionsForBuildIntegratedProjectsAsync me…
erdembayar Aug 27, 2020
a92df00
Make sure restore happens only once during uninstall process for chai…
erdembayar Aug 28, 2020
530be92
Changed install package to all projects that it check for restore onl…
erdembayar Aug 28, 2020
a40bc7c
Merge branch 'dev' into dev-eryondon-PMUIslowBecauseRestorerunsforEve…
erdembayar Aug 28, 2020
849007c
Clean up unused items.
erdembayar Aug 29, 2020
ae86fc7
Replace StringComparer.OrdinalIgnoreCase with PathUtility.GetStringCo…
erdembayar Aug 29, 2020
8cd63ed
Refactor the unit tests after Nikolche's code review.
erdembayar Aug 29, 2020
1d4dba6
Change unit test names.
erdembayar Aug 29, 2020
b4d3e69
Fix formatting.
erdembayar Aug 29, 2020
24c713c
Fix with dot net formatting.
erdembayar Aug 29, 2020
2d0c603
Add comment why we're separating BuildIntegratedNuGetProject vs packa…
erdembayar Aug 31, 2020
ccaecf6
Address more code review comments by Cristina.
erdembayar Aug 31, 2020
1c55d8b
Merge branch 'dev' into dev-eryondon-PMUIslowBecauseRestorerunsforEve…
erdembayar Sep 1, 2020
ecc523d
Address Svet's code review comment.
erdembayar Sep 1, 2020
20642c0
Fix formatting.
erdembayar Sep 1, 2020
55c4b8d
Address Andy's latest code review.
erdembayar Sep 1, 2020
daedbef
Refactor unit test after Andy's code review.
erdembayar Sep 1, 2020
4172d13
Fix unit test after Nikolche review.
erdembayar Sep 2, 2020
736fd8b
Merge branch 'dev' into dev-eryondon-PMUIslowBecauseRestorerunsforEve…
erdembayar Sep 3, 2020
c563093
Fix formatting.
erdembayar Sep 3, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -835,20 +835,17 @@ private async Task<IReadOnlyList<ResolvedAction>> GetActionsAsync(
var results = new List<ResolvedAction>();

Debug.Assert(userAction.PackageId != null, "Package id can never be null in a User action");

if (userAction.Action == NuGetProjectActionType.Install)
{
foreach (var target in targets)
{
var actions = await _packageManager.PreviewInstallPackageAsync(
target,
new PackageIdentity(userAction.PackageId, userAction.Version),
resolutionContext,
projectContext,
uiService.ActiveSources,
null,
token);
results.AddRange(actions.Select(a => new ResolvedAction(target, a)));
}
results.AddRange(await _packageManager.PreviewProjectsInstallPackageAsync(
targets?.ToList(),
new PackageIdentity(userAction.PackageId, userAction.Version),
resolutionContext,
projectContext,
uiService.ActiveSources?.ToList(),
token
));
}
else
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ public static string GetDefaultDGSpecFileName()
}

/// <summary>
/// Restore without writing the lock file
/// Restore a project without writing the lock file
/// </summary>
internal static async Task<RestoreResultPair> PreviewRestoreAsync(
ISolutionManager solutionManager,
Expand All @@ -150,6 +150,8 @@ internal static async Task<RestoreResultPair> PreviewRestoreAsync(
ILogger log,
CancellationToken token)
{
token.ThrowIfCancellationRequested();

// Restoring packages
var logger = context.Logger;

Expand Down Expand Up @@ -185,6 +187,59 @@ internal static async Task<RestoreResultPair> PreviewRestoreAsync(
}
}

/// <summary>
/// Restore many projects without writing the lock file
/// SourceRepositories(sources) is only used for the CachingSourceProvider, the project-specific sources will still be resolved in RestoreRunner.
/// </summary>
internal static async Task<IEnumerable<RestoreResultPair>> PreviewRestoreProjectsAsync(
ISolutionManager solutionManager,
IEnumerable<BuildIntegratedNuGetProject> projects,
IEnumerable<PackageSpec> updatedNugetPackageSpecs,
DependencyGraphCacheContext context,
RestoreCommandProvidersCache providerCache,
Action<SourceCacheContext> cacheContextModifier,
IEnumerable<SourceRepository> sources,
Guid parentId,
ILogger log,
CancellationToken token)
{
token.ThrowIfCancellationRequested();

// Add the new spec to the dg file and fill in the rest.
var dgFile = await GetSolutionRestoreSpec(solutionManager, context);

dgFile = dgFile.WithoutRestores()
.WithPackageSpecs(updatedNugetPackageSpecs);

foreach (var project in projects)
{
dgFile.AddRestore(project.MSBuildProjectPath);
}

using (var sourceCacheContext = new SourceCacheContext())
{
// Update cache context
cacheContextModifier(sourceCacheContext);

// Settings passed here will be used to populate the restore requests.
var restoreContext = GetRestoreContext(
context,
providerCache,
sourceCacheContext,
sources,
dgFile,
parentId,
forceRestore: true,
isRestoreOriginalAction: false,
restoreForceEvaluate: true,
additionalMessasges: null);

var requests = await RestoreRunner.GetRequests(restoreContext);
var results = await RestoreRunner.RunWithoutCommit(requests, restoreContext);
return results;
}
}

/// <summary>
/// Restore a build integrated project(PackageReference and Project.Json only) and update the lock file
/// </summary>
Expand Down
Loading