Commit graph

1464 commits

Author SHA1 Message Date
Krzysztof Wicher
872f842522 use reporter and c#6 features 2015-11-17 12:09:10 -08:00
Krzysztof Wicher
5d1c908d49 change Dictionary<string, string> to var 2015-11-17 11:46:47 -08:00
Krzysztof Wicher
b566be5de8 Add dotnet-init 2015-11-17 11:46:46 -08:00
Livar Cunha
1e357a2e03 ResourceWriter requires that AddResource be called at least one before generate. However, when we have an empty resx, AddResource does not get called which causes resgen to crash when ResourceWriter.Generate gets called. 2015-11-17 09:56:35 -08:00
Piotr Puszkiewicz
92857c7298 Merge pull request #197 from blackdwarf/master
Add MD files per command and documentation directory
2015-11-16 22:12:17 -08:00
Andrew Stanton-Nurse
8c5a0490b5 remove unnecessary argument on PrintHelp 2015-11-16 20:26:52 -08:00
Zlatko Knezevic
5156afa505 Add MD files per command and documentation directory
Add README.md files with the contents of the "man pages" per directory that
implements all or part of the command. This way, we will enable easier
perusal of our repo as well as have an initial set of documentation published.
Add "documentation" directory as well for future work.
2015-11-16 20:11:21 -08:00
PiotrP
e839b4debb Update Copyright headers in all source files. 2015-11-16 19:47:43 -08:00
David Fowler
98390d50e0 Don't require all dotnet tools to be on the path
- Try resolving full path to executable in the local directory first.
2015-11-16 18:21:15 -08:00
Andrew Stanton-Nurse
1dbc62866d fix #202 by exiting on invalid option 2015-11-16 17:39:03 -08:00
Andrew Stanton-Nurse
4cc15b1246 restructure the output layout
also reorganize the scripts folder
2015-11-16 09:44:00 -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
Andrew Stanton-Nurse
9718a4818c update NuGet.Packaging reference 2015-11-12 10:38:57 -08:00
Andy Gocke
5bfb626799 Upgrade compiler version and fix crossgen
The latest compiler nugets have missing dependencies, so
this temporarily turns on -MissingDependenciesOK for crossgen
2015-11-11 16:33:06 -08:00
Charles Stoner
a4164dbf11 Merge pull request #170 from cston/version
Update Microsoft.Net.Compilers.netcore version
2015-11-09 12:11:27 -08:00
David Fowler
df8ac0c7ce Added initial workspace implementation for project.json 2015-11-09 11:37:16 -08:00
Charles Stoner
3b8b7b6cb0 Update Microsoft.Net.CSharp.Interactive.netcore version 2015-11-09 10:27:01 -08:00
David Fowler
215b53c6ab Added a basic workspace implementation
- This is a port of a simple project.json workspace I wrote a while back. It's been updating to use the new APIs (which actually made it much easier to implement).
2015-11-09 00:23:46 -08:00
David Fowler
5711d1764d Rename strongName: true to useOssSigning 2015-11-09 00:19:39 -08:00
David Fowler
cb471485a9 Change the line number for version conflcits
- Use the project.json that caused the conflict
2015-11-08 10:22:09 -08:00
David Fowler
b343d121a3 Show more dependency warnings
- Show version conflicts
- Fixed the formatting of version ranges
- Fixed conflicts found in the cli
2015-11-08 09:52:28 -08:00
David Fowler
82f3b22308 Removed extra space 2015-11-08 07:39:23 -08:00
David Fowler
1470ab60d2 Fix dependency issues
- Normal behaviors things were being shown as warnings. Cousin dependencies
always get version bumped.
2015-11-08 07:38:42 -08:00
David Fowler
41516f5a37 Fix up some error handling
- Don't flood console with compilation errors
if the framework isn't installed.
- Split errors into unspecified reference assembly base path and uninstalled framework.
2015-11-07 23:53:05 -08:00
David Fowler
b334c8f28c Fixed a few issues with lock file check
- Normalize version for comparison
- Change dnu restore to dotnet restore in
error message
2015-11-07 02:24:53 -08:00
David Fowler
8ebc1bf9f5 Fixed argument parsing issues with resources 2015-11-07 01:52:59 -08:00
Charles Stoner
d244b07dc5 Merge pull request #162 from cston/repl
Rename 'dotnet interactive' to 'dotnet repl'
2015-11-06 19:31:14 -08:00
Charles Stoner
73ae3e8afb Rename 'dotnet interactive' to 'dotnet repl' 2015-11-06 19:07:38 -08:00
David Fowler
8eb933d827 Arg typo 2015-11-06 17:30:11 -08:00
David Fowler
5b59b69d70 Only attempt to compile to native if managed passed 2015-11-06 17:29:35 -08:00
Charles Stoner
1ef48cc094 Revert change to 'dotnet run --project' argument 2015-11-06 08:18:36 -08:00
David Fowler
25c35907b8 Copy the "copy to output" files on compile 2015-11-06 06:15:26 -08:00
David Fowler
f1f1db0d8e Support language version based on schema 2015-11-06 05:53:16 -08:00
David Fowler
b50ae8bbeb Resolve the full path to the key file 2015-11-06 05:24:13 -08:00
Charles Stoner
e2cdf17e2e Add Microsoft.DotNet.Tools.Interactive 2015-11-05 08:54:20 -08:00
Sridhar Periyasamy
54847cf032 Merge pull request #150 from Sridhar-MS/upgrade-refs
Upgrade references to 23504.
2015-11-04 13:09:49 -08:00
Andy Gocke
7a0ded7654 Merge pull request #92 from agocke/MoveOptionsToCsc
Create (de)serializer for CompilerOptions
2015-11-04 12:58:56 -08:00
Andy Gocke
da8f254cb4 PR comments 2015-11-04 12:04:51 -08:00
Andrew Stanton-Nurse
d55f9a6e89 boo tabs 2015-11-04 10:49:45 -08:00
Sridhar Periyasamy
f211414d6e Upgrade references to 23504. It has the fix in System.Diagnotics.Process
for the Ubuntu hang.
2015-11-04 10:31:40 -08:00
Andy Gocke
a60a030bca Fixup merge 2015-11-03 15:36:06 -08:00
Andy Gocke
9d5f435ef5 Create (de)serializer for CompilerOptions
This allows language-specific compile utilities to map a set of
common arguments to their compiler's specific argument set.
2015-11-03 12:03:40 -08:00
Andy Gocke
b1d3ef4b75 Merge pull request #143 from agocke/ChangeCMakeIdToGNU
Fix the Cmake GCC identifier
2015-11-03 11:26:16 -08:00
Andy Gocke
a5a19be253 Fix the Cmake GCC identifier
GCC is 'GNU', not 'GCC'.
2015-11-03 10:56:33 -08:00
Piotr Puszkiewicz
f176ae9387 Merge pull request #142 from dotnet/anurse/fix-ubuntu-cmake
Fix cmake dependency on Ubuntu

