Version numbers correspond to package.json
version. Follows the major.minor.bugfix naming pattern as of 2.8.0.
- "Show Only Rated" feature in Quepid busted for ES. Highlighting on _id after a terms match in ES causes a index out of bounds exception. Also, the API method in explainOther needed to have the right case, might make a constants file at some point. o19s#109 by @worleydl.
- Links to view Solr document should return JSON formatted docs instead of XML. Ok boomer? o19s#107 by @begomeister.
- Javascript linting! o19s#108 by @begomeister.
- Introduce the ability to specify GET instead of the default JSONP method for talking to Solr. Refactored to use the TransportFactory, similar to how we talk to Elasticsearch. Baby step towards supporting Solr V2 API with POSTs. o19s#105 by @epugh.
- You can supply a prefix for a image field type by using JSON:
id, title:tile, {"name": "relative_image_url_s", "type":"image", "prefix": "https://i.imgur.com"}
. This will open up a lot of new ideas for managing your field specification.
- Using Querqy with Solr? We now return the
querqy_decorations
details in theparsedQueryDetails
property.
-
Support an empty explanation hash in the response from either ES or Solr. @A2Kashyap proxied a custom API to look like Elasticsearch response to Quepid, and therefore the explain output looked like
"_explanation": {}
, which we hadn't expected. o19s/quepid#465 by @A2Kashyap is fixed by o19s#102 by @epugh. -
Handle both id field as
_id
(standard) and any alternative ID field in Elasticsearch when comparing Snapshots. Issue opened by @KennyLindahl at o19s/quepid#466 and fixed by @KennyLindahl via o19s#101!
- Links to individual Documents generated for Solr search engines (
doc._url()
) have faceting turned on for ALL of the fields listed. This may be a feature to help you understand about a single document, however I don't quite have a use case that makes sense. @jeffryedvm showed me it taking 30 seconds to query a single Solr doc due to what was blindly being faceted on, and opened o19s/quepid#442.
- Solr typically returns empty arrays in the response when it doesn't have data, however we have seen that people mocking up a Solr response might return a
null
instead of a{}
array. Now check that situation as well.
- Return Solr query params in the
responseHeader.params
if they exist assearcher.parsedQueryDetails
. - Ran
npm audit
and upgraded dependencies.
- Support Elasticsearch scripted fields in querying. Thanks @dmitrykey for encouragement and testing. Thanks to @CGamesPlay for the implementation via o19s#90.
- Support Elasticsearch templates in querying. Any URL that ends in
/template
for Elasticsearch will be assumed to be a template query. Thanks @danielibars for encouragement and testing. o19s#92 by @epugh.
- Introduce to
searchFactory
the propertyparsedQueryDetails
that stores details about the query being processed by the search engine. Works with Solr and Elasticsearch. - Using Querqy with Solr? We now return the
querqy.infoLog
details in theparsedQueryDetails
property. - Upgrade JavaScript dependencies to be closer to what are used in the Quepid project.
- Introduce translate:content field type (similar to thumb:image_url), that lets you tag which fields you want to translate. We need to move this formatting logic over to Quepid instead of splainer-search ;-).
- Introduce image:image_url field type (similar to thumb:image_url), but larger.
- Solr - Disable highlight unless enabled in the fieldSpec
- Allow full query override for ES explain other
- Allow override of defType for explainOther in solr searcher
- Fixed issue with documents having no title causing splainer to blow up.
- Lots of work on breaking out highlighting into a better structure, after fighting with little fixes for a while.
- Highlighting on dates and integers in Solr causes an error. Work around is to append
hl.method=unified
to calls to Solr. o19s#84 - a common pattern in Solr schemas is to normalize fields with dots:
foo.bar
, however if you have a array or dictionary of JSON, we want to navigate that. Now we check if the key exists with a dot in it, if not, we use that as a selector to pluck out the data in the nested JSON that we need. o19s#83
- Fix rendering logic to handle Arrays and JSON objects so you don't get
"[object Object]"
in the UI. Another great fix by @CgamesPlay! - Migrate to Puppeteer for browser testing. No more PhantomJS. Lots of other dependencies cleaned up, and some legacy files from when this was a full blown app instead of a library removed.
package-lock.json
dropped from 9663 lines to 4788 lines.
- Allow http://username:[email protected]:9200/ in URL to work by converting to Authorization header for Elasticsearch. Thanks @CGamesPlay for fix.
- Support extracting media fields that have fieldspec media:
- This time with the
splainer-search.js
file!
- DO NOT USE THIS VERSION, we missed the compiled file from the package ;-)
- Remove compiled
splainer-search.js
from github
- Explain Other on ES 6 and 7 Broken.
- Fix for wildcard fieldspec in ES, allow * as a fieldspec
There was a hiatus up through 2.5.2 in maintaining this file.
- Remove Vagrant support from project.
- Support how ES 7 reports total docs found compared to how ES 6 and prior did.
- Bugfix: fixes bug when field name conflicts with url function name
- Bugfix: fixes formatting of json fields instead of returning [object Object]
- Bugfix: check for whether field name had a '.' was matching everything. D'oh!
- Adds support for neste fields
- Removes the requirement for a search engine version to support the different ways ES handles returning fields
- Support simple grouping in Solr
- Elasticsearch bulk search support
- Search validator to check URL for correct search results
- Elasticsearch support
- Support for Solr URL's without a protocol