activemodel-interdependence 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +97 -0
  3. data/.rspec +4 -0
  4. data/.rubocop.yml +208 -0
  5. data/.rubocop_todo.yml +34 -0
  6. data/.yardopts +1 -0
  7. data/Gemfile +83 -0
  8. data/Gemfile.lock +336 -0
  9. data/Guardfile +68 -0
  10. data/LICENSE +21 -0
  11. data/README.md +76 -0
  12. data/Rakefile +95 -0
  13. data/activemodel-interdependence.gemspec +34 -0
  14. data/circle.yml +7 -0
  15. data/config/devtools.yml +2 -0
  16. data/config/flay.yml +3 -0
  17. data/config/flog.yml +2 -0
  18. data/config/mutant.yml +9 -0
  19. data/config/reek.yml +120 -0
  20. data/config/rubocop.yml +1 -0
  21. data/config/yardstick.yml +2 -0
  22. data/lib/activemodel/interdependence.rb +12 -0
  23. data/lib/activemodel/model/interdependence.rb +97 -0
  24. data/lib/activemodel/validator/interdependence.rb +107 -0
  25. data/lib/interdependence.rb +87 -0
  26. data/lib/interdependence/activemodel/class_methods.rb +50 -0
  27. data/lib/interdependence/activemodel/validates_with.rb +128 -0
  28. data/lib/interdependence/common_mixin.rb +84 -0
  29. data/lib/interdependence/dependency/base.rb +177 -0
  30. data/lib/interdependence/dependency/model.rb +61 -0
  31. data/lib/interdependence/dependency/validator.rb +43 -0
  32. data/lib/interdependence/dependency_resolver/base.rb +114 -0
  33. data/lib/interdependence/dependency_resolver/model.rb +76 -0
  34. data/lib/interdependence/dependency_resolver/validator.rb +34 -0
  35. data/lib/interdependence/dependency_set.rb +15 -0
  36. data/lib/interdependence/dependency_set_graph.rb +66 -0
  37. data/lib/interdependence/graph.rb +103 -0
  38. data/lib/interdependence/model.rb +70 -0
  39. data/lib/interdependence/model/validator.rb +99 -0
  40. data/lib/interdependence/observable_dependency_set_graph.rb +23 -0
  41. data/lib/interdependence/types.rb +199 -0
  42. data/lib/interdependence/validator.rb +67 -0
  43. data/lib/interdependence/validator/validator.rb +105 -0
  44. data/lib/interdependence/version.rb +3 -0
  45. metadata +213 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f9317a71674589de42b3ae1f7d404df00110f5d5
