punk 0.0.3 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (150) hide show
  1. checksums.yaml +4 -4
  2. data/.editorconfig +9 -0
  3. data/.github/workflows/ship.yml +28 -0
  4. data/.github/workflows/test.yml +45 -0
  5. data/.rdoc_options +23 -0
  6. data/.rgignore +1 -0
  7. data/.rspec +2 -0
  8. data/.rubocop.yml +243 -0
  9. data/Gemfile +6 -6
  10. data/Gemfile.lock +18 -30
  11. data/README.md +8 -0
  12. data/Rakefile +7 -9
  13. data/VERSION +1 -1
  14. data/app/migrations/001_lets_punk.rb +3 -0
  15. data/app/routes/hello.rb +4 -0
  16. data/bin/punk +0 -1
  17. data/env/.gitignore +3 -0
  18. data/env/spec/test.sh +3 -0
  19. data/env/test.sh +5 -0
  20. data/lib/punk/actions/.keep +0 -0
  21. data/lib/punk/actions/groups/list.rb +24 -0
  22. data/lib/punk/actions/sessions/clear.rb +21 -0
  23. data/lib/punk/actions/sessions/create.rb +64 -0
  24. data/lib/punk/actions/sessions/list.rb +18 -0
  25. data/lib/punk/actions/sessions/verify.rb +24 -0
  26. data/lib/punk/actions/tenants/list.rb +18 -0
  27. data/lib/punk/actions/users/list_group.rb +18 -0
  28. data/lib/punk/actions/users/list_tenant.rb +18 -0
  29. data/lib/punk/actions/users/show.rb +18 -0
  30. data/lib/punk/commands/http.rb +3 -3
  31. data/lib/punk/commands/list.rb +12 -6
  32. data/lib/punk/config/defaults.json +3 -0
  33. data/lib/punk/config/schema.json +3 -0
  34. data/lib/punk/core/app.rb +6 -8
  35. data/lib/punk/core/commander.rb +9 -6
  36. data/lib/punk/core/exec.rb +2 -0
  37. data/lib/punk/core/load.rb +0 -1
  38. data/lib/punk/framework/command.rb +5 -1
  39. data/lib/punk/framework/plugins/validation.rb +0 -14
  40. data/lib/punk/framework/runnable.rb +1 -1
  41. data/lib/punk/helpers/loggable.rb +1 -1
  42. data/lib/punk/migrations/001_punk.rb +103 -0
  43. data/lib/punk/models/.keep +0 -0
  44. data/lib/punk/models/group.rb +20 -0
  45. data/lib/punk/models/group_user_metadata.rb +17 -0
  46. data/lib/punk/models/identity.rb +29 -0
  47. data/lib/punk/models/session.rb +89 -0
  48. data/lib/punk/models/tenant.rb +19 -0
  49. data/lib/punk/models/tenant_user_metadata.rb +17 -0
  50. data/lib/punk/models/user.rb +31 -0
  51. data/lib/punk/routes/groups.rb +31 -0
  52. data/lib/punk/routes/plivo.rb +4 -0
  53. data/lib/punk/routes/sessions.rb +108 -0
  54. data/lib/punk/routes/swagger.rb +9 -0
  55. data/lib/punk/routes/tenants.rb +29 -0
  56. data/lib/punk/routes/users.rb +36 -0
  57. data/lib/punk/services/.keep +0 -0
  58. data/lib/punk/services/challenge_claim.rb +46 -0
  59. data/lib/punk/services/create_identities.rb +25 -0
  60. data/lib/punk/services/generate_swagger.rb +25 -0
  61. data/lib/punk/services/prove_claim.rb +29 -0
  62. data/lib/punk/services/secret.rb +9 -0
  63. data/lib/punk/templates/groups/list.jbuilder +7 -0
  64. data/lib/punk/templates/plivo.slim +16 -0
  65. data/lib/punk/templates/sessions/list.jbuilder +6 -0
  66. data/lib/punk/templates/sessions/pending.jbuilder +4 -0
  67. data/lib/punk/templates/tenants/list.jbuilder +7 -0
  68. data/lib/punk/templates/tenants/list.slim +8 -0
  69. data/lib/punk/templates/users/list.jbuilder +7 -0
  70. data/lib/punk/templates/users/list.rcsv +4 -0
  71. data/lib/punk/templates/users/show.jbuilder +5 -0
  72. data/lib/punk/views/groups/list.rb +22 -0
  73. data/lib/punk/views/plivo_store.rb +15 -0
  74. data/lib/punk/views/sessions/list.rb +22 -0
  75. data/lib/punk/views/sessions/pending.rb +28 -0
  76. data/lib/punk/views/tenants/list.rb +22 -0
  77. data/lib/punk/views/users/list.rb +22 -0
  78. data/lib/punk/views/users/show.rb +22 -0
  79. data/lib/punk/workers/.keep +0 -0
  80. data/lib/punk/workers/expire_sessions.rb +9 -0
  81. data/lib/punk/workers/geocode_session_worker.rb +48 -0
  82. data/lib/punk/workers/identify_session_worker.rb +45 -0
  83. data/lib/punk/workers/secret.rb +18 -0
  84. data/lib/punk/workers/send_email_worker.rb +51 -0
  85. data/lib/punk/workers/send_sms_worker.rb +40 -0
  86. data/punk.gemspec +149 -16
  87. data/schema.psql +345 -0
  88. data/spec/actions/groups/punk/list_groups_action_spec.rb +36 -0
  89. data/spec/actions/sessions/punk/clear_session_action_spec.rb +29 -0
  90. data/spec/actions/sessions/punk/create_session_action_spec.rb +33 -0
  91. data/spec/actions/sessions/punk/list_sessions_action_spec.rb +26 -0
  92. data/spec/actions/sessions/punk/verify_session_action_spec.rb +59 -0
  93. data/spec/actions/tenants/punk/list_tenants_action_spec.rb +25 -0
  94. data/spec/actions/users/punk/list_group_users_action_spec.rb +26 -0
  95. data/spec/actions/users/punk/list_tenant_users_action_spec.rb +26 -0
  96. data/spec/factories/group.rb +12 -0
  97. data/spec/factories/group_user_metadata.rb +10 -0
  98. data/spec/factories/identity.rb +19 -0
  99. data/spec/factories/session.rb +12 -0
  100. data/spec/factories/tenant.rb +10 -0
  101. data/spec/factories/tenant_user_metadata.rb +10 -0
  102. data/spec/factories/user.rb +12 -0
  103. data/spec/lib/commands/auth_spec.rb +11 -0
  104. data/spec/lib/commands/generate_spec.rb +7 -0
  105. data/spec/lib/commands/http_spec.rb +23 -0
  106. data/spec/lib/commands/list_spec.rb +7 -0
  107. data/spec/lib/commands/swagger_spec.rb +7 -0
  108. data/spec/lib/engine/punk_env_spec.rb +13 -0
  109. data/spec/lib/engine/punk_exec_spec.rb +9 -0
  110. data/spec/lib/engine/punk_init_spec.rb +9 -0
  111. data/spec/lib/engine/punk_store_spec.rb +10 -0
  112. data/spec/lib/punk.env +7 -0
  113. data/spec/models/punk/group_spec.rb +50 -0
  114. data/spec/models/punk/group_user_metadata_spec.rb +61 -0
  115. data/spec/models/punk/identity_spec.rb +61 -0
  116. data/spec/models/punk/session_spec.rb +156 -0
  117. data/spec/models/punk/tenant_spec.rb +51 -0
  118. data/spec/models/punk/tenant_user_metadata_spec.rb +61 -0
  119. data/spec/models/punk/user_spec.rb +115 -0
  120. data/spec/routes/groups/get_groups_spec.rb +33 -0
  121. data/spec/routes/plivo/get_plivo_spec.rb +11 -0
  122. data/spec/routes/sessions/delete_session_spec.rb +11 -0
  123. data/spec/routes/sessions/get_sessions_spec.rb +30 -0
  124. data/spec/routes/sessions/patch_session_spec.rb +11 -0
  125. data/spec/routes/sessions/post_session_spec.rb +11 -0
  126. data/spec/routes/swagger/get_swagger_spec.rb +12 -0
  127. data/spec/routes/tenants/get_tenants_spec.rb +31 -0
  128. data/spec/routes/users/get_users_spec.rb +60 -0
  129. data/spec/services/punk/challenge_claim_service_spec.rb +7 -0
  130. data/spec/services/punk/create_identities_service_spec.rb +14 -0
  131. data/spec/services/punk/generate_swagger_service_spec.rb +7 -0
  132. data/spec/services/punk/prove_claim_service_spec.rb +7 -0
  133. data/spec/services/punk/secret_service_spec.rb +7 -0
  134. data/spec/spec_helper.rb +122 -0
  135. data/spec/vcr_cassettes/PUNK_GeocodeSessionWorker/updates_the_session_data.yml +57 -0
  136. data/spec/vcr_cassettes/PUNK_IdentifySessionWorker/updates_the_session_data.yml +112 -0
  137. data/spec/views/punk/plivo_store_spec.rb +7 -0
  138. data/spec/views/sessions/punk/list_sessions_view_spec.rb +7 -0
  139. data/spec/views/sessions/punk/pending_session_view_spec.rb +7 -0
  140. data/spec/views/tenants/punk/list_tenants_view_spec.rb +7 -0
  141. data/spec/views/users/punk/list_groups_view_spec.rb +7 -0
  142. data/spec/views/users/punk/list_users_view_spec.rb +7 -0
  143. data/spec/workers/punk/expire_sessions_worker_spec.rb +31 -0
  144. data/spec/workers/punk/geocode_session_worker_spec.rb +14 -0
  145. data/spec/workers/punk/identify_session_worker_spec.rb +15 -0
  146. data/spec/workers/punk/secret_worker_spec.rb +20 -0
  147. data/spec/workers/punk/send_email_worker_spec.rb +46 -0
  148. data/spec/workers/punk/send_sms_worker_spec.rb +33 -0
  149. metadata +169 -13
  150. data/lib/punk/views/all.rb +0 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6c5da76bf816d7620b6f5d967e347bd9dca73bedc06d92e6383ef7711ed1e5f6
