punk 0.0.2 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2604a02ba87de49a6b4c354c95dbc589d27fd864ffffe890e1ce8396a74f8974
4
- data.tar.gz: 53e4625a213c0ba33283b08906c4d5f82300af059fc6c9efb391208f3524dee8
3
+ metadata.gz: bcd01e2d794110d209b1c95d064a096126e7d1ac7ef32a96051646c30a530345
4
+ data.tar.gz: 03be67755ef1ffa1059e7fc829810760a3363bc331ddf5cfec91ffdbe96b64d4
5
5
  SHA512:
6
- metadata.gz: 17af3680ed0db2487ad66aba2c0da4967f67fa83ae4a05df9f36a4371060478bd575dfa28ca45604ec93b539ae2bfd86d23cb0efa5eba46c7bdfb8ad9b5a3285
7
- data.tar.gz: d38265e8c9e61a35dda9bcc6d8641d4cb30f1dc578f54af293f97b03552e292285c41753f0b9442746c66a134295d33739a7af66e5e64916f6baf5aa85223e84
6
+ metadata.gz: e8c2b7ca00ad06821ed88da9c3c961799d0410f920b9391be2ea4dbe7dad70cc11562512324a689457d7e82ea644371e276c520646ede3b401eddadd0a1b55da
7
+ data.tar.gz: f1d10c98f46bf408b86a55688007e4c40c209af1806a7e1f01a401314eedce151385a8c62f2b88059aa01802b642a09adbfbeba58ee365bae584b140d5591f80
@@ -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,20 @@
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
+ steps:
11
+ - uses: actions/checkout@v2
12
+ - name: Set up Ruby
13
+ uses: ruby/setup-ruby@v1
14
+ with:
15
+ ruby-version: 2.5.8
16
+ bundler-cache: true
17
+ - name: Lint files
18
+ run: bundle exec rubocop
19
+ - name: Run specs
20
+ run: bundle exec rspec
@@ -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
@@ -89,6 +89,7 @@ gem 'phony', '~> 2.18'
89
89
 
90
90
  # Development
91
91
  group :development do
92
+ gem 'bundler', '~> 1.17'
92
93
  gem 'gemfile_updater', '~> 0.1'
93
94
  gem 'juwelier', '~> 2.4'
94
95
  end
@@ -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)
@@ -292,6 +292,7 @@ DEPENDENCIES
292
292
  activesupport (~> 6.1)
293
293
  amazing_print (~> 1.2)
294
294
  bootsnap (~> 1.5)
295
+ bundler (~> 1.17)
295
296
  byebug (~> 11.1)
296
297
  capybara (~> 3.34)
297
298
  commander (~> 4.5)
