1.0.0-beta4 — Drupal 12 compatibility A compatibility release. No new features, no configuration or schema changes, no update hooks — a drop-in upgrade from 1.0.0-beta3. The module declared Drupal 12 support but had never been run against a Drupal 12 codebase, and was wrong in two hard ways: - The status report fataled. hook_requirements() used the REQUIREMENT_* constants, which Drupal 12 removed, so /admin/reports/status died with "Undefined constant" on any Drupal 12 site with Pagefind enabled. - The module could not be installed. composer.json pinned guzzlehttp/guzzle ^7.0 and symfony/process ^6 || ^7 while Drupal 12 ships Guzzle 8 and Symfony 8, so "composer require drupal/pagefind" refused to resolve. Both are fixed. Requirements reporting now uses hook_runtime_requirements() with the procedural hook behind behind a small version-bridging service; and a set of Drupal 12 test-suite changes landed (mandatory #[RunTestsInSeparateProcesses], the removed 'sequences' table, the shortcut module leaving core, and PHPUnit 12's mock-without-expectation notices). Drupal.org CI was also never running its next-major jobs: OPT_IN_TEST_NEXT_MAJOR only makes them exist, and they sat on when:manual. They now run on push, which is what caught the last two defects in this release. Verified: Drupal 12.0-dev / PHP 8.5 and Drupal 11.4.4 / PHP 8.4 — Kernel 156 tests / 1740 assertions, Functional 39, PHPStan level 8 and PHPCS clean on both; frontend 54/54; drupal.org pipeline 941193 green across all 14 jobs, verified per job. Still supports Drupal 10.3, 11, and 12 on PHP 8.1+.