activemodel-interdependence 0.0.1

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.
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