Liferay Portal 7.3 CE GA1 Release

I'm pleased to announce the immediate availability of: Liferay Portal 7.3 CE GA1!

We are happy to announce the availability of Liferay Portal CE 7.3 GA1. This is the first rolling release (announcement about this new release strategy coming soon) for the 7.3 series. What can you expect from this release?

  1. The first set of finished features that will be made available during the 7.3 cycle. Many more features are in progress but hidden for this first release.

  2. GA Release quality. Our goal is for each rolling release to have production quality and we are taking measures to achieve this even as we move to a faster release cycle. In fact, we are migrating several of our internal Liferay Portal-based systems to each new rolling release right away to ensure the quality.

  3. All future 7.3 releases will be optimized for backwards compatibility. 7.3 GA1 contains the backwards incompatible changes from 7.2 that we are doing for 7.3 (mostly removal of deprecated methods). So, if you have developments to upgrade you can safely start doing it on top of this release.

Sounds interesting? If so, go ahead and download the docker image or bundles and check out the new features.

Docker

Official images can be found on Dockerhub and can be used for deployments on any system that is running Docker. For more information on configuration options for the image see the overview page. To get started with docker run the following:

docker run -it -p 8080:8080 liferay/portal:7.3.0-ga1

Download

You can find the 7.3 release on the download page. If you need additional files (for example, the source code, or dependency libraries), visit the release page.

New Features

This release includes the first few interesting features related to building customer experiences, facilitating the digitalization of enterprise operations and improving Liferay as a platform.

Digital operations

Liferay is often used as a platform to develop and deploy applications for digital operations. Liferay’s developer tooling, APIs and frameworks help speed up the time to market. We are now taking one big step further with App Builder.

App Builder
Liferay 7.2 introduced Data Engine, a new approach to defining and consuming data models dynamically, 7.3 GA1 includes the possibility of building applications visually, backed by the Data Engine. To try this out go to Control Panel > App Builder > Custom Objects.

As its name implies, this application provides a nice UI to define custom model objects. This is somewhat similar to how developers can define entity models using Service Builder or similar tools, but all done through the UI. With Custom Objects, it’s also possible to:

  1. Define one or more Form Views for each custom object in order to collect data from the target users of the application.

  2. Define one or more Table Views to display captured data.

  3. Create an application to tie all of these together to form a full application that can be deployed as a Widget, Standalone or added to the Product Menu.

Customer Experiences

Creating sites, pages, applications, portals, intranets and many other types of experiences is one of the most common use cases of Liferay. We continue to invest in making this as easy as possible, even for non-technical users. Here are some of the new features you can find in this release.

Master Pages are a new tool that make it possible to facilitate ensuring visual consistency across all pages of a site. In particular they allow defining page areas that have to be consistent across several or even all pages across sites. The most common use case is to define headers or footers. Prior to this feature, common page areas could only be defined within a theme. Thanks to this feature, non-technical users can create their own master pages, use them across the site and change them at any time (having the changes automatically applied to all pages). This is actually part of a larger ongoing effort to support customizing Liferay’s look and feel and branding for the most common cases without the need for development. Master pages are created using the page editor, allowing the use of any fragment or widget in the common page areas. A cool feature is the ability to configure which fragments are allowed for a given master page, giving administrators the possibility to provide useful guide rails per use case. Master Pages are a type of Page Template and can be created and managed from the “Page Templates” application within Site Builder.

Note: One known limitation of master pages is that they cannot be applied to widget pages, yet. We are working on having this ready for a future release.

To learn more about this feature check the JIRA ticket LPS-98690

Facilitate editing content displayed in a fragment-based page
For content authors, it is very handy to be able to quickly access the edition of a given content as they are seeing it on a page. The alternative is to go to the content administration application and look for the specific content, which may take time and always leaves some uncertainty as to whether it's really the right content. This new feature allows users with permission to edit any content displayed to enter a “Content Edition mode” in order to make changes to the inline content (requires specific new permission) or to access the edit form for reusable content. More info in LPS-97188.

The new Out of the box fragment to display individual content provides an easy to use and very versatile way to display individual content on a page. Page authors just need to select the desired content and choose the desired template among the ones presented. Web Content, Blog Entries and Documents are supported out of the box. Third party developers can add support for their own custom entities as well as custom templates for those or out of the box types. More info in LPS-98872

