AI Rules Files (.workspace-rules) are now available OOTB with new Liferay Workspaces. These files provide AI agents with the Liferay-specific logic, context, and guardrails needed to generate accurate, best-practice customizations for Liferay DXP. These rules are symlinked for automatic discovery by Claude Code, Cursor, Gemini, GitHub Copilot, and Windsurf. Blade 8.0 or higher is required to automatically set up new Liferay Workspaces with the AI Rules Files. Key Benefits:
|
Release Notes
In order to run integration tests locally, customers previously had to manually identify and set the correct test dependency versions for their corresponding Liferay version in build.gradle, which was a tedious and error prone process. We now provide a dedicated Integration Test Bill of Materials (BOM) file, release.dxp.bom.test, that automatically provides the correct test dependency versions and is included by default with Liferay Workspaces.
Key Benefits:
Liferay Workspaces will automatically pull in the integration test BOM.
Customers can omit the versions when declaring test dependencies in
build.gradle, the integration test BOM will provide the correct versions automatically for their Liferay version.Previous:
testIntegrationImplementation group: "com.liferay.portal", name: "com.liferay.portal.test", version: "24.5.1"Now:
testIntegrationImplementation group: "com.liferay.portal", name: "com.liferay.portal.test"
In order to assist customers with upgrades to newer Liferay versions, Blade and Workspace users now have a dedicated gradle command For customers migrating to Jakarta for the first time, the Jakarta Migration Tool Key Benefits:
This tool simplifies the process for users migrating their code to newer Liferay versions, providing:
|
This feature introduces a cleaner, more flexible empty-state experience in the Frontend Data Set by allowing the search bar and management bar to be hidden when no content is present.
Key Benefits:
The Dataset Consumer is able to hide Data Set management bar by just clicking a toggle
If toggle is enabled, management bar won’t be rendered in case of a “real” empty state
This can be configured both in system and custom datasets
This feature introduces User Views in Frontend Data Sets, allowing end users to personalize how data is displayed by saving and reusing their preferred filters, sorting, and visualization mode across the platform.
Key Benefits:
Users can easily create and switch between custom views tailored to their needs
Personalized views can be saved and reused, improving productivity and consistency
Administrators can control whether Custom Views are available per Data Set
This feature improves how Frontend Data Set view state parameters are represented and managed within URLs, introducing a cleaner, more readable, and user-friendly encoding format. It replaces the previous fully URL-encoded JSON structure with a compact and maintainable serialization strategy while refining how and when view state parameters are persisted. These improvements ensure that URLs remain functional, easier to share, and simpler to debug.
Key Benefits:
Administrators, developers, and end users benefit from significantly shorter and more readable URLs that accurately reflect the current Data Set view state.
View state parameters are only added to URLs when users modify the Data Set view, reducing unnecessary noise and improving clarity.
Data Set states can be reliably shared, bookmarked, and restored across sessions and browsers.
Navigation behavior is improved by establishing push-based history updates as the default, enabling better navigation tracking and user experience.
From now on, most JavaScript files in Liferay DXP have hashed file names generated at build time. For example, a main.js file may appear at runtime with a randomly generated hash value in its name, such as This hash value represents a unique version of the file, so the browser can identify that the file’s contents have not changed. This allows the file to remain in the browser cache indefinitely when the infinite caching strategy is selected. In addition, the frontend caching infrastructure now supports both infinite caching and time/validation-based caching strategies. These strategies can be configured through Instance Settings. For those JavaScript files that cannot be hashed because they are generated at runtime by the server depending on some parameters, a new configuration is available in DXP to define their TTL and the option to add the Also, hashed files have a fallback strategy based on TTL + eTag if they are requested using their canonical name. This acts as a fallback for import map errors or legacy portlets that are not aware of hashed file names. Key Benefits:
The new Liferay DXP caching strategy for JavaScript files improves performance and stability. 1. Faster Page Loads: 2. Elimination of Stale Resources: 3. Reduced Origin Server Load: 4. Cache busting: |
This change promotes the Save Data Set view state to be recoverable when navigating back to it epic from Beta to General Availability, confirming the feature is stable and fully supported.