colrapi 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/lib/colrapi/faraday.rb +1 -1
- data/lib/colrapi/request.rb +13 -29
- data/lib/colrapi/version.rb +1 -1
- data/lib/colrapi.rb +7 -4
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aea2e44a818d41cd832614bd00cb148714061db766ef82a61be48a036568d032
|
4
|
+
data.tar.gz: d7b3de2c633901fc8e30f6f80fb8fe47bbb1b9702d016f1240fed959c26479ba
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a24bec052600b4f5cf3402e5cf8b5ad62e40dd5178d79285812acd594caaa91d18c4dd28c29bbb4eba6eb9da8aaec5a619d2263c929c49edc1b91dfef9caa5f9
|
7
|
+
data.tar.gz: 7b495d6b3ea866840958a56334a1493f94b39568df0a474b6de5cae4940c18206a3041c9920b2567ade50d71326d13861502722bfaa1433e0e45e3a626c33b2e
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,8 @@
|
|
1
1
|
## [Unreleased]
|
2
2
|
|
3
|
+
## [0.1.5] - 2025-03-25
|
4
|
+
- Added usage_id to nameusage_search
|
5
|
+
|
3
6
|
## [0.1.4] - 2025-03-05
|
4
7
|
- Fixed authentication
|
5
8
|
- Kept depreciated ChecklistBank preview endpoint functionality by using /dataset/{dataset_id}LRC.json instead (now requires a token)
|
data/lib/colrapi/faraday.rb
CHANGED
@@ -20,7 +20,7 @@ module Faraday
|
|
20
20
|
when 502
|
21
21
|
raise Colrapi::BadGateway, error_message_500(response, "The server returned an invalid or incomplete response.")
|
22
22
|
when 503
|
23
|
-
raise Colrapi::ServiceUnavailable, error_message_500(response, "
|
23
|
+
raise Colrapi::ServiceUnavailable, error_message_500(response, "The service is unavailable.")
|
24
24
|
when 504
|
25
25
|
raise Colrapi::GatewayTimeout, error_message_500(response, "504 Gateway Time-out")
|
26
26
|
end
|
data/lib/colrapi/request.rb
CHANGED
@@ -1,15 +1,11 @@
|
|
1
|
-
require_relative "faraday"
|
1
|
+
require_relative "faraday"
|
2
2
|
require "faraday/follow_redirects"
|
3
3
|
require_relative "utils"
|
4
4
|
require "colrapi/error"
|
5
5
|
|
6
6
|
module Colrapi
|
7
7
|
class Request
|
8
|
-
attr_accessor :endpoint
|
9
|
-
attr_accessor :q
|
10
|
-
attr_accessor :verbose
|
11
|
-
|
12
|
-
attr_accessor :options
|
8
|
+
attr_accessor :endpoint, :q, :verbose, :options
|
13
9
|
|
14
10
|
def initialize(**args)
|
15
11
|
@endpoint = args[:endpoint]
|
@@ -31,6 +27,7 @@ module Colrapi
|
|
31
27
|
@max_rank = args[:max_rank]
|
32
28
|
@environment = args[:environment]
|
33
29
|
@highest_taxon_id = args[:highest_taxon_id]
|
30
|
+
@usage_id = args[:usage_id]
|
34
31
|
@parent_rank = args[:parent_rank]
|
35
32
|
@root_id = Array(args[:root_id]) if args[:root_id]
|
36
33
|
@root2_id = Array(args[:root2_id]) if args[:root2_id]
|
@@ -61,7 +58,7 @@ module Colrapi
|
|
61
58
|
@term_operator = args[:term_operator]
|
62
59
|
@issued = args[:issued]
|
63
60
|
@issued_before = args[:issued]
|
64
|
-
@modified_after =
|
61
|
+
@modified_after = args[:modified_after]
|
65
62
|
@modified_before = args[:modified_before]
|
66
63
|
@last_synced_before = args[:last_synced_before]
|
67
64
|
@min = args[:min]
|
@@ -132,30 +129,18 @@ module Colrapi
|
|
132
129
|
subgenus: @within_subgenus, section: @within_section, species: @within_species,
|
133
130
|
nidx: @nidx_id, state: @state, running: @running, notCurrentOnly: @not_current_only,
|
134
131
|
broken: @broken, subjectDatasetKey: @subject_dataset_id, mode: @mode, subject: @subject,
|
135
|
-
TAXON_ID: @highest_taxon_id, environment: @environment,
|
136
|
-
sortBy: @sort_by, reverse: @reverse, url: @url, offset: @offset, limit: @limit}
|
132
|
+
TAXON_ID: @highest_taxon_id, USAGE_ID: @usage_id, environment: @environment,
|
133
|
+
sortBy: @sort_by, reverse: @reverse, url: @url, body: @body, offset: @offset, limit: @limit }
|
137
134
|
opts = args.delete_if { |_k, v| v.nil? }
|
138
135
|
|
139
|
-
conn =
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
f.use Faraday::ColrapiErrors::Middleware
|
146
|
-
f.adapter Faraday.default_adapter
|
147
|
-
end
|
148
|
-
else
|
149
|
-
Faraday.new(url: Colrapi.base_url, request: { params_encoder: Faraday::FlatParamsEncoder }) do |f|
|
150
|
-
if !@user.nil? and !@password.nil?
|
151
|
-
f.request :authorization, :basic, @user, @password
|
152
|
-
end
|
153
|
-
f.use Faraday::ColrapiErrors::Middleware
|
154
|
-
f.adapter Faraday.default_adapter
|
155
|
-
end
|
156
|
-
end
|
136
|
+
conn = Faraday.new(url: Colrapi.base_url, request: { params_encoder: Faraday::FlatParamsEncoder }) do |f|
|
137
|
+
f.request :authorization, :basic, @user, @password if @user && @password
|
138
|
+
f.response :logger if @verbose
|
139
|
+
f.use Faraday::ColrapiErrors::Middleware
|
140
|
+
f.adapter Faraday.default_adapter
|
141
|
+
end
|
157
142
|
|
158
|
-
conn.headers['Authorization'] = "Bearer #{@token}"
|
143
|
+
conn.headers['Authorization'] = "Bearer #{@token}" if @token
|
159
144
|
conn.headers['Accept'] = 'application/json,*/*'
|
160
145
|
conn.headers[:user_agent] = make_user_agent
|
161
146
|
conn.headers["X-USER-AGENT"] = make_user_agent
|
@@ -168,7 +153,6 @@ module Colrapi
|
|
168
153
|
rescue MultiJson::ParseError
|
169
154
|
res.body
|
170
155
|
end
|
171
|
-
|
172
156
|
end
|
173
157
|
end
|
174
158
|
end
|
data/lib/colrapi/version.rb
CHANGED
data/lib/colrapi.rb
CHANGED
@@ -42,6 +42,7 @@ module Colrapi
|
|
42
42
|
# Search datasets:
|
43
43
|
# @param q [String] A search query for datasets
|
44
44
|
# @param short_title [String] A dataset alias
|
45
|
+
# @param title [String] A dataset title
|
45
46
|
# @param code [String] The nomenclatural code (bacterial, botanical, cultivars, phytosociological, virus, zoological)
|
46
47
|
# @param private [Boolean] Whether the dataset is private or not
|
47
48
|
# @param released_from [Integer] Filter by a project id that a dataset was released from
|
@@ -64,6 +65,7 @@ module Colrapi
|
|
64
65
|
# @param modified_after [Date] Filter by modified after date
|
65
66
|
# @param modified_before [Date] Filter by modified before date
|
66
67
|
# @param min_size [Integer] Filter by minimum record size
|
68
|
+
# @param token [String, nil] An authentication token from Colrapi.user_login()
|
67
69
|
#
|
68
70
|
# @param sort_by [String] Sort by (key, alias, title, creator, relevance, created, modified, imported, size)
|
69
71
|
# @param reverse [Boolean] Sort in reverse
|
@@ -76,7 +78,7 @@ module Colrapi
|
|
76
78
|
contributes_to: nil, has_source_dataset: nil, has_gbif_id: nil, gbif_id: nil, gbif_publisher_id: nil,
|
77
79
|
editor: nil, reviewer: nil, modified_by: nil, origin: nil, type: nil, license: nil, row_type: nil,
|
78
80
|
created_after: nil, created_before: nil, issued_after: nil, issued_before: nil, modified_after: nil,
|
79
|
-
modified_before: nil, min_size: nil, sort_by: nil, reverse: nil, offset: nil, limit: nil,
|
81
|
+
modified_before: nil, min_size: nil, sort_by: nil, token: nil, reverse: nil, offset: nil, limit: nil,
|
80
82
|
verbose: false)
|
81
83
|
endpoint = "dataset"
|
82
84
|
unless dataset_id.nil?
|
@@ -94,7 +96,7 @@ module Colrapi
|
|
94
96
|
row_type: row_type, created_after: created_after, created_before: created_before,
|
95
97
|
issued_after: issued_after, issued_before: issued_before, modified_after: modified_after,
|
96
98
|
modified_before: modified_before, min_size: min_size, sort_by: sort_by, reverse: reverse,
|
97
|
-
offset: offset, limit: limit, verbose: verbose).perform
|
99
|
+
offset: offset, limit: limit, token: token, verbose: verbose).perform
|
98
100
|
end
|
99
101
|
end
|
100
102
|
|
@@ -553,6 +555,7 @@ module Colrapi
|
|
553
555
|
# @param facet [Array, String, nil] the search facet
|
554
556
|
# @param environment [Array, String, nil] filter by environment (MARINE, TERRESTRIAL, FRESHWATER, BRACKISH)
|
555
557
|
# @param highest_taxon_id [String, nil] Filter by highest taxon ID
|
558
|
+
# @param usage_id [String, nil] Filter by usage ID
|
556
559
|
#
|
557
560
|
# @param sort_by [String, nil] sort results by NAME, TAXONOMIC, INDEX_NAME_ID, NATIVE, or RELEVANCE
|
558
561
|
# @param reverse [Boolean] sort in reverse order
|
@@ -563,7 +566,7 @@ module Colrapi
|
|
563
566
|
# @return [Array, Boolean] An array of hashes
|
564
567
|
def self.nameusage_search(q: nil, dataset_id: nil, endpoint: 'nameusage/search', content: nil, issue: nil,
|
565
568
|
type: nil, rank: nil, min_rank: nil, max_rank: nil, environment: nil, facet: nil,
|
566
|
-
highest_taxon_id: nil, sort_by: nil, reverse: nil, offset: nil, limit: nil,
|
569
|
+
highest_taxon_id: nil, usage_id: nil, sort_by: nil, reverse: nil, offset: nil, limit: nil,
|
567
570
|
verbose: false)
|
568
571
|
|
569
572
|
# a nil dataset_id will search name usages from all datasets in ChecklistBank
|
@@ -573,7 +576,7 @@ module Colrapi
|
|
573
576
|
|
574
577
|
Request.new(endpoint: endpoint, q: q, content: content, issue: issue, type: type,
|
575
578
|
rank: rank, min_rank: min_rank, max_rank: max_rank, facet: facet, environment: environment,
|
576
|
-
highest_taxon_id: highest_taxon_id, sort_by: sort_by, reverse: reverse,
|
579
|
+
highest_taxon_id: highest_taxon_id, usage_id: usage_id, sort_by: sort_by, reverse: reverse,
|
577
580
|
offset: offset, limit: limit, verbose: verbose).perform
|
578
581
|
end
|
579
582
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: colrapi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Yoder, Geoff Ower
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-03-
|
11
|
+
date: 2025-03-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -198,7 +198,7 @@ licenses:
|
|
198
198
|
metadata:
|
199
199
|
homepage_uri: https://github.com/SpeciesFileGroup/colrapi
|
200
200
|
source_code_uri: https://github.com/SpeciesFileGroup/colrapi
|
201
|
-
changelog_uri: https://github.com/SpeciesFileGroup/colrapi/releases/tag/v0.1.
|
201
|
+
changelog_uri: https://github.com/SpeciesFileGroup/colrapi/releases/tag/v0.1.5
|
202
202
|
post_install_message:
|
203
203
|
rdoc_options: []
|
204
204
|
require_paths:
|