suspenders 1.4.0 → 1.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +2 -0
- data/Gemfile.lock +3 -5
- data/NEWS.md +8 -0
- data/README.md +29 -7
- data/lib/suspenders/app_builder.rb +7 -51
- data/lib/suspenders/generators/app_generator.rb +0 -1
- data/lib/suspenders/version.rb +1 -1
- data/suspenders.gemspec +1 -1
- data/templates/Gemfile_clean +6 -9
- data/templates/application.css.scss +8 -0
- data/templates/spec_helper.rb +25 -0
- data/templates/suspenders_gitignore +8 -2
- metadata +6 -21
- data/.DS_Store +0 -0
- data/templates/.DS_Store +0 -0
- data/templates/import_scss_styles +0 -3
- data/templates/simplecov_init.rb +0 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5f8addade2f0accc4b83422db244361de882f7e7
|
4
|
+
data.tar.gz: 248d0e59c29f3ea4691e6821d4316676f4b6d8c0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6f8b791e9f77507aba71af074525f8c95f1ebcf4032665a805192212255fef081959179f31399b0822e026c2183d39524ec6752367fb8a06d43a8d6a055501fe
|
7
|
+
data.tar.gz: 4d91b9340bc4c7372266db679d1937f3bfa6fd4a8992e783a1fde5895f2630f92cc627633771244eb5cb52a17df6ded6320a4493b2f7395ae39fbeec17b32fe6
|
data/.travis.yml
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,9 +1,8 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
suspenders (1.
|
4
|
+
suspenders (1.5.0)
|
5
5
|
bundler (~> 1.3)
|
6
|
-
hub (~> 1.10)
|
7
6
|
rails (= 4.0.0)
|
8
7
|
|
9
8
|
GEM
|
@@ -38,7 +37,7 @@ GEM
|
|
38
37
|
childprocess (>= 0.3.6)
|
39
38
|
cucumber (>= 1.1.1)
|
40
39
|
rspec-expectations (>= 2.7.0)
|
41
|
-
atomic (1.1.
|
40
|
+
atomic (1.1.12)
|
42
41
|
builder (3.1.4)
|
43
42
|
childprocess (0.3.9)
|
44
43
|
ffi (~> 1.0, >= 1.0.11)
|
@@ -57,7 +56,6 @@ GEM
|
|
57
56
|
gherkin (2.12.0-x86-mingw32)
|
58
57
|
multi_json (~> 1.3)
|
59
58
|
hike (1.2.3)
|
60
|
-
hub (1.10.6)
|
61
59
|
i18n (0.6.4)
|
62
60
|
mail (2.5.4)
|
63
61
|
mime-types (~> 1.16)
|
@@ -96,7 +94,7 @@ GEM
|
|
96
94
|
activesupport (>= 3.0)
|
97
95
|
sprockets (~> 2.8)
|
98
96
|
thor (0.18.1)
|
99
|
-
thread_safe (0.1.
|
97
|
+
thread_safe (0.1.2)
|
100
98
|
atomic
|
101
99
|
tilt (1.4.1)
|
102
100
|
treetop (1.4.14)
|
data/NEWS.md
CHANGED
data/README.md
CHANGED
@@ -29,18 +29,38 @@ It includes application gems like:
|
|
29
29
|
|
30
30
|
* [Airbrake](https://github.com/airbrake/airbrake) for exception notification
|
31
31
|
* [Bourbon](https://github.com/thoughtbot/bourbon) for Sass mixins
|
32
|
-
* [
|
33
|
-
|
32
|
+
* [Delayed Job](https://github.com/collectiveidea/delayed_job) for background
|
33
|
+
processing
|
34
|
+
* [Email Validator](https://github.com/balexand/email_validator) for email
|
35
|
+
validation
|
36
|
+
* [Flutie](https://github.com/thoughtbot/flutie) for `page_title` and
|
37
|
+
`body_class` view helpers
|
38
|
+
* [High Voltage](https://github.com/thoughtbot/high_voltage) for static pages
|
39
|
+
* [jQuery Rails](https://github.com/rails/jquery-rails) for jQuery
|
40
|
+
* [Neat](https://github.com/thoughtbot/neat) for semantic grids
|
41
|
+
* [Postgres](https://github.com/ged/ruby-pg) for access to the Postgres database
|
42
|
+
* [Rack Timeout](https://github.com/kch/rack-timeout) to abort requests that are
|
43
|
+
taking too long
|
44
|
+
* [Recipient Interceptor](https://github.com/croaky/recipient_interceptor) to
|
45
|
+
avoid accidentally sending emails to real people from staging
|
46
|
+
* [Simple Form](https://github.com/plataformatec/simple_form) for form markup
|
47
|
+
and style
|
48
|
+
* [Unicorn](https://github.com/defunkt/unicorn) to serve HTTP requests
|
49
|
+
|
50
|
+
And gems only for staging and production like:
|
51
|
+
|
52
|
+
* [New Relic RPM](https://github.com/newrelic/rpm) for monitoring performance
|
53
|
+
* [Rails 12 Factor](https://github.com/heroku/rails_12factor) to making running
|
54
|
+
Rails 4 apps easier on Heroku
|
34
55
|
|
35
56
|
And testing gems like:
|
36
57
|
|
37
|
-
* [Bourne](https://github.com/thoughtbot/bourne) and
|
38
|
-
[Mocha](https://github.com/freerange/mocha) for stubbing and spying
|
39
58
|
* [Capybara](https://github.com/jnicklas/capybara) and
|
40
59
|
[Capybara Webkit](https://github.com/thoughtbot/capybara-webkit) for
|
41
60
|
integration testing
|
42
61
|
* [Factory Girl](https://github.com/thoughtbot/factory_girl) for test data
|
43
62
|
* [RSpec](https://github.com/rspec/rspec) for unit testing
|
63
|
+
* [RSpec Mocks](https://github.com/rspec/rspec-mocks) for stubbing and spying
|
44
64
|
* [Shoulda Matchers](https://github.com/thoughtbot/shoulda-matchers) for common
|
45
65
|
RSpec matchers
|
46
66
|
* [Timecop](https://github.com/jtrupiano/timecop-console) for testing time
|
@@ -53,8 +73,8 @@ Suspenders also comes with:
|
|
53
73
|
* Override recipient emails in staging environment.
|
54
74
|
* Rails' flashes set up and in application layout.
|
55
75
|
* A few nice time formats set up for localization.
|
56
|
-
* [Heroku-recommended
|
57
|
-
settings](https://devcenter.heroku.com/articles/
|
76
|
+
* [Heroku-recommended
|
77
|
+
settings](https://devcenter.heroku.com/articles/rails4-getting-started).
|
58
78
|
|
59
79
|
Heroku
|
60
80
|
------
|
@@ -71,8 +91,10 @@ This has the same effect as running:
|
|
71
91
|
Github
|
72
92
|
------
|
73
93
|
|
74
|
-
You can optionally create a Github repository
|
94
|
+
You can optionally create a Github repository for the suspended Rails app. It
|
95
|
+
requires that you have [Hub](https://github.com/github/hub) on your system:
|
75
96
|
|
97
|
+
curl http://hub.github.com/standalone -sLo ~/bin/hub && chmod +x ~/bin/hub
|
76
98
|
suspenders app --github organization/project
|
77
99
|
|
78
100
|
This has the same effect as running:
|
@@ -78,12 +78,6 @@ module Suspenders
|
|
78
78
|
"Mail.register_interceptor RecipientInterceptor.new(ENV['EMAIL_RECIPIENTS'])\n"
|
79
79
|
end
|
80
80
|
|
81
|
-
def initialize_on_precompile
|
82
|
-
inject_into_file 'config/application.rb',
|
83
|
-
"\n config.assets.initialize_on_precompile = false",
|
84
|
-
:after => 'config.assets.enabled = true'
|
85
|
-
end
|
86
|
-
|
87
81
|
def create_partials_directory
|
88
82
|
empty_directory 'app/views/application'
|
89
83
|
end
|
@@ -126,34 +120,14 @@ module Suspenders
|
|
126
120
|
end
|
127
121
|
|
128
122
|
def enable_database_cleaner
|
129
|
-
replace_in_file 'spec/spec_helper.rb',
|
130
|
-
'config.use_transactional_fixtures = true',
|
131
|
-
'config.use_transactional_fixtures = false'
|
132
|
-
|
133
123
|
copy_file 'database_cleaner_rspec.rb', 'spec/support/database_cleaner.rb'
|
134
124
|
end
|
135
125
|
|
136
126
|
def configure_rspec
|
137
127
|
remove_file '.rspec'
|
138
128
|
copy_file 'rspec', '.rspec'
|
139
|
-
|
140
|
-
|
141
|
-
replace_in_file 'spec/spec_helper.rb',
|
142
|
-
'# config.mock_with :mocha',
|
143
|
-
'config.mock_with :mocha'
|
144
|
-
|
145
|
-
config = <<-RUBY
|
146
|
-
config.expect_with :rspec do |expect|
|
147
|
-
expect.syntax = :expect
|
148
|
-
end
|
149
|
-
|
150
|
-
config.fail_fast = true
|
151
|
-
|
152
|
-
RUBY
|
153
|
-
|
154
|
-
inject_into_file 'spec/spec_helper.rb',
|
155
|
-
config,
|
156
|
-
:after => 'RSpec.configure do |config|'
|
129
|
+
remove_file 'spec/spec_helper.rb'
|
130
|
+
copy_file 'spec_helper.rb', 'spec/spec_helper.rb'
|
157
131
|
end
|
158
132
|
|
159
133
|
def configure_background_jobs_for_rspec
|
@@ -189,12 +163,6 @@ module Suspenders
|
|
189
163
|
generate 'rspec:install'
|
190
164
|
end
|
191
165
|
|
192
|
-
def configure_capybara_webkit
|
193
|
-
append_file 'spec/spec_helper.rb' do
|
194
|
-
"\nCapybara.javascript_driver = :webkit\n"
|
195
|
-
end
|
196
|
-
end
|
197
|
-
|
198
166
|
def generate_clearance
|
199
167
|
generate 'clearance:install'
|
200
168
|
end
|
@@ -209,25 +177,17 @@ module Suspenders
|
|
209
177
|
end
|
210
178
|
|
211
179
|
def setup_stylesheets
|
212
|
-
copy_file 'app/assets/stylesheets/application.css',
|
213
|
-
'app/assets/stylesheets/application.css.scss'
|
214
180
|
remove_file 'app/assets/stylesheets/application.css'
|
215
|
-
|
216
|
-
|
181
|
+
copy_file 'application.css.scss',
|
182
|
+
'app/assets/stylesheets/application.css.scss'
|
217
183
|
end
|
218
184
|
|
219
185
|
def gitignore_files
|
220
|
-
|
186
|
+
remove_file '.gitignore'
|
187
|
+
copy_file 'suspenders_gitignore', '.gitignore'
|
221
188
|
[
|
222
|
-
'app/models',
|
223
|
-
'app/assets/images',
|
224
189
|
'app/views/pages',
|
225
|
-
'db/migrate',
|
226
|
-
'log',
|
227
|
-
'spec/support',
|
228
190
|
'spec/lib',
|
229
|
-
'spec/models',
|
230
|
-
'spec/views',
|
231
191
|
'spec/controllers',
|
232
192
|
'spec/helpers',
|
233
193
|
'spec/support/matchers',
|
@@ -235,7 +195,7 @@ module Suspenders
|
|
235
195
|
'spec/support/shared_examples'
|
236
196
|
].each do |dir|
|
237
197
|
run "mkdir #{dir}"
|
238
|
-
run "touch #{dir}/.
|
198
|
+
run "touch #{dir}/.keep"
|
239
199
|
end
|
240
200
|
end
|
241
201
|
|
@@ -303,9 +263,5 @@ module Suspenders
|
|
303
263
|
def factories_spec_rake_task
|
304
264
|
IO.read find_in_source_paths('factories_spec_rake_task.rb')
|
305
265
|
end
|
306
|
-
|
307
|
-
def simplecov_init
|
308
|
-
IO.read find_in_source_paths('simplecov_init.rb')
|
309
|
-
end
|
310
266
|
end
|
311
267
|
end
|
data/lib/suspenders/version.rb
CHANGED
data/suspenders.gemspec
CHANGED
@@ -6,7 +6,6 @@ require 'date'
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.required_ruby_version = '>= 1.9.2'
|
8
8
|
s.add_dependency 'bundler', '~> 1.3'
|
9
|
-
s.add_dependency 'hub', '~> 1.10'
|
10
9
|
s.add_dependency 'rails', '4.0.0'
|
11
10
|
s.add_development_dependency 'aruba', '~> 0.5.2'
|
12
11
|
s.add_development_dependency 'cucumber', '~> 1.2'
|
@@ -24,6 +23,7 @@ rush to build something amazing; don't use it if you like missing deadlines.
|
|
24
23
|
s.extra_rdoc_files = %w[README.md LICENSE]
|
25
24
|
s.files = `git ls-files`.split("\n")
|
26
25
|
s.homepage = 'http://github.com/thoughtbot/suspenders'
|
26
|
+
s.license = 'MIT'
|
27
27
|
s.name = 'suspenders'
|
28
28
|
s.rdoc_options = ['--charset=UTF-8']
|
29
29
|
s.require_paths = ['lib']
|
data/templates/Gemfile_clean
CHANGED
@@ -2,24 +2,22 @@ source 'https://rubygems.org'
|
|
2
2
|
|
3
3
|
gem 'airbrake'
|
4
4
|
gem 'bourbon'
|
5
|
+
gem 'coffee-rails'
|
5
6
|
gem 'delayed_job_active_record', '>= 4.0.0.beta2'
|
6
7
|
gem 'email_validator'
|
7
8
|
gem 'flutie'
|
8
9
|
gem 'high_voltage'
|
9
10
|
gem 'jquery-rails'
|
11
|
+
gem 'neat'
|
10
12
|
gem 'pg'
|
11
13
|
gem 'rack-timeout'
|
12
14
|
gem 'rails', '>= 4.0.0'
|
13
15
|
gem 'recipient_interceptor'
|
16
|
+
gem 'sass-rails'
|
14
17
|
gem 'simple_form'
|
18
|
+
gem 'uglifier'
|
15
19
|
gem 'unicorn'
|
16
20
|
|
17
|
-
group :assets do
|
18
|
-
gem 'coffee-rails'
|
19
|
-
gem 'sass-rails'
|
20
|
-
gem 'uglifier'
|
21
|
-
end
|
22
|
-
|
23
21
|
group :development do
|
24
22
|
gem 'foreman'
|
25
23
|
gem 'better_errors'
|
@@ -28,18 +26,17 @@ end
|
|
28
26
|
|
29
27
|
group :development, :test do
|
30
28
|
gem 'factory_girl_rails'
|
31
|
-
gem 'rspec-rails'
|
32
|
-
gem 'sham_rack'
|
29
|
+
gem 'rspec-rails', '>= 2.14'
|
33
30
|
end
|
34
31
|
|
35
32
|
group :test do
|
36
|
-
gem 'bourne', require: false
|
37
33
|
gem 'capybara-webkit', '>= 0.14.1'
|
38
34
|
gem 'database_cleaner'
|
39
35
|
gem 'launchy'
|
40
36
|
gem 'shoulda-matchers'
|
41
37
|
gem 'simplecov', require: false
|
42
38
|
gem 'timecop'
|
39
|
+
gem 'webmock'
|
43
40
|
end
|
44
41
|
|
45
42
|
group :staging, :production do
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require 'simplecov'
|
2
|
+
SimpleCov.start 'rails'
|
3
|
+
|
4
|
+
ENV['RAILS_ENV'] = 'test'
|
5
|
+
|
6
|
+
require File.expand_path('../../config/environment', __FILE__)
|
7
|
+
|
8
|
+
require 'rspec/rails'
|
9
|
+
require 'webmock/rspec'
|
10
|
+
|
11
|
+
Dir[Rails.root.join('spec/support/**/*.rb')].each { |file| require file }
|
12
|
+
|
13
|
+
RSpec.configure do |config|
|
14
|
+
config.expect_with :rspec do |c|
|
15
|
+
c.syntax = :expect
|
16
|
+
end
|
17
|
+
|
18
|
+
config.fail_fast = true
|
19
|
+
config.infer_base_class_for_anonymous_controllers = false
|
20
|
+
config.order = 'random'
|
21
|
+
config.use_transactional_fixtures = false
|
22
|
+
end
|
23
|
+
|
24
|
+
Capybara.javascript_driver = :webkit
|
25
|
+
WebMock.disable_net_connect!(allow_localhost: true)
|
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.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- thoughtbot
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-08-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -24,20 +24,6 @@ dependencies:
|
|
24
24
|
- - ~>
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.3'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: hub
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ~>
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '1.10'
|
34
|
-
type: :runtime
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - ~>
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '1.10'
|
41
27
|
- !ruby/object:Gem::Dependency
|
42
28
|
name: rails
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -92,7 +78,6 @@ extra_rdoc_files:
|
|
92
78
|
- README.md
|
93
79
|
- LICENSE
|
94
80
|
files:
|
95
|
-
- .DS_Store
|
96
81
|
- .gitignore
|
97
82
|
- .travis.yml
|
98
83
|
- CONTRIBUTING.md
|
@@ -117,12 +102,12 @@ files:
|
|
117
102
|
- lib/suspenders/generators/app_generator.rb
|
118
103
|
- lib/suspenders/version.rb
|
119
104
|
- suspenders.gemspec
|
120
|
-
- templates/.DS_Store
|
121
105
|
- templates/Gemfile_clean
|
122
106
|
- templates/Procfile
|
123
107
|
- templates/README.md.erb
|
124
108
|
- templates/_flashes.html.erb
|
125
109
|
- templates/_javascript.html.erb
|
110
|
+
- templates/application.css.scss
|
126
111
|
- templates/background_jobs_rspec.rb
|
127
112
|
- templates/bin_setup
|
128
113
|
- templates/config_locales_en.yml
|
@@ -132,19 +117,19 @@ files:
|
|
132
117
|
- templates/factories_spec.rb
|
133
118
|
- templates/factories_spec_rake_task.rb
|
134
119
|
- templates/factory_girl_syntax_rspec.rb
|
135
|
-
- templates/import_scss_styles
|
136
120
|
- templates/javascripts/prefilled_input.js
|
137
121
|
- templates/postgresql_database.yml.erb
|
138
122
|
- templates/rack_timeout.rb
|
139
123
|
- templates/rspec
|
140
124
|
- templates/sample.env
|
141
|
-
- templates/simplecov_init.rb
|
142
125
|
- templates/smtp.rb
|
126
|
+
- templates/spec_helper.rb
|
143
127
|
- templates/suspenders_gitignore
|
144
128
|
- templates/suspenders_layout.html.erb.erb
|
145
129
|
- templates/unicorn.rb
|
146
130
|
homepage: http://github.com/thoughtbot/suspenders
|
147
|
-
licenses:
|
131
|
+
licenses:
|
132
|
+
- MIT
|
148
133
|
metadata: {}
|
149
134
|
post_install_message:
|
150
135
|
rdoc_options:
|
data/.DS_Store
DELETED
Binary file
|
data/templates/.DS_Store
DELETED
Binary file
|
data/templates/simplecov_init.rb
DELETED