Thanks @anurse!!
2015-11-03 10:42:51 -08:00
Andrew Stanton-Nurse
bf0b0c93cb this should fix cmake on Ubuntu 14.04 2015-11-03 10:08:59 -08:00
David Fowler
db6464356c Print the time for compilation without verbose 2015-11-03 01:08:57 -08:00
David Fowler
a887a984f5 Always use temp folder for run
- Both output and intermediate
2015-11-03 00:01:04 -08:00
Andy Gocke
e338f0415c Update everything to 23502 and add Tools.Run to sln 2015-11-02 21:47:18 -08:00
Andy Gocke
7dd429f047 Enable Roslyn crossgen on osx/linux
Also updates the runtime to 23502, which contains the crossgen
utility in the xplat runtime packages.
2015-11-02 16:44:03 -08:00
anurse
b35fba863b command line interface clean-up 2015-11-01 21:08:01 -08:00
David Fowler
d39f492300 Add the --debug argument to mono if in debug configuration 2015-11-01 20:41:58 -08:00
David Fowler
e372b32b61 Overwrite existing env vars 2015-11-01 06:24:31 -08:00
David Fowler
27f8300e82 Flow the intermediate output path to project refs 2015-11-01 05:50:39 -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
David Fowler
96dfcfa563 Make project dependencies work for dotnet run
- Copy project references to the output folder
2015-11-01 04:06:12 -08:00
David Fowler
da2925e920 Fix the name stripping logic 2015-11-01 03:39:56 -08:00
David Fowler
eaf05ea596 Fix namespace 2015-11-01 02:46:05 -08:00
David Fowler
81f4ebe412 Support mono for dotnet run 2015-11-01 02:30:34 -08:00
David Fowler
8a32f5ece9 Copy dependencies on compile for desktop targets 2015-11-01 02:04:26 -08:00
David Fowler
30f8e6fa4c Remove the message that reports compilation failed 2015-11-01 01:44:53 -07:00
David Fowler
d430ad35c4 Fixed bug resolving native search paths 2015-11-01 01:25:10 -07:00
David Fowler
05fae4d102 Fixed description of preserve-temporary 2015-10-31 23:49:41 -07:00
Andrew Stanton-Nurse
b7e6a0e6cd clean up copypasta 2015-10-31 22:07:41 -07:00
Andrew Stanton-Nurse
3ce7a84a04 dotnet-run command 2015-10-31 21:57:07 -07:00
Andrew Stanton-Nurse
fbedf48da2 fix windows build 2015-10-31 21:19:15 -07:00
Bryan Thornbury
67a17393f8 fix compilation error 2015-10-30 15:34:50 -07:00
Bryan Thornbury
82d538c43a fix compilation error 2015-10-30 15:20:14 -07:00
Bryan Thornbury
951e682070 remove constant 2015-10-30 15:17:43 -07:00
Bryan Thornbury
04e2212f45 clean up --native option 2015-10-30 15:13:53 -07:00
Bryan Thornbury
15cbb75e45 merge with master 2015-10-30 15:11:18 -07: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
Bryan Thornbury
f8ebf66dfc catch clean failure 2015-10-30 14:56:10 -07:00
Bryan Thornbury
822f8100a9 clean things up 2015-10-30 14:48:09 -07:00
Bryan Thornbury
b86dbda57e --native compile option 2015-10-29 13:29:38 -07:00
Bryan Thornbury
4cb3b9569b Merge remote-tracking branch 'upstream/master' into compilenative 2015-10-29 12:04:02 -07:00
Bryan Thornbury
7fe32a93b1 --native first attempt 2015-10-29 12:03:01 -07:00
David Fowler
756080421d Use CoreConsole on *nix
- Changed publish to use CoreConsole instead of
CoreRun for *nix
- Locked pacakge versions for test projects
2015-10-29 02:23:09 -07:00
David Fowler
c83f58d566 Minor API cleanup
- Make ProjectContextBuilder a fluent API
- Rename ResolveRepositoryPath to ResolvePackagesPath
2015-10-29 01:35:23 -07:00
David Fowler
2a37430053 Updated the solution and project file 2015-10-29 00:21:35 -07:00
David Fowler
f98159b3bb Renamed ProjectModel project
- Microsoft.Extensions.ProjectModel -> Microsoft.DotNet.ProjectModel
2015-10-29 00:15:12 -07:00
David Fowler
0ff309d6d1 Skip exe step for desktop TFM publish 2015-10-28 17:19:10 -07:00
Andrew Stanton-Nurse
840b704bf5 pin versions 2015-10-28 15:55:43 -07:00
Andrew Stanton-Nurse
a715be1d59 switch to latest coreclr 2015-10-28 15:47:47 -07:00
Andrew Stanton-Nurse
1d76b2846c package up DNX in the tar.gz
includes a smoke test for verifying that the output can be used to build
also includes a checked-in CoreCLR in order to work around CoreCLR issue
2015-10-28 10:32:30 -07:00
David Fowler
94bafb17a3 Skip the packages folder in the default excludes 2015-10-28 02:59:44 -07:00
David Fowler
80beccdbdc Added support for relocating reference assemblies
- This enables building for mono by setting the DOTNET_REFERENCE_ASSEMBLIES_PATH env variable. We could add some smart defaults for mono later.
- Added a new diagnostic for reference assemblies when the framework itself isn't installed.
- Added new error codes for dotnet.
2015-10-28 02:21:00 -07:00
Andy Gocke
1564a48760 Merge pull request #102 from agocke/AddCompilerNameOption
Add a compilerName option to the project.json
2015-10-26 09:34:19 -07:00
Andy Gocke
953d934819 Add csc as default compilerName if one is not specified
Also remove csc from project.json files, since it is no longer
necessary.
2015-10-26 09:23:58 -07:00
Andy Gocke
72665a4f9f Remove compiler name autodetection
Also add compilerName: csc to every project.json to compensate.
2015-10-25 23:37:41 -07:00
David Fowler
8ea6607c92 Lock file parsing cleanup
- Handle Package vs package, NuGet puts Package in the lock file
- Handle null package lookups gracefully
2015-10-24 04:32:26 -07:00
David Fowler
3876d2e16a Changes to publish
- Return error for invalid runtime ids
- Change output to be rid specific
2015-10-24 03:59:39 -07:00
Andy Gocke
2ccecbf78e Add a compilerName option to the project.json
If compilerName is not specified in the project.json then
dotnet compile will attempt to detect a compiler based on
a hardcoded lookup table.
2015-10-23 15:21:49 -07:00
Bryan Thornbury
7a5354d4b5 pin versions 2015-10-22 15:21:54 -07:00
Bryan Thornbury
8a94b30100 Only build deb packages on mac, fix windows docker build 2015-10-22 15:12:49 -07:00
Bryan Thornbury
32916db70f pull down dependency to fix the build 2015-10-22 14:48:45 -07:00
David Fowler
8ca5740ce0 Change output for process exiting 2015-10-22 05:31:24 -07:00
David Fowler
18595e221e Make publish require and entrypoint 2015-10-22 04:34:01 -07:00
David Fowler
f8837f7717 Fix quoting of arguments to handle things with spaces in them 2015-10-22 03:32:32 -07:00
glennc
7339dbd5bf Force package versions down temporarily while we move to dotnet. 2015-10-21 14:02:47 -07:00
David Fowler
5ee8245b38 Fix issues with resolving reference assemblies
- Fixed global json lookup
2015-10-21 13:00:13 -07:00
David Fowler
20a4b43e4b Fixed duplicate diagnostics 2015-10-21 03:53:07 -07:00
David Fowler
5872aa0f0c Make all command execution synchronous
- This fixes a bunch of weird races I was seeing building
larger solutions.
2015-10-21 03:11:27 -07:00
David Fowler
c1e2d152e3 Remove mono bootstrapping logic 2015-10-21 01:18:14 -07:00
David Fowler
7191080caf Add a newline to the bash script for exec 2015-10-21 00:35:28 -07:00
David Fowler
62e586549d Clean up diagnostics output from compile
- Show a build summary
- Parse the msbuild format (the one that most compilers output) into a diagnostic message and then print that.
- Fixed formatting of LibraryRange in dependency diagnostics
2015-10-21 00:26:57 -07:00
David Fowler
3a26e88deb Fixed to colors 2015-10-20 15:36:59 -07:00
Andy Gocke
d97d307cdf Merge pull request #75 from agocke/DowngradeRuntime
Downgrade the runtime to -23413
2015-10-20 14:14:24 -07:00
Andy Gocke
1968207cbe Downgrade the runtime to -23413
It appears the compiler is crashing with an ExecutionEngineException
while trying to load the resource satellite assembly on -23419. Until
this is fixed we should downgrade to -23413.
2015-10-20 11:40:08 -07:00
David Fowler
6da43b205d Support publishing to .NET Framework
- Pick .exe or .dll based on emit entry point (true)
- Skip post publish fix up if the target application targets .NET Framework
2015-10-20 04:35:40 -07:00
David Fowler
d42b38d8ff Small fixes
- Change color of executing command
- Fix overwrite in publish
2015-10-20 03:07:21 -07:00
David Fowler
063eb45f8b Moved the reporter to shared code 2015-10-20 02:42:29 -07:00
David Fowler
086207ebcc Fix up diagnostics
- Show all diagnostics and the relevant location in project.json
even for transitive dependencies
- Removed LibraryRange from LibraryDescription and added a list instead
- Show stack traces in debug mode
- Fixed LibraryType.GetHashCode()
2015-10-20 01:44:00 -07:00
John Luo
0606e26221 Adding content copying to publish #51 2015-10-19 14:08:52 -07:00
David Fowler
f24aeae6b2 Removed unused variables 2015-10-18 21:34:16 -07:00
David Fowler
0c5464fa8c Added time for command execution 2015-10-18 21:24:26 -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
6ba4781c4f Made changes to compilation and other things
- Added basic support for embedded resources (resx files are next!)
- Print out exit code from executed command (makes debugging easier)
- Fixed dnvm2.cmd to avoid putting things on the user path
- Fixed up propagation of exit codes
2015-10-18 19:02:09 -07:00
David Fowler
dc46d3e23e Invert boolean logic for project refs building 2015-10-18 07:41:59 -07:00
David Fowler
ba743b1ae6 Small tweaks to fix mono bootstrapping 2015-10-18 07:32:42 -07:00
David Fowler
c45ff35aed Successful build on OS X and linux
- Mono 4.3 was required to work with certain compilation options on the
first pass but this is temporary.
- Support outputting portable pdbs when not running on windows by
default
2015-10-18 07:10:22 -07:00
David Fowler
7f59f00317 Closer to xplat build working
- Use newer nuget feed
- Lift versions to get new implementations
- Removed more dead code
2015-10-18 06:53:47 -07:00
David Fowler
2df6ec04ab Marked unresolved deps as compatible but unresolved 2015-10-18 04:35:49 -07:00
David Fowler
d5d3fd086c Fixed bootstrapping on osx/linux
- This won’t fully work since we need to download a precanned build
from somewhere.
2015-10-18 03:12:05 -07:00
David Fowler
3495781233 Catch exceptions and print the message from compile and publish 2015-10-18 02:06:15 -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
David Fowler
586dbde67f Removed the commands from the project.json files 2015-10-18 00:50:37 -07:00
David Fowler
ee0d2519e6 Changes to publish
- Added ability to rename a project using the name
entry in project.json. Renaming files doesn't work well when debugging
the pdb can't be loaded.
- Removed the logic that looks at commands on publish. The only
thing that matters is the assembly name.
2015-10-18 00:35:56 -07:00
David Fowler
6bb95c4857 Stop over building
- Added a flag --no-project-dependencies to dotnet-compile to avoid building project
dependencies.
- Made small tweak to LibraryExporter to check for instances rather than names

