sewing_kit 0.128.0 → 0.129.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
  SHA256:
3
- metadata.gz: a461122bbd1f59afece53f1695188abeb57f7a70bf397c9871a1389a5c3dace0
4
- data.tar.gz: 606ece89a71cf2748dd13bf2a1884e428d41365cbdabb9fe98dbbe2c7184e143
3
+ metadata.gz: 192f93794571de06b57d5125eec9da37d1331c3dbb47a2c530e29d6f4693cb47
4
+ data.tar.gz: d06a650795388f99d0680e007e7402b8d964562be69610aa92032e9e24abdac1
5
5
  SHA512:
6
- metadata.gz: 9725a50c0872da10cb36d7882d446d9606177af40055bd309c7874f78de953768c201aacaf02853ce9b83f8ed6c80462e3df81552a225d5c1727e66a64e2df5a
7
- data.tar.gz: 14f2b69ef3a1afc0b2cc99275933dd219767dcf9784026fd79d01d3b33c52f2a6adc36fcc2d3b88fc97dad481293f34cc9959e0400c59cf3ee71590721f468a4
6
+ metadata.gz: 773c4e613be0301501b9d8e31b12bce81027f7aaf39aabafa87c07a5a76430498b6c39d81801f4af44b1ea48e47cf127edddca88e7c2031dc22c44ffc202fe58
7
+ data.tar.gz: 056bdc1ff814b70f35ffac31bcba3b7d95560002437272f8e615ae93d8e6a4bdcb49bb08b0d8db9961c99f88488ff3cd616cb991b044c125578ca41f660455de
data/README.md CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
  Zero configuration, high performance front end development at organization scale.
4
4
 
