Skip to content

Commit 8fb33af

Browse files
author
David Heinemeier Hansson
committed
Make install compatible with NPM 9+
1 parent 6405f8b commit 8fb33af

File tree

5 files changed

+35
-15
lines changed

5 files changed

+35
-15
lines changed

lib/install/bootstrap/install.rb

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,13 @@
1919
say "Add build:css script"
2020
build_script = "sass ./app/assets/stylesheets/application.bootstrap.scss:./app/assets/builds/application.css --no-source-map --load-path=node_modules"
2121

22-
if (`npx -v`.to_f < 7.1 rescue "Missing")
23-
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :red
24-
else
22+
case `npx -v`.to_f
23+
when 7.1...8.0
2524
run %(npm set-script build:css "#{build_script}")
2625
run %(yarn build:css)
26+
when (8.0..)
27+
run %(npm pkg set scripts.build:css="#{build_script}")
28+
run %(yarn build:css)
29+
else
30+
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :green
2731
end

lib/install/bulma/install.rb

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,13 @@
66
say "Add build:css script"
77
build_script = "sass ./app/assets/stylesheets/application.bulma.scss:./app/assets/builds/application.css --no-source-map --load-path=node_modules"
88

9-
if (`npx -v`.to_f < 7.1 rescue "Missing")
10-
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :red
11-
else
9+
case `npx -v`.to_f
10+
when 7.1...8.0
1211
run %(npm set-script build:css "#{build_script}")
1312
run %(yarn build:css)
13+
when (8.0..)
14+
run %(npm pkg set scripts.build:css="#{build_script}")
15+
run %(yarn build:css)
16+
else
17+
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :green
1418
end

lib/install/postcss/install.rb

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,13 @@
66
say "Add build:css script"
77
build_script = "postcss ./app/assets/stylesheets/application.postcss.css -o ./app/assets/builds/application.css"
88

9-
if (`npx -v`.to_f < 7.1 rescue "Missing")
10-
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :red
11-
else
9+
case `npx -v`.to_f
10+
when 7.1...8.0
1211
run %(npm set-script build:css "#{build_script}")
1312
run %(yarn build:css)
13+
when (8.0..)
14+
run %(npm pkg set scripts.build:css="#{build_script}")
15+
run %(yarn build:css)
16+
else
17+
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :green
1418
end

lib/install/sass/install.rb

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,13 @@
55
say "Add build:css script"
66
build_script = "sass ./app/assets/stylesheets/application.sass.scss:./app/assets/builds/application.css --no-source-map --load-path=node_modules"
77

8-
if (`npx -v`.to_f < 7.1 rescue "Missing")
9-
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :red
10-
else
8+
case `npx -v`.to_f
9+
when 7.1...8.0
1110
run %(npm set-script build:css "#{build_script}")
1211
run %(yarn build:css)
12+
when (8.0..)
13+
run %(npm pkg set scripts.build:css="#{build_script}")
14+
run %(yarn build:css)
15+
else
16+
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :green
1317
end

lib/install/tailwind/install.rb

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,13 @@
66
say "Add build:css script"
77
build_script = "tailwindcss -i ./app/assets/stylesheets/application.tailwind.css -o ./app/assets/builds/application.css --minify"
88

9-
if (`npx -v`.to_f < 7.1 rescue "Missing")
10-
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :red
11-
else
9+
case `npx -v`.to_f
10+
when 7.1...8.0
1211
run %(npm set-script build:css "#{build_script}")
1312
run %(yarn build:css)
13+
when (8.0..)
14+
run %(npm pkg set scripts.build:css="#{build_script}")
15+
run %(yarn build:css)
16+
else
17+
say %(Add "scripts": { "build:css": "#{build_script}" } to your package.json), :green
1418
end

0 commit comments

Comments
 (0)