| CARVIEW |
Navigation Menu
-
Notifications
You must be signed in to change notification settings - Fork 88
Releases: sulu/skeleton
Release 3.0.1 (2025-12-23)
Upgrade Guide | Skeleton Adjustments | Breaking Changes | Full Changelog
- Prevent Media from being moved multiple times (sulu/sulu#8471) (@MarkusHolstein)
- Add proper return types for the RequestAnalyzerInterface (sulu/sulu#8473) (@Prokyonn)
- Fix preview after query optimization (sulu/sulu#8470) (@Prokyonn)
- Load all properties for SnippetAreaTwigExtension by default (sulu/sulu#8469) (@Prokyonn)
- Improve FormMetadataLoader Cache (sulu/sulu#8457) (@Prokyonn)
- Improve navigation performance (sulu/sulu#8453) (@Prokyonn)
- Fix sulu:build issue unknown method getSchemaManager in DatabaseBuilder (sulu/sulu#8463) (@alexander-schranz)
- Fix depth calculation during resolving (sulu/sulu#8462) (@Prokyonn)
- Add Interface for AccessControlQueryEnhancer (sulu/sulu#8454) (@MarkusHolstein)
- Remove php-cr "node_order" build target in massive_build (sulu/sulu#8438) (@mamazu)
- Fix the autoloader warnings and moving namespaces (sulu/sulu#8439) (@mamazu)
- Add support for Doctrine DBAL 4 and Doctrine Persistence 4 (sulu/sulu#8451) (@alexander-schranz)
- Add upgrade instructions for page block settings renamed to content block settings in 3.0 (sulu/sulu#8449) (@dfsoeten)
- Fix PHPStan issues add default generic to NodeBuilder and NodeDefinition (sulu/sulu#8443) (@alexander-schranz)
- Define requirements section in README per version (sulu/sulu#8444) (@alexander-schranz)
- Support Monolog 4 Bundle in 2.6 (sulu/sulu#8445) (@alexander-schranz)
- Allow installation of Symfony Monolog Bundle 4 (sulu/sulu#8441) (@alexander-schranz)
- Add support for doctrine/orm 3 (sulu/sulu#7509) (@alexander-schranz)
- Add test against MySQL 8.4 (sulu/sulu#8436) (@alexander-schranz)
- Update docs link from 2.x versions to 2.6 (sulu/sulu#8435) (@alexander-schranz)
- Use article mainWebspace as default preview webspace (sulu/sulu#8423) (@wachterjohannes)
- Add RouteSchema support (sulu/sulu#8428) (@Prokyonn)
- Include PHP 8.5 in version string to be more transparent (sulu/sulu#8429) (@alexander-schranz)
- Fix handling of not existing TargetGroup Collection in Media FileVersion (sulu/sulu#8424) (@alexander-schranz)
- Add stringable interface to models with __toString method (sulu/sulu#8425) (@alexander-schranz)
- Define requirements section in README per version (#318) (@alexander-schranz)
- Support Monolog 4 Bundle in 2.6 (#319) (@alexander-schranz)
- Try fix Windows CI builds (#316) (@alexander-schranz)
- Allow installation of Symfony Monolog Bundle 4 (#317) (@alexander-schranz)
- Use MySQL 8.4 by default (#315) (@alexander-schranz)
- Update docs link from 2 versions to 2.6 (#314) (@alexander-schranz)
- Upgrade to Symfony 7.4 and Upgrade Flex Recipes (#313) (@alexander-schranz)
Assets 2
Release 2.6.18 (2025-12-23)
Upgrade Guide | Skeleton Adjustments | Breaking Changes | Full Changelog
- Prevent Media from being moved multiple times (sulu/sulu#8471) (@MarkusHolstein)
- Add Interface for AccessControlQueryEnhancer (sulu/sulu#8454) (@MarkusHolstein)
- Fix PHPStan issues add default generic to NodeBuilder and NodeDefinition (sulu/sulu#8443) (@alexander-schranz)
- Define requirements section in README per version (sulu/sulu#8444) (@alexander-schranz)
- Support Monolog 4 Bundle in 2.6 (sulu/sulu#8445) (@alexander-schranz)
- Add test against MySQL 8.4 (sulu/sulu#8436) (@alexander-schranz)
- Update docs link from 2.x versions to 2.6 (sulu/sulu#8435) (@alexander-schranz)
- Include PHP 8.5 in version string to be more transparent (sulu/sulu#8429) (@alexander-schranz)
- Fix handling of not existing TargetGroup Collection in Media FileVersion (sulu/sulu#8424) (@alexander-schranz)
- Add stringable interface to models with __toString method (sulu/sulu#8425) (@alexander-schranz)
- Define requirements section in README per version (#318) (@alexander-schranz)
- Support Monolog 4 Bundle in 2.6 (#319) (@alexander-schranz)
- Use MySQL 8.4 by default (#315) (@alexander-schranz)
- Update docs link from 2 versions to 2.6 (#314) (@alexander-schranz)
- Upgrade to Symfony 7.4 and Upgrade Flex Recipes (#313) (@alexander-schranz)
Assets 2
Release 3.0.0 (2025-11-26)
Release Blog | Upgrade Guide | Skeleton Adjustments | Breaking Changes | Full Changelog
- Rename Route::site to Route::webspace (sulu/sulu#8418) (@alexander-schranz)
- Remove sortable from author (sulu/sulu#8420) (@Prokyonn)
- Adjust one-to-one to many-to-one relation (sulu/sulu#8419) (@Prokyonn)
- Add native types to MediaBundle entities and interfaces (sulu/sulu#8417) (@Prokyonn)
- Adjust return types in all new packages bundles (sulu/sulu#8416) (@Prokyonn)
- Add native types to SecurityBundle entities and interfaces (sulu/sulu#8411) (@Prokyonn)
- Add native types to CategoryBundle (sulu/sulu#8406) (@Prokyonn)
- Add native types to ContactBundle entities and interfaces (sulu/sulu#8410) (@Prokyonn)
- Add native types to TrashBundle entities and interfaces (sulu/sulu#8415) (@Prokyonn)
- Add native types to AudienceTargetingBundle (sulu/sulu#8408) (@Prokyonn)
- Add native types to ReferenceBundle entities and interfaces (sulu/sulu#8414) (@Prokyonn)
- Add native types to PreviewBundle entities and interfaces (sulu/sulu#8412) (@Prokyonn)
- Add native types to WebsiteBundle entities and interfaces (sulu/sulu#8413) (@Prokyonn)
- Use request context service instead of container params if no request is available (sulu/sulu#8106) (@stollr)
- Remove experimental marker (sulu/sulu#8403) (@Prokyonn)
- Improve tag entity native types (sulu/sulu#8407) (@Prokyonn)
- Add native types to ActivityBundle (sulu/sulu#8405) (@Prokyonn)
- Add native types to TagBundle entities and interfaces (sulu/sulu#8404) (@Prokyonn)
- Add PageTreeArticles provider (sulu/sulu#8402) (@Prokyonn)
- Fix reordering with siblings (sulu/sulu#8401) (@Prokyonn)
- Remove optional constructor arguments for BC (sulu/sulu#8395) (@mamazu)
- Make CollectionController parameter 'collectionClass' required (sulu/sulu#8400) (@mamazu)
- Replace Sulu Common Dir with Symfony new Share Dir (sulu/sulu#8399) (@alexander-schranz)
- Add additional native types (sulu/sulu#8397) (@Prokyonn)
- Remove deprecated media title generation (sulu/sulu#8398) (@mamazu)
- Fix types around webspace collection (sulu/sulu#8396) (@mamazu)
- Fix false resolved merge conflict in TemplateAttributeResolverTest (sulu/sulu#8394) (@alexander-schranz)
- Remove doctrine cache in favor of Symfony cache (sulu/sulu#8385) (@mamazu)
- Remove unused media language relations (sulu/sulu#8392) (@alexander-schranz)
- Extract seo data in json field and change excerpt data saving (sulu/sulu#8383) (@Prokyonn)
- Add WebsiteReindexProviderVisitor to extract indexable content for article/page (sulu/sulu#8388) (@Prokyonn)
- Replace
MediaTypeentity with string column (sulu/sulu#8243) (@mamazu) - Add security context to admin search (sulu/sulu#8391) (@martinlagler)
- Take care of additional webspaces in article sitemap provider (sulu/sulu#8374) (@martinlagler)
- Extract excerpt data in json field (sulu/sulu#8382) (@Prokyonn)
- Update data types for new bundles (sulu/sulu#8389) (@Prokyonn)
- Add SecuredControllerInterface to article and snippet controller (sulu/sulu#8390) (@wachterjohannes)
- Take care of access control in the website page reindex provider (sulu/sulu#8384) (@martinlagler)
- Remove parameters.yml file from TestBundle (sulu/sulu#8387) (@alexander-schranz)
- Fix snippet areas (sulu/sulu#8381) (@Prokyonn)
- Add new Model for article additional webspaces (sulu/sulu#8373) (@martinlagler)
- Remove deprecated preview cache (sulu/sulu#8356) (@mamazu)
- Split ExcerptInterface to Excerpt / Taxonomyinterface (sulu/sulu#8380) (@Prokyonn)
- Fix crashing SEO tab on Article with PageTreeRoute (sulu/sulu#8378) (@alexander-schranz)
- Remove array support for DimensionContentCollection (sulu/sulu#8376) (@Prokyonn)
- Fix duplicated unlocalized dimension on trash restore (sulu/sulu#8361) (@Prokyonn)
- Rename search index id separator, from "::" to "__" (sulu/sulu#8375) (@martinlagler)
- Fix vanishing many to many relations (sulu/sulu#8369) (@Prokyonn)
- Fix @see deep class references for PHPStorm (sulu/sulu#8370) (@alexander-schranz)
- Remove unnecessary else statement in PageTrashItemHandler (sulu/sulu#8371) (@alexander-schranz)
- Fix store/restore translation for page/article/snippet (sulu/sulu#8368) (@Prokyonn)
- Add Changelog fieldtype in the settings tab (sulu/sulu#8367) (@Prokyonn)
- Add default template visitor for pages (sulu/sulu#8366) (@Prokyonn)
- Disable preview for non available locales (sulu/sulu#8363) (@Prokyonn)
- Set author on entity creation (sulu/sulu#8365) (@Prokyonn)
- Add 404 response on missing entity (sulu/sulu#8364) (@Prokyonn)
- Add some more type improvements for Admin and some more classes (part 2) (sulu/sulu#8362) (@mamazu)
- Use absolute urls for cache invalidation (sulu/sulu#8359) (@Prokyonn)
- Disable NavigationContext for homepage (sulu/sulu#8360) (@Prokyonn)
- Add support for url reference types in new route generator (sulu/sulu#8357) (@alexander-schranz)
- Fix JsonObjectField class not found error by require correct min version of SEAL (sulu/sulu#8358) (@alexander-schranz)
- Set site on route context for correct routing (sulu/sulu#8352) (@alexander-schranz)
- Add CacheInvalidationSubscriber (sulu/sulu#8350) (@Prokyonn)
- Fix search without query (sulu/sulu#8351) (@alexander-schranz)
- Removing deprecated code from MediaManager (sulu/sulu#8349) (@mamazu)
- Readd PageTreeRoute field type (sulu/sulu#8328) (@alexander-schranz)
- Add support for DescendantProviderInterface for pages (sulu/sulu#8345) (@Prokyonn)
- Fix packages sort in composer (sulu/sulu#8347) (@alexander-schranz)
- Add website search controller (sulu/sulu#8326) (@martinlagler)
- Add page website search indexing (sulu/sulu#8315) (@martinlagler)
- Article Website Index Provider + Listener for SEAL (sulu/sulu#8314) (@martinlagler)
- Fix links for Articles and Pages in the Admin Search (sulu/sulu#8341) (@martinlagler)
- Add permission check in the MediaResourceLoader (sulu/sulu#8336) (@Prokyonn)
- Add RouteCleanupListener (sulu/sulu#8337) (@Prokyonn)
- Fix MediaBundle tests without security configured (sulu/sulu#8338) (@alexander-schranz)
- Add website permission checks to PageSmartContentProvider/PageSitemapProvider/PageSelections (sulu/sulu#8319) (@Prokyonn)
- Support property mapping in NavigationTwigExtensions and make properties mandatory in Twig extensions (sulu/sulu#8323) (@Prokyonn)
- Add test to profile queries on content resolving (sulu/sulu#8335) (@Prokyonn)
- Add default param to SnippetSelectionPropertyResolver (sulu/sulu#8333) (@Prokyonn)
- Fix removal of entity with ghost locale (sulu/sulu#8329) (@Prokyonn)
- Remove Custom url tab if not defined (sulu/sulu#8331) (@wachterjohannes)
- Replace
<PermissionHint />with<Hint />(sulu/sulu#8332) (@mamazu) - Support "default" param in SingleSnippetSelection (sulu/sulu#8324) (@Prokyonn)
- Hide SnippetArea when no area is defined and adjust translations (sulu/sulu#8325) (@Prokyonn)
- Add internal/external link indicators for Sulu 3.0 (sulu/sulu#8327) (@Prokyonn)
- Remove ParserCompilerPass (sulu/sulu#8321) (@mamazu)
- Fix handling of null in Resolvers (sulu/sulu#8299) (@wachterjohannes)
- Remove unused MetadataProvider compilerpass (sulu/sulu#8308) (@mamazu)
- Use ::class for search services definitions (sulu/sulu#8312) (@martinlagler)
- Fix visible versions for ghost dimensions (sulu/sulu#8317) (@Prokyonn)
- Fix remove translation handlers (sulu/sulu#8316) (@Prokyonn)
- Add Admin and Website permissions for Sulu 3.0 (sulu/sulu#8307) (@draconivis)
- Fix template filtering in selections (sulu/sulu#8305) (@Prokyonn)
- Move content enhancement from aggregator to resolver and update link form (sulu/sulu#8304) (@Prokyonn)
- Remove deprecated_object_format (part 2) (sulu/sulu#8311) (@mamazu)
- Removed
ImageTransformationCompilerPass(sulu/sulu#8306) (@mamazu) - Remove segments from
PortalInformation(sulu/sulu#7760) (@mamazu) - Using
tagged_iteratorinstead of deprecatedtagged(sulu/sulu#7721) (@mamazu) - Replace CompilerPass with
tagged_iteratorin AccessControlManager (sulu/sulu#8206) (@mamazu) - Adds missing return types to different services (sulu/sulu#8302) (@alexander-schranz)
- Fix webspaces field definition in website index (sulu/sulu#8303) (@alexander-schranz)
- Remove not longer required ContentTypesCompilerPass (sulu/sulu#8300) (@mamazu)
- Make backwards compatibility virtual parameters real (sulu/sulu#7936) (@mamazu)
- Remove not longer required
SuluKernelBrowser(sulu/sulu#8198) (@mamazu) - Rename admin search providers and listeners (sulu/sulu#8297) (@martinlagler)
- Remove deprecated
TaggedServiceCollectorCompilerPass(sulu/sulu#8233) (@mamazu) - Remove deprecated object format for entity selections (sulu/sulu#8276) (@mamazu)
- Add search listener and search provider for Pages for SEAL (sulu/sulu#8294) (@martinlagler)
- Add Website Index Structure (sulu/sulu#8295) (@alexander-schranz)
- Update and collect Restored and TranslationRestored events (sulu/sulu#8293) (@martinlagler)
- Custom urls routing (sulu/sulu#8247) (@wachterjohannes)
- Block ids pregenerate (sulu/sulu#8288) (@wachterjohannes)
- Add missing seo and excerpt tab translations. (sulu/sulu#8292) (@alexander-schranz)
- Remove deprecated
sulu_media.format_manager.blocked_file_typesparameter (sulu/sulu#8280) (@mamazu) - Remove deprecated listbuilder code (sulu/sulu#8238) (@mamazu)
- Remove unused
TagManager::resolve*functions (sulu/sulu#8275) (@mamazu) - Add Internal and External Link possibility to Pages and Content Bundle (sulu/sulu#8249) (@Prokyonn)
- Add implementation fo...
Assets 2
Release 3.0.0-RC2 (2025-11-24)
Upgrade Guide | Skeleton Adjustments | Breaking Changes | Full Changelog
⚠️ UPGRADE see this SQL to not lose any data if you already use RC or PreVersion of 3.0
For reintroducing extendability for Excerpt but also SEO the SEO fields need migrated into the new SeoData and ExcerptData fields:
SeoData:
-- Pages Table
-- ----------------------------------------
ALTER TABLE pa_page_dimension_contents
ADD COLUMN seoData JSON NOT NULL DEFAULT (JSON_OBJECT());
-- Migrate existing data with nested structure
UPDATE pa_page_dimension_contents
SET seoData = JSON_OBJECT(
'title', seoTitle,
'description', seoDescription,
'keywords', seoKeywords,
'canonicalUrl', seoCanonicalUrl
)
WHERE seoTitle IS NOT NULL
OR seoDescription IS NOT NULL
OR seoKeywords IS NOT NULL
OR seoCanonicalUrl IS NOT NULL;
-- Drop old columns
ALTER TABLE pa_page_dimension_contents
DROP COLUMN seoTitle,
DROP COLUMN seoDescription,
DROP COLUMN seoKeywords,
DROP COLUMN seoCanonicalUrl;
-- Articles Table
-- ----------------------------------------
ALTER TABLE ar_article_dimension_contents
ADD COLUMN seoData JSON NOT NULL DEFAULT (JSON_OBJECT());
-- Migrate existing data with nested structure
UPDATE ar_article_dimension_contents
SET seoData = JSON_OBJECT(
'title', seoTitle,
'description', seoDescription,
'keywords', seoKeywords,
'canonicalUrl', seoCanonicalUrl
)
WHERE seoTitle IS NOT NULL
OR seoDescription IS NOT NULL
OR seoKeywords IS NOT NULL
OR seoCanonicalUrl IS NOT NULL;
-- Drop old columns
ALTER TABLE ar_article_dimension_contents
DROP COLUMN seoTitle,
DROP COLUMN seoDescription,
DROP COLUMN seoKeywords,
DROP COLUMN seoCanonicalUrl;ExcerptData:
-- Pages Table
-- ----------------------------------------
ALTER TABLE pa_page_dimension_contents
ADD COLUMN excerptData JSON NOT NULL DEFAULT (JSON_OBJECT());
-- Migrate existing data with nested structure
UPDATE pa_page_dimension_contents
SET excerptData = JSON_OBJECT(´
'title', excerptTitle,
'description', excerptDescription,
'more', excerptMore,
'image', IF(excerptImageId IS NOT NULL, JSON_OBJECT('id', excerptImageId), NULL),
'icon', IF(excerptIconId IS NOT NULL, JSON_OBJECT('id', excerptIconId), NULL)
)
WHERE excerptTitle IS NOT NULL
OR excerptDescription IS NOT NULL
OR excerptMore IS NOT NULL
OR excerptImageId IS NOT NULL
OR excerptIconId IS NOT NULL;
ALTER TABLE pa_page_dimension_contents
DROP FOREIGN KEY FK_209A42C02F5A5F5D,
DROP FOREIGN KEY FK_209A42C016996F78;
ALTER TABLE pa_page_dimension_contents
DROP COLUMN excerptTitle,
DROP COLUMN excerptDescription,
DROP COLUMN excerptMore,
DROP COLUMN excerptImageId,
DROP COLUMN excerptIconId;
-- Articles Table
-- ----------------------------------------
ALTER TABLE ar_article_dimension_contents
ADD COLUMN excerptData JSON NOT NULL DEFAULT (JSON_OBJECT());
-- Migrate existing data with nested structure
UPDATE ar_article_dimension_contents
SET excerptData = JSON_OBJECT(
'title', excerptTitle,
'description', excerptDescription,
'more', excerptMore,
'image', IF(excerptImageId IS NOT NULL, JSON_OBJECT('id', excerptImageId), NULL),
'icon', IF(excerptIconId IS NOT NULL, JSON_OBJECT('id', excerptIconId), NULL)
)
WHERE excerptTitle IS NOT NULL
OR excerptDescription IS NOT NULL
OR excerptMore IS NOT NULL
OR excerptImageId IS NOT NULL
OR excerptIconId IS NOT NULL;
ALTER TABLE ar_article_dimension_contents
DROP FOREIGN KEY FK_5674F7BF2F5A5F5D,
DROP FOREIGN KEY FK_5674F7BF16996F78;
ALTER TABLE ar_article_dimension_contents
DROP COLUMN excerptTitle,
DROP COLUMN excerptDescription,
DROP COLUMN excerptMore,
DROP COLUMN excerptImageId,
DROP COLUMN excerptIconId;- Replace Sulu Common Dir with Symfony new Share Dir (sulu/sulu#8399) (@alexander-schranz)
- Add additional native types (sulu/sulu#8397) (@Prokyonn)
- Remove deprecated media title generation (sulu/sulu#8398) (@mamazu)
- Fix types around webspace collection (sulu/sulu#8396) (@mamazu)
- Fix false resolved merge conflict in TemplateAttributeResolverTest (sulu/sulu#8394) (@alexander-schranz)
- Deal with absent default meta (sulu/sulu#8330) (@matthiasnoback)
- Allow update of dataprovider in WebspaceCopyCommand (sulu/sulu#8355) (@MarkusHolstein)
- Remove doctrine cache in favor of Symfony cache (sulu/sulu#8385) (@mamazu)
- Remove unused media language relations (sulu/sulu#8392) (@alexander-schranz)
- Add PHP 8.5 to CI (sulu/sulu#8393) (@alexander-schranz)
- Extract seo data in json field and change excerpt data saving (sulu/sulu#8383) (@Prokyonn)
- Add WebsiteReindexProviderVisitor to extract indexable content for article/page (sulu/sulu#8388) (@Prokyonn)
- Replace
MediaTypeentity with string column (sulu/sulu#8243) (@mamazu) - Add security context to admin search (sulu/sulu#8391) (@martinlagler)
- Take care of additional webspaces in article sitemap provider (sulu/sulu#8374) (@martinlagler)
- Extract excerpt data in json field (sulu/sulu#8382) (@Prokyonn)
- Update data types for new bundles (sulu/sulu#8389) (@Prokyonn)
- Add SecuredControllerInterface to article and snippet controller (sulu/sulu#8390) (@wachterjohannes)
- Take care of access control in the website page reindex provider (sulu/sulu#8384) (@martinlagler)
- Remove parameters.yml file from TestBundle (sulu/sulu#8387) (@alexander-schranz)
- Never read route directly from the Request method instead from attributes bag (sulu/sulu#8386) (@alexander-schranz)
- Fix snippet areas (sulu/sulu#8381) (@Prokyonn)
- Add new Model for article additional webspaces (sulu/sulu#8373) (@martinlagler)
- Remove deprecated preview cache (sulu/sulu#8356) (@mamazu)
- Split ExcerptInterface to Excerpt / Taxonomyinterface (sulu/sulu#8380) (@Prokyonn)
- Fix crashing SEO tab on Article with PageTreeRoute (sulu/sulu#8378) (@alexander-schranz)
- Remove array support for DimensionContentCollection (sulu/sulu#8376) (@Prokyonn)
- Fix duplicated unlocalized dimension on trash restore (sulu/sulu#8361) (@Prokyonn)
- Rename search index id separator, from "::" to "__" (sulu/sulu#8375) (@martinlagler)
- Fix vanishing many to many relations (sulu/sulu#8369) (@Prokyonn)
- Fix @see deep class references for PHPStorm (sulu/sulu#8370) (@alexander-schranz)
- Remove unnecessary else statement in PageTrashItemHandler (sulu/sulu#8371) (@alexander-schranz)
- Disallow call of doctrine collection clear method (sulu/sulu#8372) (@alexander-schranz)
- Fix store/restore translation for page/article/snippet (sulu/sulu#8368) (@Prokyonn)
- Add Changelog fieldtype in the settings tab (sulu/sulu#8367) (@Prokyonn)
- Add default template visitor for pages (sulu/sulu#8366) (@Prokyonn)
- Disable preview for non available locales (sulu/sulu#8363) (@Prokyonn)
- Set author on entity creation (sulu/sulu#8365) (@Prokyonn)
- Add 404 response on missing entity (sulu/sulu#8364) (@Prokyonn)
- Add some more type improvements for Admin and some more classes (part 2) (sulu/sulu#8362) (@mamazu)
- Move default title for media implementation (sulu/sulu#8348) (@mamazu)
- Use absolute urls for cache invalidation (sulu/sulu#8359) (@Prokyonn)
- Disable NavigationContext for homepage (sulu/sulu#8360) (@Prokyonn)
- Add support for url reference types in new route generator (sulu/sulu#8357) (@alexander-schranz)
- Fix JsonObjectField class not found error by require correct min version of SEAL (sulu/sulu#8358) (@alexander-schranz)
- Add some more type improvements for Admin and some more classes (sulu/sulu#7558) (@mamazu)
- Replace EntityManager with its interface (sulu/sulu#8320) (@mamazu)
- Change monolog in stage and prod use php://stderr to match Symfony recipe (#311) (@alexander-schranz)
- Bump Version (@alexander-schranz)
- Allow usage of PNPM 9, 10 and NPM 11 for Sulu Admin Builds (#310) (@alexander-schranz)
- Define new APP_SHARE_DIR (#312) (@alexander-schranz)
Assets 2
Release 2.6.17 (2025-11-24)
Upgrade Guide | Skeleton Adjustments | Full Changelog
- Deal with absent default meta (sulu/sulu#8330) (@matthiasnoback)
- Allow update of dataprovider in WebspaceCopyCommand (sulu/sulu#8355) (@MarkusHolstein)
- Add PHP 8.5 to CI (sulu/sulu#8393) (@alexander-schranz)
- Never read route directly from the Request method instead from attributes bag (sulu/sulu#8386) (@alexander-schranz)
- Disallow call of doctrine collection clear method (sulu/sulu#8372) (@alexander-schranz)
- Move default title for media implementation (sulu/sulu#8348) (@mamazu)
- Add some more type improvements for Admin and some more classes (sulu/sulu#7558) (@mamazu)
- Replace EntityManager with its interface (sulu/sulu#8320) (@mamazu)
- Allow usage of PNPM 9, 10 and NPM 11 for Sulu Admin Builds (#310) (@alexander-schranz)
Assets 2
Release 2.5.33 (2025-11-24)
Upgrade Guide | Skeleton Adjustments | Full Changelog
- Deal with absent default meta (sulu/sulu#8330) (@matthiasnoback)
- Allow update of dataprovider in WebspaceCopyCommand (sulu/sulu#8355) (@MarkusHolstein)
- Never read route directly from the Request method instead from attributes bag (sulu/sulu#8386) (@alexander-schranz)
- Move default title for media implementation (sulu/sulu#8348) (@mamazu)
- Bump Version (@alexander-schranz)
Assets 2
Release 3.0.0-RC1 (2025-11-14)
Release Blog | Upgrade Guide | Skeleton Adjustments | Breaking Changes | Full Changelog
- Set site on route context for correct routing (sulu/sulu#8352) (@alexander-schranz)
- Add CacheInvalidationSubscriber (sulu/sulu#8350) (@Prokyonn)
- Fix search without query (sulu/sulu#8351) (@alexander-schranz)
- Removing deprecated code from MediaManager (sulu/sulu#8349) (@mamazu)
- Readd PageTreeRoute field type (sulu/sulu#8328) (@alexander-schranz)
- Add support for DescendantProviderInterface for pages (sulu/sulu#8345) (@Prokyonn)
- Fix packages sort in composer (sulu/sulu#8347) (@alexander-schranz)
- Add website search controller (sulu/sulu#8326) (@martinlagler)
- Add page website search indexing (sulu/sulu#8315) (@martinlagler)
- Article Website Index Provider + Listener for SEAL (sulu/sulu#8314) (@martinlagler)
- Fix links for Articles and Pages in the Admin Search (sulu/sulu#8341) (@martinlagler)
- Fix array-like filters (sulu/sulu#8344) (@Prokyonn)
- Add permission check in the MediaResourceLoader (sulu/sulu#8336) (@Prokyonn)
- Add RouteCleanupListener (sulu/sulu#8337) (@Prokyonn)
- Use snapshot version of composer when test against dev versions (sulu/sulu#8343) (@alexander-schranz)
- Fix MediaBundle tests without security configured (sulu/sulu#8338) (@alexander-schranz)
- Add website permission checks to PageSmartContentProvider/PageSitemapProvider/PageSelections (sulu/sulu#8319) (@Prokyonn)
- Support property mapping in NavigationTwigExtensions and make properties mandatory in Twig extensions (sulu/sulu#8323) (@Prokyonn)
- Add test to profile queries on content resolving (sulu/sulu#8335) (@Prokyonn)
- Fix new appearing PHPStan issues (sulu/sulu#8334) (@alexander-schranz)
- Add default param to SnippetSelectionPropertyResolver (sulu/sulu#8333) (@Prokyonn)
- Fix removal of entity with ghost locale (sulu/sulu#8329) (@Prokyonn)
- Remove Custom url tab if not defined (sulu/sulu#8331) (@wachterjohannes)
- Replace
<PermissionHint />with<Hint />(sulu/sulu#8332) (@mamazu) - Support "default" param in SingleSnippetSelection (sulu/sulu#8324) (@Prokyonn)
- Hide SnippetArea when no area is defined and adjust translations (sulu/sulu#8325) (@Prokyonn)
- Add internal/external link indicators for Sulu 3.0 (sulu/sulu#8327) (@Prokyonn)
- Remove ParserCompilerPass (sulu/sulu#8321) (@mamazu)
- Use
tagged_iterators for the markup listener (sulu/sulu#7403) (@mamazu) - Fix search controller and navigation (#309) (@alexander-schranz)
- Use new sulu_page_navigation_root_tree twig function (#308) (@alexander-schranz)
- Add page tree route (#307) (@alexander-schranz)
- Bump Version (@alexander-schranz)
- Update build for 3.0 (#306) (@alexander-schranz)
- Activate SuluCustomUrlBundle and add corresponding routes (#305) (@wachterjohannes)
Assets 2
Release 2.6.16 (2025-11-14)
Release Blog | Upgrade Guide | Skeleton Adjustments | Full Changelog
- Fix array-like filters (sulu/sulu#8344) (@Prokyonn)
- Use snapshot version of composer when test against dev versions (sulu/sulu#8343) (@alexander-schranz)
- Fix new appearing PHPStan issues (sulu/sulu#8334) (@alexander-schranz)
- Use
tagged_iterators for the markup listener (sulu/sulu#7403) (@mamazu)
Assets 2
Release 2.5.32 (2025-11-14)
Release Blog | Upgrade Guide | Skeleton Adjustments | Full Changelog
- Add some more type improvements for Admin and some more classes (sulu/sulu#7558) (@mamazu)
- Replace EntityManager with its interface (sulu/sulu#8320) (@mamazu)
Assets 2
Release 3.0.0-beta4 (2025-11-07)
Release Blog | Upgrade Guide | Skeleton Adjustments | Breaking Changes | Full Changelog
- Fix handling of null in Resolvers (sulu/sulu#8299) (@wachterjohannes)
- Remove redundant var tag (sulu/sulu#8310) (@mamazu)
- Remove unused MetadataProvider compilerpass (sulu/sulu#8308) (@mamazu)
- Add possibility to remove p tags from text_editor (sulu/sulu#8279) (@martinlagler)
- Fix clearing address field values via UI (sulu/sulu#8318) (@MarkusHolstein)
- Use ::class for search services definitions (sulu/sulu#8312) (@martinlagler)
- Fix visible versions for ghost dimensions (sulu/sulu#8317) (@Prokyonn)
- Fix remove translation handlers (sulu/sulu#8316) (@Prokyonn)
- Add Admin and Website permissions for Sulu 3.0 (sulu/sulu#8307) (@draconivis)
- Fix template filtering in selections (sulu/sulu#8305) (@Prokyonn)
- Move content enhancement from aggregator to resolver and update link form (sulu/sulu#8304) (@Prokyonn)
- Remove deprecated_object_format (part 2) (sulu/sulu#8311) (@mamazu)
- Removed
ImageTransformationCompilerPass(sulu/sulu#8306) (@mamazu) - Deprecate
ImageTransformationCompilerPass(sulu/sulu#8301) (@mamazu) - Remove segments from
PortalInformation(sulu/sulu#7760) (@mamazu) - Add more return types in the
ContactManagerInterface(sulu/sulu#7779) (@mamazu) - Using
tagged_iteratorinstead of deprecatedtagged(sulu/sulu#7721) (@mamazu) - Replace CompilerPass with
tagged_iteratorin AccessControlManager (sulu/sulu#8206) (@mamazu) - Improve typing for
DoctrineFieldDescriptors (sulu/sulu#8267) (@mamazu) - Adds missing return types to different services (sulu/sulu#8302) (@alexander-schranz)
- Fix webspaces field definition in website index (sulu/sulu#8303) (@alexander-schranz)
- Remove not longer required ContentTypesCompilerPass (sulu/sulu#8300) (@mamazu)
- Make backwards compatibility virtual parameters real (sulu/sulu#7936) (@mamazu)
- Remove not longer required
SuluKernelBrowser(sulu/sulu#8198) (@mamazu) - Rename admin search providers and listeners (sulu/sulu#8297) (@martinlagler)
- Remove deprecated
TaggedServiceCollectorCompilerPass(sulu/sulu#8233) (@mamazu) - Remove deprecated object format for entity selections (sulu/sulu#8276) (@mamazu)
- Using key in mapped fragment (sulu/sulu#8298) (@mamazu)
- Add search listener and search provider for Pages for SEAL (sulu/sulu#8294) (@martinlagler)
- Add Website Index Structure (sulu/sulu#8295) (@alexander-schranz)
- Update and collect Restored and TranslationRestored events (sulu/sulu#8293) (@martinlagler)
- Custom urls routing (sulu/sulu#8247) (@wachterjohannes)
- Block ids pregenerate (sulu/sulu#8288) (@wachterjohannes)
- Fix code style after back merge (#304) (@alexander-schranz)
- Add json response for maintainance mode (#303) (@alexander-schranz)