We have also reintroduced a Tree view of the pages of a site allowing site administrators to quickly navigate to any page as well as quickly add pages. This view is the evolution of the Page Navigator introduced in 7.2 and also provides a quick page search. More info in LPS-102335

Facilitate automated deployment of fragments
By popular demand we have introduced a simpler way to automate the provision of fragments in a Liferay-based solution. It is now possible to just add a fragments ZIP file (for example created with the Fragments Toolkit) into the deploy folder, to make those fragments available for all sites. Furthermore, it’s also possible to specify that those fragments should only be made available for specific virtual instances or sites. This is specially handy in automated deployment systems, since it’s no longer necessary to wait until the server is up and running to do the import. Liferay now takes care of it for you. More info in LPS-104626

Automatic Conversion of Widget Pages to Content Pages: The new fragment-based Content Pages provide significant benefits for certain use cases, however what can I do if I already have my site built with many widget pages? Automatic conversion comes to the rescue. While an exact conversion is not always possible, this feature does most of the heavy lifting, allowing page administration.

It is now possible to convert a Widget Page to a Content Page (aka Fragment-based page) Choosing to convert a page generates a conversion draft that can be previewed before publishing the page Content Pages excel at making it easier for non-technical users to create content and the conversion tool makes it easier to make the transition without having to recreate everything from scratch. More info in LPS-98302

Open graph support for pages allows non-technical users to improve how the links to their pages will be shown when they are shared in applications supporting this protocol, such as Facebook, Twitter or Linkedin. They will have the tools to customize and taylor the message they will use in social media, which in some cases might be the same they want to use for search engines, but in some others, those messages can slightly differ. Additionally, they can now get a real time preview of how their pages will appear both in search engines and social networks.  More info in LPS-98174 and LPS-105444.

Two final improvements are performance improvements for fragment based pages (LPS-98691) and a new option to define Content Sets based on search keywords (LPS-103722).

Platform Improvements

React.js Facilities: Liferay has started to transition big portions of its internal UI to React as stated in The State of Frontend Infrastructure by David Truong. As a side effect of those changes, new utilities have been added that can make life easier for others following a similar path. In particular, we’ve added:

  • ReactRenderer: A low level Java primitive that can be used to render React components simplifying the bootstrapping of a React component and generating the necessary JavaScript code for its initialization. At the time of this writing, this component does not render the component on the server side (does not generate HTML markup), which is something we’d like to consider in the future.

  • react:component: A high level JSP tag that can be combined with traditional MVCPortlet approaches to render and initialize complex React applications from traditional JSPs. This facilitates the progressive migration of complex JS applications and the adoption of more modern front-end workflows.

Upgrade Improvements: Many reliability improvements have been added to the upgrade process.  The upgrade process has been unified  between Core and Modules.  Auto upgrade behavior can be controlled by a new portal property: upgrade.database.auto.run.  More information can be found in the Breaking Changes document.

Documentation

All the features mentioned above are currently partially documented in the JIRA tickets linked. 
We will be announcing our new documentation initiative soon so please stay tuned for more information.

Compatibility Matrix

Liferay's general policy is to test Liferay Portal CE against newer major releases of operating systems, open source app servers, browsers, and open source databases (we regularly update the bundled upstream libraries to fix bugs or take advantage of new features in the open source we depend on).

Nothing has been removed from the matrix, however a couple things have changed.   Liferay Portal 7.3 CE was tested extensively for use with the following Application/Database Servers:

Application Server

  • Tomcat 9.0
  • Wildfly 16.0 (Previously 11.0)

Database

  • HSQLDB 2 (only for demonstration, development, and testing)

  • MySQL 5.7, 8.0

  • MariaDB 10.2

  • PostgreSQL 11.2 (Previously 10)

JDK

  • IBM J9 JDK 8

  • Oracle JDK 8

  • Oracle JDK 11

  • All Java Technical Compatibility Kit (TCK) compliant builds of Java 11 and Java 8

Source Code

Liferay Portal CE's source is available as a zip archive on the release page, or on its home on GitHub. If you're interested in contributing, take a look at our contribution page.

Bug Reporting

If you believe you have encountered a bug in the new release you can report your issue by following the bug reporting instructions found on the Liferay Portal CE site.

Getting Support

Support is provided by our awesome community. Please visit helping a developer page for more details on how you can receive support.

Fixes and Known Issues

Kudos