5
- `sewing_kit` facilitates legacy Rails integration using ERB tags. For a more complete modern stack with performance-as-a-feature, consider [quilt_rails](https://github.com/Shopify/quilt/tree/master/gems/quilt_rails). For details of the `sewing-kit` node package's configuration and usage, see the [sewing-kit README](/README.md).
5
+ `sewing_kit` can be used in a Rails application instead of [Webpacker](https://github.com/rails/webpacker), allowing to embed bundled/compiled javascript in erb pages.
6
+
7
+ For a more complete and modern stack with performance-as-a-feature, consider [quilt_rails](https://github.com/Shopify/quilt/tree/master/gems/quilt_rails).
8
+
9
+ For details on configuring and usage of the `sewing-kit` node package, see the [sewing-kit README](/README.md).
6
10
 
7
11
  ## Quick Start
8
12
 
@@ -19,16 +19,16 @@ module SewingKit
19
19
  @javascript_path = options[:javascript_path]
20
20
 
21
21
  if Project.uses_webpacker?
22
- warn "
22
+ warn("
23
23
  WARNING: We've detected you currently have webpacker config at config/webpacker.yml.
24
24
  You may experience conflicts between sewing-kit and webpacker's behaviour as build tools.
25
25
  If your app was made with `rails new`, try rerunning it with `--skip-webpack-install --skip-javascript`
26
- "
26
+ ")
27
27
  end
28
28
  end
29
29
 
30
30
  def create_config_files
31
- say "Creating JS tooling config files"
31
+ say("Creating JS tooling config files")
32
32
  copy_file("editorconfig", ".editorconfig")
33
33
  copy_file("eslintignore", ".eslintignore")
34
34
  copy_file("prettierignore", ".prettierignore")
@@ -39,7 +39,7 @@ module SewingKit
39
39
 
40
40
  def install_js_dependencies
41
41
  return if options.skip_yarn?
42
- say "Installing javascript dependencies"
42
+ say("Installing javascript dependencies")
43
43
  system("yarn add @shopify/sewing-kit")
44
44
  system("yarn add typescript")
45
45
  end
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module SewingKit
3
- VERSION = "0.128.0"
3
+ VERSION = "0.129.0"
4
4
  end
@@ -8,7 +8,7 @@ module SewingKit
8
8
  def initialize
9
9
  super(
10
10
  "nodejs is not installed. " \
11
- "Try creating a `.buildpack` file in the root of the project with following content:
11
+ "Try creating a `.buildpacks` file in the root of the project with following content:
12
12
 
13
13
  https://github.com/heroku/heroku-buildpack-nodejs.git
14
14
  https://github.com/heroku/heroku-buildpack-ruby.git
@@ -39,13 +39,13 @@ module SewingKit
39
39
 
40
40
  def handle_exit
41
41
  return if $ERROR_INFO.nil?
42
- Process.kill 'SIGTERM', pid
42
+ Process.kill('SIGTERM', pid)
43
43
  rescue Errno::ESRCH
44
44
  nil
45
45
  end
46
46
 
47
47
  def detach
48
- Process.detach pid
48
+ Process.detach(pid)
49
49
  end
50
50
 
51
51
  def command
@@ -54,7 +54,7 @@ module SewingKit
54
54
  heap_config,
55
55
  sewing_kit_bin,
56
56
  'dev',
57
- '--logLevel',
57
+ '--log-level',
58
58
  log_level,
59
59
  ].compact.concat(options)
60
60
 
@@ -16,7 +16,7 @@ module SewingKit
16
16
 
17
17
  assets = SewingKit::Webpack::Manifest.asset_dependencies(entrypoint_name, request.user_agent)
18
18
 
19
- raise UnknownAssetError, "#{entrypoint_name} was not found in manifest." if raise_unknown_error? assets
19
+ raise UnknownAssetError, "#{entrypoint_name} was not found in manifest." if raise_unknown_error?(assets)
20
20
  return [] unless assets && assets[extension]
21
21
 
22
22
  dependencies = assets[extension]
@@ -56,7 +56,7 @@ module SewingKit
56
56
  private
57
57
 
58
58
  def create_asset_tag(tag_type, asset, tag_options)
59
- raise ArgumentError, "Invalid tag type: #{tag_type}" unless [:script, :link].include? tag_type
59
+ raise ArgumentError, "Invalid tag type: #{tag_type}" unless [:script, :link].include?(tag_type)
60
60
 
61
61
  options = tag_options.clone
62
62
 
@@ -24,14 +24,14 @@ module SewingKit
24
24
  # Raised if the node-generated manifest cannot be read from the filesystem.
25
25
  class ManifestLoadError < StandardError
26
26
  def initialize(path, cause)
27
- super "Could not load manifest from #{path} (original error #{cause})"
27
+ super("Could not load manifest from #{path} (original error #{cause})")
28
28
  end
29
29
  end
30
30
 
31
31
  # Raised if the node-generated manifest returns unparseable JSON.
32
32
  class ManifestParseError < StandardError
33
33
  def initialize(cause)
34
- super "Could not parse manifest JSON (original error #{cause})"
34
+ super("Could not parse manifest JSON (original error #{cause})")
35
35
  end
36
36
  end
37
37
 
@@ -43,7 +43,9 @@ module SewingKit
43
43
  return normalize_metadata(result)
44
44
  end
45
45
  rescue => e
46
- Rails.logger.warn "[sewing_kit] could not read manifest from #{@metadata_path}; falling back to node. #{e}"
46
+ Rails.logger.warn(
47
+ "[sewing_kit] could not read manifest from #{@metadata_path}; falling back to node. #{e}"
48
+ )
47
49
  @metadata_path = nil
48
50
  end
49
51
 
@@ -81,8 +83,8 @@ module SewingKit
81
83
 
82
84
  class OnlyUseInProductionError < StandardError
83
85
  def initialize
84
- super "The SewingKit::Webpack::Manifest#manifest is intended "\
85
- "for deploying assets to a CDN. Do not use it in development."
86
+ super("The SewingKit::Webpack::Manifest#manifest is intended "\
87
+ "for deploying assets to a CDN. Do not use it in development.")
86
88
  end
87
89
  end
88
90
  end
@@ -8,8 +8,8 @@ module SewingKit
8
8
  class Manifest
9
9
  class Production < Base
10
10
  def initialize
11
+ super
11
12
  @cache_by_user_agent = {}
12
- @metadata = nil
13
13
  @metadata_path = nil
14
14
  end
15
15
 
@@ -29,3 +29,11 @@ if Rake::Task.task_defined?("assets:precompile")
29
29
  else
30
30
  Rake::Task.define_task("assets:precompile" => %w(sewing_kit:build))
31
31
  end
32
+
33
+ unless Rake::Task.task_defined?('assets:clean')
34
+ namespace :assets do
35
+ task :clean do
36
+ # This empty task is to offer the same interface than sprockets and webpacker
37
+ end
38
+ end
39
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sewing_kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.128.0
4
+ version: 0.129.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Sauve
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-28 00:00:00.000000000 Z
11
+ date: 2020-11-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0.56'
75
+ version: 0.89.1
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0.56'
82
+ version: 0.89.1
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rubocop-git
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -94,6 +94,20 @@ dependencies:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: 0.1.3
97
+ - !ruby/object:Gem::Dependency
98
+ name: rubocop-shopify
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 1.0.5
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 1.0.5
97
111
  description:
98
112
  email:
99
113
  - chris.sauve@shopify.com