Skip to content

v2.0.0

Choose a tag to compare

@am486dx am486dx released this 03 May 14:52
· 23 commits to main since this release

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