suspenders 1.9.3 → 1.10.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0152238c3011c893d503649500d9b5a40fdbbf59
4
- data.tar.gz: c27664d7c142b6b9521d9d2c977dfad77d3afc47
3
+ metadata.gz: d11e413ba023fcf89b30a5673a23c52fd338093a
4
+ data.tar.gz: 924687edbeaf3fb28dcf213a77cd0173fa8c9edb
5
5
  SHA512:
6
- metadata.gz: a7d1e9dc555cf3c14a00a5c3f6b455d56ae32835a3e8051138b6892f6d47db504fa462a7e549fd34fc24d3875bf8510817d05c39819daabf2e4c1d75c9aee254
7
- data.tar.gz: 78129944dc4b6735352f1a62af7e90900a72a28127d5bbc5c75bb9b5adf277e4c207639ab546e354cca49c14a946da1ae3f1c62e3128bbaa51585a91e32f0360
6
+ metadata.gz: cf5aa4110d4e855f12e9a0cd9b1c26fdd2900e3228b79a6152914315813d8d5e0861d0825459e8672c570d32714fb09b093c2deb9da0990834133295ae8efe56
7
+ data.tar.gz: 1eb883a7cd0f8e37c886a3ba1724bb47ad088cd201516c2d050e55e5007c0e58a59445e62172a47cda7647f7ec06129410d2d623bc8ec1a55f57445e1ea53b70
data/Gemfile.lock CHANGED
@@ -1,38 +1,40 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- suspenders (1.9.3)
4
+ suspenders (1.10.0)
5
5
  bundler (~> 1.3)
6
- rails (= 4.0.3)
6
+ rails (~> 4.1.0)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- actionmailer (4.0.3)
12
- actionpack (= 4.0.3)
11
+ actionmailer (4.1.0)
12
+ actionpack (= 4.1.0)
13
+ actionview (= 4.1.0)
13
14
  mail (~> 2.5.4)
14
- actionpack (4.0.3)
15
- activesupport (= 4.0.3)
16
- builder (~> 3.1.0)
17
- erubis (~> 2.7.0)
15
+ actionpack (4.1.0)
16
+ actionview (= 4.1.0)
17
+ activesupport (= 4.1.0)
18
18
  rack (~> 1.5.2)
19
19
  rack-test (~> 0.6.2)
20
- activemodel (4.0.3)
21
- activesupport (= 4.0.3)
22
- builder (~> 3.1.0)
23
- activerecord (4.0.3)
24
- activemodel (= 4.0.3)
25
- activerecord-deprecated_finders (~> 1.0.2)
26
- activesupport (= 4.0.3)
27
- arel (~> 4.0.0)
28
- activerecord-deprecated_finders (1.0.3)
29
- activesupport (4.0.3)
30
- i18n (~> 0.6, >= 0.6.4)
31
- minitest (~> 4.2)
32
- multi_json (~> 1.3)
20
+ actionview (4.1.0)
21
+ activesupport (= 4.1.0)
22
+ builder (~> 3.1)
23
+ erubis (~> 2.7.0)
24
+ activemodel (4.1.0)
25
+ activesupport (= 4.1.0)
26
+ builder (~> 3.1)
27
+ activerecord (4.1.0)
28
+ activemodel (= 4.1.0)
29
+ activesupport (= 4.1.0)
30
+ arel (~> 5.0.0)
31
+ activesupport (4.1.0)
32
+ i18n (~> 0.6, >= 0.6.9)
33
+ json (~> 1.7, >= 1.7.7)
34
+ minitest (~> 5.1)
33
35
  thread_safe (~> 0.1)
34
- tzinfo (~> 0.3.37)
35
- arel (4.0.2)
36
+ tzinfo (~> 1.1)
37
+ arel (5.0.1.20140414130214)
36
38
  aruba (0.5.3)
37
39
  childprocess (>= 0.3.6)
38
40
  cucumber (>= 1.1.1)
@@ -62,12 +64,13 @@ GEM
62
64
  multi_json (~> 1.3)
63
65
  hike (1.2.3)
64
66
  i18n (0.6.9)
67
+ json (1.8.1)
65
68
  mail (2.5.4)
66
69
  mime-types (~> 1.16)
67
70
  treetop (~> 1.4.8)
68
71
  mime-types (1.25.1)
69
72
  mini_portile (0.5.2)
70
- minitest (4.7.5)
73
+ minitest (5.3.3)
71
74
  multi_json (1.7.9)
72
75
  multi_test (0.0.1)
73
76
  nokogiri (1.6.1)
@@ -78,20 +81,22 @@ GEM
78
81
  rack (1.5.2)
79
82
  rack-test (0.6.2)
80
83
  rack (>= 1.0)
81
- rails (4.0.3)
82
- actionmailer (= 4.0.3)
83
- actionpack (= 4.0.3)
84
- activerecord (= 4.0.3)
85
- activesupport (= 4.0.3)
84
+ rails (4.1.0)
85
+ actionmailer (= 4.1.0)
86
+ actionpack (= 4.1.0)
87
+ actionview (= 4.1.0)
88
+ activemodel (= 4.1.0)
89
+ activerecord (= 4.1.0)
90
+ activesupport (= 4.1.0)
86
91
  bundler (>= 1.3.0, < 2.0)
87
- railties (= 4.0.3)
88
- sprockets-rails (~> 2.0.0)
89
- railties (4.0.3)
90
- actionpack (= 4.0.3)
91
- activesupport (= 4.0.3)
92
+ railties (= 4.1.0)
93
+ sprockets-rails (~> 2.0)
94
+ railties (4.1.0)
95
+ actionpack (= 4.1.0)
96
+ activesupport (= 4.1.0)
92
97
  rake (>= 0.8.7)
93
98
  thor (>= 0.18.1, < 2.0)
94
- rake (10.2.2)
99
+ rake (10.3.1)
95
100
  rspec (2.14.1)
96
101
  rspec-core (~> 2.14.0)
97
102
  rspec-expectations (~> 2.14.0)
@@ -105,7 +110,7 @@ GEM
105
110
  multi_json (~> 1.0)
106
111
  rack (~> 1.0)
107
112
  tilt (~> 1.1, != 1.3.0)
108
- sprockets-rails (2.0.1)
113
+ sprockets-rails (2.1.3)
109
114
  actionpack (>= 3.0)
110
115
  activesupport (>= 3.0)
111
116
  sprockets (~> 2.8)
@@ -115,7 +120,8 @@ GEM
115
120
  treetop (1.4.15)
116
121
  polyglot
117
122
  polyglot (>= 0.3.1)
118
- tzinfo (0.3.39)
123
+ tzinfo (1.1.0)
124
+ thread_safe (~> 0.1)
119
125
  xpath (2.0.0)
120
126
  nokogiri (~> 1.3)
121
127
 
data/NEWS.md CHANGED
@@ -1,3 +1,9 @@
1
+ 1.10.0 (April 21, 2014)
2
+
3
+ * Generate a Rails 4.1 app.
4
+ * Generate a working .ruby-version for Ruby >= 2.1.0.
5
+ * Update Unicorn template to version now preferred by Heroku.
6
+
1
7
  1.9.3 (April 13, 2014)
2
8
 
3
9
  * Use FactoryGirl.lint instead of custom-generated factory-testing code.
data/README.md CHANGED
@@ -15,7 +15,7 @@ Then run:
15
15
 
16
16
  suspenders projectname
17
17
 
18
- This will create a Rails 4.0 app in `projectname`.
18
+ This will create a Rails 4.1 app in `projectname`.
19
19
 
20
20
  By default this script creates a new git repository. See below if you
21
21
  want to use it against an existing repo.
@@ -89,6 +89,8 @@ Suspenders also comes with:
89
89
  * A [low database connection pool limit][pool]
90
90
  * [Safe binstubs][binstub]
91
91
  * [t() and l() in specs without prefixing with I18n][i18n]
92
+ * An automatically-created `SECRET_KEY_BASE` environment variable in all
93
+ environments.
92
94
 
93
95
  [bin]: http://robots.thoughtbot.com/bin-setup
94
96
  [compress]: http://robots.thoughtbot.com/content-compression-with-rack-deflater/
@@ -97,16 +99,6 @@ Suspenders also comes with:
97
99
  [binstub]: https://github.com/thoughtbot/suspenders/pull/282
98
100
  [i18n]: https://github.com/thoughtbot/suspenders/pull/304
99
101
 
100
- Suspenders fixes several of Rails' [insecure defaults]:
101
-
102
- * Suspenders uses Unicorn instead of WEBrick, allowing less verbose Server
103
- headers.
104
- * Suspenders is configured to pull your application secret key base from an
105
- environment variable, which means you won't need to risk placing it in version
106
- control.
107
-
108
- [insecure defaults]: http://blog.codeclimate.com/blog/2013/03/27/rails-insecure-defaults/
109
-
110
102
  Heroku
111
103
  ------
112
104
 
@@ -88,7 +88,7 @@ module Suspenders
88
88
 
89
89
  config = <<-RUBY
90
90
 
91
- #{app_name.classify}::Application.configure do
91
+ Rails.application.configure do
92
92
  # ...
93
93
  end
94
94
  RUBY
@@ -97,9 +97,7 @@ end
97
97
  end
98
98
 
99
99
  def setup_secret_token
100
- template 'secret_token.rb',
101
- 'config/initializers/secret_token.rb',
102
- :force => true
100
+ template 'secrets.yml', 'config/secrets.yml', force: true
103
101
  end
104
102
 
105
103
  def create_partials_directory
@@ -171,10 +169,6 @@ end
171
169
  copy_file 'i18n.rb', 'spec/support/i18n.rb'
172
170
  end
173
171
 
174
- def use_spring_binstubs
175
- run 'bundle exec spring binstub --all'
176
- end
177
-
178
172
  def configure_background_jobs_for_rspec
179
173
  copy_file 'background_jobs_rspec.rb', 'spec/support/background_jobs.rb'
180
174
  run 'rails g delayed_job:active_record'
@@ -302,8 +296,8 @@ heroku join --app #{app_name}-production
302
296
 
303
297
  def remove_routes_comment_lines
304
298
  replace_in_file 'config/routes.rb',
305
- /Application\.routes\.draw do.*end/m,
306
- "Application.routes.draw do\nend"
299
+ /Rails\.application\.routes\.draw do.*end/m,
300
+ "Rails.application.routes.draw do\nend"
307
301
  end
308
302
 
309
303
  def disable_xml_params
@@ -76,7 +76,6 @@ module Suspenders
76
76
  build :set_up_factory_girl_for_rspec
77
77
  build :generate_rspec
78
78
  build :configure_rspec
79
- build :use_spring_binstubs
80
79
  build :configure_background_jobs_for_rspec
81
80
  build :enable_database_cleaner
82
81
  build :configure_spec_support_features
@@ -201,7 +200,7 @@ module Suspenders
201
200
  end
202
201
 
203
202
  def patch_level
204
- if RUBY_PATCHLEVEL == 0 && RUBY_VERSION >= '2.1.0'
203
+ if RUBY_VERSION >= '2.1.0'
205
204
  ''
206
205
  else
207
206
  "-p#{RUBY_PATCHLEVEL}"
@@ -1,3 +1,3 @@
1
1
  module Suspenders
2
- VERSION = '1.9.3'
2
+ VERSION = '1.10.0'
3
3
  end
@@ -15,12 +15,12 @@ feature 'Suspend a new project with default configuration' do
15
15
  run_suspenders
16
16
 
17
17
  staging_file = IO.read("#{project_path}/config/environments/staging.rb")
18
- config_stub = "Dummy::Application.configure do"
18
+ config_stub = "Rails.application.configure do"
19
19
  expect(staging_file).to match(/^require_relative 'production'/)
20
20
  expect(staging_file).to match(/#{config_stub}/), staging_file
21
21
  end
22
22
 
23
- if RUBY_PATCHLEVEL == 0 && RUBY_VERSION >= '2.1.0'
23
+ if RUBY_VERSION >= '2.1.0'
24
24
  scenario '.ruby-version does not include patchlevel for Ruby 2.1.0+' do
25
25
  run_suspenders
26
26
 
@@ -13,7 +13,6 @@ module SuspendersTestHelpers
13
13
  Dir.chdir(tmp_path) do
14
14
  Bundler.with_clean_env do
15
15
  ENV['TESTING'] = '1'
16
- ENV['DISABLE_SPRING'] = '1'
17
16
 
18
17
  %x(#{suspenders_bin} #{APP_NAME} #{arguments})
19
18
  end
data/suspenders.gemspec CHANGED
@@ -4,9 +4,9 @@ require 'suspenders/version'
4
4
  require 'date'
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.required_ruby_version = '>= 1.9.2'
7
+ s.required_ruby_version = '>= 1.9.3'
8
8
  s.add_dependency 'bundler', '~> 1.3'
9
- s.add_dependency 'rails', '4.0.3'
9
+ s.add_dependency 'rails', '~> 4.1.0'
10
10
  s.add_development_dependency 'aruba', '~> 0.5.2'
11
11
  s.add_development_dependency 'cucumber', '~> 1.2'
12
12
  s.authors = ['thoughtbot']
@@ -13,9 +13,9 @@ gem 'jquery-rails'
13
13
  gem 'neat'
14
14
  gem 'pg'
15
15
  gem 'rack-timeout'
16
- gem 'rails', '>= 4.0.3'
16
+ gem 'rails', '~> 4.1.0'
17
17
  gem 'recipient_interceptor'
18
- gem 'sass-rails', '>= 4.0.2'
18
+ gem 'sass-rails'
19
19
  gem 'simple_form'
20
20
  gem 'title'
21
21
  gem 'uglifier'
@@ -0,0 +1,14 @@
1
+ default: &default
2
+ secret_key_base: <%= ENV['SECRET_KEY_BASE'] %>
3
+
4
+ development:
5
+ <<: *default
6
+
7
+ test:
8
+ <<: *default
9
+
10
+ staging:
11
+ <<: *default
12
+
13
+ production:
14
+ <<: *default
data/templates/unicorn.rb CHANGED
@@ -21,7 +21,8 @@ after_fork do |server, worker|
21
21
  end
22
22
 
23
23
  if defined? ActiveRecord::Base
24
- config = Rails.application.config.database_configuration[Rails.env]
24
+ config = ActiveRecord::Base.configurations[Rails.env] ||
25
+ Rails.application.config.database_configuration[Rails.env]
25
26
  config['reaping_frequency'] = (ENV['DB_REAPING_FREQUENCY'] || 10).to_i
26
27
  config['pool'] = (ENV['DB_POOL'] || 2).to_i
27
28
  ActiveRecord::Base.establish_connection(config)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: suspenders
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.3
4
+ version: 1.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - thoughtbot
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-13 00:00:00.000000000 Z
11
+ date: 2014-04-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: rails
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '='
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 4.0.3
33
+ version: 4.1.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '='
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 4.0.3
40
+ version: 4.1.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: aruba
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -151,7 +151,7 @@ files:
151
151
  - templates/rack_timeout.rb
152
152
  - templates/ruby-version.erb
153
153
  - templates/sample.env
154
- - templates/secret_token.rb
154
+ - templates/secrets.yml
155
155
  - templates/smtp.rb
156
156
  - templates/spec_helper.rb
157
157
  - templates/staging.rb
@@ -172,7 +172,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
172
172
  requirements:
173
173
  - - ">="
174
174
  - !ruby/object:Gem::Version
175
- version: 1.9.2
175
+ version: 1.9.3
176
176
  required_rubygems_version: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - ">="
@@ -1,10 +0,0 @@
1
- # Your secret key is used for verifying the integrity of signed cookies.
2
- # If you change this key, all old signed cookies will become invalid!
3
-
4
- # Make sure the secret is at least 30 characters and all random,
5
- # no regular words or you'll be exposed to dictionary attacks.
6
- # You can use `rake secret` to generate a secure secret key.
7
-
8
- # Make sure your secret_key_base is kept private
9
- # if you're sharing your code publicly.
10
- <%= app_const %>.config.secret_key_base = ENV['SECRET_KEY_BASE']