Skip to content

Deprecate GRegex

Emmanuele Bassi requested to merge no-more-regex into main

GRegex is based off of PCRE1, and cannot be moved to PCRE2 without breaking its API contract. PCRE1 is in maintenance mode, and will not see any new feature.

GRegex made sense back in the day when we embedded a copy of PCRE, but:

  • the maintenance burden required to update the copy of PCRE to keep up with upstream, coupled with the lack of synchronisation between GLib and PCRE releases, has become too high
  • downstream distributors try very hard to not rely on vendored dependencies, which meant that GLib depended on a system copy of PCRE anyway, except on certain platforms, which made for interesting bugs
  • regular expressions are a niche use case, and PCRE is already portable to all the platforms GLib cares about

Thus, we recommend users to migrate their code from GRegex to PCRE2.

Fixes: #1085 (closed)

Merge request reports