From ee6640434c9b21bf8eab55ca543eea97e6767dc3 Mon Sep 17 00:00:00 2001 From: Al3x Zamponi <562324+alexz707@users.noreply.github.com> Date: Tue, 10 Dec 2024 13:17:55 +0100 Subject: [PATCH] Prepare release 2024.4 (#47) * Prepare release * Add quill bundle * Fix GDI * Update 2024.4.md * added quill-bundle to k6 tests * added quill bundle * added upgrade notes * added upgrade notes * added upgrade notes * added upgrade notes * added upgrade notes --------- Co-authored-by: Christian Fasching Co-authored-by: Christian Fasching --- .github/files/bundles.php | 2 + .github/scripts/01-setup-environment.sh | 1 + composer.json | 53 ++++---- doc/02_Platform_Version_Releases/2024.4.md | 43 +++++++ doc/02_Platform_Version_Releases/README.md | 1 + doc/03_Release_Notes/2024.4.md | 140 +++++++++++++++++++++ doc/03_Release_Notes/README.md | 1 + 7 files changed, 215 insertions(+), 26 deletions(-) create mode 100644 doc/02_Platform_Version_Releases/2024.4.md create mode 100644 doc/03_Release_Notes/2024.4.md diff --git a/.github/files/bundles.php b/.github/files/bundles.php index 000d40a..2e90da4 100644 --- a/.github/files/bundles.php +++ b/.github/files/bundles.php @@ -53,6 +53,8 @@ \Pimcore\Bundle\AdminUiClassicLightThemeBundle\PimcoreAdminUiClassicLightThemeBundle::class => ['all' => true], \Pimcore\Bundle\GenericDataIndexBundle\PimcoreGenericDataIndexBundle::class => ['all' => true], \Pimcore\Bundle\CopilotBundle\PimcoreCopilotBundle::class => ['all' => true], + + \Pimcore\Bundle\QuillBundle\PimcoreQuillBundle::class => ['all' => true], ]; diff --git a/.github/scripts/01-setup-environment.sh b/.github/scripts/01-setup-environment.sh index d3ae9f4..f68f1a3 100755 --- a/.github/scripts/01-setup-environment.sh +++ b/.github/scripts/01-setup-environment.sh @@ -88,6 +88,7 @@ docker compose exec -T -- php composer require -W \ pimcore/admin-ui-classic-light-theme-bundle \ pimcore/copilot-bundle \ pimcore/generic-data-index-bundle \ + pimcore/quill-bundle \ pimcore/workflow-automation-integration-bundle docker compose exec -T -- php composer update diff --git a/composer.json b/composer.json index a651c01..b9ba9c2 100644 --- a/composer.json +++ b/composer.json @@ -7,41 +7,42 @@ "php": "~8.2.0 || ~8.3.0" }, "conflict": { - "pimcore/admin-ui-classic-bundle": "<1.6 || > 1.6.99", + "pimcore/admin-ui-classic-bundle": "<1.7 || > 1.7.99", "pimcore/admin-ui-classic-light-theme-bundle": "<1.0 || > 1.0.99", - "pimcore/asset-metadata-class-definitions": "<2.1 || > 2.1.99", + "pimcore/asset-metadata-class-definitions": "<2.2 || > 2.2.99", "pimcore/backend-power-tools-bundle": "<1.2 || > 1.2.99", - "pimcore/copilot-bundle": "<1.2 || > 1.2.99", - "pimcore/customer-management-framework-bundle": "<4.1 || > 4.1.99", - "pimcore/data-hub": "<1.8 || > 1.8.99", - "pimcore/data-hub-file-export": "<2.1 || > 2.1.99", - "pimcore/data-hub-productsup": "<2.1 || > 2.1.99", - "pimcore/data-hub-simple-rest": "<3.0 || > 3.0.99", - "pimcore/data-hub-webhooks": "<1.2 || > 1.2.99", - "pimcore/data-importer": "<1.9 || > 1.9.99", + "pimcore/copilot-bundle": "<1.3 || > 1.3.99", + "pimcore/customer-management-framework-bundle": "<4.2 || > 4.2.99", + "pimcore/data-hub": "<1.9 || > 1.9.99", + "pimcore/data-hub-file-export": "<2.2 || > 2.2.99", + "pimcore/data-hub-productsup": "<2.2 || > 2.2.99", + "pimcore/data-hub-simple-rest": "<3.1 || > 3.1.99", + "pimcore/data-hub-webhooks": "<1.3 || > 1.3.99", + "pimcore/data-importer": "<1.10 || > 1.10.99", "pimcore/data-quality-management-bundle": "<1.2 || > 1.2.99", - "pimcore/direct-edit": "<2.0 || > 2.0.99", - "pimcore/ecommerce-framework-bundle": "<1.2 || > 1.2.99", + "pimcore/direct-edit": "<2.1 || > 2.1.99", + "pimcore/ecommerce-framework-bundle": "<1.3 || > 1.3.99", "pimcore/file-explorer-bundle": "<1.0 || > 1.0.99", "pimcore/frontend-permission-toolkit-bundle": "<2.0 || > 2.0.99", - "pimcore/generic-data-index-bundle": "<1.2 || > 1.2.99", + "pimcore/generic-data-index-bundle": "<1.3 || > 1.3.99", "pimcore/google-marketing-bundle": "<1.1 || > 1.1.99", - "pimcore/headless-documents": "<2.2 || > 2.2.99", - "pimcore/newsletter-bundle": "<1.1 || > 1.1.99", - "pimcore/object-merger": "<4.0 || > 4.0.99", - "pimcore/openid-connect": "<1.1 || > 1.1.99", - "pimcore/output-data-config-toolkit-bundle": "<5.1 || > 5.1.99", + "pimcore/headless-documents": "<2.3 || > 2.3.99", + "pimcore/newsletter-bundle": "<1.2 || > 1.2.99", + "pimcore/object-merger": "<4.1 || > 4.1.99", + "pimcore/openid-connect": "<1.2 || > 1.2.99", + "pimcore/output-data-config-toolkit-bundle": "<5.2 || > 5.2.99", "pimcore/personalization-bundle": "<1.1 || > 1.1.99", - "pimcore/perspective-editor": "<1.7 || > 1.7.99", - "pimcore/pimcore": "<11.4 || > 11.4.99", - "pimcore/portal-engine": "<4.1 || > 4.1.99", + "pimcore/perspective-editor": "<1.8 || > 1.8.99", + "pimcore/pimcore": "<11.5 || > 11.5.99", + "pimcore/portal-engine": "<4.2 || > 4.2.99", + "pimcore/quill-bundle": "<1.0 || > 1.0.99", "pimcore/static-resolver-bundle": "<1.4 || > 1.4.99", - "pimcore/statistics-explorer": "<2.1 || > 2.1.99", + "pimcore/statistics-explorer": "<2.2 || > 2.2.99", "pimcore/system-info-bundle": "<1.0 || > 1.0.99", - "pimcore/translations-provider-interfaces": "<3.0 || > 3.0.99", - "pimcore/web-to-print-bundle": "<1.3 || > 1.3.99", - "pimcore/web2print-tools-bundle": "<5.1 || > 5.1.99", + "pimcore/translations-provider-interfaces": "<3.1 || > 3.1.99", + "pimcore/web-to-print-bundle": "<1.4 || > 1.4.99", + "pimcore/web2print-tools-bundle": "<5.2 || > 5.2.99", "pimcore/workflow-automation-integration-bundle": "<1.0 || > 1.0.99", - "pimcore/workflow-designer": "<1.3 || > 1.3.99" + "pimcore/workflow-designer": "<1.4 || > 1.4.99" } } diff --git a/doc/02_Platform_Version_Releases/2024.4.md b/doc/02_Platform_Version_Releases/2024.4.md new file mode 100644 index 0000000..2b42557 --- /dev/null +++ b/doc/02_Platform_Version_Releases/2024.4.md @@ -0,0 +1,43 @@ +# 2024.4 + +Following table lists all Pimcore modules and their version included in platform release 2024.4: + +| Package Name | Included Version | Changed | +|-----------------------------------------------------------------------------------------------------------------|------------------|--| +| [pimcore/admin-ui-classic-bundle](https://github.com/pimcore/admin-ui-classic-bundle) | 1.7 | ✅ | +| [pimcore/admin-ui-classic-light-theme-bundle](https://github.com/pimcore/ee-admin-ui-classic-light-theme-bundle) | 1.0 | | +| [pimcore/asset-metadata-class-definitions](https://github.com/pimcore/asset-metadata-class-definitions) | 2.2 | ✅ | +| [pimcore/backend-power-tools-bundle](https://github.com/pimcore/backend-power-tools-bundle) | 1.2 | | +| [pimcore/copilot-bundle](https://github.com/pimcore/copilot-bundle) | 1.3 | ✅ | +| [pimcore/customer-management-framework-bundle](https://github.com/pimcore/customer-data-framework) | 4.2 | ✅ | +| [pimcore/data-hub](https://github.com/pimcore/data-hub) | 1.9 | ✅ | +| [pimcore/data-hub-file-export](https://github.com/pimcore/data-hub-file-export) | 2.2 | ✅ | +| [pimcore/data-hub-productsup](https://github.com/pimcore/data-hub-productsup) | 2.2 | ✅ | +| [pimcore/data-hub-simple-rest](https://github.com/pimcore/data-hub-simple-rest) | 3.1 | ✅ | +| [pimcore/data-hub-webhooks](https://github.com/pimcore/data-hub-webhooks) | 1.3 | ✅ | +| [pimcore/data-importer](https://github.com/pimcore/data-importer) | 1.10 | ✅ | +| [pimcore/data-quality-management-bundle](https://github.com/pimcore/data-quality-management-bundle) | 1.2 | | +| [pimcore/direct-edit](https://github.com/pimcore/direct-edit) | 2.1 | ✅ | +| [pimcore/ecommerce-framework-bundle](https://github.com/pimcore/ecommerce-framework-bundle) | 1.3 | ✅ | +| [pimcore/file-explorer-bundle](https://github.com/pimcore/file-explorer-bundle) | 1.0 | | +| [pimcore/frontend-permission-toolkit-bundle](https://github.com/pimcore/frontend-permission-toolkit) | 2.0 | | +| [pimcore/generic-data-index-bundle](https://github.com/pimcore/generic-data-index-bundle) | 1.3 | ✅ | +| [pimcore/google-marketing-bundle](https://github.com/pimcore/google-marketing-bundle) | 1.1 | | +| [pimcore/headless-documents](https://github.com/pimcore/headless-documents) | 2.3 | ✅ | +| [pimcore/newsletter-bundle](https://github.com/pimcore/newsletter-bundle) | 1.2 | ✅ | +| [pimcore/object-merger](https://github.com/pimcore/object-merger) | 4.1 | ✅ | +| [pimcore/openid-connect](https://github.com/pimcore/openid-connect) | 1.2 | ✅ | +| [pimcore/output-data-config-toolkit-bundle](https://github.com/pimcore/output-data-config-toolkit) | 5.2 | ✅ | +| [pimcore/personalization-bundle](https://github.com/pimcore/personalization-bundle) | 1.1 | | +| [pimcore/perspective-editor](https://github.com/pimcore/perspective-editor) | 1.8 | ✅ | +| [pimcore/pimcore](https://github.com/pimcore/pimcore) | 11.5 | ✅ | +| [pimcore/portal-engine](https://github.com/pimcore/portal-engine) | 4.2 | ✅ | +| [pimcore/quill-bundle](https://github.com/pimcore/quill-bundle) | 1.0 | ✅ | +| [pimcore/static-resolver-bundle](https://github.com/pimcore/static-resolver-bundle) | 1.4 | | +| [pimcore/statistics-explorer](https://github.com/pimcore/statistics-explorer) | 2.2 | ✅ | +| [pimcore/system-info-bundle](https://github.com/pimcore/system-info-bundle) | 1.0 | | +| [pimcore/translations-provider-interfaces](https://github.com/pimcore/translations-provider-interfaces) | 3.1 | ✅ | +| [pimcore/web-to-print-bundle](https://github.com/pimcore/web-to-print-bundle) | 1.4 | ✅ | +| [pimcore/web2print-tools-bundle](https://github.com/pimcore/web2print-tools) | 5.2 | ✅ | +| [pimcore/workflow-automation-integration-bundle](https://github.com/pimcore/workflow-automation-integration-bundle) | 1.0 | | +| [pimcore/workflow-designer](https://github.com/pimcore/workflow-designer) | 1.4 | ✅ | diff --git a/doc/02_Platform_Version_Releases/README.md b/doc/02_Platform_Version_Releases/README.md index dbd9cc3..e1c65ec 100644 --- a/doc/02_Platform_Version_Releases/README.md +++ b/doc/02_Platform_Version_Releases/README.md @@ -11,6 +11,7 @@ Following platform version releases are available. | 2024.1 | [Release Notes](../03_Release_Notes/2024.1.md) | [Details](2024.1.md) | ❌ | ❌ | | 2024.2 | [Release Notes](../03_Release_Notes/2024.2.md) | [Details](2024.2.md) | ❌ | ❌ | | 2024.3 | [Release Notes](../03_Release_Notes/2024.3.md) | [Details](2024.3.md) | ❌ | ❌ | +| 2024.4 | [Release Notes](../03_Release_Notes/2024.4.md) | [Details](2024.4.md) | ✅ | December 2026 | Community support of a platform version ends after release of next platform version. LTS labeled platform versions and their corresponding module versions have extended LTS support. diff --git a/doc/03_Release_Notes/2024.4.md b/doc/03_Release_Notes/2024.4.md new file mode 100644 index 0000000..a3c16e3 --- /dev/null +++ b/doc/03_Release_Notes/2024.4.md @@ -0,0 +1,140 @@ +# Release 2024.4 +Here you will find all the important new features and release notes of the Platform Version 2024.4 release. + +## Most Important New Features + +### OpenSearch and Elasticsearch support +Based on community feedback and recent changes in Elasticsearch's licensing policy, Platform Version 2024.4 will support +both Elasticsearch and OpenSearch. This ensures flexibility to choose the search engine that best fits your needs. While +we are committed to supporting both options for now, we will continue to monitor their development and licensing +policies. Depending on future changes, we may need to reevaluate and decide for one technology. + +For more details see +- [Generic Data Index](https://docs.pimcore.com/platform/Generic_Data_Index/Configuration/Elasticsearch) +- [Datahub Simple Rest API](https://docs.pimcore.com/platform/Datahub_Simple_Rest/Configuration/Elasticsearch) +- [E-Commerce Framework](https://docs.pimcore.com/platform/Ecommerce_Framework/Index_Service/Product_Index_Configuration/Elastic_Search/) +- [Statistics Explorer](https://docs.pimcore.com/platform/Statistics_Explorer/Installation_and_Configuration/#setup-data-sources) + +### Ecommerce framework OpenSearch support +In the light of OpenSearch and Elasticsearch support, we also expanded the Ecommerce Framework to support OpenSearch, +providing greater flexibility in choosing the search engine. +For details see [Documentation](https://docs.pimcore.com/platform/Ecommerce_Framework/Index_Service/Product_Index_Configuration/Open_Search/). + +### Quill as new default WYSIWYG editor +Due to changes in TinyMCE’s licensing model, we were required to find a new WYSIWYG editor. After careful research +we’ve chosen [Quill](https://quilljs.com/) as replacement. + +Starting with Platform Version 2024.4, both TinyMCE and Quill will be supported, but TinyMCE will be +deprecated. From Platform Version 2025.1 onward, Quill will be the only supported WYSIWYG editor. + +More Details see [Pimcore Quill Documentation](https://docs.pimcore.com/platform/Quill_WYSWIYG_Editor/). + + +### New simple rest adapter for headless documents in Datahub + +The new REST endpoint in Pimcore Datahub provides external applications with straightforward access to headless document +data in JSON format. Unlike the more complex default GraphQL endpoint, this REST adapter provides simple REST queries +for the full content of headless documents. This simplifies data access and significantly reduces implementation efforts. + +More details see [Headless Documents Documentation](https://docs.pimcore.com/platform/Headless_Documents/DataHub_Integration/). + + +### Symfony Flex Support +With Pimcore Version 2024.4 Pimcore allows developers to optionally use symfony/flex and so install third party +dependencies via flex. +This is done by adding a default ```symfony.lock``` to the skeleton that contains all the packages which are used by +stock Pimcore. +With that file in place it's safe to run ```composer require symfony/flex``` and you can easily install additional +bundles using Flex, e.g. composer ```require nelmio/api-doc-bundle```. + + +## Additional improvements and housekeeping +Alongside the new features, the following improvements and housekeeping have been implemented: + +### Dependency Upgrades +We upgraded dependencies where possible without causing any backward compatibility (BC) +breaks and providing a solid foundation for LTS. + +### Datahub and Adapters +- GraphQL + - Performance optimized permission check to use an in-memory object in GraphQL endpoints + - Disabling of language fallback + - Added CsFeature title + - Generate static typename for element metadata key value pairs +- Simple Rest API + - Enhanced indexing performance in Simple Rest API + - Added Support for Elasticsearch +- File Export + - Added http header authentication in File Export pushes + - Flysystem for storages support in File Export +- Webhooks + - Allow custom values in header for Webhooks +- Data Importer + - Add SQL Data Source + - Make `As Numeric` operator return nullable + - Automatically set imported element userModification + - CSV Data Source with skipFirstRow should use row headings rather than row index + +### Pimcore Document Blocks - Prepare Twig 4 compatibility +For Twig 4 compatibility there are two new Twig extensions for creating Pimcore Document blocks: +`pimcoreblock` and `pimcoremanualblock`. These extensions use the Twig Node internally, +allowing Twig 4 support in the future and will replace the now deprecated `pimcore_block` implementation. + +More Details see [Pimcore Documentation](https://docs.pimcore.com/platform/Pimcore/Documents/Editables/Block#basic-usage). + +### Core Framework +- Added possibility to configure which metadata to be used as ```alt```, ```copyright```, ```title``` +- Image processing: possibility to configure the image adapter +- Optimize Document Thumbnail generation +- Add checks for setting QuantityValue values and units +- Add more elements to html_sanitizer +- Added ```versionCount``` index to element and versions table +- Deprecate TinyMCE +- Add Deprecation to remove context from `ResolveUploadTargetEvent` + + +### Admin UI classic bundle +- Improved grid loading performance with multiple roles +- Added context for Blocks/bricks/fieldcollection for select and multiselect option provider +- Set default issuer to "Pimcore" instead of "Pimcore 2 Factor Authentication" + +### Pimcore Copilot bundle +- Allow custom values in header for webhook action step. +- Deprecation of the internal Execution Engine - use the Generic Execution Engine instead. Details + see the [migration guide](https://docs.pimcore.com/platform/Copilot/Upgrade_Notes/Migrate_From_JEE_To_GEE/). + +### Generic Data Index +- Index default asset metadata +- Added support for Elasticsearch + +### Asset Metadata Class Definitions +- Add field definition adapters for generic data index bundle + +### Portal Engine +- Added Elasticsearch support via Generic Data Index +- Added Public Share permission on Data Pool level +- Use common adapter from Generic Data Index +- Added backticks to reserved keyword ```groups``` + +### Direct Edit +- Also implement JWT in clientside +- Allow different JWT keys for publisher and subscriber + +### OpenID Connect +- Replace abandoned JWT packages +- Upgrade web-token/jwt-signature* dependencies + + +## Upgrade Notes + +Before updating, also have a look at the following upgrade notes if relevant to your system: +- [Core Framework](https://docs.pimcore.com/platform/Pimcore/Installation_and_Upgrade/Upgrade_Notes/#pimcore-1150) +- [Datahub File Export](https://docs.pimcore.com/platform/Datahub_File_Export/Installation/Upgrade#upgrade-to-220) +- [Data Importer](https://docs.pimcore.com/platform/Data_Importer/Upgrade) +- [Direct Edit](https://docs.pimcore.com/platform/Direct_Edit/Installation/Upgrade_notes#update-to-version-21) +- [Generic Data Index](https://docs.pimcore.com/platform/Generic_Data_Index/Installation/Upgrade#upgrade-to-130) +- [Headless Documents](https://docs.pimcore.com/platform/Headless_Documents/Installation/Upgrade#update-to-version-23) +- [OpenId Connect](https://docs.pimcore.com/platform/OpenID_Connect/Upgrade_Notes#120) +- [Portal Engine](https://docs.pimcore.com/platform/Portal_Engine/Installation/Upgrade#upgrade-to-420) +- [Translation Provider Interfaces](https://docs.pimcore.com/platform/Translation_Provider_Interfaces/Installation_and_Configuration/Upgrade#update-to-version-31) +- [Workflow Designer](https://docs.pimcore.com/platform/Worfklow_Designer/Upgrade#update-to-version-14) diff --git a/doc/03_Release_Notes/README.md b/doc/03_Release_Notes/README.md index b7e3a53..c8febdc 100644 --- a/doc/03_Release_Notes/README.md +++ b/doc/03_Release_Notes/README.md @@ -8,3 +8,4 @@ Following list includes all available Platform Version release notes: - [2024.1](./2024.1.md) - [2024.2](./2024.2.md) - [2024.3](./2024.3.md) +- [2024.4](./2024.4.md)