4
- data.tar.gz: 71480cd4c971fa145027e29006287e8f4c4a04862ba61e5bc1a9cd3fb25ec4c5
3
+ metadata.gz: 7178f5eae926161a0706c9c64ef8e57228ccb5ef5104ebb353b1595085755d8f
4
+ data.tar.gz: 0ef6b97cbaeb614f08dc85e51ef97d3382c82dc277d61a438078abacdcdd53f3
5
5
  SHA512:
6
- metadata.gz: bcdb8db68f2043c9f2edfc5d1331b78b6bd7d1a30a1ea2bfaec3c41e3b51f2a92b51c1cfdb8c74d93df2ebfdb9a328f7ca9b5c9d835e3b711c1c58a6a87ad6d9
7
- data.tar.gz: f15bc05aae04d83d95f966d2022107b658e1b9ad9ed89ec5fdca6effb624376a28eaa6f476e4079876daf5afe8783ca50bdcbb860a8ada32305e19aecc057836
6
+ metadata.gz: eb1b9ee114d8696a90f7cfc47c6a6aae3d759a8121dfd4e0e3f5ec3756db57d77d99eb94aab1165f3c3c7101cec8ae2a8310c04ccbf4b03dca5e9f3fb1f11b05
7
+ data.tar.gz: c3aa57ef40815657a8fd029d4bd1d116dfc28db30287345149815635e824d27740a6909667345512f98150c593673f83b51877a4d7c8cbc063cc7cb6f95ca12f
@@ -0,0 +1,9 @@
1
+ root = true
2
+
3
+ [*]
4
+ charset = utf-8
5
+ indent_style = space
6
+ indent_size = 2
7
+ end_of_line = lf
8
+ insert_final_newline = true
9
+ trim_trailing_whitespace = true
@@ -0,0 +1,28 @@
1
+ name: ship
2
+
3
+ on:
4
+ release:
5
+ types:
6
+ - published
7
+
8
+ jobs:
9
+ ship:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v2
13
+ - name: Set up Ruby
14
+ uses: ruby/setup-ruby@v1
15
+ with:
16
+ ruby-version: 2.5.8
17
+ bundler-cache: true
18
+ - name: Deploy to RubyGems
19
+ run: |
20
+ mkdir -p $HOME/.gem
21
+ touch $HOME/.gem/credentials
22
+ chmod 0600 $HOME/.gem/credentials
23
+ printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
24
+ bundle exec rake gemspec
25
+ bundle exec rake build
26
+ gem push pkg/*
27
+ env:
28
+ GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"
@@ -0,0 +1,45 @@
1
+ name: test
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ test:
7
+ runs-on: ubuntu-latest
8
+ env:
9
+ PUNK_ENV: test
10
+ COVERALLS_REPO_TOKEN: "${{secrets.COVERALLS_REPO_TOKEN}}"
11
+ IPSTACK_ACCESS_KEY: "${{secrets.IPSTACK_ACCESS_KEY}}"
12
+ USERSTACK_API_KEY: "${{secrets.USERSTACK_API_KEY}}"
13
+ DATABASE_URL: "postgres://postgres:postgres@localhost/punk_test"
14
+
15
+ services:
16
+ postgres:
17
+ image: postgres
18
+ env:
19
+ POSTGRES_PASSWORD: postgres
20
+ options: >-
21
+ --health-cmd pg_isready
22
+ --health-interval 10s
23
+ --health-timeout 5s
24
+ --health-retries 5
25
+ ports:
26
+ - 5432:5432
27
+ memcached:
28
+ image: memcached
29
+ ports:
30
+ - 11211:11211
31
+ options: --health-cmd "timeout 5 bash -c 'cat < /dev/null > /dev/udp/127.0.0.1/11211'" --health-interval 10s --health-timeout 5s --health-retries 5
32
+ steps:
33
+ - uses: actions/checkout@v2
34
+ - name: Set up Ruby
35
+ uses: ruby/setup-ruby@v1
36
+ with:
37
+ ruby-version: 2.5.8
38
+ bundler-cache: true
39
+ - name: Lint files
40
+ run: bundle exec rubocop
41
+ - name: Run specs
42
+ run: |
43
+ bundle exec ruby ./bin/punk db create
44
+ bundle exec ruby ./bin/punk db migrate
45
+ bundle exec rspec
@@ -0,0 +1,23 @@
1
+ --- !ruby/object:RDoc::Options
2
+ encoding: UTF-8
3
+ static_path: []
4
+ rdoc_include:
5
+ - "."
6
+ - "/Users/jason/dev/rocket_engine"
7
+ charset: UTF-8
8
+ exclude:
9
+ hyperlink_all: false
10
+ line_numbers: false
11
+ locale:
12
+ locale_dir: locale
13
+ locale_name:
14
+ main_page:
15
+ markup: markdown
16
+ output_decoration: true
17
+ page_dir:
18
+ show_hash: false
19
+ tab_width: 8
20
+ template_stylesheets: []
21
+ title:
22
+ visibility: :protected
23
+ webcvs:
@@ -0,0 +1 @@
1
+ *.lock
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --require spec_helper
@@ -0,0 +1,243 @@
1
+ require:
2
+ - rubocop-rails
3
+ - rubocop-rspec
4
+
5
+ AllCops:
6
+ NewCops: enable
7
+ TargetRubyVersion: 2.5
8
+ DisplayCopNames: true
9
+ Exclude:
10
+ - "punk.gemspec"
11
+ - ".bundle/**/*"
12
+ - "vendor/**/*"
13
+ - "node_modules/**/*"
14
+
15
+ RSpec/DescribeMethod:
16
+ Exclude:
17
+ - spec/routes/**/*
18
+
19
+ RSpec/FilePath:
20
+ Exclude:
21
+ - spec/routes/**/*
22
+
23
+ Layout/EmptyLineAfterGuardClause:
24
+ Enabled: false
25
+
26
+ Layout/EmptyLinesAroundAttributeAccessor:
27
+ Enabled: true
28
+
29
+ Layout/ExtraSpacing:
30
+ AllowForAlignment: false
31
+
32
+ Layout/FirstHashElementIndentation:
33
+ EnforcedStyle: consistent
34
+
35
+ Layout/LineLength:
36
+ Enabled: false
37
+
38
+ Layout/SpaceAroundEqualsInParameterDefault:
39
+ EnforcedStyle: no_space
40
+
41
+ Layout/SpaceAroundMethodCallOperator:
42
+ Enabled: true
43
+
44
+ Layout/SpaceBeforeBrackets:
45
+ Enabled: false
46
+
47
+ Lint/BinaryOperatorWithIdenticalOperands:
48
+ Enabled: true
49
+
50
+ Lint/DeprecatedOpenSSLConstant:
51
+ Enabled: true
52
+
53
+ Lint/DuplicateElsifCondition:
54
+ Enabled: true
55
+
56
+ Lint/DuplicateRescueException:
57
+ Enabled: true
58
+
59
+ Lint/EmptyConditionalBody:
60
+ Enabled: true
61
+
62
+ Lint/FloatComparison:
63
+ Enabled: true
64
+
65
+ Lint/MissingSuper:
66
+ Enabled: true
67
+
68
+ Lint/MixedRegexpCaptureTypes:
69
+ Enabled: true
70
+
71
+ Lint/OutOfRangeRegexpRef:
72
+ Enabled: true
73
+
74
+ Lint/RaiseException:
75
+ Enabled: true
76
+
77
+ Lint/SelfAssignment:
78
+ Enabled: true
79
+
80
+ Lint/StructNewOverride:
81
+ Enabled: true
82
+
83
+ Lint/TopLevelReturnWithArgument:
84
+ Enabled: true
85
+
86
+ Lint/UnreachableLoop:
87
+ Enabled: true
88
+
89
+ Metrics/ParameterLists:
90
+ Enabled: false
91
+
92
+ Metrics/BlockLength:
93
+ Enabled: false
94
+
95
+ Metrics/MethodLength:
96
+ Enabled: false
97
+
98
+ Metrics/ClassLength:
99
+ Enabled: false
100
+
101
+ Metrics/ModuleLength:
102
+ Enabled: false
103
+
104
+ Metrics/AbcSize:
105
+ Enabled: false
106
+
107
+ Metrics/CyclomaticComplexity:
108
+ Enabled: false
109
+
110
+ Metrics/PerceivedComplexity:
111
+ Enabled: false
112
+
113
+ Naming/MethodParameterName:
114
+ Enabled: false
115
+
116
+ RSpec/EmptyExampleGroup:
117
+ Enabled: false
118
+
119
+ RSpec/MultipleExpectations:
120
+ Max: 2
121
+
122
+ Style/AccessorGrouping:
123
+ Enabled: true
124
+
125
+ Rails/ActiveRecordCallbacksOrder:
126
+ Enabled: true
127
+
128
+ Style/ArrayCoercion:
129
+ Enabled: true
130
+
131
+ Style/AsciiComments:
132
+ Enabled: false
133
+
134
+ Style/BisectedAttrAccessor:
135
+ Enabled: true
136
+
137
+ Style/CaseLikeIf:
138
+ Enabled: true
139
+
140
+ Style/Documentation:
141
+ Enabled: false
142
+
143
+ Style/ExplicitBlockArgument:
144
+ Enabled: false
145
+
146
+ Style/ExponentialNotation:
147
+ Enabled: true
148
+
149
+ Style/GlobalStdStream:
150
+ Enabled: true
151
+
152
+ Style/HashAsLastArrayItem:
153
+ Enabled: true
154
+
155
+ Style/HashEachMethods:
156
+ Enabled: true
157
+
158
+ Style/HashLikeCase:
159
+ Enabled: true
160
+
161
+ Style/HashTransformKeys:
162
+ Enabled: true
163
+
164
+ Style/HashTransformValues:
165
+ Enabled: true
166
+
167
+ Style/OptionalBooleanParameter:
168
+ Enabled: true
169
+
170
+ Style/ParallelAssignment:
171
+ Enabled: false
172
+
173
+ Style/RedundantAssignment:
174
+ Enabled: true
175
+
176
+ Style/RedundantFetchBlock:
177
+ Enabled: true
178
+
179
+ Style/RedundantFileExtensionInRequire:
180
+ Enabled: true
181
+
182
+ Style/RedundantRegexpCharacterClass:
183
+ Enabled: true
184
+
185
+ Style/RedundantRegexpEscape:
186
+ Enabled: true
187
+
188
+ Style/RegexpLiteral:
189
+ Enabled: false
190
+
191
+ Style/SingleArgumentDig:
192
+ Enabled: true
193
+
194
+ Style/SlicingWithRange:
195
+ Enabled: true
196
+
197
+ Style/StringConcatenation:
198
+ Enabled: true
199
+
200
+ Style/StringLiterals:
201
+ Enabled: false
202
+
203
+ Style/SymbolArray:
204
+ Enabled: false
205
+
206
+ Style/WordArray:
207
+ Enabled: false
208
+
209
+ Rails/FindById:
210
+ Enabled: true
211
+
212
+ Rails/Inquiry:
213
+ Enabled: true
214
+
215
+ Rails/MailerName:
216
+ Enabled: true
217
+
218
+ Rails/MatchRoute:
219
+ Enabled: true
220
+
221
+ Rails/NegateInclude:
222
+ Enabled: true
223
+
224
+ Rails/Pluck:
225
+ Enabled: true
226
+
227
+ Rails/PluckInWhere:
228
+ Enabled: true
229
+
230
+ Rails/RenderInline:
231
+ Enabled: true
232
+
233
+ Rails/RenderPlainText:
234
+ Enabled: true
235
+
236
+ Rails/ShortI18n:
237
+ Enabled: true
238
+
239
+ Rails/SkipsModelValidations:
240
+ Enabled: false
241
+
242
+ Rails/WhereExists:
243
+ Enabled: true
data/Gemfile CHANGED
@@ -47,7 +47,7 @@ gem 'aasm', '~> 5.1'
47
47
 
48
48
  # Authentication
49
49
  gem 'http-accept', '~> 2.1'
50
- gem 'maxmind-db', '~> 1.1'
50
+ gem 'ipstack', '~> 0.1'
51
51
  gem 'rbnacl', '~> 7.1'
52
52
  gem 'userstack', '~> 0.1'
53
53
 
@@ -70,7 +70,7 @@ gem 'slim', '~> 4.1'
70
70
 
71
71
  # JSON Rendering
72
72
  gem 'jbuilder', '~> 2.10'
73
- gem 'oj', '~> 3.10'
73
+ gem 'oj', '~> 3.11'
74
74
  gem 'tilt-jbuilder', '~> 0.7'
75
75
 
76
76
  # Documentation Generation
@@ -81,7 +81,8 @@ gem 'swagger_yard', '~> 1.0'
81
81
  gem 'activesupport', '~> 6.1'
82
82
 
83
83
  # Monitoring
84
- gem 'sentry-raven', '~> 3.1'
84
+ gem 'sentry-ruby', '~> 4.1'
85
+ gem 'sentry-sidekiq', '~> 4.1'
85
86
  gem 'skylight', '~> 4.3'
86
87
 
87
88
  # Phone Numbers
@@ -89,24 +90,23 @@ gem 'phony', '~> 2.18'
89
90
 
90
91
  # Development
91
92
  group :development do
93
+ gem 'bundler', '~> 1.17'
92
94
  gem 'gemfile_updater', '~> 0.1'
93
95
  gem 'juwelier', '~> 2.4'
94
96
  end
95
97
 
96
98
  # Testing
97
99
  group :test do
98
- gem 'capybara', '~> 3.34'
99
100
  gem 'coveralls', '~> 0.8'
100
101
  gem 'factory_bot', '~> 6.1'
101
102
  gem 'faker', '~> 2.15'
102
103
  gem 'rack-test', '~> 1.1'
103
104
  gem 'rspec', '~> 3.10'
104
105
  gem 'rspec-its', '~> 1.3'
105
- gem 'rubocop', '~> 1.7'
106
+ gem 'rubocop', '~> 1.8'
106
107
  gem 'rubocop-rails', '~> 2.9'
107
108
  gem 'rubocop-rspec', '~> 2.1'
108
109
  gem 'rubocop-sequel', '~> 0.1'
109
- gem 'selenium-webdriver', '~> 3.142'
110
110
  gem 'timecop', '~> 0.9'
111
111
  gem 'vcr', '~> 6.0'
112
112
  gem 'webmock', '~> 3.11'
@@ -3,7 +3,7 @@ GEM
3
3
  specs:
