Skip to content

Add support for OpenSearch 2.x

Latest
Compare
Choose a tag to compare
@hugo-goncalves-kununu hugo-goncalves-kununu released this 04 Feb 18:17
0194942

Changes

Backward Compatibility Breaks

  • Bump PHP minimum version to PHP 8.3
  • Kununu\Elasticsearch\IndexManagement\IndexManager was removed
    • Use Kununu\Elasticsearch\IndexManagement\Elasticsearch\IndexManager instead, for Elasticsearch
    • Use Kununu\Elasticsearch\IndexManagement\OpenSearch\IndexManager for OpenSearch
  • All non-abstract classes from Kununu\Elasticsearch\Query namespace are now final
  • All non-abstract classes from Kununu\Elasticsearch\Result namespace are now final
  • QueryInterface::sort method signature was changed (see bugfixes section below)

Bugfixes

  • Implementation of QueryInterface::sort method was redefining the signature:
    • Now the interface supports the proper 3 arguments (which were even mentioned in the documentation)

Added

  • Support for OpenSearch 2.x
    • Index Manager
    • Repository

Improvements

  • For the library internal development:
    • Bump PHPUnit version to 11.5
    • Formatted all code according to the latest release of kununu/scripts
    • Introduce code quality tools: Rector and PHPStan
      • Add those tools to the CI pipeline
      • Bump code to PHP 8.3 standards (e.g. typed constants)
      • Analyse and fix errors reported by Rector and PHPStan
    • Replace deprecated SonarCloud action with latest SonarQube Scan action to perform Sonar checks

Deprecated

  • Kununu\Elasticsearch\Repository\Repository is deprecated
    • It should be replaced by Kununu\Elasticsearch\Repository\Elasticsearch\Repository if being used isolated
    • Or child classes should extend from Kununu\Elasticsearch\Repository\Elasticsearch\AbstractElasticsearchRepository instead