9 Commits
Author SHA1 Message Date
Andy Zivkovic ba112de7ee Make nullable enabled by default across entire repo (#6960) 2025-11-20 21:13:26 +10:30
Nikolche Kolev d67fa5b69a E2E Test: Fix solution folder name comparison (#6106) 2024-10-18 16:29:56 +00:00
Kat Marchán 65abcc61f7 automatic formatting (#3587)
Fixes: https://github.com/NuGet/Client.Engineering/issues/487
2020-08-26 15:08:11 -07:00
Nikolche Kolev ad45f12db5 Address VSTHRD010 and VSTHRD109 and create follow up for VSTHRD003 (#3176) 2020-01-13 12:30:12 -08:00
Nikolche Kolev 2664e37a4c clean restore cache file on build clean in VS 2017-07-17 18:19:46 -07:00
Alex Panov 0d2b804db0 End-to-End tests for LSL scenarios (#1483)
Resolves NuGet/Home#5258.

Added tests for basic scenarios per each project model supporting LSL
mode: `packages.config`, `project.json`, `PackageRef`.

Updated E2E test infrastructure to support test extension cmdlets and
running "theories". Added ability to skip tests for specific VS version.
Also added missing templates for unit-test project and native C++ console application.

Addressed PR feedback
2017-06-14 11:06:17 -07:00
Alex Panov 7985322db4 Lightweight solution load: Merge feature branch (#1379)
* Lightweight solution load: Merge feature branch

This change summarizes feature work done to enable full support of LSL
in NuGet Package Manager.

Main concepts introduced

- `IVsProjectAdapter` - An abstraction layer over `EnvDTE.Project`.
Represents a virtual project object. It is aware of LSL mode and is
capable to force load project when it's needed. All occurances of DTE
project have been replaced with new adapter object.

- `INuGetProjectServices` - Collection of project services as building
blocks to access underlying project system functionality, such as
reference reader, build properties, project system capabilites, script host.

- `VsCoreProjectSystemService` - Implementation of project services for VS
  core project system (DTE).

- `VsLangProjectSystemService` - Implementation of project services for
  managed languages project system (VsLangProj80).

- `WorkspaceProjectServices` - Implementation of project services for
  deferred projects based on Workspace* API.

Notable refactorings
- Decommissioned `EnvDTEProjectAdapter` in favour of the new adapter.
- `LegacyCSProjPackageReferenceProject` =>
  `LegacyPackageReferenceProject`.
- `CpsPackageReferenceProject` => `NetCorePackageReferenceProject`
- Multiple renamings to avoid confusion betwen projects and project
  systems.

Resolves NuGet/Home#5180.

* Cumulative PR feedback plus bug fixes

* Applied recommended design changes

* [BUG 441140] An error dialog pop up when creating C# ASP.NET Sigle Page Application

Fixes internal bug 441140.
2017-05-26 17:50:49 -07:00
Alex Panov f9fa6b3ab4 Merge and re-arrange NuGet.Client projects (#1313)
2nd pass over NuGet.Client projects.
Resolves NuGet/Client.Engineering#28
---
Changed the dependency order of PM.VS and PM.UI projects. Moved shared
code into `NuGet.VisualStudio.Common` (former Facade). Normalized
namespaces across all of the projects. Split constants. Split
`EnvDTEProjectUtility`.

New dependency graph of NuGet.Client projects:
```
NuGet.VisualStudio.Common
+---NuGet.VisualStudio
+---NuGet.VisualStudio.Interop
+---NuGet.SolutionRestoreManager.Interop
|
+---NuGet.TeamFoundationServer
|
+---NuGet.PackageManagement.VisualStudio
    +---NuGet.VisualStudio.Implementation
    +---NuGet.PackageManagement.PowerShellCmdlets
    +---NuGet.SolutionRestoreManager
    |
    +---NuGet.PackageManagement.UI
        +---Options
        +---NuGet.Console
        +---NuGet.Tools
        +---NuGet.VisualStudio.Client
```
2017-04-12 14:36:36 -07:00
deepakaravindr 1756e1e0db Functional Test Hang Fix.
Root cause: Accessing DTE and other related COM objects from a background
thread like powershell's pipeline execution thread is highly discouraged
as it can cause random hangs and crashes.

Fix: Move all the powershell utility methods into C# where you can safely
switch to UI thread before accessing the DTE and other related COM objects

What does this commit contain?
Added a few static helper classes which performs all the operations
that the powershell VS helper methods used to to. In particular, all the
DTE access have been moved into C# and it accessed from the UI thread.

What is pending?
Still, there are references to DTE.Project objects. Technically, this
can cause hangs and crashes too. And, it will be fixed in phase-II
in a different commit.
2016-02-24 13:25:05 -08:00