Skip to content

Commit

Permalink
Prepare release 2024.4 (#47)
Browse files Browse the repository at this point in the history
* 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 <[email protected]>
Co-authored-by: Christian Fasching <[email protected]>
  • Loading branch information
3 people authored Dec 10, 2024
1 parent 5a0ac6c commit ee66404
Show file tree
Hide file tree
Showing 7 changed files with 215 additions and 26 deletions.
2 changes: 2 additions & 0 deletions .github/files/bundles.php
Original file line number Diff line number Diff line change
Expand Up @@ -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],
];


1 change: 1 addition & 0 deletions .github/scripts/01-setup-environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
53 changes: 27 additions & 26 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -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"
}
}
43 changes: 43 additions & 0 deletions doc/02_Platform_Version_Releases/2024.4.md
Original file line number Diff line number Diff line change
@@ -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 ||
1 change: 1 addition & 0 deletions doc/02_Platform_Version_Releases/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
140 changes: 140 additions & 0 deletions doc/03_Release_Notes/2024.4.md
Original file line number Diff line number Diff line change
@@ -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)
1 change: 1 addition & 0 deletions doc/03_Release_Notes/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)

0 comments on commit ee66404

Please sign in to comment.