Restore logging in VS doesn't always show #3633

Closed
balachir opened this Issue Oct 10, 2016 · 16 comments

Comments

Projects
None yet
8 participants
@balachir

balachir commented Oct 10, 2016

INSTALL STEPS
WPT.25810.00
Add private MyGet feeds to Package Manager Settings

REPRO STEPS

  1. Open VS, File > New Console Application (.NET Core)
  2. Right-click solution > Restore packages

ACTUAL
You get this dialog for a second or two and then it goes away
image

If I delete the %userprofile%.nuget folder and repeat step 2 above, then I get messages like this in the dialog
image

Once restore completes, the dialogs above simply go away and there's no way to go back and see the restore logs and what packages got restored

EXPECTED
Restore logs should be sent to the Output window. That way users can go back and see the restore logs, similar to the behavior with .NET Core tooling in Dev14.

@emgarten

This comment has been minimized.

Show comment
Hide comment
@emgarten

emgarten Oct 10, 2016

Contributor

NuGet pops up a modal dialog while restoring. Is a restore actually taking place? Do you see the assets.json file appear after it completes? Are you able to build while the restore is taking place?

Contributor

emgarten commented Oct 10, 2016

NuGet pops up a modal dialog while restoring. Is a restore actually taking place? Do you see the assets.json file appear after it completes? Are you able to build while the restore is taking place?

@balachir

This comment has been minimized.

Show comment
Hide comment
@balachir

balachir Oct 11, 2016

Restore is taking place. Updated the repro steps above to clarify my ask, thanks.

Restore is taking place. Updated the repro steps above to clarify my ask, thanks.

@rrelyea rrelyea added this to the 3.6 RC milestone Oct 11, 2016

@emgarten

This comment has been minimized.

Show comment
Hide comment
@emgarten

emgarten Oct 11, 2016

Contributor

Thanks @balachir, the updated steps help. I've noticed a behavior change around this also, I'll investigate to see where the log messages are being dropped.

Contributor

emgarten commented Oct 11, 2016

Thanks @balachir, the updated steps help. I've noticed a behavior change around this also, I'll investigate to see where the log messages are being dropped.

@rrelyea

This comment has been minimized.

Show comment
Hide comment
@rrelyea

rrelyea Oct 25, 2016

Contributor

Might also affect 3.5

Contributor

rrelyea commented Oct 25, 2016

Might also affect 3.5

@rrelyea

This comment has been minimized.

Show comment
Hide comment
@rrelyea

rrelyea Oct 27, 2016

Contributor

Do we think this is affecting .net core only, or p.c and p.j too?

Contributor

rrelyea commented Oct 27, 2016

Do we think this is affecting .net core only, or p.c and p.j too?

@rrelyea rrelyea assigned zhili1208 and unassigned emgarten Oct 27, 2016

@rrelyea

This comment has been minimized.

Show comment
Hide comment
@rrelyea

rrelyea Oct 27, 2016

Contributor

@zhili1208 - please figure out how this compares to uwp/p.j in 3.x and to .net core in vs2015

Contributor

rrelyea commented Oct 27, 2016

@zhili1208 - please figure out how this compares to uwp/p.j in 3.x and to .net core in vs2015

@zhili1208

This comment has been minimized.

Show comment
Hide comment
@zhili1208

zhili1208 Oct 27, 2016

Contributor

uwp/p.j in 3.x and .net core in vs2015 all doesn't have restore logs in output windows

Contributor

zhili1208 commented Oct 27, 2016

uwp/p.j in 3.x and .net core in vs2015 all doesn't have restore logs in output windows

@zhili1208 zhili1208 assigned rrelyea and unassigned zhili1208 Oct 27, 2016

@rrelyea

This comment has been minimized.

Show comment
Hide comment
@rrelyea

rrelyea Oct 27, 2016

Contributor

@balachir - We plan to address post-RC, as this isn't a blocker, as it is not a regression from preview2 tooling experience. Please yell if any of our analysis is wrong there.

Contributor

rrelyea commented Oct 27, 2016

@balachir - We plan to address post-RC, as this isn't a blocker, as it is not a regression from preview2 tooling experience. Please yell if any of our analysis is wrong there.

@rrelyea rrelyea modified the milestones: 4.0 RC2, 4.0 RC Oct 27, 2016

@balachir

This comment has been minimized.

Show comment
Hide comment
@balachir

balachir Oct 28, 2016

@rrelyea, @zhili1208 , this is a regression from the experience in Dev14 though. Restore logs definitely did go into 'Package Manager' Output window pane in Dev14 for ASP.NET Core projects.

image

@rrelyea, @zhili1208 , this is a regression from the experience in Dev14 though. Restore logs definitely did go into 'Package Manager' Output window pane in Dev14 for ASP.NET Core projects.