Many teams have worked hard to adjust to our new release cycle. It has not been easy but I am very pleased with the results so far. A special thanks goes out to our Engineering, QA and Release teams who helped make this release a reality. Also thank you to everyone in our community who spent many hours reporting bugs and providing feedback on new features. We couldn’t have done it without you!

Blogs

Congrats!

Is this version compatible with elasticsearch 7.5.x?

 

Thx

Hi Miguel, Liferay Portal 7.3 CE GA1 is not compatible with ES 7.x.  It currently works with ES 6.x.  The current plan is to add ES 7.x support to one of the upcoming 7.3 CE releases.  Once we do that it will be highlighted in the new feature section.

-Jamie

Am I getting this right? Liferay is dropping support for Elastic Search 7? 7.2 CE supports ES 7.x  https://portal.liferay.dev/docs/7-2/deploy/-/knowledge_base/d/upgrading-to-elasticsearch-7  

This is  a breaking change then, how can this be 7.3 if it breaks support for ES 7.x

Hi Magnus (and Miguel),  I spoke with our internal teams to get more information on what is going on with ES 7.x.  We are currently reworking how ES 7.x works with Portal and once that is ready ES 7.x will be included with the bundle.

However in the meantime we decided that it would make sense to go ahead and provide the ES 7.x connector in Marketplace for 7.3 CE GA1 similar to what we did with 7.2.  

We are working on porting it to 7.3 and will be releasing it soon.

* What's the Timeline for DXP?

* " Out of the box fragment to display individual content ". Can this fragment be used like the "content display" fragment in display pages?

DXP will be released later in the year, probably around Q4. We will release several CE 7.3 releases before that with more and more features.

 

Regarding the " Out of the box fragment to display individual content": Yes, exactly. What we have done is expand that fragment which was previously only available for Display Pages, so that it can be used in any page to display any existing content. The rendering of the content is determined by Renderer classes or by Templates (in the case of Web Content).

Any chance of this fragment being importable to a 7.2.10 env then? :D

Hey Tom,

 

Developing this fragment required several improvements to the configuration capabilities of fragments that cannot be easily backported. So it's necessary to upgrade to 7.3 to use it.

 

Meanwhile you can use the Web Content Display widget for the same purpose, with the limitation that it's only for Web Content.

Hah. So long till the next DXP?

Any chance that the Navigation tree will be backported? From all the things I noticed in 7.3 it is the thing that I miss most in 7.2.

Sorry Christoph, we will not backport it. However, it might not be so difficult for you to grab the code and make it work in 7.2, since most of the individual components were already there.

Good to know about this release!

 

@Jamie, check the 'release page' link, it points to 7.2.1 tag instead of 7.3.0 (https://github.com/liferay/liferay-portal/releases/tag/7.3.0-ga1)

 

Another question: when will be available the 7.3.0 release.portal.bom? 

Hi Luis,

Thanks for letting me know about the 'release page' link.  I have corrected it now.

 

I have also asked about the release.portal.bom file and will let you know when I hear something.

Congrats! It seems that the "theme builder" for 7.2 does not work with this version. Have you created a theme builder for this version?

Thank you so much.

 

I just tried this release yesterday and I'm seeing an issue in the control panel ui. When I expand on of the items in the menu I am then unable to expand any others until I do a reload on browser. I need to do a reload each time on want expand a different menu item. I've only tried this release in Chrome so I don't know if its browser specific or not.

Hey William,

Thanks for sharing your feedback. Is this still happening even after you reset your browser cache? I've seen that type of behavior in the past being caused by an old javascript being cached.

Also, if you can try with some other browser, that would be great.

Ok I cleared my cache in Chrome but issue I described above still persisted. 

Congrats! There hasn't been a new GA release of 7.1 for long time. Do you have any plan on that too? Tnx

Hey Adel,

As Dave mentioned, our policy is to release bug-fixing releases for the latest feature release. That means that for 7.1 we did bug-fixing releases up until when 7.2 was released. I'd encourage you to upgrade to 7.2 if possible. The difficulty will depend on the amount and type of custom development, but based on the feedback I've heard it's generally a reasonably simple upgrade.

 

BTW, note that starting with 7.3 we are switching to a rolling release cycle, which means more frequent releases that includes bug fixes and new features as well. See https://liferay.dev/blogs/-/blogs/introducing-liferay-portal-ce-rolling-releases-1 for details.