Commit Graph

44342 Commits

Author SHA1 Message Date
Jacques Eloff 314f67ec6e
Merge pull request #8450 from aspnet/joeloff/7729
Fix for #7729 to ensure upgradable bundles
2019-03-20 11:40:08 -07:00
N. Taylor Mullen e5064d3c76 Allow markup in local functions and @functions.
- Allow markup to exist in all code blocks. Prior to this change whenever we'd see nested curly braces we would do dumb brace matching to skip over any potentially risky code; now we treat every curly brace as an opportunity to intermingle Markup.
- One fix I had to introduce was now that functions blocks are parsed like `@{}` blocks I ran into cases where certain reserved keywords would get improperly parsed. This exposed a bug in our parsing where we’d treat **class** and **namespace** as directives without a transition in a `@{}` block. For instance this:
```
@{
    class
}
```
would barf in the old parser by treating the `class` piece as a directive even though it did not have a transition. To account for this I changed our reserved directives to be parsed as directives instead of keywords (it's how they should have been parsed anyhow). This isn't a breaking change because the directive parsing logic is a subset of how keywords get parsed.

- One quirk this change introduces is a difference in behavior in regards to one error case. Before this change if you were to have `@if (foo)) { var bar = foo; }` the entire statement would be classified as C# and you'd get a C# error on the trailing `)`. With my changes we try to keep group statements together more closely and allow for HTML in unexpected or end of statement scenarios. So, with these new changes the above example would only have `@if (foo))` classified as C# and the rest as markup because the original was invalid.
- Added lots of tests,
- Modified the feature flag to maintain the old behavior when disabled.

aspnet/AspNetCoredotnet/aspnetcore-tooling#5110
\n\nCommit migrated from 5ffd84e56d
2019-03-20 10:38:50 -07:00
Andrew Stanton-Nurse e61aa05b72
Fix #7477 by updating HttpSys readme (#8662)
We changed the README to "archived" before merging this repo into mondo repo. Whoops :).
2019-03-20 09:33:31 -07:00
Justin Kotalik 2d145682ce
Update some tests to be flaky rather than skipped (#8666) 2019-03-20 08:59:43 -07:00
Javier Calvarro Nelson 9db249e30a
[Components][Fixes #8058] Update blazor template to use IWebHostEnvironment (#8234) 2019-03-20 16:59:17 +01:00
Doug Bunting 7c3d249c77 Fix core-setup URI 2019-03-20 08:59:09 -07:00
Justin Kotalik b8e7cbad02
Remove Out-Of-Process test site fixture and make deployer check physical (#8659) 2019-03-20 08:33:26 -07:00
Javier Calvarro Nelson 9f1a978230
[Infrastructure improvements] (#8275)
* Improved selenium start and tear down
  * Selenium is set up and torn down in an assembly fixture.
  * Selenium is initialized lazily and in a non-blocking way.
  * Selenium processes are tracked as part of the build and their pids
    written to a file on disk for cleanup in the event of unexpected
    termination of the test process.
  * Browser fixture retries with linear backoff to create a remote
    driver. Under heavy load (like when we are doing a simultaneous NPM
    restore) the selenium server can become unresponsive so we retry
    three times, with a longer comand timeout allowance each time up to
    a max of 3 minutes.
* Moved test project setup to build time instead of runtime.
  * Added target PrepareForTest to create the required files for testing
    * The template creation folder.
    * The template props file to use our built packages.
    * The folder for the custom hive.
  * Added assembly metadata attributes to find all the data we need to
    run the tests.
    * Path to the artifacts shipping packages folder.
    * Path to the artifacts non-shipping packages folder.
    * Path to the test templates creation folder.
    * Path to use for the custom templating hive used in tests.
  * Proper cleanup as part of the build
    * Remove the test templates creation folder.
    * Remove the test packages restore path.
    * Recreate the test templates creation folder.
    * Recreate the test packages restore path.
  * Generated Directory.Build.Props and Directory.Build.Targets in the
    test templates creation folder.
  * Cleaned up potentially stale templatetestsprops.
* Improved test flows
  * Initialization is done lazily and asynchronously.
    * Selenium
    * Browser fixture
    * Template initialization.
  * Flattened test flows to avoid assertions inside deep callstacks.
    * All assertions happen at the test level with improved error messages.
      * With the exception of the migrations assertions.
    * Assertions contain information about which step failed, for what
      project and what failure details.
  * Broke down tests to perform individual steps instead of mixing build
    and publish.
    * Publish project.
    * Build project. (Debug)
    * Run built project.
    * Run published project.
  * Concentrated build logic into the Project class.
    * Context between the different steps of a test is maintained in
      this class.
    * All operations that require coordination are performed within this
      class.
      * There is a lock for dotnet and a lock for nodejs. When building
        SPAs we acquire the nodejs lock to correctly prevent multiple
        runs of nodejs in parallel.

[ApiAuthorization template cleanups]
  * Fix preview3 issues with breaking changes on Entity framework by
    manually configuring the model in ApiAuthorizationDbContext.
  * Add app.db to the project file when using local db.
  * Fix linting errors on angular template.
  * Fix react tests
  * Add tests to cover new auth options in the SPA templates.
2019-03-20 08:44:20 +01:00
Andrew Stanton-Nurse 2d1743a2f6 clean up flaky filter constants (dotnet/extensions#1248)
\n\nCommit migrated from 3b3a23eb1a
2019-03-19 18:43:25 -07:00
Pranav K 25e5a4ffab Infer Razor Configuration \ RazorLangVersion based on TFM (dotnet/aspnetcore-tooling#343)
* Infer Razor Configuration \ RazorLangVersion based on TFM

Fixes https://github.com/aspnet/AspNetCore/issues/6392
\n\nCommit migrated from cfee40a19e
2019-03-19 16:33:26 -07:00
Chris Ross 0456c9dcc9
Handle SIGTERM exit code #6526 (#8294) 2019-03-19 19:15:00 -04:00
Artak Mkrtchyan 37a48d897b Update default log levels for templates 2019-03-19 13:52:14 -07:00
Jacques Eloff eb1ce947c5 Fix up property group, preprocessor statement 2019-03-19 11:50:13 -07:00
Jacques Eloff eb8ca48e77 Remove duplicate inputs 2019-03-19 11:50:12 -07:00
Jacques Eloff 2aabd9f847 Fix inputs for UpgradeCode 2019-03-19 11:50:11 -07:00
Jacques Eloff f87c75a90d Fix for #7729 to ensure upgradable bundles 2019-03-19 11:50:11 -07:00
Justin Kotalik 9f724f6ac4 Revert "Publish MusicStore as part of build (#8578)" (#8655)
This reverts commit f3eaa73c1a.
2019-03-19 11:03:48 -07:00
Mikael Mengistu 6038621630
Update acessTokenProvider selecting logic for restarting connection (#8569) 2019-03-19 10:55:53 -07:00
Justin Kotalik 26c487b0c0
Use examined rather than consumed for content length of body. (#8223) 2019-03-19 08:25:57 -07:00
Pranav K f3eaa73c1a
Publish MusicStore as part of build (#8578)
* Publish MusicStore as part of build

* Add a target to publish MusicStore as part of E2E tests
* Publishing for x86 causes unit tests in MusicStore to have weird
reference issues. Removing these since they are very pretty low value.
2019-03-19 07:17:55 -07:00
Doug Bunting bcead68f0c React to EntityFrameworkCore and AspNetCore-Tooling breaking changes
- avoid `[Obsolete]` EF Core method
- mirror recent `RazorIntegrationTestBase` changes in this repo
2019-03-18 19:36:09 -07:00
Doug Bunting cb864e64f2 Manually (and coherently) update dependencies from 5 repositories
- previous updates of Extensions, etc. were incoherent and not caught until we reached aspnet/AspNetCore
2019-03-18 19:36:09 -07:00
Doug Bunting 533104dd2a
Merge branch 'release/2.2' => 'master' (#8522)
- barely [automated]
2019-03-18 19:34:26 -07:00
Andrew Stanton-Nurse 706778d4de
Add a separate test pass to run flaky tests that doesn't fail the build (#8486)
Similar to https://github.com/aspnet/Extensions/pull/1239.
2019-03-18 18:21:14 -07:00
dotnet-bot 5cb615fcbe Merge in 'release/2.2' changes 2019-03-18 21:50:48 +00:00
John Luo de5310e886 Update build tools (#8528)
* update build tools' aka KoreBuild aka Internal SDK versions
* update EF submodule
* fix submodule builds with trimming
  - path must not contain trailing slashes apparently
* bump Microsoft.NETFramework.ReferenceAssemblies package version to align with KoreBuild
2019-03-18 14:49:15 -07:00
Doug Bunting 1d1d664ea1
Merge branch 'release/2.2' into master
- no-ops except for
  - Update PatchConfig.props (2835f85b6c)
  - Add some additional logging to ErrorPageMiddlewareWebSite (#8049) (aka 1ca6202e7e)
  - Put MVC's functional tests in a separate test group (#8118) (aka db3795b368)
- ignore the build queue (4f2a0edc97) change because we're not hitting Linux resource issues in `master` branch
- ignore baseline test changes (5661c41909 and d2a4435ac8) because they're not applicable in `master`
2019-03-18 12:36:01 -07:00
Ryan Nowak f303a55a8e Add skeleton to use components + prerendering
This adds the skeleton needed for components + prerendring development
in the MVC sandbox. We don't currently have a sample app for quick and
dirty testing.
2019-03-18 10:18:04 -07:00
Justin Kotalik a3c8bd16f7
Make Kestrels Internals truly internal. (#8517) 2019-03-18 10:15:39 -07:00
Matheus Marques 5c6e1aa1d9 [Templating] Fix react template typos (#8592) 2019-03-18 09:42:56 +01:00
Doug Bunting 43ad13ffc4 Merge branch 'release/2.2' => 'master' (dotnet/extensions#1258)
- barely [automated]\n\nCommit migrated from 41751621d3
2019-03-17 21:38:16 -07:00
Justin Kotalik 8349109647
Atomic swap the request drained handler when shutting down. (#8529) 2019-03-17 10:09:04 -07:00
Doug Bunting 9bf65aa506 Merge branch 'master' into merge/release/2.2-to-master\n\nCommit migrated from bce4a87ccd 2019-03-16 11:39:10 -07:00
Javier Calvarro Nelson 3189146b4e
Fix typo in killprocesses.ps1
Fixes variable reference typo.
2019-03-16 19:15:47 +01:00
Alexey Malinin 2eb0692434 Change name of argument in "WebHostExtensions" (#8411) 2019-03-16 12:16:27 -04:00
dotnet-bot 3a185ee0c5 Merge in 'release/2.2' changes 2019-03-16 00:33:20 +00:00
Doug Bunting 909d951caf Unpin 3 Microsoft.Extensions.Configuration packages
- shipping in this release
2019-03-15 17:31:59 -07:00
dotnet-bot 735c8c3e4e Merge in 'release/2.2' changes 2019-03-16 00:16:47 +00:00
Doug Bunting aa384f8765
Merge branch 'release/2.1' => 'release/2.2' (#8570)
- mostly [automated]
2019-03-15 17:15:20 -07:00
Justin Kotalik 430002570f Update patch config for ANCMV2 patch 2019-03-15 23:32:58 +00:00
Javier Calvarro Nelson adf978a579 Kills java instances for Azure pipelines (#8568)
* Kills java instances for Azure pipelines

* Improved version

* Update output

* Add missing quote
2019-03-15 16:26:21 -07:00
Doug Bunting 73f288bcb6
Merge branch 'release/2.2' into merge/release/2.1-to-release/2.2 2019-03-15 14:25:55 -07:00
Hao Kung 95ab2fa4af
Split ILookupNormalizer.Normalize into Name/Email methods (#8412) 2019-03-15 14:00:40 -07:00
Doug Bunting 2a2809afe4 Unpin Microsoft.Extensions.Configuration.Binder package
- included in this release
2019-03-15 13:28:14 -07:00
dotnet-bot 3cae6000e0 Merge in 'release/2.2' changes 2019-03-15 18:49:56 +00:00
Doug Bunting 231705dc1e
Merge branch 'release/2.1' => 'release/2.2' (#8553)
- somewhat [automated]
2019-03-15 11:42:37 -07:00
Pavel Krymets 22623b905f
Add dependency from AspNetCore targeting pack to dotnet Core targeting pack (#8490)
Fixes https://github.com/aspnet/AspNetCore/issues/8284
2019-03-15 11:28:42 -07:00
dotnet-bot e907061465 Merge in 'release/2.2' changes 2019-03-15 18:01:17 +00:00
BrennanConroy 2835f85b6c Update PatchConfig.props 2019-03-15 10:59:18 -07:00
James Newton-King 47fab927a1
Add friendly error message to UrlHelper for when there is no IRouter (#8145) 2019-03-15 10:14:07 -07:00