4
+ data.tar.gz: 8c56f3e838b8dae2c98afff596a23e3fe9406d2b
5
+ SHA512:
6
+ metadata.gz: c0647d380f5a51ab7804704327c1adfd596c651df3a26e58028927e1c7763532a585f626162b0fb3168d363708d5172fddc500a3ed63bb8094fd2f7079994fdc
7
+ data.tar.gz: 3b29bd5333082cf3f630d9b13e42a80e18fcbfd57db93a94cd6692f0e94284f037c252b75bf14f8afc7dc2d5a3096b65302a2ad8daa6c06eabc4abbe769bcb87
data/.gitignore ADDED
@@ -0,0 +1,97 @@
1
+ # Created by https://www.gitignore.io
2
+
3
+ .pryrc
4
+
5
+ measurements
6
+
7
+ ### SublimeText ###
8
+ # cache files for sublime text
9
+ *.tmlanguage.cache
10
+ *.tmPreferences.cache
11
+ *.stTheme.cache
12
+
13
+ # workspace files are user-specific
14
+ *.sublime-workspace
15
+ *.sublime-project
16
+
17
+ # sftp configuration file
18
+ sftp-config.json
19
+
20
+ ### RubyMine ###
21
+ # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm
22
+
23
+ *.iml
24
+
25
+ ## Directory-based project format:
26
+ .idea/
27
+ # if you remove the above rule, at least ignore the following:
28
+
29
+ # User-specific stuff:
30
+ # .idea/workspace.xml
31
+ # .idea/tasks.xml
32
+ # .idea/dictionaries
33
+
34
+ # Sensitive or high-churn files:
35
+ # .idea/dataSources.ids
36
+ # .idea/dataSources.xml
37
+ # .idea/sqlDataSources.xml
38
+ # .idea/dynamic.xml
39
+ # .idea/uiDesigner.xml
40
+
41
+ # Gradle:
42
+ # .idea/gradle.xml
43
+ # .idea/libraries
44
+
45
+ # Mongo Explorer plugin:
46
+ # .idea/mongoSettings.xml
47
+
48
+ ## File-based project format:
49
+ *.ipr
50
+ *.iws
51
+
52
+ ## Plugin-specific files:
53
+
54
+ # IntelliJ
55
+ /out/
56
+
57
+ # mpeltonen/sbt-idea plugin
58
+ .idea_modules/
59
+
60
+ # JIRA plugin
61
+ atlassian-ide-plugin.xml
62
+
63
+ # Crashlytics plugin (for Android Studio and IntelliJ)
64
+ com_crashlytics_export_strings.xml
65
+ crashlytics.properties
66
+ crashlytics-build.properties
67
+
68
+ ### Ruby ###
69
+ *.gem
70
+ *.rbc
71
+ /.config
72
+ /coverage/
73
+ /InstalledFiles
74
+ /pkg/
75
+ /spec/reports/
76
+ /test/tmp/
77
+ /test/version_tmp/
78
+ /tmp/
79
+
80
+ ## Specific to RubyMotion:
81
+ .dat*
82
+ .repl_history
83
+ build/
84
+
85
+ ## Documentation cache and generated files:
86
+ /.yardoc/
87
+ /_yardoc/
88
+ /doc/
89
+ /rdoc/
90
+
91
+ ## Environment normalisation:
92
+ .bundle/*
93
+ /vendor/bundle
94
+ /lib/bundler/man/
95
+
96
+ # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
97
+ .rvmrc
data/.rspec ADDED
@@ -0,0 +1,4 @@
1
+ --require spec_helper
2
+ --require rubocop-rspec
3
+ --format documentation
4
+ --color
data/.rubocop.yml ADDED
@@ -0,0 +1,208 @@
1
+ require: rubocop-rspec
2
+ inherit_from: .rubocop_todo.yml
3
+ AllCops:
4
+ Include:
5
+ - "**/*.rake"
6
+ - "**/Gemfile"
7
+ - "**/Rakefile"
8
+ Exclude:
9
+ - "vendor/**/*"
10
+ - "db/**/*"
11
+ DisplayCopNames: true
12
+ RunRailsCops: true
13
+ TrailingWhitespace:
14
+ Enabled: false
15
+ Style/TrailingBlankLines:
16
+ Enabled: false
17
+ Style/ExtraSpacing:
18
+ Enabled: false
19
+ StringLiterals:
20
+ EnforcedStyle: single_quotes
21
+ Metrics/LineLength:
22
+ Max: 100
23
+ Style/DotPosition:
24
+ EnforcedStyle: leading
25
+ Style/CommentAnnotation:
26
+ Description: Checks formatting of special comments (TODO, FIXME, OPTIMIZE, HACK,
27
+ REVIEW).
28
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#annotate-keywords
29
+ Enabled: true
30
+ Rails/Delegate:
31
+ Description: Prefer delegate method for delegations.
32
+ Enabled: true
33
+ Style/FileName:
34
+ Enabled: true
35
+ Style/GlobalVars:
36
+ Enabled: true
37
+ Style/IfUnlessModifier:
38
+ Description: Favor modifier if/unless usage when you have a single-line body.
39
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#if-as-a-modifier
40
+ Enabled: true
41
+ MaxLineLength: 100
42
+ Style/Next:
43
+ Description: Use `next` to skip iteration instead of a condition at the end.
44
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals
45
+ Enabled: true
46
+ EnforcedStyle: always
47
+ SupportedStyles:
48
+ - skip_modifier_ifs
49
+ - always
50
+ Style/NumericLiterals:
51
+ Description: Add underscores to large numeric literals to improve their readability.
52
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#underscores-in-numerics
53
+ Enabled: true
54
+ MinDigits: 5
55
+ Style/PercentLiteralDelimiters:
56
+ Description: Use `%`-literal delimiters consistently
57
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-literal-braces
58
+ Enabled: true
59
+ PreferredDelimiters:
60
+ "%": "()"
61
+ "%i": "()"
62
+ "%q": "()"
63
+ "%Q": "()"
64
+ "%r": "()"
65
+ "%s": "()"
66
+ "%w": "()"
67
+ "%W": "()"
68
+ "%x": "()"
69
+ Style/RegexpLiteral:
70
+ Description: Use %r for regular expressions matching more than `MaxSlashes` '/'
71
+ characters. Use %r only for regular expressions matching more than `MaxSlashes`
72
+ '/' character.
73
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-r
74
+ Enabled: true
75
+ Style/SignalException:
76
+ Description: Checks for proper usage of fail and raise.
77
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#fail-method
78
+ Enabled: true
79
+ Style/SingleLineMethods:
80
+ Description: Avoid single-line methods.
81
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-single-line-methods
82
+ Enabled: true
83
+ AllowIfMethodIsEmpty: true
84
+ Style/TrivialAccessors:
85
+ Enabled: true
86
+ ExactNameMatch: false
87
+ AllowPredicates: false
88
+ AllowDSLWriters: false
89
+ IgnoreClassMethods: false
90
+ Whitelist:
91
+ - to_ary
92
+ - to_a
93
+ - to_c
94
+ - to_enum
95
+ - to_h
96
+ - to_hash
97
+ - to_i
98
+ - to_int
99
+ - to_io
100
+ - to_open
101
+ - to_path
102
+ - to_proc
103
+ - to_r
104
+ - to_regexp
105
+ - to_str
106
+ - to_s
107
+ - to_sym
108
+ Style/WordArray:
109
+ Description: Use %w or %W for arrays of words.
110
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-w
111
+ Enabled: true
112
+ MinSize: 0
113
+ WordRegex: !ruby/regexp /\A[\p{Word}]+\z/
114
+ Metrics/ClassLength:
115
+ Description: Avoid classes longer than 250 lines of code.
116
+ Enabled: true
117
+ CountComments: false
118
+ Max: 250
119
+ Style/MethodCalledOnDoEndBlock:
120
+ Description: Avoid chaining a method call on a do...end block.
121
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#single-line-blocks
122
+ Enabled: true
123
+ Style/SymbolArray:
124
+ Description: Use %i or %I for arrays of symbols.
125
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-i
126
+ Enabled: true
127
+ Style/AccessorMethodName:
128
+ Description: Check the naming of accessor methods for get_/set_.
129
+ Enabled: true
130
+ Style/CharacterLiteral:
131
+ Description: Checks for uses of character literals.
132
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-character-literals
133
+ Enabled: true
134
+ Style/ClassVars:
135
+ Description: Avoid the use of class variables.
136
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-class-vars
137
+ Enabled: true
138
+ Style/ColonMethodCall:
139
+ Description: 'Do not use :: for method call.'
140
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#double-colons
141
+ Enabled: true
142
+ Style/DeprecatedHashMethods:
143
+ Description: Checks for use of deprecated Hash methods.
144
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#hash-key
145
+ Enabled: true
146
+ Style/DoubleNegation:
147
+ Description: Checks for uses of double negation (!!).
148
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-bang-bang
149
+ Enabled: true
150
+ Style/EachWithObject:
151
+ Description: Prefer `each_with_object` over `inject` or `reduce`.
152
+ Enabled: true
153
+ Style/EmptyLiteral:
154
+ Description: Prefer literals to Array.new/Hash.new/String.new.
155
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#literal-array-hash
156
+ Enabled: true
157
+ Style/IfWithSemicolon:
158
+ Description: Do not use if x; .... Use the ternary operator instead.
159
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-semicolon-ifs
160
+ Enabled: true
161
+ Style/Lambda:
162
+ Description: Use the new lambda literal syntax for single-line blocks.
163
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#lambda-multi-line
164
+ Enabled: true
165
+ Style/LineEndConcatenation:
166
+ Description: Use \ instead of + or << to concatenate two string literals at line
167
+ end.
168
+ Enabled: true
169
+ Style/ModuleFunction:
170
+ Description: Checks for usage of `extend self` in modules.
171
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#module-function
172
+ Enabled: true
173
+ Style/NegatedIf:
174
+ Description: Favor unless over if for negative conditions (or control flow or).
175
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#unless-for-negatives
176
+ Enabled: true
177
+ Style/NegatedWhile:
178
+ Description: Favor until over while for negative conditions.
179
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#until-for-negatives
180
+ Enabled: true
181
+ Style/NilComparison:
182
+ Description: Prefer x.nil? to x == nil.
183
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#predicate-methods
184
+ Enabled: true
185
+ Style/SelfAssignment:
186
+ Description: Checks for places where self-assignment shorthand should have been
187
+ used.
188
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#self-assignment
189
+ Enabled: true
190
+ Style/StructInheritance:
191
+ Description: Checks for inheritance from Struct.new.
192
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-extend-struct-new
193
+ Enabled: true
194
+ Style/VariableInterpolation:
195
+ Description: Don't interpolate global, instance and class variables directly in
196
+ strings.
197
+ StyleGuide: https://github.com/bbatsov/ruby-style-guide#curlies-interpolate
198
+ Enabled: true
199
+ Lint/UnderscorePrefixedVariableName:
200
+ Description: Do not use prefix `_` for a variable that is used.
201
+ Enabled: true
202
+ Style/MultilineOperationIndentation:
203
+ Description: Checks indentation of binary operations that span more than one line.
204
+ Enabled: true
205
+ EnforcedStyle: aligned
206
+ SupportedStyles:
207
+ - aligned
208
+ - indented
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,34 @@
1
+ # This configuration was generated by `rubocop --auto-gen-config`
2
+ # on 2015-07-26 01:58:46 -0700 using RuboCop version 0.32.1.
3
+ # The point is for the user to remove these configuration records
4
+ # one by one as the offenses are removed from the code base.
5
+ # Note that changes in the inspected code, or installation of new
6
+ # versions of RuboCop, may require this file to be generated again.
7
+
8
+ # Offense count: 5
9
+ # Configuration parameters: AllowURI, URISchemes.
10
+ Metrics/LineLength:
11
+ Max: 121
12
+
13
+ # Offense count: 1
14
+ # Configuration parameters: CountComments.
15
+ Metrics/ModuleLength:
16
+ Max: 127
17
+
18
+ # Offense count: 3
19
+ RSpec/DescribeClass:
20
+ Enabled: false
21
+
22
+ # Offense count: 3
23
+ # Configuration parameters: CustomTransform.
24
+ RSpec/FilePath:
25
+ Enabled: false
26
+
27
+ # Offense count: 1
28
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
29
+ Style/ClassAndModuleChildren:
30
+ Enabled: false
31
+
32
+ # Offense count: 80
33
+ Style/Documentation:
34
+ Enabled: false
data/.yardopts ADDED
@@ -0,0 +1 @@
1
+ --plugin virtus
data/Gemfile ADDED
@@ -0,0 +1,83 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec name: 'activemodel-interdependence'
4
+
5
+ ruby '2.2.1'
6
+
7
+ gem 'activesupport', '= 4.2.3'
8
+ gem 'activemodel', '= 4.2.3'
9
+
10
+ # Dependency on github until http://git.io/vYcYF is released
11
+ gem 'virtus', github: 'solnic/virtus'
12
+
13
+ group :test do
14
+ # unit tests
15
+ gem 'rspec', '~> 3'
16
+
17
+ # mutate our unit tests
18
+ gem 'mutant', '~> 0.8'
19
+
20
+ # rspec mutation integration
21
+ gem 'mutant-rspec', '~> 0.8'
22
+
23
+ gem 'simplecov', require: false
24
+
25
+ gem 'codeclimate-test-reporter', '~> 0.4'
26
+ end
27
+
28
+ group :development do
29
+ # Better REPL
30
+ gem 'pry', '~> 0.10'
31
+
32
+ # good enough debugger
33
+ gem 'pry-byebug', '~> 3.1'
34
+ end
35
+
36
+ group :metrics do
37
+ # Dev tools
38
+ gem 'devtools', git: 'https://github.com/rom-rb/devtools.git'
39
+ end
40
+
41
+ group :guard do
42
+ # Notifications for guard specs
43
+ gem 'growl', '~> 1.0.3'
44
+
45
+ # Filewatcher and runner
46
+ gem 'guard', '~> 2.12.4'
47
+
48
+ # Autorun documentation critic
49
+ gem 'guard-inch', '~> 0.1'
50
+
51
+ # Autogen docs
52
+ gem 'guard-yard', '~> 2.1'
53
+
54
+ gem 'guard-yardstick', github: 'backus/guard-yardstick', branch: 'color'
55
+
56
+ # Autorun style critic
57
+ gem 'guard-rubocop', '~> 1.2'
58
+
59
+ gem 'rubocop-rspec', '~> 1.3', github: 'bquorning/rubocop-rspec', branch: 'fix-build'
60
+
61
+ # Autorun codesmell critic
62
+ gem 'guard-reek', '= 0.0.3', github: 'backus/guard-reek'
63
+
64
+ # Autorun similar code critic
65
+ gem 'guard-flay', '= 0.0.3', github: 'backus/guard-flay'
66
+
67
+ # Autorun painful code critic
68
+ gem 'guard-flog', '= 0.0.4', github: 'backus/guard-flog'
69
+
70
+ # Autorun specs
71
+ gem 'guard-rspec', '~> 4.6'
72
+
73
+ # rebundle
74
+ gem 'guard-bundler', '~> 2.1'
75
+
76
+ gem 'guard-rake'
77
+ end
78
+
79
+ group :docs do
80
+ gem 'yard', '= 0.8.7.6'
81
+
82
+ gem 'yard-virtus', github: 'backus/yard-virtus'
83
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,336 @@
1
+ GIT
2
+ remote: git://github.com/backus/guard-flay.git
3
+ revision: d780132eafe1715710072e0f45adf2f6dc501f70
4
+ specs:
5
+ guard-flay (0.0.3)
6
+ flay (~> 2.6)
7
+ flay-haml (~> 0.0.3)
8
+ guard-compat (~> 1.1)
9
+
10
+ GIT
11
+ remote: git://github.com/backus/guard-flog.git
12
+ revision: 4e27de253d96085637f3440f0b00b658781b7e4d
13
+ specs:
14
+ guard-flog (0.0.4)
15
+ flog (~> 4.3.0)
16
+ guard-compat (~> 1.1)
17
+
18
+ GIT
19
+ remote: git://github.com/backus/guard-reek.git
20
+ revision: 20823c5bbd2677b0d4d61d25da5a0a1e5d17885d
21
+ specs:
22
+ guard-reek (0.0.3)
23
+ guard-compat (~> 1.1)
24
+ reek (~> 3.0)
25
+
26
+ GIT
27
+ remote: git://github.com/backus/guard-yardstick.git
28
+ revision: 47e48003c6137ff24dc23f6f659c100647e60c54
29
+ branch: color
30
+ specs:
31
+ guard-yardstick (0.0.4)
32
+ guard (>= 2.0)
33
+ guard-compat (>= 1.2)
34
+ yardstick (>= 0.9)
35
+
36
+ GIT
37
+ remote: git://github.com/backus/yard-virtus.git
38
+ revision: 3d2dbbdb60d448ee8df607801b1df086a4935670
39
+ specs:
40
+ yard-virtus (0.0.6)
41
+ virtus (= 1.0.5)
42
+ yard (~> 0.8.7.4)
43
+
44
+ GIT
45
+ remote: git://github.com/bquorning/rubocop-rspec.git
46
+ revision: a61869e88133ce016ec486dacf856f55dd83d1bf
47
+ branch: fix-build
48
+ specs:
49
+ rubocop-rspec (1.3.0)
50
+
51
+ GIT
52
+ remote: git://github.com/solnic/virtus.git
53
+ revision: 8d8755fda36260a84529734de8b3c4c630c69211
54
+ specs:
55
+ virtus (1.0.5)
56
+ axiom-types (~> 0.1)
57
+ coercible (~> 1.0)
58
+ descendants_tracker (~> 0.0, >= 0.0.3)
59
+ equalizer (~> 0.0, >= 0.0.9)
60
+
61
+ GIT
62
+ remote: https://github.com/rom-rb/devtools.git
63
+ revision: 428658998b533b42876e50fdcb06ccdea9ef5f3e
64
+ specs:
65
+ devtools (0.0.2)
66
+ flay (~> 2.6.1)
67
+ flog (~> 4.3.2)
68
+ mutant (~> 0.8.0)
69
+ mutant-rspec (~> 0.8.0)
70
+ rake (~> 10.4.2)
71
+ reek (~> 3.0.4)
72
+ rspec (~> 3.3.0)
73
+ rspec-core (~> 3.3.0)
74
+ rspec-its (~> 1.2.0)
75
+ rubocop (~> 0.32.0)
76
+ simplecov (~> 0.10.0)
77
+ yard (~> 0.8.7.6)
78
+ yardstick (~> 0.9.9)
79
+
80
+ PATH
81
+ remote: .
82
+ specs:
83
+ activemodel-interdependence (0.0.1)
84
+ activemodel (~> 4.2)
85
+ activesupport (~> 4.2)
86
+ adamantium (~> 0.2)
87
+ virtus (~> 1)
88
+
89
+ GEM
90
+ remote: https://rubygems.org/
91
+ specs:
92
+ abstract_type (0.0.7)
93
+ activemodel (4.2.3)
94
+ activesupport (= 4.2.3)
95
+ builder (~> 3.1)
96
+ activesupport (4.2.3)
97
+ i18n (~> 0.7)
98
+ json (~> 1.7, >= 1.7.7)
99
+ minitest (~> 5.1)
100
+ thread_safe (~> 0.3, >= 0.3.4)
101
+ tzinfo (~> 1.1)
102
+ adamantium (0.2.0)
103
+ ice_nine (~> 0.11.0)
104
+ memoizable (~> 0.4.0)
105
+ anima (0.2.0)
106
+ abstract_type (~> 0.0.7)
107
+ adamantium (~> 0.1)
108
+ equalizer (~> 0.0.8)
109
+ ast (2.0.0)
110
+ astrolabe (1.3.1)
111
+ parser (~> 2.2)
112
+ axiom-types (0.1.1)
113
+ descendants_tracker (~> 0.0.4)
114
+ ice_nine (~> 0.11.0)
115
+ thread_safe (~> 0.3, >= 0.3.1)
116
+ builder (3.2.2)
117
+ byebug (4.0.5)
118
+ columnize (= 0.9.0)
119
+ codeclimate-test-reporter (0.4.7)
120
+ simplecov (>= 0.7.1, < 1.0.0)
121
+ coderay (1.1.0)
122
+ coercible (1.0.0)
123
+ descendants_tracker (~> 0.0.1)
124
+ columnize (0.9.0)
125
+ concord (0.1.5)
126
+ adamantium (~> 0.2.0)
127
+ equalizer (~> 0.0.9)
128
+ descendants_tracker (0.0.4)
129
+ thread_safe (~> 0.3, >= 0.3.1)
130
+ diff-lcs (1.2.5)
131
+ docile (1.1.5)
132
+ equalizer (0.0.11)
133
+ ffi (1.9.10)
134
+ flay (2.6.1)
135
+ ruby_parser (~> 3.0)
136
+ sexp_processor (~> 4.0)
137
+ flay-haml (0.0.3)
138
+ flay (>= 1.2, < 3)
139
+ haml (>= 3, < 5)
140
+ flog (4.3.2)
141
+ ruby_parser (~> 3.1, > 3.1.0)
142
+ sexp_processor (~> 4.4)
143
+ formatador (0.2.5)
144
+ growl (1.0.3)
145
+ guard (2.12.8)
146
+ formatador (>= 0.2.4)
147
+ listen (>= 2.7, <= 4.0)
148
+ lumberjack (~> 1.0)
149
+ nenv (~> 0.1)
150
+ notiffany (~> 0.0)
151
+ pry (>= 0.9.12)
152
+ shellany (~> 0.0)
153
+ thor (>= 0.18.1)
154
+ guard-bundler (2.1.0)
155
+ bundler (~> 1.0)
156
+ guard (~> 2.2)
157
+ guard-compat (~> 1.1)
158
+ guard-compat (1.2.1)
159
+ guard-inch (0.1.0)
160
+ guard
161
+ inch
162
+ guard-rake (1.0.0)
163
+ guard
164
+ rake
165
+ guard-rspec (4.6.1)
166
+ guard (~> 2.1)
167
+ guard-compat (~> 1.1)
168
+ rspec (>= 2.99.0, < 4.0)
169
+ guard-rubocop (1.2.0)
170
+ guard (~> 2.0)
171
+ rubocop (~> 0.20)
172
+ guard-yard (2.1.4)
173
+ guard (>= 1.1.0)
174
+ yard (>= 0.7.0)
175
+ haml (4.0.6)
176
+ tilt
177
+ i18n (0.7.0)
178
+ ice_nine (0.11.1)
179
+ inch (0.6.3)
180
+ pry
181
+ sparkr (>= 0.2.0)
182
+ term-ansicolor
183
+ yard (~> 0.8.7.5)
184
+ json (1.8.3)
185
+ listen (3.0.2)
186
+ rb-fsevent (>= 0.9.3)
187
+ rb-inotify (>= 0.9)
188
+ lumberjack (1.0.9)
189
+ memoizable (0.4.2)
190
+ thread_safe (~> 0.3, >= 0.3.1)
191
+ method_source (0.8.2)
192
+ minitest (5.7.0)
193
+ morpher (0.2.3)
194
+ abstract_type (~> 0.0.7)
195
+ adamantium (~> 0.2.0)
196
+ anima (~> 0.2.0)
197
+ ast (~> 2.0.0)
198
+ concord (~> 0.1.4)
199
+ equalizer (~> 0.0.9)
200
+ ice_nine (~> 0.11.0)
201
+ procto (~> 0.0.2)
202
+ mutant (0.8.0)
203
+ abstract_type (~> 0.0.7)
204
+ adamantium (~> 0.2.0)
205
+ anima (~> 0.2.0)
206
+ ast (~> 2.0)
207
+ concord (~> 0.1.5)
208
+ diff-lcs (~> 1.2)
209
+ equalizer (~> 0.0.9)
210
+ ice_nine (~> 0.11.1)
211
+ memoizable (~> 0.4.2)
212
+ morpher (~> 0.2.3)
213
+ parallel (~> 1.3)
214
+ parser (~> 2.2.2)
215
+ procto (~> 0.0.2)
216
+ unparser (~> 0.2.4)
217
+ mutant-rspec (0.8.0)
218
+ mutant (~> 0.8.0)
219
+ rspec-core (>= 3.2.0, < 3.4.0)
220
+ nenv (0.2.0)
221
+ notiffany (0.0.6)
222
+ nenv (~> 0.1)
223
+ shellany (~> 0.0)
224
+ parallel (1.6.0)
225
+ parser (2.2.2.6)
226
+ ast (>= 1.1, < 3.0)
227
+ powerpack (0.1.1)
228
+ procto (0.0.2)
229
+ pry (0.10.1)
230
+ coderay (~> 1.1.0)
231
+ method_source (~> 0.8.1)
232
+ slop (~> 3.4)
233
+ pry-byebug (3.1.0)
234
+ byebug (~> 4.0)
235
+ pry (~> 0.10)
236
+ rainbow (2.0.0)
237
+ rake (10.4.2)
238
+ rb-fsevent (0.9.5)
239
+ rb-inotify (0.9.5)
240
+ ffi (>= 0.5.0)
241
+ reek (3.0.4)
242
+ parser (~> 2.2.2.5)
243
+ rainbow (~> 2.0)
244
+ unparser (~> 0.2.2)
245
+ rspec (3.3.0)
246
+ rspec-core (~> 3.3.0)
247
+ rspec-expectations (~> 3.3.0)
248
+ rspec-mocks (~> 3.3.0)
249
+ rspec-core (3.3.1)
250
+ rspec-support (~> 3.3.0)
251
+ rspec-expectations (3.3.0)
252
+ diff-lcs (>= 1.2.0, < 2.0)
253
+ rspec-support (~> 3.3.0)
254
+ rspec-its (1.2.0)
255
+ rspec-core (>= 3.0.0)
256
+ rspec-expectations (>= 3.0.0)
257
+ rspec-mocks (3.3.1)
258
+ diff-lcs (>= 1.2.0, < 2.0)
259
+ rspec-support (~> 3.3.0)
260
+ rspec-support (3.3.0)
261
+ rubocop (0.32.1)
262
+ astrolabe (~> 1.3)
263
+ parser (>= 2.2.2.5, < 3.0)
264
+ powerpack (~> 0.1)
265
+ rainbow (>= 1.99.1, < 3.0)
266
+ ruby-progressbar (~> 1.4)
267
+ ruby-progressbar (1.7.5)
268
+ ruby_parser (3.7.0)
269
+ sexp_processor (~> 4.1)
270
+ sexp_processor (4.6.0)
271
+ shellany (0.0.1)
272
+ simplecov (0.10.0)
273
+ docile (~> 1.1.0)
274
+ json (~> 1.8)
275
+ simplecov-html (~> 0.10.0)
276
+ simplecov-html (0.10.0)
277
+ slop (3.6.0)
278
+ sparkr (0.4.1)
279
+ term-ansicolor (1.3.2)
280
+ tins (~> 1.0)
281
+ thor (0.19.1)
282
+ thread_safe (0.3.5)
283
+ tilt (2.0.1)
284
+ tins (1.5.4)
285
+ tzinfo (1.2.2)
286
+ thread_safe (~> 0.1)
287
+ unparser (0.2.4)
288
+ abstract_type (~> 0.0.7)
289
+ adamantium (~> 0.2.0)
290
+ concord (~> 0.1.5)
291
+ diff-lcs (~> 1.2.5)
292
+ equalizer (~> 0.0.9)
293
+ parser (~> 2.2.2)
294
+ procto (~> 0.0.2)
295
+ yard (0.8.7.6)
296
+ yardstick (0.9.9)
297
+ yard (~> 0.8, >= 0.8.7.2)
298
+
299
+ PLATFORMS
300
+ ruby
301
+
302
+ DEPENDENCIES
303
+ activemodel (= 4.2.3)
304
+ activemodel-interdependence!
305
+ activesupport (= 4.2.3)
306
+ bundler (~> 1.7)
307
+ codeclimate-test-reporter (~> 0.4)
308
+ devtools!
309
+ growl (~> 1.0.3)
310
+ guard (~> 2.12.4)
311
+ guard-bundler (~> 2.1)
312
+ guard-flay (= 0.0.3)!
313
+ guard-flog (= 0.0.4)!
314
+ guard-inch (~> 0.1)
315
+ guard-rake
316
+ guard-reek (= 0.0.3)!
317
+ guard-rspec (~> 4.6)
318
+ guard-rubocop (~> 1.2)
319
+ guard-yard (~> 2.1)
320
+ guard-yardstick!
321
+ mutant (~> 0.8)
322
+ mutant-rspec (~> 0.8)
323
+ pry (~> 0.10)
324
+ pry-byebug (~> 3.1)
325
+ rake (~> 10.0)
326
+ rspec (~> 3)
327
+ rspec-core (~> 3.0)
328
+ rspec-its (~> 1.2)
329
+ rubocop-rspec (~> 1.3)!
330
+ simplecov
331
+ virtus!
332
+ yard (= 0.8.7.6)
333
+ yard-virtus!
334
+
335
+ BUNDLED WITH
336
+ 1.10.5