4
4
  aasm (5.1.1)
5
5
  concurrent-ruby (~> 1.0)
6
- activesupport (6.1.0)
6
+ activesupport (6.1.1)
7
7
  concurrent-ruby (~> 1.0, >= 1.0.2)
8
8
  i18n (>= 1.6, < 2)
9
9
  minitest (>= 5.1)
@@ -18,15 +18,6 @@ GEM
18
18
  msgpack (~> 1.0)
19
19
  builder (3.2.4)
20
20
  byebug (11.1.3)
21
- capybara (3.34.0)
22
- addressable
23
- mini_mime (>= 0.1.3)
24
- nokogiri (~> 1.8)
25
- rack (>= 1.6.0)
26
- rack-test (>= 0.6.3)
27
- regexp_parser (~> 1.5)
28
- xpath (~> 3.2)
29
- childprocess (3.0.0)
30
21
  chronic (0.10.2)
31
22
  coderay (1.1.3)
32
23
  commander (4.5.2)
@@ -62,7 +53,7 @@ GEM
62
53
  faraday_middleware (1.0.0)
63
54
  faraday (~> 1.0)
64
55
  ffi (1.14.2)
65
- fugit (1.4.1)
56
+ fugit (1.4.2)
66
57
  et-orbi (~> 1.1, >= 1.1.8)
