Applies to CiviCRM 6.19.0 (7 Oct 2026) and 6.19.1 (13 Oct 2026) on Joomla Updated 16 Oct 2026

CiviCRM 6.19 is a feature release with two changes that matter specifically for Joomla sites. Here is what is in it, from the Joomla side, and how we would update.

At a glance

Security fixesNo
Database schema changeYes – run the database upgrade
API changeYes – check custom integrations
New featuresYes
Joomla 6 supportStill "Joomla 5+" – see status

For Joomla sites

The separate-database upgrade bug is fixed

If CiviCRM keeps its data in its own database, earlier upgrades through the Joomla installer could rewrite its settings with the Joomla database credentials (dev/joomla#60). 6.19.0 fixes that. Background and clean-up steps: CiviCRM with a separate database on Joomla.

The fix is in the installer of 6.19.0 itself, so this is the first upgrade where you shouldn't need to restore CIVICRM_DSN by hand. Back up both settings files anyway.

Fewer "class not found" errors on install and upgrade

As part of the Joomla 5 compatibility work (dev/joomla#54), 6.19.0 fixes class-not-found errors during Joomla installation and upgrade and removes legacy code. It doesn't add Joomla 6 support, but it is the same area of code that Joomla 6 support will build on.

Other changes worth knowing

  • CiviMail: custom fields can now be used in mailing tokens, and FlexMailer supports CC and BCC.
  • Message templates: send yourself a preview email from the message admin screen.
  • Search: full-text search can power the contact quick search, with better matching and speed.
  • SearchKit and FormBuilder: several improvements, including smarter smart-group handling and more filters.
  • Longer fields: custom group titles and tag names can be longer (schema change).

6.19.1 (13 Oct 2026)

A bug-fix release, no schema or API changes and no security fixes. It fixes recurring contributions created through FormBuilder, a CKEditor 4 status popup, SearchKit dropdown options in conditions, APIv4 performance with hierarchical entities, a CiviContribute warning and KCFinder file icons. If you are going to 6.19, go straight to 6.19.1.

Our verdict

  • Separate CiviCRM database? Worth updating soon – the upgrade-bug fix alone is reason enough.
  • Everyone else: a normal feature update. Do it on staging first because of the schema change, run the database upgrade, and test custom integrations that use the API.
  • On Joomla 6 with a compatibility layer: install on staging and check the user–contact sync and cron before live, as with every release.

Our routine is in A safe CiviCRM update routine for Joomla sites. Full official notes: 6.19.0, 6.19.1.

For developers

  • Schema change: run cv upgrade:db (or the browser upgrade) right after installing the package, before anyone uses the site.
  • API change: grep your extensions and integrations for the entities you call, and run their tests. For APIv4 callers, property names are case-sensitive since 6.17.1.
  • CiviMail tokens with custom fields: if you added custom-field tokens through a hook before, check for duplicates in the token list after updating.
# terminal – where does our own code call the API?
grep -rnE 'civicrm_api3?\(|Civi\\Api4|api4\(' /path/to/civicrm/ext/org.example.* --include=*.php | cut -c1-140

We test every CiviCRM release on Joomla 6 before it goes on client sites. The result per release is on our service page.

See Release watch →