When no 'runtime' and 'framework' are specified then publish for all 'framework/runtime' targets found in project.lock.json. But currently when 'runtime' is not specified then current OS runtime identifier is assumed. This will go away when xplat publish is enabled.
Example - 'dotnet publish /home/sridhar/foo/project.json' -> Publish for all targets in project.lock.json.
User can also specify either 'framework' or 'runtime'. In that case all the corresponding 'framework' or 'runtime' targets in project.lock.json are published.
Example - 'dotnet publish --framework dnxcore50 /home/sridhar/foo/project.json' -> Publish for all targets in project.lock.json with framework dnxcore50.
(or)
'dotnet publish --runtime win7-x64 /home/sridhar/foo/project.json' -> Publish for all targets in project.lock.json with runtime win7-x64.
I am also adding unit tests for publish in upcoming commits.
Fixes - #185
The debian package build usually detects dependencies of executables packaged inside, and adds those as dependencies of the package accordingly. It doesn't detect this for managed executables though, so libcurl3 needs to be added to support `dotnet restore` on Ubuntu.
Line breaks where they were missing (after headings and before lists).
Commands in `code` format.
Filenames and paths in _italics_
Indenting done with using the > (as white space is ignored)
The long description format is somewhat fragile right now. Changes will need to be made to the package tool to handle this better because each line in the long description needs a leading space.
WorkspaceContext represets part of the original Design Time Host function:
1. Projects discovery and pooling
2. ProjectContexts pooling
3. Monitor project changes and keep ProjectContexts update to date
dotnet-test command
fixes issue #344 and #359
@brthor, note issue #359. Powershell was interpreting particular Env Var names as patterns due to use of -Path. Changing this to -LiteralPath was required since use of patterns was unintended.