67
58
  raabro (~> 1.4)
68
59
  gemfile_updater (0.1.0)
@@ -83,6 +74,8 @@ GEM
83
74
  domain_name (~> 0.5)
84
75
  i18n (1.8.7)
85
76
  concurrent-ruby (~> 1.0)
77
+ ipstack (0.1.3)
78
+ nokogiri (>= 1.8, < 2.0)
86
79
  jbuilder (2.10.1)
87
80
  activesupport (>= 5.0.0)
88
81
  json (2.5.1)
@@ -105,12 +98,10 @@ GEM
105
98
  addressable (~> 2.7)
106
99
  mailgun-ruby (1.2.0)
107
100
  rest-client (~> 2.0.2)
108
- maxmind-db (1.1.1)
109
101
  method_source (1.0.0)
110
102
  mime-types (3.3.1)
111
103
  mime-types-data (~> 3.2015)
112
104
  mime-types-data (3.2020.1104)
113
- mini_mime (1.0.2)
114
105
  mini_portile2 (2.5.0)
115
106
  minitest (5.14.3)
116
107
  msgpack (1.3.3)
@@ -128,7 +119,7 @@ GEM
128
119
  multi_json (~> 1.3)
129
120
  multi_xml (~> 0.5)
130
121
  rack (>= 1.2, < 3)
