Skip to content

Releases: samvera/questioning_authority

v5.5.0

13 Aug 22:59
Compare
Choose a tag to compare

Fix Broken Access to Library of Congress

This release addresses a change in the Library of Congress API URL to use https instead of http. Update to this release to restore access to Library of Congress.

v5.4.0

11 Jun 16:52
267ce94
Compare
Choose a tag to compare

Features

  • Adding config option for Geonames URLs #312 (jeremyf)

Other

  • Align style practice with current Samvera norms #315 (bess)
  • Updating Rails development dependency #313 (jeremyf)
  • Remove Ruby 2.4 / Rails 6.0 build #311 (bkeese)
  • Adding Ruby 2.7.z and Rails 6.y.z releases to the CircleCI build configuration #310 (jrgriffiniii)
  • Update Geonames URIs to https #307 (no-reply)

v5.3.1

17 Dec 21:05
105a185
Compare
Choose a tag to compare

IP Logging failures seen in v5.3.0

IP Logging is off by default and requires setting Qa.config.suppress_ip_data_from_log=false in config/initializers/qa.rb in your app. If you have not done that, then this bug fix is not required.

If you are using IP logging (i.e. Qa.config.suppress_ip_data_from_log==false), then you will want to update to this release. In v5.3.0, the IP logging causes failures if the location cannot be retrieved from the http request.

Patch release includes:

  • bug fix to make ip logging more robust when location cannot be retrieved from the request

v5.3.0

16 Dec 20:20
926d9e6
Compare
Choose a tag to compare

Actions Required to Upgrade

No actions are required for this upgrade other than adjusting your gem file to allow for version 5.3.0 to be included by bundler. The changes in this release are fully backward compatible. The changes impact the linked data module only.

New this release

In the linked data module, this updates supports better logging:

  • provide access to the request_id from the search_query and find_term classes
  • log exception for graph load failures
  • each request gets a marker in the log when the request is strarted, optionally including IP data. It looks like...

Example without IP data...

******** SEARCH
******** FIND

Example with IP data...

******** SEARCH from IP 111.22.33.4444 in {city: Ithaca, state: New York, country: US}
******** FIND from IP 111.22.33.4444 in {city: Ithaca, state: New York, country: US}

To configure inclusion of IP data:

  • Edit /config/initializers/qa.rb
    • If this file doesn't exist in your app, you can copy it from /lib/generators/qa/install/templates/config/initializers/qa.rb
    • If it exists from an earlier release, you can copy in the new configs by comparing your version of the file to the generator version.
  • Uncomment and set the value of config.suppress_ip_data_from_log. If true, IP data will not be included. If false, IP data will be included in the log.

Change Log

  • add a request id to the search and find request headers
  • log exception for graph load failures
  • optionally include IP info at start of search/find linked data requests

v5.2.0

03 Dec 20:09
9ee982e
Compare
Choose a tag to compare

Actions Required to Upgrade

No actions are required for this upgrade other than adjusting your gem file to allow for version 5.2.0 to be included by bundler.

Support for Rails 6.0

This release adds support for Rails 6.0.

New Feature - Response Header for DISCOG authority

When requesting a search from DISCOG authority, you can request a response header be included in the results. For search, the response header has basic information to facilitate pagination.

Usage

Parameters

