Commit Graph

2588 Commits

Author SHA1 Message Date
Nate McMaster e7b00a5508
Deprecate the Microsoft.AspNetCore.App metapackage in favor of targeting and runtime packs (#7832)
* Deprecate the Microsoft.AspNetCore.App metapackage in favor of targeting and runtime packs
* Stop producing Microsoft.AspNetCore.App, and runtime.$(rid).Microsoft.AspNetCore.App
* Generate the shared framework without using 'NuGet' restore
* Stop producing intermediate packages for shared-framework only assemblies
* Put the platform manifest into the targeting pack (data/Microsoft.AspNetCore.App.PlatformManifest.txt)
* Create well-known, shared intermediate directories that installers can use to bundle content
2019-02-28 10:14:18 -08:00
Nate McMaster d2d60000eb
Create Linux installers for the aspnetcore targeting pack (#7776)
This creates 3 new build outputs:

* aspnetcore-targeting-pack-$(version).tar.gz
* aspnetcore-targeting-pack-$(version)-linux-x64.deb
* aspnetcore-targeting-pack-$(version)-linux-x64.rpm

Other changes:
* Make RPM packaging consistent with other installers. Vendor == Microsoft Corporation
* Add shared properties for building the targeting pack (or not building it in a servicing build)
2019-02-25 12:00:36 -08:00
Pavel Krymets 78bc2a10b9
Reenable IISExpress on helix (#7586) 2019-02-25 09:05:19 -08:00
Nate McMaster e02e047dcb
Merge branch 'master' into merge/release/3.0-preview3-to-master 2019-02-24 09:31:17 -08:00
Nate McMaster 1b27c9905c
Update dependencies and react to changes (#7844)
* Add workaround for dotnet/sdk#2976
* Add new restore sources
* Update BAR manifest to point to  https://dotnetfeed.blob.core.windows.net/aspnet-aspnetcore/index.json
* Obsolete WithCulture
* Add retries to dockerbuild.sh
* Ensure each test run gets a unique in-memory database
2019-02-22 19:09:08 -08:00
Nate McMaster 7fe3b7640d
Merge branch 'release/3.0-preview3' 2019-02-22 15:07:50 -08:00
Nate McMaster 5be7d30231 Replace npm commands with yarn 2019-02-22 13:30:19 -08:00
Doug Bunting 2764ac66b0
Undo "Restore Microsoft.VisualStudio.Web.CodeGeneration.Design references in templates"
- not intended for `release/2.1` without a PR!

This reverts commit 4ed02ebc5c
2019-02-22 11:00:26 -08:00
Doug Bunting 4ed02ebc5c
Restore Microsoft.VisualStudio.Web.CodeGeneration.Design references in templates
- revert part of "Remove aspnet/Scaffolding submodule (#7166)"
- that was commit bb8c6fcd46
2019-02-22 10:58:53 -08:00
Nate McMaster 8a0adf1cfc
Ensure build manifest has a consistent URI, despite what AzDO says (#7829) 2019-02-21 16:44:26 -08:00
Pavel Krymets 9355c7c1a5
Add reference assemblies support (#7764) 2019-02-21 14:33:35 -08:00
Nate McMaster 9a2db43848
Follow-up to VS2019 conversion (#7753)
* Set VS version in file to 16.0.0.0
* Fix for restore failure on Microsoft.AspNetCore.App.Runtime.csproj
2019-02-20 11:02:38 -08:00
Nate McMaster 85ae18c723
Make Visual Studio 2019 a prerequisite to building this repo (#7005)
Changes:

* Make Visual Studio 2019 a prerequisite for building this repo
* Update .sln files
* Update Windows SDK to 17134
* Update developer docs
* Disable ANCM tests
* Update to .NET Core SDK 3.0 Preview 2
* Use Microsoft.NET.Sdk.Razor as a package consistently accross the repo
* React to changes in metadata from Microsoft.NETCore.App
* React to changes in .NET Core SDK
* Attempt to workaround CodeCheck.ps1 failure which doesn't repro locally or on different agents. Possibly due to differences in the version of the PowerShell task?
* Remove dead YML file
* Rename usages of win7-{x64,x86} to win-{x64,x86}
* Update KoreBuild to 3.0.0-build-20190219.1
2019-02-20 09:53:53 -08:00
Nate McMaster a9c358bbbd
Build MSI installers for targeting pack (#7726)
Part of #6501 

This adds a new Windows installer for the targeting pack. It places *.dll and *.xml (docs) in `[DOTNETHOME]\packs\Microsoft.AspNetCore.App.Ref\$(version)\ref\netcoreapp3.0`.

Outputs:
* aspnetcore-targeting-pack-$(version).zip
* aspnetcore-targeting-pack-$(version)-win-x64.exe (defaults to C:\Program Files\dotnet)
* aspnetcore-targeting-pack-$(version)-win-x86.exe (defaults to C:\Program Files (x86)\dotnet)

These all include the same files. These are meant to be bundled in the .NET Core SDK installer, but can be launched directly too.
2019-02-19 16:28:08 -08:00
Nate McMaster bd41388fdd
Add deployment metadata to maestro manifests (#7625) 2019-02-15 13:01:42 -08:00
Nate McMaster 6defaadb8b
Update location of obj/ and bin/ directories to match Arcade conventions (#7585) 2019-02-14 16:27:53 -08:00
Nate McMaster 0ec25d3167
Create new 'runtime pack' nuget packages for Microsoft.AspNetCore.App (#7475)
* Create a new package  - Microsoft.AspNetCore.App.Runtime.${rid} - which contains crossgen-ed versions of shared framework assemblies. This will be used by the SDK to replace rid-split packages
* Add a task which can generate the .deps.json file for the shared framework. Unlike the existing task we have, this does not rely on consuming a .deps.json file generated by first running a restore on packages.
* Move the reference to xunit.runner.console into the normal targets and files for managing dependencies
* Produce binlogs during build
2019-02-14 07:25:13 -08:00
Pavel Krymets 55bedc1cf9 Don't build site extensions 2019-02-13 23:15:58 -08:00
Doug Bunting d102d10a81 Update branding to 2.2.3
- new version
- update baselines
- grab latest released Microsoft.NetCore.App and Microsoft.NETCore.DotNetAppHost

nit:
- updated ZipManifestGenerator's README.md to use 2.2 examples
2019-02-13 23:15:58 -08:00
Nate McMaster 2ac4619635
Replace custom targets for generating assembly attributes and source control info by using SDK features (#7504) 2019-02-13 10:22:03 -08:00
Nate McMaster 3fd8a97af2
Add targets to generate the list of shared framework assemblies from project property (#7510)
Changes:
* Add support for a property, `IsAspNetCoreApp`, in the .csproj file of assemblies which are part of the shared framework. 
* Remove unused dependencies
* Remove reference which have become part of 'netcoreapp3.0'
2019-02-12 23:00:19 -08:00
Doug Bunting 5bb5bafbed Update branding to 2.1.9 2019-02-12 19:12:20 -08:00
BrennanConroy 2365dced43
Fix flaky process output reading for dotnet-watch tests (#7173) 2019-02-08 14:37:53 -08:00
Nate McMaster cc065f0055
Produce a package with just reference assemblies for AspNetCore.App (#7355) 2019-02-07 19:47:52 -08:00
Hao Kung 26acbc3861
Reorganize helix files (#7353) 2019-02-07 16:27:48 -08:00
Hao Kung c9499e14e4
Run helix tests on master (#6728) 2019-02-07 09:20:08 -08:00
BrennanConroy 744a32a750
SignalR C++ tests passing and part of build (#7160) 2019-02-06 17:23:23 -08:00
Nate McMaster 075612b988
Install the .NET Core SDK into the repo root instead of UserProfile and 'install' copy of AspNetCore shared framework (#7293)
This is required to workaround several limitations in the way the .NET Core SDK finds shared frameworks and targeting packs. It allow tests to use shared frameworks and targeting packs.

It also matches the patterns established in other aspnet and dotnet repos. This should reduce the friction required to adopt Arcade SDK.

## Changes

* This moves the default location of the .NET Core SDK installation into `$repoRoot/.dotnet`. This location was already in use for CI builds. 
* Update the build step for Microsoft.AspNetCore.App to install the shared framework into the local copy of the .NET Core SDK

## Recommendations

* Use the "startvs.cmd" script to launch Visual Studio. This will set required environment variables to make VS happier than if you just double click the .sln file.
* Use "activate.sh/ps1" if you want to run `dotnet build`, `dotnet test` and other dotnet commands. These will set required environment variables, including PATH.
* I recommend removing %USERPROFILE%/.dotnet to your PATH variable if you had added it manually before. This will no longer match what build tools will install.
* `git clean -xfd -e .dotnet/` preserves the folder so you don’t have to re-download the SDK again.
2019-02-06 11:20:49 -08:00
Nate McMaster 0bf063ec2c
Remove obsolete publishing targets and tasks (#7248) 2019-02-05 08:08:28 -08:00
Sébastien Ros 61bc18fee3
Exclude benchmark apps from builds (#7171) 2019-02-01 17:57:47 -08:00
Doug Bunting 2ff4dd5b7e
Merge branch 'release/2.1' into merge 2019-02-01 14:49:05 -08:00
Pavel Krymets d4c55df8f4
Fix MAX_PATH issue in SiteExtensions and move them to main build (#7177) 2019-02-01 12:37:00 -08:00
Doug Bunting bb8c6fcd46
Remove aspnet/Scaffolding submodule (#7166)
- aspnet/AspNetCore-Internal#1341
- remove Scaffolding references from `build/artifacts.props`, `build/buildorder.props`, `build/submodules.props`, and our templates
- add versions for these packages in `build/dependencies.props` to enable their inclusion in the package archives
2019-02-01 10:15:49 -08:00
Nate McMaster 6081fec894
Add new build.cmd/sh options for suppressing restore, NodeJS, setting target arch and OS name, and more (#7137)
Add new command line parameters for working with the project:

* `-NoBuild`, `-NoRestore` - these already existed, but users found it hard to discover this powershell syntax: '-build:$false'
* `-Arch`/`--arch` - set the target CPU architecture to build. Defaults to x64
* `--os-name` - on non-Windows builds, manually specify if the build should target Alpine. generic Linux, or MacOS
* Rename flags used to build specific project types. The pattern now is `--build-$(group)` or `--no-build-$(group)` (In PowerShell its `-Build$(Group)` or `-NoBuild$(Group). Example: -NoBuildJava

Changes to build definitions:
* Update the ci build definition to build all supported architectures
* Support publishing multiple artifacts per job

Other changes:
* `-NoBuild` implies `-NoRestore`
* Add new properties, `TargetArchitecture`, `TargetOsName`, and `TargetRuntimeIdentifier`
* Replace usages of `SharedFxRid` with these new properties
* To make `--no-build-nodejs` actually work, replaced Components.Browser.JS.csproj with Components.Browser.JS.npmproj
* Fix errors when building for win-arm on a clean machine
* Fix a few other project errors, like using the wrong syntax for DefaultItemExcludes, or using the wrong Platform value for x86
2019-01-31 15:47:47 -08:00
Pavel Krymets 6e8284711c Change SiteExtension artifact location (#7108)
* Change SiteExtension artifact location

* Add exclusions

* Reuse main version logic
2019-01-29 15:00:35 -08:00
Pavel Krymets ec8a4da9bb Remove ANCM V1 leftovers (#7104) 2019-01-29 14:25:19 -08:00
Nate McMaster 51761c3c5d
Handle code-signing exclusions when building for multiple architectures on the same machine 2019-01-28 18:24:37 -08:00
Nate McMaster 4eca8f02e1
Add a script to search the project reference graph and add all to a .sln file (#7066) 2019-01-28 10:10:13 -08:00
Nate McMaster ac04019e42
Remove obsolete build infrastructure (#6995)
Changes:

* Remove obsolete targets which are unnecessary now that this repo no longer builds git submodules in a separate build process
* Remove the need for static analysis of 'ArtifactInfo' items
* Simplify how the code signing task is configured
* Remove unused repo tasks
* Remove duplicate lists of external dependencies and packages to be produced
* Remove obsolete build definition
* Remove obsolete build script parameters
* Add VisualStudioSetupOutputPath
2019-01-28 09:57:59 -08:00
Ryan Nowak f0fc598511 Resurrect Blazor VSIX (#6779)
* Remove Blazor.LanguageServices

The text-view-listener was the only thing here and it's not needed
anymore now that these features are build into our main VS payload.

We won't have any more code to put in this project because it's this
VSIX is pretty temporary.

* Remove reference to ProjectSystem

We don't need this reference, and it's got some breaking changes between
15 and 16 - rahter then mess with nuget sources for vs16 packages, I'm
just going to drop the dependency

* Remove unused cruft
* Target net472
* Add Blazor VSIX to build
* Add Extension to .sln
* Use AsyncPackage
* Update and streamline references
* Update manifest for 16.0
* Pack Templates before building VSIX
* Fix version of templates
2019-01-24 14:26:12 -08:00
Nate McMaster 9de74918a2
Normalize file paths to .wixproj files 2019-01-23 17:34:52 -08:00
Nate McMaster 33bc4576da
Convert ProjectTemplates to build using ProjectReferences (#6935) 2019-01-23 15:54:47 -08:00
Nate McMaster ad8975001a
Update build tools and exclude symbols.nupkg files from signcheck (#6939)
Changes:
* Update BuildTools
* Normalize slashes to avoid double restore
* Exclude .symbols.nupkg files from signcheck. These are not shipped to customers and do not need to be signed. We can save time and bandwidth by not code-signing these. After this merges, I will re-enable signcheck on CI.
2019-01-23 07:52:17 -08:00
Nate McMaster 958e904989
Remove JsonPatch from the shared framework (#6867) 2019-01-18 22:03:49 -08:00
Nate McMaster b9e0889228
Remove call to SetTeamCityBuildNumberToVersion target 2019-01-18 18:12:55 -08:00
Nate McMaster dea1950bdc
Update buildtools, add --env parameter to dockerbuild.sh, and allow overriding KOREBUILD_SKIP_INSTALL_NETFX 2019-01-18 16:33:30 -08:00
Nate McMaster 922512a9fb
Convert the artifacts folder layout to match Arcade (#6850)
Changes:
* IsProductPackage => IsShippingPackage
* artifacts/$config/packages => artifacts/packages/$config
* packages/product => packages/Shipping
* packages/internal => packages/NonShipping
* Renamed MSBuild properties used for output folders
* Update build tools to use 2 spaces in global.json
2019-01-18 13:38:24 -08:00
Pranav K c04f66d25e Mark Mvc.NewtonsoftJson as a shipping package (#6842) 2019-01-18 11:03:47 -08:00
Pavel Krymets 70b2ff7551 Merge remote-tracking branch 'origin/release/2.2' 2019-01-17 11:29:56 -08:00
Pavel Krymets 829cd7271e
Fix signing for 2.2 site extensions (#6777) 2019-01-17 10:42:58 -08:00
Justin Kotalik e6d547a923 Merge branch 'jkotalik/22temp' into jkotalik/masterMerge 2019-01-16 14:39:10 -08:00
Nate McMaster 5a70f5312f
Convert Components projects to use ProjectRef (#6698)
This addresses #4246 for src/Components/. A few other changes were necessary because components had been using stale dependencies.
2019-01-16 12:28:04 -08:00
John Luo 1bd5845b4c
Merge pull request #6735 from aspnet/johluo/merge22
Johluo/merge22
2019-01-16 11:43:35 -08:00
John Luo e1c4d150f5 Merge fix 2019-01-16 10:31:10 -08:00
Pavel Krymets f44c175ec6
Enable logging branch SiteExtension (#6715) 2019-01-16 08:56:12 -08:00
John Luo 17b6ce8bd6 Merge branch 'release/2.2' 2019-01-15 18:49:54 -08:00
Pranav K 86071c9db4
Add Components packages to shared fx (#6722)
* Add Components packages to shared fx

* Add Microsoft.AspNetCore.Components \ Microsoft.AspNetCore.Components.Browser to shared fx
* Update build to use Microsoft.InteropJS package produced from Extensions repo
* Remove some package references from components template

Fixes https://github.com/aspnet/AspNetCore/issues/6442
2019-01-15 18:05:42 -08:00
Justin Kotalik eacffd56b7 Merge branch 'release/2.1' into release/2.2 2019-01-15 16:37:34 -08:00
Nate McMaster f43a353021
Workaround issues with Exec + npm when publishing npm packages 2019-01-15 16:04:01 -08:00
Nate McMaster fe20f9240d Fix #3503 - update buildtools dependency on DependencyModel to 2.1.0
The 2.0 version of the Microsoft.Extensions.DependencyModel does not
support the assembly/file version metadata. We must have at least 2.1.

Between 2.1.6 and 2.1.7, we switched the build to use MSBuild.exe
("full" MSBuild) instead of `dotnet msbuild` ("core" MSBuild). MSBuild
has different assembly loaders behaviors in core vs full. By switching
MSBuild types, we were also unintentionally switching the version of
Microsoft.Extensions.DependencyModel.dll that was being used by our build
 task from 2.1 back down to 2.0.

The reason we didn't discover this in earlier 2.1.x patches is that
building on msbuild core automatically upgraded our build tasks to
Microsoft.Extensions.DependencyModel.dll, Version=2.1.0.0. This happens
because of differences in the way .NET Core and MSBuild handles
assemblies with the same ID and different versions, and differences in
the layout of MSBuild and the .NET Core CLI.

In the end, this happened because we didn't have test coverage. MSBuild
and custom tasks burned asagain, but we should have just had unit tests
all along, which would have uncovered this regression as soon as we
switched to msbuild.exe.
2019-01-15 13:39:01 -08:00
Justin Kotalik e751db0739
Make Auth Samples Project Ref (#6557) 2019-01-15 13:12:54 -08:00
Nate McMaster 6765fd0fb5
Update npm publishing configuration 2019-01-15 13:06:46 -08:00
Nate McMaster 4235998962
Publish to the build asset registry and conditionally skip building Windows Azure build task (#6683) 2019-01-15 10:05:30 -08:00
Chris Ross 6a44aca6a2
React to WebHostBuilderFactory changes (#6460) 2019-01-15 08:09:27 -08:00
Doug Bunting 63ee551b6b
Merge `release/2.2` to `master` 2019-01-14 20:23:51 -08:00
John Luo 8f1eedf5a9 Merge branch 'release/2.1' into release/2.2 2019-01-14 19:04:39 -08:00
Mikael Mengistu a3a906c73d
Make Microsoft.AspNetCore.Http.Connections.Common a shipping package (#6685) 2019-01-14 16:39:52 -08:00
John Luo 90a9fa7aac Merge branch 'release/2.1' into release/2.2 2019-01-14 12:57:34 -08:00
Mikael Mengistu 5e825f4fd8
Update the package baseline (#6614) 2019-01-14 12:21:45 -08:00
Nate McMaster 7f7723bdf2
Consume dependencies updates automatically via darc (#6676)
This refactors the list of dependency versions to support consuming updates automatically via darc and maestro.
2019-01-14 12:01:31 -08:00
Doug Bunting 970bced25c
Update branding to 2.2.2 (#6608)
- pin System.Net.WebSockets.WebSocketProtocol to version 4.5.3
- update Directory.Build.targets files to correct build issues
- fix duplicate metadata during static analysis
2019-01-14 11:40:01 -08:00
Pavel Krymets 8aa8c6b2b0
Build branch logging SE in main build (#6312) 2019-01-14 08:42:53 -08:00
Mikael Mengistu abfdb433f2
Update submodules.props (#6586)
* Update submodules.props

* Update EF submodule
2019-01-11 09:59:03 -08:00
Nate McMaster 3cd5054eb5
Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
Steve Sanderson 827ace6100
Factor WebAssembly debugging infrastructure out of Microsoft.AspNetCore.Components.Server (#6519)
* Add empty Blazor.Server project

* Move debugging middleware to Blazor.Server

* Use debugging middleware in Blazor standalone CLI

* Use debugging middleware in Blazor "hosted" sample

* Update artifacts.props
2019-01-11 10:29:43 +00:00
Pranav K 13841abd78 Remove Microsoft.AspNet.WebApi.Client and Newtonsoft.Json.Bson from shared fx 2019-01-10 09:34:00 -08:00
Nate McMaster 4c8db32b1c
Don't restore npmproj files in parallel (#6560)
NPM does not handle this well, so only run one NPM command at a time
2019-01-10 08:21:26 -08:00
Steve Sanderson 8446b260d9
Split .Components.Build into .Blazor.Build+.Components.Build (#6538)
* Move Components.Build to blazor/src/. No content changes yet.

* Rename Components.Build to Blazor.Build and update file paths

* Move Components.Build.Test files. No content changes yet.

* Update contents in Blazor.Test

* Fix names of props/targets files

* Add minimal Components.Build package that just imports Razor targets and analyzer

* Make Blazor.Build depend on Components.Build and get Razor compilation targets from there

* Fix version of reference from .Blazor.Build to .Components.Build

* Fix signing error on local builds

* Update artifacts.props
2019-01-10 11:23:36 +00:00
Nate McMaster 22f3166fa6
Merge branch 'release/2.1' into release/2.2 2019-01-10 01:22:10 -08:00
John Luo e5d943a7e3
Convert MvcPrecomp to Reference (#6472)
* Convert MvcPrecomp to use Reference and move to MVC
2019-01-09 18:48:01 -08:00
Nate McMaster 0f65d44482
Merge branch 'release/2.2' 2019-01-09 18:09:25 -08:00
Justin Kotalik a474a0567f
Merge branch 'release/2.2' 2019-01-09 16:42:12 -08:00
Chris Ross 7ae4817f96
Update Extensions dependencies (#6545) 2019-01-09 16:10:56 -08:00
Nate McMaster a3f9b74bb9
Merge branch 'release/2.1' into release/2.2 2019-01-09 14:52:53 -08:00
Nate McMaster d3838620d6
Convert SignalR projects to build with ProjectReference (#6457)
Part of #4246 

Changes:
* Update source code layout to follow the new conventions for this repo
* Update project files to use `<Reference>`
* Update targets to build NPM packages
* Update BuildTools to support custom 'restore' and 'test' targets
2019-01-09 13:12:35 -08:00
Ryan Nowak 5a75084826 Update SDK and remove workaround 2019-01-08 13:20:16 -08:00
Pranav K cdc66c5f98 Move JSON.NET specific features to a separate assembly 2019-01-08 12:49:29 -08:00
Nate McMaster 5d16f97965
Remove netcoreapp2.0 test TFMs (#6461)
.NET Core 2.0 reached EOL last year. This removes multi-targeting our test projects and test assets to only use .NET Core 2.1 and .NET Framework 4.6.1.
2019-01-08 11:20:09 -08:00
Pavel Krymets 412bd4935e
Assign FilesToSign in a target (#6459) 2019-01-07 14:57:35 -08:00
dotnet-bot c06eec1e8f Merge in 'release/2.2' changes 2019-01-07 21:31:03 +00:00
Justin Kotalik 2e67864995 Merge branch 'release/2.1' into release/2.2 2019-01-07 10:27:41 -08:00
dotnet-bot 973b4b2fbf Merge in 'release/2.1' changes 2019-01-07 17:35:10 +00:00
Justin Kotalik 375e9d2cbd
Make music store project ref (#6313) 2019-01-07 09:34:05 -08:00
Nate McMaster edfb2ab8ab
Merge branch 'release/2.2' 2019-01-05 00:34:13 -08:00
dotnet-bot 590fe38284 Merge in 'release/2.2' changes 2019-01-04 22:20:08 +00:00
Nate McMaster 9556cc133d
Merge branch 'release/2.1' into release/2.2 2019-01-04 14:17:28 -08:00
dotnet-bot da77274259 Merge in 'release/2.1' changes 2019-01-04 18:01:45 +00:00
Nate McMaster 436076fd55
Fix broken tests and VS solutions caused by source code reorganization and other build infra cleanup
Changes:
* Fix broken tests and VS solutions caused by source code reorganization
* Add a check to validate generated code and solutions on PRs
* backport some source code reorg to src/Identity
* Fix startvs.cmd if you've already run build.ps1
* Add PR checks for tests on Linux/macOS
* Skip broken Nginx tests
* Add conditions to skip IIS tests on non-Windows platforms
2019-01-04 10:00:26 -08:00
Pavel Krymets 143a727113
Remove AspNetCoreModule virtual projects (#6317) 2019-01-04 09:40:40 -08:00
Ryan Nowak a4381d9a09 Manual update of Razor SDK bits 2019-01-03 15:51:47 -08:00