Commit Graph

192 Commits

Author SHA1 Message Date
Doug Bunting 415875625c
[release/5.0] Update API baseline files (#27653)
* Move all PublicAPI.Unshipped.txt files to PublicAPI.Shipped.txt
- we have now shipped this API surface

* Add eng/PublicAPI.empty.txt file
- make it easier to add new implementation projects

* Add missing public API baseline files
- #26784 part 1/2
- a few unexpected files turned up missing beyond the #26784 list…

* Reference Microsoft.CodeAnalysis.PublicApiAnalyzers more often
- #27484 part 2/2
- emit errors when API baseline files are missing
- update categorization of some projects
  - specification tests are not implementation projects
    - but _were_ project reference providers (keep that)
  - correct `$(IsTestAssetProject)` setting for Razor shims et cetera
  - correct `$(IsSampleProject)` setting for casing of some Sample directories
  - Microsoft.AspNetCore.Analyzer.Testing should be treated as test asset
- add `$(AddPublicApiAnalyzers)` property to support overrides
  - e.g. for `msbuild` task projects and tools

nit:
- remove useless `$(IsTestProject)` setting in a specification test project
- wrap some long `Condition`s

* Do not run public API analyzer in `RazorCoreCompile` target

* Remove old `$(EnableApiCheck)` settings
- property does nothing
- also remove a dangling ApiCheck comment
2020-11-12 10:28:52 -08:00
Brennan 659532b16c
API docs for SignalR (#26445)
* API docs for SignalR

* Apply suggestions from code review

Co-authored-by: Stephen Halter <halter73@gmail.com>
Co-authored-by: Pranav K <prkrishn@hotmail.com>

Co-authored-by: Stephen Halter <halter73@gmail.com>
Co-authored-by: Pranav K <prkrishn@hotmail.com>
2020-10-02 10:14:32 -07:00
Pranav K 690c717314
Update to latest SDK (#25421)
* React to platform compatibility analyzer warnings
* React to new warnings
* Add platform compatibility attributes
2020-09-10 15:12:17 -07:00
Kevin Pilch 158401f361
Add public API baselines to SignalR (#25653) 2020-09-10 11:44:04 -07:00
Doug Bunting 31bd4d4b1d
[release/5.0] Correct baseline checks (#25227)
- mostly duplicates #25217
- update `BaselineGenerator` to produce baselines useful in 6.0 (too)
- update Baseline.Designer.props using new generator (matching 3.1.7 release)
- always suppress references expressed only in `*.nuspec` files
  - needed even in servicing builds
- restore warning and errors about removed references (new for 5.0)
  - adjust exclusions to handle `@(_ProjectReferenceByAssemblyName)` removal

nit: do not generate empty `<ItemGroup />` elements

* Correct `@(SuppressBaselineReference)` items
  - remove out-of-date `@(SuppressBaselineReference)` items
    - either 3.1.7 baselines we're using don't include reference or still using package
    - fix some comments and `Condition` attributes to make remainder easy to find
  - add missing `@(SuppressBaselineReference)` items
2020-08-28 09:53:20 -07:00
William Godbe ce058f639c
Add net461 TFM to netstandard2.0 projects (#25094)
* Add net461 TFM to netstandard2.0 projects

* Fix a couple of errors

* Fix some errors

* Get rid of Sockets reference

* Respond to feedback

* net461 -> property

* Fixup clientSample

* Remove net461 from analyzers/razor

* Remove net461 from test projects

* Feedback

* Add net461 test configs

* Remove some incompatible test configs

* Fix test
2020-08-27 16:05:40 -07:00
Martin Costello b22512de0e
Right-size Lists when created (#23714)
Create new instances of List<T> with an appropriate capacity for the items that will be added.
Use Array.Empty<T>() where appropriate, rather than create an empty list and then return it.
2020-08-19 09:45:52 -07:00
Brennan a5263d61fb
Support more IAsyncEnumerable types in SignalR (#24926) 2020-08-14 20:42:05 -07:00
Pranav K 1867750ec9
Add nullable annotations to SignalR.Common, SignalR.Core and Http.Connections (#24764)
* Add nullable annotations to  SignalR.Common, SignalR.Core and Http.Connections

Contributes to https://github.com/dotnet/aspnetcore/issues/5680

* Changes per PR comments. Also add nullability to hub protocols
2020-08-14 05:26:03 +00:00
Martin Costello 288bb9622d
Fix test that fails on machine using en-GB (#24704)
Fix test that fails due to the month and date being swapped when run on a machine configured to use UK English.
2020-08-13 13:56:08 -07:00
Levi Broderick bbf7c8780c
Clean up some usage of SHA1 and SHA256 in the code base (#24696)
* AntiForgery: Use SHA256 one-shot

* AuthN: Use SHA256 one-shot APIs

* MVC/Razor: Cleanup SHA256 references

* WebSockets: Use SHA1 one-shots

* dotnet-openapi: Use preferred SHA256 factory

* SignalR: Prefer RNG.Fill over RNG.GetBytes
2020-08-10 14:26:41 -07:00
Doug Bunting b1921f38bc
Merge remote-tracking branch 'origin/release/5.0-preview8' into 'master' 2020-07-17 15:03:15 -07:00
Doug Bunting 5266918ed2
Use Roslyn to create ref/ assemblies (#23403)
* Remove all ref/ projects

* Remove GenAPI infrastructure

* Remove notion of a reference assembly project
  - remove `$(IsReferenceAssemblyProject)`, `$(ReferenceReferenceAssemblies)` and `$(ReferenceImplementationAssemblies)`
    - remove unnecessary `$(NoWarn)` settings

nits:
- remove a few misleading comments
- wrap some long lines

* Move .0 package version workaround into Versions.props
  - touch up SharedFramework.External.props

* Expose `%(LatestPackageReference.RTMVersion)` metadata
  - automate use of properties in the `@(LatestPackageReference)` item group to make this maintainable
    - add a couple of special cases at the bottom of eng/Dependencies.props
    - add one more `$(...PackageVersion)` property to avoid yet-another special case

* Enable Roslyn reference assemblies
  - exclude ref/ assembly from packages other than targeting pack
  - update Microsoft.AspNetCore.App.Ref.csproj
    - `%(IsReferenceAssembly)` and `%(ReferenceGrouping)` metadata no longer relevant
    - only ref/ assemblies are in `@(ReferencePathWithRefAssemblies)` item group

nits:
  - remove now-unnecessary workaround
    - issues with TFM transition are behind us
  - clean up Microsoft.AspNetCore.App.Runtime.csproj slightly
    - use `GeneratePathProperty="true"`
        - reorder item / property settings for meta-expansion
    - correct spelling errors and phrasing in comments

* Update documentation to reflect recent changes
  - remove CrossRepoBreakingChanges.md; was tied to old TeamCity infrastructure
    - also much less relevant given repo merges
  - adjust details and examples in ReferenceResolution.md
    - reflect repo merges, Dependencies.props changes, and current Maestro++ channels
    - add a few more details e.g. specific files where Version.Details.xml versions are used

* !fixup! Remove another irrelevant doc file

* !fixup! Address PR review suggestions
  - convert a couple of warnings to errors
  - use consistent casing for Microsoft.NETCore.App.Runtime.* packages
  - reduce `%(LatestPackageReference.Version)` metadata special cases
  - add and improve comments e.g.
    - improve comments about `$(*V0PackageVersion)` properties
    - improve placement of comments about item removal in ResolveReferences.targets
    - confirmed `$(*V0PackageVersion)` property list is complete

nits:
- fix solution example in ReferenceResolution.md
- remove item group definition for `@(LatestPackageReference)`
- remove `%(LatestPackageReference.VersionName)` metadata after use; large item group
    - similarly, remove `%(LatestPackageReference.RTMVersion)` when not needed; just complicates `Condition`s

When I squash, I must remember this fixes
- #14801
- dotnet/aspnetcore-internal#2693

* Actually use `%(LatestPackageReference.RTMVersion)` metadata
  - gather RTM package references in a new project
    - a (very) separate project to work around package conflict resolution
    - empty `Test` target works around Arcade's testing approach
  - new target in ResolveReferences.targets updates relevant assembly paths to use the RTM packages
    - done as soon as possible after `ResolvePackageAssets` determines the paths
    - done for all compilation inputs, not just ref/ assemblies
2020-07-17 13:35:17 -07:00
Adrian Wright 2c66f9ee64 fix various minor spelling mistakes 2020-07-16 17:21:30 +01:00
Brennan f6bc908a32
Write default values by default in Json (#23542) 2020-07-06 10:08:55 -07:00
Stephen Halter 71af57fdc0
Remove ConcurrentDictionary in HandshakeProtocol (#23315) 2020-06-25 12:31:38 -07:00
Brennan 38f9b9abdb
[SignalR] Fix new flaky test (#23326) 2020-06-24 17:53:30 -07:00
Brennan dad1ca68d7
Make RequestServices work for cloned longpolling HttpContext (#23014) 2020-06-24 12:29:11 -07:00
Brennan cc15b1bb43
[SignalR] Implement IConnectionLifetimeFeature (#20604) 2020-06-23 22:14:12 -07:00
Brennan a1c226e4f3
[SignalR] Move to generic host (#22602) 2020-06-23 10:46:03 -07:00
Doug Bunting c4c6e25a06
Add missing doc files and cleanup nits (#22931)
* nit: Remove useless `$(HasReferenceAssembly)` settings
  - set in /Directory.Build.targets
    - `true` only in `$(IsAspNetCoreApp)` projects
* nit: Remove useless `$(CompileUsingReferenceAssemblies)` settings
  - no current versioning differences between ref/ and src/ assemblies when targeting default TFM
* Add more `$(GenerateDocumentationFile)` settings
  - increases the number of generated doc files, mostly without problems
- !fixup! correct typo in `DebugProxyHost` doc comments
    - was not generating a doc file before
  - remove previous (ineffective) src/Components/Directory.Build.targets setting
  - nit: remove a duplicate `$(GenerateDocumentationFile)` setting
* nit: Remove useless `$(IsPackable)` settings
  - only analyzers and implementation projects are packable by default
    - main use case for explicit setting is projects shipping only in shared framework
  - conditional setting in src/Mvc/Directory.Build.props just subset logic in /Directory.Build.targets
* nit: Remove useless `$(IsProjectReferenceProvider)` settings
  - only implementation projects are providers by default
* nit: Remove useless `$(IsTestAssetProject)` settings
  - set in src/Mvc/test/WebSites/Directory.Build.props
* !fixup! Looks like `InProcessNewShimWebSite` must compile w/o ref/ assemblies
  - restore `$(CompileUsingReferenceAssemblies)` in this one project
2020-06-17 13:04:45 -07:00
Brennan 49aecc3efe
Use non-generic TaskCompletionSource in SignalR and Kestrel (#22925) 2020-06-15 17:35:19 -07:00
John Luo ef9a3662d6
Also set no-store when we set no-cache in response cache control headers (#22842) 2020-06-11 20:38:54 -07:00
dotnet-maestro[bot] b37ebf51e3
[master] Update dependencies from dotnet/aspnetcore-tooling (#22076)
* Update dependencies from https://github.com/dotnet/aspnetcore-tooling build 20200521.1

Microsoft.AspNetCore.Mvc.Razor.Extensions , Microsoft.AspNetCore.Razor.Language , Microsoft.CodeAnalysis.Razor , Microsoft.NET.Sdk.Razor
 From Version 5.0.0-preview.6.20270.11 -> To Version 5.0.0-preview.6.20271.1

Dependency coherency updates

Microsoft.Extensions.Caching.Abstractions,Microsoft.Extensions.Caching.Memory,Microsoft.Extensions.Configuration.Abstractions,Microsoft.Extensions.Configuration.Binder,Microsoft.Extensions.Configuration.CommandLine,Microsoft.Extensions.Configuration.EnvironmentVariables,Microsoft.Extensions.Configuration.FileExtensions,Microsoft.Extensions.Configuration.Ini,Microsoft.Extensions.Configuration.Json,Microsoft.Extensions.Configuration.UserSecrets,Microsoft.Extensions.Configuration.Xml,Microsoft.Extensions.Configuration,Microsoft.Extensions.DependencyInjection.Abstractions,Microsoft.Extensions.DependencyInjection,Microsoft.Extensions.FileProviders.Abstractions,Microsoft.Extensions.FileProviders.Composite,Microsoft.Extensions.FileProviders.Physical,Microsoft.Extensions.FileSystemGlobbing,Microsoft.Extensions.Hosting.Abstractions,Microsoft.Extensions.Hosting,Microsoft.Extensions.Http,Microsoft.Extensions.Logging.Abstractions,Microsoft.Extensions.Logging.Configuration,Microsoft.Extensions.Logging.Console,Microsoft.Extensions.Logging.Debug,Microsoft.Extensions.Logging.EventSource,Microsoft.Extensions.Logging.EventLog,Microsoft.Extensions.Logging.TraceSource,Microsoft.Extensions.Logging,Microsoft.Extensions.Options.ConfigurationExtensions,Microsoft.Extensions.Options.DataAnnotations,Microsoft.Extensions.Options,Microsoft.Extensions.Primitives,Microsoft.Extensions.Internal.Transport,Microsoft.Win32.Registry,Microsoft.Win32.SystemEvents,System.ComponentModel.Annotations,System.Diagnostics.EventLog,System.Drawing.Common,System.IO.Pipelines,System.Net.Http.WinHttpHandler,System.Net.WebSockets.WebSocketProtocol,System.Reflection.Metadata,System.Runtime.CompilerServices.Unsafe,System.Security.Cryptography.Cng,System.Security.Cryptography.Pkcs,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.ServiceProcess.ServiceController,System.Text.Encodings.Web,System.Text.Json,System.Threading.Channels,System.Windows.Extensions,Microsoft.Extensions.DependencyModel,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64,Microsoft.NETCore.App.Internal,Microsoft.NETCore.Platforms
 From Version 5.0.0-preview.6.20264.1 -> To Version 5.0.0-preview.6.20270.12 (parent: Microsoft.AspNetCore.Razor.Language

* React to changes

* Update dependencies from https://github.com/dotnet/aspnetcore-tooling build 20200521.3

Microsoft.AspNetCore.Mvc.Razor.Extensions , Microsoft.AspNetCore.Razor.Language , Microsoft.CodeAnalysis.Razor , Microsoft.NET.Sdk.Razor
 From Version 5.0.0-preview.6.20270.11 -> To Version 5.0.0-preview.6.20271.3

Dependency coherency updates

Microsoft.Extensions.Caching.Abstractions,Microsoft.Extensions.Caching.Memory,Microsoft.Extensions.Configuration.Abstractions,Microsoft.Extensions.Configuration.Binder,Microsoft.Extensions.Configuration.CommandLine,Microsoft.Extensions.Configuration.EnvironmentVariables,Microsoft.Extensions.Configuration.FileExtensions,Microsoft.Extensions.Configuration.Ini,Microsoft.Extensions.Configuration.Json,Microsoft.Extensions.Configuration.UserSecrets,Microsoft.Extensions.Configuration.Xml,Microsoft.Extensions.Configuration,Microsoft.Extensions.DependencyInjection.Abstractions,Microsoft.Extensions.DependencyInjection,Microsoft.Extensions.FileProviders.Abstractions,Microsoft.Extensions.FileProviders.Composite,Microsoft.Extensions.FileProviders.Physical,Microsoft.Extensions.FileSystemGlobbing,Microsoft.Extensions.Hosting.Abstractions,Microsoft.Extensions.Hosting,Microsoft.Extensions.Http,Microsoft.Extensions.Logging.Abstractions,Microsoft.Extensions.Logging.Configuration,Microsoft.Extensions.Logging.Console,Microsoft.Extensions.Logging.Debug,Microsoft.Extensions.Logging.EventSource,Microsoft.Extensions.Logging.EventLog,Microsoft.Extensions.Logging.TraceSource,Microsoft.Extensions.Logging,Microsoft.Extensions.Options.ConfigurationExtensions,Microsoft.Extensions.Options.DataAnnotations,Microsoft.Extensions.Options,Microsoft.Extensions.Primitives,Microsoft.Extensions.Internal.Transport,Microsoft.Win32.Registry,Microsoft.Win32.SystemEvents,System.ComponentModel.Annotations,System.Diagnostics.EventLog,System.Drawing.Common,System.IO.Pipelines,System.Net.Http.WinHttpHandler,System.Net.WebSockets.WebSocketProtocol,System.Reflection.Metadata,System.Runtime.CompilerServices.Unsafe,System.Security.Cryptography.Cng,System.Security.Cryptography.Pkcs,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.ServiceProcess.ServiceController,System.Text.Encodings.Web,System.Text.Json,System.Threading.Channels,System.Windows.Extensions,Microsoft.Extensions.DependencyModel,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64,Microsoft.NETCore.App.Internal,Microsoft.NETCore.Platforms
 From Version 5.0.0-preview.6.20264.1 -> To Version 5.0.0-preview.6.20270.12 (parent: Microsoft.AspNetCore.Razor.Language

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Pranav K <prkrishn@hotmail.com>
2020-05-22 01:57:56 +00:00
Pranav K 99781d3b25
Share SignalR's HubProtocol implementation in Blazor (#20922) 2020-04-18 10:07:51 -07:00
David Fowler 812dfb97d3
Fix TimerAwaitable rooting (#20937)
* Fix TimerAwaitable rooting
- This fixes an issue where components that use timer awaitable currently need to be explicitly stopped and disposed for it to be unrooted. This makes it possible to write a finalizer.
2020-04-17 19:05:44 -07:00
John Luo 8fac70750e
Merge pull request #20421 from dotnet/johluo/migrate-more-extensions-logging
Johluo/migrate more extensions logging
2020-04-03 11:49:22 -07:00
Andrew Stanton-Nurse dee14b7eb5
fix #13651 by logging serialization failures as error (#20116) 2020-04-02 23:41:34 -07:00
TeBeCo c01c8dd476
Changing msgpack options (#20031) 2020-04-02 17:41:40 -07:00
John Luo fcb23108b6 Relocate Logging.Testing to AspNetCore.Testing 2020-04-02 00:16:01 -07:00
Brennan 58db57be4c
Plumb a clock interface through SignalR for testing (#19311) 2020-03-31 13:52:10 -07:00
Andrew Stanton-Nurse 0d80ffa6cd
Fix #10756 by removing some previously-obsoleted SignalR methods (#20015)
* fixes #10756 by removing previously-obsoleted APIs in SignalR

* update reference assemblies

* missed a ref

* think I fixed the test
2020-03-23 20:26:39 +00:00
TeBeCo d3e10b7def
Adding reference to MessagePackAnalyzer to check for MsgPack001 / MsgPack002 (Banned API) (#19989) 2020-03-19 16:05:45 -07:00
John Luo d2b67cad82 Feedback 2020-03-06 12:42:42 -08:00
John Luo f05e019271
Merge branch 'master' into johluo/migrate-logging-testing 2020-03-04 22:17:06 -08:00
John Luo c181547864 Migration fixup for Logging.Testing 2020-03-04 22:10:12 -08:00
Andrew Stanton-Nurse e65408a36c
unquarantine a pile of long-passing tests (#19440) 2020-02-28 19:02:58 +00:00
Brennan 1ea10f68fc
Create WindowsPrincipal when cloning WindowsIdentity for SignalR (#19337) 2020-02-26 09:54:24 -08:00
Brennan d5cf36acc7
[TS Client] Test message size (#15099) 2020-02-25 15:52:48 -08:00
Maher Jendoubi 1a4dbb7cc5
Contributing: fixed some typos (#18494)
* Contributing: fixed some typos

* Spotted another typo

* this will cause a breaking change

* made DefaultDisconetTimout readonly

* made ConnectionOptionsSetup class internal

* Revert "made ConnectionOptionsSetup class internal"

This reverts commit 90f94d257bf5c953415c2f581f0a24a6f9bd51f6.

* Update HttpConnectionDispatcher.Log.cs

* Apply suggestions from code review

Co-authored-by: Brennan <brecon@microsoft.com>
2020-02-25 02:11:17 +00:00
John Luo a5fc9defc4 Regenerate ref assemblies 2020-02-20 16:53:07 -08:00
John Luo 5f9f1ce183 Merge branch 'master' into johluo/migrating-extensions 2020-02-20 16:44:06 -08:00
John Luo 7d1f5d8c0b Updates for extensions migrations
- Multi-target ObjectPool
- Move Embedded.Manifest.Task.Internal.Entry to the public namespace
- Remove ref assemblies from AspNetCore.Testing
- Skip TestPathUtilitiesTest since it's a pattern we want to migrate away from
- Fix FileProviders.Abstractions version in Embedded.*.nuspec
- Add workarounds for project references to FileProviders.Embedded
2020-02-20 14:00:29 -08:00
Doug Bunting c2ee4ae820
Re-enable source build job
- change ref/ projects to build only the default TFM during source builds
  - avoid errors restoring packages like Microsoft.BCL.AsyncInterfaces
  - may also speed up source builds slightly
2020-02-19 22:46:22 -08:00
Brennan Conroy 2d066dcd3e Apply some fixes 2020-02-19 14:18:29 -08:00
Stephen Halter 88073f86ff Merge branch 'release/3.1' into master 2020-02-18 13:46:51 -08:00
Doug Bunting a6c43b14a1
Mark AspNetCore projects that aren't packaged explicitly (#18767)
* Mark AspNetCore projects that aren't packaged explicitly
- avoid NU5104 warnings due to confusing versioning
- `$(IsShippingPackage)` was semantically incorrect in any case

* Remove redundant `$(IsShippingPackage)` settings in `$(IsAspNetCoreApp)` projects
- default is `true` for all implementation projects

* Use `$(IsPackable)` when deciding how `$(IsAspNetCoreApp)` projects are handled
- remove all use of `$(IsShippingPackage)` for shared framework composition
- update documentation to match these changes

nits:
- remove odd default for `$(IsPackable)` in Directory.Build.targets
  - no longer relevant since all `$(IsAspNetCoreApp)` projects are `$(IsShippingPackage)` too
- include more information in docs/ProjectProperties.md

* Add direct System.Text.Json references
- avoid MSB3277 warnings
2020-02-13 15:51:27 -08:00
Brennan f798a68f2d
Update MessagePack version (#18726) 2020-02-03 22:14:37 +00:00
Andrew Stanton-Nurse 36267e8baf
More quarantining (#18698)
* quarantine more

* actually quarantine signalr test

* more quarantining
2020-02-03 21:51:26 +00:00
Brennan 358c84c4d2
Test cleanup and fixes (#18666) 2020-01-30 22:13:41 -08:00