image

@jainaashish

This comment has been minimized.

Show comment
Hide comment
@jainaashish

jainaashish Oct 28, 2016

Contributor

@balachir the logs you've pasted are from dotnet tooling auto restore and not from solution restore scenario. Even in Dev14 if you click restore on solution, it will not log anything in output window.

But there is a workaround for this, these solution restore logs are written under Build in output window. So if you build the solution once (even though it fails) and then do solution restore then it will write these restore logs in output window for dev14 as well as dev15.

Although this is regression for auto restore from dev14 to dev15 since we aren't writing logs for new auto restore for .net core project (CPS based) @alpaix we need to discuss this tomorrow and finalize on this.

Contributor

jainaashish commented Oct 28, 2016

@balachir the logs you've pasted are from dotnet tooling auto restore and not from solution restore scenario. Even in Dev14 if you click restore on solution, it will not log anything in output window.

But there is a workaround for this, these solution restore logs are written under Build in output window. So if you build the solution once (even though it fails) and then do solution restore then it will write these restore logs in output window for dev14 as well as dev15.

Although this is regression for auto restore from dev14 to dev15 since we aren't writing logs for new auto restore for .net core project (CPS based) @alpaix we need to discuss this tomorrow and finalize on this.

@rrelyea

This comment has been minimized.

Show comment
Hide comment
@rrelyea

rrelyea Oct 28, 2016

Contributor

Think about the experience for all scenarios.

Contributor

rrelyea commented Oct 28, 2016

Think about the experience for all scenarios.

@rrelyea rrelyea changed the title from New Console Application (.NET Core) and restore packages, we don't see any restore logs in Output Window to Restore logging in VS doesn't always show Oct 28, 2016

@jinujoseph

This comment has been minimized.

Show comment
Hide comment
@jinujoseph

jinujoseph Nov 7, 2016

I still don't see any output in the output window.
The only information i have about restoring is in the info bar below.

image

which is lost once restoration completes , is that expected ? I would have expected the output window to display the packages restored.

I still don't see any output in the output window.
The only information i have about restoring is in the info bar below.

image

which is lost once restoration completes , is that expected ? I would have expected the output window to display the packages restored.

@rrelyea rrelyea reopened this Nov 8, 2016

@rrelyea

This comment has been minimized.

Show comment
Hide comment
@rrelyea

rrelyea Nov 8, 2016

Contributor

Ashish- where did we end up with in RC with this?

Contributor

rrelyea commented Nov 8, 2016

Ashish- where did we end up with in RC with this?

@jinujoseph

This comment has been minimized.

Show comment
Hide comment
@jinujoseph

jinujoseph Nov 8, 2016

I filed a new bug for this #3884

I filed a new bug for this #3884

@jainaashish

This comment has been minimized.

Show comment
Hide comment
@jainaashish

jainaashish Nov 9, 2016

Contributor

We don't log auto restore messages to build output window since previous messages were from DotNet. NuGet only logs restore success or failure or noop message in build output window. We just changed to activate this window even without building the solution.

Contributor

jainaashish commented Nov 9, 2016

We don't log auto restore messages to build output window since previous messages were from DotNet. NuGet only logs restore success or failure or noop message in build output window. We just changed to activate this window even without building the solution.

@alpaix alpaix modified the milestones: 4.0 RC2, 4.0 RC Nov 16, 2016

@alpaix alpaix self-assigned this Nov 16, 2016

@rrelyea rrelyea modified the milestones: 4.0 RC3, 4.0 RC2 Nov 28, 2016

alpaix added a commit to alpaix/NuGet.Client that referenced this issue Dec 10, 2016

Auto-Restore UI normalization
Resolves NuGet/Home#3633, NuGet/Home#3789, NuGet/Home#3835,
NuGet/Home#3884.

The purpose of this change is to make consistent UX in all restore
scenarios: auto-restore, on-build restore, and solution restore. At the
same time each scenario has some nuances, whereas:
- Auto-restore and solution restore should write log messages in PM console
output window.
- On-build restore writes inline log messages in build output window.

Introduced new console type: `BuildOutputConsole`. It allows writing into
the VS build output window via `IOutputConsole` abstraction API.

Moved `SolutionRestoreCommand` into the solutuion restore package. As the
latter loads on solution open so the restore command should be available
at this point. At the same time the command invokation shouldn't trigger
loading of the legacy package.

Also had to do some refactoring in order to consume `VsConsole` API in
Solution Restore implementation classes:
- Moved all `SolutionRestore*` artifacts into
  `NuGet.SolutionRestoreManager` project.

Eliminated dead code including remnants of debug console and standalone
console.

@alpaix alpaix referenced this issue in NuGet/NuGet.Client Dec 10, 2016

Merged

