Problem/Motivation

This module is unusable on PHP 7.4, installation causes the following error when trying to add a server.

The website encountered an unexpected error. Please try again later.
ParseError: syntax error, unexpected '=>' (T_DOUBLE_ARROW) in Composer\Autoload\includeFile() (line 137 of modules/contrib/search_api_opensearch/src/SearchAPI/Query/FilterBuilder.php).
Composer\Autoload\includeFile('/var/www/html/web/modules/contrib/search_api_opensearch/src/SearchAPI/Query/FilterBuilder.php') (Line: 428)
Composer\Autoload\ClassLoader->loadClass('Drupal\search_api_opensearch\SearchAPI\Query\FilterBuilder')
spl_autoload_call('Drupal\search_api_opensearch\SearchAPI\Query\FilterBuilder') (Line: 262)
Drupal\Component\DependencyInjection\Container->createService(Array, 'search_api_opensearch.query_filter_builder') (Line: 176)
Drupal\Component\DependencyInjection\Container->get('search_api_opensearch.query_filter_builder', 1) (Line: 437)
Drupal\Component\DependencyInjection\Container->resolveServicesAndParameters(Array) (Line: 240)
Drupal\Component\DependencyInjection\Container->createService(Array, 'search_api_opensearch.query_param_builder') (Line: 176)
Drupal\Component\DependencyInjection\Container->get('search_api_opensearch.query_param_builder', 1) (Line: 437)
Drupal\Component\DependencyInjection\Container->resolveServicesAndParameters(Array) (Line: 240)
Drupal\Component\DependencyInjection\Container->createService(Array, 'search_api_opensearch.backend_client_factory') (Line: 176)
Drupal\Component\DependencyInjection\Container->get('search_api_opensearch.backend_client_factory') (Line: 89)
Drupal\search_api_opensearch\Plugin\search_api\backend\OpenSearchBackend::create(Object, Array, 'opensearch', Array) (Line: 21)
Drupal\Core\Plugin\Factory\ContainerFactory->createInstance('opensearch', Array) (Line: 83)
Drupal\Component\Plugin\PluginManagerBase->createInstance('opensearch', Array) (Line: 148)
Drupal\search_api\Form\ServerForm->buildEntityForm(Array, Object, Object) (Line: 85)
Drupal\search_api\Form\ServerForm->form(Array, Object) (Line: 106)
Drupal\Core\Entity\EntityForm->buildForm(Array, Object)
call_user_func_array(Array, Array) (Line: 532)
Drupal\Core\Form\FormBuilder->retrieveForm('search_api_server_form', Object) (Line: 278)
Drupal\Core\Form\FormBuilder->buildForm(Object, Object) (Line: 73)
Drupal\Core\Controller\FormController->getContentResult(Object, Object) (Line: 39)
Drupal\layout_builder\Controller\LayoutBuilderHtmlEntityFormController->getContentResult(Object, Object)
call_user_func_array(Array, Array) (Line: 123)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 578)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 124)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array) (Line: 97)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 158)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 80)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 57)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 106)
Drupal\page_cache\StackMiddleware\PageCache->pass(Object, 1, 1) (Line: 85)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 52)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 717)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)

Steps to reproduce

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

Comments

rlmumford created an issue. See original summary.

rlmumford’s picture

Drupal 9 supports PHP 7.3 or higher, this module should have a notice on the main page that it only works on PHP 8. You could probably also delete the 1.0.0-alpha1 version so that composer doesn't install it on <8 systems.

kim.pepper’s picture

Priority: Critical » Normal
Status: Active » Closed (works as designed)

It's up to the module maintainers to decide which version of PHP and any other dependencies they want to support.

rlmumford’s picture

Thats not disputed, and thank you for adding the warning to the home page. Deleting the 1.0.0-alpha1 release will stop composer from installing the module on