From 7.x-1.x to 7.x-2.x

This is a major release and you might find that the syntax of some of the Patterns might have changed/being extended. Backward compatibility with Patterns created with the syntax of 7.x-1.x branch is not supported.

Syntactic and semantic validation

The new version of Patterns allows the components to implement two separated layers of syntactic and semantic validation, providing a very valuable feedback to the user that is going to run a pattern in case it is necessary to solve any possible conflicts.

Improvement of the export functions and components extension

Improvement of the export functions and components extension. The new version of Patterns provides a set of enhancements to export automatically the configuration of a site. All the main components possess now automatic export capabilities, and depending on the type of component new options to export it are offered. Two different use cases are distinguised:

  1. Export the configuration as a pattern consisting of a set of CREATE actions which allows users the creation of patterns for “fresh installation” of certain feature,
  2. Export the configuration as a pattern consisting of a set of MODIFY actions
    which allows users the creation of patterns to override the current settings (e.g.,
    to update the features developed in a testing site to a production site). The patterns generated ensure idempotency in the operations.

Custom functions as action handlers

Besides form handlers, also custom functions can be specified as action handler. For backward compatibility issues, they still has to accept two input parameters, and the second one actually contains the action data. See the User component for an example.

Patterns Server

The new version of Patterns provides the changes to offer compatibility with the new Patterns Server module (to be released soon), whose aim is to act as a hub for sharing Patterns files among Drupal users.

From beta to rc1

Export

The export submodule has been overhauled, and now it also supports export via the Batch API. The exported patterns can be download as a file or a zip archive.

Drush

Full drush integration was achieved. See this page for the list of commands.

General improvement

Several bug fixing, better error handling, and more explanatory error messages.

From alpha to beta

Patterns v.7 beta represents a major update compared to the previous version (Patterns. v.7 alpha). This section explains briefly what has changed.

Patterns module is split in several submodules

Patterns have been even more modularized. Separate submodules are available for: (i) components, (ii) parsers, and (iii) examples files.

Custom parsers

It is possible to write custom parsers for patterns files. At the moment Patterns can be read / written / and converted to and from the following formats: XML, YAML, PHP (serialized arrays). This way patterns are represented by an abstract entity in memory, regardless from their format on the file system.

Why custom parsers are a major improvements ?

They make the whole Patterns architecture a lot more flexible, and in particular they allow:

  • writing Patterns files in more efficient, compressed formats
  • writing Patterns files in extremely verbose formats
  • easily updating Patterns files from one release of Drupal to another
  • convert Drupal patterns into patterns for other CMS (e.g. Joomla), to make them really interoperable

Patterns automatic export

Automatic export of the configuration of the Patterns components have been improved, and made easier both from the user and developer perspective. If you are a developer, you may be interested in continuing reading this page.

Patterns includes

Patterns can now include sub-patterns. See how on this page. (TODO add page).

Patterns public page

You can select the Patterns file you would like to share with others, and those and only those will appear in a public web page, whose address can be configured through the settings page.

Info page

A page containing information about which components, parsers, and Patterns directory are currently enabled/available has been added.

Other improvements

  • Improved GUI
  • More settings
  • "Patterns check"

Patterns engine hooks become optional (since beta5)

All patterns hooks that are invoked when the patterns is run are optional. If missing, the engine will just skip them. This represents a big advantage for simple forms. Remember that validation is still provided by the form itself in most of the cases.

The only mandatory Patterns hook is now hook_patterns.