parameter values example purpose
response_header true, false response_header=true Include the pagination information in a response_header of the results. (default=false
page_num integer page_num=2 The number of the page to return. Works in conjunction with page_size.
page_size integer page_size=5 The number of results to return. Works in conjunction with page_num.
startRecord integer startRecord=6 The offset into the full set of results with the first record as 1. Works in conjunction with maxRecords.
maxRecords integer maxRecords=5 The number of results to return. Works in conjunction with startRecord.

Note on page/offset requests...

You can either specify page_num and page_size or specify startRecord and maxRecords. They cannot be mixed.

  • page_num and page_size - These are supported directly by discogs.
  • startRecord (i.e., offset) and maxRecords - These are provided to match the most common approach used in the linked data module.

Example URLs:

http://localhost:3000/qa/search/discogs/release?q=sinatra&response_header=true&startRecord=6&maxRecords=5

http://localhost:3000/qa/search/discogs/release?q=sinatra&response_header=true&page_num=2&page_size=5

Both of these will return results 6-10.

response_header

The structure of the response header is...

response_header = {
       start_record: 6          # the number of the first record returned
       requested_records: 5     # the number of records requested (aka page size)
       retrieved_records: 5     # the actual number of records returned in this request
       total_records: 85         # the total number of matches for this search request
}

Change Log

  • add optional response header which has pagination information for DISCOGs search
  • add support for Rails 6

v5.1.0

22 Nov 18:20
2d90dda
Compare
Choose a tag to compare

Actions Required to Upgrade

No actions are required for this upgrade other than adjusting your gem file to allow for version 5.1.0 to be included by bundler.

New Feature - Response Header for linked data authorities

When requesting a search or fetch of a single term from one of the linked data based authorities, you can request a response header be included in the results. For search, the response header has basic information to facilitate pagination. For fetch, it has summary information (e.g. predicate_count).

Usage

To request the response_header, append parameter &response_header=true to QA requests for linked data based authorities.

search results example

response_header = {
       start_record: 31          # the number of the first record returned
       requested_records: 10     # the number of records requested (aka page size)
       retrieved_records: 10     # the actual number of records returned in this request
       total_records: 85         # the total number of matches for this search request
}

NOTE: Not all authorities support pagination or may not return pagination information. If not available, you will get a header similar to...

"response_header": {
       "start_record": 0,
       "requested_records": "DEFAULT",
       "retrieved_records": 4,
       "total_records": "NOT REPORTED"
}

fetch results example

response_header = {
       predicate_count: 13   # the number of predicates that have the requested URI as the subject
}

Change Log

  • add optional response header which has pagination information for search and summary info for fetch

v5.0.0

18 Nov 15:47
941dec5
Compare
Choose a tag to compare

Actions Required to Upgrade

No actions are required for this upgrade other than adjusting your gem file to allow for version 5.0.0 to be included by bundler. If you have customizations for the linked data module or you use the Discogs authority, see the Update notes below for more details to determine if the changes impact your app.

Updates

This is a major release of QA with the following breaking changes...

request_header for linked data module

The parameter signature of the following methods changed to add parameter request_header: {}

  • Qa::Authorities::LinkedData::SearchQuery #search
  • Qa::Authorities::LinkedData::FindTerm #find

Discogs extended context output

The Discogs authority changed the format of the extended context to match that produced by the linked data module.

OLD FORMAT:

"context": {
  "Formats": ["Vinyl", "LP", "Compilation"],
  ...
}

NEW FORMAT:

"context": [
  {
    "property": "Formats",
    "values": ["Vinyl", "LP", "Compilation"]
  },
  ...
}

Change Log

  • refactor to single request_header parameter for search and find methods; multi-parameters are still supported, but deprecated
  • refactor Discogs to provide the same format for extended context as the linked data module

v4.2.5

12 Nov 15:04
b065bde
Compare
Choose a tag to compare

Actions Required to Upgrade

There are no required actions for this upgrade other than adjusting your gem file to allow for version 4.2.5 to be included by bundler.

NOTE: The Discogs data output has changed for the extended context. Previously, it used a different format than other authorities that provide extended context. It has been updated such that all authorities output the same format for extended context. See Issue #278 for details.

Change Log

  • refactor to single request_header parameter for search and find methods; multi-parameters are still supported, but deprecated
  • refactor Discogs to provide the same format for extended context as the linked data module

v4.2.4

17 Oct 16:23
281799b
Compare
Choose a tag to compare

Change Log

Includes update to discogs authority to set URI in search results to…

  • real discogs URI whenever available
  • discogs URL when not

Fetch data will use the same URI/URL as the subject_uri for triples when linked data is requested.

Actions Required to Upgrade

There are no required actions for this upgrade other than adjusting your gem file to allow for version 4.2.4 to be included by bundler.

v4.2.3

10 Oct 16:22
70065db
Compare
Choose a tag to compare

Patch release includes:

  • bug fix for performance stat reported for fetch normalization
  • adds support for format=nt for linked data module and discogs module
  • pin 'sass-rails', '~> 5.0' for Rails 5.1 and 5.2 to avoid bundler errors