Skip to content

Add ES 9.x CI matrix and force_source deprecation notice - #93

Closed
abkrim wants to merge 1 commit into
pdphilip:mainfrom
abkrim:feature/elasticsearch-9-support
Closed

Add ES 9.x CI matrix and force_source deprecation notice#93
abkrim wants to merge 1 commit into
pdphilip:mainfrom
abkrim:feature/elasticsearch-9-support

Conversation

@abkrim

@abkrim abkrim commented Feb 20, 2026

Copy link
Copy Markdown
Contributor

Summary

Rebased on v5.4.0. No changes to composer.json — the v8 PHP client is forward-compatible with ES 9.x servers.

  • CI matrix: Added ES 9.0.0 to the test matrix alongside ES 8.18.0
  • force_source deprecation: Added notice in CompilesOrders.php — this highlighting parameter was deprecated in ES 8.11 and removed in ES 9.x
  • Docker: Updated docker-compose.yml to use official docker.elastic.co images

What was tested

Full test suite passes against both ES 8.18.0 and ES 9.0.0 without any code changes.

Test plan

  • ./vendor/bin/pest against ES 9.0.0 — all tests passed, 0 failures
  • composer validate — no errors

🤖 Generated with Claude Code

@abkrim
abkrim requested a review from pdphilip as a code owner February 20, 2026 14:33
@abkrim
abkrim force-pushed the feature/elasticsearch-9-support branch from cb48e65 to 5bcc596 Compare February 20, 2026 14:36
@pdphilip

Copy link
Copy Markdown
Owner

Hey @abkrim, the v8 PHP client is forward-compatible with ES 9.x servers; the constraint change isn't needed yet until v9 ships with features not in v8 that we'll need in the package itself.

What's driving this on your end beyond just using the latest client?

@abkrim

abkrim commented Feb 22, 2026

Copy link
Copy Markdown
Contributor Author

Hey @pdphilip, you're right — the v8 PHP client is forward-compatible with ES 9.x servers, so the constraint change isn't strictly necessary at this point.

On my end, I've been running ES 9.0 in production and wanted to make sure the package worked cleanly against it. The full test suite (269 tests) passes without any code changes, which is great news.

I'm happy to simplify this PR by dropping the composer.json constraint change and keeping only the parts that add value regardless:

  • CI matrix update: the workflow was testing against ES 7.17.3, which doesn't match the ^8.17 requirement. The updated matrix tests against ES 8.18.0 and 9.0.0 using the official docker.elastic.co images.
  • force_source deprecation notice: this highlighting parameter was deprecated in ES 8.11 and removed in 9.0, so the comment helps future maintainers.

Want me to push that simplified version, or would you prefer to handle the CI update separately?

@abkrim
abkrim force-pushed the feature/elasticsearch-9-support branch from f153ae6 to 925a6e7 Compare February 22, 2026 17:56
@abkrim abkrim changed the title Add dual Elasticsearch 8.x + 9.x support Add ES 9.x CI matrix and force_source deprecation notice Feb 22, 2026
Update PHP client constraint to ^8.17|^9.0 and CI workflow with matrix
testing for both ES 8.18.0 and 9.0.0. Docker images use official
docker.elastic.co registry. Mark force_source highlight parameter as
deprecated (removed in ES 9.x, deprecated since 8.11).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@abkrim
abkrim force-pushed the feature/elasticsearch-9-support branch from 925a6e7 to 0c5eb3d Compare February 24, 2026 06:23
@abkrim

abkrim commented Feb 24, 2026

Copy link
Copy Markdown
Contributor Author

Closing this PR — after our discussion, I agree the v8 PHP client is forward-compatible with ES 9.x servers, so the constraint change isn't needed at this point.

The CI matrix and force_source deprecation notice ideas are available if you want to pick them up separately. Thanks for the feedback!

@abkrim abkrim closed this Feb 24, 2026
@abkrim
abkrim deleted the feature/elasticsearch-9-support branch February 24, 2026 06:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants