ember-cli-rails 0.10.0 → 0.11.0

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: 0e8e3eae43c6174217f04aa96d57a7396f6b1ba8
4
- data.tar.gz: c8d43e9a2efd2b5a9367d6fa974fa3ccedd4bb69
2
+ SHA256:
3
+ metadata.gz: ae81b97b3eedcb84768b305b7c69d78ebf6d9a00ee3cf9b09e61d570fd82d72e
4
+ data.tar.gz: 8faab1baa2ba94bb79520e2413c9a1dac154bc1ae17af17c41b91ebb176f99b0
5
5
  SHA512:
6
- metadata.gz: c1f9f0227c30692510edba35b843344b25e839c003437c92df089312c20803246653f9c7e88fddd3ff08d7f684a5ee57c073af3709b64a98e3014ba886442d79
7
- data.tar.gz: a0789e42c15df281a2cd76ce4e61b30688eb1d60e0a28cd7ab81b9b819b0927b525dbeb1b2b4e0c384e795390ef2f08c327bb6934277b0ccd38707502a70e2ea
6
+ metadata.gz: d91b224e3a2dc5658153616c962ee6e035446f1656be54298fb95f3188350adc8e438fcb0d50ad69046ce066ae297aa2dc0146fcb2ca2a5a156b1c5a48188865
7
+ data.tar.gz: 49d65db9d74a115f36ad74ef9fdcdd6450d7456448188190476089b83ced25cfda82fe7ef78d3b0f988c0c4e8c5258cff3b896c551c05ca50e03295460185a04
@@ -1,6 +1,15 @@
1
1
  master
2
2
  ------
3
3
 
4
+ 0.11.0
5
+ ------
6
+
7
+ * Switch from TravisCI to GitHub Actions for Continuous Integration
8
+ * Redirect Ember routes with paths that don't end in `/` to corresponding paths
9
+ that end in `/`.
10
+ * Don't route requests to `/rails/active_storage` through the mounted Ember application.
11
+
12
+
4
13
  0.10.0
5
14
  ------
6
15
 