131
- oj (3.10.18)
122
+ oj (3.11.0)
132
123
  papertrail (0.11.0)
133
124
  ansi (~> 1.5)
134
125
  chronic (~> 0.10)
@@ -171,7 +162,7 @@ GEM
171
162
  rchardet (1.8.0)
172
163
  rdoc (6.3.0)
173
164
  redis (4.2.5)
174
- regexp_parser (1.8.2)
165
+ regexp_parser (2.0.3)
175
166
  rest-client (2.0.2)
176
167
  http-cookie (>= 1.0.2, < 2.0)
177
168
  mime-types (>= 1.16, < 4.0)
@@ -197,7 +188,7 @@ GEM
197
188
  diff-lcs (>= 1.2.0, < 2.0)
198
189
  rspec-support (~> 3.10.0)
199
190
  rspec-support (3.10.1)
200
- rubocop (1.8.0)
191
+ rubocop (1.8.1)
201
192
  parallel (~> 1.10)
202
193
  parser (>= 3.0.0.0)
203
194
  rainbow (>= 2.2.2, < 4.0)
@@ -218,15 +209,14 @@ GEM
218
209
  rubocop-sequel (0.1.0)
219
210
  rubocop (~> 1.0)
220
211
  ruby-progressbar (1.11.0)
221
- rubyzip (2.3.0)
222
- selenium-webdriver (3.142.7)
223
- childprocess (>= 0.5, < 4.0)
224
- rubyzip (>= 1.2.2)
225
212
  semantic_logger (4.7.4)
