Commit graph

2942 commits

Author SHA1 Message Date
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