synchronisable 1.2.7 → 1.3.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/README.md +2 -9
- data/TODO.md +1 -1
- data/lib/core_ext/hash/keys.rb +18 -0
- data/lib/core_ext/object/try.rb +17 -0
- data/lib/synchronisable.rb +8 -2
- data/lib/synchronisable/configuration.rb +15 -0
- data/lib/synchronisable/dsl/macro.rb +1 -1
- data/lib/synchronisable/input/parser.rb +3 -3
- data/lib/synchronisable/source.rb +4 -4
- data/lib/synchronisable/synchronizer.rb +1 -1
- data/lib/synchronisable/version.rb +5 -4
- data/lib/synchronisable/worker/associations.rb +2 -2
- data/spec/dummy/app/synchronizers/match_synchronizer.rb +2 -2
- data/spec/dummy/config/environments/development.rb +0 -3
- data/spec/dummy/config/environments/test.rb +1 -1
- data/spec/dummy/db/schema.rb +38 -47
- data/spec/spec_helper.rb +6 -2
- data/synchronisable.gemspec +27 -26
- metadata +182 -147
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f0ab16cf585eb5457348c2e664ad58646af6f107
|
|
4
|
+
data.tar.gz: 9ebd08b97fd8ab522bff4bc249a527124fbf2e59
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0420a84daae320f75ddb3a7fd6d31554865b269b910ef9f2c7ba241d0c549fad0d4ecb520bfee214f0e30e94ae0f0545e92d90b792783a18051e6fcee919bc5e
|
|
7
|
+
data.tar.gz: ac03f2e5d6ab91ddde803605068592a8c2770bd1b421ca9e4dbecc5141389422ffedae5af4aec0500cab23ba60e78c0f9d39d6abb9be63746eb412d4b5e26bc4
|
data/README.md
CHANGED
|
@@ -3,12 +3,9 @@
|
|
|
3
3
|
[](http://inch-ci.org/github/vyorkin/synchronisable)
|
|
4
4
|
[](https://coveralls.io/r/vyorkin/synchronisable)
|
|
5
5
|
[](http://stillmaintained.com/vyorkin/synchronisable)
|
|
6
|
-
[](https://gemnasium.com/vyorkin/synchronisable)
|
|
7
6
|
|
|
8
7
|
# Synchronisable
|
|
9
8
|
|
|
10
|
-
### :construction: work in progress :construction:
|
|
11
|
-
|
|
12
9
|
## Overview
|
|
13
10
|
|
|
14
11
|
Provides base fuctionality for active record models synchronization
|
|
@@ -178,13 +175,9 @@ class StageSynchronizer < Synchronisable::Synchronizer
|
|
|
178
175
|
end
|
|
179
176
|
```
|
|
180
177
|
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
TDOO: Blah blah blah... Need to describe the difference & use cases.
|
|
184
|
-
|
|
185
|
-
### Blah blah
|
|
178
|
+
TODO: Provide more info on gateways vs `fetch` & `find` in synchronizers
|
|
186
179
|
|
|
187
|
-
|
|
180
|
+
For now its better to learn from a [dummy app](https://github.com/vyorkin/synchronisable/tree/master/spec/dummy)
|
|
188
181
|
|
|
189
182
|
```ruby
|
|
190
183
|
class TournamentSynchronizer < Synchronisable::Synchronizer
|
data/TODO.md
CHANGED
|
@@ -2,7 +2,7 @@ Primary objectives
|
|
|
2
2
|
======================================
|
|
3
3
|
- [ ] fix a mess with Context: return an array of sync contexts,
|
|
4
4
|
or aggregate all syncronization contexts into just one
|
|
5
|
-
- [ ]
|
|
5
|
+
- [ ] destroy_missing
|
|
6
6
|
- [ ] write a good README
|
|
7
7
|
- [ ] extended interface
|
|
8
8
|
- [ ] handle case when association type is a :hash
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
class Hash
|
|
2
|
+
def transform_keys
|
|
3
|
+
return enum_for(:transform_keys) unless block_given?
|
|
4
|
+
result = self.class.new
|
|
5
|
+
each_key do |key|
|
|
6
|
+
result[yield(key)] = self[key]
|
|
7
|
+
end
|
|
8
|
+
result
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def transform_keys!
|
|
12
|
+
return enum_for(:transform_keys!) unless block_given?
|
|
13
|
+
keys.each do |key|
|
|
14
|
+
self[yield(key)] = delete(key)
|
|
15
|
+
end
|
|
16
|
+
self
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
class Object
|
|
2
|
+
def try!(*a, &b)
|
|
3
|
+
if a.empty? && block_given?
|
|
4
|
+
if b.arity.zero?
|
|
5
|
+
instance_eval(&b)
|
|
6
|
+
else
|
|
7
|
+
yield self
|
|
8
|
+
end
|
|
9
|
+
else
|
|
10
|
+
public_send(*a, &b)
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def try(*a, &b)
|
|
15
|
+
try!(*a, &b) if a.empty? || respond_to?(a.first)
|
|
16
|
+
end
|
|
17
|
+
end
|
data/lib/synchronisable.rb
CHANGED
|
@@ -2,12 +2,17 @@ require 'active_record'
|
|
|
2
2
|
|
|
3
3
|
require 'active_support/core_ext/hash'
|
|
4
4
|
require 'active_support/core_ext/class/attribute'
|
|
5
|
-
require 'active_support/core_ext/object/try'
|
|
6
|
-
require 'active_support/core_ext/object/deep_dup'
|
|
7
5
|
require 'active_support/core_ext/string/inflections'
|
|
8
6
|
require 'active_support/configurable'
|
|
9
7
|
require 'active_support/concern'
|
|
10
8
|
|
|
9
|
+
# HACK: monkeypatches / fallbacks for activesupport ~> 3.0
|
|
10
|
+
if Gem.loaded_specs['activesupport'].version < Gem::Version.create(4)
|
|
11
|
+
require 'active_support/core_ext/hash/deep_dup'
|
|
12
|
+
require 'core_ext/object/try'
|
|
13
|
+
require 'core_ext/hash/keys'
|
|
14
|
+
end
|
|
15
|
+
|
|
11
16
|
require 'synchronisable/bootstrap/i18n'
|
|
12
17
|
|
|
13
18
|
require 'synchronisable/version'
|
|
@@ -72,3 +77,4 @@ end
|
|
|
72
77
|
ActiveSupport.on_load(:active_record) do
|
|
73
78
|
include Synchronisable::Model
|
|
74
79
|
end
|
|
80
|
+
|
|
@@ -2,6 +2,21 @@ module Synchronisable
|
|
|
2
2
|
class Configuration
|
|
3
3
|
include ActiveSupport::Configurable
|
|
4
4
|
|
|
5
|
+
class << self
|
|
6
|
+
# HACK: This is required to smooth a future transition to activesupport 4.x
|
|
7
|
+
# Since 3-2's config_accessor doesn't take a block or provide an option to set the default value of a config.
|
|
8
|
+
alias_method :old_config_accessor, :config_accessor
|
|
9
|
+
|
|
10
|
+
def config_accessor(*names)
|
|
11
|
+
old_config_accessor(*names)
|
|
12
|
+
return unless block_given?
|
|
13
|
+
|
|
14
|
+
names.each do |name|
|
|
15
|
+
send("#{name}=", yield)
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
5
20
|
config_accessor :dependent_import do
|
|
6
21
|
:destroy
|
|
7
22
|
end
|
|
@@ -49,7 +49,7 @@ module Synchronisable
|
|
|
49
49
|
module ClassMethods
|
|
50
50
|
def inherited(subclass)
|
|
51
51
|
super
|
|
52
|
-
class_attributes[subclass] = class_attributes[self].
|
|
52
|
+
class_attributes[subclass] = Hash[class_attributes[self].map { |k, v| [k, v.clone] }]
|
|
53
53
|
end
|
|
54
54
|
|
|
55
55
|
# Defines a new attribute.
|
|
@@ -53,16 +53,16 @@ module Synchronisable
|
|
|
53
53
|
end
|
|
54
54
|
|
|
55
55
|
def find_by_local_id(id)
|
|
56
|
-
import = @model.
|
|
56
|
+
import = @model.where(id: id).first.try(:import)
|
|
57
57
|
import ? @synchronizer.find(import.remote_id) : nil
|
|
58
58
|
end
|
|
59
59
|
|
|
60
60
|
def find_imports(class_name, ids)
|
|
61
61
|
case class_name
|
|
62
62
|
when 'Fixnum'
|
|
63
|
-
ids.map { |id| @model.
|
|
63
|
+
ids.map { |id| @model.where(id: id).first.try(&:import) }
|
|
64
64
|
when 'String'
|
|
65
|
-
ids.map { |id| Import.
|
|
65
|
+
ids.map { |id| Import.where(id: id).first }
|
|
66
66
|
end
|
|
67
67
|
end
|
|
68
68
|
end
|
|
@@ -47,17 +47,17 @@ module Synchronisable
|
|
|
47
47
|
end
|
|
48
48
|
|
|
49
49
|
def find_import_by_unique_id
|
|
50
|
-
Import.
|
|
50
|
+
Import.where(
|
|
51
51
|
unique_id: @unique_id.to_s,
|
|
52
52
|
synchronisable_type: @model.to_s
|
|
53
|
-
)
|
|
53
|
+
).first
|
|
54
54
|
end
|
|
55
55
|
|
|
56
56
|
def find_import_by_remote_id
|
|
57
|
-
Import.
|
|
57
|
+
Import.where(
|
|
58
58
|
remote_id: @remote_id.to_s,
|
|
59
59
|
synchronisable_type: @model.to_s
|
|
60
|
-
)
|
|
60
|
+
).first
|
|
61
61
|
end
|
|
62
62
|
|
|
63
63
|
def updatable?
|
|
@@ -37,7 +37,7 @@ module Synchronisable
|
|
|
37
37
|
|
|
38
38
|
# If set to `true` than all local records that
|
|
39
39
|
# don't have corresponding remote counterpart will be destroyed.
|
|
40
|
-
attribute :
|
|
40
|
+
attribute :destroy_missing, default: false
|
|
41
41
|
|
|
42
42
|
# Logger that will be used during synchronization
|
|
43
43
|
# of this particular model.
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
module Synchronisable
|
|
2
2
|
module VERSION
|
|
3
3
|
MAJOR = 1
|
|
4
|
-
MINOR =
|
|
5
|
-
PATCH =
|
|
6
|
-
SUFFIX =
|
|
4
|
+
MINOR = 3
|
|
5
|
+
PATCH = 0
|
|
6
|
+
SUFFIX = ''
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
NUMBER = [MAJOR, MINOR, PATCH].compact.join('.')
|
|
9
|
+
STRING = "#{NUMBER}#{SUFFIX}"
|
|
9
10
|
end
|
|
10
11
|
end
|
|
@@ -21,7 +21,7 @@ class MatchSynchronizer < Synchronisable::Synchronizer
|
|
|
21
21
|
:line_up_home, :line_up_away,
|
|
22
22
|
:substitutes_home, :substitutes_away
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
destroy_missing true
|
|
25
25
|
|
|
26
26
|
after_sync do |source|
|
|
27
27
|
MatchPlayer::REF_TYPES.each do |ref_type|
|
|
@@ -57,7 +57,7 @@ class MatchSynchronizer < Synchronisable::Synchronizer
|
|
|
57
57
|
end
|
|
58
58
|
|
|
59
59
|
def sync_match_player(attrs)
|
|
60
|
-
match_player = MatchPlayer.
|
|
60
|
+
match_player = MatchPlayer.where(attrs).first
|
|
61
61
|
unless match_player
|
|
62
62
|
remote_id = "#{attrs[:match_id]}_#{attrs[:player_id]}"
|
|
63
63
|
Synchronisable::Import.create!(
|
|
@@ -23,9 +23,6 @@ Dummy::Application.configure do
|
|
|
23
23
|
|
|
24
24
|
config.i18n.default_locale = :ru
|
|
25
25
|
|
|
26
|
-
# Raise an error on page load if there are pending migrations
|
|
27
|
-
config.active_record.migration_error = :page_load
|
|
28
|
-
|
|
29
26
|
# Debug mode disables concatenation and preprocessing of assets.
|
|
30
27
|
# This option may cause significant delays in view rendering with a large
|
|
31
28
|
# number of complex assets.
|
|
@@ -13,7 +13,7 @@ Dummy::Application.configure do
|
|
|
13
13
|
config.eager_load = false
|
|
14
14
|
|
|
15
15
|
# Configure static asset server for tests with Cache-Control for performance.
|
|
16
|
-
config.
|
|
16
|
+
config.serve_static_files = true
|
|
17
17
|
config.static_cache_control = "public, max-age=3600"
|
|
18
18
|
|
|
19
19
|
# Show full error reports and disable caching.
|
data/spec/dummy/db/schema.rb
CHANGED
|
@@ -9,50 +9,47 @@
|
|
|
9
9
|
# from scratch. The latter is a flawed and unsustainable approach (the more migrations
|
|
10
10
|
# you'll amass, the slower it'll run and the greater likelihood for issues).
|
|
11
11
|
#
|
|
12
|
-
# It's strongly recommended
|
|
12
|
+
# It's strongly recommended to check this file into your version control system.
|
|
13
13
|
|
|
14
|
-
ActiveRecord::Schema.define(version
|
|
14
|
+
ActiveRecord::Schema.define(:version => 20140609133855) do
|
|
15
15
|
|
|
16
|
-
create_table "imports", force
|
|
17
|
-
t.string "synchronisable_type", null
|
|
18
|
-
t.integer "synchronisable_id", null
|
|
16
|
+
create_table "imports", :force => true do |t|
|
|
17
|
+
t.string "synchronisable_type", :null => false
|
|
18
|
+
t.integer "synchronisable_id", :null => false
|
|
19
19
|
t.text "attrs"
|
|
20
|
-
t.string "remote_id", null
|
|
20
|
+
t.string "remote_id", :null => false
|
|
21
21
|
t.string "unique_id"
|
|
22
|
-
t.datetime "created_at"
|
|
23
|
-
t.datetime "updated_at"
|
|
22
|
+
t.datetime "created_at", :null => false
|
|
23
|
+
t.datetime "updated_at", :null => false
|
|
24
24
|
end
|
|
25
25
|
|
|
26
|
-
add_index "imports", ["remote_id"], name
|
|
27
|
-
add_index "imports", ["synchronisable_type", "remote_id"], name
|
|
28
|
-
add_index "imports", ["synchronisable_type", "synchronisable_id"], name
|
|
29
|
-
add_index "imports", ["synchronisable_type", "unique_id"], name
|
|
26
|
+
add_index "imports", ["remote_id"], :name => "index_imports_on_remote_id"
|
|
27
|
+
add_index "imports", ["synchronisable_type", "remote_id"], :name => "index_imports_on_synchronisable_type_and_remote_id"
|
|
28
|
+
add_index "imports", ["synchronisable_type", "synchronisable_id"], :name => "index_imports_on_synchronisable_type_and_synchronisable_id"
|
|
29
|
+
add_index "imports", ["synchronisable_type", "unique_id"], :name => "index_imports_on_synchronisable_type_and_unique_id"
|
|
30
30
|
|
|
31
|
-
create_table "match_players", force
|
|
31
|
+
create_table "match_players", :force => true do |t|
|
|
32
32
|
t.integer "match_id"
|
|
33
33
|
t.integer "player_id"
|
|
34
34
|
t.string "ref_type"
|
|
35
35
|
t.integer "formation_index"
|
|
36
|
-
t.datetime "created_at"
|
|
37
|
-
t.datetime "updated_at"
|
|
36
|
+
t.datetime "created_at", :null => false
|
|
37
|
+
t.datetime "updated_at", :null => false
|
|
38
38
|
end
|
|
39
39
|
|
|
40
|
-
|
|
41
|
-
add_index "match_players", ["player_id"], name: "index_match_players_on_player_id"
|
|
42
|
-
|
|
43
|
-
create_table "matches", force: true do |t|
|
|
40
|
+
create_table "matches", :force => true do |t|
|
|
44
41
|
t.integer "beginning"
|
|
45
42
|
t.integer "home_team_id"
|
|
46
43
|
t.integer "away_team_id"
|
|
47
44
|
t.string "weather"
|
|
48
|
-
t.datetime "created_at"
|
|
49
|
-
t.datetime "updated_at"
|
|
45
|
+
t.datetime "created_at", :null => false
|
|
46
|
+
t.datetime "updated_at", :null => false
|
|
50
47
|
t.integer "stage_id"
|
|
51
48
|
end
|
|
52
49
|
|
|
53
|
-
add_index "matches", ["stage_id"], name
|
|
50
|
+
add_index "matches", ["stage_id"], :name => "index_matches_on_stage_id"
|
|
54
51
|
|
|
55
|
-
create_table "players", force
|
|
52
|
+
create_table "players", :force => true do |t|
|
|
56
53
|
t.string "first_name"
|
|
57
54
|
t.string "last_name"
|
|
58
55
|
t.date "birthday"
|
|
@@ -60,59 +57,53 @@ ActiveRecord::Schema.define(version: 20140609133855) do
|
|
|
60
57
|
t.float "height"
|
|
61
58
|
t.float "weight"
|
|
62
59
|
t.integer "team_id"
|
|
63
|
-
t.datetime "created_at"
|
|
64
|
-
t.datetime "updated_at"
|
|
60
|
+
t.datetime "created_at", :null => false
|
|
61
|
+
t.datetime "updated_at", :null => false
|
|
65
62
|
end
|
|
66
63
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
create_table "stadiums", force: true do |t|
|
|
64
|
+
create_table "stadiums", :force => true do |t|
|
|
70
65
|
t.string "name"
|
|
71
66
|
t.integer "capacity"
|
|
72
|
-
t.datetime "created_at"
|
|
73
|
-
t.datetime "updated_at"
|
|
67
|
+
t.datetime "created_at", :null => false
|
|
68
|
+
t.datetime "updated_at", :null => false
|
|
74
69
|
end
|
|
75
70
|
|
|
76
|
-
create_table "stages", force
|
|
71
|
+
create_table "stages", :force => true do |t|
|
|
77
72
|
t.date "beginning"
|
|
78
73
|
t.date "ending"
|
|
79
74
|
t.integer "tournament_id"
|
|
80
75
|
t.string "name"
|
|
81
76
|
t.integer "number"
|
|
82
|
-
t.datetime "created_at"
|
|
83
|
-
t.datetime "updated_at"
|
|
77
|
+
t.datetime "created_at", :null => false
|
|
78
|
+
t.datetime "updated_at", :null => false
|
|
84
79
|
end
|
|
85
80
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
create_table "team_group_statistics", force: true do |t|
|
|
81
|
+
create_table "team_group_statistics", :force => true do |t|
|
|
89
82
|
t.integer "team_id"
|
|
90
83
|
t.integer "games_played"
|
|
91
84
|
t.integer "games_won"
|
|
92
85
|
t.integer "games_lost"
|
|
93
86
|
t.integer "games_draw"
|
|
94
|
-
t.datetime "created_at"
|
|
95
|
-
t.datetime "updated_at"
|
|
87
|
+
t.datetime "created_at", :null => false
|
|
88
|
+
t.datetime "updated_at", :null => false
|
|
96
89
|
end
|
|
97
90
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
create_table "teams", force: true do |t|
|
|
91
|
+
create_table "teams", :force => true do |t|
|
|
101
92
|
t.string "name"
|
|
102
93
|
t.string "country"
|
|
103
94
|
t.string "city"
|
|
104
|
-
t.datetime "created_at"
|
|
105
|
-
t.datetime "updated_at"
|
|
95
|
+
t.datetime "created_at", :null => false
|
|
96
|
+
t.datetime "updated_at", :null => false
|
|
106
97
|
end
|
|
107
98
|
|
|
108
|
-
create_table "tournaments", force
|
|
99
|
+
create_table "tournaments", :force => true do |t|
|
|
109
100
|
t.string "name"
|
|
110
101
|
t.string "short_name"
|
|
111
102
|
t.date "beginning"
|
|
112
103
|
t.date "ending"
|
|
113
|
-
t.boolean "is_current", default
|
|
114
|
-
t.datetime "created_at"
|
|
115
|
-
t.datetime "updated_at"
|
|
104
|
+
t.boolean "is_current", :default => false, :null => false
|
|
105
|
+
t.datetime "created_at", :null => false
|
|
106
|
+
t.datetime "updated_at", :null => false
|
|
116
107
|
end
|
|
117
108
|
|
|
118
109
|
end
|
data/spec/spec_helper.rb
CHANGED
|
@@ -31,7 +31,8 @@ factories_pattern = File.join(File.dirname(__FILE__), 'factories', '**', '*.rb')
|
|
|
31
31
|
Dir[factories_pattern].each { |file| require file }
|
|
32
32
|
Dir[support_pattern].each { |file| require file }
|
|
33
33
|
|
|
34
|
-
ActiveRecord
|
|
34
|
+
# TODO: Check ActiveRecord version and call #check_pending only if its greater or equal to 3.x
|
|
35
|
+
# ActiveRecord::Migration.check_pending! if defined?(ActiveRecord::Migration)
|
|
35
36
|
|
|
36
37
|
RSpec.configure do |config|
|
|
37
38
|
config.run_all_when_everything_filtered = true
|
|
@@ -41,7 +42,10 @@ RSpec.configure do |config|
|
|
|
41
42
|
|
|
42
43
|
config.before(:suite) do
|
|
43
44
|
begin
|
|
44
|
-
|
|
45
|
+
# FIXME: This shit gives me some really strange errors
|
|
46
|
+
# find a way to fix it
|
|
47
|
+
|
|
48
|
+
# FactoryGirl.lint
|
|
45
49
|
ensure
|
|
46
50
|
DatabaseCleaner.clean_with(:truncation)
|
|
47
51
|
end
|
data/synchronisable.gemspec
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
1
|
lib = File.expand_path('../lib', __FILE__)
|
|
3
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
3
|
require 'synchronisable/version'
|
|
@@ -6,36 +5,38 @@ require 'synchronisable/version'
|
|
|
6
5
|
Gem::Specification.new do |spec|
|
|
7
6
|
spec.name = 'synchronisable'
|
|
8
7
|
spec.version = Synchronisable::VERSION::STRING
|
|
8
|
+
spec.platform = Gem::Platform::RUBY
|
|
9
9
|
spec.authors = ['Vasiliy Yorkin']
|
|
10
10
|
spec.email = ['vasiliy.yorkin@gmail.com']
|
|
11
|
+
spec.summary = "synchronisable-#{Synchronisable::VERSION::STRING}"
|
|
11
12
|
spec.description = 'Provides base fuctionality (models, DSL) for AR synchronization with external resources (apis, services etc)'
|
|
12
|
-
spec.summary = spec.description
|
|
13
13
|
spec.homepage = 'https://github.com/vyorkin/synchronisable'
|
|
14
|
-
spec.license = 'MIT'
|
|
15
|
-
|
|
16
14
|
spec.files = `git ls-files -z`.split("\x0")
|
|
17
|
-
spec.
|
|
18
|
-
spec.
|
|
19
|
-
spec.
|
|
15
|
+
spec.bindir = 'exe'
|
|
16
|
+
spec.executables = `git ls-files -- exe/*`.split("\n").map { |file| File.basename(file) }
|
|
17
|
+
spec.test_files = []
|
|
18
|
+
spec.require_path = 'lib'
|
|
19
|
+
spec.license = 'MIT'
|
|
20
20
|
|
|
21
|
-
spec.add_runtime_dependency
|
|
22
|
-
spec.add_runtime_dependency
|
|
23
|
-
spec.add_runtime_dependency
|
|
24
|
-
spec.add_runtime_dependency
|
|
21
|
+
spec.add_runtime_dependency 'activerecord', '>= 3.0', '< 5.0'
|
|
22
|
+
spec.add_runtime_dependency 'activesupport', '>= 3.0', '< 5.0'
|
|
23
|
+
spec.add_runtime_dependency 'i18n', '~> 0.6', '>= 0.6.0'
|
|
24
|
+
spec.add_runtime_dependency 'colorize', '~> 0.7', '>= 0.7.7'
|
|
25
25
|
|
|
26
|
-
spec.add_development_dependency
|
|
27
|
-
spec.add_development_dependency
|
|
28
|
-
spec.add_development_dependency
|
|
29
|
-
spec.add_development_dependency
|
|
30
|
-
spec.add_development_dependency
|
|
31
|
-
spec.add_development_dependency
|
|
32
|
-
spec.add_development_dependency
|
|
33
|
-
spec.add_development_dependency
|
|
34
|
-
spec.add_development_dependency
|
|
35
|
-
spec.add_development_dependency
|
|
36
|
-
spec.add_development_dependency
|
|
37
|
-
spec.add_development_dependency
|
|
38
|
-
spec.add_development_dependency
|
|
39
|
-
spec.add_development_dependency
|
|
40
|
-
spec.add_development_dependency
|
|
26
|
+
spec.add_development_dependency 'bundler', '~> 1.8', '>= 1.8.0'
|
|
27
|
+
spec.add_development_dependency 'rake', '~> 10.0', '>= 10.0'
|
|
28
|
+
spec.add_development_dependency 'yard', '~> 0.8', '>= 0.8.7'
|
|
29
|
+
spec.add_development_dependency 'yard-rspec', '~> 0.1', '>= 0.1.0'
|
|
30
|
+
spec.add_development_dependency 'rails', '>= 3.0', '< 5.0'
|
|
31
|
+
spec.add_development_dependency 'rspec', '~> 3.2', '>= 3.2.0'
|
|
32
|
+
spec.add_development_dependency 'rspec-rails', '~> 3.2', '>= 3.2.2'
|
|
33
|
+
spec.add_development_dependency 'rspec-its', '~> 1.2', '>= 1.2.0'
|
|
34
|
+
spec.add_development_dependency 'sqlite3', '~> 1.3', '>= 1.3.1'
|
|
35
|
+
spec.add_development_dependency 'factory_girl', '~> 4.5', '>= 4.5.0'
|
|
36
|
+
spec.add_development_dependency 'factory_girl_sequences', '~> 4.3', '>= 4.3.1'
|
|
37
|
+
spec.add_development_dependency 'database_cleaner', '~> 1.4', '> 1.4.0'
|
|
38
|
+
spec.add_development_dependency 'mutant', '~> 0.7', '>= 0.7.9'
|
|
39
|
+
spec.add_development_dependency 'mutant-rspec', '~> 0.7', '>= 0.7.9'
|
|
40
|
+
spec.add_development_dependency 'guard-rspec', '~> 4.5', '>= 4.5.1'
|
|
41
|
+
spec.add_development_dependency 'simplecov', '~> 0.10', '>= 0.10.0'
|
|
41
42
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: synchronisable
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Vasiliy Yorkin
|
|
8
8
|
autorequire:
|
|
9
|
-
bindir:
|
|
9
|
+
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2015-
|
|
11
|
+
date: 2015-06-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activerecord
|
|
@@ -16,266 +16,400 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 3.0
|
|
19
|
+
version: '3.0'
|
|
20
|
+
- - "<"
|
|
21
|
+
- !ruby/object:Gem::Version
|
|
22
|
+
version: '5.0'
|
|
20
23
|
type: :runtime
|
|
21
24
|
prerelease: false
|
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
26
|
requirements:
|
|
24
27
|
- - ">="
|
|
25
28
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: 3.0
|
|
29
|
+
version: '3.0'
|
|
30
|
+
- - "<"
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '5.0'
|
|
27
33
|
- !ruby/object:Gem::Dependency
|
|
28
34
|
name: activesupport
|
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
|
30
36
|
requirements:
|
|
31
37
|
- - ">="
|
|
32
38
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: 3.0
|
|
39
|
+
version: '3.0'
|
|
40
|
+
- - "<"
|
|
41
|
+
- !ruby/object:Gem::Version
|
|
42
|
+
version: '5.0'
|
|
34
43
|
type: :runtime
|
|
35
44
|
prerelease: false
|
|
36
45
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
46
|
requirements:
|
|
38
47
|
- - ">="
|
|
39
48
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: 3.0
|
|
49
|
+
version: '3.0'
|
|
50
|
+
- - "<"
|
|
51
|
+
- !ruby/object:Gem::Version
|
|
52
|
+
version: '5.0'
|
|
41
53
|
- !ruby/object:Gem::Dependency
|
|
42
54
|
name: i18n
|
|
43
55
|
requirement: !ruby/object:Gem::Requirement
|
|
44
56
|
requirements:
|
|
57
|
+
- - "~>"
|
|
58
|
+
- !ruby/object:Gem::Version
|
|
59
|
+
version: '0.6'
|
|
45
60
|
- - ">="
|
|
46
61
|
- !ruby/object:Gem::Version
|
|
47
|
-
version:
|
|
62
|
+
version: 0.6.0
|
|
48
63
|
type: :runtime
|
|
49
64
|
prerelease: false
|
|
50
65
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
66
|
requirements:
|
|
67
|
+
- - "~>"
|
|
68
|
+
- !ruby/object:Gem::Version
|
|
69
|
+
version: '0.6'
|
|
52
70
|
- - ">="
|
|
53
71
|
- !ruby/object:Gem::Version
|
|
54
|
-
version:
|
|
72
|
+
version: 0.6.0
|
|
55
73
|
- !ruby/object:Gem::Dependency
|
|
56
74
|
name: colorize
|
|
57
75
|
requirement: !ruby/object:Gem::Requirement
|
|
58
76
|
requirements:
|
|
77
|
+
- - "~>"
|
|
78
|
+
- !ruby/object:Gem::Version
|
|
79
|
+
version: '0.7'
|
|
59
80
|
- - ">="
|
|
60
81
|
- !ruby/object:Gem::Version
|
|
61
|
-
version:
|
|
82
|
+
version: 0.7.7
|
|
62
83
|
type: :runtime
|
|
63
84
|
prerelease: false
|
|
64
85
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
86
|
requirements:
|
|
87
|
+
- - "~>"
|
|
88
|
+
- !ruby/object:Gem::Version
|
|
89
|
+
version: '0.7'
|
|
66
90
|
- - ">="
|
|
67
91
|
- !ruby/object:Gem::Version
|
|
68
|
-
version:
|
|
92
|
+
version: 0.7.7
|
|
69
93
|
- !ruby/object:Gem::Dependency
|
|
70
94
|
name: bundler
|
|
71
95
|
requirement: !ruby/object:Gem::Requirement
|
|
72
96
|
requirements:
|
|
73
97
|
- - "~>"
|
|
74
98
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '1.
|
|
99
|
+
version: '1.8'
|
|
100
|
+
- - ">="
|
|
101
|
+
- !ruby/object:Gem::Version
|
|
102
|
+
version: 1.8.0
|
|
76
103
|
type: :development
|
|
77
104
|
prerelease: false
|
|
78
105
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
106
|
requirements:
|
|
80
107
|
- - "~>"
|
|
81
108
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: '1.
|
|
109
|
+
version: '1.8'
|
|
110
|
+
- - ">="
|
|
111
|
+
- !ruby/object:Gem::Version
|
|
112
|
+
version: 1.8.0
|
|
83
113
|
- !ruby/object:Gem::Dependency
|
|
84
114
|
name: rake
|
|
85
115
|
requirement: !ruby/object:Gem::Requirement
|
|
86
116
|
requirements:
|
|
117
|
+
- - "~>"
|
|
118
|
+
- !ruby/object:Gem::Version
|
|
119
|
+
version: '10.0'
|
|
87
120
|
- - ">="
|
|
88
121
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: '0'
|
|
122
|
+
version: '10.0'
|
|
90
123
|
type: :development
|
|
91
124
|
prerelease: false
|
|
92
125
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
126
|
requirements:
|
|
127
|
+
- - "~>"
|
|
128
|
+
- !ruby/object:Gem::Version
|
|
129
|
+
version: '10.0'
|
|
94
130
|
- - ">="
|
|
95
131
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: '0'
|
|
132
|
+
version: '10.0'
|
|
97
133
|
- !ruby/object:Gem::Dependency
|
|
98
134
|
name: yard
|
|
99
135
|
requirement: !ruby/object:Gem::Requirement
|
|
100
136
|
requirements:
|
|
137
|
+
- - "~>"
|
|
138
|
+
- !ruby/object:Gem::Version
|
|
139
|
+
version: '0.8'
|
|
101
140
|
- - ">="
|
|
102
141
|
- !ruby/object:Gem::Version
|
|
103
|
-
version:
|
|
142
|
+
version: 0.8.7
|
|
104
143
|
type: :development
|
|
105
144
|
prerelease: false
|
|
106
145
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
146
|
requirements:
|
|
147
|
+
- - "~>"
|
|
148
|
+
- !ruby/object:Gem::Version
|
|
149
|
+
version: '0.8'
|
|
108
150
|
- - ">="
|
|
109
151
|
- !ruby/object:Gem::Version
|
|
110
|
-
version:
|
|
152
|
+
version: 0.8.7
|
|
111
153
|
- !ruby/object:Gem::Dependency
|
|
112
|
-
name:
|
|
154
|
+
name: yard-rspec
|
|
113
155
|
requirement: !ruby/object:Gem::Requirement
|
|
114
156
|
requirements:
|
|
115
157
|
- - "~>"
|
|
116
158
|
- !ruby/object:Gem::Version
|
|
117
|
-
version:
|
|
159
|
+
version: '0.1'
|
|
160
|
+
- - ">="
|
|
161
|
+
- !ruby/object:Gem::Version
|
|
162
|
+
version: 0.1.0
|
|
118
163
|
type: :development
|
|
119
164
|
prerelease: false
|
|
120
165
|
version_requirements: !ruby/object:Gem::Requirement
|
|
121
166
|
requirements:
|
|
122
167
|
- - "~>"
|
|
123
168
|
- !ruby/object:Gem::Version
|
|
124
|
-
version:
|
|
169
|
+
version: '0.1'
|
|
170
|
+
- - ">="
|
|
171
|
+
- !ruby/object:Gem::Version
|
|
172
|
+
version: 0.1.0
|
|
173
|
+
- !ruby/object:Gem::Dependency
|
|
174
|
+
name: rails
|
|
175
|
+
requirement: !ruby/object:Gem::Requirement
|
|
176
|
+
requirements:
|
|
177
|
+
- - ">="
|
|
178
|
+
- !ruby/object:Gem::Version
|
|
179
|
+
version: '3.0'
|
|
180
|
+
- - "<"
|
|
181
|
+
- !ruby/object:Gem::Version
|
|
182
|
+
version: '5.0'
|
|
183
|
+
type: :development
|
|
184
|
+
prerelease: false
|
|
185
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
186
|
+
requirements:
|
|
187
|
+
- - ">="
|
|
188
|
+
- !ruby/object:Gem::Version
|
|
189
|
+
version: '3.0'
|
|
190
|
+
- - "<"
|
|
191
|
+
- !ruby/object:Gem::Version
|
|
192
|
+
version: '5.0'
|
|
125
193
|
- !ruby/object:Gem::Dependency
|
|
126
194
|
name: rspec
|
|
127
195
|
requirement: !ruby/object:Gem::Requirement
|
|
128
196
|
requirements:
|
|
129
197
|
- - "~>"
|
|
130
198
|
- !ruby/object:Gem::Version
|
|
131
|
-
version: 3.
|
|
199
|
+
version: '3.2'
|
|
200
|
+
- - ">="
|
|
201
|
+
- !ruby/object:Gem::Version
|
|
202
|
+
version: 3.2.0
|
|
132
203
|
type: :development
|
|
133
204
|
prerelease: false
|
|
134
205
|
version_requirements: !ruby/object:Gem::Requirement
|
|
135
206
|
requirements:
|
|
136
207
|
- - "~>"
|
|
137
208
|
- !ruby/object:Gem::Version
|
|
138
|
-
version: 3.
|
|
209
|
+
version: '3.2'
|
|
210
|
+
- - ">="
|
|
211
|
+
- !ruby/object:Gem::Version
|
|
212
|
+
version: 3.2.0
|
|
139
213
|
- !ruby/object:Gem::Dependency
|
|
140
214
|
name: rspec-rails
|
|
141
215
|
requirement: !ruby/object:Gem::Requirement
|
|
142
216
|
requirements:
|
|
143
217
|
- - "~>"
|
|
144
218
|
- !ruby/object:Gem::Version
|
|
145
|
-
version: 3.
|
|
219
|
+
version: '3.2'
|
|
220
|
+
- - ">="
|
|
221
|
+
- !ruby/object:Gem::Version
|
|
222
|
+
version: 3.2.2
|
|
146
223
|
type: :development
|
|
147
224
|
prerelease: false
|
|
148
225
|
version_requirements: !ruby/object:Gem::Requirement
|
|
149
226
|
requirements:
|
|
150
227
|
- - "~>"
|
|
151
228
|
- !ruby/object:Gem::Version
|
|
152
|
-
version: 3.
|
|
229
|
+
version: '3.2'
|
|
230
|
+
- - ">="
|
|
231
|
+
- !ruby/object:Gem::Version
|
|
232
|
+
version: 3.2.2
|
|
153
233
|
- !ruby/object:Gem::Dependency
|
|
154
234
|
name: rspec-its
|
|
155
235
|
requirement: !ruby/object:Gem::Requirement
|
|
156
236
|
requirements:
|
|
237
|
+
- - "~>"
|
|
238
|
+
- !ruby/object:Gem::Version
|
|
239
|
+
version: '1.2'
|
|
157
240
|
- - ">="
|
|
158
241
|
- !ruby/object:Gem::Version
|
|
159
|
-
version:
|
|
242
|
+
version: 1.2.0
|
|
160
243
|
type: :development
|
|
161
244
|
prerelease: false
|
|
162
245
|
version_requirements: !ruby/object:Gem::Requirement
|
|
163
246
|
requirements:
|
|
247
|
+
- - "~>"
|
|
248
|
+
- !ruby/object:Gem::Version
|
|
249
|
+
version: '1.2'
|
|
164
250
|
- - ">="
|
|
165
251
|
- !ruby/object:Gem::Version
|
|
166
|
-
version:
|
|
252
|
+
version: 1.2.0
|
|
167
253
|
- !ruby/object:Gem::Dependency
|
|
168
254
|
name: sqlite3
|
|
169
255
|
requirement: !ruby/object:Gem::Requirement
|
|
170
256
|
requirements:
|
|
257
|
+
- - "~>"
|
|
258
|
+
- !ruby/object:Gem::Version
|
|
259
|
+
version: '1.3'
|
|
171
260
|
- - ">="
|
|
172
261
|
- !ruby/object:Gem::Version
|
|
173
|
-
version:
|
|
262
|
+
version: 1.3.1
|
|
174
263
|
type: :development
|
|
175
264
|
prerelease: false
|
|
176
265
|
version_requirements: !ruby/object:Gem::Requirement
|
|
177
266
|
requirements:
|
|
267
|
+
- - "~>"
|
|
268
|
+
- !ruby/object:Gem::Version
|
|
269
|
+
version: '1.3'
|
|
178
270
|
- - ">="
|
|
179
271
|
- !ruby/object:Gem::Version
|
|
180
|
-
version:
|
|
272
|
+
version: 1.3.1
|
|
181
273
|
- !ruby/object:Gem::Dependency
|
|
182
274
|
name: factory_girl
|
|
183
275
|
requirement: !ruby/object:Gem::Requirement
|
|
184
276
|
requirements:
|
|
277
|
+
- - "~>"
|
|
278
|
+
- !ruby/object:Gem::Version
|
|
279
|
+
version: '4.5'
|
|
185
280
|
- - ">="
|
|
186
281
|
- !ruby/object:Gem::Version
|
|
187
|
-
version:
|
|
282
|
+
version: 4.5.0
|
|
188
283
|
type: :development
|
|
189
284
|
prerelease: false
|
|
190
285
|
version_requirements: !ruby/object:Gem::Requirement
|
|
191
286
|
requirements:
|
|
287
|
+
- - "~>"
|
|
288
|
+
- !ruby/object:Gem::Version
|
|
289
|
+
version: '4.5'
|
|
192
290
|
- - ">="
|
|
193
291
|
- !ruby/object:Gem::Version
|
|
194
|
-
version:
|
|
292
|
+
version: 4.5.0
|
|
195
293
|
- !ruby/object:Gem::Dependency
|
|
196
294
|
name: factory_girl_sequences
|
|
197
295
|
requirement: !ruby/object:Gem::Requirement
|
|
198
296
|
requirements:
|
|
297
|
+
- - "~>"
|
|
298
|
+
- !ruby/object:Gem::Version
|
|
299
|
+
version: '4.3'
|
|
199
300
|
- - ">="
|
|
200
301
|
- !ruby/object:Gem::Version
|
|
201
|
-
version:
|
|
302
|
+
version: 4.3.1
|
|
202
303
|
type: :development
|
|
203
304
|
prerelease: false
|
|
204
305
|
version_requirements: !ruby/object:Gem::Requirement
|
|
205
306
|
requirements:
|
|
307
|
+
- - "~>"
|
|
308
|
+
- !ruby/object:Gem::Version
|
|
309
|
+
version: '4.3'
|
|
206
310
|
- - ">="
|
|
207
311
|
- !ruby/object:Gem::Version
|
|
208
|
-
version:
|
|
312
|
+
version: 4.3.1
|
|
209
313
|
- !ruby/object:Gem::Dependency
|
|
210
314
|
name: database_cleaner
|
|
211
315
|
requirement: !ruby/object:Gem::Requirement
|
|
212
316
|
requirements:
|
|
213
|
-
- - "
|
|
317
|
+
- - "~>"
|
|
214
318
|
- !ruby/object:Gem::Version
|
|
215
|
-
version: '
|
|
319
|
+
version: '1.4'
|
|
320
|
+
- - ">"
|
|
321
|
+
- !ruby/object:Gem::Version
|
|
322
|
+
version: 1.4.0
|
|
216
323
|
type: :development
|
|
217
324
|
prerelease: false
|
|
218
325
|
version_requirements: !ruby/object:Gem::Requirement
|
|
219
326
|
requirements:
|
|
220
|
-
- - "
|
|
327
|
+
- - "~>"
|
|
221
328
|
- !ruby/object:Gem::Version
|
|
222
|
-
version: '
|
|
329
|
+
version: '1.4'
|
|
330
|
+
- - ">"
|
|
331
|
+
- !ruby/object:Gem::Version
|
|
332
|
+
version: 1.4.0
|
|
223
333
|
- !ruby/object:Gem::Dependency
|
|
224
334
|
name: mutant
|
|
225
335
|
requirement: !ruby/object:Gem::Requirement
|
|
226
336
|
requirements:
|
|
337
|
+
- - "~>"
|
|
338
|
+
- !ruby/object:Gem::Version
|
|
339
|
+
version: '0.7'
|
|
227
340
|
- - ">="
|
|
228
341
|
- !ruby/object:Gem::Version
|
|
229
|
-
version:
|
|
342
|
+
version: 0.7.9
|
|
230
343
|
type: :development
|
|
231
344
|
prerelease: false
|
|
232
345
|
version_requirements: !ruby/object:Gem::Requirement
|
|
233
346
|
requirements:
|
|
347
|
+
- - "~>"
|
|
348
|
+
- !ruby/object:Gem::Version
|
|
349
|
+
version: '0.7'
|
|
234
350
|
- - ">="
|
|
235
351
|
- !ruby/object:Gem::Version
|
|
236
|
-
version:
|
|
352
|
+
version: 0.7.9
|
|
237
353
|
- !ruby/object:Gem::Dependency
|
|
238
354
|
name: mutant-rspec
|
|
239
355
|
requirement: !ruby/object:Gem::Requirement
|
|
240
356
|
requirements:
|
|
357
|
+
- - "~>"
|
|
358
|
+
- !ruby/object:Gem::Version
|
|
359
|
+
version: '0.7'
|
|
241
360
|
- - ">="
|
|
242
361
|
- !ruby/object:Gem::Version
|
|
243
|
-
version:
|
|
362
|
+
version: 0.7.9
|
|
244
363
|
type: :development
|
|
245
364
|
prerelease: false
|
|
246
365
|
version_requirements: !ruby/object:Gem::Requirement
|
|
247
366
|
requirements:
|
|
367
|
+
- - "~>"
|
|
368
|
+
- !ruby/object:Gem::Version
|
|
369
|
+
version: '0.7'
|
|
248
370
|
- - ">="
|
|
249
371
|
- !ruby/object:Gem::Version
|
|
250
|
-
version:
|
|
372
|
+
version: 0.7.9
|
|
251
373
|
- !ruby/object:Gem::Dependency
|
|
252
374
|
name: guard-rspec
|
|
253
375
|
requirement: !ruby/object:Gem::Requirement
|
|
254
376
|
requirements:
|
|
377
|
+
- - "~>"
|
|
378
|
+
- !ruby/object:Gem::Version
|
|
379
|
+
version: '4.5'
|
|
255
380
|
- - ">="
|
|
256
381
|
- !ruby/object:Gem::Version
|
|
257
|
-
version:
|
|
382
|
+
version: 4.5.1
|
|
258
383
|
type: :development
|
|
259
384
|
prerelease: false
|
|
260
385
|
version_requirements: !ruby/object:Gem::Requirement
|
|
261
386
|
requirements:
|
|
387
|
+
- - "~>"
|
|
388
|
+
- !ruby/object:Gem::Version
|
|
389
|
+
version: '4.5'
|
|
262
390
|
- - ">="
|
|
263
391
|
- !ruby/object:Gem::Version
|
|
264
|
-
version:
|
|
392
|
+
version: 4.5.1
|
|
265
393
|
- !ruby/object:Gem::Dependency
|
|
266
394
|
name: simplecov
|
|
267
395
|
requirement: !ruby/object:Gem::Requirement
|
|
268
396
|
requirements:
|
|
397
|
+
- - "~>"
|
|
398
|
+
- !ruby/object:Gem::Version
|
|
399
|
+
version: '0.10'
|
|
269
400
|
- - ">="
|
|
270
401
|
- !ruby/object:Gem::Version
|
|
271
|
-
version:
|
|
402
|
+
version: 0.10.0
|
|
272
403
|
type: :development
|
|
273
404
|
prerelease: false
|
|
274
405
|
version_requirements: !ruby/object:Gem::Requirement
|
|
275
406
|
requirements:
|
|
407
|
+
- - "~>"
|
|
408
|
+
- !ruby/object:Gem::Version
|
|
409
|
+
version: '0.10'
|
|
276
410
|
- - ">="
|
|
277
411
|
- !ruby/object:Gem::Version
|
|
278
|
-
version:
|
|
412
|
+
version: 0.10.0
|
|
279
413
|
description: Provides base fuctionality (models, DSL) for AR synchronization with
|
|
280
414
|
external resources (apis, services etc)
|
|
281
415
|
email:
|
|
@@ -296,6 +430,8 @@ files:
|
|
|
296
430
|
- README.md
|
|
297
431
|
- Rakefile
|
|
298
432
|
- TODO.md
|
|
433
|
+
- lib/core_ext/hash/keys.rb
|
|
434
|
+
- lib/core_ext/object/try.rb
|
|
299
435
|
- lib/generators/synchronisable/USAGE
|
|
300
436
|
- lib/generators/synchronisable/install_generator.rb
|
|
301
437
|
- lib/generators/synchronisable/templates/create_imports_migration.rb
|
|
@@ -455,107 +591,6 @@ rubyforge_project:
|
|
|
455
591
|
rubygems_version: 2.4.2
|
|
456
592
|
signing_key:
|
|
457
593
|
specification_version: 4
|
|
458
|
-
summary:
|
|
459
|
-
|
|
460
|
-
test_files:
|
|
461
|
-
- spec/dummy/.gitignore
|
|
462
|
-
- spec/dummy/Rakefile
|
|
463
|
-
- spec/dummy/app/assets/images/.keep
|
|
464
|
-
- spec/dummy/app/assets/javascripts/application.js
|
|
465
|
-
- spec/dummy/app/assets/stylesheets/application.css
|
|
466
|
-
- spec/dummy/app/controllers/application_controller.rb
|
|
467
|
-
- spec/dummy/app/gateways/gateway_base.rb
|
|
468
|
-
- spec/dummy/app/gateways/match_gateway.rb
|
|
469
|
-
- spec/dummy/app/gateways/player_gateway.rb
|
|
470
|
-
- spec/dummy/app/gateways/stage_gateway.rb
|
|
471
|
-
- spec/dummy/app/gateways/team_gateway.rb
|
|
472
|
-
- spec/dummy/app/gateways/team_group_statistic_gateway.rb
|
|
473
|
-
- spec/dummy/app/gateways/tournament_gateway.rb
|
|
474
|
-
- spec/dummy/app/helpers/application_helper.rb
|
|
475
|
-
- spec/dummy/app/mailers/.keep
|
|
476
|
-
- spec/dummy/app/models/.keep
|
|
477
|
-
- spec/dummy/app/models/match.rb
|
|
478
|
-
- spec/dummy/app/models/match_player.rb
|
|
479
|
-
- spec/dummy/app/models/player.rb
|
|
480
|
-
- spec/dummy/app/models/stadium.rb
|
|
481
|
-
- spec/dummy/app/models/stage.rb
|
|
482
|
-
- spec/dummy/app/models/team.rb
|
|
483
|
-
- spec/dummy/app/models/team_group_statistic.rb
|
|
484
|
-
- spec/dummy/app/models/tournament.rb
|
|
485
|
-
- spec/dummy/app/synchronizers/break_convention_team_synchronizer.rb
|
|
486
|
-
- spec/dummy/app/synchronizers/match_synchronizer.rb
|
|
487
|
-
- spec/dummy/app/synchronizers/player_synchronizer.rb
|
|
488
|
-
- spec/dummy/app/synchronizers/stage_synchronizer.rb
|
|
489
|
-
- spec/dummy/app/synchronizers/team_group_statistic_synchronizer.rb
|
|
490
|
-
- spec/dummy/app/synchronizers/tournament_synchronizer.rb
|
|
491
|
-
- spec/dummy/app/views/layouts/application.html.erb
|
|
492
|
-
- spec/dummy/bin/bundle
|
|
493
|
-
- spec/dummy/bin/rails
|
|
494
|
-
- spec/dummy/bin/rake
|
|
495
|
-
- spec/dummy/config.ru
|
|
496
|
-
- spec/dummy/config/application.rb
|
|
497
|
-
- spec/dummy/config/boot.rb
|
|
498
|
-
- spec/dummy/config/database.yml
|
|
499
|
-
- spec/dummy/config/environment.rb
|
|
500
|
-
- spec/dummy/config/environments/development.rb
|
|
501
|
-
- spec/dummy/config/environments/production.rb
|
|
502
|
-
- spec/dummy/config/environments/test.rb
|
|
503
|
-
- spec/dummy/config/initializers/backtrace_silencers.rb
|
|
504
|
-
- spec/dummy/config/initializers/filter_parameter_logging.rb
|
|
505
|
-
- spec/dummy/config/initializers/inflections.rb
|
|
506
|
-
- spec/dummy/config/initializers/mime_types.rb
|
|
507
|
-
- spec/dummy/config/initializers/secret_token.rb
|
|
508
|
-
- spec/dummy/config/initializers/session_store.rb
|
|
509
|
-
- spec/dummy/config/initializers/synchronisable.rb
|
|
510
|
-
- spec/dummy/config/initializers/wrap_parameters.rb
|
|
511
|
-
- spec/dummy/config/locales/en.yml
|
|
512
|
-
- spec/dummy/config/routes.rb
|
|
513
|
-
- spec/dummy/db/migrate/20140422132431_create_teams.rb
|
|
514
|
-
- spec/dummy/db/migrate/20140422132544_create_matches.rb
|
|
515
|
-
- spec/dummy/db/migrate/20140422132708_create_players.rb
|
|
516
|
-
- spec/dummy/db/migrate/20140422133122_create_match_players.rb
|
|
517
|
-
- spec/dummy/db/migrate/20140422135244_create_imports.rb
|
|
518
|
-
- spec/dummy/db/migrate/20140422140817_create_stadiums.rb
|
|
519
|
-
- spec/dummy/db/migrate/20140507135800_create_tournaments.rb
|
|
520
|
-
- spec/dummy/db/migrate/20140507135837_create_stages.rb
|
|
521
|
-
- spec/dummy/db/migrate/20140507140039_add_stage_id_to_matches.rb
|
|
522
|
-
- spec/dummy/db/migrate/20140609133855_create_team_group_statistic.rb
|
|
523
|
-
- spec/dummy/db/schema.rb
|
|
524
|
-
- spec/dummy/db/seeds.rb
|
|
525
|
-
- spec/dummy/lib/assets/.keep
|
|
526
|
-
- spec/dummy/lib/tasks/.keep
|
|
527
|
-
- spec/dummy/log/.keep
|
|
528
|
-
- spec/dummy/public/404.html
|
|
529
|
-
- spec/dummy/public/422.html
|
|
530
|
-
- spec/dummy/public/500.html
|
|
531
|
-
- spec/dummy/public/favicon.ico
|
|
532
|
-
- spec/dummy/public/robots.txt
|
|
533
|
-
- spec/dummy/vendor/assets/javascripts/.keep
|
|
534
|
-
- spec/dummy/vendor/assets/stylesheets/.keep
|
|
535
|
-
- spec/factories/import.rb
|
|
536
|
-
- spec/factories/match.rb
|
|
537
|
-
- spec/factories/match_player.rb
|
|
538
|
-
- spec/factories/player.rb
|
|
539
|
-
- spec/factories/remote/match.rb
|
|
540
|
-
- spec/factories/remote/player.rb
|
|
541
|
-
- spec/factories/remote/stage.rb
|
|
542
|
-
- spec/factories/remote/team.rb
|
|
543
|
-
- spec/factories/remote/team_group_statistic.rb
|
|
544
|
-
- spec/factories/remote/tournament.rb
|
|
545
|
-
- spec/factories/stadium.rb
|
|
546
|
-
- spec/factories/team.rb
|
|
547
|
-
- spec/models/match_spec.rb
|
|
548
|
-
- spec/models/stage_spec.rb
|
|
549
|
-
- spec/models/team_group_statistic_spec.rb
|
|
550
|
-
- spec/models/team_spec.rb
|
|
551
|
-
- spec/models/tournament_spec.rb
|
|
552
|
-
- spec/spec_helper.rb
|
|
553
|
-
- spec/synchronisable/dsl/macro_spec.rb
|
|
554
|
-
- spec/synchronisable/models/import_spec.rb
|
|
555
|
-
- spec/synchronisable/support/has_macro_bar.rb
|
|
556
|
-
- spec/synchronisable/support/has_macro_foo.rb
|
|
557
|
-
- spec/synchronisable/support/has_macro_foo_subclass.rb
|
|
558
|
-
- spec/synchronisable/support/shared/contexts.rb
|
|
559
|
-
- spec/synchronisable/support/shared/examples.rb
|
|
560
|
-
- spec/synchronisable/synchronisable_spec.rb
|
|
594
|
+
summary: synchronisable-1.3.0
|
|
595
|
+
test_files: []
|
|
561
596
|
has_rdoc:
|