stash-merritt 0.1.1 → 0.2.0
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/CHANGES.md +16 -0
- data/lib/datacite/mapping/datacite_xml_factory.rb +12 -3
- data/lib/stash/merritt/module_info.rb +1 -1
- data/lib/stash/merritt/submission_package.rb +9 -3
- data/lib/stash/merritt/submission_package/merritt_embargo_builder.rb +21 -0
- data/lib/stash/merritt/submission_package/merritt_oaidc_builder.rb +1 -1
- data/lib/stash/merritt/submission_package/stash_wrapper_builder.rb +25 -3
- data/spec/db/stash/merritt/stash_wrapper_builder_spec.rb +122 -0
- data/spec/db/stash/merritt/submission_package_spec.rb +19 -1
- data/spec/spec_helper.rb +4 -1
- data/spec/util/resource_builder.rb +29 -10
- data/stash-merritt.iml +9 -30
- data/stash-merritt.ipr +1 -4
- metadata +7 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5a9f21e983f6370ae339bdcfadca7601534a8787
|
4
|
+
data.tar.gz: 25c675e53a7874c8b1f3f38044081239fccded2a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5a8ebb8cea13816dc6f7e8bbfdccd0ec6aec5514d4a42bb713cca6241bb8b73f1fe781b92868493415c0a6a22403269916e90429823f9ed9551d16b97e2e8d76
|
7
|
+
data.tar.gz: cd6adbe992b4d4a4d7b344544d977d1f769f4cba981323fa5830e8f51965da691f12c647084440ca046d629555755a89209628ea2eb6b9af925f2f80d219e174
|
data/CHANGES.md
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
## 0.2.0 (6 April 2017)
|
2
|
+
|
3
|
+
- add support for embargoes in `stash-wrapper.xml` and `mrt-embargo.txt`
|
4
|
+
- update to reflect new DB schema with StashEngine::Author replacing
|
5
|
+
StashDatacite::Creator
|
6
|
+
|
7
|
+
## 0.1.1 (23 February 2017)
|
8
|
+
|
9
|
+
- fix issue where uploads from previous versions would be re-added to zipfiles
|
10
|
+
for later versions
|
11
|
+
- fix issue where missing file uploads would not be logged / reported correctly
|
12
|
+
due to incorrect initialization of ArgumentError
|
13
|
+
|
14
|
+
## 0.1.0 (3 February 2017)
|
15
|
+
|
16
|
+
- initial release
|
@@ -27,10 +27,10 @@ module Datacite
|
|
27
27
|
|
28
28
|
dcs_resource = Resource.new(
|
29
29
|
identifier: Identifier.from_doi(doi_value),
|
30
|
-
creators: se_resource.
|
30
|
+
creators: se_resource.authors.map do |c|
|
31
31
|
Creator.new(
|
32
|
-
name: c.
|
33
|
-
identifier:
|
32
|
+
name: c.author_full_name,
|
33
|
+
identifier: dcs_identifier_from(c.author_orcid),
|
34
34
|
affiliations: c.affiliations.map(&:smart_name)
|
35
35
|
)
|
36
36
|
end,
|
@@ -184,6 +184,15 @@ module Datacite
|
|
184
184
|
Description.new(type: DescriptionType::OTHER, value: desc_text)
|
185
185
|
end
|
186
186
|
|
187
|
+
def dcs_identifier_from(author_orcid)
|
188
|
+
return unless author_orcid && !author_orcid.empty?
|
189
|
+
NameIdentifier.new(
|
190
|
+
scheme: 'ORCID',
|
191
|
+
scheme_uri: 'http://orcid.org/',
|
192
|
+
value: author_orcid
|
193
|
+
)
|
194
|
+
end
|
195
|
+
|
187
196
|
def to_dcs_identifier(sd_name_ident)
|
188
197
|
return unless sd_name_ident
|
189
198
|
sd_scheme_uri = sd_name_ident.scheme_URI
|
@@ -9,6 +9,7 @@ require 'stash/merritt/submission_package/merritt_datacite_builder'
|
|
9
9
|
require 'stash/merritt/submission_package/merritt_delete_builder'
|
10
10
|
require 'stash/merritt/submission_package/merritt_oaidc_builder'
|
11
11
|
require 'stash/merritt/submission_package/stash_wrapper_builder'
|
12
|
+
require 'stash/merritt/submission_package/merritt_embargo_builder'
|
12
13
|
|
13
14
|
module Stash
|
14
15
|
module Merritt
|
@@ -67,13 +68,14 @@ module Stash
|
|
67
68
|
zipfile.add(upload.upload_file_name, path)
|
68
69
|
end
|
69
70
|
|
70
|
-
def builders
|
71
|
+
def builders # rubocop:disable Metrics/AbcSize
|
71
72
|
@builders ||= [
|
72
|
-
StashWrapperBuilder.new(dcs_resource: dc4_resource, version_number: version_number, uploads: uploads),
|
73
|
+
StashWrapperBuilder.new(dcs_resource: dc4_resource, version_number: version_number, uploads: uploads, embargo_end_date: embargo_end_date),
|
73
74
|
MerrittDataciteBuilder.new(datacite_xml_factory),
|
74
75
|
MerrittOAIDCBuilder.new(resource_id: resource_id),
|
75
76
|
DataONEManifestBuilder.new(uploads),
|
76
|
-
MerrittDeleteBuilder.new(resource_id: resource_id)
|
77
|
+
MerrittDeleteBuilder.new(resource_id: resource_id),
|
78
|
+
MerrittEmbargoBuilder.new(embargo_end_date: embargo_end_date)
|
77
79
|
]
|
78
80
|
end
|
79
81
|
|
@@ -89,6 +91,10 @@ module Stash
|
|
89
91
|
resource.current_file_uploads
|
90
92
|
end
|
91
93
|
|
94
|
+
def embargo_end_date
|
95
|
+
@embargo_end_date ||= (embargo = resource.embargo) && embargo.end_date
|
96
|
+
end
|
97
|
+
|
92
98
|
def new_uploads
|
93
99
|
resource.new_file_uploads
|
94
100
|
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'stash/repo/file_builder'
|
2
|
+
|
3
|
+
module Stash
|
4
|
+
module Merritt
|
5
|
+
class SubmissionPackage
|
6
|
+
class MerrittEmbargoBuilder < Stash::Repo::FileBuilder
|
7
|
+
attr_reader :embargo_end_date
|
8
|
+
|
9
|
+
def initialize(embargo_end_date:)
|
10
|
+
super(file_name: 'mrt-embargo.txt')
|
11
|
+
@embargo_end_date = embargo_end_date
|
12
|
+
end
|
13
|
+
|
14
|
+
def contents
|
15
|
+
end_date_str = (embargo_end_date && embargo_end_date.iso8601)
|
16
|
+
"embargoEndDate:#{end_date_str || 'none'}"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -55,7 +55,7 @@ module Stash
|
|
55
55
|
end
|
56
56
|
|
57
57
|
def add_creators(xml)
|
58
|
-
resource.
|
58
|
+
resource.authors.each { |c| xml.send(:'dc:creator', c.author_full_name.delete("\r").to_s) }
|
59
59
|
end
|
60
60
|
|
61
61
|
def add_pub_year(xml)
|
@@ -9,26 +9,48 @@ module Stash
|
|
9
9
|
attr_reader :dcs_resource
|
10
10
|
attr_reader :uploads
|
11
11
|
attr_reader :version_number
|
12
|
+
attr_reader :embargo_end_date
|
12
13
|
|
13
|
-
def initialize(dcs_resource:, version_number:, uploads:)
|
14
|
+
def initialize(dcs_resource:, version_number:, uploads:, embargo_end_date:)
|
14
15
|
super(file_name: 'stash-wrapper.xml')
|
15
16
|
@dcs_resource = dcs_resource
|
16
17
|
@version_number = version_number
|
17
18
|
@uploads = uploads
|
19
|
+
@embargo_end_date = date_or_nil(embargo_end_date)
|
18
20
|
end
|
19
21
|
|
20
|
-
def contents
|
22
|
+
def contents # rubocop:disable Metrics/AbcSize
|
21
23
|
StashWrapper.new(
|
22
24
|
identifier: to_sw_identifier(dcs_resource.identifier),
|
23
25
|
version: Version.new(number: version_number, date: Date.today),
|
24
26
|
license: to_sw_license(dcs_resource.rights_list),
|
25
27
|
inventory: to_sw_inventory(uploads),
|
26
|
-
descriptive_elements: [dcs_resource.save_to_xml]
|
28
|
+
descriptive_elements: [dcs_resource.save_to_xml],
|
29
|
+
embargo: to_sw_embargo(embargo_end_date)
|
27
30
|
).write_xml
|
28
31
|
end
|
29
32
|
|
30
33
|
private
|
31
34
|
|
35
|
+
def date_or_nil(embargo_end_date)
|
36
|
+
return unless embargo_end_date
|
37
|
+
return embargo_end_date if embargo_end_date.is_a?(Date)
|
38
|
+
return embargo_end_date.utc.to_date if embargo_end_date.respond_to?(:utc)
|
39
|
+
raise ArgumentError, "Specified end date #{embargo_end_date} does not appear to be a date or time"
|
40
|
+
end
|
41
|
+
|
42
|
+
def to_sw_embargo(embargo_end_date)
|
43
|
+
return unless embargo_end_date
|
44
|
+
start_date = default_start_date(embargo_end_date)
|
45
|
+
Embargo.new(type: EmbargoType::DOWNLOAD, period: EmbargoType::NONE.value, start_date: start_date, end_date: embargo_end_date)
|
46
|
+
end
|
47
|
+
|
48
|
+
def default_start_date(embargo_end_date)
|
49
|
+
start_date = Date.today
|
50
|
+
return start_date if start_date < embargo_end_date
|
51
|
+
embargo_end_date
|
52
|
+
end
|
53
|
+
|
32
54
|
def to_sw_identifier(dcs_identifier)
|
33
55
|
return unless dcs_identifier
|
34
56
|
raise "Invalid identifier type; expected DOI, was #{dcs_identifier.identifier_type}" unless dcs_identifier.identifier_type == 'DOI'
|
@@ -0,0 +1,122 @@
|
|
1
|
+
require 'db_spec_helper'
|
2
|
+
|
3
|
+
module Stash
|
4
|
+
module Merritt
|
5
|
+
class SubmissionPackage
|
6
|
+
describe StashWrapperBuilder do
|
7
|
+
attr_reader :dc4_resource
|
8
|
+
|
9
|
+
before(:each) do
|
10
|
+
tmp_wrapper_xml = File.read('spec/data/archive/stash-wrapper.xml')
|
11
|
+
tmp_wrapper = Stash::Wrapper::StashWrapper.parse_xml(tmp_wrapper_xml)
|
12
|
+
dc4_xml = tmp_wrapper.stash_descriptive[0]
|
13
|
+
@dc4_resource = Datacite::Mapping::Resource.parse_xml(dc4_xml)
|
14
|
+
end
|
15
|
+
|
16
|
+
describe 'embargo' do
|
17
|
+
it 'defaults to NONE' do
|
18
|
+
builder = StashWrapperBuilder.new(
|
19
|
+
dcs_resource: dc4_resource,
|
20
|
+
version_number: 1,
|
21
|
+
uploads: [],
|
22
|
+
embargo_end_date: nil
|
23
|
+
)
|
24
|
+
wrapper_xml = builder.contents
|
25
|
+
wrapper = Stash::Wrapper::StashWrapper.parse_xml(wrapper_xml)
|
26
|
+
embargo = wrapper.embargo
|
27
|
+
|
28
|
+
none = Stash::Wrapper::Embargo.none
|
29
|
+
[:type, :period, :start_date, :end_date].each do |field|
|
30
|
+
expect(embargo.send(field)).to eq(none.send(field))
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'accepts an end date' do
|
35
|
+
embargo_end_date = Date.new(1952, 2, 6)
|
36
|
+
|
37
|
+
builder = StashWrapperBuilder.new(
|
38
|
+
dcs_resource: dc4_resource,
|
39
|
+
version_number: 1,
|
40
|
+
uploads: [],
|
41
|
+
embargo_end_date: embargo_end_date
|
42
|
+
)
|
43
|
+
wrapper_xml = builder.contents
|
44
|
+
wrapper = Stash::Wrapper::StashWrapper.parse_xml(wrapper_xml)
|
45
|
+
embargo = wrapper.embargo
|
46
|
+
|
47
|
+
expect(embargo.type).to eq(Stash::Wrapper::EmbargoType::DOWNLOAD)
|
48
|
+
expect(embargo.end_date).to eq(embargo_end_date)
|
49
|
+
expect(embargo.start_date).to be <= embargo.end_date
|
50
|
+
end
|
51
|
+
|
52
|
+
it 'accepts a non-UTC end date' do
|
53
|
+
embargo_end_date = Date.new(2122, 2, 6)
|
54
|
+
|
55
|
+
builder = StashWrapperBuilder.new(
|
56
|
+
dcs_resource: dc4_resource,
|
57
|
+
version_number: 1,
|
58
|
+
uploads: [],
|
59
|
+
embargo_end_date: embargo_end_date
|
60
|
+
)
|
61
|
+
wrapper_xml = builder.contents
|
62
|
+
wrapper = Stash::Wrapper::StashWrapper.parse_xml(wrapper_xml)
|
63
|
+
embargo = wrapper.embargo
|
64
|
+
|
65
|
+
expect(embargo.type).to eq(Stash::Wrapper::EmbargoType::DOWNLOAD)
|
66
|
+
expect(embargo.end_date).to eq(embargo_end_date)
|
67
|
+
expect(embargo.start_date).to be <= embargo.end_date
|
68
|
+
end
|
69
|
+
|
70
|
+
it 'accepts a UTC time' do
|
71
|
+
embargo_end_time = Time.now.utc
|
72
|
+
expected_end_date = embargo_end_time.to_date
|
73
|
+
|
74
|
+
builder = StashWrapperBuilder.new(
|
75
|
+
dcs_resource: dc4_resource,
|
76
|
+
version_number: 1,
|
77
|
+
uploads: [],
|
78
|
+
embargo_end_date: embargo_end_time
|
79
|
+
)
|
80
|
+
wrapper_xml = builder.contents
|
81
|
+
wrapper = Stash::Wrapper::StashWrapper.parse_xml(wrapper_xml)
|
82
|
+
embargo = wrapper.embargo
|
83
|
+
|
84
|
+
expect(embargo.type).to eq(Stash::Wrapper::EmbargoType::DOWNLOAD)
|
85
|
+
expect(embargo.end_date).to eq(expected_end_date)
|
86
|
+
expect(embargo.start_date).to be <= embargo.end_date
|
87
|
+
end
|
88
|
+
|
89
|
+
it 'converts a non-UTC time to UTC date' do
|
90
|
+
embargo_end_time = Time.new(2020, 1, 1, 0, 0, 1, '+12:45')
|
91
|
+
expected_end_date = Date.new(2019, 12, 31)
|
92
|
+
|
93
|
+
builder = StashWrapperBuilder.new(
|
94
|
+
dcs_resource: dc4_resource,
|
95
|
+
version_number: 1,
|
96
|
+
uploads: [],
|
97
|
+
embargo_end_date: embargo_end_time
|
98
|
+
)
|
99
|
+
wrapper_xml = builder.contents
|
100
|
+
wrapper = Stash::Wrapper::StashWrapper.parse_xml(wrapper_xml)
|
101
|
+
embargo = wrapper.embargo
|
102
|
+
|
103
|
+
expect(embargo.type).to eq(Stash::Wrapper::EmbargoType::DOWNLOAD)
|
104
|
+
expect(embargo.end_date).to eq(expected_end_date)
|
105
|
+
expect(embargo.start_date).to be <= embargo.end_date
|
106
|
+
end
|
107
|
+
|
108
|
+
it 'rejects a non-date' do
|
109
|
+
expect do
|
110
|
+
StashWrapperBuilder.new(
|
111
|
+
dcs_resource: dc4_resource,
|
112
|
+
version_number: 1,
|
113
|
+
uploads: [],
|
114
|
+
embargo_end_date: Time.now.xmlschema
|
115
|
+
)
|
116
|
+
end.to raise_error(ArgumentError)
|
117
|
+
end
|
118
|
+
end
|
119
|
+
end
|
120
|
+
end
|
121
|
+
end
|
122
|
+
end
|
@@ -120,7 +120,7 @@ module Stash
|
|
120
120
|
end
|
121
121
|
end
|
122
122
|
|
123
|
-
it 'includes a delete list' do
|
123
|
+
it 'includes a delete list if needed' do
|
124
124
|
deleted = []
|
125
125
|
resource.file_uploads.each_with_index do |upload, index|
|
126
126
|
next unless index.even?
|
@@ -136,6 +136,24 @@ module Stash
|
|
136
136
|
expect(mrt_delete).to include(filename)
|
137
137
|
end
|
138
138
|
end
|
139
|
+
|
140
|
+
describe 'mrt-embargo.txt' do
|
141
|
+
it 'includes the embargo end date if present' do
|
142
|
+
end_date = Time.new(2020, 1, 1, 0, 0, 1, '+12:45')
|
143
|
+
resource.embargo = StashEngine::Embargo.new(end_date: end_date)
|
144
|
+
package = SubmissionPackage.new(resource: resource)
|
145
|
+
@zipfile_path = package.zipfile
|
146
|
+
mrt_embargo = zip_entry('mrt-embargo.txt')
|
147
|
+
expect(mrt_embargo.strip).to eq('embargoEndDate:2019-12-31T11:15:01Z')
|
148
|
+
end
|
149
|
+
|
150
|
+
it 'sets end date to none if no end date present' do
|
151
|
+
package = SubmissionPackage.new(resource: resource)
|
152
|
+
@zipfile_path = package.zipfile
|
153
|
+
mrt_embargo = zip_entry('mrt-embargo.txt')
|
154
|
+
expect(mrt_embargo.strip).to eq('embargoEndDate:none')
|
155
|
+
end
|
156
|
+
end
|
139
157
|
end
|
140
158
|
|
141
159
|
describe :dc3_xml do
|
data/spec/spec_helper.rb
CHANGED
@@ -43,6 +43,7 @@ ENV['RAILS_ENV'] = 'test'
|
|
43
43
|
|
44
44
|
stash_engine_path = Gem::Specification.find_by_name('stash_engine').gem_dir
|
45
45
|
require "#{stash_engine_path}/config/initializers/hash_to_ostruct.rb"
|
46
|
+
require "#{stash_engine_path}/config/initializers/inflections.rb"
|
46
47
|
|
47
48
|
require 'stash_engine'
|
48
49
|
|
@@ -56,6 +57,8 @@ require 'stash_engine'
|
|
56
57
|
Dir.glob("#{stash_engine_path}/#{dir}/**/*.rb").sort.each(&method(:require))
|
57
58
|
end
|
58
59
|
|
60
|
+
$LOAD_PATH.unshift("#{stash_engine_path}/app/models")
|
61
|
+
|
59
62
|
# ------------------------------------------------------------
|
60
63
|
# StashDatacite
|
61
64
|
|
@@ -75,8 +78,8 @@ stash_datacite_path = Gem::Specification.find_by_name('stash_datacite').gem_dir
|
|
75
78
|
).each do |dir|
|
76
79
|
Dir.glob("#{stash_datacite_path}/#{dir}/**/*.rb").sort.each(&method(:require))
|
77
80
|
end
|
78
|
-
|
79
81
|
StashDatacite::ResourcePatch.associate_with_resource(StashEngine::Resource)
|
82
|
+
require "#{stash_datacite_path}/config/initializers/patches.rb"
|
80
83
|
|
81
84
|
require 'util/resource_builder'
|
82
85
|
|
@@ -1,8 +1,10 @@
|
|
1
|
+
require 'db_spec_helper'
|
2
|
+
|
1
3
|
require 'datacite/mapping'
|
2
4
|
require 'stash/wrapper'
|
3
5
|
require 'time'
|
4
6
|
|
5
|
-
#
|
7
|
+
# Borrowed from stash_migrator
|
6
8
|
module StashDatacite
|
7
9
|
class ResourceBuilder # rubocop:disable Metrics/ClassLength
|
8
10
|
DESCRIPTION_TYPE = Datacite::Mapping::DescriptionType
|
@@ -28,7 +30,7 @@ module StashDatacite
|
|
28
30
|
def self.stash_files(stash_files)
|
29
31
|
return stash_files if stash_files.all? do |file|
|
30
32
|
file.is_a?(Stash::Wrapper::StashFile) ||
|
31
|
-
|
33
|
+
file.to_s =~ /InstanceDouble\(Stash::Wrapper::StashFile\)/ # For RSpec tests
|
32
34
|
end
|
33
35
|
raise ArgumentError, "stash_files does not appear to be an array of Stash::Wrapper::StashFile objects: #{stash_files || 'nil'}"
|
34
36
|
end
|
@@ -50,7 +52,7 @@ module StashDatacite
|
|
50
52
|
def populate_se_resource! # rubocop:disable Metrics/AbcSize
|
51
53
|
set_sd_identifier(dcs_resource.identifier)
|
52
54
|
stash_files.each { |stash_file| add_stash_file(stash_file) }
|
53
|
-
dcs_resource.creators.each { |dcs_creator|
|
55
|
+
dcs_resource.creators.each { |dcs_creator| add_se_author(dcs_creator) }
|
54
56
|
dcs_resource.titles.each { |dcs_title| add_sd_title(dcs_title) }
|
55
57
|
set_sd_publisher(dcs_resource.publisher)
|
56
58
|
set_sd_pubyear(dcs_resource.publication_year)
|
@@ -91,16 +93,17 @@ module StashDatacite
|
|
91
93
|
)
|
92
94
|
end
|
93
95
|
|
94
|
-
def
|
96
|
+
def add_se_author(dcs_creator)
|
95
97
|
last_name, first_name = extract_last_first(dcs_creator.name)
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
98
|
+
se_author = StashEngine::Author.create(
|
99
|
+
author_first_name: first_name,
|
100
|
+
author_last_name: last_name,
|
101
|
+
author_email: email_from(dcs_creator.identifier),
|
102
|
+
author_orcid: orcid_from(dcs_creator.identifier),
|
100
103
|
resource_id: se_resource_id
|
101
104
|
)
|
102
|
-
|
103
|
-
|
105
|
+
se_author.affiliation_ids = dcs_creator.affiliations.map { |affiliation_str| sd_affiliation_id_for(affiliation_str) }
|
106
|
+
se_author
|
104
107
|
end
|
105
108
|
|
106
109
|
def add_sd_title(dcs_title)
|
@@ -308,6 +311,22 @@ module StashDatacite
|
|
308
311
|
StashDatacite::Affiliation.create(long_name: affiliation_str).id unless affiliation_str.blank?
|
309
312
|
end
|
310
313
|
|
314
|
+
def email_from(dcs_name_identifier)
|
315
|
+
return unless dcs_name_identifier
|
316
|
+
return unless 'email' == dcs_name_identifier.scheme
|
317
|
+
value = dcs_name_identifier.value
|
318
|
+
return unless value
|
319
|
+
value.to_s.strip.sub('mailto:', '')
|
320
|
+
end
|
321
|
+
|
322
|
+
def orcid_from(dcs_name_identifier)
|
323
|
+
return unless dcs_name_identifier
|
324
|
+
return unless 'ORCID' == dcs_name_identifier.scheme
|
325
|
+
value = dcs_name_identifier.value
|
326
|
+
return unless value
|
327
|
+
value.to_s.strip
|
328
|
+
end
|
329
|
+
|
311
330
|
def sd_name_identifier_id_for(dcs_name_identifier)
|
312
331
|
return nil unless dcs_name_identifier
|
313
332
|
scheme_uri = dcs_name_identifier.scheme_uri
|
data/stash-merritt.iml
CHANGED
@@ -7,29 +7,6 @@
|
|
7
7
|
<content url="file://$MODULE_DIR$/../stash_engines/stash_engine" />
|
8
8
|
<orderEntry type="jdk" jdkName="ruby-2.2.5-p319" jdkType="RUBY_SDK" />
|
9
9
|
<orderEntry type="sourceFolder" forTests="false" />
|
10
|
-
<orderEntry type="module-library">
|
11
|
-
<library name="stash_datacite (v0.0.5) [path][gem]">
|
12
|
-
<CLASSES>
|
13
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/db" />
|
14
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/app" />
|
15
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/bin" />
|
16
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/lib" />
|
17
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/tmp" />
|
18
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/config" />
|
19
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/coverage" />
|
20
|
-
</CLASSES>
|
21
|
-
<JAVADOC />
|
22
|
-
<SOURCES>
|
23
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/db" />
|
24
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/app" />
|
25
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/bin" />
|
26
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/lib" />
|
27
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/tmp" />
|
28
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/config" />
|
29
|
-
<root url="file://$MODULE_DIR$/../stash_engines/stash_datacite/coverage" />
|
30
|
-
</SOURCES>
|
31
|
-
</library>
|
32
|
-
</orderEntry>
|
33
10
|
<orderEntry type="library" scope="PROVIDED" name="actionmailer (v4.2.7.1, ruby-2.2.5-p319) [gem]" level="application" />
|
34
11
|
<orderEntry type="library" scope="PROVIDED" name="actionpack (v4.2.7.1, ruby-2.2.5-p319) [gem]" level="application" />
|
35
12
|
<orderEntry type="library" scope="PROVIDED" name="actionview (v4.2.7.1, ruby-2.2.5-p319) [gem]" level="application" />
|
@@ -42,7 +19,7 @@
|
|
42
19
|
<orderEntry type="library" scope="PROVIDED" name="arel (v6.0.4, ruby-2.2.5-p319) [gem]" level="application" />
|
43
20
|
<orderEntry type="library" scope="PROVIDED" name="ast (v2.3.0, ruby-2.2.5-p319) [gem]" level="application" />
|
44
21
|
<orderEntry type="library" scope="PROVIDED" name="builder (v3.2.3, ruby-2.2.5-p319) [gem]" level="application" />
|
45
|
-
<orderEntry type="library" scope="PROVIDED" name="bundler (v1.14.
|
22
|
+
<orderEntry type="library" scope="PROVIDED" name="bundler (v1.14.6, ruby-2.2.5-p319) [gem]" level="application" />
|
46
23
|
<orderEntry type="library" scope="PROVIDED" name="carrierwave (v0.10.0, ruby-2.2.5-p319) [gem]" level="application" />
|
47
24
|
<orderEntry type="library" scope="PROVIDED" name="colorize (v0.8.1, ruby-2.2.5-p319) [gem]" level="application" />
|
48
25
|
<orderEntry type="library" scope="PROVIDED" name="concurrent-ruby (v1.0.4, ruby-2.2.5-p319) [gem]" level="application" />
|
@@ -50,13 +27,13 @@
|
|
50
27
|
<orderEntry type="library" scope="PROVIDED" name="database_cleaner (v1.5.3, ruby-2.2.5-p319) [gem]" level="application" />
|
51
28
|
<orderEntry type="library" scope="PROVIDED" name="datacite-mapping (v0.2.5, ruby-2.2.5-p319) [gem]" level="application" />
|
52
29
|
<orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.3, ruby-2.2.5-p319) [gem]" level="application" />
|
53
|
-
<orderEntry type="library" scope="PROVIDED" name="diffy (v3.
|
30
|
+
<orderEntry type="library" scope="PROVIDED" name="diffy (v3.2.0, ruby-2.2.5-p319) [gem]" level="application" />
|
54
31
|
<orderEntry type="library" scope="PROVIDED" name="docile (v1.1.5, ruby-2.2.5-p319) [gem]" level="application" />
|
55
|
-
<orderEntry type="library" scope="PROVIDED" name="domain_name (v0.5.
|
32
|
+
<orderEntry type="library" scope="PROVIDED" name="domain_name (v0.5.20170223, ruby-2.2.5-p319) [gem]" level="application" />
|
56
33
|
<orderEntry type="library" scope="PROVIDED" name="equivalent-xml (v0.6.0, ruby-2.2.5-p319) [gem]" level="application" />
|
57
34
|
<orderEntry type="library" scope="PROVIDED" name="erubis (v2.7.0, ruby-2.2.5-p319) [gem]" level="application" />
|
58
35
|
<orderEntry type="library" scope="PROVIDED" name="ezid-client (v1.5.0, ruby-2.2.5-p319) [gem]" level="application" />
|
59
|
-
<orderEntry type="library" scope="PROVIDED" name="faraday (v0.
|
36
|
+
<orderEntry type="library" scope="PROVIDED" name="faraday (v0.11.0, ruby-2.2.5-p319) [gem]" level="application" />
|
60
37
|
<orderEntry type="library" scope="PROVIDED" name="filesize (v0.1.1, ruby-2.2.5-p319) [gem]" level="application" />
|
61
38
|
<orderEntry type="library" scope="PROVIDED" name="font-awesome-rails (v4.7.0.1, ruby-2.2.5-p319) [gem]" level="application" />
|
62
39
|
<orderEntry type="library" scope="PROVIDED" name="globalid (v0.3.7, ruby-2.2.5-p319) [gem]" level="application" />
|
@@ -64,6 +41,7 @@
|
|
64
41
|
<orderEntry type="library" scope="PROVIDED" name="hashie (v3.5.1, ruby-2.2.5-p319) [gem]" level="application" />
|
65
42
|
<orderEntry type="library" scope="PROVIDED" name="hirb (v0.7.3, ruby-2.2.5-p319) [gem]" level="application" />
|
66
43
|
<orderEntry type="library" scope="PROVIDED" name="http-cookie (v1.0.3, ruby-2.2.5-p319) [gem]" level="application" />
|
44
|
+
<orderEntry type="library" scope="PROVIDED" name="httpclient (v2.8.3, ruby-2.2.5-p319) [gem]" level="application" />
|
67
45
|
<orderEntry type="library" scope="PROVIDED" name="i18n (v0.8.0, ruby-2.2.5-p319) [gem]" level="application" />
|
68
46
|
<orderEntry type="library" scope="PROVIDED" name="jquery-fileupload-rails (v0.4.7, ruby-2.2.5-p319) [gem]" level="application" />
|
69
47
|
<orderEntry type="library" scope="PROVIDED" name="jquery-rails (v4.2.2, ruby-2.2.5-p319) [gem]" level="application" />
|
@@ -87,7 +65,7 @@
|
|
87
65
|
<orderEntry type="library" scope="PROVIDED" name="mysql2 (v0.4.5, ruby-2.2.5-p319) [gem]" level="application" />
|
88
66
|
<orderEntry type="library" scope="PROVIDED" name="netrc (v0.11.0, ruby-2.2.5-p319) [gem]" level="application" />
|
89
67
|
<orderEntry type="library" scope="PROVIDED" name="nokogiri (v1.7.0.1, ruby-2.2.5-p319) [gem]" level="application" />
|
90
|
-
<orderEntry type="library" scope="PROVIDED" name="oauth2 (v1.3.
|
68
|
+
<orderEntry type="library" scope="PROVIDED" name="oauth2 (v1.3.1, ruby-2.2.5-p319) [gem]" level="application" />
|
91
69
|
<orderEntry type="library" scope="PROVIDED" name="omniauth (v1.2.2, ruby-2.2.5-p319) [gem]" level="application" />
|
92
70
|
<orderEntry type="library" scope="PROVIDED" name="omniauth-google-oauth2 (v0.2.10, ruby-2.2.5-p319) [gem]" level="application" />
|
93
71
|
<orderEntry type="library" scope="PROVIDED" name="omniauth-oauth2 (v1.3.1, ruby-2.2.5-p319) [gem]" level="application" />
|
@@ -113,7 +91,7 @@
|
|
113
91
|
<orderEntry type="library" scope="PROVIDED" name="rspec-expectations (v3.5.0, ruby-2.2.5-p319) [gem]" level="application" />
|
114
92
|
<orderEntry type="library" scope="PROVIDED" name="rspec-mocks (v3.5.0, ruby-2.2.5-p319) [gem]" level="application" />
|
115
93
|
<orderEntry type="library" scope="PROVIDED" name="rspec-support (v3.5.0, ruby-2.2.5-p319) [gem]" level="application" />
|
116
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop (v0.
|
94
|
+
<orderEntry type="library" scope="PROVIDED" name="rubocop (v0.48.1, ruby-2.2.5-p319) [gem]" level="application" />
|
117
95
|
<orderEntry type="library" scope="PROVIDED" name="ruby-progressbar (v1.8.1, ruby-2.2.5-p319) [gem]" level="application" />
|
118
96
|
<orderEntry type="library" scope="PROVIDED" name="rubyzip (v1.2.1, ruby-2.2.5-p319) [gem]" level="application" />
|
119
97
|
<orderEntry type="library" scope="PROVIDED" name="safe_yaml (v1.0.4, ruby-2.2.5-p319) [gem]" level="application" />
|
@@ -123,7 +101,7 @@
|
|
123
101
|
<orderEntry type="library" scope="PROVIDED" name="simplecov-html (v0.9.0, ruby-2.2.5-p319) [gem]" level="application" />
|
124
102
|
<orderEntry type="library" scope="PROVIDED" name="sprockets (v3.7.1, ruby-2.2.5-p319) [gem]" level="application" />
|
125
103
|
<orderEntry type="library" scope="PROVIDED" name="sprockets-rails (v3.2.0, ruby-2.2.5-p319) [gem]" level="application" />
|
126
|
-
<orderEntry type="library" scope="PROVIDED" name="stash-sword (v0.1.
|
104
|
+
<orderEntry type="library" scope="PROVIDED" name="stash-sword (v0.1.6, ruby-2.2.5-p319) [gem]" level="application" />
|
127
105
|
<orderEntry type="library" scope="PROVIDED" name="stash-wrapper (v0.1.11.1, ruby-2.2.5-p319) [gem]" level="application" />
|
128
106
|
<orderEntry type="library" scope="PROVIDED" name="stash_ezid_datacite (v0.1.5, ruby-2.2.5-p319) [gem]" level="application" />
|
129
107
|
<orderEntry type="library" scope="PROVIDED" name="thor (v0.19.4, ruby-2.2.5-p319) [gem]" level="application" />
|
@@ -141,6 +119,7 @@
|
|
141
119
|
<orderEntry type="library" scope="PROVIDED" name="xml-mapping (v0.10.0, ruby-2.2.5-p319) [gem]" level="application" />
|
142
120
|
<orderEntry type="library" scope="PROVIDED" name="xml-mapping_extensions (v0.4.7, ruby-2.2.5-p319) [gem]" level="application" />
|
143
121
|
<orderEntry type="library" scope="PROVIDED" name="yard (v0.9.8, ruby-2.2.5-p319) [gem]" level="application" />
|
122
|
+
<orderEntry type="library" scope="PROVIDED" name="zeroclipboard-rails (v0.1.2, ruby-2.2.5-p319) [gem]" level="application" />
|
144
123
|
</component>
|
145
124
|
<component name="RModuleSettingsStorage">
|
146
125
|
<LOAD_PATH number="2" string0="$MODULE_DIR$/lib" string1="$MODULE_DIR$/spec" />
|
data/stash-merritt.ipr
CHANGED
@@ -52,10 +52,7 @@
|
|
52
52
|
<component name="InspectionProjectProfileManager">
|
53
53
|
<profile version="1.0">
|
54
54
|
<option name="myName" value="Project Default" />
|
55
|
-
<inspection_tool class="
|
56
|
-
<option name="loggerClassName" value="org.apache.log4j.Logger,org.slf4j.LoggerFactory,org.apache.commons.logging.LogFactory,java.util.logging.Logger" />
|
57
|
-
<option name="loggerFactoryMethodName" value="getLogger,getLogger,getLog,getLogger" />
|
58
|
-
</inspection_tool>
|
55
|
+
<inspection_tool class="Rubocop" enabled="false" level="WARNING" enabled_by_default="false" />
|
59
56
|
<inspection_tool class="RubyClassVariableUsageInspection" enabled="false" level="WARNING" enabled_by_default="false" />
|
60
57
|
<inspection_tool class="RubyQuotedStringsInspection" enabled="true" level="WARNING" enabled_by_default="true" />
|
61
58
|
<inspection_tool class="RubyResolve" enabled="true" level="WEAK WARNING" enabled_by_default="true">
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stash-merritt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Moles
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-04-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubyzip
|
@@ -245,6 +245,7 @@ files:
|
|
245
245
|
- ".rubocop.yml"
|
246
246
|
- ".ruby-version"
|
247
247
|
- ".travis.yml"
|
248
|
+
- CHANGES.md
|
248
249
|
- Gemfile
|
249
250
|
- LICENSE.md
|
250
251
|
- README.md
|
@@ -260,6 +261,7 @@ files:
|
|
260
261
|
- lib/stash/merritt/submission_package/data_one_manifest_builder.rb
|
261
262
|
- lib/stash/merritt/submission_package/merritt_datacite_builder.rb
|
262
263
|
- lib/stash/merritt/submission_package/merritt_delete_builder.rb
|
264
|
+
- lib/stash/merritt/submission_package/merritt_embargo_builder.rb
|
263
265
|
- lib/stash/merritt/submission_package/merritt_oaidc_builder.rb
|
264
266
|
- lib/stash/merritt/submission_package/stash_wrapper_builder.rb
|
265
267
|
- lib/stash/merritt/sword_helper.rb
|
@@ -275,6 +277,7 @@ files:
|
|
275
277
|
- spec/data/dc4-with-funding-references.xml
|
276
278
|
- spec/db/datacite/mapping/datacite_xml_factory_spec.rb
|
277
279
|
- spec/db/stash/merritt/merritt_oaidc_builder_spec.rb
|
280
|
+
- spec/db/stash/merritt/stash_wrapper_builder_spec.rb
|
278
281
|
- spec/db/stash/merritt/submission_package_spec.rb
|
279
282
|
- spec/db/stash/merritt/sword_helper_spec.rb
|
280
283
|
- spec/db_spec_helper.rb
|
@@ -288,7 +291,7 @@ files:
|
|
288
291
|
- stash-merritt.iml
|
289
292
|
- stash-merritt.ipr
|
290
293
|
- travis-local-deps.sh
|
291
|
-
homepage: http://github.com/
|
294
|
+
homepage: http://github.com/stash-merritt
|
292
295
|
licenses:
|
293
296
|
- MIT
|
294
297
|
metadata: {}
|
@@ -325,6 +328,7 @@ test_files:
|
|
325
328
|
- spec/data/dc4-with-funding-references.xml
|
326
329
|
- spec/db/datacite/mapping/datacite_xml_factory_spec.rb
|
327
330
|
- spec/db/stash/merritt/merritt_oaidc_builder_spec.rb
|
331
|
+
- spec/db/stash/merritt/stash_wrapper_builder_spec.rb
|
328
332
|
- spec/db/stash/merritt/submission_package_spec.rb
|
329
333
|
- spec/db/stash/merritt/sword_helper_spec.rb
|
330
334
|
- spec/db_spec_helper.rb
|