Skip to content

P6 Core 6.9.0

Release date: Wednesday, 8th of March 2023

Documentation can be found here.

This release introduces some breaking changes. We recommended that you carefully read the migration guide.

Features

Magic links are authentication-less token-based action links that can be sent by email for example and allow end users to interact with the solution without requiring to be logged in or even registered.

Applications

Applications can now be upgraded and rolledback. These actions can also be made on multiple applications at a time. A fresh tutorial explains the full lifecycle of an app. DSL methods were added too.

Workflows

Thanks to the addition of a new SCRIPT type to the element the workflow step definition, it is now possible to use a script to determine the list of assignees in a workflow step definition rather than rely on the organizational tree.

Also, thanks to the addition of the TransactionLockName property in the workflow step definition, it is possible to use an optional named lock in a workflow to make sure affected transactions are only updated when the lock is acquired.

DSL

Documentation

  • Old references to deprecated transaction analytics features were removed.
  • Document transaction flags.
  • Document OIDC connection example for OneLogin and Okta IDP.
  • Document usage of I18nStringMap to display localised strings in views.
  • Document Javascript forms in the forms service and explain how to migrate away from workflow custom forms.
  • Add extra documentation about the role of the ‘id’ parameter in p6.xslt.process() DSL method.
  • Enrich documentation of script testing.
  • Document application.conf.
  • Documents forms permissions.
  • CMB API documentation fully revamped.

Other

  • Allow changing the auto-start property of a route even if set as read-only in the app.
  • Allow dynamic grouping of buttons in a view thanks to the addition of a new viewable type called Group.
  • Added more JDBC config properties that can be added to application.conf, more on this here.
  • Force type String on Searchable with a Choice.
  • Better IDE integration and reduced app dependencies in build.gradle file.
  • Many security fixes and performance optimizations.
  • Pretty print of table column names.

Services/Features Dropped

The Reports service is dropped in favor of the Charts service. The already dysfunctional Stripe service is dropped in favor of the Stripe app.

SDOC and SURI were dropped, please use buttons and forms instead.

For security reasons, the ability to execute arbitrary Shell commands via String.execute() in Groovy was disabled.

The support of the Corda distributed ledger was also dropped with no replacement since it was never used.

There are also deprecated features, please carefully read the migration guide.

Upgrades

  • JDK 8 -> 17
  • Camel 2 -> 3
  • Groovy 2 -> 4

All the above might introduce regressions, please carefully read the migration guide.

Bug Fixes

This release fixes many bugs:

  • Bad cors.allowedOrigins value shipped in reference.conf stopping connection from sidetrade.io origins
  • In p6core 6.9.X AS4 Peppol fails due to rsa-sha1 in SMP response processing
  • Workflow steps service: invoke() method should throw P6Exception when zero assignees resolved
  • Content Mode lost when editing a service item
  • ‘contentMode’ field confusing on service items
  • Missing properties on TypedP6Dsl
  • Index creation error when a table or view name contains a hyphen
  • Common CMB Handler Overwrites Language Descriptions
  • Various service UI fixes:
    • Content Mode lost when editing a ServiceItem
    • In the tables service, when a descriptor is deleted, its preferences are not deleted
    • Various application management errors
    • Resize active routes columns resize every column
    • Keep scrolling when switching from script resources
    • Wrong message displayed when importing table data