Repository navigation
v2.0.0
This is a huge update of the sru-queryer library. Below is a list of the breaking changes, bug fixes, and enhancements included in this new release.
Breaking Changes
- Removed imports for SRUUtil, SRUConfiguration and Query class in favor of a simplified interface 'SRUQueryer'
- Removed 'drivers' in favor of an automatic explainResponse parser
- Refactored IndexQuery class and parameters to match with SRU documentation (now called 'SearchClause')
- Refactored Modifiers argument order and names to match SRU documentation and be more intuitive
- Refactored available record schema format to include Identifier as a property on the record schema instead of as a seperate record schema.
- Removed unnecessary separate SRU server links in favor of a single link when creating the SRU server configuration
- Refactored LITERAL to RawCQL
Enhancements
- As mentioned, drivers are no longer needed!
- No more dealing with 3 different classes, plus the requests module, for sending SRU requests
- The new SRUQueryer class can send the search_retrieve requests for you and return the content, with or without validation. That means you don't need to deal with 'requests' and Sessions if you don't want to
- Improved error handling and error messages in explainResponse parsing
- Basic logging
- Readme includes known incompatibilities with some important SRU servers
- Performed further testing on SRU servers
- Improved test coverage and removed confusing/redundant tests
Bug Fixes
- Fixed bug where certain relations for SearchClauses don't include spaces when needed
- Fixed bug where default context set was not allowed without a default index
- Fixed bug where maximum records returned could not be greater than start_record
- Fixed a bug where SRU defaults were not being validated
- Removed incorrect practice of allowing record schema identifiers to be used in place of record schema names in queries
- Fixed bug where queries with a single search term included multiple equals signs