lib/sewing_kit/webpack/dev.rb in sewing_kit-0.7.0 vs lib/sewing_kit/webpack/dev.rb in sewing_kit-0.7.1
- old
+ new
@@ -1,7 +1,17 @@
module SewingKit
module Webpack
+ class NodeSewingKitNotInstalled < StandardError
+ def initialize()
+ super(
+ "sewing-kit is not available. " +
+ "Please add `@shopify/sewing-kit` to package.json's `devDependencies`, " +
+ "and run `yarn install`."
+ )
+ end
+ end
+
class Dev
attr_accessor :pid
def start
@pid = spawn
@@ -9,16 +19,19 @@
end
private
def spawn
+ sewing_kit_bin = 'node_modules/.bin/sewing-kit'
+ raise NodeSewingKitNotInstalled.new unless File.exist?(sewing_kit_bin)
+
Kernel.spawn(
{
'NODE_ENV' => 'development',
'BLUEBIRD_DEBUG' => '0',
'BLUEBIRD_LONG_STACK_TRACES' => '0',
},
- 'node_modules/.bin/sewing-kit',
+ sewing_kit_bin,
'dev',
chdir: Rails.root.to_s,
out: $stdout,
err: $stderr,
) || exit(1)