All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Path validation for JSON fields
- Helper function get current RedisJSON version + (abstraction)
- (dev) More unit tests
- (dev) Update PHP-CS-Fixer to version
3.12.0
- Documentation on paginated responses
- Throw custom exception is client is missing
- Add compatibility for Predis version 2.x
LOAD ALLoption on Aggregate command (RediSearch2.0.13)- Profile command (RediSearch
2.2.0) (Issue#4) - Vector feature (RediSearch
2.4.0/2.4.2) - Add
DIALECToption (RediSearch2.4.3) (Issue#35) - (dev) Add
make cleanto remove all generated files - (dev) Add code coverage to
\MacFJA\RediSearch\Index - (dev) Add integration test for document insertion
- Missing default values on highlight option (Issue#38)
- Don't throw an exception if the result of the index definition is incorrect (Issue#46)
- Phpredis extension don't return raw response (Issue#46)
- Error with version reading if
MODULE LISTcommand is protected (PR#42)
- Rework paginated responses
- Add warning for Predis commands initialization
- Lazy load RediSearch version and index information in
\MacFJA\RediSearch\Index - Allow to provide RediSearch version manually to
\MacFJA\RediSearch\Index - (dev) Remove deprecated
--no-suggestoption of Composer in theMakefile - (dev) Update PHP-CS-Fixer version
\MacFJA\RediSearch\Redis\Response\AggregateResponseItem::getValue(use\MacFJA\RediSearch\Redis\Response\AggregateResponseItem::getFieldValueinstead)
- Allow Phpredis raw command to have 0 arguments (Issue#39)
- (dev) Update version and rules of PHP-CS-Fixer and PHPStan
- Summarize Search option enabled by default (without possibility to disable it) (Issue#26)
- Highlight Search option enabled by default (without possibility to disable it) (Issue#26)
- Fix error when parsing response from Search with NOCONTENT flag
- Make PaginatedResponse
validiterator function work
- Support from JSON document (require RediSearch 2.2)
- (dev) GitHub Actions
- Protection against division by 0
- (dev) Code coverage with XDebug 3
- (dev) Defined list of allowed Composer plugins
- Fix
PaginatedResponseindex (now start at 0, and have a linear progression)
resetmethod for builder (\MacFJA\RediSearch\IndexBuilderand\MacFJA\RediSearch\Query\Builder)- Allow PHP 8.0
- (dev) Allow
podman(in addition todocker) as container runner for integration test
APPLYoption of Aggregate command is now dependent of the last inserted option (if the option have a meaning forAPPLY)- (dev) Update
phpstan(from0.12to1.2)
- Fix the
APPLYoption of the Aggregate command
- (doc) Fix GPS coordinate (should be longitude first)
AmpRedisClientpipeline not sequential
- Allow multiple connector for Redis (PR#17)
- Allow specific feature of RediSearch depending of its version (Issue#6)
- Add more language (Issue#5)
- Add more language (Issue#5)
- Add
SORTABLEflag onGEOfield (Issue#5) - Add
CASESENSITIVEflag on fields (Issue#5) - Add
UNFflag on fields (Issue#5)
- Remove hard dependency on Predis (Issue#16)
- Full rework of the library
- Implementation of SLOP parameter (PR#8)
- Correctly handle Search result with NoContent flag (Issue#9, Issue#10, PR#13)
- Don't double % in fuzzy search (Issue#11, PR#14)
- Fix exact match not used inside text facet (Issue#12, PR#15)
- (dev) Fix missing
@usesin Unit Test
- Shorthand for Reducer functions
- Add Deprecated section in
CHANGELOG.md - Add Redis pipeline support
- Prefix properties name with
@in Aggregation's SortBy (keep BC) - Add more unit tests (Aggregation options, Field creation, DataHelper, RedisHelper)
- (dev) Add mutation testing
- Allow
GROUPBYwith no properties - Allow
GROUPBYwith no reducers - (dev) Replace
php-parallel-lintlib. - (dev) Add Php-Cs-Fixer on
tests/ - (dev) Improve Makefile
- Fix namespace of tests
- Aggregation result can now be an array
- Fix Index builder options not preserved (PR#3)
- Aggregation SortBy allow 0 (not limit) as value for Max
- Fix helper removing "nullish" values (
array_filteris too lax by default) - Fix order in fields creation not being correct
- Don't allow empty facet in search query
MacFJA\RediSearch\Aggregate\Exception\NotEnoughPropertiesExceptionMacFJA\RediSearch\Aggregate\Exception\NotEnoughReducersException
- Bad copy/paste in the README file
- Allow
nullvalue in Aggregate result - Use correct namespace in the README file
- Detection of syntax error from Redis response
- Allow multiple level of fuzziness
- Escape values in the query builder
- Wrong output of the NumericFacet (Issue#2, PR#1)
- Missing Composer plugin
- Missing
getSeperatormethod inTagField - Missing total number of result
- Fix typo in search parameter (
RETURN) - Fix prefixes data from index information
- Unit test on NumericFacet (PR#1)
- Index stats can return fields as object.
- Fields implements Comparable interface
- Paginate results.
- Syntax error detection in search.
- Rename
Index::addFromArraytoIndex::addDocumentFromArrayfor consistency (Depreciation, keeping BC) - Rename namespace from
MacFJA\RedisSearchtoMacFJA\RediSearch(Depreciation, keeping BC) - Uniformize Builder interface (Deprecation, keeping BC)
- The whole namespace
MacFJA\RedisSearch(replaced byMacFJA\RediSearch) MacFJA\RediSearch\Aggregate::aggregateMacFJA\RediSearch\Index::addFromArrayMacFJA\RediSearch\Index\Builder::createMacFJA\RediSearch\Search::search
1.0.0 - 2020-12-05
First version