All Versions
44
Latest Version
Avg Release Cycle
103 days
Latest Release
-
Changelog History
Page 1
Changelog History
Page 1
-
v7.2.0 Changes
Backward Compatibility Breaks
- ⚡️ Changed
SetProcessor::setValuesignature to allow to pass any type, if you are overriding this method you must update the signature removing thestringtype-hint by @franmomu #2082 - ⚡️ Changed
Settings::setMergePolicysignature to allow to passintandstringas argument 2, if you are overriding this method you must update the signature removing thestringtype-hint by @franmomu #2085 ### ➕ Added - ➕ Added
PHPStanat level 3 by @franmomu #2064 - ➕ Added coverage check to CI by @franmomu #2071
- ➕ Added
stringas a valid type fordatainRequestby @franmomu #2078 - ➕ Added missing
throwsPHPDoc tags by @franmomu #2077 - ➕ Added
Search::addIndexByName(),Search::hasIndexByName()andSearch::addIndicesByName()by @franmomu #2103 ### 🔄 Changed - ⚡️ Updated
symfony/phpunit-bridgeto6.0by @franmomu #2067 - ⚡️ Updated
php-cs-fixerto3.8.0#2074 - ⚡️ Updated
composer-normalizeto2.2.28by @deguif #2084 - Increased
PHPStanlevel to4#2080 ExceptionInterfaceextendsThrowable#2083- 🔄 Changed
valueinSetProcessorto acceptmixedinstead ofstringby @franmomu #2082 - ⚡️ Updated
Query::createPHPDoc to include supported types and propagate it to callers by @franmomu #2088 - ⚡️ Update some iterable types in PHPDoc to be more specific by @franmomu #2092
- ⚡️ Updated
AwsAuthV4Testadding assertions for exception type by @franmomu #2094 ### 🗄 Deprecated - Deprecated
Elastica\Reindex::WAIT_FOR_COMPLETION_FALSE, use a boolean as parameter instead by @franmomu #2070 - Passing anything else than a boolean as 1st argument to
Reindex::setWaitForCompletion, pass a boolean instead by @franmomu #2070 - 🗄 Deprecated passing a
stringas 1st argument toSearch::addIndex()andSearch::hasIndex(), pass an Index instance instead by @franmomu #2103 - 🗄 Deprecated passing an array of
stringas 1st argument toSearch::addIndices(), use an array of Index instances by @franmomu #2103
✂ Removed
- ✂ Removed
egeloen/http-adapteras suggested package since the project is abandoned by @franmomu #2069 - ✂ Removed
0as valid request data using Analyze API by @franmomu #2068 - ✂ Removed dead code in
AwsAuthV4Testby @franmomu #2073 ### 🛠 Fixed - 🛠 Fixed some PHPDoc types adding
nullas possible value by @franmomu #2070 and #2087 - 🛠 Fixed passing wrong types to
GapPolicyInterface::setGapPolicy(),Document::setDocAsUpsert()andConnection::setPort()methods by @franmomu #2081 - 🛠 Fixed
HttpPHPDoc adding\CurlHandletype for Curl connection by @franmomu #2086 - 🛠 Fixed case mismatch in method calls by @franmomu #2087
- 🛠 Fixed
MoreLikeThis::setLike()PHPDoc allowingDocumentby @franmomu #2091 - 🛠 Fixed
Term::setTerm()PHPDoc allowing scalar values for$valueparameter by @franmomu #2094 - Fixed
DateHistogramdeprecation: usefixed_internalorcalendar_intervalinstead ofintervalby @VincentLanglet #2099
- ⚡️ Changed
-
v7.1.3 Changes
➕ Added
- ➕ Added support for scripted upsert on bulk requests by @dsgrillo #1974
- ➕ Added
Elastica\Aggregation\CumulativeSumby @limenet #1987 - ➕ Added
ignore_failureoption to suitable ingest processors by @deguif #2003 - ➕ Added
ignore_missingoption tolowercase,remove,trimanduppercaseprocessors by @deguif #2001 - ➕ Added
allow_duplicatesoption toappendprocessor by @deguif #2004 - ➕ Added
bytesprocessor by @deguif #2008 - ➕ Added
indices_boostoption toElastica\Queryby @deguif #2018 - ➕ Added
Elastica\Query\Terms::setBoost()method to configure boost by @deguif #2035 - ➕ Added
Elastica\Query\TermsSetquery by @mamchyts #2020 - ➕ Added
terms_setin query builder by @deguif #2036 - ➕ Added
Elastica\Aggregation\Traits\BucketsPathTraitto configurebuckets_pathon aggregations by @deguif #2037 #2039 - 👍 Allowed to configure a sub key when adding a param with
Elastica\Param::addParam()by @deguif #2030 ### 🔄 Changed - 🗄 Triggered deprecation in
Elastica\Result::getType()method by @deguif #2016 - ⚡️ Updated
php-cs-fixerto3.3.2by @deguif #2022 - ⚡️ Updated
composer-normalizeto2.15.0by @deguif #2021 - ⚡️ Updated
elasticsearchtest version to7.15.2by @deguif #2027 - Extracted setting gap policy to
\Elastica\Aggregation\Traits\GapPolicyTraitand introduced\Elastica\Aggregation\GapPolicyInterfacewith constants for options by @stchr #2023 - Extracted setting
fieldtoElastica\Processor\Traits\FieldTraitby @deguif #2024 - Extracted setting
target_fieldtoElastica\Processor\Traits\TargetFieldTraitby @deguif #2026 - Simplified github action matrix for continuous integration workflow by @deguif #2025 ### 🗄 Deprecated
- 🗄 Deprecated
Elastica\Query\Commonclass, useElastica\Query\MatchQueryinstead by @deguif #2013 - 🗄 Deprecated
Elastica\QueryBuilder\DSL\Query::common_terms(), usematch()instead by @deguif #2013 - 🗄 Deprecated passing an
intas 1st argument toElastica\Search::setOptionsAndQuery(), pass an array with the keysizeinstead by @deguif #2010 - 🗄 Deprecated
cutoff_frequencyoption ofElastica\Query\MatchQueryby @deguif #2014 - 🗄 Deprecated
cutoff_frequencyoption ofElastica\Query\MultiMatchby @deguif #2015 - 🗄 Deprecated
Elastica\Bulk::toString(),Elastica\Bulk\Action::toString()andElastica\Request::toString()methods, use__toString()method or cast to string instead by @deguif #2033 - 🗄 Deprecated not passing a
buckets_pathwhen constructingElastica\Aggregation\AvgBucket,Elastica\Aggregation\Derivative,Elastica\Aggregation\NormalizeAggregation,Elastica\Aggregation\PercentilesBucket,Elastica\Aggregation\SerialDiff,Elastica\Aggregation\StatsBucketandElastica\Aggregation\SumBucketby @deguif #2038 - 🗄 Deprecated not passing a
methodwhen constructingElastica\Aggregation\NormalizeAggregationby @deguif #2040 ### ✂ Removed - ✂ Removed remaining
_typefield usages by @deguif #2017 - ✂ Removed
Elastica\Bulk::$_typedead property by @deguif #2034 - ✂ Removed Elasticsearch old version checks in tests by @deguif #2041 ### 🛠 Fixed
- 🛠 Fixed type-hint for
Elastica\Search::setOptionsAndQuery()by @deguif #2009 - 🛠 Fixed terms query params resolution by @deguif #2032
-
v7.1.2 Changes
Backward Compatibility Breaks
- 🔄 Changed
Elastica\Exception\JSONParseExceptioninheritance, it now extends\JsonExceptioninstead of\RuntimeException#1949 ### ➕ Added - ➕ Added
Elastica\Aggregation\NormalizeAggregation#1956 - ➕ Added
Elastica\Suggest\Phrase::addDirectGeneratorto align with ES specification #1964 - ➕ Added support for
psr/log2.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-fixerto3.2.1#1996 #1959 #1955 - ✅ Using default Elasticsearch images for testing instead of OSS https://github.com/ruflin/Elastica/pull/1954 ### 🛠 Fixed
- 🛠 Fixed compatibility with
guzzlehttp/psr7version2.x#2002 - Fixed the assignment of
version,seq_noandprimary_termongetDocument#1973
- 🔄 Changed
-
v7.1.1 Changes
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
dockerdirectory in.gitattributes#1938 ### 🔄 Changed - Included
Content-TypeHTTP 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_CODEbyCURLINFO_RESPONSE_CODE#1931 - ⚡️ Updated
php-cs-fixerto2.18.3#1915 - ⚡️ Updated
composer-normalizeto2.13.3#1927 ### 🗄 Deprecated - 🗄 Deprecated
Elastica\Transport\HttpAdapterclass #1940 - 👀 Deprecated
Elastica\Exception\JSONParseExceptionexception, catch\JsonExceptioninstead #1949 ### 🛠 Fixed - 🛠 Fixed wrong
ltrimusage in guzzle transport #1783 - Fixed
_seq_noand_primary_termwrong initialization #1920 - 🛠 Fixed
Elastica\Connection\StrategyInterfaceinstance checks #1921 - 🛠 Fixed various PHPDoc annotations #1922
- 🛠 Fixed numeric index names are returned as
intinElastica\Status::getIndexNames()#1928 - 🛠 Fixed using raw array in
post_filter#1950
- 🔄 Changed
-
v7.1.0 Changes
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/or string #1872 ### ➕ Added
- ➕ Added
auth_typeparameter in the client class config to specify the type of authentication (allowed values arebasic, digest, gssnegotiate, ntlm) #1790 - Added
if_seq_no/if_primary_termto replaceversionfor optimistic concurrency control #1803 - ➕ Added
Elastica\Aggregation\PercentilesBucketaggregation #1806 - ➕ Added
weighted_avgto 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\Compositeaggregation #1804 - ➕ Added
symfony/deprecation-contractspackage to handle deprecations #1823 - ➕ Added
list_syntaxCS rule #1854 - Added
native_constant_invocationCS rule #1833 - ➕ Added
static_lambdaCS 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/guzzle7.x #1816 - 👌 Supported PHP 8.0 #1794
- 👌 Supported BC break on
elasticsearch/elasticsearchversion7.4.0#1864 ### 🔄 Changed - 👍 Allowed
stringsuch aswait_forto 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::getRefreshtoboolean|string#1791 - Reviewed options handling in
Elastica\Index::create()#1822 - 🗄 Replaced deprecated
exceptionsrequest option byhttp_errorsrequest 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-fixerto2.16.4#1830 - ⚡️ Updated
php-cs-fixerto2.16.7#1881 - ⚡️ Updated
php-cs-fixerto2.17.3#1895 - ⚡️ Updated
php-cs-fixerto2.18.2#1897 - 🔧 Used
GuzzleHttp\RequestOptionsconstants 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_typeoptions (deprecated in6.7.0) and addedif_seq_no/if_primary_termthat replaced it - 🗄 Deprecated passing
boolornullas 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 thenullvalue 1877 - Replaced
_routingand_retry_on_conflictbyroutingandretry_on_conflictinAbstractUpdateAction#1807
- ➕ Added a default value to
-
v7.0.0 Changes
June 10, 2020 -
v7.0.0-beta.4 Changes
March 23, 2020Backward 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
WildcardQuery's constructor now requires thenameandvalueproperties. - The
TermsQuery's constructor now requires thefieldandtermsproperties.
➕ 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,SLICESandSLICES_AUTOtoElastica\Reindex#1752 - ➕ Added
Elastica\Pipeline->getId(): ?string#1752 - ➕ Added
Elastica\Aggregation\ExtendedStatsBucketaggregation #1756
🔄 Changed
- 🔄 Changed
Terms::setTerms()signature: it now accepts a list of strings only #1765 - 🔄 Changed
Terms::setTermsLookup()signature:index,pathandidare now required arguments #1765 - 🔄 Changed
Wildcard::setValue()and constructor's signature: added more specificWildcard::setBoost()andWildcard::setRewritemethods - ⚡️ 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
✂ Removed
- If you're NOT using composer to manage your libraries: the root directory of the library's source code moved from
-
v7.0.0-beta.3 Changes
January 16, 2020- Marked Elastica 5.x as unmaintained
🛠 Bugfixes
- 🛠 Fix Search::count() not counting all results #1746
- Fixed handling of Search::OPTION_SEARCH_IGNORE_UNAVAILABLE inside Scroll object
➕ Added
- ➕ Added
DiversifiedSampleraggregation #1735 - ➕ Added
\Elastica\Query\DistanceFeature#1730 - ➕ Added support for injecting a callable AWS credential provider to use static, cached, or custom-sourced credentials #1667
👌 Improvements
- 🚀 Scroll releases previous ResultSet from memory before calling ES for next data batch #1740