You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
dotAI: Azure OpenAI is now a supported LangChain4J provider for chat, streaming, embeddings, and image — enterprise customers can configure Azure-hosted deployments via providerConfig JSON with no code changes. (#35243)
ES Search portlet: Applied product/design polish — parameters panel switched to the standard form pattern with checkboxes, "Wrap code" moved into the Query panel header, Help button relocated next to the Query title, top toolbar removed, Share/Export buttons moved into the right side of the results stats bar, and the Status column is now sortable. (#35702)
Analytics dashboard: Engagement report now shows device and browser breakdowns as pie charts (via new transformBrowsersToPieChartEntries / transformDevicesToPieChartEntries aggregation utilities capped at 10 entries), with the engagement rate metric spanning the full width. (#35695)
UVE Style Editor: Accordion content styling and radio field visibility improvements for better UI consistency. (#35724)
Fixes and Known Issues
UVE: The pencil icon in the hover toolbar now opens the Angular-based new edit content dialog when CONTENT_EDITOR2_ENABLED is on for the content type, for both single- and multi-page contentlets. (#35674)
Edit Content (History tab): Polished the Versions and Push Publish accordions in the new side panel — context-menu options now filter by status (Draft/Published/Other), the current version has a distinct active highlight, status chips align with Content Drive, the kebab is hover/active only, Compare view supports reversed columns with a "Return to current version" button, and Push Publish entries are sorted newest-first with a readable "Bundle ID" label. (#35687)
Edit Content (side panel): Added tooltips to sidebar tab icons, copy button now shows the "Copied" tooltip and checkmark immediately on click, replaced the local status tag with the shared dot-contentlet-status-chip (including a "New" state), and replaced the untranslated locale component with the shared DotBinaryOptionSelectorComponent with locale-aware copy options. (#35671)
Maintenance: Fixed broken double-checked locking in MaintenanceResource.jobHelper() where two threads could race and both initialize the CDI bean — now uses the full volatile + synchronized + double null-check pattern. (#35713)
Infrastructure & Security
CI/CD: The dotcms-dev image build now derives its base from the release's Java major version via a new JAVA_BASE_IMAGE build-arg, so the java-25 variant is actually built on jdk:25-ubuntu instead of being hardcoded to Java 21. (#35718)
URL Map: Added an integration regression test that locks down the cross-site URL map fix — processURLMap must return empty when the requesting site has no matching content, preventing the foreign-host content bleed previously introduced by an unrestricted ES fallback. (#35723)