roboneuro 0.1.1 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +2 -1
- data/Gemfile.lock +2 -2
- data/README.md +2 -0
- data/bin/whedon +6 -1
- data/fixtures/review_body.txt +5 -1
- data/fixtures/vcr_cassettes/review.yml +6 -2
- data/lib/whedon/auditor.rb +11 -2
- data/lib/whedon/compilers.rb +19 -7
- data/lib/whedon/processor.rb +19 -4
- data/lib/whedon/version.rb +1 -1
- data/lib/whedon.rb +11 -2
- data/paperdraft.Dockerfile +5 -1
- data/resources/crossref.template +2 -3
- data/resources/{NeuroLibre → neurolibre}/aas-logo.png +0 -0
- data/resources/{NeuroLibre → neurolibre}/apa.csl +0 -0
- data/resources/{NeuroLibre → neurolibre}/defaults.yaml +2 -2
- data/resources/{NeuroLibre → neurolibre}/latex.template +14 -8
- data/resources/neurolibre/logo.png +0 -0
- data/resources/neurolibre/logo_link.png +0 -0
- data/spec/auditor_spec.rb +6 -1
- data/spec/whedon_spec.rb +1 -1
- metadata +8 -11
- data/.DS_Store +0 -0
- data/resources/.DS_Store +0 -0
- data/resources/NeuroLibre/.DS_Store +0 -0
- data/resources/NeuroLibre/logo.png +0 -0
- data/resources/NeuroLibre/logo_link.png +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eaf1b4db47f63f6ba20f6b61c6a3da591da7683f725c8e09acf84e19caf0ac83
|
4
|
+
data.tar.gz: 4ee5e8db07ddc9e097824765915231c5881a59d3120e5e24b2d952cabac9374e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 767994ca34c5eaa5b56f419fb3142dccd62b21195e2d0d3a6bea02349e6329965c638614c1ed51958abdc8a2da6f6056209d9f558677a5855782bd56dc10c492
|
7
|
+
data.tar.gz: ce04676f3a02b802d3fe74245caf9a5e36b16c3bd270be6924e604ac6c7e6791b451c1737663b105ea1fdb26d74529abaa630a09d47d2dc754253917238a09ac
|
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
roboneuro (0.1.
|
4
|
+
roboneuro (0.1.4)
|
5
5
|
bibtex-ruby (~> 6.0.0)
|
6
6
|
dotenv
|
7
7
|
github-linguist (~> 5.3)
|
@@ -102,7 +102,7 @@ GEM
|
|
102
102
|
rspec-support (~> 3.10.0)
|
103
103
|
rspec-support (3.10.2)
|
104
104
|
ruby2_keywords (0.0.5)
|
105
|
-
rugged (1.4.
|
105
|
+
rugged (1.4.3)
|
106
106
|
sawyer (0.8.2)
|
107
107
|
addressable (>= 2.3.5)
|
108
108
|
faraday (> 0.8, < 2.0)
|
data/README.md
CHANGED
@@ -14,6 +14,8 @@ Hopefully...
|
|
14
14
|
|
15
15
|
[](https://github.com/openjournals/whedon/actions/workflows/tests.yml)
|
16
16
|
|
17
|
+
[](https://badge.fury.io/rb/roboneuro)
|
18
|
+
|
17
19
|
## Installation
|
18
20
|
|
19
21
|
Depending on how Ruby is installed on your system there might slightly different steps be necessary. Note that Whedon is only tested for reasonably modern versions of Ruby (i.e. > 2.1) [Bundler](http://bundler.io/) is used to install dependencies.
|
data/bin/whedon
CHANGED
@@ -42,7 +42,12 @@ class WhedonCli < Thor
|
|
42
42
|
def prepare(issue_id, custom_path=nil, custom_branch=nil)
|
43
43
|
review = Whedon::Review.new(issue_id)
|
44
44
|
processor = Whedon::Processor.new(issue_id, review.issue_body, custom_path)
|
45
|
-
processor.
|
45
|
+
processor.repository_doi = 'PENDING'
|
46
|
+
processor.data_doi = 'PENDING'
|
47
|
+
processor.book_doi = 'PENDING'
|
48
|
+
processor.docker_doi = 'PENDING'
|
49
|
+
processor.book_exec_url = 'PENDING'
|
50
|
+
|
46
51
|
|
47
52
|
# Optionally set the path to work in
|
48
53
|
path = custom_path ? custom_path : "tmp/#{issue_id}"
|
data/fixtures/review_body.txt
CHANGED
@@ -1,7 +1,11 @@
|
|
1
1
|
**Submitting author:** @zhaozhang (<a href="http://orcid.org/0000-0001-5921-0035">Zhao Zhang</a>)
|
2
2
|
**Repository:** <a href="https://github.com/applicationskeleton/Skeleton" target ="_blank">https://github.com/applicationskeleton/Skeleton</a>
|
3
3
|
**Version:** v1.2
|
4
|
-
**
|
4
|
+
**Jupyter Book:** <a href="https://neurolibre.org" target ="_blank">https://neurolibre.org</a>
|
5
|
+
**Repository archive:** <a href="http://dx.doi.org/10.5281/zenodo.13750" target ="_blank">http://dx.doi.org/10.5281/zenodo.13750</a>
|
6
|
+
**Data archive:** <a href="http://dx.doi.org/10.5281/zenodo.13750" target ="_blank">http://dx.doi.org/10.5281/zenodo.13750</a>
|
7
|
+
**Book archive:** <a href="http://dx.doi.org/10.5281/zenodo.13750" target ="_blank">http://dx.doi.org/10.5281/zenodo.13750</a>
|
8
|
+
**Docker archive:** <a href="http://dx.doi.org/10.5281/zenodo.13750" target ="_blank">http://dx.doi.org/10.5281/zenodo.13750</a>
|
5
9
|
|
6
10
|
## Status
|
7
11
|
|
@@ -80,8 +80,12 @@ http_interactions:
|
|
80
80
|
author:** @zhaozhang (<a href=\"http://orcid.org/0000-0001-5921-0035\">Zhao
|
81
81
|
Zhang</a>)\r\n**Repository:** <a href=\"https://github.com/applicationskeleton/Skeleton\"
|
82
82
|
target =\"_blank\">https://github.com/applicationskeleton/Skeleton</a>\r\n**Version:**
|
83
|
-
v1.2\r\n**Editor:** @arfon\r\n**Reviewers:** @jim, @bob\r\n**
|
84
|
-
=\"_blank\">http://dx.doi.org/10.5281/zenodo.13750</a
|
83
|
+
v1.2\r\n**Editor:** @arfon\r\n**Reviewers:** @jim, @bob\r\n**Repository archive:** <a href=\"http://dx.doi.org/10.5281/zenodo.13750\" target
|
84
|
+
=\"_blank\">http://dx.doi.org/10.5281/zenodo.13750</a>r\n**Data archive:** <a href=\"http://dx.doi.org/10.5281/zenodo.13750\" target
|
85
|
+
=\"_blank\">http://dx.doi.org/10.5281/zenodo.13750</a>r\n**Book archive:** <a href=\"http://dx.doi.org/10.5281/zenodo.13750\" target
|
86
|
+
=\"_blank\">http://dx.doi.org/10.5281/zenodo.13750</a>r\n**Docker archive:** <a href=\"http://dx.doi.org/10.5281/zenodo.13750\" target
|
87
|
+
=\"_blank\">http://dx.doi.org/10.5281/zenodo.13750</a>r\n**Jupyter Book:** <a href=\"https://neurolibre.org\" target
|
88
|
+
=\"_blank\">https://neurolibre.org</a>\r\n\r\n## Status\r\n\r\n[](http://joss.theoj.org/papers/6b34fdbf8215c1ecd4941afc8be7a7e6)\r\n\r\nStatus
|
85
89
|
badge code:\r\n\r\n```\r\nHTML: <a href=\"http://joss.theoj.org/papers/6b34fdbf8215c1ecd4941afc8be7a7e6\"><img
|
86
90
|
src=\"http://joss.theoj.org/papers/6b34fdbf8215c1ecd4941afc8be7a7e6/status.svg\"></a>\r\nMarkdown:
|
87
91
|
[]http://joss.theoj.org/papers/6b34fdbf8215c1ecd4941afc8be7a7e6\r\n```\r\n\r\n##
|
data/lib/whedon/auditor.rb
CHANGED
@@ -14,6 +14,7 @@ module Whedon
|
|
14
14
|
puts verify_version
|
15
15
|
puts verify_repository
|
16
16
|
puts verify_archive
|
17
|
+
puts verify_book
|
17
18
|
end
|
18
19
|
|
19
20
|
def verify_author
|
@@ -32,8 +33,16 @@ module Whedon
|
|
32
33
|
end
|
33
34
|
|
34
35
|
def verify_archive
|
35
|
-
|
36
|
-
|
36
|
+
archive_repository = review_body[ARCHIVE_REPOSITORY_REGEX]
|
37
|
+
archive_data = review_body[ARCHIVE_DATA_REGEX]
|
38
|
+
archive_book = review_body[ARCHIVE_BOOK_REGEX]
|
39
|
+
archive_docker = review_body[ARCHIVE_DOCKER_REGEX]
|
40
|
+
return "Repository archive: #{archive_repository} Data archive: #{archive_data} Book archive: #{archive_book} Docker archive: #{archive_docker}" if archive_repository && archive_book && archive_data && archive_docker
|
41
|
+
end
|
42
|
+
|
43
|
+
def verify_book
|
44
|
+
book = review_body[BOOK_EXEC_REGEX]
|
45
|
+
return "Jupyter Book: #{book}"
|
37
46
|
end
|
38
47
|
end
|
39
48
|
end
|
data/lib/whedon/compilers.rb
CHANGED
@@ -114,7 +114,7 @@ module Compilers
|
|
114
114
|
published = parsed['accepted']
|
115
115
|
|
116
116
|
# TODO - remove this once JOSE has their editors hooked up in the system
|
117
|
-
if ENV['JOURNAL_ALIAS'] == "
|
117
|
+
if ENV['JOURNAL_ALIAS'] == "neurolibre" && !paper.editor.nil?
|
118
118
|
editor_lookup_url = "#{ENV['JOURNAL_URL']}/editors/lookup/#{paper.editor}"
|
119
119
|
response = RestClient.get(editor_lookup_url)
|
120
120
|
parsed = JSON.parse(response)
|
@@ -142,7 +142,11 @@ module Compilers
|
|
142
142
|
|
143
143
|
metadata = {
|
144
144
|
"repository" => repository_address,
|
145
|
-
"
|
145
|
+
"repository_doi" => repository_doi,
|
146
|
+
"data_doi" => data_doi,
|
147
|
+
"book_doi" => book_doi,
|
148
|
+
"docker_doi" => docker_doi,
|
149
|
+
"book_exec_url" => book_exec_url,
|
146
150
|
"paper_url" => paper.pdf_url,
|
147
151
|
"journal_name" => ENV['JOURNAL_NAME'],
|
148
152
|
"review_issue_url" => paper.review_issue_url,
|
@@ -167,7 +171,11 @@ module Compilers
|
|
167
171
|
|
168
172
|
`cd #{paper.directory} && pandoc \
|
169
173
|
-V repository="#{repository_address}" \
|
170
|
-
-V
|
174
|
+
-V repository_doi="#{repository_doi}" \
|
175
|
+
-V data_doi="#{data_doi}" \
|
176
|
+
-V book_doi="#{book_doi}" \
|
177
|
+
-V docker_doi="#{docker_doi}" \
|
178
|
+
-V book_exec_url="#{book_exec_url}" \
|
171
179
|
-V review_issue_url="#{paper.review_issue_url}" \
|
172
180
|
-V editor_url="#{editor_url}" \
|
173
181
|
-V graphics="true" \
|
@@ -182,7 +190,7 @@ module Compilers
|
|
182
190
|
if File.exists?("#{paper.directory}/#{paper.filename_doi}.pdf")
|
183
191
|
puts "#{paper.directory}/#{paper.filename_doi}.pdf"
|
184
192
|
else
|
185
|
-
abort("Looks like we failed to compile the PDF")
|
193
|
+
abort("Looks like we failed to compile the PDF :/")
|
186
194
|
end
|
187
195
|
end
|
188
196
|
|
@@ -219,7 +227,7 @@ module Compilers
|
|
219
227
|
-V paper_url=#{paper.pdf_url} \
|
220
228
|
-V joss_resource_url=#{paper.joss_resource_url} \
|
221
229
|
-V journal_alias=#{ENV['JOURNAL_ALIAS']} \
|
222
|
-
-V journal_abbrev_title=#{ENV['
|
230
|
+
-V journal_abbrev_title=#{ENV['JOURNAL_ABBRV_TITLE']} \
|
223
231
|
-V journal_url=#{ENV['JOURNAL_URL']} \
|
224
232
|
-V journal_name='#{ENV['JOURNAL_NAME']}' \
|
225
233
|
-V journal_issn=#{ENV['JOURNAL_ISSN']} \
|
@@ -280,12 +288,16 @@ module Compilers
|
|
280
288
|
"timestamp" => Time.now.strftime('%Y%m%d%H%M%S'),
|
281
289
|
"doi_batch_id" => generate_doi_batch_id,
|
282
290
|
"formatted_doi" => paper.formatted_doi,
|
283
|
-
"
|
291
|
+
"repository_doi" => repository_doi,
|
292
|
+
"data_doi" => data_doi,
|
293
|
+
"book_doi" => book_doi,
|
294
|
+
"docker_doi" => docker_doi,
|
295
|
+
"book_exec_url" => book_exec_url,
|
284
296
|
"review_issue_url" => paper.review_issue_url,
|
285
297
|
"paper_url" => paper.pdf_url,
|
286
298
|
"joss_resource_url" => paper.joss_resource_url,
|
287
299
|
"journal_alias" => ENV['JOURNAL_ALIAS'],
|
288
|
-
"journal_abbrev_title" => ENV['
|
300
|
+
"journal_abbrev_title" => ENV['JOURNAL_ABBRV_TITLE'],
|
289
301
|
"journal_url" => ENV['JOURNAL_URL'],
|
290
302
|
"journal_name" => ENV['JOURNAL_NAME'],
|
291
303
|
"journal_issn"=> ENV['JOURNAL_ISSN'],
|
data/lib/whedon/processor.rb
CHANGED
@@ -12,7 +12,11 @@ module Whedon
|
|
12
12
|
attr_accessor :review_issue_id
|
13
13
|
attr_accessor :review_body
|
14
14
|
attr_accessor :repository_address
|
15
|
-
attr_accessor :
|
15
|
+
attr_accessor :repository_doi
|
16
|
+
attr_accessor :data_doi
|
17
|
+
attr_accessor :book_exec_url
|
18
|
+
attr_accessor :book_doi
|
19
|
+
attr_accessor :docker_doi
|
16
20
|
attr_accessor :paper_path
|
17
21
|
attr_accessor :xml_path
|
18
22
|
attr_accessor :doi_batch_id
|
@@ -26,7 +30,11 @@ module Whedon
|
|
26
30
|
@review_issue_id = review_issue_id
|
27
31
|
@review_body = review_body
|
28
32
|
@repository_address = review_body[REPO_REGEX]
|
29
|
-
@
|
33
|
+
@repository_doi = review_body[ARCHIVE_REPOSITORY_REGEX]
|
34
|
+
@data_doi = review_body[ARCHIVE_DATA_REGEX]
|
35
|
+
@book_doi = review_body[ARCHIVE_BOOK_REGEX]
|
36
|
+
@docker_doi = review_body[ARCHIVE_DOCKER_REGEX]
|
37
|
+
@book_exec_url = review_body[BOOK_EXEC_REGEX]
|
30
38
|
@custom_path = custom_path
|
31
39
|
# Probably a much nicer way to do this...
|
32
40
|
@current_year = ENV["CURRENT_YEAR"].nil? ? Time.new.year : ENV["CURRENT_YEAR"]
|
@@ -114,7 +122,9 @@ module Whedon
|
|
114
122
|
joss_deposit
|
115
123
|
|
116
124
|
puts "p=dat #{@review_issue_id};p.doi='#{paper.formatted_doi}';"\
|
117
|
-
"p.
|
125
|
+
"p.repository_doi=#{repository_doi};p.accepted_at=Time.now;"\
|
126
|
+
"p.data_doi=#{data_doi};p.book_doi=#{book_doi};"\
|
127
|
+
"p.docker_doi=#{docker_doi};p.book_exec_url=#{book_exec_url};"\
|
118
128
|
"p.citation_string='#{citation_string}';"\
|
119
129
|
"p.authors='#{paper.authors_string}';p.title='#{paper.title}';"
|
120
130
|
end
|
@@ -128,7 +138,11 @@ module Whedon
|
|
128
138
|
:id => paper.review_issue_id,
|
129
139
|
:metadata => Base64.encode64(paper.deposit_payload.to_json),
|
130
140
|
:doi => paper.formatted_doi,
|
131
|
-
:
|
141
|
+
:repository_doi => repository_doi,
|
142
|
+
:data_doi => data_doi,
|
143
|
+
:book_doi => book_doi,
|
144
|
+
:docker_doi => docker_doi,
|
145
|
+
:book_exec_url => book_exec_url,
|
132
146
|
:citation_string => citation_string,
|
133
147
|
:title => paper.plain_title,
|
134
148
|
:secret => ENV['WHEDON_SECRET']
|
@@ -147,6 +161,7 @@ module Whedon
|
|
147
161
|
puts "Depositing with Crossref..."
|
148
162
|
request = RestClient::Request.new(
|
149
163
|
:method => :post,
|
164
|
+
#:url => "https://test.crossref.org/servlet/deposit",
|
150
165
|
:url => "https://doi.crossref.org/servlet/deposit",
|
151
166
|
:payload => {
|
152
167
|
:multipart => true,
|
data/lib/whedon/version.rb
CHANGED
data/lib/whedon.rb
CHANGED
@@ -32,7 +32,12 @@ module Whedon
|
|
32
32
|
AUTHOR_REGEX = /(?<=\*\*Submitting author:\*\*\s)(\S+)/
|
33
33
|
REPO_REGEX = /(?<=\*\*Repository:\*\*.<a\shref=)"(.*?)"/
|
34
34
|
VERSION_REGEX = /(?<=\*\*Version:\*\*\s)(\S+)/
|
35
|
-
|
35
|
+
ARCHIVE_REPOSITORY_REGEX = /(?<=\*\*Repository archive:\*\*.<a\shref=)"(.*?)"/
|
36
|
+
ARCHIVE_DATA_REGEX = /(?<=\*\*Data archive:\*\*.<a\shref=)"(.*?)"/
|
37
|
+
ARCHIVE_BOOK_REGEX = /(?<=\*\*Book archive:\*\*.<a\shref=)"(.*?)"/
|
38
|
+
ARCHIVE_DOCKER_REGEX = /(?<=\*\*Docker archive:\*\*.<a\shref=)"(.*?)"/
|
39
|
+
BOOK_EXEC_REGEX = /(?<=\*\*Jupyter Book:\*\*.<a\shref=)"(.*?)"/
|
40
|
+
|
36
41
|
|
37
42
|
class Paper
|
38
43
|
include GitHub
|
@@ -176,7 +181,11 @@ module Whedon
|
|
176
181
|
%w(title tags languages).each { |var| payload['paper'][var] = self.send(var) }
|
177
182
|
payload['paper']['authors'] = authors.collect { |a| a.to_h }
|
178
183
|
payload['paper']['doi'] = formatted_doi
|
179
|
-
payload['paper']['
|
184
|
+
payload['paper']['repository_doi'] = review_issue_body[ARCHIVE_REPOSITORY_REGEX].gsub('"', '')
|
185
|
+
payload['paper']['data_doi'] = review_issue_body[ARCHIVE_DATA_REGEX].gsub('"', '')
|
186
|
+
payload['paper']['book_doi'] = review_issue_body[ARCHIVE_BOOK_REGEX].gsub('"', '')
|
187
|
+
payload['paper']['docker_doi'] = review_issue_body[ARCHIVE_DOCKER_REGEX].gsub('"', '')
|
188
|
+
payload['paper']['book_exec_url'] = review_issue_body[BOOK_EXEC_REGEX].gsub('"', '')
|
180
189
|
payload['paper']['repository_address'] = review_issue_body[REPO_REGEX].gsub('"', '')
|
181
190
|
payload['paper']['editor'] = "@#{editor}"
|
182
191
|
payload['paper']['reviewers'] = reviewers.collect(&:strip)
|
data/paperdraft.Dockerfile
CHANGED
@@ -1,7 +1,11 @@
|
|
1
1
|
FROM pandoc/latex:2.11.2
|
2
2
|
|
3
3
|
# Update tlmgr
|
4
|
-
RUN tlmgr
|
4
|
+
RUN tlmgr repository add ftp://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2021/tlnet-final; \
|
5
|
+
tlmgr repository list; \
|
6
|
+
tlmgr repository remove http://mirror.ctan.org/systems/texlive/tlnet; \
|
7
|
+
tlmgr option repository ftp://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2021/tlnet-final; \
|
8
|
+
tlmgr update --self
|
5
9
|
|
6
10
|
# Install additional LaTeX packages
|
7
11
|
RUN tlmgr install \
|
data/resources/crossref.template
CHANGED
@@ -7,14 +7,13 @@
|
|
7
7
|
<depositor_name>NeuroLibre Admin</depositor_name>
|
8
8
|
<email_address>roboneurolibre@gmail.com</email_address>
|
9
9
|
</depositor>
|
10
|
-
<registrant>
|
10
|
+
<registrant>Centre de Recherche de l'Institut Universitaire de Geriatrie de Montreal</registrant>
|
11
11
|
</head>
|
12
12
|
<body>
|
13
13
|
<journal>
|
14
14
|
<journal_metadata>
|
15
15
|
<full_title>$journal_name$</full_title>
|
16
16
|
<abbrev_title>$journal_abbrev_title$</abbrev_title>
|
17
|
-
<issn media_type="electronic">$journal_issn$</issn>
|
18
17
|
<doi_data>
|
19
18
|
<doi>10.55458/$journal_alias$</doi>
|
20
19
|
<resource>$journal_url$</resource>
|
@@ -58,7 +57,7 @@
|
|
58
57
|
</rel:related_item>
|
59
58
|
<rel:related_item>
|
60
59
|
<rel:description>Dataset archive</rel:description>
|
61
|
-
<rel:inter_work_relation relationship-type="hasPart" identifier-type="doi">$
|
60
|
+
<rel:inter_work_relation relationship-type="hasPart" identifier-type="doi">$data_doi$</rel:inter_work_relation>
|
62
61
|
</rel:related_item>
|
63
62
|
<rel:related_item>
|
64
63
|
<rel:description>Book archive</rel:description>
|
File without changes
|
File without changes
|
@@ -4,9 +4,9 @@ csl: /usr/local/share/openjournals/NeuroLibre/apa.csl
|
|
4
4
|
variables:
|
5
5
|
joss_resource_url: 'N/A'
|
6
6
|
journal_abbrev_title: 'NeuroLibre'
|
7
|
-
journal_alias: '
|
7
|
+
journal_alias: 'neurolibre'
|
8
8
|
journal_issn: '0000-0000'
|
9
|
-
journal_name: 'NeuroLibre
|
9
|
+
journal_name: 'NeuroLibre Reproducible Preprint Server'
|
10
10
|
journal_url: 'https://neurolibre.org/'
|
11
11
|
|
12
12
|
metadata:
|
@@ -431,29 +431,35 @@ $endif$
|
|
431
431
|
%\hrule
|
432
432
|
\sffamily\small
|
433
433
|
|
434
|
-
\
|
435
|
-
|
436
|
-
\vspace{1mm}
|
434
|
+
\vspace{-4.5cm}
|
437
435
|
|
438
436
|
{\bfseries DOI:} \href{https://doi.org/$formatted_doi$}{\color{red}{$formatted_doi$}}
|
439
437
|
|
440
438
|
\vspace{2mm}
|
441
439
|
|
442
|
-
|
440
|
+
{\bfseries Reproducible Preprint}
|
441
|
+
\begin{itemize}
|
442
|
+
\setlength\itemsep{0em}
|
443
|
+
\item \href{$book_exec_url$}{\color{red}{Jupyter Book}} \ExternalLink
|
444
|
+
\end{itemize}
|
445
|
+
|
446
|
+
\vspace{2mm}
|
447
|
+
|
448
|
+
{\bfseries Code}
|
443
449
|
\begin{itemize}
|
444
450
|
\setlength\itemsep{0em}
|
445
451
|
\item \href{$review_issue_url$}{\color{red}{Technical Screening}} \ExternalLink
|
446
|
-
\item \href{$repository$}{\color{red}{
|
452
|
+
\item \href{$repository$}{\color{red}{Submitted Repository}} \ExternalLink
|
447
453
|
\end{itemize}
|
448
454
|
|
449
455
|
\vspace{2mm}
|
450
456
|
|
451
|
-
{\bfseries
|
457
|
+
{\bfseries Archives}
|
452
458
|
\begin{itemize}
|
453
459
|
\setlength\itemsep{0em}
|
454
460
|
\item \href{$repository_doi$}{\color{red}{Repository}} \ExternalLink
|
455
461
|
\item \href{$data_doi$}{\color{red}{Dataset}} \ExternalLink
|
456
|
-
\item \href{$book_doi$}{\color{red}{
|
462
|
+
\item \href{$book_doi$}{\color{red}{Jupyter Book}} \ExternalLink
|
457
463
|
\item \href{$docker_doi$}{\color{red}{Container}} \ExternalLink
|
458
464
|
\end{itemize}
|
459
465
|
|
@@ -466,7 +472,7 @@ $endif$
|
|
466
472
|
{\bfseries Editor:} \href{$editor_url$}{\color{red}$editor_name$} \ExternalLink \\
|
467
473
|
\vspace{1mm}
|
468
474
|
$if(reviewers)$
|
469
|
-
{\bfseries
|
475
|
+
{\bfseries Reviewer(s):}
|
470
476
|
\begin{itemize}
|
471
477
|
\setlength\itemsep{0em}
|
472
478
|
$for(reviewers)$
|
Binary file
|
Binary file
|
data/spec/auditor_spec.rb
CHANGED
@@ -17,6 +17,11 @@ describe Whedon::Auditor do
|
|
17
17
|
end
|
18
18
|
|
19
19
|
it "knows how to find the archive from the issue body" do
|
20
|
-
expect(subject.verify_archive).to eql("
|
20
|
+
expect(subject.verify_archive).to eql("Repository archive: \"http://dx.doi.org/10.5281/zenodo.13750\" Data archive: \"http://dx.doi.org/10.5281/zenodo.13750\" Book archive: \"http://dx.doi.org/10.5281/zenodo.13750\" Docker archive: \"http://dx.doi.org/10.5281/zenodo.13750\"")
|
21
|
+
end
|
22
|
+
|
23
|
+
it "knows how to find the Jupyter Book from the issue body" do
|
24
|
+
expect(subject.verify_book).to eql("Jupyter Book: \"https://neurolibre.org\"")
|
21
25
|
end
|
22
26
|
end
|
27
|
+
|
data/spec/whedon_spec.rb
CHANGED
@@ -85,7 +85,7 @@ describe Whedon do
|
|
85
85
|
|
86
86
|
it "should know how to generate the deposit_payload" do
|
87
87
|
VCR.use_cassette('review') do
|
88
|
-
%w{title tags languages authors doi
|
88
|
+
%w{title tags languages authors doi repository_doi data_doi book_doi docker_doi repository_address editor reviewers}.each do |attribute|
|
89
89
|
expect(paper_with_harder_names.deposit_payload['paper'][attribute].nil?).to be_falsey
|
90
90
|
end
|
91
91
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: roboneuro
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Agah Karakuzu
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-04-
|
11
|
+
date: 2022-04-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bibtex-ruby
|
@@ -270,7 +270,6 @@ executables:
|
|
270
270
|
extensions: []
|
271
271
|
extra_rdoc_files: []
|
272
272
|
files:
|
273
|
-
- ".DS_Store"
|
274
273
|
- ".env-example"
|
275
274
|
- ".env.test"
|
276
275
|
- ".github/workflows/docker-image.yml"
|
@@ -316,14 +315,6 @@ files:
|
|
316
315
|
- lib/whedon/version.rb
|
317
316
|
- paperdraft.Dockerfile
|
318
317
|
- pkg/roboneuro-0.1.0.gem
|
319
|
-
- resources/.DS_Store
|
320
|
-
- resources/NeuroLibre/.DS_Store
|
321
|
-
- resources/NeuroLibre/aas-logo.png
|
322
|
-
- resources/NeuroLibre/apa.csl
|
323
|
-
- resources/NeuroLibre/defaults.yaml
|
324
|
-
- resources/NeuroLibre/latex.template
|
325
|
-
- resources/NeuroLibre/logo.png
|
326
|
-
- resources/NeuroLibre/logo_link.png
|
327
318
|
- resources/apa.csl
|
328
319
|
- resources/crossref.template
|
329
320
|
- resources/docker-defaults.yaml
|
@@ -340,6 +331,12 @@ files:
|
|
340
331
|
- resources/joss/latex.template
|
341
332
|
- resources/joss/logo.png
|
342
333
|
- resources/latex.template
|
334
|
+
- resources/neurolibre/aas-logo.png
|
335
|
+
- resources/neurolibre/apa.csl
|
336
|
+
- resources/neurolibre/defaults.yaml
|
337
|
+
- resources/neurolibre/latex.template
|
338
|
+
- resources/neurolibre/logo.png
|
339
|
+
- resources/neurolibre/logo_link.png
|
343
340
|
- resources/time.lua
|
344
341
|
- roboneuro.gemspec
|
345
342
|
- spec/auditor_spec.rb
|
data/.DS_Store
DELETED
Binary file
|
data/resources/.DS_Store
DELETED
Binary file
|
Binary file
|
Binary file
|
Binary file
|