briard 2.0.2 → 2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f3a11b4c768c334787a48a911e0986694037cc1bbb90148c979e22a8105924f0
4
- data.tar.gz: 68a1c419cef581e8b40a6a814520bd8706d70973c8db5bfe3ce55dd3e8f007c5
3
+ metadata.gz: f0eaabf0817983f43847aef742367e1a768c3887931f69d093e7fd679523c6c8
4
+ data.tar.gz: 8179d2fc9aae83af0df2f2b0033752d348184d55548168e32ec013c7db57be0f
5
5
  SHA512:
6
- metadata.gz: 2ef947d376c800ed845659b1c35802f02689421fcb6ac9ba7175951340039ebc2716bf05c38eb955a6f71175ae86da8acf09bad7d66d3a74f93c44ac0eea932b
7
- data.tar.gz: 94cca28a5b7ee75c8eb1972efbf5da4102ec5a9ec5391a046290a7276314f409f83666f7e8031d922935a35035f97866a1eb499ed0a488a24dc6a83c2043d257
6
+ metadata.gz: bdb837a28824c3a70d683a1d56bfd84a40b0334b742cd591020c64fa25cc45a64f429dfafe0309c1f0e6bf0387082e04308b16b9b6c93153c168d787e6ced763
7
+ data.tar.gz: 4a6e6d945558ca4b70a57d667e97c0994c1b25ea6f546f9f4caf5914052adaef41f3fc028757eb5cc647bc19f6d94ceedb951bdce75547853c8f02244781c27c
data/.tool-versions ADDED
@@ -0,0 +1 @@
1
+ ruby 2.7.5
data/CHANGELOG.md CHANGED
@@ -1 +1,17 @@
1
1
  # Changelog
