Nikolaj Geisle
2009f7585b
Fix last build errors
2022-02-24 15:28:41 +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
Paul Johnson
2ead758a99
Update to npoco5
2022-01-18 15:23:53 +00:00
Bjarke Berg
fed6eaa03d
Avoid breaking changes from merge.
2021-10-04 11:48:24 +02:00
Ronald Barendse
81cbbd8614
Add LocalDB database option to installer
2021-09-17 12:50:25 +02:00
Shannon
769f24aaae
Fixes reading connection strings after install
...
The issue was discovered when testing Umbraco Id. If you have an existing install and there is a pending Umbraco migration (upgrade), but you clear out the connection string to force a new install screen, fill out the existing connection string details, it all works and redirects to the back office. This will throw exceptions because the runtime state is in an upgrade state (which is fixed in #11064 ) but if you then logout and try to log in with an active OAuth provider, it means there is a redirect outside of Umbraco and back again and you'll end up back on the installer screen - but it will not show you the upgrade screen, instead it shows you the normal install screen. This is because we are not using IOptionsMonitor for connection string settings which means it's already read the original empty connection string setting fom the very beginning and isn't reading the current/updated value.
We need to review all IOptions usages. Most of them should be IOptionsMonitor unless its impossible to change the app behavior at runtime with a particular config option.
2021-09-09 13:15:11 -06:00
Ronald Barendse
ee2da5b8ca
Merge branch 'v8/8.17' into v9/feature/merge_v8.17-rc
2021-09-07 12:10:58 +02:00
Shannon
bc84ffe260
Changes all collections from collection builders to resolve the concrete instances lazily.
...
This means we don't have to inject Lazy<T> all over the place when dealing with
colleciton builders and circular references since this will automatically just work OOTB.
This in theory should also allocate less instances during startup.
2021-07-12 15:28:46 -06:00
Bjarke Berg
e379a8fd44
Update src/Umbraco.Infrastructure/Persistence/UmbracoDatabaseFactory.cs
2021-07-06 21:20:31 +02:00
Bjarke Berg
641530df14
Introduced IProviderSpecificMapperFactory, to allow some NPoco mappers to only be applied for specific providers, e.g. SqlCe and the SqlCEImageMapper
2021-07-05 08:24:44 +02:00
Shannon
72671dbca8
Merge commit '94d525d88f713b36419f28bfda4d82ee68637d83' into v9/dev
...
# Conflicts:
# build/NuSpecs/UmbracoCms.Web.nuspec
# src/Umbraco.Core/Composing/Current.cs
# src/Umbraco.Core/Persistence/NPocoDatabaseExtensions-Bulk.cs
# src/Umbraco.Core/Runtime/CoreRuntime.cs
# src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs
# src/Umbraco.Infrastructure/Persistence/NPocoDatabaseExtensions.cs
# src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs
# src/Umbraco.Persistence.SqlCe/SqlCeSyntaxProvider.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/BTree.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/ContentCacheDataModel.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/ContentCacheDataSerializationResult.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/ContentCacheDataSerializerEntityType.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/ContentData.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/ContentNestedData.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/CultureVariation.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/IContentCacheDataSerializer.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/IContentCacheDataSerializerFactory.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/IDictionaryOfPropertyDataSerializer.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/JsonContentNestedDataSerializer.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/JsonContentNestedDataSerializerFactory.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/LazyCompressedString.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/MsgPackContentNestedDataSerializer.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/MsgPackContentNestedDataSerializerFactory.cs
# src/Umbraco.PublishedCache.NuCache/DataSource/PropertyData.cs
# src/Umbraco.PublishedCache.NuCache/NuCacheSerializerComponent.cs
# src/Umbraco.PublishedCache.NuCache/NuCacheSerializerComposer.cs
# src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentTypeServiceVariantsTests.cs
# src/Umbraco.Tests/App.config
# src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs
# src/Umbraco.Tests/PublishedContent/NuCacheTests.cs
# src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs
# src/Umbraco.Web.UI.NetCore/umbraco/config/lang/da.xml
# src/Umbraco.Web.UI/web.Template.Debug.config
# src/Umbraco.Web.UI/web.Template.config
# src/Umbraco.Web/Composing/ModuleInjector.cs
# src/Umbraco.Web/Editors/NuCacheStatusController.cs
# src/Umbraco.Web/PublishedCache/NuCache/DataSource/ContentNestedData.cs
# src/Umbraco.Web/PublishedCache/NuCache/DataSource/DatabaseDataSource.cs
# src/Umbraco.Web/PublishedCache/NuCache/NuCacheComposer.cs
# src/Umbraco.Web/PublishedCache/NuCache/PublishedSnapshotService.cs
# src/Umbraco.Web/Runtime/WebRuntime.cs
2021-06-24 09:43:57 -06:00
Bjarke Berg
9b2cf8422d
Removed unused ctor (just for tests) + Fixed a couple of handlers that is not intended to execute before runtime level = run.
2021-05-20 13:16:50 +02: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
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
7ab0c61284
Align namespaces in Migrations to Umbraco.Cms.Infrastructure
2021-02-12 12:40:08 +01:00
Mole
dd488a15f4
Move extension methods in core project to Umbraco.Extensions
2021-02-09 13:21:17 +01:00
Mole
216fb87c79
Rename Umbraco.Core namespace to Umbraco.Cms.Core
2021-02-09 10:22:42 +01:00
Bjarke Berg
a54e10bc13
Merge remote-tracking branch 'origin/v8/dev' into netcore/feature/merge-v8-18-01-2021
...
# Conflicts:
# .gitignore
# build/NuSpecs/UmbracoCms.Core.nuspec
# src/SolutionInfo.cs
# src/Umbraco.Core/Configuration/UmbracoSettings/BackOfficeElement.cs
# src/Umbraco.Core/Configuration/UmbracoSettings/ContentElement.cs
# src/Umbraco.Core/Configuration/UmbracoSettings/IBackOfficeSection.cs
# src/Umbraco.Core/Configuration/UmbracoSettings/IContentSection.cs
# src/Umbraco.Core/IO/SystemFiles.cs
# src/Umbraco.Core/Models/ContentBase.cs
# src/Umbraco.Core/Models/Identity/BackOfficeIdentityUser.cs
# src/Umbraco.Core/Persistence/UmbracoDatabaseExtensions.cs
# src/Umbraco.Core/Runtime/CoreRuntime.cs
# src/Umbraco.Core/RuntimeOptions.cs
# src/Umbraco.Core/RuntimeState.cs
# src/Umbraco.Core/Telemetry/TelemetryMarkerComponent.cs
# src/Umbraco.Core/Telemetry/TelemetryMarkerComposer.cs
# src/Umbraco.Examine/Umbraco.Examine.csproj
# src/Umbraco.Infrastructure/HostedServices/ReportSiteTask.cs
# src/Umbraco.Infrastructure/Install/InstallStepCollection.cs
# src/Umbraco.Infrastructure/Install/InstallSteps/NewInstallStep.cs
# src/Umbraco.Infrastructure/Migrations/Install/DatabaseBuilder.cs
# src/Umbraco.Infrastructure/Migrations/Install/DatabaseSchemaCreator.cs
# src/Umbraco.Infrastructure/Runtime/SqlMainDomLock.cs
# src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Persistence/Repositories/ContentTypeRepositoryTest.cs
# src/Umbraco.Tests/Runtimes/CoreRuntimeTests.cs
# src/Umbraco.Tests/Runtimes/StandaloneTests.cs
# src/Umbraco.Tests/Testing/TestDatabase.cs
# src/Umbraco.Web.BackOffice/Controllers/BackOfficeServerVariables.cs
# src/Umbraco.Web.UI.Client/src/installer/steps/database.controller.js
# src/Umbraco.Web.UI.NetCore/Views/Partials/Grid/Editors/TextString.cshtml
# 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/Umbraco/config/lang/cs.xml
# src/Umbraco.Web.UI/config/umbracoSettings.Release.config
# src/Umbraco.Web/Composing/CompositionExtensions/Installer.cs
# src/Umbraco.Web/Editors/PreviewController.cs
# src/Umbraco.Web/Editors/UsersController.cs
# src/Umbraco.Web/JavaScript/PreviewInitialize.js
# src/Umbraco.Web/Telemetry/TelemetryComponent.cs
# src/Umbraco.Web/UmbracoApplication.cs
2021-01-18 16:06:23 +01:00
Paul Johnson
312ab96277
Resolve issues with AdvancedMigrationTests
2020-12-11 19:04:39 +00:00
Paul Johnson
5268f9d7f0
Resolve review comments
2020-11-24 09:37:52 +00:00
Mole
7ad8cd2bf8
Use loggerfactory in both constuctors in UmbracoDatabaseFactory
2020-09-21 08:03:27 +02:00
Mole
d61b9f54fa
Merge options
2020-09-18 12:53:06 +02:00
Nikolaj
120e163682
Begin trying to replace logger in Current
2020-09-16 13:46:45 +02:00
Nikolaj
a18580c7f6
Remove Debug<T> from LoggerExtensions
2020-09-16 10:24:05 +02:00
Bjarke Berg
b4353585c3
Simplifyed the ConnectionStrings config
2020-09-15 09:11:36 +02:00
Andy Butland
f1bda37a64
Updates following PR review.
2020-09-01 18:10:12 +02:00
Andy Butland
2a59a8385c
Merge branch 'netcore/netcore' into feature/8651-config-options-patten
...
# Conflicts:
# src/Umbraco.Tests.Common/Builders/GlobalSettingsBuilder.cs
# src/Umbraco.Tests/TEMP/DatabaseContextTests.sdf
# src/Umbraco.Web.BackOffice/Controllers/ImagesController.cs
2020-08-27 09:03:01 +02:00
Bjarke Berg
3d55dcd3c4
Merge remote-tracking branch 'netcore/dev' into netcore/netcore
2020-08-26 08:05:15 +02:00
Andy Butland
8fd59d546e
Fixed failing tests.
2020-08-26 07:55:23 +02:00
Andy Butland
510bd92e78
Amended injection of further settings to use IOptionsSnapshot.
2020-08-21 14:52:47 +01:00
Shannon
9ed925941f
Gets DB installation test working with runtime level checking
2020-03-30 17:25:29 +11:00
Bjarke Berg
f671fea998
NetCore: Refactor config/setting to not use dependencies ( #7810 )
...
* Avoid usage of IOHelper in GlobalSettings
* Avoid usage of IOHelper in ModelsBuilderConfig.cs
* Avoid usage of IOHelper in ConnectionStrings.cs
* Simplified more config
* Fix for ModelsBuilderConfig
* Moved GetUmbracoMvcAreaNoCache to IOHelperExtensions
2020-03-17 16:26:56 +01:00
Shannon
c18b6e6c82
Don't eagerly create an IBulkSqlInsertProvider (fixes install boot), this is now created with the IDbProviderFactoryCreator which simplifies a bunch of ctors.
2020-01-15 13:40:35 +11:00
Bjarke Berg
70adb70afd
Bugfix
2019-12-12 13:49:17 +01:00
Bjarke Berg
d36ff6d509
Refactored such that the a IBulkSqlInsertProvider can be used, to diff. between SqlCe and SqlServer
2019-12-12 12:55:17 +01:00
Bjarke Berg
2574811b58
Handle SqlCE outside of core/abstractions
2019-12-12 09:09:26 +01:00
Bjarke Berg
c94b65d76b
Moved scope and persistence
2019-12-12 08:11:23 +01:00