Elastica v7.1.0 Release Notes

  • Backward Compatibility Breaks

    • โž• Added a default value to Elastica\Aggregation\Range::setKeyed() and Elastica\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_type parameter in the client class config to specify the type of authentication (allowed values are basic, digest, gssnegotiate, ntlm) #1790
    • Added if_seq_no / if_primary_term to replace version 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 version 7.4.0 #1864 ### ๐Ÿ”„ Changed
    • ๐Ÿ‘ Allowed string such as wait_for to be passed to AbstractUpdateAction::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 to boolean|string #1791
    • Reviewed options handling in Elastica\Index::create() #1822
    • ๐Ÿ—„ Replaced deprecated exceptions request option by http_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 to 2.16.4 #1830
    • โšก๏ธ Updated php-cs-fixer to 2.16.7 #1881
    • โšก๏ธ Updated php-cs-fixer to 2.17.3 #1895
    • โšก๏ธ Updated php-cs-fixer to 2.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(), use setKeyed() instead #1848
    • ๐Ÿ‘€ Deprecated Elastica\Exception\ResponseException::getElasticsearchException(), use getResponse()::getFullError() instead #1829
    • ๐Ÿ—„ Deprecated Elastica\QueryBuilder\DSL\Aggregation::global_agg(), use global() 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 in 6.7.0) and added if_seq_no / if_primary_term that replaced it
    • ๐Ÿ—„ Deprecated passing bool or null as 2nd argument to Elastica\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 the null value 1877
    • Replaced _routing and _retry_on_conflict by routing and retry_on_conflict in AbstractUpdateAction #1807