suspenders 1.4.0 → 1.5.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: df50837963e79f73c87df3eed2f3f5e8603abb46
4
- data.tar.gz: 1df6eca11374e14a55dfabc9799f42fb5a9f39da
3
+ metadata.gz: 5f8addade2f0accc4b83422db244361de882f7e7
4
+ data.tar.gz: 248d0e59c29f3ea4691e6821d4316676f4b6d8c0
5
5
  SHA512:
6
- metadata.gz: 1d4c1c837459c6f96ba360f859d9097b7daeae0910deb9535ad3ca3945dc38fece989f86de52327437d547a5d2e1dae8eb38bcac3da5887ecfc2f38b4f363c65
7
- data.tar.gz: d1b654c7f159935b2eaed3fdc3b3ba7b045d3fe866435862483fca11d89fe7e1ad5c81c28060ff13e5fac159d4bfc020e0e86f2c9c919004c60946179d7112bf
6
+ metadata.gz: 6f8b791e9f77507aba71af074525f8c95f1ebcf4032665a805192212255fef081959179f31399b0822e026c2183d39524ec6752367fb8a06d43a8d6a055501fe
7
+ data.tar.gz: 4d91b9340bc4c7372266db679d1937f3bfa6fd4a8992e783a1fde5895f2630f92cc627633771244eb5cb52a17df6ded6320a4493b2f7395ae39fbeec17b32fe6
data/.travis.yml CHANGED
@@ -2,5 +2,7 @@ language: ruby
2
2
  rvm:
3
3
  - 1.9.3
4
4
  - 2.0.0
5
+ install:
6
+ - bundle install
5
7
  notifications:
6
8
  email: false
data/Gemfile.lock CHANGED
@@ -1,9 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- suspenders (1.4.0)
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.10)
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.0)
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
@@ -1,3 +1,11 @@
1
+ 1.5.0 (August 3, 2013)
2
+
3
+ * Add Neat.
4
+ * Replace Bourne with RSpec Mocks.
5
+ * Replace Sham Rack with WebMock.
6
+ * Remove dependency on `hub` gem.
7
+ * Clean up leftover Rails 3 conventions.
8
+
1
9
  1.4.0 (July 21, 2013)
2
10
 
3
11
  * Support Rails 4.
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
- * [Simple Form](https://github.com/plataformatec/simple_form) for form markup and style
33
- * [Email Validator](https://github.com/balexand/email_validator) for email validation
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 asset pipeline
57
- settings](https://devcenter.heroku.com/articles/rails3x-asset-pipeline-cedar/).
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
- prepend_file 'spec/spec_helper.rb', simplecov_init
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
- concat_file 'import_scss_styles', 'app/assets/stylesheets/application.css.scss'
216
- create_file 'app/assets/stylesheets/_screen.scss'
181
+ copy_file 'application.css.scss',
182
+ 'app/assets/stylesheets/application.css.scss'
217
183
  end
218
184
 
219
185
  def gitignore_files
220
- concat_file 'suspenders_gitignore', '.gitignore'
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}/.gitkeep"
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
@@ -90,7 +90,6 @@ module Suspenders
90
90
  def setup_staging_environment
91
91
  say 'Setting up the staging environment'
92
92
  build :setup_staging_environment
93
- build :initialize_on_precompile
94
93
  end
95
94
 
96
95
  def create_suspenders_views
@@ -1,3 +1,3 @@
1
1
  module Suspenders
2
- VERSION = '1.4.0'
2
+ VERSION = '1.5.0'
3
3
  end
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']
@@ -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,8 @@
1
+ @charset 'utf-8';
2
+
3
+ ///////////////////////////////////////////////////////////////////////////////
4
+
5
+ @import 'bourbon';
6
+ @import 'neat';
7
+
8
+ ///////////////////////////////////////////////////////////////////////////////
@@ -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)
@@ -1,10 +1,16 @@
1
1
  !.keep
2
2
  *.DS_Store
3
+ *.swo
3
4
  *.swp
4
- .env
5
+ .bundle
6
+ .sass-cache/
5
7
  bin/stubs
6
8
  coverage/*
9
+ db/*.sqlite3
10
+ db/schema.rb
11
+ log/*
7
12
  public/system
8
13
  rerun.txt
9
14
  tags
10
- vendor/bundler_gems
15
+ tmp/*
16
+ tmp/**/*
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.0
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-07-21 00:00:00.000000000 Z
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
@@ -1,3 +0,0 @@
1
-
2
-
3
- @import 'bourbon';
@@ -1,3 +0,0 @@
1
- require 'simplecov'
2
- SimpleCov.start 'rails'
3
-