Commit graph

199 commits

Author SHA1 Message Date
PiotrP
a6ee3df5b2 Merged branch feature/msbuild into piotrpMSFT/branchmerge 2016-08-30 14:10:47 -07:00
Bryan Thornbury
b0554d3ff3 PR Feedback 2016-08-30 12:00:56 -07:00
Bryan Thornbury
b900f0b327 Solution and project cleanup 2016-08-30 12:00:08 -07:00
PiotrP
3cdd15a145 Merged branch feature/msbuild into piotrpMSFT/branchmerge 2016-08-30 10:30:45 -07:00
Livar Cunha
7d60d66a86 Addressing more code review comments. 2016-08-29 09:46:12 -07:00
Livar Cunha
9f2a0169fc Addressing code review comments. 2016-08-26 11:23:47 -07:00
Livar Cunha
8e432e567a Adding TestRunner resolvers that will be able to find a test runner based on different criteria.
Moving dotnet test command to its own library that can be shared between dotnet test and the test target in the SDK folder.
2016-08-22 15:45:13 -07:00
Piotr Puszkiewicz
2db1997bc0 Merge remote-tracking branch 'refs/remotes/origin/feature/msbuild'
Conflicts:
	Microsoft.DotNet.Cli.sln
	build_projects/dotnet-cli-build/DebTargets.cs
	build_projects/dotnet-cli-build/TestTargets.cs
	scripts/package/package-debian.sh
	src/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs
	src/dotnet/commands/dotnet-new/Program.cs
	src/dotnet/commands/dotnet-pack/PackageGenerator.cs
	test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs
2016-08-16 18:30:52 -07:00
drewgil
11b666acee Add nuget command to dotnet cli 2016-08-16 09:27:55 -07:00
Eric Erhardt
bc04f905db Remove Build.Tasks.Tests. 2016-08-10 20:09:15 -05:00
Eric Erhardt
736652fe71 Remove the SDK artifacts from the CLI.
These are now contained in github.com/dotnet/sdk.
2016-08-10 20:08:17 -05:00
Livar Cunha
d8e7d37616 Addressing code review comments 2016-08-10 13:40:27 -07:00
Livar Cunha
ee1474c161 Removing dependency model from CLI repo.
Conflicts:
	Microsoft.DotNet.Cli.sln
	build_projects/dotnet-cli-build/PackageTargets.cs
	build_projects/dotnet-cli-build/TestPackageProjects.cs
	build_projects/dotnet-cli-build/TestTargets.cs
	src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs
	src/Microsoft.Extensions.DependencyModel/DependencyContext.cs
	src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs
	src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs
	src/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs
	src/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs
	src/Microsoft.Extensions.DependencyModel/Resolution/PackageCacheCompilationAssemblyResolver.cs
	src/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs
	src/Microsoft.Extensions.DependencyModel/project.json
	test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs
	test/Microsoft.Extensions.DependencyModel.Tests/FunctionalTests.cs
	test/Microsoft.Extensions.DependencyModel.Tests/PackageCacheResolverTest.cs
	test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs
2016-08-10 13:39:49 -07:00
PiotrP
a7d594049b Remove dotnet-build.tests
This capability is being replaced by MSBuild, and the project.json tests are very long running.
2016-08-10 11:55:56 -07:00
Eric Erhardt
38d18eab4d Fix dotnet-install.ps1.
Allow directories named "publish" in .gitignore.
Add files to the .sln.
2016-08-09 08:28:53 -05:00
jplebre
06d7a84c08 Added tests as a project to the solution 2016-08-03 22:06:17 +01:00
Eric Erhardt
a4aa0a99cd Implement GenerateDepsFile MSBuild Task 2016-07-29 20:46:34 -05:00
Eric Erhardt
d54bba96cd Fix Microsoft.DotNet.Tools.Tests.Utillities.xproj name to match folder.
Also fixing GivenAProjectDependenciesCommandFactory test to expect a lower case path, since that is what the new NuGet does.
2016-07-26 20:53:19 -05:00
Eric Erhardt
9751b3203c Remove the Sdk nuget package. 2016-07-21 12:18:00 -05:00
Eric Erhardt
b068687413 Implement 'run3' command which will execute the MSBuild project.
Also create a 'dotnet new -t msbuild' template.
2016-07-21 11:57:20 -05:00
Eric Erhardt
bccff16c18 Round 2: rename the SDK NuGet package and add ImportBeforeAfter files to load them. 2016-07-21 11:57:19 -05:00
Eric Erhardt
30712966cc Prototype round #1 of .NET Core MSBuild .props and .targets. 2016-07-21 11:57:18 -05:00
Piotr Puszkiewicz
a477fe7253 Incremental build of test projects (#3859)
* If restore incrementality fails, clean out all lock files to re-enable incrementality.

* Incremental build of TestProjects

* Remove reduntant build of test projects

* Fix CI

* Fix list of executable tests

* Msi tests on net46

* Path Separators

* PR Feedback

* Win Diag

* Let's try a hack!

* And another!

* Mor Diag

* McHack

* Slashety slash slash

* One more hack
2016-07-15 00:20:23 -07:00
Eric Erhardt
703da0da3e Microsoft.NuGet.ImportBefore and ImportAfter
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.
2016-07-12 18:44:16 -05:00
Bryan Thornbury
5cfecec2e9 nuget version 2016-07-01 07:06:27 -07:00
Eric Erhardt
15642cfd2a Finish converting 'Prepare' to MSBuild.
Implement DownloadHostAndSharedFxArtifacts
Implement ZipTemplates
Switch the Prepare target to use all the MSBuild targets.
2016-06-29 19:19:58 -05:00
Eric Erhardt
038758acf4 Convert 'Init' to MSBuild. 2016-06-27 21:39:19 -05:00
Eric Erhardt
15b2a9d9db Convert all CLI build targets to MSBuild Tasks. (#3690) 2016-06-24 11:06:13 -07:00
Bryan Thornbury
400e1db3b9 dotnet-build3 Adding msbuild execution command to cli 2016-06-23 13:57:33 -07:00
Livar Cunha
4c5f097d67 Adding the configurer to dotnet. 2016-06-10 16:54:11 -07:00
Livar Cunha
84f63029fe Almost all of the code to prime the NuGet cache from the archive.
- 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.
2016-06-10 16:53:55 -07:00
Andrew Stanton-Nurse
dd51836aac fix #2289 by integrating EF's version of project load context (#3402) 2016-06-06 15:08:46 -07:00
Eric Erhardt
ee7372c2a1 Move update-dependencies under build_projects. 2016-05-25 22:06:59 -05:00
Bryan
aa01110c33 Remove The host build, consume the host build from core-setup 2016-05-25 14:49:12 -07:00
Eric Erhardt
14ed7a3e45 Fix warnings in our build projects so VSO powershell scripts don't fail. 2016-05-16 18:30:56 -05:00
Eric Erhardt
6bf59ffde6 Console.Write() doesn't show output until a newline
When running an app with `dotnet run`, we are redirecting the standard out and error just to print it out to our standard out and error. However, we are batching the output until we hit a newline, which isn't ideal for console apps.

To fix this, `dotnet run` no longer redirects the standard out and error.

Fix #2777
2016-05-13 09:03:35 -05:00
Pranav K
1e753f7781 Replaces references to Microsoft.Extensions.PlatformAbstractions with Microsoft.Extensions.PlatformAbstractions.Internal 2016-04-29 16:06:23 -07:00
Eric Erhardt
e2dcb968eb Add tests for invoking dotnet XX project.json from in
a folder that contains the project.
2016-04-28 08:50:22 -05:00
Eric Erhardt
5d2da26e74 Adding dotnet run tests for passing arguments to the app. 2016-04-26 19:58:41 -05:00
Brian Robbins
705a48940f Build-Time Hello World Performance Test (#2681)
Hello world build performance benchmark.
2016-04-26 17:52:34 -07:00
Eric Erhardt
44483ddc98 Remove System.CommandLine dependency.
Also removed the dependency on Microsoft.Extensions.CommandLineUtils.Sources NuGet package and instead just checking the source files into our repo as internal classes.

Fix #2526
2016-04-20 18:47:37 -05:00
piotrp
6f37e87a42 Feature complete 2016-03-28 17:25:52 -07:00
Livar Cunha
85884c5e9a Removed the DIA classes and the cod associated with it. Introduced a PdbReaderFactory that decides with PdbReader to use (full or portable). Introduced a PdbReader interface that abstracts the differences between full pdb (Uses ISymUnmanaged classes to read the pdb) and portable pdb (uses Reflection MetadataReader). 2016-03-25 10:58:05 -07:00
Pavel Krymets
f75481f731 Add runtime signature into deps.json 2016-03-24 12:00:01 -07:00
Livar Cunha
8358ccb5e8 Added build before running the tests and the no-build option to opt out of it.
Added new tests to ProjectDependencyCommandResolver and new E2E tests for dotnet test.
2016-03-17 15:17:18 -07:00
Eric Erhardt
eccf44c200 Add initial update-dependencies script.
This script can be used to automatically update dotnet/cli's
dependencies on other repos like CoreFX, NuGet, etc.

Currently the script supports updating the CoreFX dependencies.
2016-03-17 08:14:09 -05:00
Livar Cunha
8d39adbdbf Modifying the reporting channels to make the AdapterChannel a client and leave the TestRunnerChannel a server. This will prevent port conflicts between dotnet test and the Adapter (VS) due to race conditions.
Added E2E tests for dotnet test interactions with an adapter (design time).
2016-03-15 15:13:54 -07:00
MichaelSimons
0149f0bc72 General cleanup of the solution. Removed non-existant projects, fixed paths, removed invalid projects, etc. 2016-02-24 09:02:42 -08:00
Livar Cunha
7630337074 Adding unit tests for the state machine of dotnet test. Starting the implementation of a state machine in dotnet test. Right now we only handle the TestSession:Terminate message.
Adding a message handler for the version check message. Also introduced an IDotnetTest that handles state and handlers (the state machine).

Adding the test discover start message handler and introducing a test runner.

Added the handler for the GetTestRunnerProcessInfo message. Also, modified dotnet test to have separate setter for the special message handlers for terminate and unknown messages and added a separate method to add new reporting channels to DotnetTest, so that it can handle the new listener for the test runner.

Added the test runner test discovery handlers.

Added handlers to deal with the test execution itself.

Updated dotnet-test program to use the message handlers during design time.

Added a test for the whole discover tests message flow.

Added a test for the run tests full message exchange.
2016-02-23 11:20:04 -08:00
Pavel Krymets
a71112ce8f Asset refactoring and content files 2016-02-23 08:34:38 -08:00
Eric Erhardt
d9adc9214a Running Windows installer tests on Docker.
Cleaning up the Installer tests
- rename project to conform to the rest of the tests
- convert to .xproj
- clean up unused usings
2016-02-19 16:45:37 -06:00
Troy Dai
c2e5b0f24d Add a ProjectModel test 2016-02-17 16:29:28 -08:00
Piotr Puszkiewicz
d9b54cecac Merge branch 'PackagedCommands' of https://github.com/eerhardt/cli into eerhardt-PackagedCommands 2016-02-16 21:20:57 -08:00
Pavel Krymets
39e1e26f0e Refactor DependencyModel, make it ready for tests 2016-02-16 09:56:19 -08:00
Andrew Stanton-Nurse
d524732bbb working on build scripts 2016-02-12 15:26:35 -08:00
Livar Cunha
4e1ec4c159 Refactoring dotnet-compile to make adding the script variable testable. So far, moved it to have a compiler controller and two separate compilers: native and managed. Also moved the script runner to its own class so that we can mock it into the managed controller.
Adding a ICommand interface and factory that we can use to mock Commands and avoid actually running them in unit tests.
2016-02-11 12:42:02 -08:00
Eric Erhardt
5d04ca1fe3 Move PackagedCommands to TestAssets.
Convert package-command-test.ps1 to an XUnit test.
2016-02-10 15:05:25 -06:00
Eric Erhardt
490f4af0d4 Refactoring test directories.
- Rename Compiler.Common.Tests to Microsoft.DotNet.Compiler.Common.Tests.
- Create the Microsoft.DotNet.Cli.Utils.Tests and move StreamForwarderTests to it.
    - ArgumentForwardingTests will be moved here in the future
- Remove LoadContextTest, since it is old and no longer relevant.

Partial #1250
2016-02-09 18:26:53 -06:00
Eric Erhardt
784f5679bf Rename E2E test to EndToEnd. 2016-02-09 15:12:25 -06:00
Eric Erhardt
3d14caceff Test directory refactoring step 1.
Moving TestProjects and TestPackages under root 'TestAssets' folder.

Partial fix #1250
2016-02-08 20:35:22 -06:00
Eric Erhardt
7a6ba86a74 Remove nonexistent project file from our solution 2016-02-05 16:43:18 -06:00
Livar Cunha
fd604355fe Introducing a new library to hold file system related abstractions. Making the E2E tests work with dotnet test 2016-02-03 17:07:40 -08:00
David Fowler
ec10a1d6be Upgrade stdlib and enable crossgen 2016-02-01 20:48:34 -08:00
Andrew Stanton-Nurse
91c695458a add source file to library publish test project 2016-01-29 12:31:23 -08:00
piotrp
63d79b06b4 projectmodelserver 2016-01-28 10:53:31 -08:00
piotrp
5e72c88104 Rename test projects 2016-01-28 10:53:30 -08:00
piotrp
47db1b91e2 Tools Projects rename 2016-01-28 10:53:29 -08:00
Mihai Codoban
3a8ef0f5e9 Add Tests for incrementality 2016-01-20 16:07:12 -08:00
Andrew Stanton-Nurse
3d493f7d9d switch from DNX to cross-plat NuGet! 2016-01-19 11:43:09 -08:00
Andrew Stanton-Nurse
78cef18e1c add support for generating xml documentation
fixes #312
2016-01-08 14:02:41 -08:00
Andrew Stanton-Nurse
f4df12f2e2 add proper RID detection based on PlatformAbstractions 2016-01-08 10:07:58 -08:00
piotrp
08dd628172 create dotnet-restore.exe 2016-01-06 01:46:10 -08:00
Piotr Puszkiewicz
d1a257bff7 Merge pull request #625 from cdmihai/buildCommandWithSafetyChecks
Introduce --build-profile flag and precondition checking in the Build command
2015-12-28 10:46:27 -08:00
Troy Dai
935cd4e281 Add ProjectModel server 2015-12-25 13:23:29 -08:00
Enrico Sada
d52bc92155 add command dotnet-compile-fsc
used with "compilerName": "fsc" in project.json
2015-12-24 11:26:09 +01:00
Mihai Codoban
110b30ccdc Extract build from compile
Build becomes the new compile. It decides which project to compile and how. It checks for incremental preconditions
Compile's resonsibility is trimmed down to only knowing how to invoke the compiler on a project
2015-12-23 17:31:47 -08:00
Pavel Krymets
f05b208ad7 Add dependency model api 2015-12-18 12:09:39 -08:00
Bryan
6ff7404a48 Multi Project Validator
A tool which searches recursively for project.json files,
runs a set of analyses and reports on the result.

For CLI we have only one rule currently, that Dependencies
between projects must be equivalent to avoid stomping.
2015-12-11 14:24:05 -08:00
Andrew Stanton-Nurse
f089fff7fa fix solution after init->new rename 2015-12-09 10:08:04 -08:00
Andrew Stanton-Nurse
4e6244d8a8 add ProjectAssemblyLoadContext
allows the loading of assemblies in the context of an existing project
2015-12-08 11:30:25 -08:00
Andrew Stanton-Nurse
2d047428af remove c++ projects from sln 2015-12-01 11:42:02 -08:00
piotrp
407c933480 add dotnet-test 2015-11-30 17:28:03 -08:00
Krzysztof Wicher
0ecbc0d5fc Convert dotnet-run to System.CommandLine 2015-11-20 20:33:32 -08:00
Andrew Stanton-Nurse
5d195c8eea fix sln again 2015-11-18 14:23:12 -08:00
piotrp
42e557408a Adding to sln 2015-11-17 23:01:48 -08:00
Krzysztof Wicher
b566be5de8 Add dotnet-init 2015-11-17 11:46:46 -08:00
Charles Stoner
73ae3e8afb Rename 'dotnet interactive' to 'dotnet repl' 2015-11-06 19:07:38 -08:00
Charles Stoner
e2cdf17e2e Add Microsoft.DotNet.Tools.Interactive 2015-11-05 08:54:20 -08:00
Andy Gocke
a60a030bca Fixup merge 2015-11-03 15:36:06 -08:00
Andy Gocke
e338f0415c Update everything to 23502 and add Tools.Run to sln 2015-11-02 21:47:18 -08:00
Andrew Stanton-Nurse
e70a169b28 Add a shared runtime aware host
And use it in dotnet-compile
2015-10-30 15:03:29 -07:00
David Fowler
2a37430053 Updated the solution and project file 2015-10-29 00:21:35 -07:00
David Fowler
fc64db1f73 Support resx file embedding
- Added resgen tool and takes .resx and makes .resources
- Write .resources and .rsp to obj folder
2015-10-18 21:07:48 -07:00
David Fowler
cce7949a5a Changes to dotnet-compile
- Split dotnet-compile into dotnet-compile and
dotnet-compile-{compiler}
- We still need to figure out the protocol and responsibility
but this change adds the needed indirection so that compilers can do
their thing.
- Updated the bootstrap script and kept the commands since we need
them to bootstrap the world until we get updates.

#52
2015-10-18 01:17:13 -07:00
Andrew Stanton-Nurse
cbb8414b16 fix sln paths 2015-10-15 15:45:58 -07:00
Andrew Stanton-Nurse
40eba07f28 add some bootstrap scripting 2015-10-15 12:18:45 -07:00
Andrew Stanton-Nurse
9da2475e2f port DNX's ApplicationHostContext as ProjectContext 2015-10-14 15:37:39 -07:00
Andrew Stanton-Nurse
6395ffbff5 code review feedback and clean-up 2015-10-07 14:39:36 -07:00
David Fowler
15ccc3781f Initial commit 2015-10-03 11:34:08 -07:00