All notable changes to Apium will be documented in this file.
Starting from Apium v1.0.1, The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Please respect the 80-character text margin and follow the GitHub Flavored Markdown Spec.
v2.0.0 - Nested bucket aggregation/query functionality
api_versionadded to all responseresobjects- Support for Elasticsearch 8.5+
- User/password basic authentication support when credentials present
- Better support for nested fields
- Support for nested bucket aggregations, matching a nested value on another
nested value. For example,
person.name[person.role#judge]will return all names of persons whererole="judge" - Updated documentation for new features
track total hitsoption added to ES queries, to return counts of search results higher than 10000
-
Gemset changed to
api-v2 -
Changes reflect new api schemas in Datura, which make heavy use of nested fields
-
Added support for aggregating buckets by normalized keyword and returning the
top_hitsfirst document result for a non-normalized display. Internal logic has been changed because of nested fields, this may cause subtle differences in how facet labels are displayed -
Changes response format of
facetskey. Not only is the response format itself different, but there may be fewer facets returned since matching normalized values are combinedFrom:
"facets": { "WILLA CATHER": 10, "Willa Cather": 50 }
To:
"facets": { "willa cather": { "num" : 60, source: "Willa Cather" } }
- Add nested facets as described above, if desired
- Orchid apps that connect to the API should use
facet_limitinstead offacet_numin options - In the config files of your Datura repos, (
private.ymlorpublic.yml, set the api to"api_version": "2.0"to take advantage of new bucket aggregation functionality (or"api_version": "1.0"for legacy repos that have not been updated for the new schema). Please note that a running API index can only use one ES index at a time, and each ES index is restricted to one version of the schema. See new schema (2.0) documentation. - Connect to Elasticsearch 8.5 or later
- If you are using ES with security enabled, you must configure credentials
with Rails in the API repo. See
https://guides.rubyonrails.org/v6.1/security.html. To configure with VSCode
editor run
EDITOR="code --wait" rails credentials:editand add to the secrets file and then close the window to save. Do not commitconfig/master.key(it should be in.gitignore)
elasticsearch:
user: username
password: *****
v1.0.5 - API v1 on Ruby 3.1.6, Rails 6.1.7
- Ruby 3.1.6
- Rails 6.1.7
v1.0.4 - Updates & license
- Updated Ruby version, gems (which addresses mimemagic dependency problem), and license added
- Documentation on facets and highlighting
v1.0.3 - gem updates
- updates to rails and other gems
v1.0.2 - escapes and sorting
- question mark and asterisk behavior in queries
- order of expected, actual in tests
- sort behavior for relevancy
- support for multivalued and nested field sorting
- documentation moved back into apium from henbit location in order to version it with software
- ruby, rails, and other gem versions
v1.0.1 - version 1.0.1
- ruby, rails, and other gem versions
- version moved to initializer
v1.0.0 - Initial Launch
- Jessica Dussault (jduss4)