miga-base 1.2.15.1 → 1.2.15.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/miga/remote_dataset.rb +20 -2
- data/lib/miga/version.rb +2 -2
- data/test/remote_dataset_test.rb +3 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 02ee43a4f918d4adb45bc28c20386965eeea6a6a7447a7bb56efbd7017c4ee54
|
4
|
+
data.tar.gz: c7d16aff20c61fd64833a3aa2f9ca66aaa6f3caedc19a03ae08cd1b9bd08b720
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 94ca45cab979c73e767cd05dfaceca410b6cedef44a5d9b0d16e4439651d872013fadc23a54d3ed6355bf6ed045f673e8e80424979e17af7dae0a32cd22e89d7
|
7
|
+
data.tar.gz: 0d83195dcbe7afb4fbfce02d492ed63c93776f1756037aa6412ab94b6378ae54d983a0583c3cf1c27e5c9a9b2dca108d386a60aaabce80a7af083d53a9cf0648
|
data/lib/miga/remote_dataset.rb
CHANGED
@@ -12,14 +12,32 @@ class MiGA::RemoteDataset < MiGA::MiGA
|
|
12
12
|
# Class-level
|
13
13
|
|
14
14
|
class << self
|
15
|
-
|
15
|
+
##
|
16
|
+
# Translate an NCBI Assembly Accession (+acc+) to corresponding internal
|
17
|
+
# NCBI ID, with up to +retrials+ retrials if the returned JSON document
|
18
|
+
# does not conform to the expected format
|
19
|
+
def ncbi_asm_acc2id(acc, retrials = 3)
|
16
20
|
return acc if acc =~ /^\d+$/
|
17
21
|
|
18
22
|
search_doc = MiGA::Json.parse(
|
19
23
|
download(:ncbi_search, :assembly, acc, :json),
|
20
24
|
symbolize: false, contents: true
|
21
25
|
)
|
22
|
-
(search_doc['esearchresult']['idlist'] || []).first
|
26
|
+
out = (search_doc['esearchresult']['idlist'] || []).first
|
27
|
+
if out.nil?
|
28
|
+
raise MiGA::RemoteDataMissingError.new(
|
29
|
+
"NCBI Assembly Accession not found: #{acc}"
|
30
|
+
)
|
31
|
+
end
|
32
|
+
return out
|
33
|
+
rescue MiGA::RemoteDataMissingError => e
|
34
|
+
if retrials <= 0
|
35
|
+
raise e
|
36
|
+
else
|
37
|
+
MiGA::MiGA.DEBUG("#{self}.ncbi_asm_acc2id - RETRY #{retrials}")
|
38
|
+
retrials -= 1
|
39
|
+
retry
|
40
|
+
end
|
23
41
|
end
|
24
42
|
end
|
25
43
|
|
data/lib/miga/version.rb
CHANGED
@@ -12,7 +12,7 @@ module MiGA
|
|
12
12
|
# - String indicating release status:
|
13
13
|
# - rc* release candidate, not released as gem
|
14
14
|
# - [0-9]+ stable release, released as gem
|
15
|
-
VERSION = [1.2, 15,
|
15
|
+
VERSION = [1.2, 15, 2].freeze
|
16
16
|
|
17
17
|
##
|
18
18
|
# Nickname for the current major.minor version.
|
@@ -20,7 +20,7 @@ module MiGA
|
|
20
20
|
|
21
21
|
##
|
22
22
|
# Date of the current gem relese.
|
23
|
-
VERSION_DATE = Date.new(2023, 1,
|
23
|
+
VERSION_DATE = Date.new(2023, 1, 25)
|
24
24
|
|
25
25
|
##
|
26
26
|
# References of MiGA
|
data/test/remote_dataset_test.rb
CHANGED
@@ -63,7 +63,9 @@ class RemoteDatasetTest < Test::Unit::TestCase
|
|
63
63
|
|
64
64
|
def test_asm_acc2id
|
65
65
|
declare_remote_access
|
66
|
-
|
66
|
+
assert_raise(MiGA::RemoteDataMissingError) do
|
67
|
+
MiGA::RemoteDataset.ncbi_asm_acc2id('NotAnAccession', 1)
|
68
|
+
end
|
67
69
|
id = MiGA::RemoteDataset.ncbi_asm_acc2id('GCA_004684205.1')
|
68
70
|
assert_equal('2514661', id)
|
69
71
|
assert_equal(id, MiGA::RemoteDataset.ncbi_asm_acc2id(id))
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: miga-base
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.15.
|
4
|
+
version: 1.2.15.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luis M. Rodriguez-R
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-01-
|
11
|
+
date: 2023-01-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: daemons
|