226
213
  concurrent-ruby (~> 1.0)
227
214
  semver2 (3.4.2)
228
- sentry-raven (3.1.1)
215
+ sentry-ruby (4.1.3)
216
+ concurrent-ruby (~> 1.0, >= 1.0.2)
229
217
  faraday (>= 1.0)
218
+ sentry-sidekiq (4.1.2)
219
+ sentry-ruby (~> 4.1.2)
230
220
  sequel (5.40.0)
231
221
  sequel_pg (1.14.0)
232
222
  pg (>= 0.18.0, != 1.2.0)
@@ -264,7 +254,7 @@ GEM
264
254
  jbuilder
265
255
  tilt (>= 1.3.0, < 3)
266
256
  timecop (0.9.2)
267
- tins (1.26.0)
257
+ tins (1.28.0)
268
258
  sync
269
259
  tzinfo (2.0.4)
270
260
  concurrent-ruby (~> 1.0)
@@ -279,8 +269,6 @@ GEM
279
269
  crack (>= 0.3.2)
280
270
  hashdiff (>= 0.4.0, < 2.0.0)
281
271
  wisper (2.0.1)
282
- xpath (3.2.0)
283
- nokogiri (~> 1.8)
284
272
  yard (0.9.26)
285
273
  zeitwerk (2.4.2)
286
274
 
@@ -292,8 +280,8 @@ DEPENDENCIES
292
280
  activesupport (~> 6.1)
293
281
  amazing_print (~> 1.2)
294
282
  bootsnap (~> 1.5)
283
+ bundler (~> 1.17)
295
284
  byebug (~> 11.1)
296
- capybara (~> 3.34)
297
285
  commander (~> 4.5)
298
286
  coveralls (~> 0.8)
299
287
  dalli (~> 2.7)
@@ -304,12 +292,12 @@ DEPENDENCIES
304
292
  faker (~> 2.15)
305
293
  gemfile_updater (~> 0.1)
306
294
  http-accept (~> 2.1)
295
+ ipstack (~> 0.1)
307
296
  jbuilder (~> 2.10)
308
297
  juwelier (~> 2.4)
309
298
  launchy (~> 2.5)
310
299
  mailgun-ruby (~> 1.2)
311
- maxmind-db (~> 1.1)
312
- oj (~> 3.10)
300
+ oj (~> 3.11)
313
301
  papertrail (~> 0.11)
314
302
  pg (~> 1.2)
315
303
  phony (~> 2.18)
@@ -328,13 +316,13 @@ DEPENDENCIES
328
316
  roda-route_list (~> 2.1)
329
317
  rspec (~> 3.10)
330
318
  rspec-its (~> 1.3)
331
- rubocop (~> 1.7)
319
+ rubocop (~> 1.8)
332
320
  rubocop-rails (~> 2.9)
333
321
  rubocop-rspec (~> 2.1)
334
322
  rubocop-sequel (~> 0.1)
335
- selenium-webdriver (~> 3.142)
336
323
  semantic_logger (~> 4.7)
337
- sentry-raven (~> 3.1)
324
+ sentry-ruby (~> 4.1)
325
+ sentry-sidekiq (~> 4.1)
338
326
  sequel (~> 5.40)
339
327
  sequel_pg (~> 1.14)
340
328
  sidekiq (~> 6.1)