Add Microsoft.NuGet.ImportBefore and ImportAfter files so .nuget.props and .nuget.targets files get picked up invoking 'dotnet build3'.
I also fixed some .xproj and .sln file issues to get our code to work in VS.
* Rebase
* Remove Multi-Project Validator
* Remove projectmodelserver tests
* Enable test package creation
* Incremental test restore
* WiP
* Enable Test Asset Project restore
* Build Test Assets & Restore Test Projects
* Build Test projects
* Enable Test Execution
also moves Test Targets to a well-known CLI Version [Stage 2]
* Pass throuh existing telemetry profile
* 2-space tabs
* Revert TestTargets.cs
* WiP PR feedback
* Refactoring
* Fix naming of RestoreTestAssetPackages
* DotNetTest task
* Fix merge issue
* ExecuteWithCapturedOutput
MSBuild considers StdErr output to be failures. This causes output of any test command which is expected to produce an error to be swallowed in the test.
* Workaround for always-on tracing functionality in dotnet-test
* Fix Path Separator Windows/Unix
* Seperate package build from pack
* Windows Pathing issues
* PR Feedback
* Workaround for msbuild #773https://github.com/Microsoft/msbuild/issues/773
* Update README.md
* Moving Ubuntu 16.04 to be next to Ubuntu 14.04
* Adding Oracle Linux and Linux Mint to the titles
Adding Oracle Linux and Linux Mint to the titles next to their compatible binaries.
* Remove showing firsttime eula for non verbs.
* Add Serviceable assembly attribute and nuspec attributes for all shipping CLI assemblies.
Fix#3345
* Use NugetCache Sentinel for Telemetry setting.
* Fix Oracle Linux version in README.md
Oracle Linux 7 -> Oracle Linux 7.1
* Fix README to use hostfxr download links (#3622)
Also fix a rebase error from b524fd079e6dcdd744faeb6061ccbfe99d1f810f#diff-04c6e90faac2675aa89e2176d2eec7d8
* Remove the VS2012 CRT dependency from docs (#3632)
* fix typo in dotnet-install file
This was needed to rebuild the CLI with the updated Roslyn NuGet packages.
Thanks goes to @akoken for the fix.
Previously I attempted to save the cost of reading/decompressing files
by keeping a copy in memory. That resulted in too much memory pressure
so I later swapped in temporary files. This defeated the initial goal
of keeping the streams alive to some extent since the files would
be flushed to disk.
In practice since all the nupkgs we are packing also have raw files so
we weren't even saving much CPU by avoiding a second decompression.
Switch the archiver to just first index all files and save the source
information to read at a later point. After this when building the
archive we'll reopen the files/zips and copy from there.
My measurements show that this actually improve the archiving perf and
the lack of temp files means we don't hit the ulimit restriction on OSX.
This adds LZMA to the THIRD-PARTY-NOTICES list for CLI. Since we've
modified the SDK in porting it to .NET Core and minor bugfixes we've
also been advised to add the .NET Foundation copyright header.
* Updating README.md files as well as man pages
This aligns with the latest changes in the official documentation. It also aligns dotnet test readme.md to official docs and introduces a new doc in the "Documentation" directory that deals with dotnet test protocols.
Previously we'd keep track of any file that we extracted once and try
to reuse that file (by copying it) if we needed the same file later at a
different destination. The reason was that it's theoretically faster to
a file copy than a createfile and write, since the copy can happen
entirely in the kernel. In practice we were foiled by AV scanners.
This happens to be the only time during extraction where we let a file
close after writing it and then try and use it again. Sure enough on
fast machines we were seeing that as soon as we closed it MsMpEng would
map the file for exclusive access causing our copy to fail with a
sharing violation.
To fix this, I've removed the copy optimization and will just copy the
file from the in-memory archive every time.
* Fix the project.json for C# library and add tests
This commit fixes the bug introduced in project.json for the C# Library
template. It also adds two simple tests for the library template that
drop the class library and then restore and another that also builds.
Fixes#3496
Renaming destinationPath to destinationRelativePath for clarity. This
string represents the path relative to the extract directory to which
files will be written.
We were missing an Interlocked.Increment during a parallel operation.
This type will archive multiple files de-duplicated in a zip with a
central manifest that describes how to recreate the actual layout.
In addition, any other zip file will be expanded and deduplicated
so that we can further reduce the size of those zips/nupkgs.
All of these are placed in a zip with no-compression, essentially
using the zip as only a container. We then LZMA compress that
container to achieve maximum compression.
We're builiding a library and don't need the application-related source
so I've removed this in addition to fixing the source to compile as
NETStandard1.0.
- Created a Configurer class that is responsible for deciding when to run the dotnet first time use
experience and invoke the NuGetCachePrimer.
- Added the NuGetCachePrimer which extract the archive and primes the cache.
-- This is just missing creating the sentinel once restore succeeds.
- Added a shell for the NugetPackagesArchiver, which will be responsible for expanding the archive (likely
replaced in the future by an abstraction from Eric's code or its implementation will simply call Eric's code).
- Added a TemporaryFolder abstration to Internal Abstractions that handles deleting the temporary folder once
we are done with it.
Adding the C# lib and xunittest templates to `dotnet new`. These need
to be invoked with the `dotnet new -t lib` and `dotnet new -t
xunittest` keywords respectively.