Commit Graph

80 Commits

Author SHA1 Message Date
Paul Johnson
fce97314bd Cherry-pick: support import/export for doc type history cleanup policy (#11708)
* cherry-pick 13a51d32 (V8 History cleanup import/export)

Support import/export for doc type history cleanup policy (#11660)

* Support import/export for doc type history cleanup policy

* Support unset/null history cleanup value

* Resolve issue when api endpoints called without cleanup policy.
noop isn't good enough as map fails for response.

* null conditional vs null coalesce assignment

* Don't overwrite existing policy if omitted in import XML

* Update history cleanup warning and translations

* Change history cleanup alert to infomational styling

* Remove margin around history cleanup config

Co-authored-by: Ronald Barendse <ronald@barend.se>
# Conflicts:
#	src/Umbraco.Core/Models/IContentType.cs
#	src/Umbraco.Core/Packaging/PackageDataInstallation.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs
#	src/Umbraco.Infrastructure/Services/Implement/EntityXmlSerializer.cs
#	src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs
#	src/Umbraco.Tests/Services/Importing/ImportResources.Designer.cs
#	src/Umbraco.Tests/Umbraco.Tests.csproj
#	src/Umbraco.Web.UI/umbraco/config/lang/en.xml
#	src/Umbraco.Web.UI/umbraco/config/lang/en_us.xml
#	src/Umbraco.Web/Models/Mapping/ContentTypeMapDefinition.cs
#	tests/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/Importing/ImportResources.resx
#	tests/Umbraco.Tests.UnitTests/Umbraco.Core/Services/Importing/SingleDocType-WithCleanupPolicy.xml

* Remove namespace aliases

* Update IContentTypeWithHistoryCleanup documentation

Co-authored-by: Ronald Barendse <ronald@barend.se>
2021-12-02 11:37:12 +01:00
Andy Butland
bef1ccedca Exposes the entity containers (folders) created during a package installation in the summary available from the ImportedPackageNotification. (#11303)
* Exposes the entity containers (folders) created during a package installation in the summary available from the ImportedPackageNotification.

* Restored original constructors.

* Refactored to use out parameters for tracking installed entity containers.

* Removed unnecessary variable initialization.
2021-10-06 20:11:06 +02:00
Bjarke Berg
2a29cdc6c6 Allow opt out of import embedded schema file (#11296)
* Introduce an opt-out options from the import of embedded schema files.

* Moved the initialization of the static service provider into CoreRuntime as this runs before the IStartupFilters, and otherwise the static service provider is not available in hosted services. E.g. for migrations

* fix build

* Minor code tidy and naming alignment.

* Update src/Umbraco.Web.UI/Umbraco.Web.UI.csproj

* Removed default installation of starter kit.

Co-authored-by: Andy Butland <abutland73@gmail.com>
2021-10-06 11:13:59 +02:00
Bjarke Berg
d007fa0012 Add folderkeys to package xml. (#11172)
* Add folderkeys to package xml.

* Cleanup

* Use folderKeys to find child

* Fix potential issue with when no folder

* Fixed logic issue.

Co-authored-by: Andy Butland <abutland73@gmail.com>
2021-09-22 23:52:09 +02:00
Andy Butland
fee3d0778a Serializes key for templates in package definition and imports if ava… (#11163) 2021-09-22 18:21:53 +02:00
Bjarke Berg
ee132afa42 Merge pull request #11102 from umbraco/v9/bugfix/packagedatainstallation-macropartialviews
Use IFileService to save macro partial views in package migration
2021-09-21 14:18:36 +02:00
Ronald Barendse
d1207148a8 Update package definition with all installed file paths (stylesheets, scripts, partial views) 2021-09-21 13:29:00 +02:00
Ronald Barendse
a9d8f5fa5b Fix exporting/importing macro partial views using a virtual file path 2021-09-21 11:22:40 +02:00
Ronald Barendse
8b853b17ac Include installed media to package definition on install 2021-09-21 11:11:40 +02:00
Bjarke Berg
39faf63f9c Fixed tryParse 2021-09-15 13:40:08 +02:00
Ronald Barendse
af0f263e3c Fix code formatting 2021-09-14 23:56:49 +02:00
Ronald Barendse
7e7e28f7c7 Use IFileService to save macro partial views 2021-09-14 23:48:24 +02:00
Bjarke Berg
f68717c1c8 Temp commit 2021-09-14 22:13:39 +02:00
Ronald Barendse
e2497d66a8 Refactor IContentTypeBase API to use property group aliases 2021-09-07 20:48:45 +02:00
Ronald Barendse
8ce4993cdc Fix failing tests because of missing property group alias 2021-09-07 14:40:45 +02:00
Ronald Barendse
ee2da5b8ca Merge branch 'v8/8.17' into v9/feature/merge_v8.17-rc 2021-09-07 12:10:58 +02:00
Bjarke Berg
3ac5004d09 Fixed issue:
Did not load media items if the folder was still there but the nested media was deleted/missing

## Testcase:
Add folder to media..

add multiple images into the folder

Create package with the folder and include decendents

Remove one of the items inside the folder + empty recycle bin

Install the package  - Now the missing item is still added (it was not before)
2021-08-10 10:52:26 +02:00
Bjarke Berg
2a3ac1961d Temp commit 2021-08-09 06:28:26 +02:00
Mole
a5ee8566b8 Merge pull request #10655 from umbraco/v9/task/supress-notifications
Remove raiseEvent method parameters and allow suppressing events at the scope level
2021-07-15 09:36:58 +02:00
Shannon Deminick
994e67aeea Merge pull request #10657 from umbraco/v9/task/lazy-collections
Changes all collections from collection builders to resolve the concrete instances lazily.
2021-07-15 03:46:16 +10: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
Shannon
ff9645c289 Updates usages. 2021-07-12 10:20:59 -06:00
Shannon
a72797e8c9 handles xml data consistently between partial views and partial view macros 2021-07-12 10:07:46 -06:00
Shannon
5a1a24556e Gets packaging scripts and partial views working and fixes packaging stylesheets and cleans things up a bit. 2021-07-08 13:11:39 -06:00
Shannon
f7d0e417d6 packages partial views associated with macros. 2021-07-07 16:16:14 -06:00
Shannon
3eb54831cb Remove OriginalMediaPathScheme, changes how we extract the media file path and use that correctly instead of hacks. 2021-07-07 14:36:52 -06:00
Shannon
58a4e600db Pretty much gets zip package format working with media install 2021-07-07 09:41:11 -06:00
Bjarke Berg
f1b91ab35d post merge fixes 2021-06-30 06:59:47 +02:00
Shannon
4b9d2413de add overload to AutomaticPackageMigrationPlan 2021-06-18 13:22:58 -06:00
Shannon
9f02b14a5d Fixes Dictionary packaging to ensure an xml hierarchy 2021-06-16 13:14:28 -06:00
Shannon
095576352b Fixes up Key vs Id, moves tests to correct namespace, fix tests 2021-06-16 11:17:41 -06:00
Shannon
52ce0c8f60 fix automatic migrations to not validate initial state, fixes packaging GUIDs for multiple entities. 2021-06-15 13:49:03 -06:00
Shannon
a187a4ae18 Ensures the GUID for doc types and media types remains consistent for package installation based on what is in the xml. 2021-06-15 11:59:34 -06:00
Shannon
0e5f0304e2 Ensures macros are packaged and used with their GUID 2021-06-15 11:38:24 -06:00
Shannon
b8ac0b7471 Update dictionary package data to use GUID 2021-06-14 15:31:12 -06:00
Shannon
6db0a2e27d Merge branch 'v9/task/package-refactor-startup-checks' of https://github.com/umbraco/Umbraco-CMS into v9/task/package-refactor-startup-checks
# Conflicts:
#	src/Umbraco.Infrastructure/Packaging/AutomaticPackageMigrationPlan.cs
2021-06-14 14:23:42 -06:00
Shannon
10016c74f9 removes old todos and updates AutomaticPackgeMigrationPlan to use getter with backing field. 2021-06-14 14:22:11 -06:00
Bjarke Berg
d7b04cd819 Typo 2021-06-14 12:47:09 +02:00
Shannon
50fd7b1460 fix build 2021-06-11 12:49:18 -06:00
Shannon
1297254cc3 small cleanups 2021-06-11 12:47:35 -06:00
Shannon
daceca54a3 Implements automatic package migrations for package that just declare an xml data manifest. 2021-06-11 10:50:35 -06:00
Shannon
13583514ae Gets embedded package.xml resources able to install from package migration. 2021-06-10 13:06:38 -06:00
Shannon
2114667e65 Gets unattended package migrations working and running 2021-06-10 10:21:58 -06:00
Shannon
144014dc73 Fixes runtime state and boot failed middleware so that it actually runs. Separates out unattended install/upgrade into notification handlers. 2021-06-10 08:06:17 -06:00
Shannon
7a0134fc74 Updates packaging code to take in XDocument instead of a file since we'll not be dealing with files, starts creating expressions for the package migrations scripting. 2021-06-09 16:56:42 -06:00
Shannon
14806bc293 Lots of package code cleanup and removal 2021-06-09 15:18:47 -06:00
Shannon
0f1e7bd647 temp commit of package logic removal 2021-06-09 10:43:57 -06:00
Shannon
bb793422f2 Removes package actions 2021-06-07 17:49:20 -06:00
Bjarke Berg
65b20572b7 V9: Resolve virtual view paths from DataEditorAttribute in DataValueEditor (#10279)
* https://github.com/umbraco/Umbraco-CMS/issues/10265
Resolve virtual view paths from DataEditorAttribute in DataValueEditor + Introduced an IDataValueEditorFactory, so we don't need to inject nested dependencies every time we introduce a new dependency in DataValueEditor..

* Cleanup + xml doc
2021-05-18 12:40:24 +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