briard 2.0.1 → 2.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/changelog.yml +0 -1
- data/.tool-versions +1 -0
- data/CHANGELOG.md +24 -0
- data/CITATION.cff +19 -0
- data/Gemfile.lock +1 -1
- data/README.md +7 -0
- data/lib/briard/metadata.rb +2 -2
- data/lib/briard/metadata_utils.rb +4 -0
- data/lib/briard/readers/cff_reader.rb +123 -0
- data/lib/briard/readers/crossref_reader.rb +3 -3
- data/lib/briard/utils.rb +23 -1
- data/lib/briard/version.rb +1 -1
- data/lib/briard/writers/cff_writer.rb +54 -0
- data/spec/find_from_format_spec.rb +21 -1
- data/spec/fixtures/CITATION.cff +83 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/cff-converter-python.yml +75 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/pidgraph-notebooks-python.yml +75 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/ruby-cff.yml +75 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/ruby-cff_repository_url.yml +75 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/maremma.yml +10 -10
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/metadata_reports.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_as_cff_url.yml +65 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url_cff_file.yml +65 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_DataCite.yml +61 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_Zenodo.yml +61 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_also_Zenodo.yml +61 -0
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/ruby-cff.yml +75 -0
- data/spec/metadata_spec.rb +1 -1
- data/spec/readers/cff_reader_spec.rb +172 -0
- data/spec/readers/codemeta_reader_spec.rb +1 -1
- data/spec/utils_spec.rb +12 -0
- data/spec/writers/cff_writer_spec.rb +78 -0
- metadata +19 -2
@@ -0,0 +1,61 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://api.datacite.org/dois/10.5281/zenodo.15497?include=media,client
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Mozilla/5.0 (compatible; Maremma/4.9.6; mailto:info@front-matter.io)
|
12
|
+
Accept:
|
13
|
+
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
14
|
+
Accept-Encoding:
|
15
|
+
- gzip,deflate
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message: OK
|
20
|
+
headers:
|
21
|
+
Date:
|
22
|
+
- Tue, 07 Dec 2021 11:17:11 GMT
|
23
|
+
Content-Type:
|
24
|
+
- application/json; charset=utf-8
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
Status:
|
28
|
+
- 200 OK
|
29
|
+
X-Anonymous-Consumer:
|
30
|
+
- 'true'
|
31
|
+
Cache-Control:
|
32
|
+
- max-age=0, private, must-revalidate
|
33
|
+
Vary:
|
34
|
+
- Accept-Encoding
|
35
|
+
Content-Encoding:
|
36
|
+
- gzip
|
37
|
+
Etag:
|
38
|
+
- W/"1efc7894df6207f4acc17d2ba66e6d48"
|
39
|
+
X-Runtime:
|
40
|
+
- '0.809856'
|
41
|
+
X-Request-Id:
|
42
|
+
- 4055a210-ae16-4e1f-a15a-08331dd796e2
|
43
|
+
X-Powered-By:
|
44
|
+
- Phusion Passenger(R) 6.0.12
|
45
|
+
Server:
|
46
|
+
- nginx/1.18.0 + Phusion Passenger(R) 6.0.12
|
47
|
+
Access-Control-Allow-Credentials:
|
48
|
+
- 'true'
|
49
|
+
Access-Control-Allow-Methods:
|
50
|
+
- GET, POST, PUT, PATCH, DELETE, OPTIONS
|
51
|
+
Access-Control-Allow-Headers:
|
52
|
+
- Accept,Access-Control-Allow-Origin,Access-Control-Expose-Headers,Access-Control-Allow-Methods,Access-Control-Allow-Headers,Authorization,Cache-Control,Content-Type,DNT,If-Modified-Since,Keep-Alive,Origin,User-Agent,X-Mx-ReqToken,X-Requested-With
|
53
|
+
Access-Control-Expose-Headers:
|
54
|
+
- Authorization
|
55
|
+
body:
|
56
|
+
encoding: ASCII-8BIT
|
57
|
+
string: !binary |-
|
58
|
+
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
|
59
|
+
http_version:
|
60
|
+
recorded_at: Tue, 07 Dec 2021 11:17:11 GMT
|
61
|
+
recorded_with: VCR 3.0.3
|
@@ -0,0 +1,75 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://raw.githubusercontent.com/citation-file-format/ruby-cff/main/CITATION.cff
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Mozilla/5.0 (compatible; Maremma/4.9.6; mailto:info@front-matter.io)
|
12
|
+
Accept:
|
13
|
+
- application/json;charset=UTF-8
|
14
|
+
Accept-Encoding:
|
15
|
+
- gzip,deflate
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message: OK
|
20
|
+
headers:
|
21
|
+
Connection:
|
22
|
+
- keep-alive
|
23
|
+
Content-Length:
|
24
|
+
- '1100'
|
25
|
+
Cache-Control:
|
26
|
+
- max-age=300
|
27
|
+
Content-Security-Policy:
|
28
|
+
- default-src 'none'; style-src 'unsafe-inline'; sandbox
|
29
|
+
Content-Type:
|
30
|
+
- text/plain; charset=utf-8
|
31
|
+
Etag:
|
32
|
+
- W/"0c65d88dd50bd96382850237735a8e2d6c0826d4497c8aafd6c28a2bacdb4127"
|
33
|
+
Strict-Transport-Security:
|
34
|
+
- max-age=31536000
|
35
|
+
X-Content-Type-Options:
|
36
|
+
- nosniff
|
37
|
+
X-Frame-Options:
|
38
|
+
- deny
|
39
|
+
X-Xss-Protection:
|
40
|
+
- 1; mode=block
|
41
|
+
X-Github-Request-Id:
|
42
|
+
- C94A:D42F:40C4B0:4FF047:61AF689B
|
43
|
+
Content-Encoding:
|
44
|
+
- gzip
|
45
|
+
Accept-Ranges:
|
46
|
+
- bytes
|
47
|
+
Date:
|
48
|
+
- Tue, 07 Dec 2021 13:58:52 GMT
|
49
|
+
Via:
|
50
|
+
- 1.1 varnish
|
51
|
+
X-Served-By:
|
52
|
+
- cache-hhn4041-HHN
|
53
|
+
X-Cache:
|
54
|
+
- MISS
|
55
|
+
X-Cache-Hits:
|
56
|
+
- '0'
|
57
|
+
X-Timer:
|
58
|
+
- S1638885532.881150,VS0,VE231
|
59
|
+
Vary:
|
60
|
+
- Authorization,Accept-Encoding,Origin
|
61
|
+
Access-Control-Allow-Origin:
|
62
|
+
- "*"
|
63
|
+
X-Fastly-Request-Id:
|
64
|
+
- 226be732c5d156ff9846cc2a7b43c4ec2f4643b9
|
65
|
+
Expires:
|
66
|
+
- Tue, 07 Dec 2021 14:03:52 GMT
|
67
|
+
Source-Age:
|
68
|
+
- '0'
|
69
|
+
body:
|
70
|
+
encoding: ASCII-8BIT
|
71
|
+
string: !binary |-
|
72
|
+
H4sIAAAAAAAAA5VW247bNhB911cMkJcWCGVJ67UkP3Xj7Xa3uRXZDYo80tLIIkyLAknZcf4mj/2O/FiHlC9bW0lcw4ZkcjjXwznzAp5qYWD28HTz9PD+XVhUFVRCImy4gUIjt1jCfAu6m2+Z2/xlDVGYh9GvYfAC/sDVFGprWzMdjZzIAlcmVHoxci8jkieh2d3dUagQlluhGuaMsErpFbfhQti6m4dCjYKAzrA1akMyU4jDJIyCFRrDFziFhwq2qoPO4NEf0bg1DRully+hlchpl6wgCEuSolmArREqJaXauH8rtLzklgdWWElKP5Am5yO8EXPN9Tbgc2M1L+y0T43sl6HVai1KNMD7I6KxqCteIFgFK96ItpOULZjtIoQ7l8Y7H6FPqQl4Z2ulzTRgUPGVkFvWcApuCvdcNLQPsBBrbParH9QctaVVpQtRHnPo//osR/Rh9EtYfn2VsTSPcxLnFZkT3gkXA8LHRviU2i2oCt7ypqjRkPcv4eNr8sWZ6wX7XAwFcItrlKolLcESt5Ts0ofhykAPAkopLL0YVdkN174CXomTQYNcF/Vh87mc6Yyl4PmcPLZO1aE87KCjB2SPFVqmWgUHhHgsBqUSBJYovE6yePQFG1WqMI6zcZSmASlDptEDg5KYREnMoozFWSBFgY2h0G9aThlhDmsaW0WJUnrLuLai8jj4McKfHSlUiUfxHawLtRqE/WiPYdJQocamQJ9Tu21JySFZADugDtXFVXsPKoBTWN3qziy90AmyHi22NW/8xk/BdcXGeXLN0mScDdh4bDlfmnMTf3ZaC84buA8vM5OwNJqM2Tia5ANmZnWHcK+axbmldyjkpSayLJ2wdBJNBkwcLuH3ruH/voinFl7xJeqBVLnHpfqTSZawSZ4kQ/qlUztQ7taBS19qIk7oLZ7kmT+AKy4k4bHXEc69jd8WbtVBe8CNv4WUYlFTyx7w5feFuhB3MUuvxwmLkmyoWn99+0fjF/bYfftKz3M7t5y69aUAj9JsTEmNcn9gg3O6z88uctmaGqVQR6IacOi1atSaS7U+9+VG4mfelJdWIGbXSZ6zqyR3RSbOaagRCdzf8b4/UMvz2shkh+fNj6KKx304xFmFFu2RDgpFlWypp79/cF3V82NB/IiFby+07Vqy40ouJexarXHU4SSH2lB4sWPXcRrnV+mwYztTNHE8d2232g8DP/PiSE7Oo0EGcRuOQ84EjF86pzBf6xMFn27evvmv+AmTub1z5vM2e7Kkzn0YNM7GL5oySGUrSSFY/LwbIGBD+IO6o2mDAQGKxo6ipqZF9EacOZdHn2k66Z31sVEi9x6EMCOOotTv6RwK7qQL2dEyZXblJip6Cg0HYhNkmoYciRYUbdGhZaM2UNOPlgulNUFHbvuxqz97tOeHKPq6qlETKQjKxdGvH9XyO8ztb+mBu2cz9uoTGxN1A5zMjf8CsnKrBdwKAAA=
|
73
|
+
http_version:
|
74
|
+
recorded_at: Tue, 07 Dec 2021 13:58:52 GMT
|
75
|
+
recorded_with: VCR 3.0.3
|
data/spec/metadata_spec.rb
CHANGED
@@ -0,0 +1,172 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
describe Briard::Metadata, vcr: true do
|
6
|
+
let(:input) { "https://github.com/citation-file-format/ruby-cff/blob/main/CITATION.cff" }
|
7
|
+
|
8
|
+
subject { Briard::Metadata.new(input: input) }
|
9
|
+
|
10
|
+
context "get cff metadata" do
|
11
|
+
it "ruby-cff" do
|
12
|
+
expect(subject.valid?).to be true
|
13
|
+
expect(subject.id).to eq("https://doi.org/10.5281/zenodo.1184077")
|
14
|
+
expect(subject.url).to eq("https://github.com/citation-file-format/ruby-cff")
|
15
|
+
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
16
|
+
expect(subject.creators).to eq([{"affiliation"=>[{"name"=>"The University of Manchester, UK"}], "familyName"=>"Haines", "givenName"=>"Robert", "name"=>"Haines, Robert", "nameIdentifiers"=>
|
17
|
+
[{"nameIdentifier"=>"https://orcid.org/0000-0002-9538-7919",
|
18
|
+
"nameIdentifierScheme"=>"ORCID",
|
19
|
+
"schemeUri"=>"https://orcid.org"}], "nameType"=>"Personal"}, {"name"=>"The Ruby Citation File Format Developers", "nameType"=>"Organizational"}])
|
20
|
+
expect(subject.titles).to eq([{"title"=>"Ruby CFF Library"}])
|
21
|
+
expect(subject.descriptions.first["description"]).to start_with("This library provides a Ruby interface to manipulate Citation File Format files")
|
22
|
+
expect(subject.subjects).to eq([{"subject"=>"ruby"},
|
23
|
+
{"subject"=>"credit"},
|
24
|
+
{"subject"=>"software citation"},
|
25
|
+
{"subject"=>"research software"},
|
26
|
+
{"subject"=>"software sustainability"},
|
27
|
+
{"subject"=>"metadata"},
|
28
|
+
{"subject"=>"citation file format"},
|
29
|
+
{"subject"=>"CFF"}])
|
30
|
+
expect(subject.version_info).to eq("0.9.0")
|
31
|
+
expect(subject.dates).to eq([{"date"=>"2021-08-18", "dateType"=>"Issued"}])
|
32
|
+
expect(subject.publication_year).to eq("2021")
|
33
|
+
expect(subject.publisher).to eq("GitHub")
|
34
|
+
expect(subject.rights_list).to eq([{"rights"=>"Apache License 2.0",
|
35
|
+
"rightsIdentifier"=>"apache-2.0",
|
36
|
+
"rightsIdentifierScheme"=>"SPDX",
|
37
|
+
"rightsUri"=>"http://www.apache.org/licenses/LICENSE-2.0",
|
38
|
+
"schemeUri"=>"https://spdx.org/licenses/"}])
|
39
|
+
expect(subject.related_identifiers).to eq([{"relatedIdentifier"=>"https://doi.org/10.5281/zenodo.1003149", "relatedIdentifierType"=>"DOI", "relationType"=>"References"}])
|
40
|
+
end
|
41
|
+
|
42
|
+
it "cff-converter-python" do
|
43
|
+
input = "https://github.com/citation-file-format/cff-converter-python/blob/main/CITATION.cff"
|
44
|
+
subject = Briard::Metadata.new(input: input)
|
45
|
+
expect(subject.id).to eq("https://doi.org/10.5281/zenodo.1162057")
|
46
|
+
expect(subject.url).to eq("https://github.com/citation-file-format/cff-converter-python")
|
47
|
+
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
48
|
+
expect(subject.creators).to eq([{"affiliation"=>[{"name"=>"Netherlands eScience Center"}],
|
49
|
+
"familyName"=>"Spaaks",
|
50
|
+
"givenName"=>"Jurriaan H.",
|
51
|
+
"name"=>"Spaaks, Jurriaan H.",
|
52
|
+
"nameIdentifiers"=>
|
53
|
+
[{"nameIdentifier"=>"https://orcid.org/0000-0002-7064-4069",
|
54
|
+
"nameIdentifierScheme"=>"ORCID",
|
55
|
+
"schemeUri"=>"https://orcid.org"}],
|
56
|
+
"nameType"=>"Personal"},
|
57
|
+
{"affiliation"=>[{"name"=>"Netherlands eScience Center"}],
|
58
|
+
"familyName"=>"Klaver",
|
59
|
+
"givenName"=>"Tom",
|
60
|
+
"name"=>"Klaver, Tom",
|
61
|
+
"nameType"=>"Personal"},
|
62
|
+
{"affiliation"=>[{"name"=>"Netherlands eScience Center"}],
|
63
|
+
"familyName"=>"Verhoeven",
|
64
|
+
"givenName"=>"Stefan",
|
65
|
+
"name"=>"Verhoeven, Stefan",
|
66
|
+
"nameIdentifiers"=>
|
67
|
+
[{"nameIdentifier"=>"https://orcid.org/0000-0002-5821-2060",
|
68
|
+
"nameIdentifierScheme"=>"ORCID",
|
69
|
+
"schemeUri"=>"https://orcid.org"}],
|
70
|
+
"nameType"=>"Personal"},
|
71
|
+
{"affiliation"=>[{"name"=>"Humboldt-Universit??t zu Berlin"}],
|
72
|
+
"familyName"=>"Druskat",
|
73
|
+
"givenName"=>"Stephan",
|
74
|
+
"name"=>"Druskat, Stephan",
|
75
|
+
"nameIdentifiers"=>
|
76
|
+
[{"nameIdentifier"=>"https://orcid.org/0000-0003-4925-7248",
|
77
|
+
"nameIdentifierScheme"=>"ORCID",
|
78
|
+
"schemeUri"=>"https://orcid.org"}],
|
79
|
+
"nameType"=>"Personal"},
|
80
|
+
{"affiliation"=>[{"name"=>"University of Oslo"}],
|
81
|
+
"familyName"=>"Leoncio",
|
82
|
+
"givenName"=>"Waldir",
|
83
|
+
"name"=>"Leoncio, Waldir",
|
84
|
+
"nameType"=>"Personal"}])
|
85
|
+
expect(subject.titles).to eq([{"title"=>"cffconvert"}])
|
86
|
+
expect(subject.descriptions.first["description"]).to start_with("Command line program to validate and convert CITATION.cff files")
|
87
|
+
expect(subject.subjects).to eq([{"subject"=>"bibliography"},
|
88
|
+
{"subject"=>"BibTeX"},
|
89
|
+
{"subject"=>"cff"},
|
90
|
+
{"subject"=>"citation"},
|
91
|
+
{"subject"=>"CITATION.cff"},
|
92
|
+
{"subject"=>"CodeMeta"},
|
93
|
+
{"subject"=>"EndNote"},
|
94
|
+
{"subject"=>"RIS"},
|
95
|
+
{"subject"=>"Citation File Format"}])
|
96
|
+
expect(subject.version_info).to eq("2.0.0")
|
97
|
+
expect(subject.dates).to eq([{"date"=>"2021-09-22", "dateType"=>"Issued"}])
|
98
|
+
expect(subject.publication_year).to eq("2021")
|
99
|
+
expect(subject.publisher).to eq("GitHub")
|
100
|
+
expect(subject.rights_list).to eq([{"rights"=>"Apache License 2.0",
|
101
|
+
"rightsIdentifier"=>"apache-2.0",
|
102
|
+
"rightsIdentifierScheme"=>"SPDX",
|
103
|
+
"rightsUri"=>"http://www.apache.org/licenses/LICENSE-2.0",
|
104
|
+
"schemeUri"=>"https://spdx.org/licenses/"}])
|
105
|
+
expect(subject.related_identifiers).to eq([{"relatedIdentifier"=>"https://doi.org/10.5281/zenodo.1310751", "relatedIdentifierType"=>"DOI", "relationType"=>"References"}])
|
106
|
+
end
|
107
|
+
|
108
|
+
it "ruby-cff" do
|
109
|
+
expect(subject.valid?).to be true
|
110
|
+
expect(subject.id).to eq("https://doi.org/10.5281/zenodo.1184077")
|
111
|
+
expect(subject.url).to eq("https://github.com/citation-file-format/ruby-cff")
|
112
|
+
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
113
|
+
expect(subject.creators).to eq([{"affiliation"=>[{"name"=>"The University of Manchester, UK"}], "familyName"=>"Haines", "givenName"=>"Robert", "name"=>"Haines, Robert", "nameIdentifiers"=>
|
114
|
+
[{"nameIdentifier"=>"https://orcid.org/0000-0002-9538-7919",
|
115
|
+
"nameIdentifierScheme"=>"ORCID",
|
116
|
+
"schemeUri"=>"https://orcid.org"}], "nameType"=>"Personal"}, {"name"=>"The Ruby Citation File Format Developers", "nameType"=>"Organizational"}])
|
117
|
+
expect(subject.titles).to eq([{"title"=>"Ruby CFF Library"}])
|
118
|
+
expect(subject.descriptions.first["description"]).to start_with("This library provides a Ruby interface to manipulate Citation File Format files")
|
119
|
+
expect(subject.subjects).to eq([{"subject"=>"ruby"},
|
120
|
+
{"subject"=>"credit"},
|
121
|
+
{"subject"=>"software citation"},
|
122
|
+
{"subject"=>"research software"},
|
123
|
+
{"subject"=>"software sustainability"},
|
124
|
+
{"subject"=>"metadata"},
|
125
|
+
{"subject"=>"citation file format"},
|
126
|
+
{"subject"=>"CFF"}])
|
127
|
+
expect(subject.version_info).to eq("0.9.0")
|
128
|
+
expect(subject.dates).to eq([{"date"=>"2021-08-18", "dateType"=>"Issued"}])
|
129
|
+
expect(subject.publication_year).to eq("2021")
|
130
|
+
expect(subject.publisher).to eq("GitHub")
|
131
|
+
expect(subject.rights_list).to eq([{"rights"=>"Apache License 2.0",
|
132
|
+
"rightsIdentifier"=>"apache-2.0",
|
133
|
+
"rightsIdentifierScheme"=>"SPDX",
|
134
|
+
"rightsUri"=>"http://www.apache.org/licenses/LICENSE-2.0",
|
135
|
+
"schemeUri"=>"https://spdx.org/licenses/"}])
|
136
|
+
expect(subject.related_identifiers).to eq([{"relatedIdentifier"=>"https://doi.org/10.5281/zenodo.1003149", "relatedIdentifierType"=>"DOI", "relationType"=>"References"}])
|
137
|
+
end
|
138
|
+
|
139
|
+
it "ruby-cff repository url" do
|
140
|
+
input = "https://github.com/citation-file-format/ruby-cff"
|
141
|
+
subject = Briard::Metadata.new(input: input)
|
142
|
+
expect(subject.valid?).to be true
|
143
|
+
expect(subject.id).to eq("https://doi.org/10.5281/zenodo.1184077")
|
144
|
+
expect(subject.url).to eq("https://github.com/citation-file-format/ruby-cff")
|
145
|
+
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
146
|
+
expect(subject.creators).to eq([{"affiliation"=>[{"name"=>"The University of Manchester, UK"}], "familyName"=>"Haines", "givenName"=>"Robert", "name"=>"Haines, Robert", "nameIdentifiers"=>
|
147
|
+
[{"nameIdentifier"=>"https://orcid.org/0000-0002-9538-7919",
|
148
|
+
"nameIdentifierScheme"=>"ORCID",
|
149
|
+
"schemeUri"=>"https://orcid.org"}], "nameType"=>"Personal"}, {"name"=>"The Ruby Citation File Format Developers", "nameType"=>"Organizational"}])
|
150
|
+
expect(subject.titles).to eq([{"title"=>"Ruby CFF Library"}])
|
151
|
+
expect(subject.descriptions.first["description"]).to start_with("This library provides a Ruby interface to manipulate Citation File Format files")
|
152
|
+
expect(subject.subjects).to eq([{"subject"=>"ruby"},
|
153
|
+
{"subject"=>"credit"},
|
154
|
+
{"subject"=>"software citation"},
|
155
|
+
{"subject"=>"research software"},
|
156
|
+
{"subject"=>"software sustainability"},
|
157
|
+
{"subject"=>"metadata"},
|
158
|
+
{"subject"=>"citation file format"},
|
159
|
+
{"subject"=>"CFF"}])
|
160
|
+
expect(subject.version_info).to eq("0.9.0")
|
161
|
+
expect(subject.dates).to eq([{"date"=>"2021-08-18", "dateType"=>"Issued"}])
|
162
|
+
expect(subject.publication_year).to eq("2021")
|
163
|
+
expect(subject.publisher).to eq("GitHub")
|
164
|
+
expect(subject.rights_list).to eq([{"rights"=>"Apache License 2.0",
|
165
|
+
"rightsIdentifier"=>"apache-2.0",
|
166
|
+
"rightsIdentifierScheme"=>"SPDX",
|
167
|
+
"rightsUri"=>"http://www.apache.org/licenses/LICENSE-2.0",
|
168
|
+
"schemeUri"=>"https://spdx.org/licenses/"}])
|
169
|
+
expect(subject.related_identifiers).to eq([{"relatedIdentifier"=>"https://doi.org/10.5281/zenodo.1003149", "relatedIdentifierType"=>"DOI", "relationType"=>"References"}])
|
170
|
+
end
|
171
|
+
end
|
172
|
+
end
|
data/spec/utils_spec.rb
CHANGED
@@ -507,12 +507,24 @@ describe Briard::Metadata, vcr: true do
|
|
507
507
|
expect(response).to eq(:owner=>"datacite", :repo=>"metadata-reports", :release=>"master", :path=>"software/codemeta.json")
|
508
508
|
end
|
509
509
|
|
510
|
+
it "github_from_url cff file" do
|
511
|
+
url = "https://github.com/citation-file-format/ruby-cff/blob/main/CITATION.cff"
|
512
|
+
response = subject.github_from_url(url)
|
513
|
+
expect(response).to eq(:owner=>"citation-file-format", :path=>"CITATION.cff", :release=>"main", :repo=>"ruby-cff")
|
514
|
+
end
|
515
|
+
|
510
516
|
it "github_as_codemeta_url" do
|
511
517
|
url = "https://github.com/datacite/bolognese"
|
512
518
|
response = subject.github_as_codemeta_url(url)
|
513
519
|
expect(response).to eq("https://raw.githubusercontent.com/datacite/bolognese/master/codemeta.json")
|
514
520
|
end
|
515
521
|
|
522
|
+
it "github_as_cff_url" do
|
523
|
+
url = "https://github.com/citation-file-format/ruby-cff"
|
524
|
+
response = subject.github_as_cff_url(url)
|
525
|
+
expect(response).to eq("https://raw.githubusercontent.com/citation-file-format/ruby-cff/main/CITATION.cff")
|
526
|
+
end
|
527
|
+
|
516
528
|
it "github_from_url file" do
|
517
529
|
url = "https://github.com/datacite/metadata-reports/blob/master/software/codemeta.json"
|
518
530
|
response = subject.github_as_codemeta_url(url)
|
@@ -0,0 +1,78 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
describe Briard::Metadata, vcr: true do
|
6
|
+
context "write metadata as cff" do
|
7
|
+
it "SoftwareSourceCode Zenodo" do
|
8
|
+
input = "https://doi.org/10.5281/zenodo.10164"
|
9
|
+
subject = Briard::Metadata.new(input: input, from: "datacite")
|
10
|
+
expect(subject.valid?).to be true
|
11
|
+
json = Psych.safe_load(subject.cff, permitted_classes: [Date])
|
12
|
+
expect(json["doi"]).to eq("https://doi.org/10.5281/zenodo.10164")
|
13
|
+
expect(json["authors"]).to eq([{"affiliation"=>"Juelich Supercomputing Centre, Jülich, Germany",
|
14
|
+
"family-names"=>"Klatt",
|
15
|
+
"given-names"=>"Torbjörn"},
|
16
|
+
{"affiliation"=>"Juelich Supercomputing Centre, Jülich, Germany",
|
17
|
+
"family-names"=>"Moser",
|
18
|
+
"given-names"=>"Dieter"},
|
19
|
+
{"affiliation"=>"Juelich Supercomputing Centre, Jülich, Germany",
|
20
|
+
"family-names"=>"Speck",
|
21
|
+
"given-names"=>"Robert"}])
|
22
|
+
expect(json["title"]).to eq("Pypint -- Python Framework For Parallel-In-Time Methods")
|
23
|
+
expect(json["abstract"]).to eq("<em>PyPinT</em> is a framework for Parallel-in-Time integration routines. The main purpose of <em>PyPinT</em> is to provide a framework for educational use and prototyping new parallel-in-time algorithms. As well it will aid in developing a high-performance C++ implementation for massively parallel computers providing the benefits of parallel-in-time routines to a zoo of time integrators in various applications.")
|
24
|
+
expect(json["date-released"]).to eq("2014-05-27")
|
25
|
+
expect(json["repository-code"]).to eq("https://zenodo.org/record/10164")
|
26
|
+
expect(json["keywords"]).to eq(["Parallel-in-Time Integration", "Spectral Deferred Corrections", "Multigrid", "Multi-Level Spectral Deferred Corrections", "Python Framework"])
|
27
|
+
expect(json["license"]).to be_nil
|
28
|
+
expect(json["references"]).to eq("identifiers"=>[{"type"=>"url", "value"=>"https://github.com/Parallel-in-Time/PyPinT/tree/release-v0.0.4"}])
|
29
|
+
end
|
30
|
+
|
31
|
+
it "SoftwareSourceCode also Zenodo" do
|
32
|
+
input = "https://doi.org/10.5281/zenodo.15497"
|
33
|
+
subject = Briard::Metadata.new(input: input, from: "datacite")
|
34
|
+
expect(subject.valid?).to be true
|
35
|
+
json = Psych.safe_load(subject.cff, permitted_classes: [Date])
|
36
|
+
expect(json["doi"]).to eq("https://doi.org/10.5281/zenodo.15497")
|
37
|
+
expect(json["authors"]).to eq([{"affiliation"=>
|
38
|
+
"Instituut voor Kern- en Stralingsfysica, KU Leuven, 3001 Leuven, België",
|
39
|
+
"family-names"=>"Gins",
|
40
|
+
"given-names"=>"Wouter"},
|
41
|
+
{"affiliation"=>
|
42
|
+
"Instituut voor Kern- en Stralingsfysica, KU Leuven, 3001 Leuven, België",
|
43
|
+
"family-names"=>"de Groote",
|
44
|
+
"given-names"=>"Ruben"},
|
45
|
+
{"affiliation"=>
|
46
|
+
"Instituut voor Kern- en Stralingsfysica, KU Leuven, 3001 Leuven, België",
|
47
|
+
"family-names"=>"Heylen",
|
48
|
+
"given-names"=>"Hanne"}])
|
49
|
+
expect(json["title"]).to eq("Satlas: Simulation And Analysis Toolbox For Laser Spectroscopy And Nmr Experiments")
|
50
|
+
expect(json["abstract"]).to eq("Initial release of the satlas Python package for the analysis and simulation for laser spectroscopy experiments. For the documentation, see http://woutergins.github.io/satlas/")
|
51
|
+
expect(json["date-released"]).to eq("2015-02-18")
|
52
|
+
expect(json["repository-code"]).to eq("https://zenodo.org/record/15497")
|
53
|
+
expect(json["keywords"]).to be_nil
|
54
|
+
expect(json["license"]).to be_nil
|
55
|
+
expect(json["references"]).to eq("identifiers"=>[{"type"=>"url", "value"=>"https://github.com/woutergins/satlas/tree/v1.0.0"}])
|
56
|
+
end
|
57
|
+
|
58
|
+
it "ruby-cff" do
|
59
|
+
input = "https://github.com/citation-file-format/ruby-cff"
|
60
|
+
subject = Briard::Metadata.new(input: input)
|
61
|
+
expect(subject.valid?).to be true
|
62
|
+
json = Psych.safe_load(subject.cff, permitted_classes: [Date])
|
63
|
+
expect(json["doi"]).to eq("https://doi.org/10.5281/zenodo.1184077")
|
64
|
+
expect(json["authors"]).to eq([{"affiliation"=>"The University of Manchester, UK",
|
65
|
+
"family-names"=>"Haines",
|
66
|
+
"given-names"=>"Robert",
|
67
|
+
"orcid"=>"https://orcid.org/0000-0002-9538-7919"},
|
68
|
+
{"name"=>"The Ruby Citation File Format Developers"}])
|
69
|
+
expect(json["title"]).to eq("Ruby CFF Library")
|
70
|
+
expect(json["abstract"]).to eq("This library provides a Ruby interface to manipulate Citation File Format files")
|
71
|
+
expect(json["date-released"]).to eq("2021-08-18")
|
72
|
+
expect(json["repository-code"]).to eq("https://github.com/citation-file-format/ruby-cff")
|
73
|
+
expect(json["keywords"]).to eq(["ruby", "credit", "software citation", "research software", "software sustainability", "metadata", "citation file format", "CFF"])
|
74
|
+
expect(json["license"]).to eq("apache-2.0")
|
75
|
+
expect(json["references"]).to eq("identifiers"=>[{"type"=>"doi", "value"=>"10.5281/zenodo.1003149"}])
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: briard
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Martin Fenner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-12-
|
11
|
+
date: 2021-12-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: maremma
|
@@ -599,8 +599,10 @@ files:
|
|
599
599
|
- ".github/workflows/release.yml"
|
600
600
|
- ".gitignore"
|
601
601
|
- ".rubocop.yml"
|
602
|
+
- ".tool-versions"
|
602
603
|
- CHANGELOG.md
|
603
604
|
- CITATION
|
605
|
+
- CITATION.cff
|
604
606
|
- Gemfile
|
605
607
|
- Gemfile.lock
|
606
608
|
- LICENSE.md
|
@@ -620,6 +622,7 @@ files:
|
|
620
622
|
- lib/briard/metadata_utils.rb
|
621
623
|
- lib/briard/pubmed.rb
|
622
624
|
- lib/briard/readers/bibtex_reader.rb
|
625
|
+
- lib/briard/readers/cff_reader.rb
|
623
626
|
- lib/briard/readers/citeproc_reader.rb
|
624
627
|
- lib/briard/readers/codemeta_reader.rb
|
625
628
|
- lib/briard/readers/crosscite_reader.rb
|
@@ -634,6 +637,7 @@ files:
|
|
634
637
|
- lib/briard/version.rb
|
635
638
|
- lib/briard/whitelist_scrubber.rb
|
636
639
|
- lib/briard/writers/bibtex_writer.rb
|
640
|
+
- lib/briard/writers/cff_writer.rb
|
637
641
|
- lib/briard/writers/citation_writer.rb
|
638
642
|
- lib/briard/writers/citeproc_writer.rb
|
639
643
|
- lib/briard/writers/codemeta_writer.rb
|
@@ -800,6 +804,7 @@ files:
|
|
800
804
|
- spec/datacite_utils_spec.rb
|
801
805
|
- spec/doi_utils_spec.rb
|
802
806
|
- spec/find_from_format_spec.rb
|
807
|
+
- spec/fixtures/CITATION.cff
|
803
808
|
- spec/fixtures/aida.json
|
804
809
|
- spec/fixtures/cgimp_package.json
|
805
810
|
- spec/fixtures/cit_package.json
|
@@ -960,6 +965,10 @@ files:
|
|
960
965
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org/with_id.yml
|
961
966
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org_creators/with_affiliation.yml
|
962
967
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org_creators/without_affiliation.yml
|
968
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/cff-converter-python.yml
|
969
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/pidgraph-notebooks-python.yml
|
970
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/ruby-cff.yml
|
971
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/ruby-cff_repository_url.yml
|
963
972
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/maremma.yml
|
964
973
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/metadata_reports.yml
|
965
974
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml
|
@@ -1075,8 +1084,10 @@ files:
|
|
1075
1084
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_and_pages.yml
|
1076
1085
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_volume_and_pages.yml
|
1077
1086
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_volume_issue_and_pages.yml
|
1087
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_as_cff_url.yml
|
1078
1088
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_as_codemeta_url.yml
|
1079
1089
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url.yml
|
1090
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url_cff_file.yml
|
1080
1091
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url_file.yml
|
1081
1092
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/handle_input/DOI_RA_not_Crossref_or_DataCite.yml
|
1082
1093
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/handle_input/unknown_DOI_prefix.yml
|
@@ -1201,6 +1212,10 @@ files:
|
|
1201
1212
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/text.yml
|
1202
1213
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/with_data_citation.yml
|
1203
1214
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/with_pages.yml
|
1215
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_DataCite.yml
|
1216
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_Zenodo.yml
|
1217
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_also_Zenodo.yml
|
1218
|
+
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/ruby-cff.yml
|
1204
1219
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Dataset.yml
|
1205
1220
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Journal_article.yml
|
1206
1221
|
- spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Journal_article_vancouver_style.yml
|
@@ -1297,6 +1312,7 @@ files:
|
|
1297
1312
|
- spec/fixtures/vivli.xml
|
1298
1313
|
- spec/metadata_spec.rb
|
1299
1314
|
- spec/readers/bibtex_reader_spec.rb
|
1315
|
+
- spec/readers/cff_reader_spec.rb
|
1300
1316
|
- spec/readers/citeproc_reader_spec.rb
|
1301
1317
|
- spec/readers/codemeta_reader_spec.rb
|
1302
1318
|
- spec/readers/crosscite_reader_spec.rb
|
@@ -1309,6 +1325,7 @@ files:
|
|
1309
1325
|
- spec/spec_helper.rb
|
1310
1326
|
- spec/utils_spec.rb
|
1311
1327
|
- spec/writers/bibtex_writer_spec.rb
|
1328
|
+
- spec/writers/cff_writer_spec.rb
|
1312
1329
|
- spec/writers/citation_writer_spec.rb
|
1313
1330
|
- spec/writers/citeproc_writer_spec.rb
|
1314
1331
|
- spec/writers/codemeta_writer_spec.rb
|