@@ -23,13 +23,27 @@ Version compatibility
24Elasticsearch \>=1.0 && \<2.0 is recommended. Bloodhound mostly works with 0.9.x, but I don't recommend it if you expect everything to work. As of Bloodhound 0.3 all \>=1.0 && \<2.0 versions of Elasticsearch work. Some (or even most?) features will work with versions \>=2.0, but it is not officially supported yet.
24Elasticsearch \>=1.0 && \<2.0 is recommended. Bloodhound mostly works with 0.9.x, but I don't recommend it if you expect everything to work. As of Bloodhound 0.3 all \>=1.0 && \<2.0 versions of Elasticsearch work. Some (or even most?) features will work with versions \>=2.0, but it is not officially supported yet.
26−Current versions we test against are 1.0.3, 1.1.2, 1.2.3, 1.3.2, and 1.4.0. We also check that GHC 7.6 and 7.8 both build and pass tests. See our [TravisCI](https://travis-ci.org/bitemyapp/bloodhound) to learn more.
26+Current versions we test against are 1.2.4, 1.3.6, 1.4.1, 1.5.2, 1.6.0, and 1.7.2. We also check that GHC 7.6 and 7.8 both build and pass tests. See our [TravisCI](https://travis-ci.org/bitemyapp/bloodhound) to learn more.
31Bloodhound is stable for production use. I will strive to avoid breaking API compatibility from here on forward, but dramatic features like a type-safe, fully integrated mapping API may require breaking things in the future.
31Bloodhound is stable for production use. I will strive to avoid breaking API compatibility from here on forward, but dramatic features like a type-safe, fully integrated mapping API may require breaking things in the future.
36+The TravisCI tests are run using [Stack](http://docs.haskellstack.org/en/stable/README.html). You should use Stack instead of `cabal` to build and test Bloodhound to avoid compatibility problems. You will also need to have an ElasticSearch instance running at `localhost:9200` in order to execute some of the tests. See the "Version compatibility" section above for a list of ElasticSearch versions that are officially validated against in TravisCI.
38+Steps to run the tests locally:
39+ 1. Dig through the [past releases] (https://www.elastic.co/downloads/past-releases) section of the ElasticSearch download page and install the desired ElasticSearch versions.
40+ 2. Install [Stack] (http://docs.haskellstack.org/en/stable/README.html#how-to-install)
41+ 3. In your local Bloodhound directory, run `stack setup && stack build`
42+ 4. Start the desired version of ElasticSearch at `localhost:9200`, which should be the default.
43+ 5. Run `stack test` in your local Bloodhound directory.
44+ 6. The unit tests will pass if you re-execute `stack test`, but some of the doctests might fail due to existing data in ElasticSearch. If you want to start with a clean slate, stop your ElasticSearch instance, delete the `data/` folder in the ElasticSearch installation, restart ElasticSearch, and re-run `stack test`.
33Hackage page and Haddock documentation
47Hackage page and Haddock documentation
34======================================
48======================================
@@ -38,7 +52,7 @@ Hackage page and Haddock documentation
38Elasticsearch Tutorial
52Elasticsearch Tutorial
39======================
53======================
41−It's not using Bloodhound, but if you need an introduction to or overview of Elasticsearch and how to use it, you can use [this screencast](http://vimeo.com/106463167).
55+It's not using Bloodhound, but if you need an introduction to or overview of Elasticsearch and how to use it, you can use [this screencast](https://vimeo.com/106463167).
@@ -820,7 +834,7 @@ let ta' = ta { termCollectMode = Just BreadthFirst }
820let ta'' = TermsAgg ta'
834let ta'' = TermsAgg ta'
823−For more documentation on how the Terms Aggregation works, see <http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-aggregations-bucket-terms-aggregation.html>
837+For more documentation on how the Terms Aggregation works, see <https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-terms-aggregation.html>
825#### Date Histogram Aggregation
839#### Date Histogram Aggregation
@@ -873,7 +887,7 @@ It is an instance of `BucketAggregation`, and can have nested aggregations in ea
873Buckets can be extracted from an `AggregationResult` using
887Buckets can be extracted from an `AggregationResult` using
874`toDateHistogram name`
888`toDateHistogram name`
876−For more information on the Date Histogram Aggregation, see: <http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-aggregations-bucket-datehistogram-aggregation.html>
890+For more information on the Date Histogram Aggregation, see: <https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-datehistogram-aggregation.html>
879Contributors
893Contributors
@@ -896,12 +910,12 @@ Possible future functionality
896Span Queries
910Span Queries
897------------
911------------
899−Beginning here: <http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-span-first-query.html>
913+Beginning here: <https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-span-first-query.html>
901Function Score Query
915Function Score Query
902--------------------
916--------------------
904−<http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html>
918+<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html>
906Node discovery and failover
920Node discovery and failover
907---------------------------
921---------------------------
@@ -921,42 +935,42 @@ Might require making a lucene index on disk with the appropriate format.
921GeoShapeQuery
935GeoShapeQuery
922-------------
936-------------
924−<http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-geo-shape-query.html>
938+<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-geo-shape-query.html>
926GeoShapeFilter
940GeoShapeFilter
927--------------
941--------------
929−<http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-geo-shape-filter.html>
943+<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-geo-shape-filter.html>
931Geohash cell filter
945Geohash cell filter
932-------------------
946-------------------
934−<http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-geohash-cell-filter.html>
948+<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-geohash-cell-filter.html>
936HasChild Filter
950HasChild Filter
937---------------
951---------------
939−<http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-has-child-filter.html>
953+<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-has-child-filter.html>
941HasParent Filter
955HasParent Filter
942----------------
956----------------
944−<http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-has-parent-filter.html>
958+<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-has-parent-filter.html>
946Indices Filter
960Indices Filter
947--------------
961--------------
949−<http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-indices-filter.html>
963+<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-indices-filter.html>
951Query Filter
965Query Filter
952------------
966------------
954−<http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-query-filter.html>
968+<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-query-filter.html>
956Script based sorting
970Script based sorting
957--------------------
971--------------------
959−<http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-sort.html#_script_based_sorting>
973+<https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-sort.html#_script_based_sorting>
961Collapsing redundantly nested and/or structures
975Collapsing redundantly nested and/or structures
962-----------------------------------------------
976-----------------------------------------------