extended_bundler-errors 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/extended_bundler-errors.gemspec +1 -1
- data/lib/extended_bundler/errors/version.rb +2 -1
- data/lib/extended_bundler/errors.rb +18 -0
- data/lib/extended_bundler/handlers/libv8.yml +29 -0
- data/lib/extended_bundler/handlers/sqlite3.yml +24 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ea6c77d51ab412c899e36249d18e3c572354ff148aab8b23b0254a4a2d4312c0
|
4
|
+
data.tar.gz: 8ccfbfa5303d43996d9bdae9c112c7a8d77035bc92f7a6973f8fa0e856d1f25b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 659ba7ff72b6478b1ca283b6c4772fc69f93561857c1d91baca6bbc452b0ed74eb9f42169537bd515c1f0f12617234a335f8f03af3c543a83928239ff58bd97d
|
7
|
+
data.tar.gz: 270456e67a833e629e2d743f87cd63b521cc0804abda7e3781b347cb44b19b5a92caefcc8b5337e7b6ddd15080ee90abde725ded8480e87ec668ab96c595211c
|
data/Gemfile.lock
CHANGED
@@ -11,7 +11,7 @@ Gem::Specification.new do |spec|
|
|
11
11
|
|
12
12
|
spec.summary = "Extended Errors for Bundler"
|
13
13
|
spec.description = "Extended Errors for Bundler"
|
14
|
-
spec.homepage =
|
14
|
+
spec.homepage = ExtendedBundler::Errors::HOMEPAGE
|
15
15
|
spec.license = "MIT"
|
16
16
|
|
17
17
|
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
|
@@ -8,6 +8,17 @@ require "yaml"
|
|
8
8
|
|
9
9
|
module ExtendedBundler
|
10
10
|
module Errors
|
11
|
+
NATIVE_EXTENSION_MSG = ExtendedBundler::Errors::Formatter.new(<<-EOF).format
|
12
|
+
#{'=' * 20}
|
13
|
+
We weren't able to handle this error, but we noticed it is an issue with {{bold:native extensions}}.
|
14
|
+
It is recommended to:
|
15
|
+
|
16
|
+
1. Find a string in the output that looks like it could be unique to this failure
|
17
|
+
2. Search Google to try and find a solution
|
18
|
+
3. Make an issue on {{underline:#{ExtendedBundler::Errors::HOMEPAGE}}}
|
19
|
+
with the output and any solutions you found
|
20
|
+
EOF
|
21
|
+
|
11
22
|
class << self
|
12
23
|
# Registers the plugin and adds all needed hooks
|
13
24
|
# Will call troubleshoot via the `after-install` hook if the install does not succeed
|
@@ -35,11 +46,18 @@ module ExtendedBundler
|
|
35
46
|
def troubleshoot(spec_install)
|
36
47
|
path = handler_path(spec_install.name)
|
37
48
|
return nil unless File.exist?(path)
|
49
|
+
|
50
|
+
troubleshooted = false
|
38
51
|
yaml = YAML.load_file(path)
|
39
52
|
yaml.each do |handler|
|
40
53
|
next unless version_match?(spec_install.spec.version, handler['versions'])
|
41
54
|
next unless handler['matching'].any? { |m| spec_install.error =~ Regexp.new(m) }
|
42
55
|
spec_install.error = build_error(spec_install, handler)
|
56
|
+
troubleshooted
|
57
|
+
end
|
58
|
+
|
59
|
+
if !troubleshooted && spec_install.error.include?('Failed to build gem native extension')
|
60
|
+
spec_install.error = spec_install.error + "\n\n" + NATIVE_EXTENSION_MSG
|
43
61
|
end
|
44
62
|
end
|
45
63
|
|
@@ -0,0 +1,29 @@
|
|
1
|
+
-
|
2
|
+
versions: all
|
3
|
+
matching:
|
4
|
+
- unable to fetch v8 source
|
5
|
+
messages:
|
6
|
+
en: |
|
7
|
+
{{bold:What is the problem?}}
|
8
|
+
This is probably caused by compilation issues with native C extensions and Ruby.
|
9
|
+
|
10
|
+
{{bold:What can I do?}}
|
11
|
+
You may need to remove Ruby, Gems, and all Bundler caches.
|
12
|
+
|
13
|
+
1. Run {{command:ruby -v}} to see what version of Ruby you are running.
|
14
|
+
- You might see something like {{italic:ruby -v ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-darwin17]}}
|
15
|
+
2. The {{info:x86_64-darwin17}} part of this means that Ruby was built for darwin17 (Mac OS High Sierra).
|
16
|
+
- If you are running a different operating system than the one specified (if one is specified),
|
17
|
+
then you will need to remove your Ruby installation, gems (~/.gem), and bundle (~/.bundle)
|
18
|
+
and reinstall everything
|
19
|
+
- Remove everything with {{command:rm -rf ~/.gem ~/.bundle}} and deleting your Ruby installation
|
20
|
+
- {{command:rm -rf /opt/rubies}} if you installed using chruby
|
21
|
+
- {{command:rvm uninstall <version>}} if you used RVM
|
22
|
+
- {{command:rbenv uninstall <version>}} if you used Rbenv
|
23
|
+
|
24
|
+
{{bold:Additional steps you can try}}
|
25
|
+
Mac:
|
26
|
+
Try running:
|
27
|
+
{{command:brew install v8}}
|
28
|
+
{{command:bundle config build.libv8 --with-system-v8}}
|
29
|
+
{{command:bundle install}}
|
@@ -0,0 +1,24 @@
|
|
1
|
+
-
|
2
|
+
versions: all
|
3
|
+
matching:
|
4
|
+
- cannot load such file -- mkmf
|
5
|
+
- sqlite3 is missing
|
6
|
+
messages:
|
7
|
+
en: |
|
8
|
+
{{bold:What is the problem?}}
|
9
|
+
You are missing the SQLite binaries required to install the gem.
|
10
|
+
|
11
|
+
{{bold:What can I do?}}
|
12
|
+
Mac: One of these might help:
|
13
|
+
- {{command:brew install sqlite}}
|
14
|
+
- {{command:brew install ruby-dev}}
|
15
|
+
|
16
|
+
Linux: One of these might help:
|
17
|
+
APT:
|
18
|
+
- {{command:sudo apt-get install ruby-dev}}
|
19
|
+
- {{command:sudo apt-get install libsqlite3-dev}}
|
20
|
+
- {{command:sudo apt-get install make}}
|
21
|
+
|
22
|
+
YUM:
|
23
|
+
- {{command:yum install sqlite3-devel}}
|
24
|
+
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: extended_bundler-errors
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jules2689
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-06-
|
11
|
+
date: 2018-06-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -75,8 +75,10 @@ files:
|
|
75
75
|
- lib/extended_bundler/errors/formatter.rb
|
76
76
|
- lib/extended_bundler/errors/version.rb
|
77
77
|
- lib/extended_bundler/handlers/http_parser.yml
|
78
|
+
- lib/extended_bundler/handlers/libv8.yml
|
78
79
|
- lib/extended_bundler/handlers/mysql2.yml
|
79
80
|
- lib/extended_bundler/handlers/rmagick.yml
|
81
|
+
- lib/extended_bundler/handlers/sqlite3.yml
|
80
82
|
- lib/extended_bundler/handlers/testing_stuff.yml
|
81
83
|
- lib/extended_bundler/handlers/testing_stuff_2.yml
|
82
84
|
- lib/extended_bundler/handlers/unf_ext.yml
|