consyncful 0.6.1 → 0.7.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +45 -0
- data/.rubocop.yml +4 -0
- data/.rubocop_todo.yml +19 -17
- data/.ruby-version +1 -1
- data/Gemfile.lock +44 -33
- data/README.md +34 -1
- data/consyncful.gemspec +13 -9
- data/lib/consyncful/item_mapper.rb +26 -3
- data/lib/consyncful/persisted_item.rb +2 -1
- data/lib/consyncful/sync.rb +5 -4
- data/lib/consyncful/tasks/consyncful.rake +1 -1
- data/lib/consyncful/version.rb +1 -1
- data/lib/consyncful.rb +10 -2
- metadata +43 -18
- data/.travis.yml +0 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c882690a75c66e0d0045caf2c574e04c6eb1c86160f767db1d5d1ef309cffc22
|
4
|
+
data.tar.gz: 8223e7a016e55b6ee64b80bb0979eaa4f646d84dbcfb157fdd3fffe2ff30822e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1883a3eba634425d4579d734046e2f44e2bd1798ee4c0ff7e0b4d911df3afb40760aa29bfb78cf1ba770fcf7f1b84a76833e1925a31c50c1e3c108462731f5dc
|
7
|
+
data.tar.gz: da8df93ab4487b5ffb8d626781338a623a988d568b3d0445b357e44adeb5021c8bcbe3c7a14daec9e0c0f37cd5626ee172986d420f7ea28b5ef4d872deb07722
|
@@ -0,0 +1,45 @@
|
|
1
|
+
name: CI
|
2
|
+
|
3
|
+
on:
|
4
|
+
pull_request:
|
5
|
+
push:
|
6
|
+
branches:
|
7
|
+
- master
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
ci_checks:
|
11
|
+
runs-on: ubuntu-latest
|
12
|
+
strategy:
|
13
|
+
matrix:
|
14
|
+
ruby:
|
15
|
+
- 2.7.5
|
16
|
+
- 3.0.3
|
17
|
+
- 3.1.1
|
18
|
+
mongodb:
|
19
|
+
- 4.2
|
20
|
+
- 4.4
|
21
|
+
- 5.0
|
22
|
+
|
23
|
+
name: Ruby ${{ matrix.ruby }} sample
|
24
|
+
|
25
|
+
steps:
|
26
|
+
- name: Checkout this repo
|
27
|
+
uses: actions/checkout@v2
|
28
|
+
|
29
|
+
- name: Install Ruby and Bundler
|
30
|
+
uses: ruby/setup-ruby@v1
|
31
|
+
with:
|
32
|
+
bundler-cache: true
|
33
|
+
ruby-version: ${{ matrix.ruby }}
|
34
|
+
|
35
|
+
- name: Start MongoDB
|
36
|
+
uses: supercharge/mongodb-github-action@1.7.0
|
37
|
+
with:
|
38
|
+
mongodb-version: ${{ matrix.mongodb }}
|
39
|
+
|
40
|
+
- name: Run rubocop
|
41
|
+
run: |
|
42
|
+
bundle exec rubocop
|
43
|
+
- name: Run tests
|
44
|
+
run: |
|
45
|
+
bundle exec rspec
|
data/.rubocop.yml
CHANGED
data/.rubocop_todo.yml
CHANGED
@@ -1,48 +1,50 @@
|
|
1
1
|
# This configuration was generated by
|
2
2
|
# `rubocop --auto-gen-config`
|
3
|
-
# on
|
3
|
+
# on 2022-05-03 22:33:33 UTC using RuboCop version 1.28.2.
|
4
4
|
# The point is for the user to remove these configuration records
|
5
5
|
# one by one as the offenses are removed from the code base.
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
8
8
|
|
9
|
-
# Offense count:
|
10
|
-
#
|
11
|
-
#
|
12
|
-
|
9
|
+
# Offense count: 3
|
10
|
+
# Configuration parameters: AllowedMethods.
|
11
|
+
# AllowedMethods: enums
|
12
|
+
Lint/ConstantDefinitionInBlock:
|
13
13
|
Exclude:
|
14
|
-
- '
|
14
|
+
- 'spec/consyncful/base_spec.rb'
|
15
|
+
- 'spec/consyncful/persisted_item_spec.rb'
|
15
16
|
|
16
17
|
# Offense count: 1
|
18
|
+
# Configuration parameters: IgnoredMethods, CountRepeatedAttributes.
|
17
19
|
Metrics/AbcSize:
|
18
20
|
Max: 19
|
19
21
|
|
20
|
-
# Offense count:
|
21
|
-
# Configuration parameters: CountComments, ExcludedMethods.
|
22
|
-
#
|
22
|
+
# Offense count: 12
|
23
|
+
# Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
|
24
|
+
# IgnoredMethods: refine
|
23
25
|
Metrics/BlockLength:
|
24
|
-
Max:
|
26
|
+
Max: 220
|
25
27
|
|
26
28
|
# Offense count: 3
|
27
|
-
#
|
28
|
-
# Configuration parameters:
|
29
|
+
# This cop supports safe auto-correction (--auto-correct).
|
30
|
+
# Configuration parameters: EnforcedStyle.
|
29
31
|
# SupportedStyles: nested, compact
|
30
32
|
Style/ClassAndModuleChildren:
|
31
33
|
Exclude:
|
32
34
|
- 'lib/consyncful/railtie.rb'
|
33
35
|
- 'spec/consyncful/base_spec.rb'
|
34
36
|
|
35
|
-
# Offense count:
|
37
|
+
# Offense count: 1
|
38
|
+
# Configuration parameters: AllowedConstants.
|
36
39
|
Style/Documentation:
|
37
40
|
Exclude:
|
38
41
|
- 'spec/**/*'
|
39
42
|
- 'test/**/*'
|
40
43
|
- 'lib/consyncful.rb'
|
41
|
-
- 'lib/consyncful/railtie.rb'
|
42
44
|
|
43
|
-
# Offense count:
|
44
|
-
#
|
45
|
-
# Configuration parameters:
|
45
|
+
# Offense count: 9
|
46
|
+
# This cop supports safe auto-correction (--auto-correct).
|
47
|
+
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns, IgnoredPatterns.
|
46
48
|
# URISchemes: http, https
|
47
49
|
Layout/LineLength:
|
48
50
|
Max: 226
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
3.0.3
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
consyncful (0.
|
4
|
+
consyncful (0.7.1)
|
5
5
|
contentful (>= 2.11.1, < 3.0.0)
|
6
6
|
hooks (>= 0.4.1)
|
7
7
|
mongoid (>= 7.0.2, < 8.0.0)
|
@@ -10,27 +10,26 @@ PATH
|
|
10
10
|
GEM
|
11
11
|
remote: https://rubygems.org/
|
12
12
|
specs:
|
13
|
-
activemodel (
|
14
|
-
activesupport (=
|
15
|
-
activesupport (
|
13
|
+
activemodel (7.0.3)
|
14
|
+
activesupport (= 7.0.3)
|
15
|
+
activesupport (7.0.3)
|
16
16
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
17
17
|
i18n (>= 1.6, < 2)
|
18
18
|
minitest (>= 5.1)
|
19
19
|
tzinfo (~> 2.0)
|
20
|
-
|
21
|
-
addressable (2.7.0)
|
20
|
+
addressable (2.8.0)
|
22
21
|
public_suffix (>= 2.0.2, < 5.0)
|
23
|
-
ast (2.4.
|
24
|
-
bson (4.
|
25
|
-
concurrent-ruby (1.1.
|
26
|
-
contentful (2.16.
|
22
|
+
ast (2.4.2)
|
23
|
+
bson (4.15.0)
|
24
|
+
concurrent-ruby (1.1.10)
|
25
|
+
contentful (2.16.3)
|
27
26
|
http (> 0.8, < 5.0)
|
28
27
|
multi_json (~> 1)
|
29
28
|
database_cleaner (1.8.3)
|
30
29
|
diff-lcs (1.3)
|
31
30
|
domain_name (0.5.20190701)
|
32
31
|
unf (>= 0.0.5, < 1.0.0)
|
33
|
-
ffi (1.15.
|
32
|
+
ffi (1.15.5)
|
34
33
|
ffi-compiler (1.0.1)
|
35
34
|
ffi (>= 1.0.0)
|
36
35
|
rake
|
@@ -41,27 +40,29 @@ GEM
|
|
41
40
|
http-cookie (~> 1.0)
|
42
41
|
http-form_data (~> 2.2)
|
43
42
|
http-parser (~> 1.2.0)
|
44
|
-
http-cookie (1.0.
|
43
|
+
http-cookie (1.0.5)
|
45
44
|
domain_name (~> 0.5)
|
46
45
|
http-form_data (2.3.0)
|
47
46
|
http-parser (1.2.3)
|
48
47
|
ffi-compiler (>= 1.0, < 2.0)
|
49
|
-
i18n (1.
|
48
|
+
i18n (1.10.0)
|
50
49
|
concurrent-ruby (~> 1.0)
|
51
|
-
|
52
|
-
|
53
|
-
mongo (2.14.0)
|
50
|
+
minitest (5.16.2)
|
51
|
+
mongo (2.17.1)
|
54
52
|
bson (>= 4.8.2, < 5.0.0)
|
55
|
-
mongoid (7.
|
56
|
-
activemodel (>= 5.1, <
|
53
|
+
mongoid (7.4.0)
|
54
|
+
activemodel (>= 5.1, < 7.1, != 7.0.0)
|
57
55
|
mongo (>= 2.10.5, < 3.0.0)
|
56
|
+
ruby2_keywords (~> 0.0.5)
|
58
57
|
multi_json (1.15.0)
|
59
|
-
parallel (1.
|
60
|
-
parser (2.
|
61
|
-
ast (~> 2.4.
|
62
|
-
public_suffix (4.0.
|
63
|
-
rainbow (3.
|
58
|
+
parallel (1.22.1)
|
59
|
+
parser (3.1.2.0)
|
60
|
+
ast (~> 2.4.1)
|
61
|
+
public_suffix (4.0.7)
|
62
|
+
rainbow (3.1.1)
|
64
63
|
rake (13.0.1)
|
64
|
+
regexp_parser (2.3.1)
|
65
|
+
rexml (3.2.5)
|
65
66
|
rspec (3.9.0)
|
66
67
|
rspec-core (~> 3.9.0)
|
67
68
|
rspec-expectations (~> 3.9.0)
|
@@ -75,22 +76,30 @@ GEM
|
|
75
76
|
diff-lcs (>= 1.2.0, < 2.0)
|
76
77
|
rspec-support (~> 3.9.0)
|
77
78
|
rspec-support (3.9.2)
|
78
|
-
rubocop (
|
79
|
-
jaro_winkler (~> 1.5.1)
|
79
|
+
rubocop (1.28.2)
|
80
80
|
parallel (~> 1.10)
|
81
|
-
parser (>=
|
81
|
+
parser (>= 3.1.0.0)
|
82
82
|
rainbow (>= 2.2.2, < 4.0)
|
83
|
+
regexp_parser (>= 1.8, < 3.0)
|
84
|
+
rexml
|
85
|
+
rubocop-ast (>= 1.17.0, < 2.0)
|
83
86
|
ruby-progressbar (~> 1.7)
|
84
|
-
unicode-display_width (>= 1.4.0, <
|
85
|
-
|
87
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
88
|
+
rubocop-ast (1.17.0)
|
89
|
+
parser (>= 3.1.1.0)
|
90
|
+
rubocop-rake (0.6.0)
|
91
|
+
rubocop (~> 1.0)
|
92
|
+
rubocop-rspec (2.10.0)
|
93
|
+
rubocop (~> 1.19)
|
94
|
+
ruby-progressbar (1.11.0)
|
95
|
+
ruby2_keywords (0.0.5)
|
86
96
|
tzinfo (2.0.4)
|
87
97
|
concurrent-ruby (~> 1.0)
|
88
98
|
uber (0.0.15)
|
89
99
|
unf (0.1.4)
|
90
100
|
unf_ext
|
91
|
-
unf_ext (0.0.
|
92
|
-
unicode-display_width (1.
|
93
|
-
zeitwerk (2.4.2)
|
101
|
+
unf_ext (0.0.8.2)
|
102
|
+
unicode-display_width (2.1.0)
|
94
103
|
|
95
104
|
PLATFORMS
|
96
105
|
ruby
|
@@ -101,7 +110,9 @@ DEPENDENCIES
|
|
101
110
|
database_cleaner
|
102
111
|
rake (~> 13.0)
|
103
112
|
rspec (~> 3.0)
|
104
|
-
rubocop
|
113
|
+
rubocop
|
114
|
+
rubocop-rake
|
115
|
+
rubocop-rspec
|
105
116
|
|
106
117
|
BUNDLED WITH
|
107
|
-
2.
|
118
|
+
2.3.7
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Consyncful
|
1
|
+
# Consyncful
|
2
2
|
|
3
3
|
Contentful -> local database synchronisation for Rails
|
4
4
|
|
@@ -165,6 +165,39 @@ end
|
|
165
165
|
|
166
166
|
If fields have multiple locales then the default locale will be mapped to the field name. Additional locales will have a suffix (lower snake case) on the field name. e.g title (default), title_mi_nz (New Zealand Maori mi-NZ)
|
167
167
|
|
168
|
+
### Preserving Contentful timestamps
|
169
|
+
|
170
|
+
If you need to access the timestamps from Contentful, you can enable it by setting `preserve_contentful_timestamps` to `true`.
|
171
|
+
|
172
|
+
```rb
|
173
|
+
Consyncful.configure do |config|
|
174
|
+
# Consyncful models will have two extra fields that contains the value of timestamps in Contentful.
|
175
|
+
# contentful_created_at
|
176
|
+
# contentful_updated_at
|
177
|
+
config.preserve_contentful_timestamps = true # defaults to false
|
178
|
+
end
|
179
|
+
```
|
180
|
+
|
181
|
+
### Sync specific contents using [Contentful Tag](https://www.contentful.com/help/tags/).
|
182
|
+
You can configure Consyncful to sync or ignore specific contents using Contentful Tag.
|
183
|
+
|
184
|
+
```rb
|
185
|
+
Consyncful.configure do |config|
|
186
|
+
# Any contents tagged with 'myTag' will be stored in the database.
|
187
|
+
# Other contents without 'myTag' would be ignored.
|
188
|
+
config.content_tags = ['myTag'] # defaults to []
|
189
|
+
end
|
190
|
+
```
|
191
|
+
|
192
|
+
Also, you can ignore contents with specific Tags.
|
193
|
+
|
194
|
+
```rb
|
195
|
+
Consyncful.configure do |config|
|
196
|
+
# Any contents tagged with 'ignoreTag' won't be stored in the database.
|
197
|
+
config.ignore_content_tags = ['ignoreTag'] # defaults to []
|
198
|
+
end
|
199
|
+
```
|
200
|
+
|
168
201
|
### Configuring what Mongo database Consyncful uses
|
169
202
|
|
170
203
|
You can also configure what Mongoid client Consyncful uses and the name of the collection the entries are stored under. This is useful if you want to have your consyncful data hosted in a different mongo database than your application-specific mongo database.
|
data/consyncful.gemspec
CHANGED
@@ -5,14 +5,15 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
5
5
|
require 'consyncful/version'
|
6
6
|
|
7
7
|
Gem::Specification.new do |spec|
|
8
|
-
spec.name
|
9
|
-
spec.version
|
10
|
-
spec.
|
11
|
-
spec.
|
8
|
+
spec.name = 'consyncful'
|
9
|
+
spec.version = Consyncful::VERSION
|
10
|
+
spec.required_ruby_version = '>= 2.7'
|
11
|
+
spec.authors = ['Andy Anastasiadis-Gray']
|
12
|
+
spec.email = ['andy@boost.co.nz']
|
12
13
|
|
13
|
-
spec.summary
|
14
|
-
spec.homepage
|
15
|
-
spec.license
|
14
|
+
spec.summary = 'Contentful to local database synchronisation for Rails'
|
15
|
+
spec.homepage = 'https://github.com/boost/consyncful'
|
16
|
+
spec.license = 'MIT'
|
16
17
|
|
17
18
|
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
|
18
19
|
# to allow pushing to a single host or delete this section to allow pushing to any host.
|
@@ -23,7 +24,7 @@ Gem::Specification.new do |spec|
|
|
23
24
|
# "public gem pushes."
|
24
25
|
# end
|
25
26
|
|
26
|
-
spec.files
|
27
|
+
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
27
28
|
f.match(%r{^(test|spec|features)/})
|
28
29
|
end
|
29
30
|
spec.bindir = 'exe'
|
@@ -34,10 +35,13 @@ Gem::Specification.new do |spec|
|
|
34
35
|
spec.add_development_dependency 'database_cleaner'
|
35
36
|
spec.add_development_dependency 'rake', '~> 13.0'
|
36
37
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
37
|
-
spec.add_development_dependency 'rubocop'
|
38
|
+
spec.add_development_dependency 'rubocop'
|
39
|
+
spec.add_development_dependency 'rubocop-rake'
|
40
|
+
spec.add_development_dependency 'rubocop-rspec'
|
38
41
|
|
39
42
|
spec.add_dependency 'contentful', ['>=2.11.1', '<3.0.0']
|
40
43
|
spec.add_dependency 'hooks', '>=0.4.1'
|
41
44
|
spec.add_dependency 'mongoid', ['>=7.0.2', '<8.0.0']
|
42
45
|
spec.add_dependency 'rainbow'
|
46
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
43
47
|
end
|
@@ -13,6 +13,13 @@ module Consyncful
|
|
13
13
|
@item.is_a?(Contentful::DeletedEntry) || @item.is_a?(Contentful::DeletedAsset)
|
14
14
|
end
|
15
15
|
|
16
|
+
def excluded_by_tag?
|
17
|
+
return (Consyncful.configuration.content_tags & item_tag_ids).empty? if Consyncful.configuration.content_tags.any?
|
18
|
+
return (Consyncful.configuration.ignore_content_tags & item_tag_ids).any? if Consyncful.configuration.ignore_content_tags.any?
|
19
|
+
|
20
|
+
false
|
21
|
+
end
|
22
|
+
|
16
23
|
def type
|
17
24
|
case @item.type
|
18
25
|
when 'Entry' then @item.content_type.id
|
@@ -29,18 +36,27 @@ module Consyncful
|
|
29
36
|
|
30
37
|
fields.merge!(localized_fields(default_locale))
|
31
38
|
fields.merge!(localized_asset_fields(default_locale)) if type == 'asset'
|
39
|
+
fields.merge!(contentful_timestamps) if Consyncful.configuration.preserve_contentful_timestamps
|
32
40
|
|
33
41
|
fields
|
34
42
|
end
|
35
43
|
|
36
44
|
private
|
37
45
|
|
46
|
+
def item_tag_ids
|
47
|
+
return [] if @item.nil?
|
48
|
+
|
49
|
+
@item._metadata[:tags].map(&:id)
|
50
|
+
end
|
51
|
+
|
38
52
|
def generic_fields
|
39
|
-
{
|
53
|
+
{
|
54
|
+
created_at: @item.created_at,
|
40
55
|
updated_at: @item.updated_at,
|
41
56
|
revision: @item.revision,
|
42
57
|
contentful_type: type,
|
43
|
-
synced_at: Time.current
|
58
|
+
synced_at: Time.current
|
59
|
+
}
|
44
60
|
end
|
45
61
|
|
46
62
|
def localized_fields(default_locale)
|
@@ -94,11 +110,18 @@ module Consyncful
|
|
94
110
|
if single_reference?(value)
|
95
111
|
[ActiveSupport::Inflector.foreign_key(field).to_sym, value.id]
|
96
112
|
elsif many_reference?(value)
|
97
|
-
ids_field_name = field.to_s.singularize
|
113
|
+
ids_field_name = "#{field.to_s.singularize}_ids" # fk field name
|
98
114
|
[ids_field_name.to_sym, value.map(&:id)]
|
99
115
|
else
|
100
116
|
[field, value]
|
101
117
|
end
|
102
118
|
end
|
119
|
+
|
120
|
+
def contentful_timestamps
|
121
|
+
{
|
122
|
+
contentful_created_at: @item.created_at,
|
123
|
+
contentful_updated_at: @item.updated_at
|
124
|
+
}
|
125
|
+
end
|
103
126
|
end
|
104
127
|
end
|
data/lib/consyncful/sync.rb
CHANGED
@@ -102,10 +102,11 @@ module Consyncful
|
|
102
102
|
ids
|
103
103
|
end
|
104
104
|
|
105
|
-
def sync_item(
|
106
|
-
puts Rainbow("syncing: #{
|
107
|
-
PersistedItem.new(
|
108
|
-
|
105
|
+
def sync_item(item_mapper, stats)
|
106
|
+
puts Rainbow("syncing: #{item_mapper.id}").yellow
|
107
|
+
PersistedItem.new(item_mapper, id, stats).persist
|
108
|
+
|
109
|
+
item_mapper.id
|
109
110
|
end
|
110
111
|
end
|
111
112
|
end
|
@@ -19,7 +19,7 @@ namespace :consyncful do
|
|
19
19
|
end
|
20
20
|
|
21
21
|
task update_model_names: [:environment] do
|
22
|
-
if
|
22
|
+
if Rails.autoloaders.zeitwerk_enabled?
|
23
23
|
Zeitwerk::Loader.eager_load_all
|
24
24
|
else
|
25
25
|
Rails.application.eager_load!
|
data/lib/consyncful/version.rb
CHANGED
data/lib/consyncful.rb
CHANGED
@@ -13,8 +13,13 @@ require 'consyncful/railtie' if defined?(Rails)
|
|
13
13
|
module Consyncful
|
14
14
|
# Handles Rails configurations for Consynful
|
15
15
|
class Configuration
|
16
|
-
attr_accessor :contentful_client_options,
|
17
|
-
:
|
16
|
+
attr_accessor :contentful_client_options,
|
17
|
+
:locale,
|
18
|
+
:mongo_client,
|
19
|
+
:mongo_collection,
|
20
|
+
:content_tags,
|
21
|
+
:ignore_content_tags,
|
22
|
+
:preserve_contentful_timestamps
|
18
23
|
|
19
24
|
def initialize
|
20
25
|
@contentful_client_options = {
|
@@ -23,6 +28,9 @@ module Consyncful
|
|
23
28
|
@locale = 'en-NZ'
|
24
29
|
@mongo_client = :default
|
25
30
|
@mongo_collection = 'contentful_models'
|
31
|
+
@content_tags = []
|
32
|
+
@ignore_content_tags = []
|
33
|
+
@preserve_contentful_timestamps = false
|
26
34
|
end
|
27
35
|
end
|
28
36
|
|
metadata
CHANGED
@@ -1,16 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: consyncful
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Anastasiadis-Gray
|
8
|
-
|
9
|
-
- Greg Rogan
|
10
|
-
autorequire:
|
8
|
+
autorequire:
|
11
9
|
bindir: exe
|
12
10
|
cert_chain: []
|
13
|
-
date:
|
11
|
+
date: 2022-07-14 00:00:00.000000000 Z
|
14
12
|
dependencies:
|
15
13
|
- !ruby/object:Gem::Dependency
|
16
14
|
name: bundler
|
@@ -72,16 +70,44 @@ dependencies:
|
|
72
70
|
name: rubocop
|
73
71
|
requirement: !ruby/object:Gem::Requirement
|
74
72
|
requirements:
|
75
|
-
- -
|
73
|
+
- - ">="
|
76
74
|
- !ruby/object:Gem::Version
|
77
|
-
version: 0
|
75
|
+
version: '0'
|
78
76
|
type: :development
|
79
77
|
prerelease: false
|
80
78
|
version_requirements: !ruby/object:Gem::Requirement
|
81
79
|
requirements:
|
82
|
-
- -
|
80
|
+
- - ">="
|
83
81
|
- !ruby/object:Gem::Version
|
84
|
-
version: 0
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rubocop-rake
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: rubocop-rspec
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
85
111
|
- !ruby/object:Gem::Dependency
|
86
112
|
name: contentful
|
87
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -150,21 +176,19 @@ dependencies:
|
|
150
176
|
- - ">="
|
151
177
|
- !ruby/object:Gem::Version
|
152
178
|
version: '0'
|
153
|
-
description:
|
179
|
+
description:
|
154
180
|
email:
|
155
181
|
- andy@boost.co.nz
|
156
|
-
- montgomery@boost.co.nz
|
157
|
-
- greg@boost.co.nz
|
158
182
|
executables: []
|
159
183
|
extensions: []
|
160
184
|
extra_rdoc_files: []
|
161
185
|
files:
|
186
|
+
- ".github/workflows/ci.yml"
|
162
187
|
- ".gitignore"
|
163
188
|
- ".rspec"
|
164
189
|
- ".rubocop.yml"
|
165
190
|
- ".rubocop_todo.yml"
|
166
191
|
- ".ruby-version"
|
167
|
-
- ".travis.yml"
|
168
192
|
- Gemfile
|
169
193
|
- Gemfile.lock
|
170
194
|
- LICENSE.txt
|
@@ -187,8 +211,9 @@ files:
|
|
187
211
|
homepage: https://github.com/boost/consyncful
|
188
212
|
licenses:
|
189
213
|
- MIT
|
190
|
-
metadata:
|
191
|
-
|
214
|
+
metadata:
|
215
|
+
rubygems_mfa_required: 'true'
|
216
|
+
post_install_message:
|
192
217
|
rdoc_options: []
|
193
218
|
require_paths:
|
194
219
|
- lib
|
@@ -196,15 +221,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
196
221
|
requirements:
|
197
222
|
- - ">="
|
198
223
|
- !ruby/object:Gem::Version
|
199
|
-
version: '
|
224
|
+
version: '2.7'
|
200
225
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
201
226
|
requirements:
|
202
227
|
- - ">="
|
203
228
|
- !ruby/object:Gem::Version
|
204
229
|
version: '0'
|
205
230
|
requirements: []
|
206
|
-
rubygems_version: 3.
|
207
|
-
signing_key:
|
231
|
+
rubygems_version: 3.2.32
|
232
|
+
signing_key:
|
208
233
|
specification_version: 4
|
209
234
|
summary: Contentful to local database synchronisation for Rails
|
210
235
|
test_files: []
|