data/README.md CHANGED
@@ -1,9 +1,17 @@
1
+ [![test](https://github.com/kranzky/punk/workflows/test/badge.svg)](https://github.com/kranzky/punk/actions?query=workflow%3Atest)
2
+ [![ship](https://github.com/kranzky/punk/workflows/ship/badge.svg)](https://github.com/kranzky/punk/actions?query=workflow%3Aship)
1
3
  [![Gem Version](https://badge.fury.io/rb/punk.svg)](https://badge.fury.io/rb/punk)
2
4
 
3
5
  # Punk!
4
6
 
5
7
  Punk! is an omakase web framework for rapid prototyping.
6
8
 
9
+ ## Release Process
10
+
11
+ 1. `rake version:bump:whatever`
12
+ 2. `rake git:release BRANCH=main`
13
+ 3. Create new release on GitHub to trigger ship workflow
14
+
7
15
  ## Copyright
8
16
 
9
17
  Copyright (c) 2021 Jason Hutchens. See LICENSE for further details.
data/Rakefile CHANGED
@@ -1,31 +1,29 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'rubygems'
4
4
  require 'bundler'
5
5
  begin
6
6
  Bundler.setup(:default, :development)
7
7
  rescue Bundler::BundlerError => e
8
- $stderr.puts e.message
9
- $stderr.puts "Run `bundle install` to install missing gems"
8
+ warn e.message
9
+ warn "Run `bundle install` to install missing gems"
10
10
  exit e.status_code
11
11
  end
12
12
  require 'rake'
13
13
  require 'juwelier'
14
14
  Juwelier::Tasks.new do |gem|
15
- # gem is a Gem::Specification... see http://guides.rubygems.org/specification-reference/ for more options
16
15
  gem.name = "punk"
17
16
  gem.homepage = "https://github.com/kranzky/punk"
18
- gem.license = "UNLICENSE"
19
- gem.summary = %Q{Punk! is an omakase web framework for rapid prototyping.}
20
- gem.description = %Q{}
17
+ gem.license = "Unlicense"
18
+ gem.summary = "Punk! is an omakase web framework for rapid prototyping."
19
+ gem.description = ""
21
20
  gem.email = "lloyd@kranzky.com"
22
21
  gem.authors = ["Lloyd Kranzky"]
23
22
  gem.required_ruby_version = ">= 2.1"
24
- # dependencies defined in Gemfile
25
23
  end
26
24
  Juwelier::RubygemsDotOrgTasks.new
27
25
 
28
26
  require 'yard'
29
27
  YARD::Rake::YardocTask.new
30
28
 
31
- task :default => :clean
29
+ task default: :clean
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2
1
+ 0.1.4
data/bin/punk CHANGED
@@ -2,7 +2,6 @@
2
2
 
3
3
  # frozen_string_literal: true
4
4
 
5
- require 'rubygems'
6
5
  require 'bundler/setup'
7
6
  require 'commander/import'
8
7
  require_relative '../lib/punk'
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env bash
2
+
3
+ export DATABASE_URL='postgres://localhost/punk_test'
4
+ export MEMCACHIER_SERVERS='localhost:11211'
5
+ export COOKIE_SECRET='20b065932a09ca10a67b02a049695177bd9b1aa75bd2cf9755e62b9a7e64daeefebec4edc2a91b2be08f7899fa9e48aca6f67d4f045d34e83213566d7dde249c'
@@ -24,7 +24,7 @@ PUNK::Command.create "PATCH" do
24
24
  "PATH_INFO" => args[0],
25
25
  "CONTENT_TYPE" => "text/json",
26
26
  "SCRIPT_NAME" => "",
27
- "rack.input" => StringIO.new(args[1..].join)
27
+ "rack.input" => StringIO.new(args[1..-1].join)
28
28
  )
29
29
  end
30
30
  end
@@ -38,7 +38,7 @@ PUNK::Command.create "POST" do
38
38
  "PATH_INFO" => args[0],
39
39
  "CONTENT_TYPE" => "text/json",
40
40
  "SCRIPT_NAME" => "",
41
- "rack.input" => StringIO.new(args[1..].join)
41
+ "rack.input" => StringIO.new(args[1..-1].join)
42
42
  )
43
43
  end
44
44
  end
@@ -52,7 +52,7 @@ PUNK::Command.create "PUT" do
52
52
  "PATH_INFO" => args[0],
53
53
  "CONTENT_TYPE" => "text/json",
54
54
  "SCRIPT_NAME" => "",
55
- "rack.input" => StringIO.new(args[1..].join)
55
+ "rack.input" => StringIO.new(args[1..-1].join)
56
56
  )
57
57
  end
58
58
  end
@@ -36,7 +36,7 @@ module PUNK
36
36
  if File.exist?(index_path)
37
37
  File.read(index_path)
38
38
  else
39
- <<~EOF
39
+ <<~INDEX_HTML
40
40
  <!DOCTYPE html>
41
41
  <html>
42
42
  <head>
@@ -47,7 +47,7 @@ module PUNK
47
47
  <p>Are you <a href="https://github.com/kranzky/lets-punk">ready</a> to rock?</p>
48
48
  </body>
49
49
  </html>
50
- EOF
50
+ INDEX_HTML
51
51
  end
52
52
 
53
53
  plugin :sessions, secret: [PUNK.get.cookie.secret].pack('H*'),
@@ -89,7 +89,7 @@ module PUNK
89
89
  def require_session!
90
90
  begin
91
91
  # TODO
92
- @_current_session = nil #Session[request.session['session_id']]
92
+ @_current_session = nil # Session[request.session['session_id']]
93
93
  if @_current_session&.active?
94
94
  @_current_session.touch
95
95
  else
@@ -193,8 +193,8 @@ module PUNK
193
193
  logger.info "Started #{name} for #{request.ip}", params.deep_symbolize_keys.sanitize.inspect
194
194
  logger.trace request.env['HTTP_USER_AGENT']
195
195
  # TODO
196
- # logger.info "Started #{name} for #{request.ip || Session.default_values[:remote_addr].to_s}", params.deep_symbolize_keys.sanitize.inspect
197
- # logger.trace request.env['HTTP_USER_AGENT'] || Session.default_values[:user_agent]
196
+ # logger.info "Started #{name} for #{request.ip || Session.default_values[:remote_addr].to_s}", params.deep_symbolize_keys.sanitize.inspect
197
+ # logger.trace request.env['HTTP_USER_AGENT'] || Session.default_values[:user_agent]
198
198
  logger.trace request.env['HTTP_COOKIE']
199
199
  logger.push_tags(name)
200
200
  _set_cookie(request.env)
@@ -4,10 +4,13 @@ command :test do |c|
4
4
  c.description = 'Run rubocop and rspec'
5
5
  c.action do
6
6
  say('Running tests...')
7
- warn('!!! PUNK_ENV should be test !!!') unless ENV['PUNK_ENV'] == 'test'
7
+ unless ENV['PUNK_ENV'] == 'test'
8
+ error('!!! PUNK_ENV should be test !!!')
9
+ exit 1 # rubocop:disable Rails/Exit
10
+ end
8
11
  ENV.delete_if { |name, _value| name =~ /^PUNK_/ }
9
12
  system('rubocop') &&
10
- system('quasar build -m pwa') &&
13
+ # system('quasar build -m pwa') && TODO
11
14
  system('PUNK_ENV=test rspec')
12
15
  exit $CHILD_STATUS.exitstatus # rubocop:disable Rails/Exit
13
16
  end
@@ -4,7 +4,7 @@ require_relative '../../punk'
4
4
  require 'sidekiq'
5
5
  require 'sidekiq-cron'
6
6
 
7
- PUNK.init(task: 'worker', config: { app: { name: 'Norma' } }).exec
7
+ PUNK.init(task: 'worker', config: { app: { name: 'Roadie' } }).exec
8
8
 
9
9
  Sidekiq.logger = SemanticLogger['PUNK::SKQ']
10
10
  Sidekiq.logger.class.alias_method(:with_context, :tagged)
@@ -12,7 +12,7 @@ module PUNK
12
12
 
13
13
  def method_missing(key, *args, &block)
14
14
  val = super
15
- val = val.to_h if val.class == self.class || val.class.instance_of?(self.class)
15
+ val = val.to_h if val.instance_of?(self.class)
16
16
  val
17
17
  end
18
18
 
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: punk 0.0.2 ruby lib
5
+ # stub: punk 0.1.4 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "punk".freeze
9
- s.version = "0.0.2"
9
+ s.version = "0.1.4"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib".freeze]
13
13
  s.authors = ["Lloyd Kranzky".freeze]
14
- s.date = "2021-01-08"
14
+ s.date = "2021-01-09"
15
15
  s.description = "".freeze
16
16
  s.email = "lloyd@kranzky.com".freeze
17
17
  s.executables = ["punk".freeze]
@@ -21,6 +21,9 @@ Gem::Specification.new do |s|
21
21
  ]
22
22
  s.files = [
23
23
  ".document",
24
+ ".github/workflows/ship.yml",
25
+ ".github/workflows/test.yml",
26
+ ".rubocop.yml",
24
27
  "Gemfile",
25
28
  "Gemfile.lock",
26
29
  "LICENSE",
@@ -28,6 +31,7 @@ Gem::Specification.new do |s|
28
31
  "Rakefile",
29
32
  "VERSION",
30
33
  "bin/punk",
34
+ "env/test.sh",
31
35
  "lib/punk.rb",
32
36
  "lib/punk/commands/auth.rb",
33
37
  "lib/punk/commands/generate.rb",
@@ -94,9 +98,9 @@ Gem::Specification.new do |s|
94
98
  "punk.gemspec"
95
99
  ]
96
100
  s.homepage = "https://github.com/kranzky/punk".freeze
97
- s.licenses = ["UNLICENSE".freeze]
101
+ s.licenses = ["Unlicense".freeze]
98
102
  s.required_ruby_version = Gem::Requirement.new(">= 2.1".freeze)
99
- s.rubygems_version = "3.0.9".freeze
103
+ s.rubygems_version = "2.7.6.2".freeze
100
104
  s.summary = "Punk! is an omakase web framework for rapid prototyping.".freeze
101
105
 
102
106
  if s.respond_to? :specification_version then
@@ -142,6 +146,7 @@ Gem::Specification.new do |s|
142
146
  s.add_runtime_dependency(%q<sentry-raven>.freeze, ["~> 3.1"])
143
147
  s.add_runtime_dependency(%q<skylight>.freeze, ["~> 4.3"])
144
148
  s.add_runtime_dependency(%q<phony>.freeze, ["~> 2.18"])
149
+ s.add_development_dependency(%q<bundler>.freeze, ["~> 1.17"])
145
150
  s.add_development_dependency(%q<gemfile_updater>.freeze, ["~> 0.1"])
146
151
  s.add_development_dependency(%q<juwelier>.freeze, ["~> 2.4"])
147
152
  s.add_development_dependency(%q<amazing_print>.freeze, ["~> 1.2"])
@@ -188,6 +193,7 @@ Gem::Specification.new do |s|
188
193
  s.add_dependency(%q<sentry-raven>.freeze, ["~> 3.1"])
189
194
  s.add_dependency(%q<skylight>.freeze, ["~> 4.3"])
190
195
  s.add_dependency(%q<phony>.freeze, ["~> 2.18"])
196
+ s.add_dependency(%q<bundler>.freeze, ["~> 1.17"])
191
197
  s.add_dependency(%q<gemfile_updater>.freeze, ["~> 0.1"])
192
198
  s.add_dependency(%q<juwelier>.freeze, ["~> 2.4"])
193
199
  s.add_dependency(%q<amazing_print>.freeze, ["~> 1.2"])
@@ -235,6 +241,7 @@ Gem::Specification.new do |s|
235
241
  s.add_dependency(%q<sentry-raven>.freeze, ["~> 3.1"])
236
242
  s.add_dependency(%q<skylight>.freeze, ["~> 4.3"])
237
243
  s.add_dependency(%q<phony>.freeze, ["~> 2.18"])
244
+ s.add_dependency(%q<bundler>.freeze, ["~> 1.17"])
238
245
  s.add_dependency(%q<gemfile_updater>.freeze, ["~> 0.1"])
239
246
  s.add_dependency(%q<juwelier>.freeze, ["~> 2.4"])
240
247
  s.add_dependency(%q<amazing_print>.freeze, ["~> 1.2"])
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: punk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lloyd Kranzky
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-08 00:00:00.000000000 Z
11
+ date: 2021-01-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bootsnap
@@ -556,6 +556,20 @@ dependencies:
556
556
  - - "~>"
557
557
  - !ruby/object:Gem::Version
558
558
  version: '2.18'
559
+ - !ruby/object:Gem::Dependency
560
+ name: bundler
561
+ requirement: !ruby/object:Gem::Requirement
562
+ requirements:
563
+ - - "~>"
564
+ - !ruby/object:Gem::Version
565
+ version: '1.17'
566
+ type: :development
567
+ prerelease: false
568
+ version_requirements: !ruby/object:Gem::Requirement
569
+ requirements:
570
+ - - "~>"
571
+ - !ruby/object:Gem::Version
572
+ version: '1.17'
559
573
  - !ruby/object:Gem::Dependency
560
574
  name: gemfile_updater
561
575
  requirement: !ruby/object:Gem::Requirement
@@ -650,6 +664,9 @@ extra_rdoc_files:
650
664
  - README.md
651
665
  files:
652
666
  - ".document"
667
+ - ".github/workflows/ship.yml"
668
+ - ".github/workflows/test.yml"
669
+ - ".rubocop.yml"
653
670
  - Gemfile
654
671
  - Gemfile.lock
655
672
  - LICENSE
@@ -657,6 +674,7 @@ files:
657
674
  - Rakefile
658
675
  - VERSION
659
676
  - bin/punk
677
+ - env/test.sh
660
678
  - lib/punk.rb
661
679
  - lib/punk/commands/auth.rb
662
680
  - lib/punk/commands/generate.rb
@@ -723,7 +741,7 @@ files:
723
741
  - punk.gemspec
724
742
  homepage: https://github.com/kranzky/punk
725
743
  licenses:
726
- - UNLICENSE
744
+ - Unlicense
727
745
  metadata: {}
728
746
  post_install_message:
729
747
  rdoc_options: []
@@ -740,7 +758,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
740
758
  - !ruby/object:Gem::Version
741
759
  version: '0'
742
760
  requirements: []
743
- rubygems_version: 3.0.9
761
+ rubyforge_project:
762
+ rubygems_version: 2.7.6.2
744
763
  signing_key:
745
764
  specification_version: 4
746
765
  summary: Punk! is an omakase web framework for rapid prototyping.