#63
2015-10-17 23:43:28 -07:00
David Fowler
68d591124e Move TryGetProject into ProjectReader 2015-10-17 22:42:50 -07:00
David Fowler
8d9e66889e Fixed lock file version comparison 2015-10-17 17:10:18 -07:00
David Fowler
9bdf7ca185 Remove fast path for framework assemblies
- DNX had this code before to avoid hitting the disk on startup.
This isn't a big deal if we're just producing outputs. Hopefully
the future we can delete all of this code and have everything come
from packages.
2015-10-17 15:29:10 -07:00
David Fowler
6343d282e9 Shuffling classes around 2015-10-17 08:55:06 -07:00
David Fowler
fa3cf52f10 Move CompilerOptions onto TargetFrameworkInformation 2015-10-17 08:36:22 -07:00
David Fowler
b2ebe529bd Remove IsLoadable from Project 2015-10-17 08:05:35 -07:00
David Fowler
fe3a9d1332 Fixed formatting 2015-10-17 07:50:02 -07:00
David Fowler
f2fdba5887 Removed more code 2015-10-17 07:35:07 -07:00
David Fowler
de116164dd API cleanup
- Removed unneeded code from LibraryManager and ProjectContextBuilder
2015-10-17 07:34:04 -07:00
David Fowler
58de7c4793 Fixed erroneous warning about mismatched dependencies
- Fixed lock files parsing issues
- Did some cleanup as well
2015-10-17 07:20:56 -07:00
David Fowler
357242f7b6 Print dependency diagnostics
- Downgrade lock file validation changes to warning instead of an error
- Don't show dependency information. Once we get log levels it'll be verbose.
The response file can be used to debug things.
2015-10-17 03:49:49 -07:00
David Fowler
55ef859423 Add support for more compilation options
- Added keyFile
- Added delaySign
- Added pdb generation
2015-10-17 03:32:58 -07:00
David Fowler
161c988d0f Disable assembly version warnings
- Since nuget resolves the relevant dependencies there's no need
to warn about binding redirects.

