Commit Graph

69 Commits

Author SHA1 Message Date
Bjarke Berg
5636d4baf7 Fixed namespace that was original an incorrect merge from v8 to v9 (#12347) 2022-05-04 08:10:27 +02:00
Paul Johnson
95aa143db0 v10 make migration from v9 less painful WRT IScope (#12293)
* Restore IEventDispatcher

* Fix breaking changes WRT IScopeProvider and IScope

* Update internal usage.

* Update src/Umbraco.Core/Services/UserService.cs

* Better obsolete message

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
2022-04-26 10:22:37 +01:00
Nikolaj Geisle
b5e4f3b982 fix missing change 2022-03-17 11:16:12 +01:00
Nikolaj Geisle
f78b62fcb6 Fix all build errors 2022-03-17 09:44:45 +01:00
Nikolaj Geisle
34471e35ce Fix some of the build errors after merge 2022-03-17 09:14:12 +01:00
Nikolaj Geisle
214bcceffc Merge v10/dev into infrastructure 2022-03-16 14:39:28 +01:00
Paul Johnson
3961c4c233 v10 SQLite support + distributed locking abstractions (#11922)
* Created Persistence.SQLite project skeleton.

* SQLite database initialization

* Various changes and hacks to make things work.

* WIP integration tests

* Fix thread safety tests

* Fix tests that relied on tie breaker sorting.

Spent a fair amount of time looking for a less lazy fix but gave up.

* Convert right join to left join ContentTypeRepository.PerformGetByQuery
SQLite doesn't support right join

* Fix test Can_Generate_Delete_SubQuery_Statement

Worth noting that NPoco.DatabaseTypes.SQLiteDatabaseType doesn't override
EscapeSqlIdentifier so NPoco will escape with [].

SQLite docs say > "A keyword enclosed in square brackets is an identifier.
This is not standard SQL.
This quoting mechanism is used by MS Access and SQL Server and is
included in SQLite for compatibility."

Also could have updated SqliteSyntaxProvider to match npoco but
decided against it.

* Fixes for paginated custom order by

* Fix tests broken by lack of unique indexes.

* Fix SqlServerTableByTableTest tests.

These tests didn't actually do anything as the tables already exist so schema creator just returned.

Did however point out that the default implementation for DoesTableExist just returns false so added a default naive implementation.

* Fix ValidateLoginSession - SelectTop must come later

* dry up database cleanup

* Fix up db migration tests.
We can't drop pk in sqlite without recreating table.
Test looks to be testing that add column works as intended which we can test.

* Prevent schema creation errors.

* SQLite ignore lock tests, WAL back on.

* Fix package schema tests

* Fix NPocoFetchTests - case sensitivity not under test

* Fix AdvancedMigrationTests (where possible)

Migrations probably need a good look later.
Maybe nuke old migrations and only support moving to v10 from v9.

If we do that can do some cleanup.

* Cleanup test database configuration

* Run integration tests against SQLite on build agent.

* Drop MS.Data.SQLite
System.Data.SQLite was quicker to roll out due to more CLR type mapping

* YAML

* Skip Umbraco.Tests.Integration.SqlCe

* Drop SqlServerTableByTable tests.

Until this week they did nothing anyway as they with NewSchemaPerTest
so the tests all passed as CreateTable was no op (already exists).

Also all of the tables are created in an empty database by SchemaValidationTest.cs
DatabaseSchemaCreation_Produces_DatabaseSchemaResult_With_Zero_Errors

* Might aswell run against macOS also.

* Copy azure pipelines task header layout

* Delete SQLCe projects

* Remove SQL CE specific code.

* Remove SQL CE NuSpec, template params, build script setup

* Delete umbraco-netcore-only.sln

* Add SkipTests solution configuration and use for codeql

* Remove reference to deleted nuspec file.

* Refactor ConnectionStrings WRT DataDirectory placeholder & ProviderName.

At this point you can try out SQLite support by setting the following
in appsettings.json and then completing the install process.

"ConnectionStrings": {
  "umbracoDbDSN": "Data Source=|DataDirectory|/umbraco.sqlite",
  "umbracoDbDSN_ProviderName": "System.Data.SQLite"
},

Not currently possible via installer UI without provider name pre-set in
configuration.

* Switch to Microsoft.Data.Sqlite

Some gross hacks but will be good to find out if this works
with apple silicon.

* Enable selection of SQLite via installer UI (also quick install)

* Remove SqlServerDbProviderFactoryCreator to cleanup a TODO

* Move SQL Server support to its own class library

* Add persistence dependencies to Umbraco.CMS metapackage

* Bugfix packages delete query

Created invalid query for SQLite.

* Try out cypress tests Linux + SQLite

* Prevent cypress test artifact upload failure on attempt 2+

* LocalDb bugfixes

* Drop redundant enum

* Move SqlClient constant

* Misc whitespace

* Remove IsSqlCe extension (TODO: drop non 9->10 migrations later).

* Umbraco.Persistence.* -> Umbraco.Cms.Persistence.*

* Display quick install defaults and per provider default database name.

* Misc remove old comment

* little re-arrange

* Remove almost all usages of IsSqlite extension.

* visual adjustments

* Custom Database Configuration is last step and should then say Install.

* use text instead of disabled inputs

* move legend, rename to Install

* Update SqlMainDomLock to work without distributed locks.

* Added IDistributedLockingMechanism interface and in memory impl.

* Drop locking from ISqlSyntaxProvider & wire up scope to abstraction.

* Added SqlServerDistributedLockingMechanism

* Move distributed locking interfaces and exceptions to Core + xmldocs.

* Fix tests, Misc cleanup, Add SQL distributed locking integration tests

* Provide mechanism to specify DistributedLockingMechanism in config
(even if added by composer)

* Nomplementation -> NoImplementation

* Fix misleading comment

* Integration tests use SqlServerDistributedLockingMechanism when possible

* Handle up-gradable locks SqlServerDistributedLockingMechanism.
TODO: InMemoryDistributedLockingMechanism.

Note: Nuked SqlServerDistributedLockingMechanismTests, will still sleep
at night.
Is covered by Umbraco.Cms.Tests.Integration.Umbraco.Infrastructure.Persistence.LockTests

* Make tests pass for InMemoryDistributedLockingMechanism, pretty hacky.

* Tweak constraints on WithCollectionBuilder so i can drop bad constructor

* Added SqliteDistributedLockingMechanism

* Dropped InMemoryDistributedMechanism + magic

InMemoryDistributedMechanism was pretty rubbish and now we have
a decent implementation for SQLite as we no longer block readers
see 8d1f42b.

Also drop the CollectionBuilder setup, instead do the same as we do
for syntax providers etc, it's more automagical so we never require an
explicit selection although we are allowing for it.

However keeping the optional IUmbracoBuilder constructor param for
CollectionBuilders as it's extremely useful.

* Fix quick install "" database name.

* Hide Database Configuration section when a connection string is pre-set.

Doesn't seem worth it to extract db name from connection string.

* Ensure wal test 2+

* Fix logging inconsistencies.

* Ensure in transaction when obtaining locks + no-op the SQLite read lock.

There's no point in running the query just to make a single test pass.

* Fix installer database display names

* Allow SQLite shared cache without losing deferred transactions

* Opt into shared cache for new SQLite databases + fix filename

* Fix misc inconsistency in .gitignore

* Prefer our interceptor interface

* Restore DEBUG_DATABASES code OnConnectionOpened in case it's used.

* Back to private cache.

* Added retry strategy for SQLite + refactor out SQL server specific stuff

* Fix SQL server tests.

* Misc - Orphaned comment, incorrect casing.

* InMemory SQLite test database & turn shared cache back on everywhere.

Co-authored-by: Niels Lyngsø <niels.lyngso@gmail.com>
2022-03-11 17:14:20 +01:00
Nikolaj Geisle
915e68e72e Fix last build errors 2022-02-28 13:14:02 +01:00
Nikolaj Geisle
e7b31a22be Fix scope 2022-02-24 15:44:49 +01:00
Nikolaj Geisle
ed13237177 Fixing more errors with nullable reference types 2022-02-24 09:24:56 +01:00
Nikolaj Geisle
a8cf6ee127 More work on nullable references 2022-02-22 13:35:32 +01:00
Nikolaj Geisle
b442a60403 Start work on nullable-reference types in Infrastructure project 2022-02-18 14:32:51 +01:00
Paul Johnson
eb841a7b98 Remove database properties from IScope 2022-01-13 17:44:40 +00:00
Paul Johnson
4a477c7378 Expose IQuery<T> from ScopeProvider.
So that it can be used without requiring visibility of ISqlContext.
2022-01-13 15:51:30 +00:00
Paul Johnson
8719010e8a Remove unused property from Scope 2022-01-13 10:07:08 +00:00
Paul Johnson
d543dccb27 Attempt to make Scope.RobustExit clearer. 2022-01-13 09:56:08 +00:00
Paul Johnson
3258a676c0 ScopeProvider can create its own logger if required. 2022-01-13 09:31:08 +00:00
Paul Johnson
71ce038330 Scope no longer uses MediaFileManager.
Deleting media via services results in a published MediaDeletedNotification
via scope.Notifications, these are fired on Scope.Complete() and picked up
by the registered handlers.
2022-01-13 09:24:30 +00:00
Paul Johnson
ae2ff856fb Remove IEventDispatcher, it's no longer used. 2022-01-11 17:02:20 +00:00
Bjarke Berg
78dc2d5721 Merge remote-tracking branch 'origin/v9/dev' into v10/dev
# Conflicts:
#	build/azure-pipelines.yml
#	src/Umbraco.Core/Routing/DefaultUrlProvider.cs
#	src/Umbraco.Core/Routing/UrlProviderExtensions.cs
#	src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentRepository.cs
#	src/Umbraco.Infrastructure/Services/Implement/ContentService.cs
#	src/Umbraco.PublishedCache.NuCache/DataSource/BTree.ContentDataSerializer.cs
#	src/Umbraco.PublishedCache.NuCache/Persistence/NuCacheContentRepository.cs
#	src/Umbraco.Web.UI.Client/package-lock.json
#	tests/Umbraco.Tests.AcceptanceTest/package-lock.json
#	tests/Umbraco.Tests.AcceptanceTest/package.json
#	tests/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentServiceTests.cs
2021-11-22 19:43:20 +01:00
Bjarke Berg
14fc4b6e25 Unbreak a breaking change :( 2021-10-29 11:08:40 +02:00
Bjarke Berg
bf5f1364fd Fix build after merge 2021-10-29 10:14:52 +02:00
Nikolaj Geisle
8ce66277ce Updated classes to use IOptionsMonitor or IOptionsSnapshot 2021-09-24 12:45:34 +02:00
Bjarke Berg
f3096c99da Merge remote-tracking branch 'origin/v8/8.17' into v9/feature/merge_v8_14092021
# Conflicts:
#	src/Umbraco.Core/ConfigsExtensions.cs
#	src/Umbraco.Core/Configuration/CoreDebug.cs
#	src/Umbraco.Core/Scoping/ScopeProvider.cs
#	src/Umbraco.Infrastructure/Scoping/Scope.cs
#	src/Umbraco.PublishedCache.NuCache/ContentStore.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/LocksTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/UnitOfWorkTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Scoping/ScopeUnitTests.cs
#	src/Umbraco.Tests/Components/ComponentTests.cs
#	src/Umbraco.Tests/TestHelpers/TestObjects.cs
#	src/Umbraco.Web.UI.Client/package-lock.json
#	src/Umbraco.Web.UI.Client/package.json
#	src/Umbraco.Web/HealthCheck/Checks/Security/BaseHttpHeaderCheck.cs
2021-09-14 11:32:43 +02:00
Mole
6596bcf557 Inject notification publisher from CreateScope 2021-05-20 12:36:57 +02:00
Mole
c9ebaadf23 Netcore: File systems rework (#10181)
* Allow IMediaFileSystem to be replace in the DI, or registered with inner filesystem

* Remove GetFileSystem from Filesystems

It was only used by tests.

* Make MediaFileSystem inherit from PhysicalFileSystem directly

* Remove FileSystemWrapper

* Remove inner filesystem from MediaFileSystem

* Add MediaFileManager and bare minimum to make it testable

* Remove MediaFileSystem

* Fix unit tests using MediaFileManager

* Remove IFileSystem and rely only on FileSystem

* Hide dangerous methods in FileSystems and do some cleaning

* Apply stylecop warnings to MediaFileManager

* Add FilesystemsCreator to Tests.Common

This allows you to create an instance if FileSystems with your own specified IFileSystem for testing purposes outside our own test suite.

* Allow the stylesheet filesystem to be replaced.

* Fix tests

* Don't save stylesheetWrapper in a temporary var

* refactor(FileSystems): change how stylesheet filesystem is registered

* fix(FileSystems): unable to overwrite media filesystem

SetMediaFileSystem added the MediaManager as a Singleton instead of
replacing the existing instance.

* fix(FileSystems): calling AddFileSystems replaces MediaManager

When calling AddFileSystems after SetMediaFileSystem the MediaManager
gets replaced by the default PhysicalFileSystem, so instead of calling
SetMediaFileSystem in AddFileSystems we now call TrySetMediaFileSystem
instead. This method will not replace any existing instance of the
MediaManager if there's already a MediaManager registered.

* Use SetMediaFileSystem instead of TrySet, and rename AddFilesystems to ConfigureFileSystems

Also don't call AddFileSystems again in ConfigureFilesystems

* Don't wrap CSS filesystem twice

* Add CreateShadowWrapperInternal to avoid casting

* Throw UnauthorizedAccessException isntead of InvalidOperationException

* Remove ResetShadowId

Co-authored-by: Rasmus John Pedersen <mail@rjp.dk>
2021-04-27 09:52:17 +02:00
Shannon Deminick
57009be435 Stop allocating arrays for every scope lock (#10172)
This is left over from v8's APIs where we would pass in params int[] but in most cases we are just passing in a single value yet we are then allocating arrays everytime. There's no need to allocate these, it's just extra overhead.
2021-04-22 18:36:45 +02:00
Shannon Deminick
c991e83088 SiteDomainHelper cleanup (#10166)
* Fixes SiteDomainHelper = no more static weirdness and renames it.

* fix build
2021-04-22 12:25:25 +02:00
Bjarke Berg
d55a484c56 Merge remote-tracking branch 'origin/v8/dev' into netcore/dev
# Conflicts:
#	src/SolutionInfo.cs
#	src/Umbraco.Core/Configuration/GlobalSettings.cs
#	src/Umbraco.Core/IO/SystemDirectories.cs
#	src/Umbraco.Core/Runtime/MainDom.cs
#	src/Umbraco.Core/Scoping/ScopeProvider.cs
#	src/Umbraco.Core/Services/IIconService.cs
#	src/Umbraco.Examine.Lucene/UmbracoExamineIndex.cs
#	src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs
#	src/Umbraco.Infrastructure/Scoping/Scope.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/LocksTests.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/LegacyBackgroundTask/BackgroundTaskRunner.cs
#	src/Umbraco.Tests/Scoping/ScopeTests.cs
#	src/Umbraco.Tests/Services/ThreadSafetyServiceTest.cs
#	src/Umbraco.Web.BackOffice/Controllers/BackOfficeServerVariables.cs
#	src/Umbraco.Web.BackOffice/Controllers/IconController.cs
#	src/Umbraco.Web.BackOffice/Services/IconService.cs
#	src/Umbraco.Web.UI.NetCore/umbraco/UmbracoBackOffice/Default.cshtml
#	src/Umbraco.Web/Editors/BackOfficeController.cs
#	src/Umbraco.Web/Editors/BackOfficeModel.cs
#	src/Umbraco.Web/Editors/BackOfficePreviewModel.cs
#	src/Umbraco.Web/Editors/PreviewController.cs
2021-03-19 16:18:32 +01:00
Kenn Jacobsen
98c1fedcd9 Merged with netcore/dev 2021-03-11 10:12:22 +01:00
Bjarke Berg
d81874aee3 Merge remote-tracking branch 'origin/netcore/dev' into netcore/feature/merge-v8-05032021
# Conflicts:
#	src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs
#	src/Umbraco.Infrastructure/Search/ExamineComponent.cs
2021-03-09 09:31:55 +01:00
Shannon
0b6d99c23a oops, forgot commit 2021-03-09 17:50:43 +11:00
Shannon
a07728f8db Starts removing usage of CallContext and some cleanup 2021-03-08 17:08:15 +11:00
Shannon
29901f9ecf minor cleanup 2021-03-08 13:42:51 +11:00
Bjarke Berg
37ed84871a Merge remote-tracking branch 'origin/v8/dev' into netcore/dev
# Conflicts:
#	build/NuSpecs/UmbracoCms.Core.nuspec
#	build/NuSpecs/UmbracoCms.Web.nuspec
#	src/SolutionInfo.cs
#	src/Umbraco.Core/Cache/CacheKeys.cs
#	src/Umbraco.Core/Composing/TypeFinder.cs
#	src/Umbraco.Core/Configuration/GlobalSettings.cs
#	src/Umbraco.Core/Configuration/GlobalSettingsExtensions.cs
#	src/Umbraco.Core/Configuration/IGlobalSettings.cs
#	src/Umbraco.Core/Configuration/UmbracoSettings/ContentElement.cs
#	src/Umbraco.Core/Configuration/UmbracoSettings/ContentSectionExtensions.cs
#	src/Umbraco.Core/Constants-AppSettings.cs
#	src/Umbraco.Core/Editors/UserEditorAuthorizationHelper.cs
#	src/Umbraco.Core/Extensions/StringExtensions.cs
#	src/Umbraco.Core/Extensions/UriExtensions.cs
#	src/Umbraco.Core/IO/IOHelper.cs
#	src/Umbraco.Core/IO/PhysicalFileSystem.cs
#	src/Umbraco.Core/Media/Exif/MathEx.cs
#	src/Umbraco.Core/Media/UploadAutoFillProperties.cs
#	src/Umbraco.Core/Models/Mapping/UserMapDefinition.cs
#	src/Umbraco.Core/Models/Membership/User.cs
#	src/Umbraco.Core/Models/UserExtensions.cs
#	src/Umbraco.Core/Packaging/PackageDefinitionXmlParser.cs
#	src/Umbraco.Core/PropertyEditors/ListViewConfiguration.cs
#	src/Umbraco.Core/PropertyEditors/ValueConverters/MediaPickerValueConverter.cs
#	src/Umbraco.Core/PropertyEditors/ValueConverters/MultiNodeTreePickerValueConverter.cs
#	src/Umbraco.Core/Routing/AliasUrlProvider.cs
#	src/Umbraco.Core/Routing/DefaultUrlProvider.cs
#	src/Umbraco.Core/Routing/UriUtility.cs
#	src/Umbraco.Core/Routing/UrlProviderExtensions.cs
#	src/Umbraco.Core/Runtime/CoreRuntime.cs
#	src/Umbraco.Core/RuntimeOptions.cs
#	src/Umbraco.Core/RuntimeState.cs
#	src/Umbraco.Core/Security/BackOfficeUserStore.cs
#	src/Umbraco.Core/Security/ContentPermissions.cs
#	src/Umbraco.Core/Sync/ApplicationUrlHelper.cs
#	src/Umbraco.Core/Trees/TreeNode.cs
#	src/Umbraco.Core/Udi.cs
#	src/Umbraco.Examine.Lucene/BackOfficeExamineSearcher.cs
#	src/Umbraco.Examine/Umbraco.Examine.csproj
#	src/Umbraco.Infrastructure/Examine/ContentValueSetValidator.cs
#	src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs
#	src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs
#	src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs
#	src/Umbraco.Infrastructure/Scoping/Scope.cs
#	src/Umbraco.Infrastructure/Search/ExamineComponent.cs
#	src/Umbraco.Infrastructure/Security/IdentityMapDefinition.cs
#	src/Umbraco.Infrastructure/Services/Implement/ContentService.cs
#	src/Umbraco.Infrastructure/Services/Implement/MediaService.cs
#	src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs
#	src/Umbraco.Persistence.SqlCe/SqlCeSyntaxProvider.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/LocksTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Models/UserExtensionsTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Editors/UserEditorAuthorizationHelperTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Examine/UmbracoContentValueSetValidatorTests.cs
#	src/Umbraco.Tests/Configurations/UmbracoSettings/ContentElementTests.cs
#	src/Umbraco.Tests/Configurations/UmbracoSettings/umbracoSettings.config
#	src/Umbraco.Tests/TestHelpers/SettingsForTests.cs
#	src/Umbraco.Tests/Testing/TestDatabase.cs
#	src/Umbraco.Tests/Web/Controllers/ContentControllerUnitTests.cs
#	src/Umbraco.Tests/Web/Controllers/FilterAllowedOutgoingContentAttributeTests.cs
#	src/Umbraco.Tests/Web/Controllers/MediaControllerUnitTests.cs
#	src/Umbraco.Web.BackOffice/Controllers/BackOfficeServerVariables.cs
#	src/Umbraco.Web.BackOffice/Controllers/CodeFileController.cs
#	src/Umbraco.Web.BackOffice/Controllers/ContentController.cs
#	src/Umbraco.Web.BackOffice/Controllers/EntityController.cs
#	src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs
#	src/Umbraco.Web.BackOffice/Controllers/MediaController.cs
#	src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs
#	src/Umbraco.Web.BackOffice/Controllers/TourController.cs
#	src/Umbraco.Web.BackOffice/Controllers/UserGroupEditorAuthorizationHelper.cs
#	src/Umbraco.Web.BackOffice/Filters/FilterAllowedOutgoingContentAttribute.cs
#	src/Umbraco.Web.BackOffice/Filters/FilterAllowedOutgoingMediaAttribute.cs
#	src/Umbraco.Web.BackOffice/Mapping/ContentMapDefinition.cs
#	src/Umbraco.Web.BackOffice/Services/IconService.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs
#	src/Umbraco.Web.BackOffice/Trees/FileSystemTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MediaTreeController.cs
#	src/Umbraco.Web.Common/Extensions/FormCollectionExtensions.cs
#	src/Umbraco.Web.UI.Client/src/common/resources/content.resource.js
#	src/Umbraco.Web.UI.Client/src/views/content/overlays/publish.html
#	src/Umbraco.Web.UI.Client/src/views/propertyeditors/grid/editors/media.controller.js
#	src/Umbraco.Web.UI.NetCore/umbraco/config/lang/da.xml
#	src/Umbraco.Web.UI.NetCore/umbraco/config/lang/en.xml
#	src/Umbraco.Web.UI.NetCore/umbraco/config/lang/en_us.xml
#	src/Umbraco.Web.UI/config/umbracoSettings.Release.config
#	src/Umbraco.Web/Cache/MemberCacheRefresher.cs
#	src/Umbraco.Web/Composing/ModuleInjector.cs
#	src/Umbraco.Web/Editors/BackOfficeController.cs
#	src/Umbraco.Web/Editors/Binders/ContentModelBinderHelper.cs
#	src/Umbraco.Web/Editors/ContentTypeController.cs
#	src/Umbraco.Web/Editors/Filters/ContentSaveValidationAttribute.cs
#	src/Umbraco.Web/Editors/Filters/MediaItemSaveValidationAttribute.cs
#	src/Umbraco.Web/Editors/Filters/UserGroupAuthorizationAttribute.cs
#	src/Umbraco.Web/Editors/TinyMceController.cs
#	src/Umbraco.Web/Editors/UserGroupsController.cs
#	src/Umbraco.Web/Editors/UsersController.cs
#	src/Umbraco.Web/ImageCropperTemplateExtensions.cs
#	src/Umbraco.Web/Logging/WebProfiler.cs
#	src/Umbraco.Web/Logging/WebProfilerProvider.cs
#	src/Umbraco.Web/Macros/PublishedContentHashtableConverter.cs
#	src/Umbraco.Web/Mvc/EnsurePublishedContentRequestAttribute.cs
#	src/Umbraco.Web/Mvc/JsonNetResult.cs
#	src/Umbraco.Web/Mvc/MemberAuthorizeAttribute.cs
#	src/Umbraco.Web/Mvc/RenderRouteHandler.cs
#	src/Umbraco.Web/PropertyEditors/MediaPickerPropertyEditor.cs
#	src/Umbraco.Web/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs
#	src/Umbraco.Web/PublishedCache/NuCache/DataSource/DatabaseDataSource.cs
#	src/Umbraco.Web/RoutableDocumentFilter.cs
#	src/Umbraco.Web/Routing/ContentFinderByUrlAlias.cs
#	src/Umbraco.Web/Routing/NotFoundHandlerHelper.cs
#	src/Umbraco.Web/Routing/PublishedRouter.cs
#	src/Umbraco.Web/Runtime/WebInitialComposer.cs
#	src/Umbraco.Web/Scheduling/KeepAlive.cs
#	src/Umbraco.Web/Security/AppBuilderExtensions.cs
#	src/Umbraco.Web/Security/BackOfficeClaimsIdentityFactory.cs
#	src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs
#	src/Umbraco.Web/Trees/DictionaryTreeController.cs
#	src/Umbraco.Web/Trees/LanguageTreeController.cs
#	src/Umbraco.Web/Trees/LogViewerTreeController.cs
#	src/Umbraco.Web/Trees/PackagesTreeController.cs
#	src/Umbraco.Web/UmbracoApplication.cs
#	src/Umbraco.Web/UmbracoApplicationBase.cs
#	src/Umbraco.Web/UmbracoInjectedModule.cs
#	src/Umbraco.Web/WebApi/Filters/AdminUsersAuthorizeAttribute.cs
#	src/Umbraco.Web/WebApi/Filters/CheckIfUserTicketDataIsStaleAttribute.cs
#	src/Umbraco.Web/WebApi/Filters/EnsureUserPermissionForContentAttribute.cs
#	src/Umbraco.Web/WebApi/Filters/EnsureUserPermissionForMediaAttribute.cs
#	src/Umbraco.Web/WebApi/MemberAuthorizeAttribute.cs
2021-03-05 15:36:27 +01:00
Shannon
df333ec8cb Updates scopes in execution context to use a Stack so we know which is the top Scope/Context. Fixes disposing things on end request, fixes ensuring orphaned scopes are disposed at end request. 2021-03-05 15:27:45 +11:00
Kenn Jacobsen
8e745eb13c Create scoped notification publishing - particularly for "ed" notifications that must run after the current scope has completed 2021-03-03 17:11:42 +01:00
Shannon
6ea5dcd540 Fixes up TaskHelper with notes and tests, fixes up lots of other tests and adds more, ensure the exception from Scope is verbose 2021-03-03 13:43:27 +11:00
Shannon
a70a739d62 security accessors should not be hybrid, ensures call context isn't flowed to child set/forget threads, renames TaskHelper and adds a test, removes GenericDictionaryRequestAppCache in favor of HttpContextRequestAppCache that relies on HttpContext and fixes http locks since there was a deadlock problem. Removes SafeCallContext, we just use ExecutionContext.SuppressFlow instead 2021-03-03 10:40:16 +11:00
Shannon
dfc202a6c8 init code cleanup 2021-03-03 09:56:34 +11:00
Mole
815d4fd226 Merge branch 'netcore/dev' into netcore/feature/align-infrastructure-namespaces
# Conflicts:
#	src/Umbraco.Core/Events/QueuingEventDispatcher.cs
#	src/Umbraco.Core/Logging/LogHttpRequestExtension.cs
#	src/Umbraco.Examine.Lucene/BackOfficeExamineSearcher.cs
#	src/Umbraco.Examine.Lucene/ExamineLuceneComposer.cs
#	src/Umbraco.Examine.Lucene/ExamineLuceneFinalComposer.cs
#	src/Umbraco.Examine.Lucene/Extensions/ExamineExtensions.cs
#	src/Umbraco.Examine.Lucene/ILuceneDirectoryFactory.cs
#	src/Umbraco.Infrastructure/Cache/DatabaseServerMessengerNotificationHandler.cs
#	src/Umbraco.Infrastructure/Cache/DefaultRepositoryCachePolicy.cs
#	src/Umbraco.Infrastructure/Cache/DistributedCacheBinder.cs
#	src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs
#	src/Umbraco.Infrastructure/Cache/DistributedCacheExtensions.cs
#	src/Umbraco.Infrastructure/Cache/FullDataSetRepositoryCachePolicy.cs
#	src/Umbraco.Infrastructure/Cache/RepositoryCachePolicyBase.cs
#	src/Umbraco.Infrastructure/Cache/SingleItemsOnlyRepositoryCachePolicy.cs
#	src/Umbraco.Infrastructure/Compose/AuditEventsComponent.cs
#	src/Umbraco.Infrastructure/Compose/BlockEditorComponent.cs
#	src/Umbraco.Infrastructure/Compose/NestedContentPropertyComponent.cs
#	src/Umbraco.Infrastructure/Compose/NestedContentPropertyComposer.cs
#	src/Umbraco.Infrastructure/Compose/NotificationsComponent.cs
#	src/Umbraco.Infrastructure/Compose/PublicAccessComponent.cs
#	src/Umbraco.Infrastructure/Compose/RelateOnCopyComponent.cs
#	src/Umbraco.Infrastructure/Compose/RelateOnTrashComponent.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.Collections.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.CoreServices.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.DistributedCache.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.Installer.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.MappingProfiles.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.Repositories.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.Services.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.Uniques.cs
#	src/Umbraco.Infrastructure/Deploy/IGridCellValueConnector.cs
#	src/Umbraco.Infrastructure/EmailSender.cs
#	src/Umbraco.Infrastructure/Events/MigrationEventArgs.cs
#	src/Umbraco.Infrastructure/Examine/BaseValueSetBuilder.cs
#	src/Umbraco.Infrastructure/Examine/ContentIndexPopulator.cs
#	src/Umbraco.Infrastructure/Examine/ContentValueSetBuilder.cs
#	src/Umbraco.Infrastructure/Examine/ExamineExtensions.cs
#	src/Umbraco.Infrastructure/Examine/IBackOfficeExamineSearcher.cs
#	src/Umbraco.Infrastructure/Examine/IContentValueSetBuilder.cs
#	src/Umbraco.Infrastructure/Examine/IIndexDiagnostics.cs
#	src/Umbraco.Infrastructure/Examine/IPublishedContentValueSetBuilder.cs
#	src/Umbraco.Infrastructure/Examine/IndexRebuilder.cs
#	src/Umbraco.Infrastructure/Examine/MediaIndexPopulator.cs
#	src/Umbraco.Infrastructure/Examine/MediaValueSetBuilder.cs
#	src/Umbraco.Infrastructure/Examine/MemberIndexPopulator.cs
#	src/Umbraco.Infrastructure/Examine/MemberValueSetBuilder.cs
#	src/Umbraco.Infrastructure/Examine/NoopBackOfficeExamineSearcher.cs
#	src/Umbraco.Infrastructure/Examine/PublishedContentIndexPopulator.cs
#	src/Umbraco.Infrastructure/Examine/UmbracoExamineExtensions.cs
#	src/Umbraco.Infrastructure/Examine/UmbracoIndexConfig.cs
#	src/Umbraco.Infrastructure/HostedServices/HealthCheckNotifier.cs
#	src/Umbraco.Infrastructure/HostedServices/LogScrubber.cs
#	src/Umbraco.Infrastructure/HostedServices/ReportSiteTask.cs
#	src/Umbraco.Infrastructure/HostedServices/ScheduledPublishing.cs
#	src/Umbraco.Infrastructure/HostedServices/ServerRegistration/InstructionProcessTask.cs
#	src/Umbraco.Infrastructure/HostedServices/TempFileCleanup.cs
#	src/Umbraco.Infrastructure/IPublishedContentQuery.cs
#	src/Umbraco.Infrastructure/Install/FilePermissionHelper.cs
#	src/Umbraco.Infrastructure/Install/InstallHelper.cs
#	src/Umbraco.Infrastructure/Install/InstallStepCollection.cs
#	src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseConfigureStep.cs
#	src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseInstallStep.cs
#	src/Umbraco.Infrastructure/Install/InstallSteps/DatabaseUpgradeStep.cs
#	src/Umbraco.Infrastructure/Install/InstallSteps/NewInstallStep.cs
#	src/Umbraco.Infrastructure/Install/InstallSteps/StarterKitDownloadStep.cs
#	src/Umbraco.Infrastructure/Logging/Serilog/Enrichers/HttpRequestIdEnricher.cs
#	src/Umbraco.Infrastructure/Logging/Serilog/Enrichers/HttpRequestNumberEnricher.cs
#	src/Umbraco.Infrastructure/Logging/Serilog/LoggerConfigExtensions.cs
#	src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs
#	src/Umbraco.Infrastructure/Logging/Viewer/ILogViewer.cs
#	src/Umbraco.Infrastructure/Logging/Viewer/LogViewerComposer.cs
#	src/Umbraco.Infrastructure/Logging/Viewer/SerilogLogViewerSourceBase.cs
#	src/Umbraco.Infrastructure/Manifest/DashboardAccessRuleConverter.cs
#	src/Umbraco.Infrastructure/Manifest/DataEditorConverter.cs
#	src/Umbraco.Infrastructure/Manifest/ManifestParser.cs
#	src/Umbraco.Infrastructure/Manifest/ValueValidatorConverter.cs
#	src/Umbraco.Infrastructure/Media/ImageDimensionExtractor.cs
#	src/Umbraco.Infrastructure/Migrations/Expressions/Create/Index/CreateIndexBuilder.cs
#	src/Umbraco.Infrastructure/Migrations/Expressions/Delete/KeysAndIndexes/DeleteKeysAndIndexesBuilder.cs
#	src/Umbraco.Infrastructure/Migrations/IMigrationContext.cs
#	src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs
#	src/Umbraco.Infrastructure/Migrations/Install/DatabaseDataCreator.cs
#	src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs
#	src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreatorFactory.cs
#	src/Umbraco.Infrastructure/Migrations/MigrationBase.cs
#	src/Umbraco.Infrastructure/Migrations/MigrationBase_Extra.cs
#	src/Umbraco.Infrastructure/Migrations/MigrationContext.cs
#	src/Umbraco.Infrastructure/Migrations/MigrationPlan.cs
#	src/Umbraco.Infrastructure/Migrations/PostMigrations/ClearCsrfCookies.cs
#	src/Umbraco.Infrastructure/Migrations/PostMigrations/PublishedSnapshotRebuilder.cs
#	src/Umbraco.Infrastructure/Migrations/PostMigrations/RebuildPublishedSnapshot.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/Upgrader.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/AddContentNuTable.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/ConvertRelatedLinksToMultiUrlPicker.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypeMigration.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/DropDownFlexiblePreValueMigrator.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/RenamingPreValueMigrator.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/UmbracoSliderPreValueMigrator.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DataTypes/ValueListPreValueMigrator.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/DropDownPropertyEditorsMigration.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/FallbackLanguage.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/MergeDateAndDateTimePropertyEditor.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/Models/PropertyDataDto80.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/PropertyEditorsMigrationBase.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/RadioAndCheckboxPropertyEditorsMigration.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/TablesForScheduledPublishing.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_0_0/UpdatePickerIntegerValuesToUdi.cs
#	src/Umbraco.Infrastructure/Migrations/Upgrade/V_8_1_0/ConvertTinyMceAndGridMediaUrlsToLocalLink.cs
#	src/Umbraco.Infrastructure/Models/Blocks/BlockEditorData.cs
#	src/Umbraco.Infrastructure/Models/Blocks/BlockEditorDataConverter.cs
#	src/Umbraco.Infrastructure/Models/Blocks/BlockItemData.cs
#	src/Umbraco.Infrastructure/Models/Blocks/BlockListEditorDataConverter.cs
#	src/Umbraco.Infrastructure/Models/Blocks/BlockListLayoutItem.cs
#	src/Umbraco.Infrastructure/Models/Mapping/EntityMapDefinition.cs
#	src/Umbraco.Infrastructure/Models/PathValidationExtensions.cs
#	src/Umbraco.Infrastructure/Packaging/PackageDataInstallation.cs
#	src/Umbraco.Infrastructure/Packaging/PackageInstallation.cs
#	src/Umbraco.Infrastructure/Persistence/DatabaseModelDefinitions/DefinitionFactory.cs
#	src/Umbraco.Infrastructure/Persistence/DatabaseModelDefinitions/IndexColumnDefinition.cs
#	src/Umbraco.Infrastructure/Persistence/DbConnectionExtensions.cs
#	src/Umbraco.Infrastructure/Persistence/Dtos/PropertyDataDto.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/AuditEntryFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/ConsentFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/ContentBaseFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/ContentTypeFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/DataTypeFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/DictionaryItemFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/DictionaryTranslationFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/ExternalLoginFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/LanguageFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/MacroFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/MemberGroupFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/PropertyFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/PropertyGroupFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/PublicAccessEntryFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/RelationFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/RelationTypeFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/ServerRegistrationFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/TagFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/TemplateFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/UserFactory.cs
#	src/Umbraco.Infrastructure/Persistence/Factories/UserGroupFactory.cs
#	src/Umbraco.Infrastructure/Persistence/ISqlContext.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/AccessMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/AuditEntryMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/AuditItemMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/BaseMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/ConsentMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/ContentMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/ContentTypeMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/DataTypeMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/DictionaryMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/DictionaryTranslationMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/DomainMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/ExternalLoginMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/LanguageMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/MacroMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/MapperCollectionBuilder.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/MediaMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/MediaTypeMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/MemberGroupMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/MemberMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/MemberTypeMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/PropertyGroupMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/PropertyMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/PropertyTypeMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/RelationMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/RelationTypeMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/ServerRegistrationMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/SimpleContentTypeMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/TagMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/TemplateMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/UmbracoEntityMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/UserGroupMapper.cs
#	src/Umbraco.Infrastructure/Persistence/Mappers/UserMapper.cs
#	src/Umbraco.Infrastructure/Persistence/NPocoDatabaseExtensions.cs
#	src/Umbraco.Infrastructure/Persistence/NPocoSqlExtensions.cs
#	src/Umbraco.Infrastructure/Persistence/Querying/ExpressionVisitorBase.cs
#	src/Umbraco.Infrastructure/Persistence/Querying/ModelToSqlExpressionVisitor.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IContentRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IContentTypeRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IContentTypeRepositoryBase.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IDataTypeRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IDocumentRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IEntityRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IMediaRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IMediaTypeRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IMemberRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IMemberTypeRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/IPublicAccessRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditEntryRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/AuditRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ConsentRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentRepositoryBase.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeCommonRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepositoryBase.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeContainerRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DataTypeRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DictionaryRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentBlueprintRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DocumentTypeContainerRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/DomainRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityContainerRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityRepositoryBase.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ExternalLoginRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/KeyValueRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/LanguageRepositoryExtensions.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MacroRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeContainerRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaTypeRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberGroupRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberTypeRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/NotificationsRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PartialViewMacroRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PermissionRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/PublicAccessRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RedirectUrlRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RelationTypeRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RepositoryBase.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ServerRegistrationRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/SimilarNodeName.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/SimpleGetRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TagRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/TemplateRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserGroupRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserRepository.cs
#	src/Umbraco.Infrastructure/Persistence/SqlContext.cs
#	src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs
#	src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlSyntaxProviderBase.cs
#	src/Umbraco.Infrastructure/Persistence/SqlSyntaxExtensions.cs
#	src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseExtensions.cs
#	src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs
#	src/Umbraco.Infrastructure/PropertyEditors/BlockEditorPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/BlockListConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/BlockListPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/CheckBoxListPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ColorPickerConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ColorPickerPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ComplexEditorValidator.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ComplexPropertyEditorContentEventHandler.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ConfigurationEditorOfTConfiguration.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ContentPickerConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ContentPickerPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/DateTimeConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/DateTimePropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/DropDownFlexibleConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/DropDownFlexiblePropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/EmailAddressConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/EmailAddressPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyValueEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/GridConfiguration.cs
#	src/Umbraco.Infrastructure/PropertyEditors/GridConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/GridPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/GridPropertyIndexValueFactory.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ImageCropperConfiguration.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ImageCropperConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ImageCropperPropertyValueEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/LabelConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/LabelPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ListViewConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ListViewPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MarkdownConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MarkdownPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MediaPickerConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MediaPickerPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MultiNodePickerConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MultipleTextStringConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MultipleTextStringPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/MultipleValueEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/NestedContentConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/PropertyEditorsComponent.cs
#	src/Umbraco.Infrastructure/PropertyEditors/PropertyEditorsComposer.cs
#	src/Umbraco.Infrastructure/PropertyEditors/RadioButtonsPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/RichTextConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs
#	src/Umbraco.Infrastructure/PropertyEditors/RichTextPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/SliderConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/SliderPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/TagConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/TagsPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/TextAreaConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/TextAreaPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/TextboxConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/TextboxPropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/TrueFalseConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/TrueFalsePropertyEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/UploadFileTypeValidator.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/BlockEditorConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/BlockListPropertyValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ColorPickerValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/FlexibleDropdownPropertyValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/GridValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValue.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/JsonValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/MarkdownEditorValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/MultiUrlPickerValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/NestedContentManyValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/NestedContentSingleValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/NestedContentValueConverterBase.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/RteMacroRenderingValueConverter.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueListConfigurationEditor.cs
#	src/Umbraco.Infrastructure/PropertyEditors/ValueListUniqueValueValidator.cs
#	src/Umbraco.Infrastructure/PublishedContentQuery.cs
#	src/Umbraco.Infrastructure/Routing/ContentFinderByConfigured404.cs
#	src/Umbraco.Infrastructure/Routing/NotFoundHandlerHelper.cs
#	src/Umbraco.Infrastructure/Routing/RedirectTrackingComponent.cs
#	src/Umbraco.Infrastructure/Runtime/CoreRuntime.cs
#	src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs
#	src/Umbraco.Infrastructure/RuntimeState.cs
#	src/Umbraco.Infrastructure/Scoping/IScope.cs
#	src/Umbraco.Infrastructure/Scoping/IScopeProvider.cs
#	src/Umbraco.Infrastructure/Scoping/Scope.cs
#	src/Umbraco.Infrastructure/Scoping/ScopeProvider.cs
#	src/Umbraco.Infrastructure/Scoping/ScopeReference.cs
#	src/Umbraco.Infrastructure/Search/BackgroundIndexRebuilder.cs
#	src/Umbraco.Infrastructure/Search/ExamineComponent.cs
#	src/Umbraco.Infrastructure/Search/ExamineComposer.cs
#	src/Umbraco.Infrastructure/Search/ExamineFinalComponent.cs
#	src/Umbraco.Infrastructure/Search/ExamineUserComponent.cs
#	src/Umbraco.Infrastructure/Search/UmbracoTreeSearcher.cs
#	src/Umbraco.Infrastructure/Security/BackOfficeClaimsPrincipalFactory.cs
#	src/Umbraco.Infrastructure/Security/BackOfficeIdentityUser.cs
#	src/Umbraco.Infrastructure/Security/BackOfficeUserStore.cs
#	src/Umbraco.Infrastructure/Security/IUmbracoUserManager.cs
#	src/Umbraco.Infrastructure/Security/SignOutAuditEventArgs.cs
#	src/Umbraco.Infrastructure/Security/UmbracoIdentityUser.cs
#	src/Umbraco.Infrastructure/Security/UmbracoUserManager.cs
#	src/Umbraco.Infrastructure/Security/UserInviteEventArgs.cs
#	src/Umbraco.Infrastructure/Serialization/ConfigurationEditorJsonSerializer.cs
#	src/Umbraco.Infrastructure/Services/IdKeyMap.cs
#	src/Umbraco.Infrastructure/Services/Implement/AuditService.cs
#	src/Umbraco.Infrastructure/Services/Implement/ConsentService.cs
#	src/Umbraco.Infrastructure/Services/Implement/ContentService.cs
#	src/Umbraco.Infrastructure/Services/Implement/ContentTypeBaseServiceProvider.cs
#	src/Umbraco.Infrastructure/Services/Implement/ContentTypeService.cs
#	src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBase.cs
#	src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTItemTService.cs
#	src/Umbraco.Infrastructure/Services/Implement/ContentTypeServiceBaseOfTRepositoryTItemTService.cs
#	src/Umbraco.Infrastructure/Services/Implement/DataTypeService.cs
#	src/Umbraco.Infrastructure/Services/Implement/DomainService.cs
#	src/Umbraco.Infrastructure/Services/Implement/EntityService.cs
#	src/Umbraco.Infrastructure/Services/Implement/EntityXmlSerializer.cs
#	src/Umbraco.Infrastructure/Services/Implement/ExternalLoginService.cs
#	src/Umbraco.Infrastructure/Services/Implement/FileService.cs
#	src/Umbraco.Infrastructure/Services/Implement/KeyValueService.cs
#	src/Umbraco.Infrastructure/Services/Implement/LocalizationService.cs
#	src/Umbraco.Infrastructure/Services/Implement/MacroService.cs
#	src/Umbraco.Infrastructure/Services/Implement/MediaService.cs
#	src/Umbraco.Infrastructure/Services/Implement/MediaTypeService.cs
#	src/Umbraco.Infrastructure/Services/Implement/MemberGroupService.cs
#	src/Umbraco.Infrastructure/Services/Implement/MemberService.cs
#	src/Umbraco.Infrastructure/Services/Implement/MemberTypeService.cs
#	src/Umbraco.Infrastructure/Services/Implement/NotificationService.cs
#	src/Umbraco.Infrastructure/Services/Implement/PackagingService.cs
#	src/Umbraco.Infrastructure/Services/Implement/PropertyValidationService.cs
#	src/Umbraco.Infrastructure/Services/Implement/PublicAccessService.cs
#	src/Umbraco.Infrastructure/Services/Implement/RedirectUrlService.cs
#	src/Umbraco.Infrastructure/Services/Implement/RelationService.cs
#	src/Umbraco.Infrastructure/Services/Implement/RepositoryService.cs
#	src/Umbraco.Infrastructure/Services/Implement/ScopeRepositoryService.cs
#	src/Umbraco.Infrastructure/Services/Implement/ServerRegistrationService.cs
#	src/Umbraco.Infrastructure/Services/Implement/TagService.cs
#	src/Umbraco.Infrastructure/Services/Implement/UserService.cs
#	src/Umbraco.Infrastructure/Suspendable.cs
#	src/Umbraco.Infrastructure/Sync/BatchedDatabaseServerMessenger.cs
#	src/Umbraco.Infrastructure/Sync/DatabaseServerMessenger.cs
#	src/Umbraco.Infrastructure/Sync/RefreshInstruction.cs
#	src/Umbraco.Infrastructure/Sync/RefreshInstructionEnvelope.cs
#	src/Umbraco.Infrastructure/Sync/ServerMessengerBase.cs
#	src/Umbraco.Infrastructure/TagQuery.cs
#	src/Umbraco.Infrastructure/Trees/TreeRootNode.cs
#	src/Umbraco.Infrastructure/WebAssets/BackOfficeJavaScriptInitializer.cs
#	src/Umbraco.Infrastructure/WebAssets/BackOfficeWebAssets.cs
#	src/Umbraco.Infrastructure/WebAssets/RuntimeMinifierExtensions.cs
#	src/Umbraco.Infrastructure/WebAssets/ServerVariablesParser.cs
#	src/Umbraco.Infrastructure/WebAssets/ServerVariablesParsing.cs
#	src/Umbraco.ModelsBuilder.Embedded/Building/Builder.cs
#	src/Umbraco.ModelsBuilder.Embedded/DependencyInjection/UmbracoBuilderExtensions.cs
#	src/Umbraco.ModelsBuilder.Embedded/ModelsBuilderNotificationHandler.cs
#	src/Umbraco.ModelsBuilder.Embedded/PublishedElementExtensions.cs
#	src/Umbraco.Persistence.SqlCe/SqlCeBulkSqlInsertProvider.cs
#	src/Umbraco.Persistence.SqlCe/SqlCeEmbeddedDatabaseCreator.cs
#	src/Umbraco.Persistence.SqlCe/SqlCeSyntaxProvider.cs
#	src/Umbraco.PublishedCache.NuCache/ContentStore.cs
#	src/Umbraco.PublishedCache.NuCache/DataSource/ContentNestedData.cs
#	src/Umbraco.PublishedCache.NuCache/DependencyInjection/UmbracoBuilderExtensions.cs
#	src/Umbraco.PublishedCache.NuCache/MemberCache.cs
#	src/Umbraco.PublishedCache.NuCache/Persistence/NuCacheContentRepository.cs
#	src/Umbraco.PublishedCache.NuCache/Persistence/NuCacheContentService.cs
#	src/Umbraco.PublishedCache.NuCache/PublishedSnapshotService.cs
#	src/Umbraco.PublishedCache.NuCache/PublishedSnapshotServiceEventHandler.cs
#	src/Umbraco.PublishedCache.NuCache/SnapDictionary.cs
#	src/Umbraco.TestData/LoadTestController.cs
#	src/Umbraco.TestData/UmbracoTestDataController.cs
#	src/Umbraco.Tests.Benchmarks/ModelToSqlExpressionHelperBenchmarks.cs
#	src/Umbraco.Tests.Benchmarks/SqlTemplatesBenchmark.cs
#	src/Umbraco.Tests.Common/Builders/DataTypeBuilder.cs
#	src/Umbraco.Tests.Common/TestHelperBase.cs
#	src/Umbraco.Tests.Common/TestHelpers/MockedValueEditors.cs
#	src/Umbraco.Tests.Common/TestHelpers/SolidPublishedSnapshot.cs
#	src/Umbraco.Tests.Integration/Cache/DistributedCacheBinderTests.cs
#	src/Umbraco.Tests.Integration/DependencyInjection/UmbracoBuilderExtensions.cs
#	src/Umbraco.Tests.Integration/Implementations/TestHelper.cs
#	src/Umbraco.Tests.Integration/TestServerTest/TestAuthHandler.cs
#	src/Umbraco.Tests.Integration/Testing/BaseTestDatabase.cs
#	src/Umbraco.Tests.Integration/Testing/TestUmbracoDatabaseFactoryProvider.cs
#	src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTest.cs
#	src/Umbraco.Tests.Integration/Testing/UmbracoIntegrationTestWithContent.cs
#	src/Umbraco.Tests.Integration/Umbraco.Core/Mapping/ContentTypeModelMappingTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Core/Packaging/PackageDataInstallationTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Migrations/AdvancedMigrationTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/DatabaseBuilderTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/LocksTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/NPocoTests/NPocoBulkInsertTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/NPocoTests/NPocoFetchTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/AuditRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/ContentTypeRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/DictionaryRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/DocumentRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/DomainRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/EntityRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/KeyValueRepositoryTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/LanguageRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/MacroRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/MediaRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/MediaTypeRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/MemberRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/MemberTypeRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/NotificationsRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/PartialViewRepositoryTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/PublicAccessRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/RedirectUrlRepositoryTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/RelationRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/RelationTypeRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/ScriptRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/ServerRegistrationRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/StylesheetRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/TagRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/TemplateRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/UserGroupRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/UserRepositoryTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/SchemaValidationTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/SqlServerTableByTableTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/SyntaxProvider/SqlServerSyntaxProviderTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/UnitOfWorkTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Scoping/ScopeFileSystemsTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Scoping/ScopeTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Scoping/ScopedRepositoryTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/AuditServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/CachedDataTypeServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentEventsTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentServiceEventTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentServicePerformanceTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentServiceTagsTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentTypeServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentTypeServiceVariantsTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/DataTypeServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/EntityServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ExternalLoginServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/LocalizationServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/MacroServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/MediaServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/MediaTypeServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/MemberServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/RedirectUrlServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ThreadSafetyServiceTest.cs
#	src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/UserServiceTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/UmbracoBackOfficeServiceCollectionExtensionsTests.cs
#	src/Umbraco.Tests.Integration/Umbraco.Web.Website/Routing/FrontEndRouteTests.cs
#	src/Umbraco.Tests.UnitTests/AutoFixture/AutoMoqDataAttribute.cs
#	src/Umbraco.Tests.UnitTests/TestHelpers/BaseUsingSqlSyntax.cs
#	src/Umbraco.Tests.UnitTests/TestHelpers/TestHelper.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/BackOffice/BackOfficeClaimsPrincipalFactoryTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Cache/DefaultCachePolicyTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Cache/FullDataSetCachePolicyTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Cache/SingleItemsOnlyCachePolicyTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Components/ComponentTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Composing/TypeLoaderTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Configuration/Models/Extensions/HealthCheckSettingsExtensionsTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Configuration/Models/Validation/HealthChecksSettingsValidatorTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Configuration/NCronTabParserTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/CoreThings/UdiTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Manifest/ManifestParserTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Models/VariationTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/PropertyEditors/BlockEditorComponentTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/PropertyEditors/BlockListPropertyValueConverterTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/PropertyEditors/ColorListValidatorTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/PropertyEditors/ConvertersTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/PropertyEditors/DataValueReferenceFactoryCollectionTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/PropertyEditors/EnsureUniqueValuesValidatorTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/PropertyEditors/MultiValuePropertyEditorTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/PropertyEditors/PropertyEditorValueConverterTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Published/ConvertersTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Published/NestedContentTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Published/PropertyCacheLevelTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/ReflectionUtilitiesTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Core/Scoping/ScopeEventDispatcherTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Examine/UmbracoContentValueSetValidatorTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/HostedServices/HealthCheckNotifierTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/HostedServices/KeepAliveTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/HostedServices/LogScrubberTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/HostedServices/ScheduledPublishingTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/HostedServices/ServerRegistration/InstructionProcessTaskTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/HostedServices/ServerRegistration/TouchServerTaskTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/HostedServices/TempFileCleanupTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Logging/LogviewerTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Media/ImageSharpImageUrlGeneratorTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Migrations/AlterMigrationTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Migrations/MigrationPlanTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Migrations/MigrationTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Migrations/PostMigrationTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Models/PathValidationTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/ContentMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/ContentTypeMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/DataTypeMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/DictionaryMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/DictionaryTranslationMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/LanguageMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/MediaMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/PropertyGroupMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/PropertyTypeMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/RelationMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Mappers/RelationTypeMapperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/NPocoTests/NPocoSqlExtensionsTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/NPocoTests/NPocoSqlTemplateTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/NPocoTests/NPocoSqlTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Querying/ContentTypeRepositorySqlClausesTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Querying/DataTypeDefinitionRepositorySqlClausesTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Querying/ExpressionTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Querying/MediaRepositorySqlClausesTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Querying/MediaTypeRepositorySqlClausesTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Persistence/Querying/QueryBuilderTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Serialization/JsonNetSerializerTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Services/AmbiguousEventTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Services/PropertyValidationServiceTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.ModelsBuilder.Embedded/BuilderTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.PublishedCache.NuCache/SnapDictionaryTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Web.BackOffice/Controllers/UsersControllerTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Web.Common/AngularIntegration/JsInitializationTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Web.Common/AngularIntegration/ServerVariablesParserTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Web.Common/ImageCropperTest.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Web.Common/Macros/MacroParserTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Web.Website/Controllers/SurfaceControllerTests.cs
#	src/Umbraco.Tests/Cache/PublishedCache/PublishedMediaCacheTests.cs
#	src/Umbraco.Tests/Issues/U9560.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/DictionaryPublishedContent.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/LegacyBackgroundTask/BackgroundTaskRunner.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedContentCache.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMediaCache.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedMemberCache.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/PublishedSnapshot.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/SafeXmlReaderWriter.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedContent.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedProperty.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/XmlPublishedSnapshotService.cs
#	src/Umbraco.Tests/LegacyXmlPublishedCache/XmlStore.cs
#	src/Umbraco.Tests/Models/MediaXmlTest.cs
#	src/Umbraco.Tests/Persistence/Mappers/MapperTestBase.cs
#	src/Umbraco.Tests/Persistence/NPocoTests/PetaPocoCachesTest.cs
#	src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs
#	src/Umbraco.Tests/PublishedContent/NuCacheTests.cs
#	src/Umbraco.Tests/PublishedContent/PublishedContentDataTableTests.cs
#	src/Umbraco.Tests/PublishedContent/PublishedContentMoreTests.cs
#	src/Umbraco.Tests/PublishedContent/PublishedContentSnapshotTestBase.cs
#	src/Umbraco.Tests/PublishedContent/PublishedContentTestBase.cs
#	src/Umbraco.Tests/PublishedContent/PublishedContentTests.cs
#	src/Umbraco.Tests/PublishedContent/PublishedMediaTests.cs
#	src/Umbraco.Tests/PublishedContent/PublishedRouterTests.cs
#	src/Umbraco.Tests/PublishedContent/SolidPublishedSnapshot.cs
#	src/Umbraco.Tests/Routing/BaseUrlProviderTest.cs
#	src/Umbraco.Tests/Routing/ContentFinderByAliasTests.cs
#	src/Umbraco.Tests/Routing/ContentFinderByAliasWithDomainsTests.cs
#	src/Umbraco.Tests/Routing/ContentFinderByIdTests.cs
#	src/Umbraco.Tests/Routing/ContentFinderByUrlAndTemplateTests.cs
#	src/Umbraco.Tests/Routing/ContentFinderByUrlTests.cs
#	src/Umbraco.Tests/Routing/ContentFinderByUrlWithDomainsTests.cs
#	src/Umbraco.Tests/Routing/DomainsAndCulturesTests.cs
#	src/Umbraco.Tests/Routing/MediaUrlProviderTests.cs
#	src/Umbraco.Tests/Routing/UrlProviderWithoutHideTopLevelNodeFromPathTests.cs
#	src/Umbraco.Tests/Routing/UrlRoutesTests.cs
#	src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs
#	src/Umbraco.Tests/Scoping/ScopedXmlTests.cs
#	src/Umbraco.Tests/Services/TestWithSomeContentBase.cs
#	src/Umbraco.Tests/TestHelpers/BaseUsingSqlCeSyntax.cs
#	src/Umbraco.Tests/TestHelpers/BaseWebTest.cs
#	src/Umbraco.Tests/TestHelpers/ControllerTesting/AuthenticateEverythingMiddleware.cs
#	src/Umbraco.Tests/TestHelpers/ControllerTesting/TestControllerActivatorBase.cs
#	src/Umbraco.Tests/TestHelpers/Entities/MockedContent.cs
#	src/Umbraco.Tests/TestHelpers/Entities/MockedContentTypes.cs
#	src/Umbraco.Tests/TestHelpers/Entities/MockedMedia.cs
#	src/Umbraco.Tests/TestHelpers/Entities/MockedMember.cs
#	src/Umbraco.Tests/TestHelpers/Entities/MockedPropertyTypes.cs
#	src/Umbraco.Tests/TestHelpers/Stubs/TestLastChanceFinder.cs
#	src/Umbraco.Tests/TestHelpers/Stubs/TestUserPasswordConfig.cs
#	src/Umbraco.Tests/TestHelpers/TestHelper.cs
#	src/Umbraco.Tests/TestHelpers/TestObjects-Mocks.cs
#	src/Umbraco.Tests/TestHelpers/TestObjects.cs
#	src/Umbraco.Tests/TestHelpers/TestWithDatabaseBase.cs
#	src/Umbraco.Tests/Testing/Objects/TestDataSource.cs
#	src/Umbraco.Tests/Testing/UmbracoTestBase.cs
#	src/Umbraco.Tests/UmbracoExamine/EventsTest.cs
#	src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs
#	src/Umbraco.Tests/UmbracoExamine/IndexTest.cs
#	src/Umbraco.Tests/UmbracoExamine/SearchTests.cs
#	src/Umbraco.Tests/Web/PublishedContentQueryTests.cs
#	src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs
#	src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs
#	src/Umbraco.Web.BackOffice/Controllers/BackOfficeServerVariables.cs
#	src/Umbraco.Web.BackOffice/Controllers/ContentController.cs
#	src/Umbraco.Web.BackOffice/Controllers/ContentTypeController.cs
#	src/Umbraco.Web.BackOffice/Controllers/CurrentUserController.cs
#	src/Umbraco.Web.BackOffice/Controllers/EntityController.cs
#	src/Umbraco.Web.BackOffice/Controllers/ExamineManagementController.cs
#	src/Umbraco.Web.BackOffice/Controllers/LogController.cs
#	src/Umbraco.Web.BackOffice/Controllers/LogViewerController.cs
#	src/Umbraco.Web.BackOffice/Controllers/MediaController.cs
#	src/Umbraco.Web.BackOffice/Controllers/MemberController.cs
#	src/Umbraco.Web.BackOffice/Controllers/PreviewController.cs
#	src/Umbraco.Web.BackOffice/Controllers/PublishedSnapshotCacheStatusController.cs
#	src/Umbraco.Web.BackOffice/Controllers/SectionController.cs
#	src/Umbraco.Web.BackOffice/Controllers/TemplateQueryController.cs
#	src/Umbraco.Web.BackOffice/Controllers/UsersController.cs
#	src/Umbraco.Web.BackOffice/DependencyInjection/ServiceCollectionExtensions.cs
#	src/Umbraco.Web.BackOffice/DependencyInjection/UmbracoBuilderExtensions.cs
#	src/Umbraco.Web.BackOffice/Extensions/HtmlHelperBackOfficeExtensions.cs
#	src/Umbraco.Web.BackOffice/Filters/CheckIfUserTicketDataIsStaleAttribute.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficePasswordHasher.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficeSecurityStampValidator.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficeSessionIdValidator.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficeSignInManager.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficeUserManagerAuditer.cs
#	src/Umbraco.Web.BackOffice/Security/ConfigureBackOfficeIdentityOptions.cs
#	src/Umbraco.Web.BackOffice/Security/ExternalSignInAutoLinkOptions.cs
#	src/Umbraco.Web.BackOffice/Security/IBackOfficeSignInManager.cs
#	src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs
#	src/Umbraco.Web.BackOffice/Trees/ApplicationTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentTypeTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/DataTypeTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MediaTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MediaTypeTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MemberTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MemberTypeTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/TemplatesTreeController.cs
#	src/Umbraco.Web.Common/Controllers/PluginController.cs
#	src/Umbraco.Web.Common/DependencyInjection/UmbracoBuilderExtensions.cs
#	src/Umbraco.Web.Common/Extensions/ApplicationBuilderExtensions.cs
#	src/Umbraco.Web.Common/Extensions/ImageCropperTemplateCoreExtensions.cs
#	src/Umbraco.Web.Common/Extensions/ImageCropperTemplateExtensions.cs
#	src/Umbraco.Web.Common/Extensions/UmbracoCoreServiceCollectionExtensions.cs
#	src/Umbraco.Web.Common/Install/InstallApiController.cs
#	src/Umbraco.Web.Common/Install/InstallController.cs
#	src/Umbraco.Web.Common/Middleware/UmbracoRequestLoggingMiddleware.cs
#	src/Umbraco.Web.Common/Middleware/UmbracoRequestMiddleware.cs
#	src/Umbraco.Web.Common/Security/BackOfficeUserManager.cs
#	src/Umbraco.Web.Common/UmbracoHelper.cs
#	src/Umbraco.Web.UI.NetCore/Views/Partials/grid/editors/media.cshtml
#	src/Umbraco.Web.UI.NetCore/umbraco/PartialViewMacros/Templates/Gallery.cshtml
#	src/Umbraco.Web.UI.NetCore/umbraco/PartialViewMacros/Templates/ListChildPagesFromChangeableSource.cshtml
#	src/Umbraco.Web.UI.NetCore/umbraco/PartialViewMacros/Templates/ListImagesFromMediaFolder.cshtml
#	src/Umbraco.Web.UI.NetCore/umbraco/UmbracoBackOffice/AuthorizeUpgrade.cshtml
#	src/Umbraco.Web.UI.NetCore/umbraco/UmbracoBackOffice/Default.cshtml
#	src/Umbraco.Web.UI.NetCore/umbraco/UmbracoBackOffice/Preview.cshtml
#	src/Umbraco.Web.Website/Controllers/SurfaceController.cs
#	src/Umbraco.Web.Website/Controllers/UmbLoginController.cs
#	src/Umbraco.Web.Website/Controllers/UmbLoginStatusController.cs
#	src/Umbraco.Web.Website/Controllers/UmbProfileController.cs
#	src/Umbraco.Web.Website/Controllers/UmbRegisterController.cs
#	src/Umbraco.Web.Website/DependencyInjection/UmbracoBuilderExtensions.cs
#	src/Umbraco.Web.Website/Extensions/PublishedContentExtensions.cs
#	src/Umbraco.Web/Composing/Current.cs
#	src/Umbraco.Web/HttpContextUmbracoContextAccessor.cs
#	src/Umbraco.Web/Macros/MemberUserKeyProvider.cs
#	src/Umbraco.Web/Mvc/PluginController.cs
#	src/Umbraco.Web/Mvc/RenderRouteHandler.cs
#	src/Umbraco.Web/Mvc/RouteDefinition.cs
#	src/Umbraco.Web/Mvc/SurfaceController.cs
#	src/Umbraco.Web/Runtime/AspNetUmbracoBootPermissionChecker.cs
#	src/Umbraco.Web/Security/ActiveDirectoryBackOfficeUserPasswordChecker.cs
#	src/Umbraco.Web/Security/AuthenticationOptionsExtensions.cs
#	src/Umbraco.Web/Security/BackofficeSecurity.cs
#	src/Umbraco.Web/Security/Providers/MembersRoleProvider.cs
#	src/Umbraco.Web/Security/UmbracoMembershipProviderBase.cs
#	src/Umbraco.Web/UmbracoApplication.cs
#	src/Umbraco.Web/UmbracoApplicationBase.cs
#	src/Umbraco.Web/UmbracoContext.cs
#	src/Umbraco.Web/UmbracoContextFactory.cs
#	src/Umbraco.Web/UmbracoDbProviderFactoryCreator.cs
#	src/Umbraco.Web/UmbracoHttpHandler.cs
#	src/Umbraco.Web/UmbracoWebService.cs
#	src/Umbraco.Web/WebApi/UmbracoApiController.cs
#	src/Umbraco.Web/WebApi/UmbracoApiControllerBase.cs
#	src/Umbraco.Web/WebApi/UmbracoAuthorizeAttribute.cs
#	src/Umbraco.Web/WebApi/UmbracoAuthorizedApiController.cs
2021-02-18 14:52:18 +01:00
Mole
bf41c2eeaa Netcore: Align namespaces (#9801)
* Rename Umbraco.Core namespace to Umbraco.Cms.Core

* Move extension methods in core project to Umbraco.Extensions

* Move extension methods in core project to Umbraco.Extensions

* Rename Umbraco.Examine namespace to Umbraco.Cms.Examine

* Move examine extensions to Umbraco.Extensions namespace

* Reflect changed namespaces in Builder and fix unit tests

* Adjust namespace in Umbraco.ModelsBuilder.Embedded

* Adjust namespace in Umbraco.Persistence.SqlCe

* Adjust namespace in Umbraco.PublishedCache.NuCache

* Align namespaces in Umbraco.Web.BackOffice

* Align namespaces in Umbraco.Web.Common

* Ensure that SqlCeSupport is still enabled after changing the namespace

* Align namespaces in Umbraco.Web.Website

* Align namespaces in Umbraco.Web.UI.NetCore

* Align namespaces in Umbraco.Tests.Common

* Align namespaces in Umbraco.Tests.UnitTests

* Align namespaces in Umbraco.Tests.Integration

* Fix errors caused by changed namespaces

* Fix integration tests

* Undo the Umbraco.Examine.Lucene namespace change

This breaks integration tests on linux, since the namespace wont exists there because it's only used on windows.

* Fix merge

* Fix Merge
2021-02-18 11:06:02 +01:00
Mole
48e1ba2127 Align namespaces in Scoping to Umbraco.Cms.Core 2021-02-15 11:41:12 +01:00
Mole
5bd8e32279 Align namespaces in Persistence
Made everything except for repository interface be in the Umbraco.Cms.Infrastructure.Persistence namespace
2021-02-12 13:36:50 +01:00
Mole
88f7abb72e Move Deploy and Events to Umbraco.Cms.Core.*
Also move QueuingEventDispatcher to the core project since it has 0 external references, and could be cut and pasted with 0 errors.
2021-02-12 10:54:42 +01:00
Mole
9e4f05c0e9 Adjust namespaces in the Cache folder
I made these Umbraco.Cms.Core even though they have to reside in infrastructure.
2021-02-12 10:13:56 +01:00
Mole
ade00997bc Adjust namespace in Umbraco.ModelsBuilder.Embedded 2021-02-10 10:34:27 +01:00
Mole
216fb87c79 Rename Umbraco.Core namespace to Umbraco.Cms.Core 2021-02-09 10:22:42 +01:00
Shannon
b20ce5a92e A bunch of cleanup for DI namespaces, ext methods and dist cache classes 2020-12-24 09:50:05 +11:00
Shannon
63ab8ec52c Lots of notes, removes data tokens, 2020-12-10 18:09:32 +11:00