2
+
3
+ ## [2.0.2](https://github.com/front-matter/briard/tree/2.0.2) (2021-12-06)
4
+
5
+ [Full Changelog](https://github.com/front-matter/briard/compare/2.0.1...2.0.2)
6
+
7
+ ## [2.0.1](https://github.com/front-matter/briard/tree/2.0.1) (2021-12-06)
8
+
9
+ [Full Changelog](https://github.com/front-matter/briard/compare/2.0...2.0.1)
10
+
11
+ ## [2.0](https://github.com/front-matter/briard/tree/2.0) (2021-12-06)
12
+
13
+ [Full Changelog](https://github.com/front-matter/briard/compare/d1adb0353c9b3abd0b8f64fed5e0970cf03b537c...2.0)
14
+
15
+
16
+
17
+ \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- briard (2.0.2)
4
+ briard (2.1)
5
5
  activesupport (>= 4.2.5)
6
6
  benchmark_methods (~> 0.7)
7
7
  bibtex-ruby (>= 5.1.0)
data/README.md CHANGED
@@ -83,6 +83,13 @@ Briard reads and/or writes these metadata formats:
83
83
  <td>Yes</td>
84
84
  <td>Yes</td>
85
85
  </tr>
86
+ <tr>
87
+ <td><a href='https://citation-file-format.github.io/'>CFF</a></td>
88
+ <td>citation file format (cff)</td>
89
+ <td>application/vnd.cff+yaml</td>
90
+ <td>Yes</td>
91
+ <td>No</td>
92
+ </tr>
86
93
  <tr>
87
94
  <td><a href='https://jats.nlm.nih.gov/'>JATS</a></td>
88
95
  <td>jats</td>
@@ -43,7 +43,7 @@ module Briard
43
43
  elsif options[:input].present? && File.exist?(options[:input])
44
44
  filename = File.basename(options[:input])
45
45
  ext = File.extname(options[:input])
46
- if %w(.bib .ris .xml .json).include?(ext)
46
+ if %w(.bib .ris .xml .json .cff).include?(ext)
47
47
  hsh = {
48
48
  "url" => options[:url],
49
49
  "state" => options[:state],
@@ -83,7 +83,7 @@ module Briard
83
83
  end
84
84
 
85
85
  # make sure input is encoded as utf8
86
- string = string.force_encoding("UTF-8") if string.present?
86
+ string = string.force_encoding("UTF-8") if string.present? && string.is_a?(String)
87
87
  @string = string
88
88
 
89
89
  # input options for citation formatting
@@ -8,6 +8,7 @@ require_relative 'utils'
8
8
 
9
9
  require_relative 'readers/bibtex_reader'
10
10
  require_relative 'readers/citeproc_reader'
11
+ require_relative 'readers/cff_reader'
11
12
  require_relative 'readers/codemeta_reader'
12
13
  require_relative 'readers/crosscite_reader'
13
14
  require_relative 'readers/crossref_reader'
@@ -20,6 +21,7 @@ require_relative 'readers/schema_org_reader'
20
21
  require_relative 'writers/bibtex_writer'
21
22
  require_relative 'writers/citation_writer'
22
23
  require_relative 'writers/citeproc_writer'
24
+ # require_relative 'writers/cff_writer'
23
25
  require_relative 'writers/codemeta_writer'
24
26
  require_relative 'writers/crosscite_writer'
25
27
  require_relative 'writers/crossref_writer'
@@ -43,6 +45,7 @@ module Briard
43
45
 
44
46
  include Briard::Readers::BibtexReader
45
47
  include Briard::Readers::CiteprocReader
48
+ include Briard::Readers::CffReader
46
49
  include Briard::Readers::CodemetaReader
47
50
  include Briard::Readers::CrossciteReader
48
51
  include Briard::Readers::CrossrefReader
@@ -55,6 +58,7 @@ module Briard
55
58
  include Briard::Writers::BibtexWriter
56
59
  include Briard::Writers::CitationWriter
57
60
  include Briard::Writers::CiteprocWriter
61
+ # include Briard::Writers::CffWriter
58
62
  include Briard::Writers::CodemetaWriter
59
63
  include Briard::Writers::CrossciteWriter
60
64
  include Briard::Writers::CrossrefWriter
@@ -0,0 +1,107 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Briard
4
+ module Readers
5
+ module CffReader
6
+ def get_cff(id: nil, **options)
7
+ return { "string" => nil, "state" => "not_found" } unless id.present?
8
+ id = normalize_id(id)
9
+ response = Maremma.get(github_as_cff_url(id), accept: "json", raw: true)
10
+ data = response.body.fetch("data", nil)
11
+ # Dates are parsed to date object, need to convert to iso8601 later
12
+ string = Psych.safe_load(data, permitted_classes: [Date])
13
+ { "string" => string }
14
+ end
15
+
16
+ def read_cff(string: nil, **options)
17
+ read_options = ActiveSupport::HashWithIndifferentAccess.new(options.except(:doi, :id, :url, :sandbox, :validate, :ra))
18
+ meta = string.is_a?(String) ? Psych.safe_load(string, permitted_classes: [Date]) : string
19
+
20
+ identifiers = Array.wrap(meta.fetch("identifiers", nil)).map do |r|
21
+ r = normalize_id(r) if r.is_a?(String)
22
+ if r.is_a?(String) && !r.start_with?("https://doi.org")
23
+ { "identifierType" => "URL", "identifier" => r }
24
+ elsif r.is_a?(Hash)
25
+ { "identifierType" => get_identifier_type(r["propertyID"]), "identifier" => r["value"] }
26
+ end
27
+ end.compact.uniq
28
+
29
+ id = normalize_id(options[:doi] || meta.fetch("doi", nil) || Array.wrap(meta.fetch("identifiers", nil)).find { |i| i["type"] == "doi"}.fetch("value", nil))
30
+ url = normalize_id(meta.fetch("repository-code", nil))
31
+ creators = cff_creators(Array.wrap(meta.fetch("authors", nil)))
32
+
33
+ dates = []
34
+ dates << { "date" => meta.fetch("date-released", nil).iso8601, "dateType" => "Issued" } if meta.fetch("date-released", nil).present?
35
+ publication_year = meta.fetch("date-released").iso8601[0..3] if meta.fetch("date-released", nil).present?
36
+ publisher = url.to_s.starts_with?("https://github.com") ? "GitHub" : nil
37
+ state = meta.present? || read_options.present? ? "findable" : "not_found"
38
+ types = {
39
+ "resourceTypeGeneral" => "Software",
40
+ "resourceType" => nil,
41
+ "schemaOrg" => "SoftwareSourceCode",
42
+ "citeproc" => "article-journal",
43
+ "bibtex" => "misc",
44
+ "ris" => "COMP"
45
+ }.compact
46
+ subjects = Array.wrap(meta.fetch("keywords", nil)).reduce([]) do |sum, subject|
47
+ sum += name_to_fos(subject)
48
+
49
+ sum
50
+ end
51
+
52
+ titles = meta.fetch("title", nil).present? ? [{ "title" => meta.fetch("title", nil) }] : []
53
+ rights_list = meta.fetch("license", nil).present? ? [hsh_to_spdx("rightsIdentifier" => meta.fetch("license"))] : nil
54
+
55
+ { "id" => id,
56
+ "types" => types,
57
+ "identifiers" => identifiers,
58
+ "doi" => doi_from_url(id),
59
+ "url" => url,
60
+ "titles" => titles,
61
+ "creators" => creators,
62
+ "publisher" => publisher,
63
+ "dates" => dates,
64
+ "publication_year" => publication_year,
65
+ "descriptions" => meta.fetch("abstract", nil).present? ? [{ "description" => sanitize(meta.fetch("abstract")), "descriptionType" => "Abstract" }] : nil,
66
+ "rights_list" => rights_list,
67
+ "version_info" => meta.fetch("version", nil),
68
+ "subjects" => subjects,
69
+ "state" => state
70
+ }.merge(read_options)
71
+ end
72
+
73
+ def cff_creators(creators)
74
+ Array.wrap(creators).map do |a|
75
+ name_identifiers = normalize_orcid(parse_attributes(a["orcid"])).present? ? [{ "nameIdentifier" => normalize_orcid(parse_attributes(a["orcid"])), "nameIdentifierScheme" => "ORCID", "schemeUri"=>"https://orcid.org" }] : nil
76
+ if a["given-names"].present? || name_identifiers.present?
77
+ given_name = parse_attributes(a["given-names"])
78
+ family_name = parse_attributes(a["family-names"])
79
+ affiliation = Array.wrap(a["affiliation"]).map do |a|
80
+ if a.is_a?(Hash)
81
+ a
82
+ elsif a.is_a?(Hash) && a.key?("__content__") && a["__content__"].strip.blank?
83
+ nil
84
+ elsif a.is_a?(Hash) && a.key?("__content__")
85
+ { "name" => a["__content__"] }
86
+ elsif a.strip.blank?
87
+ nil
88
+ elsif a.is_a?(String)
89
+ { "name" => a }
90
+ end
91
+ end.compact
92
+
93
+ { "nameType" => "Personal",
94
+ "nameIdentifiers" => name_identifiers,
95
+ "name" => [family_name, given_name].compact.join(", "),
96
+ "givenName" => given_name,
97
+ "familyName" => family_name,
98
+ "affiliation" => affiliation.presence }.compact
99
+ else
100
+ { "nameType" => "Organizational",
101
+ "name" => a["name"] || a["__content__"] }
102
+ end
103
+ end
104
+ end
105
+ end
106
+ end
107
+ end
@@ -264,12 +264,12 @@ module Briard
264
264
  given_name = parse_attributes(a["given_name"])
265
265
  family_name = parse_attributes(a["surname"])
266
266
  affiliation = Array.wrap(a["affiliation"]).map do |a|
267
- if a.is_a?(Hash) && a.key?("__content__") && a["__content__"].strip.blank?
267
+ if a.is_a?(Hash)
268
+ a
269
+ elsif a.is_a?(Hash) && a.key?("__content__") && a["__content__"].strip.blank?
268
270
  nil
269
271
  elsif a.is_a?(Hash) && a.key?("__content__")
270
272
  { "name" => a["__content__"] }
271
- elsif a.is_a?(Hash)
272
- a
273
273
  elsif a.strip.blank?
274
274
  nil
275
275
  elsif a.is_a?(String)
data/lib/briard/utils.rb CHANGED
@@ -506,7 +506,9 @@ module Briard
506
506
  "orcid"
507
507
  elsif /\A(http|https):\/(\/)?github\.com\/(.+)\/package.json\z/.match(id)
508
508
  "npm"
509
- elsif /\A(http|https):\/(\/)?github\.com\/(.+)\z/.match(id)
509
+ elsif /\A(http|https):\/(\/)?github\.com\/(.+)\/CITATION.cff\z/.match(id)
510
+ "cff"
511
+ elsif /\A(http|https):\/(\/)?github\.com\/(.+)\/codemeta.json\z/.match(id)
510
512
  "codemeta"
511
513
  else
512
514
  "schema_org"
@@ -516,6 +518,8 @@ module Briard
516
518
  def find_from_format_by_filename(filename)
517
519
  if filename == "package.json"
518
520
  "npm"
521
+ elsif filename == "CITATION.cff"
522
+ "cff"
519
523
  end
520
524
  end
521
525
 
@@ -528,6 +532,8 @@ module Briard
528
532
  "crossref"
529
533
  elsif options[:ext] == ".xml" && Nokogiri::XML(string, nil, 'UTF-8', &:noblanks).collect_namespaces.find { |k, v| v.start_with?("http://datacite.org/schema/kernel") }
530
534
  "datacite"
535
+ elsif options[:ext] == ".cff"
536
+ "cff"
531
537
  elsif options[:ext] == ".json" && Maremma.from_json(string).to_h.dig("@context").to_s.start_with?("http://schema.org", "https://schema.org")
532
538
  "schema_org"
533
539
  elsif options[:ext] == ".json" && Maremma.from_json(string).to_h.dig("@context") == ("https://raw.githubusercontent.com/codemeta/codemeta/master/codemeta.jsonld")
@@ -558,9 +564,13 @@ module Briard
558
564
  "citeproc"
559
565
  elsif string.start_with?("TY - ")
560
566
  "ris"
567
+ elsif YAML.load(string).to_h.fetch("cff-version", nil).present?
568
+ "cff"
561
569
  elsif BibTeX.parse(string).first
562
570
  "bibtex"
563
571
  end
572
+ rescue Psych::SyntaxError => error
573
+ "bibtex"
564
574
  rescue BibTeX::ParseError => error
565
575
  nil
566
576
  end
@@ -1079,6 +1089,16 @@ module Briard
1079
1089
  end
1080
1090
  end
1081
1091
 
1092
+ def github_as_cff_url(url)
1093
+ github_hash = github_from_url(url)
1094
+
1095
+ if github_hash[:path].to_s.end_with?("CITATION.cff")
1096
+ "https://raw.githubusercontent.com/#{github_hash[:owner]}/#{github_hash[:repo]}/#{github_hash[:release]}/#{github_hash[:path]}"
1097
+ elsif github_hash[:owner].present?
1098
+ "https://raw.githubusercontent.com/#{github_hash[:owner]}/#{github_hash[:repo]}/main/CITATION.cff"
1099
+ end
1100
+ end
1101
+
1082
1102
  def get_date_parts(iso8601_time)
1083
1103
  return { 'date-parts' => [[]] } if iso8601_time.nil?
1084
1104
 
@@ -1,3 +1,3 @@
1
1
  module Briard
2
- VERSION = "2.0.2"
2
+ VERSION = "2.1"
3
3
  end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ # module Briard
4
+ # module Writers
5
+ # module CffWriter
6
+ # def cff
7
+ # return nil unless valid? || show_errors
8
+
9
+ # hsh = {
10
+ # "@context" => id.present? ? "https://raw.githubusercontent.com/codemeta/codemeta/master/codemeta.jsonld" : nil,
11
+ # "@type" => types.present? ? types["schemaOrg"] : nil,
12
+ # "@id" => normalize_doi(doi),
13
+ # "identifier" => to_schema_org_identifiers(identifiers),
14
+ # "codeRepository" => url,
15
+ # "name" => parse_attributes(titles, content: "title", first: true),
16
+ # "authors" => creators,
17
+ # "description" => parse_attributes(descriptions, content: "description", first: true),
18
+ # "version" => version_info,
19
+ # "tags" => subjects.present? ? Array.wrap(subjects).map { |k| parse_attributes(k, content: "subject", first: true) } : nil,
20
+ # "datePublished" => get_date(dates, "Issued") || publication_year,
21
+ # "dateModified" => get_date(dates, "Updated"),
22
+ # "publisher" => publisher,
23
+ # "license" => Array.wrap(rights_list).map { |l| l["rightsUri"] }.compact.unwrap,
24
+ # }.compact
25
+ # JSON.pretty_generate hsh.presence
26
+ # end
27
+ # end
28
+ # end
29
+ # end
@@ -39,8 +39,13 @@ describe Briard::CLI do
39
39
  expect(subject.find_from_format_by_id(id)).to eq("op")
40
40
  end
41
41
 
42
+ it "cff" do
43
+ id = "https://github.com/citation-file-format/ruby-cff/blob/main/CITATION.cff"
44
+ expect(subject.find_from_format_by_id(id)).to eq("cff")
45
+ end
46
+
42
47
  it "codemeta" do
43
- id = "https://github.com/datacite/maremma"
48
+ id = "https://github.com/datacite/maremma/blob/master/codemeta.json"
44
49
  expect(subject.find_from_format_by_id(id)).to eq("codemeta")
45
50
  end
46
51
 
@@ -64,6 +69,11 @@ describe Briard::CLI do
64
69
  filename = "package.json"
65
70
  expect(subject.find_from_format_by_filename(filename)).to eq("npm")
66
71
  end
72
+
73
+ it "cff" do
74
+ filename = "CITATION.cff"
75
+ expect(subject.find_from_format_by_filename(filename)).to eq("cff")
76
+ end
67
77
  end
68
78
 
69
79
  context "find_from_format_by_string" do
@@ -91,6 +101,11 @@ describe Briard::CLI do
91
101
  expect(subject.find_from_format_by_string(string)).to eq("codemeta")
92
102
  end
93
103
 
104
+ it "cff" do
105
+ string = IO.read(fixture_path + 'CITATION.cff').strip
106
+ expect(subject.find_from_format_by_string(string)).to eq("cff")
107
+ end
108
+
94
109
  it "schema_org" do
95
110
  string = IO.read(fixture_path + 'schema_org_topmed.json').strip
96
111
  expect(subject.find_from_format_by_string(string)).to eq("schema_org")
@@ -0,0 +1,83 @@
1
+ # This CITATION.cff file was created by ruby-cff (v 0.9.0).
2
+ # Gem: https://rubygems.org/gems/cff
3
+ # CFF: https://citation-file-format.github.io/
4
+
5
+ cff-version: 1.2.0
6
+ message: If you use ruby-cff in your work, please cite it using the following metadata
7
+ title: Ruby CFF Library
8
+ abstract: This library provides a Ruby interface to manipulate Citation File Format files
9
+ authors:
10
+ - family-names: Haines
11
+ given-names: Robert
12
+ orcid: https://orcid.org/0000-0002-9538-7919
13
+ affiliation: The University of Manchester, UK
14
+ - name: The Ruby Citation File Format Developers
15
+ keywords:
16
+ - ruby
17
+ - credit
18
+ - software citation
19
+ - research software
20
+ - software sustainability
21
+ - metadata
22
+ - citation file format
23
+ - CFF
24
+ version: 0.9.0
25
+ doi: 10.5281/zenodo.1184077
26
+ date-released: 2021-08-18
27
+ license: Apache-2.0
28
+ repository-artifact: https://rubygems.org/gems/cff
29
+ repository-code: https://github.com/citation-file-format/ruby-cff
30
+ references:
31
+ - type: software
32
+ title: Citation File Format
33
+ authors:
34
+ - family-names: Druskat
35
+ given-names: Stephan
36
+ orcid: https://orcid.org/0000-0003-4925-7248
37
+ - family-names: Spaaks
38
+ given-names: Jurriaan H.
39
+ orcid: https://orcid.org/0000-0002-7064-4069
40
+ - family-names: Chue Hong
41
+ given-names: Neil
42
+ orcid: https://orcid.org/0000-0002-8876-7606
43
+ - family-names: Haines
44
+ given-names: Robert
45
+ orcid: https://orcid.org/0000-0002-9538-7919
46
+ - family-names: Baker
47
+ given-names: James
48
+ orcid: https://orcid.org/0000-0002-2682-6922
49
+ - family-names: Bliven
50
+ given-names: Spencer
51
+ orcid: https://orcid.org/0000-0002-1200-1698
52
+ email: spencer.bliven@gmail.com
53
+ - family-names: Willighagen
54
+ given-names: Egon
55
+ orcid: https://orcid.org/0000-0001-7542-0286
56
+ - family-names: Pérez-Suárez
57
+ given-names: David
58
+ orcid: https://orcid.org/0000-0003-0784-6909
59
+ website: https://dpshelio.github.io
60
+ - family-names: Konovalov
61
+ given-names: Alexander
62
+ orcid: https://orcid.org/0000-0001-5299-3292
63
+ identifiers:
64
+ - type: doi
65
+ value: 10.5281/zenodo.1003149
66
+ description: The concept DOI for the collection containing all versions of the Citation File Format.
67
+ - type: doi
68
+ value: 10.5281/zenodo.5171937
69
+ description: The versioned DOI for the version 1.2.0 of the Citation File Format.
70
+ keywords:
71
+ - citation file format
72
+ - CFF
73
+ - citation files
74
+ - software citation
75
+ - file format
76
+ - YAML
77
+ - software sustainability
78
+ - research software
79
+ - credit
80
+ abstract: CITATION.cff files are plain text files with human- and machine-readable citation information for software. Code developers can include them in their repositories to let others know how to correctly cite their software. This is the specification for the Citation File Format.
81
+ date-released: 2021-08-09
82
+ license: CC-BY-4.0
83
+ version: 1.2.0
@@ -0,0 +1,75 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://raw.githubusercontent.com/citation-file-format/cff-converter-python/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
+ - '1212'
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/"481e62c88d87f88f330c3713aad93abd1a281b2967c7ad0cd91ccca939567e52"
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
+ - B098:F9B8:176B365:188E5A5:61AF23E8
43
+ Content-Encoding:
44
+ - gzip
45
+ Accept-Ranges:
46
+ - bytes
47
+ Date:
48
+ - Tue, 07 Dec 2021 09:05:45 GMT
49
+ Via:
50
+ - 1.1 varnish
51
+ X-Served-By:
52
+ - cache-hhn4043-HHN
53
+ X-Cache:
54
+ - MISS
55
+ X-Cache-Hits:
56
+ - '0'
57
+ X-Timer:
58
+ - S1638867945.967912,VS0,VE186
59
+ Vary:
60
+ - Authorization,Accept-Encoding,Origin
61
+ Access-Control-Allow-Origin:
62
+ - "*"
63
+ X-Fastly-Request-Id:
64
+ - 8209173bb874db42d9e8e382110b46303cc17b0a
65
+ Expires:
66
+ - Tue, 07 Dec 2021 09:10:45 GMT
67
+ Source-Age:
68
+ - '0'
69
+ body:
70
+ encoding: ASCII-8BIT
71
+ string: !binary |-
72
+ H4sIAAAAAAAAA62XXXLiOBDH3zmFDrAytsGAedgqQiabTDJJKjAftW/CbmMNtuSS5bDMefYme7FtyRBMgCmo4KpUsGR3/7rVav3NZqVWLNJDMpZ5zkRMMi6AFErOFcuJluSVZTxmGoiZjKR4BaXJ+G46mt49PTpRkpCEZ1A6LVbpVKpy2CKEEpbgKGeaSzEkj6BTUBkaKAlMIg4iAjIGoUHhw4QkLOfZigqWQzkkk4KxRWkn5vwVxGb8c6UUZ0yQW8dOShXxeEhSrYty2G7bW0eqedvFi+KfT/tur0u7bi/8KNN9xl7XEztMU5l/1PQ3UKkEtLlvfaIhYeLUYIOB71Hf7bn7RLdVPpNZrOlXgfZVyfV//2ryqyJXyMnFAaprVZULpg8yFempUB3aDf2A9v3uYB/qjWVFZEKeykwe4HgAKSIu9zm+syzmdT7NCC0rtP2PTb6WLSxLao0bR57jO27L1DBVkAErAaF9F7PlhtT3WzzGteEJh03x6lUBQxJLbs3jBqjw1nOdwB947V8gZCwdz+v5btC3T8RQRooXdVjPxm2p0STZGiaJVIRlGVlDlSZkhFzvp5O9BoHv9XtnedUpLzduj3qtVNb0ulnROddpNXMimbcjru26UbPbKRrOmW6bNK+NgaLFChuA2Gf7+vJgGgluCvIX17fVjCgoJC68VCuLeA5SsSq4rTFsUT8hsgzbl9953s4RDP559XzXWsBqKVW8XukZn2XctLoiXdmBKz6bwg/7E1+u/68jtzfNxlcPyBi+gGb25pOIH6UG+/vlblI/sH6d3GDiyI1NXCvjEYgSwxoVLEqBmgLFsi7ZHMfuErKSFalKqBevlIleMgV/kMJWryECwjU+wcXc5BXHcmTAEmdOa5tcyhQWgu3up6Sv8WKEUX2wDDTXGTSXoPW2ITFajFdBAsr0xs2RsT0/zHVmU91vHX8v2bpP7R8lTAhYwNuk7SCFyVZkmF/xkIkbdk9ovoOOH+Jx47qXov8OapHKzbGwF8FVY2Kf/hzyfuAOaMfv+5ciH4kYMnYEW1ZLOJ3Oo6HrBnQQdi+W1ytZHkZ7ZlrxaHFO6npup0PDnvvjYqnTGvIjqfvMy7Pg3LA7oB6eFhfLHFssGpMHdNBF3DTk334O3knAU0u8IQMvwnhfFQVKtkwfxrxmifhdczmH3e/1fOqFYfdS7N/gWE95kBX24/KsHdDxPCyy3uBSdC8yOwz36e2EPwnNw44c9Gm3G3Qul7imUN8DbIj1E5PXFOwXIbxGNXMM74ap6sz+MQhp6IcXa27TnxLVyj3PyYSJ+ZFVVvwsyEG3gyp+4NWQexLfG1C3T71aL7+T+XVMO3JxjN8aUGhy/XRndelvYkQxaVQOmUJeZExvd/uuijfXke+Hjuf2A88+1dSkNVYk5YJDVOltOlEX7/qiawZ7e0hQmvFTNN3jA0zG7Vq20R0naw13bh7qHGxka63iN9rPdbqOe1jv7ZbLl2gUS3nkuOG51FaxvzHeyqX5yBgbaTxZeyZckNHzCLfmKmuSzTJZ1x9+YwzJn3TtZJMaM+2wgpXmNVtwm5s2llTQdr12KpdUS2qEON3ESbmg+CCtX0t1nrX+B23vkxxeEQAA
73
+ http_version:
74
+ recorded_at: Tue, 07 Dec 2021 09:05:45 GMT
75
+ 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/datacite/pidgraph-notebooks-python/master/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
+ - '179'
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/"904897bb01e8a81799120f8fbea0b9eda07bef8124d684df22007d3de35a640c"
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
+ - A448:F9B8:1763958:18867D3:61AF22E7
43
+ Content-Encoding:
44
+ - gzip
45
+ Accept-Ranges:
46
+ - bytes
47
+ Date:
48
+ - Tue, 07 Dec 2021 09:01:27 GMT
49
+ Via:
50
+ - 1.1 varnish
51
+ X-Served-By:
52
+ - cache-hhn4076-HHN
53
+ X-Cache:
54
+ - MISS
55
+ X-Cache-Hits:
56
+ - '0'
57
+ X-Timer:
58
+ - S1638867687.247696,VS0,VE211
59
+ Vary:
60
+ - Authorization,Accept-Encoding,Origin
61
+ Access-Control-Allow-Origin:
62
+ - "*"
63
+ X-Fastly-Request-Id:
64
+ - a9a785c986684079c845062877d41c83fb8d2de6
65
+ Expires:
66
+ - Tue, 07 Dec 2021 09:06:27 GMT
67
+ Source-Age:
68
+ - '0'
69
+ body:
70
+ encoding: ASCII-8BIT
71
+ string: !binary |-
72
+ H4sIAAAAAAAAA1XNPQ+CMBCA4b2/4uJssSWghs3Ej+BgjJtjlas0oge9Q8K/l7i5vsP7qLv3+oORA70LsIlNjHohs3tgAbPSw0g99IwgdWBg8jK4iHNoG3RTvQdBCAKO4YYNDclMuV5qilyoisJ0NInNsjxb+K5b6mGVW/WnWSVBmsnaX3bXDZzLLRyia2s49u0oGOFEgjeiJ6vKCeqIP7gqIDWp0SbXZq2+JhyHJMUAAAA=
73
+ http_version:
74
+ recorded_at: Tue, 07 Dec 2021 09:01:27 GMT
75
+ 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
+ - C714:7B77:A8AC40:B7D58E:61AEF275
43
+ Content-Encoding:
44
+ - gzip
45
+ Accept-Ranges:
46
+ - bytes
47
+ Date:
48
+ - Tue, 07 Dec 2021 06:17:45 GMT
49
+ Via:
50
+ - 1.1 varnish
51
+ X-Served-By:
52
+ - cache-hhn4053-HHN
53
+ X-Cache:
54
+ - HIT
55
+ X-Cache-Hits:
56
+ - '1'
57
+ X-Timer:
58
+ - S1638857865.889825,VS0,VE142
59
+ Vary:
60
+ - Authorization,Accept-Encoding,Origin
61
+ Access-Control-Allow-Origin:
62
+ - "*"
63
+ X-Fastly-Request-Id:
64
+ - d32f5353ed6e6b26f755bb5fe113ce76744a4289
65
+ Expires:
66
+ - Tue, 07 Dec 2021 06:22:45 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 06:17:45 GMT
75
+ recorded_with: VCR 3.0.3
@@ -39,37 +39,37 @@ http_interactions:
39
39
  X-Xss-Protection:
40
40
  - 1; mode=block
41
41
  X-Github-Request-Id:
42
- - 5F28:E02D:7ADFFD:8638EF:61ADB7A9
42
+ - BB8C:ADBA:C18769:D1A256:61AF2FAC
43
43
  Content-Encoding:
44
44
  - gzip
45
45
  Accept-Ranges:
46
46
  - bytes
47
47
  Date:
48
- - Mon, 06 Dec 2021 07:21:45 GMT
48
+ - Tue, 07 Dec 2021 09:55:57 GMT
49
49
  Via:
50
50
  - 1.1 varnish
51
51
  X-Served-By:
52
- - cache-hhn4074-HHN
52
+ - cache-hhn4028-HHN
53
53
  X-Cache:
54
- - HIT
54
+ - MISS
55
55
  X-Cache-Hits:
56
- - '1'
56
+ - '0'
57
57
  X-Timer:
58
- - S1638775306.704423,VS0,VE1
58
+ - S1638870957.986688,VS0,VE198
59
59
  Vary:
60
60
  - Authorization,Accept-Encoding,Origin
61
61
  Access-Control-Allow-Origin:
62
62
  - "*"
63
63
  X-Fastly-Request-Id:
64
- - 59408875417735c68e56c1ab80e630db0d3473d4
64
+ - c27214d46fff8476101213373e276f2614a566d5
65
65
  Expires:
66
- - Mon, 06 Dec 2021 07:26:45 GMT
66
+ - Tue, 07 Dec 2021 10:00:57 GMT
67
67
  Source-Age:
68
- - '267'
68
+ - '0'
69
69
  body:
70
70
  encoding: ASCII-8BIT
71
71
  string: !binary |-
72
72
  H4sIAAAAAAAAA41US27bMBBd26cgtI4kx07gIKs6iZumiNvUSYECRRe0OJLZUKQ6JKsIQQ7Qg/RiPUmHlO06QRcxIEPkzJvPmzd6HA6SN4XRDh5ccsqStXONPc1z5G1WSbf2K28Bo4N2WWHqvDACanD830vNrQPcnbPv1mglkoMQ2nUNhLi3pnQtR7g1Hgs4J9feLsV+VmFkZrDKD0fZ8dHkJP80vxylk8vFJDrzimqw5P84HDyDEtJgIUXEjuiX0jOhv+k0PZpOTgJ6r5YGkCrsLzWv492Co5OavQWtAXsTL0upJHeSfMnjgjt+Lh30xtpbdwbhHKpw6CFeS7vgUjt6KMqz+6Ws1s6+M0rsLMPBU2hLCmpLljLev5KKwPUSGmOlM9jt4/qhxUkJqrigCmlACHXNN0jt0CgF4g7qALSbyUQrQeAcgfdtJePR4XF6eJiOT3bWG79S0q539mk6Gqfjo519YUTo5b9msAXKZkvo0q865h1x7Dqm5Ao5dqw0yDS41uA9Q/jhwTqbsTNuQTBD8+HIBe8Y14LNH6iXA9ag+UkUWsZZi7yh4cYgXxbX+fvbjx9Yw9FKXUUIIJJpTa+KrjI2U4pZXxRgbekVJbSN0TbEQqCT86gpL7cEsWvWErXsHjoWiD1gnMAxoGWkHM5CttnNVVqiBErQvQD1rllkQtqZd6YONJ95qfYklChZAJVwFQlcXN1F/2ZDOr4UYuJ4FTbiaxBZ2ZPTCxQCOxuNg8uDPJLh4FvESKe2og+6OKXi4zD2h2Bl3ag4yd08CurY9vWgqZDXNZF4zXXlaTO3a7ldqBCwT/+T1m0z8j+/frNxNskmveXz8npfum3bZkiwVFHMIP5ksyEkSNFHfYXK85Uyq+03aTmfXSzmWS2S4dPwL3oe0obsBAAA
73
73
  http_version:
74
- recorded_at: Mon, 06 Dec 2021 07:21:45 GMT
74
+ recorded_at: Tue, 07 Dec 2021 09:55:57 GMT
75
75
  recorded_with: VCR 3.0.3
@@ -39,13 +39,13 @@ http_interactions:
39
39
  X-Xss-Protection:
40
40
  - 1; mode=block
41
41
  X-Github-Request-Id:
42
- - 8EA0:1E55:1087311:115786C:61ADBA09
42
+ - FECE:6BC0:17C5B98:18EBEC4:61AF2FAC
43
43
  Content-Encoding:
44
44
  - gzip
45
45
  Accept-Ranges:
46
46
  - bytes
47
47
  Date:
48
- - Mon, 06 Dec 2021 07:21:45 GMT
48
+ - Tue, 07 Dec 2021 09:55:56 GMT
49
49
  Via:
50
50
  - 1.1 varnish
51
51
  X-Served-By:
@@ -55,15 +55,15 @@ http_interactions:
55
55
  X-Cache-Hits:
56
56
  - '0'
57
57
  X-Timer:
58
- - S1638775305.182495,VS0,VE206
58
+ - S1638870957.503417,VS0,VE196
59
59
  Vary:
60
60
  - Authorization,Accept-Encoding,Origin
61
61
  Access-Control-Allow-Origin:
62
62
  - "*"
63
63
  X-Fastly-Request-Id:
64
- - d3ffc6d623ff207091d75910c8bd3dd5178ee8cb
64
+ - 16b73682374b3b2b74b9be462d4349fd7e2618f0
65
65
  Expires:
66
- - Mon, 06 Dec 2021 07:26:45 GMT
66
+ - Tue, 07 Dec 2021 10:00:56 GMT
67
67
  Source-Age:
68
68
  - '0'
69
69
  body:
@@ -71,5 +71,5 @@ http_interactions:
71
71
  string: !binary |-
72
72
  H4sIAAAAAAAAA81UyW7bMBA9219B6BzJliVBdk7NgqJG47aw01PRAy2OZaYSKQypKm6Qf++Qipcuh/pQIARIiHqzvRnOPA0HwZtCKwuPNrhkwdbaxlyORsi7qJR2265bA+gFlI0KXY8KLaAGy48fNTcW8HCPHoxWlQgunGm7a8DZXemN7TjCSrdYwA2J9rgUp16FlpHGchSPoyxNpqMOx48hxLPUC/OSYjAk/2XIaD35k7HfjWgspPBmxrRC2gkdeR6meTIlQ3utfWgNIAV8BBSv/f8FRysVewtKAR7hujX2Gm6kBefVYgsHSJoFl8rSJoU/sKUst9a805U4oB58vjiTThxmsyQN82ySnUHnlisJFVtF7D23P14Tn0mYzLI8nKR5egafK9xoxVY1PdLXRCYOp3GShUk6nZ1B5o6jYeS9Zh+oSAbU/6RE51fXT1JQP8mN9PA/9qBr8iU02kircXeq108LPyIEt7yggEduHLhLiKSC1Lu9CWVRVxWIe6idBfMyGzxK4nCDwHu6wWQcT0PXwLMD+qldV9JsT/EsjPMDvtDCkforDKZA2VhJNXBPSPFqZ6RhesNuKUyXZHb7cW4YQindUAPBNhrZPsILtkb9DRQTulNsvWN4SAXjSjD9HZBZWUPk3Ulz1VpdOy7XrayO9RsElSxAGZj7KBfzey/fvDDDvl/7gDxiedkPvgGR0NL9G/ySt74yLt/BcOCra6Wt+sb/OGdLzwe5Y248pdVp0hvUJfK6lqq846psadKS5pMzu3+hy97L5+XdadG7roswJPUHKKx/NuT+efg8/AmLwCo5WAYAAA==
73
73
  http_version:
74
- recorded_at: Mon, 06 Dec 2021 07:21:45 GMT
74
+ recorded_at: Tue, 07 Dec 2021 09:55:56 GMT
75
75
  recorded_with: VCR 3.0.3
@@ -0,0 +1,65 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.crossref.org/works/10.1101/097196/transform/application/vnd.crossref.unixsd+xml
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/xml;charset=utf-8
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 09:42:30 GMT
23
+ Content-Length:
24
+ - '3783'
25
+ Set-Cookie:
26
+ - AWSALB=5dlff35uylVfulpAChnfyuRqMsarg4ie2H/Fnl0cQAf8ztrJ3uqoS8lI87uSwExOS5zjLbU2purdZoT4MV4dahWbs8DB9d3WSrdog7CYZu7QiF++o05MkEMC8lCD;
27
+ Expires=Tue, 14 Dec 2021 09:42:30 GMT; Path=/, AWSALBCORS=5dlff35uylVfulpAChnfyuRqMsarg4ie2H/Fnl0cQAf8ztrJ3uqoS8lI87uSwExOS5zjLbU2purdZoT4MV4dahWbs8DB9d3WSrdog7CYZu7QiF++o05MkEMC8lCD;
28
+ Expires=Tue, 14 Dec 2021 09:42:30 GMT; Path=/; SameSite=None
29
+ Link:
30
+ - !binary |-
31
+ PGh0dHA6Ly9keC5kb2kub3JnLzEwLjExMDEvMDk3MTk2PjsgcmVsPSJjYW5vbmljYWwiLCA8aHR0cHM6Ly9zeW5kaWNhdGlvbi5oaWdod2lyZS5vcmcvY29udGVudC9kb2kvMTAuMTEwMS8wOTcxOTY+OyB2ZXJzaW9uPSJ2b3IiOyByZWw9Iml0ZW0iLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1PjsgdGl0bGU9Ik1hcnRpbiBGZW5uZXIiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xMzA0LTE5Mzk+OyB0aXRsZT0iTWVyY+ggQ3Jvc2FzIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtNTIxMi03MDUyPjsgdGl0bGU9IkplZmZyZXkgR3JldGhlIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItOTM3Ny0wNzk3PjsgdGl0bGU9IkRhdmlkIEtlbm5lZHkiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS04NDc5LTAyNjI+OyB0aXRsZT0iSGVubmluZyBIZXJtamFrb2IiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS05ODUzLTU2Njg+OyB0aXRsZT0iUGhpbGlwcGUgUm9jY2EtU2VycmEiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0yMTg4LTI1NzA+OyB0aXRsZT0iR3VzdGF2byBEdXJhbmQiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0xNzMxLTUzNDY+OyB0aXRsZT0iUm9iaW4gQmVyam9uIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODI0OS03Mzg4PjsgdGl0bGU9IlNlYmFzdGlhbiBLYXJjaGVyIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItODQwNi0zODcxPjsgdGl0bGU9Ik1hcnlhbm4gTWFydG9uZSI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAzLTQwNjAtNzM2MD47IHRpdGxlPSJUaW1vdGh5IENsYXJrIjsgcmVsPSJhdXRob3Ii
32
+ Access-Control-Expose-Headers:
33
+ - Link
34
+ Access-Control-Allow-Headers:
35
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
36
+ Accept-Ranges, Cache-Control
37
+ Access-Control-Allow-Origin:
38
+ - "*"
39
+ Vary:
40
+ - Accept-Encoding
41
+ Content-Encoding:
42
+ - gzip
43
+ Server:
44
+ - Jetty(9.4.40.v20210413)
45
+ X-Ratelimit-Limit:
46
+ - '50'
47
+ X-Ratelimit-Interval:
48
+ - 1s
49
+ X-Api-Pool:
50
+ - polite
51
+ X-Rate-Limit-Limit:
52
+ - '50'
53
+ X-Rate-Limit-Interval:
54
+ - 1s
55
+ Permissions-Policy:
56
+ - interest-cohort=()
57
+ Connection:
58
+ - close
59
+ body:
60
+ encoding: ASCII-8BIT
61
+ string: !binary |-
62
+ H4sIAAAAAAAAAM1ba3LbOBL+v1V7B5R+bMVV4ktvaRRPOX4kztiJx3JmZ6a2ygWRkASbJDgAaVup/bF32EvsPfYme5LtBkiJsilHijOx/yQiHo1Gv/B1Ax7+eBeF5IZJxUX8uubZbo2w2BcBj6eva58ujqxe7cfdvwx9KZSSbHIpmcrClMCsWL2uzdI0GTjO7e2tXYywhZw6f0jlz1hEnSYSXJDXX3rq4E7xlem3TT2x4bqe8+vpyUhPt3isUhr7DGYpPjA0T4RPU01uk9XJukFmiHIWO/sjY3J+KbI0yVKYaN+poLb7178QMjQ9Zue6BdpmjAb5b/gKBL8c09SfXfJgNxYxGzorTfkkpzRrOBbBfElBr0Fgt2kGcoW1RHjDcgaWi5B0nrDXtUSolAWXvohTFqe1Xc+1PQ8E5/a7Xr+j1y5P9GVk8ZRFJKYRzs7GIVczJi38ruU0VSpB57XdfREGZJTgB3lH5VhIckLhX5oKOR86Ba3H6IM0+d2fRDxi0Rg450FBOs6wobbbaHU2IuDzVJtPBYle13N7rV5rIzpjIa6r2Gg0vJ63GYmAgSJ5aqU8YqD5KHlAzPX6btfreM1mz2v0Wq7rbkRY3MYgI6OH+yrIbWUjOiFVqZUlAU0XmtS/gbGGa7me5XUvGt6g3Ry0u79vJn3JgEBwn5rXsbyG1ehfuN7Acwdee0Nq8DsYzy1fZOAG94TntatpoGNK5gsZlFo1bRMIvhTb7vLg4tnedmGpNLGISsBLdVTKYn4HbTB0GYdKvK4GgCIqSIaeBYIIaTzN6BTaWFwjEUspCJpeBhyNYJwhm5ciSWGTNJ7fJw7kp1JkyWXK05DtjnwOS/AJ98m+iCJgzOyT0Dggh0FmvoZOec4DgsioXllI9aAX9wMnBPCEWiWlsZdShLAJmqUzIWtEMYiScBq8rk24VOlDxg3z/IYZUrunVKYceVs2VU5RmdSdRywGxxk6xXfl4I/n+8cHu7kChfR5oDUHvgku4bpNy2t5favRcsH+zNiKDTulHX8LgdAg4KgHGm4gFSb9//5nc6nsg4FS9WSpNN2W5fWb/RcqlfdsMpFsvrlY3kqWztjTxOJZ7QYEvq7bbrxQsRzQGx5sLpSf0IOC+dOk0rD6zW7Xcrv97guVyjvYJpymm8vlHZPRFb0W46faS6/V7Vtuo/NS7eVsxkOeJGxz0ZwL36fWiElJnyqcfq/dtNqdTu+FCudtBjDvRmwum4NMwjH7VG8CRNqzGu2u+0LFci7G25zSb5i8QsTxNKF43SZE3yZmDS9SKCM2BvTN6RaC+YlKgI9PxC8QYhqtvtVt9l6qFwGqm9N4C7kgDNQ5+dMsBvKvjtWEJPGFyuWCRyKdbYFg9kMqr5+K60AoLlhL56uDC2Rpj2UHQ51SVGYNJtnYIweQ3JD9PK8n54IGEU3IREgy8mcCNhnOzZhzk3ALyRng2TW5irNmwSLpwpy1ipsIdjHb9eBgNr8qhgR0vtsAt8L/K7rnjEqdDA8d/fMha4+xMKS+zxJdLvsSj+4XeHT7X+Sxu5bHL7ExxKIeT3UWWrVCqdsYzJiL8zt+M3Qe9Dxc/DHaQ6wEXJryACn9vszTZ65oDReTsNgPppR2A9osjXxI8oqmakDHkFdTP6+KDrBtpQoQ+2Nux2Fkx3xmT8WN837vYuRVObShl9t1TnXolBrXTUkqvfdixhXBHNgPGUkkU5DJQwP8BLqQx4dElpxFLZwFqwVElpyFpILwKAlZhOUG3V3U0QiPCahcyABVTm55OiOQF5H3gsPQA+YDSTNQTO556pnksc+BqqoDU2oei0Qhw3FAZlSChfLPi5lIEqs2EXAQ6FaFzRG90pxzDJckESH352QsAuDZhu2zxQZvqSIBu2GhSFhAxnNNsBwPyOEdRKmUvMU6BvCjSAKSK5ZeZfy4EEW+Dx6KlLw62D8+2wHZiivmp0ABRQPBG8bcMKRzBPHx0PMwfuo9It0Px+/IGy729w4Ojg/Jq8oQrBXM7lIr5PF1UT7H31UFdK/f7zu6t0aKOZYx8EzyGtFdg5lkEzNbwXSweR8PGoYUaruVzbkVFiQrzU1vfipptCr6iF6DeD2PqIT5upB0T5F1ootHoBcwGQFykQx0OaOKaR3zFWkPCN0BAn9kXMIECIeJIjFjAXzAXJUliQC1fYUFjneWfC0opzOakgn1IamBKaxwJke7gC6k59WwWyGvJ6G4RVMG3fo7RCTm4F6hlEngTOKWpACrWPWkgnns44Ex0weuaFedr2tiQN5RxKeKI83o60slT8lCo6mqYqQmpEfAyXSv2FoaAbqQ9BLFdFmQIwu6M57kRsrVWV7G/DipEZCCrj0ymXcHgpsSttvsOarltftdy/UgI3YBzfcw/j9YpRKQPMovnLNGLg97sHiMKqk8OQX/wk3MYuii4l9d4l92V4paiUz6rABl+YmlFRUKcZ0luKpzn5PFtAqSvghDiFmoEtg5hsE5lurpbQiChzSEVSo9P1FJPhB0dwaOFvBppKqH32cegwxE/SD3IXvGp7NbcGu9lby2ve1eNAioNkIEmsU+K3S+VrXDwkEvQ64eOlFpALlmILgKlV4WcMKuPPYxyAtE4WFeQH+TAaMpX5x8exGTIKWY/CMMRArYdXV4JcUbEWaAkVqQruQ/q1WoVMZ2myA1/aNyjC63XyZ0CuRgZOmzcrj/Ww4S8QbmtyqUqIflsTTfwx4el6kUQWYMUR8EjFzpIJ4s4rRGKithExDnCqFKxedjn6i8xhrlZYA6JfCdSbyUKdbaC9OIxnVyapM6+Rt48w/ElNJ10ytYqbljTspDVFDlCTUgR1JEpXMK5bIKP2xyvDcaHY8uyM8ZSIIBgLMB2UBGBXAnIBOcn4eKHOHZgK5uqAxsFmQOWJbPfM2XUzrQlMMKpiwUt7W4N13qwlo9mYdOtRz+RIU0t1IIAC3zrkAZ8Xd2yoICoKDvlkmjUSfYW1+RHYTZ/HJOh6dn2GxrzWbxXUAOGSSGbXNw62Oy0ep5TqCu7I+jj6de03LRfavPpLVS2/94sHexZx3vjy6OyQVV1wYiE+B5FUyNIOkLwKwMgj8zOQZbWvrHTMNpGM/qxccpj4OB9oH9TEpMLkYaZ0FXQaBOzjSsN8DqgvmzWIRiOteRAEPEgoHceWzD1yhPCt6bUFknXuOVC2wUJw/evWrEvEZM312/7a2M+Z7s55DOM8yetHKM0Fs79n0VrRu2FVa2yZGAoAGpTKUw262+69B+d2Kx6fz6GQTZ+XpBqgHZw51CVPyKGDHJxTKFJDgb21w4D0InEH6O2NHdWiTopuQ0fzpA/g6ImsfTpUweDjGhdeGVZ6XkCB237KXnTDGsVRsLu2nZ7pLg2rNLz7BxKXz2oa0Ncb5Cm2u3IB1wIcw8g2h7XyfakdnPlkam1kjiGfbd33rfp7C5f5LxotwB/3zN/nHjEQuea9+eu/XGFUuJRQx8QLYf3bW3RuuL2U5O8jn2vi59WbN3jAEx2ReyFCcO8yriiKV18ot5GkrwoZMWSmObeBto+r7IU8ZA+BmSVg4SctyO47WcwGfqWcxku2Th8OT41+NzExAxhIZ8wr7GObB2w0J+x6XFMszln81NtsPm72gUiTiokwvMlt7ROKbz/MOkTicZ9r7RMnERspwfHJGRjqRZFFE5BxtyySnkj4BQBuTs/Hh0aj/HvtfB9GpOzsxjXHwQe26KmtqCtQ0cx0EGc+YLZL10old6fzvrDsskk6Gp3Ck4H23XiYxcHEAgKnoWc1iHbh/JXoBO35nEPJ7YaOk23je2ts5f3olYyDo5sdF40LQUC6dYfa2TfWw4kvQzZzDivU32lvaWv2SqkwObfFjFPUssA8HtA7oZj+gUVAhmBy4nFGjjDVPpIoUx6tRTj/OKZgkZ7aWLV5k2pvvQD1FxSTuGyREM9xXkMG4l5l4jqe+v5e2g908gszp5i85biH1RNAEJzYjx9i7IfW8p2oU3FFBzectbBpk/ZxQkmZrrF5MXVkjOc1ttJ0JAhQtZVC//HJJbh9CLqnK70W44kRqjgtudTru3trj8zVjaDtme6efm+pEw3hR8xdmVp02+iBzzdt03tPIvvLP//nrZDuaeH+2TZr/XAbj3KebouJjs6GL1wvVBAK8+nR/vDMhbFmNdV6fl9M4Ye3sbAISnvZz4ukZv4j184Pr2LI3CZxBXYx04fiTMm7scPNbQtrt2u791jB/RWIkYIroO4G9F/JmG7LP1hoWpxGhSiuul54Z1clYK7HsXo7oOJ/qATemUqAzhRSoIi+k4hA6ufDg3JB3jdeAcg0xgoDiYe+mdvA70LVg1v3k3jwcGxOuCevt6xe5OdTB6KInvr8LNrijOGJPv0duTLGWyqLZtczPRePxionTLwHqdLW4dOo/eOjxiiN2u13US2NeV5Su7t/b67sHdxUhM0lsKSc5CzMsi+fe8nliXcnxrzX3hSqmsOe+bXRdtrDhvY73t+TMIs4i9Zxkc+xqNRRQaY4ZvWphSfOnq+o+NTHAAaLZ8LFO+NPmeyl6XXy2uoRsdJ38YY1M663idPx8yNLZLfi4kCwWVOj5jVPQwDrMYMDpE3zMsDSj9900fx/ikpnyA/u9f/yYnPL4GjXxMWH4TcUrhyAXcLWzyO4tFICoRX7vR85zPpr8NSKrzHDF2u1r/p1nIpT6tDkFQh4G9syyWHAEILmUQAxCgfuWEVq2lUupcLcQusxNsXtzeDBYJNRg9OMVxDFEipvljFiwEq5lIKjPPogAR00TfLYJX0FCA1JvtTgur4xZdMmMFC0bNDWO5D3gpl81zRnWzKhh9Dr2ty28ehTeQYcSAGxAEYJSzbmADAAqjhIVbI51fQCMBpDx6NmSzS2DzgYWAgfTd8okxDwMlIx4DbkFz2BuLLCVem2CQ1U+rtG7xwUcBaQ4noCWEMwfWCR+DR00hOUZg1fBeeZ6jLW5dFrV+j99AT8uuqlcYi5ex+auRle7h4m+8S83mvce9vwMdOvrPsPPvobP4E+28Y/k34EuaRdv/ARSAXeZKPwAA
63
+ http_version:
64
+ recorded_at: Tue, 07 Dec 2021 09:42:31 GMT
65
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,65 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.crossref.org/works/10.1101/097196/transform/application/vnd.crossref.unixsd+xml
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/xml;charset=utf-8
14
+ Accept-Encoding:
15
+ - gzip,deflate
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Mon, 06 Dec 2021 20:43:57 GMT
23
+ Content-Length:
24
+ - '3783'
25
+ Set-Cookie:
26
+ - AWSALB=WyLNkMaOGwa8cf1D2U1Z3TbVQa/mHhRkBxvYTju/FCtAK/nKRvxxuYxWs7nwNUtxKGItYayjCqECwRwtzM/uWvO/hbn8HASduRvUg60rlgwHnO3AQv+V7pO63uG9;
27
+ Expires=Mon, 13 Dec 2021 20:43:56 GMT; Path=/, AWSALBCORS=WyLNkMaOGwa8cf1D2U1Z3TbVQa/mHhRkBxvYTju/FCtAK/nKRvxxuYxWs7nwNUtxKGItYayjCqECwRwtzM/uWvO/hbn8HASduRvUg60rlgwHnO3AQv+V7pO63uG9;
28
+ Expires=Mon, 13 Dec 2021 20:43:56 GMT; Path=/; SameSite=None
29
+ Link:
30
+ - !binary |-
31
+ PGh0dHA6Ly9keC5kb2kub3JnLzEwLjExMDEvMDk3MTk2PjsgcmVsPSJjYW5vbmljYWwiLCA8aHR0cHM6Ly9zeW5kaWNhdGlvbi5oaWdod2lyZS5vcmcvY29udGVudC9kb2kvMTAuMTEwMS8wOTcxOTY+OyB2ZXJzaW9uPSJ2b3IiOyByZWw9Iml0ZW0iLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1PjsgdGl0bGU9Ik1hcnRpbiBGZW5uZXIiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xMzA0LTE5Mzk+OyB0aXRsZT0iTWVyY+ggQ3Jvc2FzIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtNTIxMi03MDUyPjsgdGl0bGU9IkplZmZyZXkgR3JldGhlIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItOTM3Ny0wNzk3PjsgdGl0bGU9IkRhdmlkIEtlbm5lZHkiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS04NDc5LTAyNjI+OyB0aXRsZT0iSGVubmluZyBIZXJtamFrb2IiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS05ODUzLTU2Njg+OyB0aXRsZT0iUGhpbGlwcGUgUm9jY2EtU2VycmEiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0yMTg4LTI1NzA+OyB0aXRsZT0iR3VzdGF2byBEdXJhbmQiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0xNzMxLTUzNDY+OyB0aXRsZT0iUm9iaW4gQmVyam9uIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODI0OS03Mzg4PjsgdGl0bGU9IlNlYmFzdGlhbiBLYXJjaGVyIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItODQwNi0zODcxPjsgdGl0bGU9Ik1hcnlhbm4gTWFydG9uZSI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAzLTQwNjAtNzM2MD47IHRpdGxlPSJUaW1vdGh5IENsYXJrIjsgcmVsPSJhdXRob3Ii
32
+ Access-Control-Expose-Headers:
33
+ - Link
34
+ Access-Control-Allow-Headers:
35
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
36
+ Accept-Ranges, Cache-Control
37
+ Access-Control-Allow-Origin:
38
+ - "*"
39
+ Vary:
40
+ - Accept-Encoding
41
+ Content-Encoding:
42
+ - gzip
43
+ Server:
44
+ - Jetty(9.4.40.v20210413)
45
+ X-Ratelimit-Limit:
46
+ - '50'
47
+ X-Ratelimit-Interval:
48
+ - 1s
49
+ X-Api-Pool:
50
+ - polite
51
+ X-Rate-Limit-Limit:
52
+ - '50'
53
+ X-Rate-Limit-Interval:
54
+ - 1s
55
+ Permissions-Policy:
56
+ - interest-cohort=()
57
+ Connection:
58
+ - close
59
+ body:
60
+ encoding: ASCII-8BIT
61
+ string: !binary |-
62
+ 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
63
+ http_version:
64
+ recorded_at: Mon, 06 Dec 2021 20:43:56 GMT
65
+ recorded_with: VCR 3.0.3
@@ -54,7 +54,7 @@ describe Briard::Metadata, vcr: true do
54
54
  end
55
55
 
56
56
  it "github" do
57
- id = "https://github.com/datacite/maremma"
57
+ id = "https://github.com/datacite/maremma/blob/master/codemeta.json"
58
58
  expect(subject.find_from_format(id: id)).to eq("codemeta")
59
59
  end
60
60
 
@@ -0,0 +1,136 @@
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
+ end
40
+
41
+ it "cff-converter-python" do
42
+ input = "https://github.com/citation-file-format/cff-converter-python/blob/main/CITATION.cff"
43
+ subject = Briard::Metadata.new(input: input)
44
+ expect(subject.id).to eq("https://doi.org/10.5281/zenodo.1162057")
45
+ expect(subject.url).to eq("https://github.com/citation-file-format/cff-converter-python")
46
+ expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
47
+ expect(subject.creators).to eq([{"affiliation"=>[{"name"=>"Netherlands eScience Center"}],
48
+ "familyName"=>"Spaaks",
49
+ "givenName"=>"Jurriaan H.",
50
+ "name"=>"Spaaks, Jurriaan H.",
51
+ "nameIdentifiers"=>
52
+ [{"nameIdentifier"=>"https://orcid.org/0000-0002-7064-4069",
53
+ "nameIdentifierScheme"=>"ORCID",
54
+ "schemeUri"=>"https://orcid.org"}],
55
+ "nameType"=>"Personal"},
56
+ {"affiliation"=>[{"name"=>"Netherlands eScience Center"}],
57
+ "familyName"=>"Klaver",
58
+ "givenName"=>"Tom",
59
+ "name"=>"Klaver, Tom",
60
+ "nameType"=>"Personal"},
61
+ {"affiliation"=>[{"name"=>"Netherlands eScience Center"}],
62
+ "familyName"=>"Verhoeven",
63
+ "givenName"=>"Stefan",
64
+ "name"=>"Verhoeven, Stefan",
65
+ "nameIdentifiers"=>
66
+ [{"nameIdentifier"=>"https://orcid.org/0000-0002-5821-2060",
67
+ "nameIdentifierScheme"=>"ORCID",
68
+ "schemeUri"=>"https://orcid.org"}],
69
+ "nameType"=>"Personal"},
70
+ {"affiliation"=>[{"name"=>"Humboldt-Universit??t zu Berlin"}],
71
+ "familyName"=>"Druskat",
72
+ "givenName"=>"Stephan",
73
+ "name"=>"Druskat, Stephan",
74
+ "nameIdentifiers"=>
75
+ [{"nameIdentifier"=>"https://orcid.org/0000-0003-4925-7248",
76
+ "nameIdentifierScheme"=>"ORCID",
77
+ "schemeUri"=>"https://orcid.org"}],
78
+ "nameType"=>"Personal"},
79
+ {"affiliation"=>[{"name"=>"University of Oslo"}],
80
+ "familyName"=>"Leoncio",
81
+ "givenName"=>"Waldir",
82
+ "name"=>"Leoncio, Waldir",
83
+ "nameType"=>"Personal"}])
84
+ expect(subject.titles).to eq([{"title"=>"cffconvert"}])
85
+ expect(subject.descriptions.first["description"]).to start_with("Command line program to validate and convert CITATION.cff files")
86
+ expect(subject.subjects).to eq([{"subject"=>"bibliography"},
87
+ {"subject"=>"BibTeX"},
88
+ {"subject"=>"cff"},
89
+ {"subject"=>"citation"},
90
+ {"subject"=>"CITATION.cff"},
91
+ {"subject"=>"CodeMeta"},
92
+ {"subject"=>"EndNote"},
93
+ {"subject"=>"RIS"},
94
+ {"subject"=>"Citation File Format"}])
95
+ expect(subject.version_info).to eq("2.0.0")
96
+ expect(subject.dates).to eq([{"date"=>"2021-09-22", "dateType"=>"Issued"}])
97
+ expect(subject.publication_year).to eq("2021")
98
+ expect(subject.publisher).to eq("GitHub")
99
+ expect(subject.rights_list).to eq([{"rights"=>"Apache License 2.0",
100
+ "rightsIdentifier"=>"apache-2.0",
101
+ "rightsIdentifierScheme"=>"SPDX",
102
+ "rightsUri"=>"http://www.apache.org/licenses/LICENSE-2.0",
103
+ "schemeUri"=>"https://spdx.org/licenses/"}])
104
+ end
105
+
106
+ it "ruby-cff" do
107
+ expect(subject.valid?).to be true
108
+ expect(subject.id).to eq("https://doi.org/10.5281/zenodo.1184077")
109
+ expect(subject.url).to eq("https://github.com/citation-file-format/ruby-cff")
110
+ expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
111
+ expect(subject.creators).to eq([{"affiliation"=>[{"name"=>"The University of Manchester, UK"}], "familyName"=>"Haines", "givenName"=>"Robert", "name"=>"Haines, Robert", "nameIdentifiers"=>
112
+ [{"nameIdentifier"=>"https://orcid.org/0000-0002-9538-7919",
113
+ "nameIdentifierScheme"=>"ORCID",
114
+ "schemeUri"=>"https://orcid.org"}], "nameType"=>"Personal"}, {"name"=>"The Ruby Citation File Format Developers", "nameType"=>"Organizational"}])
115
+ expect(subject.titles).to eq([{"title"=>"Ruby CFF Library"}])
116
+ expect(subject.descriptions.first["description"]).to start_with("This library provides a Ruby interface to manipulate Citation File Format files")
117
+ expect(subject.subjects).to eq([{"subject"=>"ruby"},
118
+ {"subject"=>"credit"},
119
+ {"subject"=>"software citation"},
120
+ {"subject"=>"research software"},
121
+ {"subject"=>"software sustainability"},
122
+ {"subject"=>"metadata"},
123
+ {"subject"=>"citation file format"},
124
+ {"subject"=>"CFF"}])
125
+ expect(subject.version_info).to eq("0.9.0")
126
+ expect(subject.dates).to eq([{"date"=>"2021-08-18", "dateType"=>"Issued"}])
127
+ expect(subject.publication_year).to eq("2021")
128
+ expect(subject.publisher).to eq("GitHub")
129
+ expect(subject.rights_list).to eq([{"rights"=>"Apache License 2.0",
130
+ "rightsIdentifier"=>"apache-2.0",
131
+ "rightsIdentifierScheme"=>"SPDX",
132
+ "rightsUri"=>"http://www.apache.org/licenses/LICENSE-2.0",
133
+ "schemeUri"=>"https://spdx.org/licenses/"}])
134
+ end
135
+ end
136
+ end
@@ -3,7 +3,7 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  describe Briard::Metadata, vcr: true do
6
- let(:input) { "https://github.com/datacite/maremma" }
6
+ let(:input) { "https://github.com/datacite/maremma/blob/master/codemeta.json" }
7
7
 
8
8
  subject { Briard::Metadata.new(input: input) }
9
9
 
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,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ # require 'spec_helper'
4
+
5
+ # describe Briard::Metadata, vcr: true do
6
+ # context "write metadata as codemeta" do
7
+ # # it "SoftwareSourceCode DataCite JSON" do
8
+ # # input = fixture_path + "datacite_software.json"
9
+ # # subject = Briard::Metadata.new(input: input, from: "datacite_json")
10
+ # # expect(subject.valid?).to be true
11
+ # # json = JSON.parse(subject.codemeta)
12
+ # # expect(json["@context"]).to eq("https://raw.githubusercontent.com/codemeta/codemeta/master/codemeta.jsonld")
13
+ # # expect(json["@id"]).to eq("https://doi.org/10.5063/f1m61h5x")
14
+ # # expect(json["@type"]).to eq("SoftwareSourceCode")
15
+ # # expect(json["identifier"]).to eq("https://doi.org/10.5063/f1m61h5x")
16
+ # # expect(json["agents"]).to eq("type"=>"Person", "name"=>"Matthew B. Jones", "givenName"=>"Matthew B.", "familyName"=>"Jones")
17
+ # # expect(json["title"]).to eq("dataone: R interface to the DataONE network of data repositories")
18
+ # # expect(json["datePublished"]).to eq("2016")
19
+ # # expect(json["publisher"]).to eq("KNB Data Repository")
20
+ # # end
21
+
22
+ # it "SoftwareSourceCode DataCite" do
23
+ # input = "https://doi.org/10.5063/f1m61h5x"
24
+ # subject = Briard::Metadata.new(input: input, from: "datacite")
25
+ # expect(subject.valid?).to be true
26
+ # json = JSON.parse(subject.codemeta)
27
+ # expect(json["@context"]).to eq("https://raw.githubusercontent.com/codemeta/codemeta/master/codemeta.jsonld")
28
+ # expect(json["@id"]).to eq("https://doi.org/10.5063/f1m61h5x")
29
+ # expect(json["@type"]).to eq("SoftwareSourceCode")
30
+ # expect(json["authors"]).to eq([{"name"=>"Jones, Matthew B.; Slaughter, Peter; Nahf, Rob; Boettiger, Carl ; Jones, Chris; Read, Jordan; Walker, Lauren; Hart, Edmund; Chamberlain, Scott", "nameIdentifiers" => [], "affiliation" => []}])
31
+ # expect(json["name"]).to eq("dataone: R interface to the DataONE network of data repositories")
32
+ # expect(json["datePublished"]).to eq("2016")
33
+ # expect(json["publisher"]).to eq("KNB Data Repository")
34
+ # end
35
+
36
+ # it "SoftwareSourceCode DataCite check codemeta v2" do
37
+ # input = "https://doi.org/10.5063/f1m61h5x"
38
+ # subject = Briard::Metadata.new(input: input, from: "datacite")
39
+ # expect(subject.valid?).to be true
40
+ # json = JSON.parse(subject.codemeta)
41
+ # expect(json["agents"]).to be_nil
42
+ # expect(json["title"]).to be_nil
43
+ # end
44
+ # end
45
+ # 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.0.2
4
+ version: '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-06 00:00:00.000000000 Z
11
+ date: 2021-12-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: maremma
@@ -599,6 +599,7 @@ files:
599
599
  - ".github/workflows/release.yml"
600
600
  - ".gitignore"
601
601
  - ".rubocop.yml"
602
+ - ".tool-versions"
602
603
  - CHANGELOG.md
603
604
  - CITATION
604
605
  - CITATION.cff
@@ -621,6 +622,7 @@ files:
621
622
  - lib/briard/metadata_utils.rb
622
623
  - lib/briard/pubmed.rb
623
624
  - lib/briard/readers/bibtex_reader.rb
625
+ - lib/briard/readers/cff_reader.rb
624
626
  - lib/briard/readers/citeproc_reader.rb
625
627
  - lib/briard/readers/codemeta_reader.rb
626
628
  - lib/briard/readers/crosscite_reader.rb
@@ -635,6 +637,7 @@ files:
635
637
  - lib/briard/version.rb
636
638
  - lib/briard/whitelist_scrubber.rb
637
639
  - lib/briard/writers/bibtex_writer.rb
640
+ - lib/briard/writers/cff_writer.rb
638
641
  - lib/briard/writers/citation_writer.rb
639
642
  - lib/briard/writers/citeproc_writer.rb
640
643
  - lib/briard/writers/codemeta_writer.rb
@@ -801,6 +804,7 @@ files:
801
804
  - spec/datacite_utils_spec.rb
802
805
  - spec/doi_utils_spec.rb
803
806
  - spec/find_from_format_spec.rb
807
+ - spec/fixtures/CITATION.cff
804
808
  - spec/fixtures/aida.json
805
809
  - spec/fixtures/cgimp_package.json
806
810
  - spec/fixtures/cit_package.json
@@ -961,6 +965,9 @@ files:
961
965
  - spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org/with_id.yml
962
966
  - spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org_creators/with_affiliation.yml
963
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
964
971
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/maremma.yml
965
972
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/metadata_reports.yml
966
973
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml
@@ -1076,8 +1083,10 @@ files:
1076
1083
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_and_pages.yml
1077
1084
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_volume_and_pages.yml
1078
1085
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_volume_issue_and_pages.yml
1086
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_as_cff_url.yml
1079
1087
  - spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_as_codemeta_url.yml
1080
1088
  - spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url.yml
1089
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url_cff_file.yml
1081
1090
  - spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url_file.yml
1082
1091
  - spec/fixtures/vcr_cassettes/Briard_Metadata/handle_input/DOI_RA_not_Crossref_or_DataCite.yml
1083
1092
  - spec/fixtures/vcr_cassettes/Briard_Metadata/handle_input/unknown_DOI_prefix.yml
@@ -1298,6 +1307,7 @@ files:
1298
1307
  - spec/fixtures/vivli.xml
1299
1308
  - spec/metadata_spec.rb
1300
1309
  - spec/readers/bibtex_reader_spec.rb
1310
+ - spec/readers/cff_reader_spec.rb
1301
1311
  - spec/readers/citeproc_reader_spec.rb
1302
1312
  - spec/readers/codemeta_reader_spec.rb
1303
1313
  - spec/readers/crosscite_reader_spec.rb
@@ -1310,6 +1320,7 @@ files:
1310
1320
  - spec/spec_helper.rb
1311
1321
  - spec/utils_spec.rb
1312
1322
  - spec/writers/bibtex_writer_spec.rb
1323
+ - spec/writers/cff_writer_spec.rb
1313
1324
  - spec/writers/citation_writer_spec.rb
1314
1325
  - spec/writers/citeproc_writer_spec.rb
1315
1326
  - spec/writers/codemeta_writer_spec.rb