#47
2015-10-17 03:10:39 -07:00
David Fowler
7f452bce7d Fix .NET Framework compilation 2015-10-17 00:04:20 -07:00
David Fowler
adaf7f9be4 Fixed compilation issues with source exports
- Dependencies can have multiple parents. Fix the object model for that.
- Also moved shared file resolution to the right spot
2015-10-16 22:50:44 -07:00
David Fowler
94f5326189 Removed turd 2015-10-16 15:49:06 -07:00
Andrew Stanton-Nurse
1a01bfb931 add mac build 2015-10-16 15:45:19 -07:00
Andrew Stanton-Nurse
1a9a5acb41 check in CoreConsole until there's a working build 2015-10-16 15:45:17 -07:00
Andy Gocke
61eeb891ad Use camel case 2015-10-16 04:23:34 -07:00
Andy Gocke
0781d7649a Use csc on coreclr 2015-10-16 04:23:33 -07:00
David Fowler
64f539e100 Fixed a few issues around bootstrapping
- Work aronud coreconsole issue in the bootstrap.cmd
- Use msbuild 14 roslyn csc until we have it
- Remove quoting args when building project refs, it wasn't working
- Fixed logic that launched exe's directly
2015-10-16 04:21:40 -07:00
Andrew Stanton-Nurse
c60cef1e9b refactor to use our JSON parser 2015-10-15 15:09:37 -07:00
Andrew Stanton-Nurse
6d3f07234a code review feedback 2015-10-15 12:56:07 -07:00
Andrew Stanton-Nurse
40eba07f28 add some bootstrap scripting 2015-10-15 12:18:45 -07:00
Andrew Stanton-Nurse
cdd7248a8d cleaning up bootstrap story 2015-10-15 09:41:31 -07:00
Andrew Stanton-Nurse
9da2475e2f port DNX's ApplicationHostContext as ProjectContext 2015-10-14 15:37:39 -07:00
Andrew Stanton-Nurse
eaf7cb30ab add some readme 2015-10-08 14:49:39 -07:00
Andrew Stanton-Nurse
37de4976b3 add readme 2015-10-08 14:41:04 -07:00
Andrew Stanton-Nurse
6395ffbff5 code review feedback and clean-up 2015-10-07 14:39:36 -07:00
anurse
43873a37b5 merge my spike on compile/publish/run and switch from PS1 to C# 2015-10-06 10:46:43 -07:00
David Fowler
550dd7f062 Some small tweaks to make development easier
- Added scripts directory to path when using dotnet tool
- Added dotnet-compile and dotnet-restore
2015-10-06 03:10:26 -07:00
David Fowler
92f20068e7 Execute the known commands
- Added dotnet.sh and dotnet.cmd for testing
- Still uses dnx and dnu for bootstrapping
2015-10-06 02:19:27 -07:00
anurse
ab8986e3e3 initial spike of compile, publish and run 2015-10-05 21:22:26 -07:00
David Fowler
abb9aded65 Add gitignore 2015-10-03 11:36:46 -07:00
David Fowler
15ccc3781f Initial commit 2015-10-03 11:34:08 -07:00