data/README.md CHANGED
@@ -421,7 +421,7 @@ To override this behavior, you can specify [any of Rails' routing options]
421
421
  For the sake of this example, override the `controller` and `action` options:
422
422
 
423
423
  ```rb
424
- # config/routes
424
+ # config/routes.rb
425
425
 
426
426
  Rails.application.routes.draw do
427
427
  mount_ember_app :frontend, to: "/", controller: "application", action: "index"
@@ -1,4 +1,4 @@
1
- require "cocaine"
1
+ require "terrapin"
2
2
 
3
3
  module EmberCli
4
4
  class Command
@@ -8,7 +8,7 @@ module EmberCli
8
8
  end
9
9
 
10
10
  def test
11
- line = Cocaine::CommandLine.new(paths.ember, "test --environment test")
11
+ line = Terrapin::CommandLine.new(paths.ember, "test --environment test")
12
12
 
13
13
  line.command
14
14
  end
@@ -30,7 +30,7 @@ module EmberCli
30
30
  end
31
31
 
32
32
  def ember_build(watch: false)
33
- line = Cocaine::CommandLine.new(paths.ember, [
33
+ line = Terrapin::CommandLine.new(paths.ember, [
34
34
  "build",
35
35
  ("--watch" if watch),
36
36
  ("--watcher :watcher" if process_watcher),
@@ -1,7 +1,9 @@
1
1
  module EmberCli
2
2
  class EmberConstraint
3
3
  def matches?(request)
4
- html_request?(request) && !rails_info_request?(request)
4
+ html_request?(request) &&
5
+ !rails_info_request?(request) &&
6
+ !rails_active_storage_request?(request)
5
7
  end
6
8
 
7
9
  private
@@ -10,6 +12,10 @@ module EmberCli
10
12
  request.fullpath.start_with?("/rails/info", "/rails/mailers")
11
13
  end
12
14
 
15
+ def rails_active_storage_request?(request)
16
+ request.fullpath.start_with?("/rails/active_storage")
17
+ end
18
+
13
19
  def html_request?(request)
14
20
  request.format.html?
15
21
  end
@@ -92,7 +92,16 @@ module EmberCli
92
92
 
93
93
  def yarn
94
94
  if yarn?
95
- @yarn ||= path_for_executable("yarn")
95
+ @yarn ||= path_for_executable("yarn").tap do |yarn|
96
+ unless File.executable?(yarn.to_s)
97
+ fail DependencyError.new(<<-MSG.strip_heredoc)
98
+ EmberCLI has been configured to install NodeJS dependencies with Yarn, but the Yarn executable is unavailable.
99
+
100
+ Install it by following the instructions at https://yarnpkg.com/lang/en/docs/install/
101
+
102
+ MSG
103
+ end
104
+ end
96
105
  end
97
106
  end
98
107
 
@@ -1,4 +1,5 @@
1
1
  require "ember_cli/ember_constraint"
2
+ require "ember_cli/trailing_slash_constraint"
2
3
 
3
4
  module ActionDispatch
4
5
  module Routing
@@ -15,7 +16,15 @@ module ActionDispatch
15
16
  )
16
17
 
17
18
  scope constraints: ::EmberCli::EmberConstraint.new do
18
- get("#{to}(*rest)", routing_options)
19
+ redirect_if_missing_trailing_slash = {
20
+ constraints: EmberCli::TrailingSlashConstraint.new,
21
+ to: redirect(-> (_, request) {
22
+ File.join(request.original_fullpath, "")
23
+ }),
24
+ }
25
+
26
+ get(to, redirect_if_missing_trailing_slash)
27
+ get(File.join(to, "(*rest)"), routing_options)
19
28
  end
20
29
 
21
30
  mount_ember_assets(app_name, to: to)
@@ -41,7 +41,7 @@ module EmberCli
41
41
  clean_ember_dependencies!
42
42
  end
43
43
 
44
- if paths.yarn.present? && Pathname.new(paths.yarn).executable?
44
+ if paths.yarn
45
45
  run! "#{paths.yarn} install"
46
46
  else
47
47
  run! "#{paths.npm} prune && #{paths.npm} install"
@@ -0,0 +1,7 @@
1
+ module EmberCli
2
+ class TrailingSlashConstraint
3
+ def matches?(request)
4
+ !request.original_fullpath.to_s.ends_with?("/")
5
+ end
6
+ end
7
+ end
@@ -1,3 +1,3 @@
1
1
  module EmberCli
2
- VERSION = "0.10.0".freeze
2
+ VERSION = "0.11.0".freeze
3
3
  end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ember-cli-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Pravosud
8
8
  - Jonathan Jackson
9
9
  - Sean Doyle
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2017-09-01 00:00:00.000000000 Z
13
+ date: 2020-08-26 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: ember-cli-rails-assets
@@ -32,28 +32,28 @@ dependencies:
32
32
  requirements:
33
33
  - - ">="
34
34
  - !ruby/object:Gem::Version
35
- version: '3.2'
35
+ version: '4.2'
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - ">="
41
41
  - !ruby/object:Gem::Version
42
- version: '3.2'
42
+ version: '4.2'
43
43
  - !ruby/object:Gem::Dependency
44
- name: cocaine
44
+ name: terrapin
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - "~>"
48
48
  - !ruby/object:Gem::Version
49
- version: 0.5.8
49
+ version: 0.6.0
50
50
  type: :runtime
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
54
  - - "~>"
55
55
  - !ruby/object:Gem::Version
56
- version: 0.5.8
56
+ version: 0.6.0
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: html_page
59
59
  requirement: !ruby/object:Gem::Requirement
@@ -82,7 +82,49 @@ dependencies:
82
82
  - - "~>"
83
83
  - !ruby/object:Gem::Version
84
84
  version: 0.9.0
85
- description:
85
+ - !ruby/object:Gem::Dependency
86
+ name: rspec-rails
87
+ requirement: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - "~>"
90
+ - !ruby/object:Gem::Version
91
+ version: 3.6.0
92
+ type: :development
93
+ prerelease: false
94
+ version_requirements: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - "~>"
97
+ - !ruby/object:Gem::Version
98
+ version: 3.6.0
99
+ - !ruby/object:Gem::Dependency
100
+ name: capybara-selenium
101
+ requirement: !ruby/object:Gem::Requirement
102
+ requirements:
103
+ - - ">="
104
+ - !ruby/object:Gem::Version
105
+ version: '0'
106
+ type: :development
107
+ prerelease: false
108
+ version_requirements: !ruby/object:Gem::Requirement
109
+ requirements:
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ version: '0'
113
+ - !ruby/object:Gem::Dependency
114
+ name: codeclimate-test-reporter
115
+ requirement: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - "~>"
118
+ - !ruby/object:Gem::Version
119
+ version: 0.6.0
120
+ type: :development
121
+ prerelease: false
122
+ version_requirements: !ruby/object:Gem::Requirement
123
+ requirements:
124
+ - - "~>"
125
+ - !ruby/object:Gem::Version
126
+ version: 0.6.0
127
+ description:
86
128
  email:
87
129
  - pavel@pravosud.com
88
130
  - jonathan.jackson1@me.com
@@ -112,6 +154,7 @@ files:
112
154
  - lib/ember_cli/route_helpers.rb
113
155
  - lib/ember_cli/runner.rb
114
156
  - lib/ember_cli/shell.rb
157
+ - lib/ember_cli/trailing_slash_constraint.rb
115
158
  - lib/ember_cli/version.rb
116
159
  - lib/generators/ember/heroku/USAGE
117
160
  - lib/generators/ember/heroku/heroku_generator.rb
@@ -125,7 +168,7 @@ homepage: https://github.com/thoughtbot/ember-cli-rails
125
168
  licenses:
126
169
  - MIT
127
170
  metadata: {}
128
- post_install_message:
171
+ post_install_message:
129
172
  rdoc_options: []
130
173
  require_paths:
131
174
  - lib
@@ -140,9 +183,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
183
  - !ruby/object:Gem::Version
141
184
  version: '0'
142
185
  requirements: []
143
- rubyforge_project:
144
- rubygems_version: 2.4.5.1
145
- signing_key:
186
+ rubyforge_project:
187
+ rubygems_version: 2.7.6.2
188
+ signing_key:
146
189
  specification_version: 4
147
190
  summary: Integration between Ember CLI and Rails
148
191
  test_files: []