resync 0.3.4 → 0.4.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 +5 -0
- data/README.md +1 -1
- data/lib/resync/metadata.rb +1 -1
- data/lib/resync/resource.rb +1 -1
- data/lib/resync/types/change.rb +3 -7
- data/lib/resync/types/change_frequency.rb +3 -11
- data/lib/resync/version.rb +1 -1
- data/lib/resync/xml.rb +0 -20
- data/resync.gemspec +2 -2
- metadata +13 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0fd5c557e4888b8eebc73dc5ab9c0ff8d1eb2248
|
4
|
+
data.tar.gz: 68e06943de077b0e4ba6e17aecacd932406b051f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e6eeee57b80d10b7bac3febe0238c6138bb4b4a6b05fda99ea1daf9b4168a4fc0fdd2854026bf7ac1a2e3bfaf0d4ad4f22c3d02680d21c92513857569d85efae
|
7
|
+
data.tar.gz: 2a16668a0b451e1e7254ba7c5334e63d907356ee6c5e8897e7b550c543e5d0f28676712c7a486486e7a1f6889cb84161cc8beb39f1190f1d472f1f4c68a17888
|
data/CHANGES.md
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
## 0.4.0
|
2
|
+
|
3
|
+
- Convert `Change` and `ChangeFrequency` from [ruby-enum](https://github.com/dblock/ruby-enum/) to
|
4
|
+
[typesafe_enum](https://github.com/dmolesUC3/typesafe_enum)
|
5
|
+
|
1
6
|
## 0.3.4
|
2
7
|
|
3
8
|
- Fix issue where `Dir.glob` could cause files to be required in an unpredictable order (h/t [nabeta](https://github.com/CDLUC3/resync/pull/1))
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# resync [](https://travis-ci.org/CDLUC3/resync) [](https://codeclimate.com/github/CDLUC3/resync) [](http://inch-ci.org/github/CDLUC3/resync)
|
1
|
+
# resync [](https://travis-ci.org/CDLUC3/resync) [](https://codeclimate.com/github/CDLUC3/resync) [](http://inch-ci.org/github/CDLUC3/resync) [](https://github.com/CDLUC3/resync/releases)
|
2
2
|
|
3
3
|
|
4
4
|
A Ruby gem for working with the [ResourceSync](http://www.openarchives.org/rs/1.0/resourcesync) web synchronization framework.
|
data/lib/resync/metadata.rb
CHANGED
@@ -36,7 +36,7 @@ module Resync
|
|
36
36
|
time_node :from_time, '@from', default_value: nil
|
37
37
|
time_node :until_time, '@until', default_value: nil
|
38
38
|
time_node :completed_time, '@completed', default_value: nil
|
39
|
-
|
39
|
+
typesafe_enum_node :change, '@change', class: Types::Change, default_value: nil
|
40
40
|
text_node :capability, '@capability', default_value: nil
|
41
41
|
|
42
42
|
# ------------------------------------------------------------
|
data/lib/resync/resource.rb
CHANGED
@@ -16,7 +16,7 @@ module Resync
|
|
16
16
|
|
17
17
|
uri_node :uri, 'loc', default_value: nil
|
18
18
|
time_node :modified_time, 'lastmod', default_value: nil
|
19
|
-
|
19
|
+
typesafe_enum_node :changefreq, 'changefreq', class: Types::ChangeFrequency, default_value: nil
|
20
20
|
numeric_node :priority, 'priority', default_value: nil
|
21
21
|
|
22
22
|
# ------------------------------------------------------------
|
data/lib/resync/types/change.rb
CHANGED
@@ -1,15 +1,11 @@
|
|
1
|
-
require '
|
1
|
+
require 'typesafe_enum'
|
2
2
|
|
3
3
|
module Resync
|
4
4
|
module Types
|
5
5
|
# The type of change indicated by a reference in a {ChangeList}, {ChangeDump}, etc.
|
6
6
|
# Values: +CREATED+, +UPDATED+, +DELETED+
|
7
|
-
class Change
|
8
|
-
|
9
|
-
|
10
|
-
define :CREATED, 'created'
|
11
|
-
define :UPDATED, 'updated'
|
12
|
-
define :DELETED, 'deleted'
|
7
|
+
class Change < TypesafeEnum::Base
|
8
|
+
[:CREATED, :UPDATED, :DELETED].each { |c| new c }
|
13
9
|
end
|
14
10
|
end
|
15
11
|
end
|
@@ -1,19 +1,11 @@
|
|
1
|
-
require '
|
1
|
+
require 'typesafe_enum'
|
2
2
|
|
3
3
|
module Resync
|
4
4
|
module Types
|
5
5
|
# The frequency of changes to a resource.
|
6
6
|
# Values: +ALWAYS+, +HOURLY+, +DAILY+, +WEEKLY+, +MONTHLY+, +YEARLY+, +NEVER+
|
7
|
-
class ChangeFrequency
|
8
|
-
|
9
|
-
|
10
|
-
define :ALWAYS, 'always'
|
11
|
-
define :HOURLY, 'hourly'
|
12
|
-
define :DAILY, 'daily'
|
13
|
-
define :WEEKLY, 'weekly'
|
14
|
-
define :MONTHLY, 'monthly'
|
15
|
-
define :YEARLY, 'yearly'
|
16
|
-
define :NEVER, 'never'
|
7
|
+
class ChangeFrequency < TypesafeEnum::Base
|
8
|
+
[:ALWAYS, :HOURLY, :DAILY, :WEEKLY, :MONTHLY, :YEARLY, :NEVER].each { |cf| new cf }
|
17
9
|
end
|
18
10
|
end
|
19
11
|
end
|
data/lib/resync/version.rb
CHANGED
data/lib/resync/xml.rb
CHANGED
@@ -58,26 +58,6 @@ module Resync
|
|
58
58
|
end
|
59
59
|
private_class_method :can_parse
|
60
60
|
|
61
|
-
# ------------------------------------------------------------
|
62
|
-
# Resync::Types::Change
|
63
|
-
|
64
|
-
# Maps +Resync::Types::Change+ values.
|
65
|
-
class ChangeNode < ::XML::MappingExtensions::EnumNodeBase
|
66
|
-
ENUM_CLASS = Resync::Types::Change
|
67
|
-
end
|
68
|
-
|
69
|
-
::XML::Mapping.add_node_class ChangeNode
|
70
|
-
|
71
|
-
# ------------------------------------------------------------
|
72
|
-
# Resync::Types::Changefreq
|
73
|
-
|
74
|
-
# Maps +Resync::Types::ChangeFrequency+ values.
|
75
|
-
class ChangefreqNode < ::XML::MappingExtensions::EnumNodeBase
|
76
|
-
ENUM_CLASS = Resync::Types::ChangeFrequency
|
77
|
-
end
|
78
|
-
|
79
|
-
::XML::Mapping.add_node_class ChangefreqNode
|
80
|
-
|
81
61
|
# ------------------------------------------------------------
|
82
62
|
# Whitespace-separated hashcode list
|
83
63
|
|
data/resync.gemspec
CHANGED
@@ -23,9 +23,9 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.require_paths = ['lib']
|
24
24
|
|
25
25
|
spec.add_dependency 'mime-types', '~> 2.5'
|
26
|
-
spec.add_dependency '
|
26
|
+
spec.add_dependency 'typesafe_enum', '~> 0.1', '>= 0.1.1'
|
27
27
|
spec.add_dependency 'xml-mapping', '~> 0.10'
|
28
|
-
spec.add_dependency 'xml-mapping_extensions', '~> 0.
|
28
|
+
spec.add_dependency 'xml-mapping_extensions', '~> 0.3.0'
|
29
29
|
|
30
30
|
spec.add_development_dependency 'equivalent-xml', '~> 0.6.0'
|
31
31
|
spec.add_development_dependency 'rake', '~> 10.4'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: resync
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.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: 2015-
|
11
|
+
date: 2015-11-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mime-types
|
@@ -25,19 +25,25 @@ dependencies:
|
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '2.5'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: typesafe_enum
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '0.
|
33
|
+
version: '0.1'
|
34
|
+
- - ">="
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: 0.1.1
|
34
37
|
type: :runtime
|
35
38
|
prerelease: false
|
36
39
|
version_requirements: !ruby/object:Gem::Requirement
|
37
40
|
requirements:
|
38
41
|
- - "~>"
|
39
42
|
- !ruby/object:Gem::Version
|
40
|
-
version: '0.
|
43
|
+
version: '0.1'
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 0.1.1
|
41
47
|
- !ruby/object:Gem::Dependency
|
42
48
|
name: xml-mapping
|
43
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,14 +64,14 @@ dependencies:
|
|
58
64
|
requirements:
|
59
65
|
- - "~>"
|
60
66
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0.
|
67
|
+
version: 0.3.0
|
62
68
|
type: :runtime
|
63
69
|
prerelease: false
|
64
70
|
version_requirements: !ruby/object:Gem::Requirement
|
65
71
|
requirements:
|
66
72
|
- - "~>"
|
67
73
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0.
|
74
|
+
version: 0.3.0
|
69
75
|
- !ruby/object:Gem::Dependency
|
70
76
|
name: equivalent-xml
|
71
77
|
requirement: !ruby/object:Gem::Requirement
|