Auto-Restore UI normalization #1052

alpaix added a commit to alpaix/NuGet.Client that referenced this issue Dec 12, 2016

Auto-Restore UI normalization
Resolves NuGet/Home#3633, NuGet/Home#3789, NuGet/Home#3835,
NuGet/Home#3884.

The purpose of this change is to make consistent UX in all restore
scenarios: auto-restore, on-build restore, and solution restore. At the
same time each scenario has some nuances, whereas:
- Auto-restore and solution restore should write log messages in PM console
output window.
- On-build restore writes inline log messages in build output window.

Introduced new console type: `BuildOutputConsole`. It allows writing into
the VS build output window via `IOutputConsole` abstraction API.

Moved `SolutionRestoreCommand` into the solutuion restore package. As the
latter loads on solution open so the restore command should be available
at this point. At the same time the command invokation shouldn't trigger
loading of the legacy package.

Also had to do some refactoring in order to consume `VsConsole` API in
Solution Restore implementation classes:
- Moved all `SolutionRestore*` artifacts into
  `NuGet.SolutionRestoreManager` project.

Eliminated dead code including remnants of debug console and standalone
console.

alpaix added a commit to alpaix/NuGet.Client that referenced this issue Dec 13, 2016

Auto-Restore UI normalization
Resolves NuGet/Home#3633, NuGet/Home#3789, NuGet/Home#3835,
NuGet/Home#3884.

The purpose of this change is to make consistent UX in all restore
scenarios: auto-restore, on-build restore, and solution restore. At the
same time each scenario has some nuances, whereas:
- Auto-restore and solution restore should write log messages in PM console
output window.
- On-build restore writes inline log messages in build output window.

Introduced new console type: `BuildOutputConsole`. It allows writing into
the VS build output window via `IOutputConsole` abstraction API.

Moved `SolutionRestoreCommand` into the solutuion restore package. As the
latter loads on solution open so the restore command should be available
at this point. At the same time the command invokation shouldn't trigger
loading of the legacy package.

Also had to do some refactoring in order to consume `VsConsole` API in
Solution Restore implementation classes:
- Moved all `SolutionRestore*` artifacts into
  `NuGet.SolutionRestoreManager` project.

Eliminated dead code including remnants of debug console and standalone
console.

alpaix added a commit to NuGet/NuGet.Client that referenced this issue Dec 13, 2016

Auto-Restore UI normalization
Resolves NuGet/Home#3633, NuGet/Home#3789, NuGet/Home#3835,
NuGet/Home#3884.

The purpose of this change is to make consistent UX in all restore
scenarios: auto-restore, on-build restore, and solution restore. At the
same time each scenario has some nuances, whereas:
- Auto-restore and solution restore should write log messages in PM console
output window.
- On-build restore writes inline log messages in build output window.

Introduced new console type: `BuildOutputConsole`. It allows writing into
the VS build output window via `IOutputConsole` abstraction API.

Moved `SolutionRestoreCommand` into the solutuion restore package. As the
latter loads on solution open so the restore command should be available
at this point. At the same time the command invokation shouldn't trigger
loading of the legacy package.

Also had to do some refactoring in order to consume `VsConsole` API in
Solution Restore implementation classes:
- Moved all `SolutionRestore*` artifacts into
  `NuGet.SolutionRestoreManager` project.

Eliminated dead code including remnants of debug console and standalone
console.

alpaix added a commit to alpaix/NuGet.Client that referenced this issue Dec 14, 2016

Auto-Restore UI normalization
Resolves NuGet/Home#3633, NuGet/Home#3789, NuGet/Home#3835,
NuGet/Home#3884.

The purpose of this change is to make consistent UX in all restore
scenarios: auto-restore, on-build restore, and solution restore. At the
same time each scenario has some nuances, whereas:
- Auto-restore and solution restore should write log messages in PM console
output window.
- On-build restore writes inline log messages in build output window.

Introduced new console type: `BuildOutputConsole`. It allows writing into
the VS build output window via `IOutputConsole` abstraction API.

Moved `SolutionRestoreCommand` into the solutuion restore package. As the
latter loads on solution open so the restore command should be available
at this point. At the same time the command invokation shouldn't trigger
loading of the legacy package.

Also had to do some refactoring in order to consume `VsConsole` API in
Solution Restore implementation classes:
- Moved all `SolutionRestore*` artifacts into
  `NuGet.SolutionRestoreManager` project.

Eliminated dead code including remnants of debug console and standalone
console.
@Jiayili1

This comment has been minimized.

Show comment
Hide comment
@Jiayili1

Jiayili1 Jan 6, 2017

This issue is still repro on build d15prerel.26105.05.

Jiayili1 commented Jan 6, 2017

This issue is still repro on build d15prerel.26105.05.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment