Releases: PHP-CMSIG/search
Release 0.7.1 (2025-03-19)
SEAL 0.7.1
What's Changed
Full Changelog: 0.7.0...0.7.1
- Add interesting articles about search technoligies by @alexander-schranz in #499
- Remove Yii gii package for easier maintainance by @alexander-schranz in #500
- Add support for Loupe 0.10 🎉 by @alexander-schranz Thx @Toflar in #501
Release 0.7.0 (2025-02-28)
SEAL 0.7.0
What's Changed
Full Changelog: 0.6.1...0.7.0
- Add highlight methods to search and search builder 🎉 @Toflar @alexander-schranz in #349
- Add helper to ease creating an empty result 🎉 @Toflar in #497
- Add support for Laravel 12 🎉 @alexander-schranz in #494
- Update research docs with removed search SaaS @alexander-schranz in #480
- Add missing documentation about bulk operations @alexander-schranz in #484
- Fix mezzio linting task and php requirement and fix Yii example run @alexander-schranz in #485
- Add missing Loupe example to Integration READMEs @alexander-schranz in #486
- Change documentation version to 0.7 @alexander-schranz in #493
- Fix old namespace usages in documentation @alexander-schranz in #495
With this new release you can use the highlight
method to get additional _formatted
data with the matched string:
$result = $this->engine->createSearchBuilder('blog')
->addFilter(new Condition\SearchCondition('Search Term'))
->highlight(
fields: ['title', 'description'],
preTag: '<mark>',
postTag: '</mark>',
)
This is supported by all Adapter with the exception of Redisearch see: #491
Release 0.6.1 (2025-01-24)
SEAL 0.6.1
- Remove infection from yii app example (#479) (@alexander-schranz, thx @vjik @szepeviktor)
- Enable Yii debugger for tests (#478) (@szepeviktor)
- Update lock file marking (#474) (@szepeviktor)
- Fix some typos (#475) (@szepeviktor)
- Add support for Loupe 0.9 🎉 (#473) (@alexander-schranz) (See also Loupe 0.9 Release Notes @Toflar)
- Add Support for autocreate of an Index for Loupe and Memory Adapter 🎉 (#471) (@alexander-schranz)
Release 0.6.0 (2024-12-27)
Full Changelog | Which Search Engines do you use and why? | Are you working with SEAL? Let me know!
Introduce New Logo 🎉
created by Meine Wilma
Introduce PHP CMS-IG 🏗️
What did begin as the schranz-search project, a research around different search engines. Goes forward as a cooperation between different Content Management System. SEAL – The Search Engine Absraction Layer for PHP is now under the PHP-CMSIG organisation, read more about the organisation here. We moved also to a new namespace to represent this new organisation and cooperation.
To upgrade use search and replace also have a look at the .examples changes to better understand the upgrade.
-
Package names:
schranz-search/seal
->cmsig/seal
schranz-search/seal-...-adapter
->cmsig/seal-...-adapter
schranz-search/laravel-package
->cmsig/seal-laravel-package
schranz-search/mezzio-module
->cmsig/seal-mezzio-module
schranz-search/spiral-bridge
->cmsig/seal-spiral-bridge
schranz-search/yii-module
->cmsig/seal-yii-module
schranz-search/symfony-bundle
->cmsig/seal-symfony-bundle
-
Namespaces:
Schranz\Search\SEAL
->CmsIg\Seal\
Schranz\Search\Integration
->CmsIg\Seal\Integration
-
Config Files:
schranz_search.*
->cmsig_seal.*
-
Config, Service names, Tagged Services:
schranz_search.*
->cmsig_seal.*
-
Commands:
schranz:search:*
->cmsig:seal:*
-
Spiral Integration Changes:
SearchBootloader
->SealBootloader
SearchConfig
->SealConfig
seal.php
->cmsig_seal.php
BC Breaks
- Move SEAL to CMS-IG namespace (BC Break) (#458) (@alexander-schranz)
- Introducing partial reindexes (BC Break) (#460) (@Toflar)
- Remove support for search multi Indexes by once (BC Break) (#451) (@alexander-schranz)
- Add option to control bulk size for reindex commands (BC Break) (#434) (@alexander-schranz)
Changes
- Update elasticsearch docker image from 8.15.3 to 8.17.0 (#469) (@alexander-schranz)
- Refix phpstan issues in spiral integration and add missing docs for reindex opitons (#468) (@alexander-schranz)
- Fix CI issues checking out old commits (#467) (@alexander-schranz)
- Fix phpstan issues in spiral integration (#466) (@alexander-schranz)
- Make sure identifiers are empty (#465) (@Toflar)
- Introducing partial reindexes 🎉 (BC Break) (#460) (@Toflar)
- Move Mono Repo hint to the top of the sub readme files (#464) (@alexander-schranz)
- Update Loupe to 0.8 (#461) (@alexander-schranz)
- Add cmsig/seal packages replaces schranz-search packages (#459) (@alexander-schranz)
- Move SEAL to CMS-IG namespace (BC Break) (#458) (@alexander-schranz)
- Update dependencies and docker image versions and ignore composer.lock file from stats diff (#455) (@alexander-schranz)
- Add Windows support for creating search adapters (#452) (@zoglo)
- Add tests for DSN parsing in AdapterFactory (#454) (@alexander-schranz)
- Add docs about new SearchBuilder for single index (#453) (@alexander-schranz)
- Remove support for search multi Indexes by once (BC Break) (#451) (@alexander-schranz)
- Add NotInCondition Filter 🎉 (#448) (@ToshY)
- Update Elasticsearch, Redisearch, Typesense docker compose files to latest versions (#449) (@alexander-schranz)
- Add InCondition Filter 🎉 (#447) (@alexander-schranz)
- Fix typos in AndCondition and OrCondition and Logo Creator, add hint about Algolia AndCondition (#443) (@alexander-schranz)
- Add creator hint to logo and fix favicon (#442) (@alexander-schranz)
- Add documentation about AndCondtion and OrCondition filters (#441) (@alexander-schranz)
- Add new logo for SEAL by Meine Wilma 🚀 🎉 (#440) (@alexander-schranz)
- Upgrade tooling dependencies (#439) (@alexander-schranz)
- Make And and OrConditions readonly (#438) (@alexander-schranz)
- Add support for Nested Conditions via AndCondition and OrCondition 🎉 (#433) (@Toflar)
- Fix yii integration tests (#437) (@alexander-schranz)
- Fix abstract bulk test (#436) (@alexander-schranz)
- Move bulk method from own Interface to IndexerInterface (#435) (@alexander-schranz)
- Add option to control bulk size for reindex commands 🎉 (BC Break) (#434) (@alexander-schranz)
- Add bulk operation for Engine and Indexers and use it for reindex operation 🎉 (#430) (@alexander-schranz)
- Improve algolia cleanup script to retry deletion (#429) (@alexander-schranz)
- Add stricter validation for field names (#427) (@alexander-schranz)
- Prepare 0.6 branch (#425) (@alexander-schranz)
Release 0.5.0 (2024-09-24)
- Add GeoBoundingBoxCondition 🎉 (#420) (@ker0x)
- Add GeoDistanceCondition 🎉 (#363) (@ker0x)
- Upgrade the Spiral example to latest version 🎉 (#418) (@roxblnfk)
- Upgrade loupe to version 0.7 🎉 (#421) (@alexander-schranz)
- Upgrade Algolia package to V4 🎉 (#414) (@alexander-schranz)
- Fix code style in AbstractSearcherTestCase (#424) (@alexander-schranz)
- Update different tooling dependencies to latest version (#419) (@alexander-schranz)
- Fix Yii compatibility issues with dev packages in the example project (#417) (@alexander-schranz)
- Update meilisearch image to new v1 tag (#415) (@alexander-schranz)
- Update php-cs-fixer (#413) (@alexander-schranz)
- Fix update of docs page (#412) (@alexander-schranz)
- Upgrade docker image to elasticsearch 8.15 (#411) (@alexander-schranz)
- Upgrade dependencies (#410) (@alexander-schranz)
- Upgrade redis to 7.4.0-v0 (#408) (@alexander-schranz)
- Upgrade Meilisearch to 1.9 (#406) (@alexander-schranz)
- Fix yii dependencies in example (#405) (@alexander-schranz)
- Update elasticsearch images to 8.14 (#399) (@alexander-schranz)
- Upgrade Meilisearch to 1.8 (#397) (@alexander-schranz)
- Upgrade Typesense to 26.0 (#396) (@alexander-schranz)
- Update dev tools to latest versions (#395) (@alexander-schranz)
- Update elasticsearch images (#385) (@alexander-schranz)
- Prepare 0.5 branch (#382) (@alexander-schranz)
Release 0.4.0 (2024-03-21)
- Add Support for Laravel 11 🎉 (#378) (@alexander-schranz)
- Fix Format fields with underscore in Loupe Adapter (#372) (@ker0x)
- Fix Laravel artisan key generate in composer update (#380) (@alexander-schranz)
- Fix Laravel 11 post install behaviour (#379) (@alexander-schranz)
- Prepare 0.4 branch (#377) (@alexander-schranz)
- Update Meilisearch docker images to 1.7 (#376) (@alexander-schranz)
- Fix Spiral Integration Example (#375) (@alexander-schranz)
- Upgrade all dependencies to latest versions (#374) (@alexander-schranz)
- Add nullable_type_declaration syntax union to php-cs-fixer config (#373) (@alexander-schranz)
- Add dependency injection alias for Schema class (#366) (@alexander-schranz)
- Fix Opensearch Docker compose container exited (1) appearing in Opensearch 2.12 (#369) (@alexander-schranz)
- Update dependencies (#362) (@alexander-schranz)
- Upgrade rector to 1.0 (#361) (@alexander-schranz)
- Add Blog post Scaling Elasticsearch for Fun and Profit by Jason Taylor to research docs (#360) (@alexander-schranz)
- Update Research list with paradedb (#359) (@alexander-schranz)
- Update code style with php-cs-fixer (#350) (@alexander-schranz)
- Upgrade dependencies and elasticsearch to 8.12 (#347) (@alexander-schranz)
- Update cache action for publish (#346) (@alexander-schranz)
- Upgrade python action to latest version (#345) (@alexander-schranz)
- Fix overview svg image (#344) (@alexander-schranz)
Release 0.3.1 (2024-01-19)
- Fix conflict inside the integration packages to adapters (#340) (@alexander-schranz)
- Upgrade meilisearch docker image to 1.6 (#339) (@alexander-schranz)
- Add @Toflar to Funding.yml of Loupe Adapter (#338) (@alexander-schranz)
Release 0.3.0 (2024-01-10)
Highlights
- 🔍 Support for Loupe 0.5
- 🏗️ Support for Symfony 7
- 🐘 Support for PHP 8.3
- Move from 0.2 to 0.3 branch (#337) (@alexander-schranz)
- Add Support for Loupe 0.5 (#335) (@alexander-schranz, Thx @Toflar)
- Add Symfony 7 Support for Typesense Adapter and Solr Adapter (#336) (@alexander-schranz)
- Update elasticsearch, redis and typesense docker image (#334) (@alexander-schranz)
- Allow mezzio with PHP 8.3 (#333) (@alexander-schranz)
- Add PHP 8.3 to test matrix (#323) (Thx @ker0x)
- Use phpstan.dist.neon instead of phpstan.neon file (#332) (@alexander-schranz)
- Add Support for Symfony 7 (#322) (Thx @ker0x)
- Fix documentation build (#331) (@alexander-schranz)
- Update Rector to 0.19 (#330) (@alexander-schranz)
- Add void return type for configure methods of commands (#325) (Thx @ToshY)
- Fix index_name_prefix ignored when using one schema file per index (#321) (Thx @dhirtzbruch)
- Fix combination of SearchCondition and EqualCondition in Elasticsearch and Opensearch (#314) (Thx @dhirtzbruch)
- Fix array syntax in code samples (#307) (Thx @keichinger)
- Fix missing indentation in code fence (#308) (Thx @keichinger)
- Add missing \r\n line break to test suite (#306) (@alexander-schranz)
Release 0.2.1 (2023-11-21)
Full Changelog | Documentation | Repository
- Update dependencies (#305) (@alexander-schranz)
- Update Meilisearch Docker Image to v1.5 (#304) (@alexander-schranz)
- Fix Solarium Solr PHP Client version (#303) (@alexander-schranz)
- Fix query filtering of "\r" containing values in Solrr (#302) (@alexander-schranz, Thx @thomascorthals )
- Fix escaping of string based filters in AlgoliaSearcher (#299) (@alexander-schranz)
- Fix escaping of string based filters in RedisearchSearcher (#298) (@alexander-schranz)
- Fix escaping of string based filters in SolrSearcher (#297) (@alexander-schranz)
- Fix escaping of string based filters in LoupeSearcher (#296) (@alexander-schranz)
- Fix escaping of string based filters in TypesenseSearcher (#295) (@alexander-schranz)
- Fix escaping of string based filters in MeilisearchSearcher (#294) (@alexander-schranz)
- Fix Filter Value escaping for different Adapters (#293) (@alexander-schranz)
- Fix BooleanCondition for MeilisearchSearcher (#291) (@alexander-schranz, Thx @manuelderuiter)
- Fix BooleanField mapping in SolrSchemaManager (#286) (@alexander-schranz)
- Fix BooleanCondition for RedisearchSearcher (#285) (@alexander-schranz)
- Fix ComplexElasticsearchMapping mapping test (#282) (@alexander-schranz)
- Fix ComplexOpensearchMapping mapping test (#281) (@alexander-schranz)
- Fix BooleanCondition for AlgoliaSearcher (#280) (@alexander-schranz)
- Fix BooleanCondition for TypesenseSearcher (#278) (@alexander-schranz)
- Add new test case for equal boolean field (#277) (@alexander-schranz)
- Upgrade Elasticsearch docker images to 8.11.0 (#288) (@alexander-schranz)
- Fix publish of documentation for 0.2 (#287) (@alexander-schranz)
- Bump php-cs-fixer/shim from 3.36.0 to 3.37.1 in /packages/seal (#274) (@dependabot[bot])
- Add "update: strategy: "widen" to dependabot.yml (#275) (@alexander-schranz)
- Update dependencies (#272) (@alexander-schranz)
- Add support for PHP Redis Extension ^6.0 (#271) (@alexander-schranz)
- Fix code example for SearchCondition (#270) (Thx @MDevster)
Release 0.2.0 (2023-09-29)
SEAL welcomes Loupe
A search engine based on only PHP and SQLite
An SQLite based, PHP-only fulltext search engine.
Use the new adapter with schranz-search/seal-loupe-adapter
.
Read more about Loupe project by @Toflar: https://github.com/loupe-php/loupe.
- Update dependencies (#262) (@alexander-schranz)
- Test against Redisearch 7.2.0 (#261) (@alexander-schranz)
- Test against Elasticsearch 8.10.0 (#259) (@alexander-schranz)
- Test against Meilisearch 1.4 (#260) (@alexander-schranz)
- Test against Typesense 0.25.1 (#257) (@alexander-schranz)
- Update doc version to 0.2 (#256) (@alexander-schranz)
- Add support for Loupe 0.4 version (#250) (@alexander-schranz)
- Upgrade to schranz/mono 2.0.0 (#248) (@alexander-schranz)
- Fix subtree split by use github.ref_name instead of ENV variable (#247) (@alexander-schranz)
- Fix split by use GITHUB_HEAD_REF (#246) (@alexander-schranz)
- Add conflict to doctrine/dbal < 3.6 for loupe adapter (#245) (@alexander-schranz)
- Upgrade to phpunit 10 (#244) (@alexander-schranz)
- Upgrade rector to 0.18.1 (#243) (@alexander-schranz)
- Prepare 0.2 version (#242) (@alexander-schranz)
- Add new label to Loupe (#239) (@alexander-schranz)
- Fix CI for Loupe Adapter (#238) (@alexander-schranz)
- Add support for Loupe PHP (#222) (@alexander-schranz, Thx @Toflar)
- Dependency and tooling version updates (#234) (@alexander-schranz)
- Fix issue with new redis version (#233) (@alexander-schranz)
- Fix pull request target checkout the correct commit (#231) (@alexander-schranz)
- Add check if local dependencies works like expected (#228) (@alexander-schranz)
- Fix MemorySearcher for LessThan and GreaterThan test cases (#227) (@alexander-schranz)
- Fix MemorySearcher for LessThan and GreaterThan test cases (#227) (@alexander-schranz)
- Add testing for greater and lesser than on multi values (#226) (@alexander-schranz)
- Add loupe to the research document (#221) (@alexander-schranz)
- Fix Yii framework composer lint codecept build task (#219) (@alexander-schranz)
- Add temporary fix for Yii Ci (#218) (@alexander-schranz)
- Move code linting into single github action with schranz/mono (#206) (@alexander-schranz)
- Update dependencies and spiral phpstan baseline (#217) (@alexander-schranz)
- Update Symfony Example to 6.3 (#207) (@alexander-schranz)
- Fix dependantbot directories (#216) (@alexander-schranz)
- Enable dependabot (#213) (@alexander-schranz)
- Add memory adapter to README (#209) (@alexander-schranz)
- Remove general pull_request action (#210) (@alexander-schranz)
- Replace github action target from pull_request to pull_request_target (#208) (@alexander-schranz)
- Add mono for managing the repository (#205) (@alexander-schranz)
- Update dependencies and fix code style (#204) (@alexander-schranz)
- Add documentation how to create own adapter (#203) (@alexander-schranz)
- Fix small typo (#197) (@jmsche)