Releases: ruflin/Elastica
Releases · ruflin/Elastica
Release 7.1.2
Backward Compatibility Breaks
- Changed
Elastica\Exception\JSONParseException
inheritance, it now extends\JsonException
instead of\RuntimeException
#1949
Added
- Added
Elastica\Aggregation\NormalizeAggregation
#1956 - Added
Elastica\Suggest\Phrase::addDirectGenerator
to align with ES specification #1964 - Added support for
psr/log
2.0 and 3.0 #1971 - Added new optional 'case_insensitive' option to
Elastica\Query\Wildcard
#1894 - Added
Elastica\Result::getSort()
fetching the "sort" property of results #1979 - Added exposure of Point-In-Time ID for search responses in
Elastica\ResultSet::getPointInTimeId()
#1991 - Added
Elastica\Index::openPointInTime()
for opening a PiT on the index #1994 - Added possibility to specify PointInTime on
Elastica\Query::setPointInTime()
#1992 - Added
Elastica\Client::closePointInTime()
for closing a PiT #1995
Changed
- Updated
php-cs-fixer
to3.2.1
#1996, #1959,#1955 - Using default Elasticsearch images for testing instead of OSS #1954
Fixed
Release 6.2.0
Release 7.1.1
Backward Compatibility Breaks
- Changed
Elastica\Query\MatchQuery::setFieldParam()
signature to allow passing bool, float or int #1941 - Changed
Elastica\Query\MatchPhraseQuery::setFieldParam()
signature to allow passing bool, float or int #1944
Added
- Excluded
docker
directory in.gitattributes
#1938
Changed
- Included
Content-Type
HTTP header every time, whatever the content of the body is #1780 - Changed
Elastica\Status::indexExists()
,Elastica\Status::aliasExists()
andElastica\Status::getIndicesWithAlias()
signatures #1929 - Replaced
call_user_func()
andcall_user_func_array()
by direct calls #1923 - Replaced legacy constant
CURLINFO_HTTP_CODE
byCURLINFO_RESPONSE_CODE
#1931 - Updated
php-cs-fixer
to2.18.3
#1915 - Updated
composer-normalize
to2.13.3
#1927
Deprecated
- Deprecated
Elastica\Transport\HttpAdapter
class #1940
Fixed
- Fixed wrong
ltrim
usage in guzzle transport #1783 - Fixed
_seq_no
and_primary_term
wrong initialization #1920 - Fixed
Elastica\Connection\StrategyInterface
instance checks #1921 - Fixed various PHPDoc annotations #1922
- Fixed numeric index names are returned as
int
inElastica\Status::getIndexNames()
#1928 - Fixed using raw array in
post_filter
#1950
Release 6.1.5
Release 6.1.4
Release 6.1.3
Bugfixes
- Make MatchQuery.php file valid PHP. #1902
Release 6.1.2
Bugfixes
Added
- Added
Elastica\Aggregation\WeightedAvg
aggregation #1770 - Added
Elastica\Query\MatchQuery
extendingElastica\Query\Match
. This is the same as 7.x, which renamed the class for PHP 8.0 support, and makes supporting the use of ruflin/elastica 6.1 and 7.0 in the same project. #1898
Improvements
- Added missing Response information to Bulk/ResponseSet #1775
Deprecated
Elastica\Query\Match
has been deprecated in favour ofElastica\Query\MatchQuery
. #1898
Release 7.1.0
Backward Compatibility Breaks
- Added a default value to
Elastica\Aggregation\Range::setKeyed()
andElastica\Aggregation\PercentilesBucket::setKeyed()
#1876 - Removed type-hint to
Elastica\Aggregation\Percentiles::setMissing()
argument #1875 - Allowed the Terms query to accept an array of
bool
,float
,int
and/orstring
#1872
Added
- Added
auth_type
parameter in the client class config to specify the type of authentication (allowed values arebasic, digest, gssnegotiate, ntlm
) #1790 - Added
if_seq_no
/if_primary_term
to replaceversion
for optimistic concurrency control #1803 - Added
Elastica\Aggregation\PercentilesBucket
aggregation #1806 - Added
weighted_avg
to aggregations DSL #1814 - Added support for defining a connection pool with DSN. Example:
pool(http://127.0.0.1 http://127.0.0.2/bar?timeout=4)
#1808 - Added
Elastica\Aggregation\Composite
aggregation #1804 - Added
symfony/deprecation-contracts
package to handle deprecations #1823 - Added
list_syntax
CS rule #1854 - Added
native_constant_invocation
CS rule #1833 - Added
static_lambda
CS rule #1870 - Added
Elastica\Aggregation\DateRange::setTimezone()
#1847 - Added endpoint options support to
Elastica\Index::create()
#1859 - Added
Elastica\Aggregation\DateHistogram::setKeyed()
#1876 - Added
Elastica\Aggregation\GeoDistance::setKeyed()
#1876 - Added
Elastica\Aggregation\Histogram::setKeyed()
#1876 - Added
Elastica\Aggregation\IpRange::setKeyed()
#1876 - Added
Elastica\Aggregation\GeotileGridAggregation
#1880 - Added
Elastica\Aggregation\Avg::setMissing()
,Elastica\Aggregation\Cardinality::setMissing()
,Elastica\Aggregation\DateRange::setMissing()
,Elastica\Aggregation\DateHistogram::setMissing()
,Elastica\Aggregation\ExtendedStats::setMissing()
,Elastica\Aggregation\Histogram::setMissing()
,Elastica\Aggregation\Max::setMissing()
,Elastica\Aggregation\Min::setMissing()
,Elastica\Aggregation\Stats::setMissing()
,Elastica\Aggregation\Sum::setMissing()
,Elastica\Aggregation\Terms::setMissing()
#1876 - Supported
guzzlehttp/guzzle
7.x #1816 - Supported PHP 8.0 #1794
- Supported BC break on
elasticsearch/elasticsearch
version7.4.0
#1864
Changed
- Allowed
string
such aswait_for
to be passed toAbstractUpdateAction::setRefresh
#1791 - Allowed float values for connection timeout and connection connect-timeout, providing ms precision for those. Previous precision was second. #1868
- Changed the return type of
AbstractUpdateAction::getRefresh
toboolean|string
#1791 - Reviewed options handling in
Elastica\Index::create()
#1822 - Replaced deprecated
exceptions
request option byhttp_errors
request option in Guzzle transport #1817 - Run coding styles check on github action #1878
- Run unit tests on github action #1882
- Run functional tests on github action #1885
- Updated
php-cs-fixer
to2.16.4
#1830 - Updated
php-cs-fixer
to2.16.7
#1881 - Updated
php-cs-fixer
to2.17.3
#1895 - Updated
php-cs-fixer
to2.18.2
#1897 - Used
GuzzleHttp\RequestOptions
constants for configuring request options #1820 - Used new alias endpoints classes #1839
- Used new cache endpoints classes #1840
- Used new ingest pipeline endpoints classes #1834
- Used new mapping endpoints classes #1845
- Used new nodes endpoints classes #1863
- Used new settings endpoints classes #1852
Deprecated
- Deprecated
Elastica\Aggregation\Range::setKeyedResponse()
, usesetKeyed()
instead #1848 - Deprecated
Elastica\Exception\ResponseException::getElasticsearchException()
, usegetResponse()::getFullError()
instead #1829 - Deprecated
Elastica\QueryBuilder\DSL\Aggregation::global_agg()
, useglobal()
instead #1826 - Deprecated
Elastica\Util::getParamName()
#1832 - Deprecated all Processor class names in favor of suffixed class names #1893
- Deprecated Match query class and introduced MatchQuery instead for PHP 8.0 compatibility reason #1799
- Deprecated
version
/version_type
options (deprecated in6.7.0
) and addedif_seq_no
/if_primary_term
that replaced it - Deprecated passing
bool
ornull
as 2nd argument toElastica\Index::create()
#1828
Removed
- Removed HHVM proxy detection #1818
Fixed
- Fixed issue 1789
- Fixed type-hint for
Elastica\QueryBuilder\DSL\Aggregation::sampler()
not consistent with the underlying constructor call #1815 - Fixed
Elastica\Util::toSnakeCase()
with first letter being lower cased #1831 - Fixed handling precision as string in
Elastica\Aggregation\GeohashGrid::setPrecision()
#1884 - Fixed calling
Elastica\Aggregation\Composite::addAfter()
with thenull
value 1877 - Replaced
_routing
and_retry_on_conflict
byrouting
andretry_on_conflict
inAbstractUpdateAction
#1807
Release 7.0.0
Release 7.0.0-beta.4
Backward Compatibility Breaks
- If you're NOT using composer to manage your libraries: the root directory of the library's source code moved from
lib/Elastica/
tosrc/
. - The
Wildcard::setValue()
changed its signature: use it to set the value of the wildcard query only. - The
Wildcard
Query's constructor now requires thename
andvalue
properties. - The
Terms
Query's constructor now requires thefield
andterms
properties.
Added
- Added
AbstractTermsAggregation::setIncludeAsExactMatch()
#1766 - Added
AbstractTermsAggregation::setExcludeAsExactMatch()
#1766 - Added
AbstractTermsAggregation::setIncludeWithPartitions()
#1766 - Added
Elastica\Reindex->setPipeline(Elastica\Pipeline $pipeline): void
. The link between the reindex and the pipeline is solved whenrun()
is called, and thus the pipeline given doesn't need to be created before callingsetPipeline()
#1752 - Added
Elastica\Reindex->setRefresh(string $value): void
. It acceptsREFRESH_*
constants from its class #1752 and #1758 - Added
Elastica\Reindex->setQuery(Elastica\Query\AbstractQuery $query): void
#1752 - Added constants
PIPELINE
,REFRESH_TRUE
,REFRESH_FALSE
,REFRESH_WAIT_FOR
,SLICES
andSLICES_AUTO
toElastica\Reindex
#1752 - Added
Elastica\Pipeline->getId(): ?string
#1752 - Added
Elastica\Aggregation\ExtendedStatsBucket
aggregation #1756
Changed
- Changed
Terms::setTerms()
signature: it now accepts a list of strings only #1765 - Changed
Terms::setTermsLookup()
signature:index
,path
andid
are now required arguments #1765 - Changed
Wildcard::setValue()
and constructor's signature: added more specificWildcard::setBoost()
andWildcard::setRewrite
methods - Updated PHP coding standards to adhere to PSR-12 #1760
- Updated to PHPUnit v8.5 #1759
- Refactored code structure: use
src/
andtests/
folders #1755 - Require elastica-php library >= v7.1.1, fixes an issue on Ingestion/Put() type-hinting
- Require guzzle >= v6.3 as development library: fixes issues on PHP >= 7.2
- Require phpunit >= v7.5, fixes deprecations in with PHP 7.3
- Scroll is now throwing an exception when calling
current()
on an invalid iteration: always callvalid()
before
accessing the current item, as documented in PHP's Iterator documentation #1749