vite_ruby 1.0.0 → 1.0.5

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
2
  SHA256:
3
- metadata.gz: 522fa472785527e2ee77fac1df4b7471a7d9dbce81ac768f0723604389151d74
4
- data.tar.gz: 7e080892e4b503768b43d04cd9c562c655ff76cb939ceb956b72e278500994fe
3
+ metadata.gz: edbaa4a25307c203d7d4e5fafa8605f5fffe05eecd078432d9db5e0e065a3105
4
+ data.tar.gz: 71ccf0533e961a9344cdfb321dad6f53391a65b46bb7a6a3ca88d2403842fd2f
5
5
  SHA512:
6
- metadata.gz: 14cc69c07939b2b67a0bb1f7a2ef3db95373f2ab12e83bf826ade50ceb877ff7d25db823c8b928247c7e81ee8a50e556c213806317a64c09a77c4c88a4f68c62
7
- data.tar.gz: e41055b2a38e7e24ee8ba3a9f942448068f427187f8c300d6a3721a295573937a08c956307d9a4246d30a440e00ec015815e45ee2a8aef49d2790e7e0004164f
6
+ metadata.gz: '09c608d897769b244a674eaf52623fd2fb62a9ff12677bfc2c10ea9685e5985a8e4a45f9f0751d257e3d162fee522ab1d2c0677aec230e7178d9ec9b1a50002b'
7
+ data.tar.gz: f5a2f1dd5a74109a4bc1d0bcfa0e5b7fff6a2abe1538cb33c9db90c99ebfe84814af80a51f4e5426cda933934de4d517c78d699260120c25036cef32794dece8
data/CHANGELOG.md CHANGED
@@ -1,3 +1,38 @@
1
+ ## [1.0.5](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@1.0.4...vite_ruby@1.0.5) (2021-03-03)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * Fix installation of JS packages, prevent silent failures (closes [#22](https://github.com/ElMassimo/vite_ruby/issues/22)) ([#23](https://github.com/ElMassimo/vite_ruby/issues/23)) ([d972e6f](https://github.com/ElMassimo/vite_ruby/commit/d972e6f3968988460753e7a831c8e9199bbd6891))
7
+
8
+
9
+
10
+ ## [1.0.4](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@1.0.3...vite_ruby@1.0.4) (2021-02-25)
11
+
12
+
13
+ ### Features
14
+
15
+ * Create Vite.js integration with Padrino ([#17](https://github.com/ElMassimo/vite_ruby/issues/17)) ([9e9a0a6](https://github.com/ElMassimo/vite_ruby/commit/9e9a0a67abceed0a784d3c2e0554c717d7f5d1d6))
16
+
17
+
18
+
19
+ ## [1.0.3](https://github.com/ElMassimo/vite_ruby/compare/vite_ruby@1.0.2...vite_ruby@1.0.3) (2021-02-25)
20
+
21
+
22
+ ### Bug Fixes
23
+
24
+ * Infer package manager correctly ([09d3036](https://github.com/ElMassimo/vite_ruby/commit/09d303627d6012ead50acd6f814a32521a76927f))
25
+
26
+
27
+
28
+ ## Vite Ruby 1.0.2 (2020-02-10)
29
+
30
+ - Fix auto-compilation when the dev server is not available.
31
+
32
+ ## Vite Ruby 1.0.1 (2020-02-10)
33
+
34
+ - Fix installation script in Ruby 2.5
35
+
1
36
  ## Vite Ruby 1.0.0 (2020-02-09)
2
37
 
3
38
  - Initial release, extracted core functionality from `vite_rails`.
data/README.md CHANGED
@@ -1,51 +1,51 @@
1
1
  <h1 align="center">
2
- <a href="https://vite-rails.netlify.app/">
3
- <img src="https://raw.githubusercontent.com/ElMassimo/vite_rails/main/docs/public/logo.svg" width="120px"/>
2
+ <a href="https://vite-ruby.netlify.app/">
3
+ <img src="https://raw.githubusercontent.com/ElMassimo/vite_ruby/main/docs/public/logo.svg" width="120px"/>
4
4
  </a>
5
5
 
6
6
  <br>
7
7
 
8
- <a href="https://vite-rails.netlify.app/">
8
+ <a href="https://vite-ruby.netlify.app/">
9
9
  Vite Ruby
10
10
  </a>
11
11
 
12
12
  <br>
13
13
 
14
14
  <p align="center">
15
- <a href="https://github.com/ElMassimo/vite_rails/actions">
16
- <img alt="Build Status" src="https://github.com/ElMassimo/vite_rails/workflows/build/badge.svg"/>
15
+ <a href="https://github.com/ElMassimo/vite_ruby/actions">
16
+ <img alt="Build Status" src="https://github.com/ElMassimo/vite_ruby/workflows/build/badge.svg"/>
17
17
  </a>
18
- <a href="https://codeclimate.com/github/ElMassimo/vite_rails">
19
- <img alt="Maintainability" src="https://codeclimate.com/github/ElMassimo/vite_rails/badges/gpa.svg"/>
18
+ <a href="https://codeclimate.com/github/ElMassimo/vite_ruby">
19
+ <img alt="Maintainability" src="https://codeclimate.com/github/ElMassimo/vite_ruby/badges/gpa.svg"/>
20
20
  </a>
21
- <a href="https://codeclimate.com/github/ElMassimo/vite_rails">
22
- <img alt="Test Coverage" src="https://codeclimate.com/github/ElMassimo/vite_rails/badges/coverage.svg"/>
21
+ <a href="https://codeclimate.com/github/ElMassimo/vite_ruby">
22
+ <img alt="Test Coverage" src="https://codeclimate.com/github/ElMassimo/vite_ruby/badges/coverage.svg"/>
23
23
  </a>
24
24
  <a href="https://rubygems.org/gems/vite_ruby">
25
25
  <img alt="Gem Version" src="https://img.shields.io/gem/v/vite_ruby.svg?colorB=e9573f"/>
26
26
  </a>
27
- <a href="https://github.com/ElMassimo/vite_rails/blob/master/LICENSE.txt">
27
+ <a href="https://github.com/ElMassimo/vite_ruby/blob/master/LICENSE.txt">
28
28
  <img alt="License" src="https://img.shields.io/badge/license-MIT-428F7E.svg"/>
29
29
  </a>
30
30
  </p>
31
31
  </h1>
32
32
 
33
- [website]: https://vite-rails.netlify.app/
34
- [configuration reference]: https://vite-rails.netlify.app/config/
35
- [features]: https://vite-rails.netlify.app/guide/introduction.html
36
- [guides]: https://vite-rails.netlify.app/guide/
37
- [config]: https://vite-rails.netlify.app/config/
38
- [vite_rails]: https://github.com/ElMassimo/vite_rails
33
+ [website]: https://vite-ruby.netlify.app/
34
+ [configuration reference]: https://vite-ruby.netlify.app/config/
35
+ [features]: https://vite-ruby.netlify.app/guide/introduction.html
36
+ [guides]: https://vite-ruby.netlify.app/guide/
37
+ [config]: https://vite-ruby.netlify.app/config/
38
+ [vite_rails]: https://github.com/ElMassimo/vite_ruby
39
39
  [webpacker]: https://github.com/rails/webpacker
40
40
  [vite]: http://vitejs.dev/
41
- [config file]: https://github.com/ElMassimo/vite_rails/blob/main/vite-plugin-ruby/default.vite.json
41
+ [config file]: https://github.com/ElMassimo/vite_ruby/blob/main/vite-plugin-ruby/default.vite.json
42
42
  [example app]: https://github.com/ElMassimo/pingcrm-vite
43
43
  [heroku]: https://pingcrm-vite.herokuapp.com/
44
- [Issues]: https://github.com/ElMassimo/vite_rails/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc
45
- [Discussions]: https://github.com/ElMassimo/vite_rails/discussions
46
- [vite_rails]: https://github.com/ElMassimo/vite_rails/tree/main/vite_rails
47
- [vite_ruby]: https://github.com/ElMassimo/vite_rails/tree/main/vite_ruby
48
- [vite_hanami]: https://github.com/ElMassimo/vite_rails/tree/main/vite_hanami
44
+ [Issues]: https://github.com/ElMassimo/vite_ruby/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc
45
+ [Discussions]: https://github.com/ElMassimo/vite_ruby/discussions
46
+ [vite_rails]: https://github.com/ElMassimo/vite_ruby/tree/main/vite_rails
47
+ [vite_ruby]: https://github.com/ElMassimo/vite_ruby/tree/main/vite_ruby
48
+ [vite_hanami]: https://github.com/ElMassimo/vite_ruby/tree/main/vite_hanami
49
49
 
50
50
 
51
51
  [Vite] is to frontend tooling as Ruby to programming, pure joy! 😍
data/lib/vite_ruby.rb CHANGED
@@ -17,18 +17,17 @@ class ViteRuby
17
17
  ENV_PREFIX = 'VITE_RUBY'
18
18
 
19
19
  # Internal: Versions used by default when running `vite install`.
20
- DEFAULT_VITE_VERSION = '^2.0.0-beta.65'
21
- DEFAULT_PLUGIN_VERSION = '^1.0.8'
20
+ DEFAULT_VITE_VERSION = '^2.0.3'
21
+ DEFAULT_PLUGIN_VERSION = '^1.0.13'
22
22
 
23
23
  # Internal: Ruby Frameworks that have a companion library for Vite Ruby.
24
- SUPPORTED_FRAMEWORKS = %w[rails hanami roda].freeze
24
+ SUPPORTED_FRAMEWORKS = %w[rails hanami roda padrino sinatra].freeze
25
25
 
26
26
  class << self
27
27
  extend Forwardable
28
28
 
29
29
  def_delegators :instance, :config, :commands, :run_proxy?
30
30
  def_delegators :config, :mode
31
- def_delegators :commands, :build
32
31
  def_delegators 'ViteRuby::Runner.new', :run
33
32
 
34
33
  def instance
@@ -76,6 +75,9 @@ class ViteRuby
76
75
  end
77
76
  end
78
77
 
78
+ extend Forwardable
79
+ def_delegators :builder, :build
80
+
79
81
  attr_writer :logger
80
82
 
81
83
  def logger
@@ -84,7 +84,9 @@ private
84
84
  logger.info(stdout) unless config.hide_build_console_output
85
85
  else
86
86
  non_empty_streams = [stdout, stderr].delete_if(&:empty?)
87
- logger.error "Build with Vite failed:\n#{ non_empty_streams.join("\n\n") }"
87
+ errors = non_empty_streams.join("\n\n")
88
+ errors += "\n❌ Check that vite and vite-plugin-ruby are in devDependencies and have been installed. " if errors.include?('ERR! canceled')
89
+ logger.error "Build with Vite failed:\n#{ errors }"
88
90
  end
89
91
  end
90
92
 
@@ -5,7 +5,7 @@ class ViteRuby::CLI::Build < Dry::CLI::Command
5
5
  DEFAULT_ENV = CURRENT_ENV || 'production'
6
6
 
7
7
  def self.shared_options
8
- option(:mode, default: self::DEFAULT_ENV, values: %w[development production], aliases: ['m'], desc: 'The build mode for Vite.')
8
+ option(:mode, default: self::DEFAULT_ENV, values: %w[development production], aliases: ['m'], desc: 'The build mode for Vite')
9
9
  end
10
10
 
11
11
  desc 'Bundle all entrypoints using Vite.'
@@ -51,8 +51,8 @@ private
51
51
  def_delegators 'ViteRuby', :config
52
52
 
53
53
  %i[append cp inject_line_after inject_line_after_last inject_line_before write].each do |util|
54
- define_method(util) { |*args, **opts, &block|
55
- Dry::CLI::Utils::Files.send(util, *args, **opts, &block) rescue nil
54
+ define_method(util) { |*args|
55
+ Dry::CLI::Utils::Files.send(util, *args) rescue nil
56
56
  }
57
57
  end
58
58
 
@@ -75,7 +75,7 @@ private
75
75
  write(package_json, '{}') unless package_json.exist?
76
76
  Dir.chdir(root) do
77
77
  deps = "vite@#{ ViteRuby::DEFAULT_VITE_VERSION } vite-plugin-ruby@#{ ViteRuby::DEFAULT_PLUGIN_VERSION }"
78
- stdout, stderr, status = Open3.capture3({ 'CI' => 'true' }, "npx ni -D #{ deps }")
78
+ stdout, stderr, status = Open3.capture3({ 'CI' => 'true' }, "npx --package @antfu/ni -- ni -D #{ deps }")
79
79
  stdout, stderr, = Open3.capture3({}, "yarn add -D #{ deps }") unless status.success?
80
80
  say(stdout, "\n", stderr)
81
81
  end
@@ -69,6 +69,7 @@ class ViteRuby::Commands
69
69
  def verify_install
70
70
  unless File.exist?(config.root.join('bin/vite'))
71
71
  warn <<~WARN
72
+
72
73
  vite binstub not found.
73
74
  Have you run `bundle binstub vite`?
74
75
  Make sure the bin directory and bin/vite are not included in .gitignore
@@ -78,6 +79,7 @@ class ViteRuby::Commands
78
79
  config_path = config.root.join(config.config_path)
79
80
  unless config_path.exist?
80
81
  warn <<~WARN
82
+
81
83
  Configuration #{ config_path } file for vite-plugin-ruby not found.
82
84
  Make sure `bundle exec vite install` has run successfully before running dependent tasks.
83
85
  WARN
@@ -88,7 +90,7 @@ class ViteRuby::Commands
88
90
  # Internal: Prints information about ViteRuby's environment.
89
91
  def print_info
90
92
  Dir.chdir(config.root) do
91
- $stdout.puts "Is bin/vite present?: #{ File.exist? 'bin/vite' }"
93
+ $stdout.puts "bin/vite present?: #{ File.exist? 'bin/vite' }"
92
94
 
93
95
  $stdout.puts "vite_ruby: #{ ViteRuby::VERSION }"
94
96
  ViteRuby.framework_libraries.each do |framework, library|
@@ -98,11 +100,14 @@ class ViteRuby::Commands
98
100
 
99
101
  $stdout.puts "node: #{ `node --version` }"
100
102
  $stdout.puts "npm: #{ `npm --version` }"
101
- $stdout.puts "yarn: #{ `yarn --version` }"
103
+ $stdout.puts "yarn: #{ `yarn --version` rescue nil }"
104
+ $stdout.puts "pnpm: #{ `pnpm --version` rescue nil }"
102
105
  $stdout.puts "ruby: #{ `ruby --version` }"
103
106
 
104
107
  $stdout.puts "\n"
105
- $stdout.puts "vite-plugin-ruby: \n#{ `npm list vite-plugin-ruby version` }"
108
+ packages = `npm ls vite vite-plugin-ruby`
109
+ packages_msg = packages.include?('vite@') ? "installed packages:\n#{ packages }" : '❌ Check that vite and vite-plugin-ruby have been added as development dependencies and installed.'
110
+ $stdout.puts packages_msg
106
111
  end
107
112
  end
108
113
 
@@ -39,6 +39,7 @@ private
39
39
 
40
40
  def forward_to_vite_dev_server(env)
41
41
  rewrite_uri_for_vite(env)
42
+ env['QUERY_STRING'] ||= ''
42
43
  env['HTTP_HOST'] = env['HTTP_X_FORWARDED_HOST'] = config.host
43
44
  env['HTTP_X_FORWARDED_SERVER'] = config.host_with_port
44
45
  env['HTTP_PORT'] = env['HTTP_X_FORWARDED_PORT'] = config.port.to_s
@@ -52,6 +52,6 @@ private
52
52
  # Internal: Resolves to an executable for Vite.
53
53
  def vite_executable(cmd)
54
54
  npx = cmd.include?('node') ? `which npx`.chomp("\n") : 'npx' rescue 'npx'
55
- [npx, 'vite']
55
+ [npx, '--no-install', '--', 'vite']
56
56
  end
57
57
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class ViteRuby
4
- VERSION = '1.0.0'
4
+ VERSION = '1.0.5'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vite_ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Máximo Mussini
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-02-10 00:00:00.000000000 Z
11
+ date: 2021-03-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-cli
@@ -103,7 +103,6 @@ extensions: []
103
103
  extra_rdoc_files: []
104
104
  files:
105
105
  - CHANGELOG.md
106
- - CONTRIBUTING.md
107
106
  - LICENSE.txt
108
107
  - README.md
109
108
  - default.vite.json
@@ -125,12 +124,12 @@ files:
125
124
  - templates/config/vite.config.ts
126
125
  - templates/config/vite.json
127
126
  - templates/entrypoints/application.js
128
- homepage: https://github.com/ElMassimo/vite_rails
127
+ homepage: https://github.com/ElMassimo/vite_ruby
129
128
  licenses:
130
129
  - MIT
131
130
  metadata:
132
- source_code_uri: https://github.com/ElMassimo/vite_rails/tree/vite_ruby@1.0.0/vite_ruby
133
- changelog_uri: https://github.com/ElMassimo/vite_rails/blob/vite_ruby@1.0.0/vite_ruby/CHANGELOG.md
131
+ source_code_uri: https://github.com/ElMassimo/vite_ruby/tree/vite_ruby@1.0.5/vite_ruby
132
+ changelog_uri: https://github.com/ElMassimo/vite_ruby/blob/vite_ruby@1.0.5/vite_ruby/CHANGELOG.md
134
133
  post_install_message:
135
134
  rdoc_options: []
136
135
  require_paths:
data/CONTRIBUTING.md DELETED
@@ -1,33 +0,0 @@
1
- ## Setting Up a Development Environment
2
-
3
- 1. Install [Yarn](https://yarnpkg.com/)
4
-
5
- 2. Run the following commands to set up the development environment.
6
-
7
- ```
8
- bundle install
9
- ```
10
-
11
- ## Making sure your changes pass all tests
12
- There are a number of automated checks which run on GitHub Actions when a pull request is created.
13
- You can run those checks on your own locally to make sure that your changes would not break the CI build.
14
-
15
- ### 1. Check the code for JavaScript style violations
16
- ```
17
- yarn lint
18
- ```
19
-
20
- ### 2. Check the code for Ruby style violations
21
- ```
22
- bundle exec rubocop
23
- ```
24
-
25
- ### 3. Run the JavaScript test suite
26
- ```
27
- yarn test
28
- ```
29
-
30
- ### 4. Run the Ruby test suite
31
- ```
32
- bundle exec rake test
33
- ```