Skip to content

StaticPrefixCollection error handling broken when PHP is using libpcre2-10.43 #54067

@Lustmored

Description

@Lustmored

Symfony version(s) affected

7.0.3

Description

The error message for lookbehind assertion of not fixed length has changed in new libpcre2 version to:

Compilation failed: length of lookbehind assertion is not limited at offset 0

This breaks error handling in StatixPrefixCollection::handleError, which checks for:

public static function handleError(int $type, string $msg): bool
{
        return str_contains($msg, 'Compilation failed: lookbehind assertion is not fixed length');
}

Downgrading libpcre2 solves the issue.

How to reproduce

  1. Update system to libpcre2-10.43 (on Gentoo systems this gets pulled automatically)
  2. Run symfony console cache:clear on a project with declared route prefixes

Possible Solution

No response

Additional Context

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions