breakfast 0.6.2 → 0.6.3

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
- SHA1:
3
- metadata.gz: 5389039ab3ec0abe8611d3b64f0bfa0e2ee07816
4
- data.tar.gz: 274ac056540aa03d1a90a03311e7c653bf97d226
2
+ SHA256:
3
+ metadata.gz: 8442c74d4c9830ebb2877bb85f5d9a908de18f64030061dacf8f01583218f13f
4
+ data.tar.gz: 5d95dee904bdf649c9ce5ba6a5db135bea2106f0bcb61ba373e2985985314926
5
5
  SHA512:
6
- metadata.gz: 9b3f9e68709f9350fde5e3700b2617d526530697e749a2fc2c3715949ebd85125c307a675016c611ea4beb20c2cb3c46eddc433aef3938bdd761372176497aed
7
- data.tar.gz: bf08a28cbbd4bef660e60ae5bea5c0131697c20268d8bd9531ea4f48824e107b190203d2944dcfb0708dfecb67cf261bee193fcf636e11ed1048ba43d405acd9
6
+ metadata.gz: 8dd46fee6d3ba0e80a017a60904f263d80a58e336ab677cd4ce6fc9beabc6105bd99350770cf598cf5ab003014524cc969e72c06bd9e1142b78933a4028840df
7
+ data.tar.gz: cc2944a98c04347b766a0418b7131e07029e5f1aaa68c7f96fb8b17fe8a5dc3eb7123e5f75537fa50862378608550006af9dbef1751be72504b4c5af954f77b7
@@ -1,19 +1,30 @@
1
1
  # CHANGE LOG
2
2
 
3
+ ### 0.6.3 - 2018-08-14
4
+
5
+ #### Fixed
6
+
7
+ - Potential double yarn install
8
+ - assets:precompile not defined properly (when no Sprockets)
9
+
3
10
  ### 0.6.2 - 2017-05-11
11
+
4
12
  #### Fixed
13
+
5
14
  - Typo in install generator. Add brunch-babel package
6
15
 
7
16
  @haffla
8
17
 
9
-
10
18
  ### 0.6.1 - 2017-05-04
19
+
11
20
  #### Fixed
12
- - Potential Heroku bug where assets would be cleared out on deploy.
13
21
 
22
+ - Potential Heroku bug where assets would be cleared out on deploy.
14
23
 
15
24
  ### 0.6.0 - 2017-03-12
25
+
16
26
  #### Upgrading to `0.6.0` from `0.5.x`
27
+
17
28
  - Update gem with `bundle update breakfast`
18
29
  - Update the JS package with `yarn upgrade breakfast-rails`
19
30
  - If deploying with Capistrano, remove `require "breakfast/capistrano"` from
@@ -22,60 +33,71 @@
22
33
  and have `require 'capistrano/rails'` or `require 'capistrano/rails/assets'`
23
34
  in your `Capfile`.
24
35
  - If deploying with Heroku, run the following commands:
25
- 1. heroku buildpacks:clear
26
- 2. heroku buildpacks:set heroku/nodejs --index 1
27
- 3. heroku buildpacks:set heroku/ruby --index 2
36
+ 1. heroku buildpacks:clear
37
+ 2. heroku buildpacks:set heroku/nodejs --index 1
38
+ 3. heroku buildpacks:set heroku/ruby --index 2
39
+
28
40
  #### Fixed
41
+
29
42
  - Puma hanging in clustered mode. Breakfast would fail to cleanly exit on Puma
30
43
  exit, causing the server to hang indefinitely.
31
44
  - Bumped Rails version dependency, can be used with Rails 5.0 and greater.
32
45
  (Allows usage with Rails 5.1)
46
+
33
47
  #### Removed
48
+
34
49
  - Capistrano rake tasks. Previous behavior has been included into the Rails
35
50
  asset:precompile task. Using the standard [Capistrano Rails](https://github.com/capistrano/rails)
36
51
  gem is all that required now.
37
52
  - Need for a custom Heroku buildpack.
38
53
 
39
-
40
54
  ### 0.5.1 - 2017-02-06
55
+
41
56
  #### Changed
57
+
42
58
  If `public/assets` does not exist Breakfast will now create the folder before
43
59
  attempting to write to it.
44
60
 
45
-
46
61
  ### 0.5.0 - 2017-02-03
62
+
47
63
  #### Added
64
+
48
65
  - Adds support for [Yarn](https://yarnpkg.com/).
49
66
  - New installs now require Yarn
50
67
  - Capistrano options `:breakfast_yarn_path` && `:breakfast_yarn_install_command`
51
68
 
52
69
  #### Removed
70
+
53
71
  - NPM client requirement
54
72
  - Capistrano options `:breakfast_npm_path` && `:breakfast_npm_install_command`
55
73
  have been removed.
56
74
 
57
75
  ### Upgrading
76
+
58
77
  #### Upgrading to `0.5.0` from `0.4.0`
78
+
59
79
  - Update gem with `bundle update breakfast`
60
80
  - Bump the `breakfast-rails` version in `package.json` to `0.5.0`
61
81
  - Ensure [Yarn](https://yarnpkg.com/docs/install) is installed
62
82
  - Run `yarn install`
63
83
 
64
- *Note* If you are deploying with Capistrano then Yarn is expected to be
84
+ _Note_ If you are deploying with Capistrano then Yarn is expected to be
65
85
  installed on
66
86
 
67
-
68
87
  ### 0.4.0 - 2016-11-14
88
+
69
89
  #### Upgrading to `0.4.0` from `0.3.0`
90
+
70
91
  - Update gem with `bundle update breakfast`
71
92
  - Bump the `breakfast-rails` version in `package.json` to `0.4.0`
72
93
  - Run `npm install`
73
94
 
74
- *Note* Now by default asset fingerprinting will be on by default in production.
95
+ _Note_ Now by default asset fingerprinting will be on by default in production.
75
96
  A copy of each with the original filename will be present as well, so any
76
97
  hard-coded links to assets will still work correctly.
77
98
 
78
99
  #### Added
100
+
79
101
  - Asset Digests. Now when deploying assets will have fingerprints added to their
80
102
  file names. This allows browsers to aggressively cache your assets.
81
103
  - New Option: `breakfast.manifest.digest`. Defaults to false in development /
@@ -104,24 +126,26 @@ hard-coded links to assets will still work correctly.
104
126
  ```
105
127
 
106
128
  #### Changes
107
- - Fixed small CSS issue if box-sizing is not set border-box globally.
108
129
 
130
+ - Fixed small CSS issue if box-sizing is not set border-box globally.
109
131
 
110
132
  #### Contributors
133
+
111
134
  Many many thanks to the contributors for this release!
135
+
112
136
  - [@patkoperwas](https://github.com/patkoperwas)
113
137
  - [@mikeastock](https://github.com/mikeastock)
114
138
  - [@HParker](https://github.com/HParker)
115
139
 
116
-
117
140
  ## 0.3.1 - 2016-10-19
141
+
118
142
  - Better support for determining if Server is running. Using puma, passneger,
119
143
  etc. instead of the default rails server command now work.
120
144
 
121
-
122
145
  ## 0.3.0 - 2016-09-28
123
146
 
124
147
  ### Upgrading from `0.2.0`
148
+
125
149
  - Update gem with `bundle update breakfast`
126
150
  - Bump the `breakfast-rails` version in `package.json` to `0.3.1`
127
151
  - Run `npm install`
@@ -139,6 +163,7 @@ Many many thanks to the contributors for this release!
139
163
  (probably `config/environments/development.rb`).
140
164
 
141
165
  ### Added
166
+
142
167
  - New status bar that allows the user to switch reload strategies on the fly
143
168
  - Support for Haml & Slim files (without .html extension)
144
169
  - Reloading on ruby file changes.
@@ -147,14 +172,17 @@ Many many thanks to the contributors for this release!
147
172
  - NPM binary path for Capistrano
148
173
 
149
174
  ### Changes
175
+
150
176
  - config.breakfast.view_folders change to config.breakfast.source_code_folders.
151
177
  Change brought about by need to trigger reloads when Ruby source code changes.
152
178
 
153
179
  ### Removed
180
+
154
181
  - config.breakfast.view_folders is no longer supported. Deprecated in favor of
155
182
  source_code_folders option.
156
183
 
157
184
  #### Contributors
185
+
158
186
  Many many thanks to the contributors for this release!
159
187
 
160
188
  - [@patkoperwas](https://github.com/patkoperwas)
data/Gemfile CHANGED
@@ -1,5 +1,4 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in breakfast.gemspec
4
- gem "pry"
5
4
  gemspec
data/README.md CHANGED
@@ -20,6 +20,9 @@ View updates in the [CHANGELOG](https://github.com/devlocker/breakfast/blob/mast
20
20
  ### Latest Patch `0.6.2`
21
21
  #### Fixed
22
22
  - Typo in install generator. Add brunch-babel package
23
+ - Add support for [Wiselinks](https://github.com/igor-alexandrov/wiselinks)
24
+ reloader.
25
+ [_@haffla_](https://github.com/devlocker/breakfast/pull/23)
23
26
 
24
27
  ### Latest Release `0.6.0`
25
28
  #### Fixed
@@ -1,3 +1,3 @@
1
1
  module Breakfast
2
- VERSION = "0.6.2"
2
+ VERSION = "0.6.3"
3
3
  end
@@ -60,8 +60,20 @@ module Breakfast
60
60
  end
61
61
 
62
62
  def install_required_packages
63
- run "yarn add actioncable breakfast-rails jquery jquery-ujs turbolinks"
64
- run "yarn add --dev brunch babel babel-brunch clean-css-brunch sass-brunch uglify-js-brunch"
63
+ packages = %w(
64
+ actioncable
65
+ babel
66
+ babel-brunch
67
+ breakfast-rails
68
+ brunch
69
+ clean-css-brunch
70
+ jquery
71
+ jquery-ujs
72
+ sass-brunch
73
+ turbolinks
74
+ uglify-js-brunch
75
+ )
76
+ run "yarn add #{packages.join(' ')}"
65
77
  end
66
78
 
67
79
  def create_directory_structure
@@ -58,9 +58,16 @@ end
58
58
 
59
59
  if Rake::Task.task_defined?("assets:precompile")
60
60
  Rake::Task["assets:precompile"].enhance do
61
- Rake::Task["breakfast:yarn:install"].execute
62
- Rake::Task["breakfast:assets:compile"].execute
61
+ unless File.exist?("./bin/yarn") && Rake::Task.task_defined?("yarn:install")
62
+ # Rails 5.1 includes a yarn install command - don't yarn install twice.
63
+ Rake::Task["breakfast:yarn:install"].invoke
64
+ end
65
+ Rake::Task["breakfast:assets:compile"].invoke
63
66
  end
67
+ else
68
+ Rake::Task.define_task(
69
+ "assets:precompile" => ["breakfast:yarn", "breakfast:assets:compile"]
70
+ )
64
71
  end
65
72
 
66
73
  module Breakfast
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "breakfast-rails",
3
- "version": "0.6.0",
3
+ "version": "0.6.2",
4
4
  "description": "Assets for the Breakfast Gem",
5
5
  "main": "./lib/breakfast-rails.js",
6
6
  "scripts": {
@@ -52,13 +52,10 @@ class LiveReloader {
52
52
  htmlReload(strategy) {
53
53
  switch (strategy) {
54
54
  case 'turbolinks':
55
- const location = window.top.location;
56
-
57
- if (this.turbolinksAvailable() && !this.onErrorPage()) {
58
- Turbolinks.visit(location);
59
- } else {
60
- location.reload();
61
- }
55
+ this.reloadTurbolinks();
56
+ break;
57
+ case 'wiselinks':
58
+ this.reloadWiselinks();
62
59
  break;
63
60
  case 'page':
64
61
  window.top.location.reload();
@@ -71,13 +68,10 @@ class LiveReloader {
71
68
  rubyReload(strategy) {
72
69
  switch (strategy) {
73
70
  case 'turbolinks':
74
- const location = window.top.location;
75
-
76
- if (this.turbolinksAvailable() && !this.onErrorPage()) {
77
- Turbolinks.visit(location);
78
- } else {
79
- location.reload();
80
- }
71
+ this.reloadTurbolinks();
72
+ break;
73
+ case 'wiselinks':
74
+ this.reloadWiselinks();
81
75
  break;
82
76
  case 'page':
83
77
  window.top.location.reload();
@@ -87,8 +81,22 @@ class LiveReloader {
87
81
  }
88
82
  }
89
83
 
90
- turbolinksAvailable() {
91
- return (typeof Turbolinks !== 'undefined');
84
+ reloadTurbolinks() {
85
+ const location = window.top.location;
86
+
87
+ if (this.settings.turbolinksEnabled() && !this.onErrorPage()) {
88
+ Turbolinks.visit(location);
89
+ } else {
90
+ location.reload();
91
+ }
92
+ }
93
+
94
+ reloadWiselinks() {
95
+ if (this.settings.wiselinksEnabled() && !this.onErrorPage()) {
96
+ wiselinks.reload();
97
+ } else {
98
+ window.top.location.reload();
99
+ }
92
100
  }
93
101
  // If user is on an error page and they fix the error and re-render using
94
102
  // turbolinks than the CSS from the Rails error page will hang around. Will
@@ -43,6 +43,14 @@ class Settings {
43
43
  storedSettings() {
44
44
  return (JSON.parse(localStorage.getItem(LOCAL_STORAGE_KEY)) || {});
45
45
  }
46
+
47
+ turbolinksEnabled() {
48
+ return typeof Turbolinks !== 'undefined';
49
+ }
50
+
51
+ wiselinksEnabled() {
52
+ return typeof Wiselinks !== 'undefined';
53
+ }
46
54
  }
47
55
 
48
56
  module.exports = Settings;
@@ -23,8 +23,10 @@ class StatusBar {
23
23
  init() {
24
24
  let eventName;
25
25
 
26
- if (typeof Turbolinks !== 'undefined') {
26
+ if (this.settings.turbolinksEnabled()) {
27
27
  eventName = 'turbolinks:load';
28
+ } else if (this.settings.wiselinksEnabled()) {
29
+ eventName = 'page:done';
28
30
  } else {
29
31
  eventName = 'DOMContentLoaded';
30
32
  }
@@ -94,7 +96,8 @@ class StatusBar {
94
96
  <span>html: </span><span class="breakfast-type">${ this.settings.strategies.html }</span>
95
97
  <div class="breakfast-menu">
96
98
  ${ this.renderLink('html', 'page', 'Page Reload') }
97
- ${ this.renderLink('html', 'turbolinks', 'Turbolinks Reload') }
99
+ ${ this.renderLink('html', 'turbolinks', 'Turbolinks Reload', this.settings.turbolinksEnabled()) }
100
+ ${ this.renderLink('html', 'wiselinks', 'Wiselinks Reload', this.settings.wiselinksEnabled()) }
98
101
  ${ this.renderLink('html', 'off', 'Off') }
99
102
  </div>
100
103
  </div>
@@ -103,16 +106,21 @@ class StatusBar {
103
106
  <span>ruby: </span><span class="breakfast-type">${ this.settings.strategies.rb }</span>
104
107
  <div class="breakfast-menu">
105
108
  ${ this.renderLink('rb', 'page', 'Page Reload') }
106
- ${ this.renderLink('rb', 'turbolinks', 'Turbolinks Reload') }
109
+ ${ this.renderLink('rb', 'turbolinks', 'Turbolinks Reload', this.settings.turbolinksEnabled()) }
110
+ ${ this.renderLink('rb', 'wiselinks', 'Wiselinks Reload', this.settings.wiselinksEnabled()) }
107
111
  ${ this.renderLink('rb', 'off', 'Off') }
108
112
  </div>
109
113
  </div>
110
114
  `);
111
115
  }
112
116
 
113
- renderLink(type, strategy, text) {
117
+ renderLink(type, strategy, text, enabled = true) {
114
118
  const active = this.settings.strategies[type] === strategy;
115
119
 
120
+ if (!enabled) {
121
+ return '';
122
+ }
123
+
116
124
  return (`
117
125
  <a
118
126
  class="breakfast-menu-option ${ active ? 'breakfast-active' : '' }"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: breakfast
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.2
4
+ version: 0.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Patrick Koperwas
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-05-11 00:00:00.000000000 Z
11
+ date: 2018-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -156,7 +156,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
156
156
  version: '0'
157
157
  requirements: []
158
158
  rubyforge_project:
159
- rubygems_version: 2.6.8
159
+ rubygems_version: 2.7.6
160
160
  signing_key:
161
161
  specification_version: 4
162
162
  summary: Integrates Brunch into Rails