Commit graph

27 commits

Author SHA1 Message Date
Pavel Krymets
1bfd7725b0 Fix wrapped project paht resolution 2016-02-24 16:40:22 -08:00
Pavel Krymets
a71112ce8f Asset refactoring and content files 2016-02-23 08:34:38 -08:00
David Fowler
dec4a0627f Fix asset copy on publish when lock file instance is shared
- Don't mutate the library target when making a package description.

#1528
2016-02-23 02:34:56 -08:00
Pavel Krymets
b0ff1857cc Fix publish runtime asseets 2016-02-16 20:54:11 -08:00
Troy Dai
cf2cf83ff3 Fix issue 1391 2016-02-15 21:36:35 -08:00
Pranav K
f5065c9425 Target net451 in ProjectModel
Fixes #876
2016-02-11 15:42:14 -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
Pavel Krymets
0f82ae37f3 Refactor output directory code 2016-02-09 08:52:59 -08:00
Troy Dai
b9f2d8fe3d Fix projectmodel-server regression
1. Address the null reference exception when a project dependency is
broken.
2. Address the duplicate key issues after the logic of redirecting
System pacage to reference assembly was added

Update projectmodel-server and tests

1. Fix test timeout caused by undisconnected socket;
2. Update project model server
2016-02-02 22:26:16 -08:00
Andrew Stanton-Nurse
be29bb2968 suppress adding project output to export when there is no output 2016-01-29 12:27:04 -08:00
Pavel Krymets
35d6fc4477 Copy refs only on publish 2016-01-29 10:20:28 -08:00
David Fowler
6edac85dce Fixed copying output assets to the publish directory 2016-01-27 20:35:43 -08:00
David Fowler
d4a8fa24db Oops, fixed the asset name for the main asset 2016-01-27 14:22:06 -08:00
David Fowler
b09b00f8a5 Added a way to get output assets
- Flow it through the project context so things end up
everywhere (mostly)
2016-01-27 13:07:26 -08:00
David Fowler
a35ae177ff - Make all of the code looking for built assets use the OutputPathCalculator
- Project dependencies are always built into their specific folders and the main project is the only one that uses the output path and intermediate output path variable.
- Publish respects the output path for publish only, not compile as part of publish. This means that publishing multiple runtimes will stomp on each other. So don't do that. We can throw if you specify and output location and you haven't specified a specific combination of RID and framework. Alternatively it should probably just pick the first TFM/RID pair from the lock file. This is similar to how `dotnet run` works.
- Cleaned up the incremental build output formatting
- Use a single stream (output stream) since interleaving them was causing formatting issues (like losing random characters in the middle of outputting things).
- Didn't change how pack works, it still preserves the output structure when passing `--output`, this one is worth discussing. We could leave the build output inplace and only move the package to the output location. That's more consistent with how everything else works and can be a follow up PR.
2016-01-27 11:13:45 -08:00
Andy Gocke
75859c5dc0 Merge branch 'rel/1.0.0' into analyzer-support 2016-01-26 10:43:34 -08:00
Andy Gocke
c716ad6571 Add analyzer support
With this change, any referenced analyzer project will be parsed by the
project system and the assemblies will be passed down to the compiler.
By default, the analyzer language is considered to be "cs". If another
language is used, the "languageID" option should be specified inside the
"analyzerOptions" section of the project.json file.

Resolves #83
2016-01-24 21:38:42 -08:00
David Fowler
2807db8044 Auto reference facades in the common cases
- There are 2 major cases to auto reference facades:
1. When using a netstandard/dotnet* based package on a platform where the System.* packages don't provide any compilation assemblies.
2. When referencing a PCL where no dependencies were specified in the nuspec.
- For 1, we handle it by replacing package references with reference assemblies if possible. For 2. We turn assembly references of PCL assemblies into package dependencies.
This should cover the 90% case where people had to manually reference facades anytime they wanted to use a PCL on Net4.x.

TODO: P2P PCL references

#164
2016-01-24 11:05:31 -08:00
Troy Dai
ce3e719a06 Update ProjectModel server
1. Rebase on new LibraryExporter
2. Update dependency name to "fx/<name>" for reference assembly
3. Update framework friendly name
4. Fix dependency message regression
5. Update tests
2016-01-14 10:11:31 -08:00
Troy Dai
02827620f8 Including unresolved library in LibraryExporter.GetAllExports result 2016-01-11 21:36:43 -08:00
piotrp
bf2583c1a6 Fix Microsoft.DotNet.ProjectModel namespace 2015-11-27 16:19:54 -08:00
PiotrP
e839b4debb Update Copyright headers in all source files. 2015-11-16 19:47:43 -08:00
David Fowler
df3a5fba7a First pass at dotnet-pack
- Ported nuget package building code over from dnu. Moved that code to use NuGet v3 primitives.
- Simplified the package builder API
- Left out resources and schema detection for now
- This folder should remain self contained as the code will be copied into NuGet v3.
- Missing features include symbols packages
2015-11-15 09:12:48 -08:00
anurse
b35fba863b command line interface clean-up 2015-11-01 21:08:01 -08:00
David Fowler
b5ebe855ad Change how paths to project references are resolved
- Removed project path resolution from ProjectModel
- Flow output path to transitive dependencies
- Don't copy project deps to output in publish or post compile
2015-11-01 05:40:19 -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
f98159b3bb Renamed ProjectModel project
- Microsoft.Extensions.ProjectModel -> Microsoft.DotNet.ProjectModel
2015-10-29 00:15:12 -07:00