Skip to content

Releases: ruflin/Elastica

Release 2.3.1

19 Oct 07:10
Compare
Choose a tag to compare

This release is compatible with elasticsearch 1.7.3.

Bugfixes

  • Filters aggregation: empty name is named bucket #935
  • Prevent mix keys in filters (#936) #939
  • Fix empty string is not anonymous filter #935
  • Filters aggregation: empty name is named bucket #935

Added

  • Support for field_value_factor #953
  • Added setMinDocCount and setExtendedBounds options #947
  • Avoid environment dependecies in tests #938

Improvements

  • Update elasticsearch dependency to elasticsearch 1.7.3 #957

Deprecated

  • Added exceptions of deprecated transports to deprecation list

Dependencies

Project Version Required
Elasticsearch 1.7.3 yes
Elasticsearch mapper attachments plugin 2.7.0 no
Elasticsearch thrift transport plugin 2.7.0 no
Elasticsearch memcached transport plugin 2.7.0 no
Elasticsearch geocluster facet plugin 0.0.12 no
Elasticsearch image plugin 1.7.1 no

Release 2.3.0

15 Sep 20:02
Compare
Choose a tag to compare

As this release breaks backward compatibility, a detailed explanation about the breaking changes can be found here

Backward Compatibility Breaks

  • Objects do not casts to arrays in setters and saved in params as objects. There is many side effects if
    you work with params on "low-level" or change your objects after you call setter with object
    as argument. #916

Added

Improvements

  • Support the http.compression in the Http transport adapter #515
  • Introduction of Lazy toArray #916
  • Update Elasticsearch dependency to 1.7.2 #929

Release 2.2.1

10 Aug 19:36
Compare
Choose a tag to compare

Added

  • Support for index template added #905

Improvements

  • Update Elasticsearch dependency to 1.7.1 and update plugin dependencies #909
  • Update php-cs-fixer to 1.10 #898
  • Elastica\QueryBuilder now uses Elastica\QueryBuilder\Version\Latest as default version to avoid empty version classes. #897
  • Update elasticseach-image to work with ES 1.7.1 #907
  • Local dev environment was refactored to fully work in docker environment. Running tests is now only one command: make tests #901

Deprecated

  • Elastica\QueryBuilder\Version\Version150 deprecated in favor of Elastica\QueryBuilder\Version\Latest #897

Release 2.2.0

08 Jul 05:59
Compare
Choose a tag to compare

Backward Compatibility Breaks

  • Usage of constant DEBUG and method Elastica\Util::debugEnabled is removed. #868
  • Elastica\Response::getTransferInfo will not return "request_header" by default. #868
  • The Image Plugin is currently not compatible with Elasticearch 1.6.0

Bugfixes

  • Fixed segmentation fault in PHP7 #868
  • Removed deprecation for Elastica\Type::deleteByQuery #875

Improvements

  • CallbackStrategy now will accept any callable as callback, not only instance of Closure. #871
  • StrategyFactory now will try to find predefined strategy before looking to global namespace. #877
  • Update elasticsearch dependency to elasticsearch 1.6.0 https://www.elastic.co/downloads/past-releases/elasticsearch-1-6-0
  • All elasticsearch plugin dependencies were updated to the newest version.
  • Methods of classes in QueryBuilder\DSL namespace now have exact same signatures as corresponding constructors. #878
  • Constructor of Aggregation\Filter now accepts filter as second parameter #878
  • Constructor of Filter\AbstractMulti (BoolAnd, BooldOr) now accepts array of filters as parameter #878
  • Constructor of Query\Match now accepts arguments #878
  • Coverage Reporting improved with Codecov #888
  • Added 'query_cache' option for search #886

Release 2.1.0

01 Jun 14:49
Compare
Choose a tag to compare

Backward Compatibility Breaks

  • Elastica\ScanAndScroll::$_lastScrollId removed: key() now always returns the next scroll id #842

Deprecated

  • Facets are deprecated. You are encouraged to migrate to aggregations instead. #855
  • Elastica\Query\Builder is deprecated. Use new Elastica\QueryBuilder instead. #855
  • For PHP 7 compatibility Elastica\Query\Bool was renamed to *\BoolQuery, Elastica\Filter\Bool was renamed to BoolFilter, Elastica\Transport\Null was renamed to NullTransport as Null and Bool are reserved phrases in PHP 7. Proxy objects for all three exist to keep backward compatibility. It is recommended to start using the new objects as the proxy classes will be deprecated as soon as PHP 7 is stable. #837

Added

  • Multiple rescore query #820
  • Support for a custom connection timeout through a connectTimeout parameter. #841
  • SignificantTerms Aggregation #847
  • Support for 'precision_threshold' and 'rehash' options for the Cardinality Aggregation [#851]
  • Support for retrieving id node #852
  • Scroll Iterator #842
  • Gitter Elastica Chat Room add for Elastica discussions: https://gitter.im/ruflin/Elastica
  • Introduce PHP7 compatibility and tests. #837
  • Tool\CrossIndex for reindexing and copying data and mapping between indices #853
  • CONTIRUBTING.md file added for contributor guidelines. #854

Improvements

  • Introduction of Changelog standard based on http://keepachangelog.com/. changes.txt moved to CHANGELOG.md #844
  • Make host for all tests dynamic to prepare it for a more dynamic test environment #846
  • Node information is retrieved based on id instead of name as multiple nodes can have the same name. #852
  • Guzzle Http dependency updated to 5.3.*
  • Remove NO_DEV builds from travis build matrix to speed up building. All builds include no dev packages.
  • Introduction of benchmark test group to make it easy to run benchmark tests.
  • Make the docker images directly available on the docker registry. This speeds up fetching of the images and automates the build of the images.

Release 2.0.0

13 May 08:08
Compare
Choose a tag to compare

Release Notes

With this release Elastica moves to its own independent semantic versioning. It starts with the jump from Elastica v1.4.3.0 to 2.0.0. The compatible elasticsearch version will be linked with every release. This changes makes it possible to better indicate major branches to previous Elastica versions without being dependent on elasticsearch release version numbering. The v in front of the version was dropped.

Release 2.0.0 has only minor backward compatibility breaks (see below), but lots of improvements and additions. All BC changes are related to changes in elasticsearch 1.5.*. Migration from v1.4.3.0 to 2.0.0 should not be an issue in most cases even though it is a big step concerning version number.

The goal is also to improve on the release notes to make it easier to see what changes and what are the backward compatible changes. More details can be found here

Dependencies

Project Version Required
Elasticsearch 1.5.2 yes
Elasticsearch mapper attachments plugin 2.5.0 no
Elasticsearch thrift transport plugin 2.5.0 no
Elasticsearch geocluster facet plugin 0.0.12 no

Changes

Backward Compatibility Breaks

  • Elastica\Query\QueryString::setLowercaseExpandedTerms removed #813
  • Update Elasticsearch version to 1.5 #813
  • Added deprecation notice to Elastica\Transport\Thrift, Elastica\Transport\Memcached and Elastica\Type::deleteByQuery #817
  • Escape new symbols in Util::escapeTerm #795

Bugfixes

  • Fix empty bool query to act as match all query #817
  • Fixed short match construction in query DSL #796
  • Index optimize method to return Response object. #797
  • Fix fluent interface inconsistency #788

Improvements

  • Add testing on PHP 7 on Travis #826
  • Allow bool in Query::setSource function #818 http://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-source-filtering.html
  • deleteByQuery() implemented in Elastica\Index #816
  • Add MLT query against documents #814
  • Added Elastica\Query\SimpleQueryString::setMinimumShouldMatch #813
  • Added Elastica\Query\FunctionScore::setMinScore #813
  • Added Elastica\Query\MoreLikeThis::setMinimumShouldMatch #813
  • Added new methods to Elastica\Aggregation\DateHistogram: setOffset, setTimezone #813
  • Following methods in Elastica\Aggregation\DateHistogram marked as deprecated: setPreOffset, setPostOffset, setPreZone, setPostZone, setPreZoneAdjustLargeInterval #813
  • Add Elastica\Facet\DateHistogram::setFactor() #806
  • Added Elastica\Query\QueryString::setTimezone #813
  • Add .editorconfig #807
  • Added Elastica\Suggest\Completion #808
  • Fix elasticsearch links to elastic domain #809
  • Added Elastica\Query\Image #787
  • Add Scrutinizer Code Quality status badge
  • Added support for percentiles aggregation #786

Release v1.4.3.0

17 Feb 19:58
Compare
Choose a tag to compare
  • Added Elastica\Query\MatchPhrase #599
  • Added Elastica\Query\MatchPhrasePrefix #599
  • Reset PHP 5.3 tests and enable compatibility for PHP 5.3 again
  • Update elasticsearch compatibility to 1.4.3 #782
  • Add support for scripted metric aggrations #780
  • Added availability to specify regexp options in \Elastica\Filters\Regexp #583 #777
  • Add HHVM as build in travis #649
  • Fixed issue with OutOfMemory exception in travis builds #775
  • Add support for filters aggregation #773
  • Housekeeping, coding standard #764
  • Exception\ElasticsearchException now can be catched like all other exceptions as Exception\ExceptionInterface #762

Release v1.4.2.0

25 Jan 13:10
Compare
Choose a tag to compare
  • Added Elastica\Query\Regexp #757
  • Update to elasticsearch 1.4.2 #738
  • Remove support for PHP 5.3
  • added @return annotation to top_hits aggregation DSL method #752
  • Added Elastica\Aggregation\TopHits #718
  • Vagrantfile updated #742
  • Plugins updated to ES 1.3.4
  • Since new version of thrift plugin is compatible with ES 1.3.4, plugin added back to test environment
  • Added: Filter\Range::setExecution, Filter\Terms::setExecution, Filter\Missing::setExistence, Filter\Missing::setNullValue, Filter\HasChild::setMinumumChildrenCount, Filter\HasChild::Filter\HasChild::setMaximumChildrenCount, Filter\Indices::addIndex
  • Filter\HasChild::setType, Filter\HasParent::setType now support Type instance as argument
  • Filter\Indices::setIndices, Filter\Indices::addIndex now support Index instance as argument
  • (BC break) Removed as added by mistake: Filter\HasChild::setScope, Filter\HasParent::setScope, Filter\Nested::setScoreMode, Filter\Bool::setBoost
  • Additional Request Body Options for Percolator #737
  • making sure id is urlencoded when using updateDocument #734
  • Implement the weight in the function score query #735
  • Changed setRealWorldErrorLikelihood to setRealWordErrorLikelihood #729
  • allow to customize the key on a range aggregation #728
  • Added fluent interface to Elastica\Query::setRescore #733
  • Added transport to support egeloen/http-adapter #727
  • add cache control parameters support to Elastica\Filter\Bool #725
  • Avoid remove previously added params when adding a suggest to the query #726
  • Added Elastica\QueryBuilder #724
  • Update to elasticsearch 1.4.0
  • Disable official support for PHP 5.3
  • fixed reserved words in queries which composed of upper case letters (Util::replaceBooleanWords) #722
  • Adding PSR-4 autoloading support #714
  • Updated Type::getDocument() exception handling. \Elastica\Exception\ResponseException will be thrown instead of \Elastica\Exception\NotFoundException if the ES response contains any error (i.e: Missing index) (BC break) #687
  • Added Util::convertDateTimeObject to Util class to easily convert \DateTime objects to required format #709
  • Remove ResponseException catch in Type::getDocument() #704
  • Fixed Response::isOk() to work better with bulk update api #702
  • Adding magic __call() #700
  • ResultSet creation moved to static ResultSet::create() method #690
  • Accept an options array at Type::updateDocument() #686
  • Improve exception handling in Type::getDocument() #693

Release v1.3.4.0

04 Oct 20:17
Compare
Choose a tag to compare
  • Update to elasticsearch 1.3.4 #691
  • Update the branch alias in composer.json to match the library version #683
  • Update license in composer.json to match project #681
  • Delete execution permission from non-executable files #677
  • Top-level filter parameter in search has been renamed to post_filter #669 #670
  • Deprecated: Elastica\Query::setFilter() is deprecated. Use Elastica\Query::setPostFilter() instead. #669
  • Deprecated: Elastica\Query::setPostFilter() passing filter as array is deprecated. Pass instance of AbstractFilter instead. #669
  • Fixed escaping of / character in Elastica\Util::escapeTerm(), removed usage of JSON_UNESCAPED_SLASHES in Elastica\JSON #660
  • Add connection pool and connection strategy #661

Release v1.3.0.0

27 Jul 13:45
Compare
Choose a tag to compare