0.1.76 (#89 2015-01-20 17:35:14)
PT-486 Introduce specs for V2 book endpoints
This PR introduces a provisional swagger documentation for the hypothetical V2 book/search APIs. The response specification of a book's meta-data is based on the messages received by Marvin v2, it is very temporary and it is meant to show what data we could use/return in the new service.
0.1.75 (#92 2015-01-20 11:33:55)
Pt 610 - API path is configurable
0.1.74 (#91 2015-01-19 16:44:31)
Reverted code so we get samples again
0.1.73 (#88 2015-01-14 12:36:08)
CAT-147: Removed sample link for undistributed books
0.1.72 (#87 2015-01-13 16:32:57)
PT-582: Remove deprecated components
Patch
- remove components that are binary ES client dependent
- code cleanup
- very small refactoring bits
0.1.71 (#86 2015-01-12 17:55:14)
PT-575: Modify catalogue endpoints to use ES HTTP client.
Patch
- modify the existing catalogue2 code in order to use the new ES http client instead of the binary one
- code cleanup (removing old code that's not being used anymore)
0.1.70 (#84 2015-01-12 10:01:44)
Code cleanup
Patch
- use a generated http port for the e2e tests
- delete unused imports
- use extra warnings from scala compiler
0.1.69 (#83 2015-01-09 17:09:34)
Consider ConnectionAttemptFailedException as a temporary exception.
Patch
- consider the ES HTTP client exception in order to differentiate between temporary failure situations.
0.1.68 (#82 2015-01-09 14:32:45)
PT-574 Migrate search APIs to use the Elastic HTTP client
- Update the ES HTTP client
- Deprecate some components that rely on the ES Transport protocol
- Introduce equivalent testing components for the ES HTTP client
- Migrate catalogue search APIs to use the HTTP client
0.1.67 (#81 2015-01-09 09:48:41)
ES HTTP client upgrade
Patch
- upgrade the elastic-http dependency to 0.0.7
- update marvin2 ingester in order to use the ES HTTP client instead of the binary one
0.1.66 (#80 2015-01-07 09:43:50)
Bulk indexing using HTTP ES client.
Patch
- Bulk indexing implementation using the new HTTP ES client
0.1.65 (#79 2015-01-06 16:16:10)
Introduce ES HTTP Client
Patch
- update dependencies to the latest versions (where possible)
- code cleanup (removing commented out code)
0.1.64 (#78 2015-01-05 10:57:24)
Improve routes readability
Make routes a little more readable in the search-api by factoring out the route from the URI matching and some complex validation.
0.1.63 (#77 2014-12-19 15:11:01)
Split specs to be more easier to digest for CI
Split the BasicSearchSpecs to be less resource-hungry and hopefully reduce transient failures on CI.
0.1.62 (#76 2014-12-19 14:20:29)
Cat 134 - sorting books by contributor by title
- Added multi-field for sorting by title
0.1.61 (#75 2014-12-19 13:48:34)
CAT-138 Support partial matches for the author field
Introduce partial match support for author names
0.1.60 (#70 2014-12-19 11:33:51)
CAT-139 Introduce spelling suggestions for mis-spelled authors
- Fix suggestions appearing for correctly spelled authors
- Provide suggestions for mis-spelled authors
0.1.59 (#71 2014-12-19 10:45:33)
Acceptance tests
- Add tests for checking existence of this, next and prev links in a search results response
0.1.58 (#72 2014-12-18 18:08:14)
CAT-136 Fix spelling suggestions so that multiple words are supported
Support more mis-spelled words in a query
0.1.57 (#73 2014-12-18 17:55:54)
CAT-137 Remove suggestions from the response when no suggestions are provided
Fix search responses by removing the suggestions
element when no suggestions are returned by the index.
0.1.56 (#69 2014-12-18 17:42:18)
CAT-103: Keep book metadata when undistributing.
Patch
- use a child document for undistribute messages, having the book as the parent;
- update the search service in order to use the child document;
- retry indexing a message when some ES communication is happening;
0.1.55 (#65 2014-12-18 11:43:34)
Cat 134 - search and catalogue have separate sort-order mappings
- Search and Catalogue components have separate sort-order mappings.
- Removed superfluous sort-by-title in search.
- Duplicated permitted values in API and ES layers (not pretty but works).
0.1.54 (#67 2014-12-18 11:08:50)
CAT-131: Removed links from related books end-point inline with v1
0.1.53 (#68 2014-12-18 10:44:35)
Spelling suggestion acceptance tests
- Add more misspelling scenarios
- Slight rewording of steps
- Change assertion to be_empty / be_nil
0.1.52 (#66 2014-12-17 16:30:56)
Use fanout exchange type instead of headers.
Patch
- Use fanout exchange type instead of headers.
0.1.51 (#64 2014-12-16 17:35:41)
Use defs instead of vals for exception and rejection handlers.
Patch
Use defs instead of vals for exception and rejection handlers.
0.1.50 (#63 2014-12-16 14:52:46)
Cat 134
- Related books and similar books end-points should have same order of results.
- Fixed sorting by title.
- Moved common MLT query.
- Tidied up sorting unit-tests.
0.1.49 (#62 2014-12-15 17:54:45)
Introduce timeout for ES client and log unhandled failures
- Introduce a more reasonable, configurable timeout when connecting to ES
- Log un-handled failures at the API level
0.1.48 (#60 2014-12-15 16:44:54)
CAT-122 Implement spelling suggestions
Implement spellcheck suggestions for the search endpoint
0.1.47 (#59 2014-12-15 16:21:40)
Fixed path prefix in links for related books
0.1.46 (#58 2014-12-15 14:51:26)
CAT-125: Links in search results always contain count and offset
0.1.45 (#55 2014-12-15 11:59:05)
Cat 45 - relaxed dateFilter() usage
- Modified
dateFilter
helper so we can use it in combination with other filters.
0.1.44 (#57 2014-12-15 11:19:14)
Update dependencies
- Update dependencies
- Require all from cucumber/blinkbox instead of individual modules
0.1.43 (#56 2014-12-12 17:42:56)
Fix README in order to use the new module names.
Patch
0.1.42 (#54 2014-12-12 15:48:08)
Improve search tests
- Make search tests use set_query_param from cucumber-blinkbox instead of setting @params
- remove "I have specified a sort order of " step_def from search step defs as the same step exists in catalogue step_defs
0.1.41 (#53 2014-12-12 15:36:27)
Enable graylog logging for marvin1 ingester.
Patch
- send logs to graylog by mixing 'Loggers'
0.1.40 (#50 2014-12-12 15:22:32)
Cat 45 - v1 search sorting and ordering
- search service matches existing v1 sorting and ordering
- added common sorting, pagination, validation to
common
package
0.1.39 (#51 2014-12-12 14:44:06)
CAT-124 Switched links to be relative in line with v1 api
- Switched links to be relative in line with v1 api
0.1.38 (#49 2014-12-12 11:34:47)
Fix the internal (rpm) names.
Patch
- change the rpm name of the submodules.
0.1.37 (#48 2014-12-12 10:36:30)
Graylog configuration
Patch
- change logging config in order to send the logs to Graylog
- remove swagger config from catalogue2-service-public (as not being used)
0.1.36 (#47 2014-12-11 17:14:08)
Project modules renaming
Patch
Quite a big renaming
- rename modules in order to differentiate from the older catalogue service(s)
0.1.35 (#46 2014-12-11 16:57:08)
CAT-123 Improve similar authors to use similar logic as the search-service
Take inspiration from the old search-service to provide a more-like-this relevance which is similar to the existing one.
0.1.34 (#44 2014-12-11 13:56:07)
Add more cache checks for search api
- Add cache checks for suggestions, spelling and similar endpoint
0.1.33 (#41 2014-12-11 11:55:18)
CAT-111 Ensure no books
array is returned if no book is matched
This patch makes the response of search and similar APIs more compliant with v1 removing the books
array when no books are matched.
0.1.32 (#40 2014-12-11 11:48:02)
Cat 46
- Caching directives to all end-point methods to match existing v1 search service
- Configuration class and factored out existing properties
- Support for console logging
0.1.31 (#42 2014-12-11 10:47:39)
CAT-108 - Fix query special character handling
For V1 compliance:
- Introduce more checks in terms of query validation and pre-processing
- Make responses for validation errors not JSON-encoded
0.1.30 (#33 2014-12-10 16:49:57)
Migrate search service cucumber tests
Tests have been migrated from: https://git.mobcastdev.com/Platform/search-services
-
Migrate search-service tests
-
Migrate distributor messages which act as test fixtures
-
Migrate data.yml
-
Re-word steps so they don't clash with catalogue tests
-
Include zero in transforms
-
Updated environment config
-
Add instructions for running tests locally
-
Fixed a search step which was searching for a hash of the search term
0.1.29 (#39 2014-12-10 15:10:09)
Move some leftover tests from the old structure to the new one.
Patch
- there was a leftover test which needed to be moved to the new folder.
0.1.28 (#38 2014-12-10 14:58:41)
CAT-107 Ensure empty searches result in the correct 400 response
- Introduce missing akka log configuration (not really part of the ticket)
- Ensures the correct responses are returned in case of an empty search query
0.1.27 (#35 2014-12-10 14:17:44)
CAT-32: Modules renaming
Patch:
- ingesterv1 -> catalogue-ingester-marvin1
- ingesterv2 -> catalogue-ingester-marvin2
- searchv1 -> catalogue-search-service
0.1.26 (#37 2014-12-10 13:48:03)
CAT-116 Introduce validation for ISBN in similar books endpoint
Fixes missing validation checks on the ISBN part of a similar-books URL.
0.1.25 (#36 2014-12-10 13:28:46)
Cat 16
- Refactored unit-test to create index once
0.1.24 (#34 2014-12-10 11:24:14)
CAT-114 Implement pagination links in search and similar responses
- Implement the pagination links for search and similar responses.
0.1.23 (#32 2014-12-10 09:58:21)
Added health check end-point
- Added health check end-point
0.1.22 (#31 2014-12-09 16:38:46)
CAT-113 Introduce number of results in similar books
- Add the missing
numberOfResults
field in the response for the similar books endpoint - Introduce helper to write end-to-end tests creating the index only once per test-suite
0.1.21 (#30 2014-12-09 13:49:59)
Fix name of searchv1 project name in build.sbt
Fix name of searchv1 project in sbt build.
0.1.20 (#29 2014-12-09 10:22:32)
Cat 16
- Implemented date-range filtering
- Minor changes following previous review
0.1.19 (#27 2014-12-08 14:51:29)
Migrate catalogue-service cucumber tests to V2 repository
From https://git.mobcastdev.com/Agora/catalogue-service
- Migrate features folder (contains features, step_defs, and support code)
- Migrate config folder (contains data dependencies, environment addresses, cucumber profiles)
- Migrate Gemfile, Gemfile.lock and Rakefile
0.1.18 (#28 2014-12-08 11:11:20)
Cat 16
- Added pagination and sorting
- Added all v1 links to responses
- Completed DAO for v1 end-points
- Reinstated health check end-point
- Improved code-coverage for service unit-tests
- Added adapter for creating
linkHelper
- Moved all constants into service layer
- Removed all redundant code
- General code tarting up
0.1.17 (#26 2014-12-02 14:44:21)
CAT-24 - More tests on pagination
- Introduce tests and fixes on pagination of suggestions
- Introduce tests and fixes on pagination of MoreLikeThis
- Increase the patience configuration for
ApiSpecBase
in order to avoid failing on CI
0.1.16 (#24 2014-12-02 13:53:28)
Cat 54
- Implemented API spray layer for
/book/?contributor=xxx
method - Additional unit-tests for API layer
- Removed some redundant code (more to do)
- Tidied up API unit-test class a little
0.1.15 (#23 2014-12-02 13:20:59)
Fix xml parsing issues
Patch
- add text trimming to the xml text nodes
- make all the fields optional for Source, except 'username'
- proper parsing of different fields like regions, prices, descriptions
- update/add unit tests in order to cover different parsing scenarios
- use different queue names in order to get the messages being published to the distribution exchanges
0.1.14 (#25 2014-12-02 11:29:41)
CAT-77 Increase sloppines to better match word permutations
Increase the sloppiness of the title/author/description queries in order to match documents where the word order is permuted with respect to the query.
0.1.13 (#22 2014-12-01 17:03:58)
CAT-24 Implement pagination and response wrappers for compatibility with existing v1 APIs
- Improve the response format to be compatible with the one of the existing v1 APIs
- Implement pagination
0.1.12 (#21 2014-12-01 16:47:44)
CAT-68 Include ISBN as a criteria for book search
This patch fixes the search endpoint as it wasn't matching on the ISBN field; now books can be found by ISBN as well.
0.1.11 (#18 2014-12-01 16:39:55)
Add RPM/gpg/fatjar capabilities.
Patch
- RPM/gpg/fatjar capabilities
0.1.10 (#20 2014-12-01 16:17:39)
CAT-66 Use the correct marshallers to support Accept headers
This patch fixes the v1 search API to support the correct content-types and Accept headers.
0.1.9 (#16 2014-12-01 11:07:37)
Cat 54
- Added DAO unit-test
- Couple of review fixes that didn't make last PR
- Added framework for get bulk books API method
0.1.8 (#19 2014-11-28 17:39:42)
s/search/elasticsearch in config
Improve the configuration by renaming the too generic search
to a more specific elasticsearch
.
0.1.7 (#17 2014-11-28 15:24:58)
:s/browser/searchv1/g
This patch makes the project structure a bit more uniform by renaming the "browser" submodule to "searchv1" thus communicating the purpose of being a replacement for the old search APIs.
0.1.6 (#15 2014-11-27 15:25:08)
CAT-62: Update messaging configuration
Patch
- having two messaging configurations: book and book-price
- create two different messaging consumers, one for each type of message
- split the xml parsers in order to have different parsing strategies for each message type.
0.1.5 (#14 2014-11-27 11:15:35)
CAT-59: Index the parsed/validated requests
Patch
- create a new mappings for 'book-price' messages
- parse 'undistribute' reasons messages in order to be indexed next to the book
- refactor the indexer service in order to accept the distribution supertype instead of the concrete implementations
0.1.4 (#11 2014-11-26 15:27:45)
Cat 58
- Unit-tests for /books API prototype
- Separated ES and service code
0.1.3 (#13 2014-11-26 13:55:10)
CAT-29 Search books by title
- Implement E2E tests aiming to ensure the correct order for title matches in book search
- Introduce a computed field that uses a simpler analyser which doesn't strip stop-words for the title
- Use the stop-word-aware title field in the search query so that it takes precedence over the stop-word-removing one
0.1.2 (#12 2014-11-26 10:45:03)
CAT-52: V1 XML messages parser
patch
- parsing mechanism for 'book', 'undistribute' and 'book-price' xml message types
- unit tests for different missing fields on book/undistribute/book-price xmls
- fork the running of the tests in order to facilitate ease of running them within sbt (without the need of restarting it after few runs, due to the out of permgen mem)
0.1.1 (#10 2014-11-21 16:54:45)
E2E test setup
This PR introduces an infrastructure and a DSL that enables end-to-end testing on elastic-search based services. It also provides a couple of examples of usage as already-implemented tests.
0.1.0 (#9 2014-11-21 09:46:18)
CAT-51: Ingester v1 and v2 submodules.
new feature
- create new v1 ingester submodule
- improve the books model
- fix consumers of the new books model in order to use the new interface