mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
[ruby/yaml] Add JRuby-specific warning when psych fails
The error here is confusing for users because JRuby does not use
libyaml and installing it will not help. Instead, JRuby directs
them to a wiki page that describes an issue when multiple
conflicting versions of SnakeYAML are installed.
This change allows us to use the yaml gem and delete our local
sources.
8122087ffb
This commit is contained in:
parent
e89d80702b
commit
f511ff3b3a
1 changed files with 11 additions and 3 deletions
14
lib/yaml.rb
14
lib/yaml.rb
|
@ -3,9 +3,17 @@
|
|||
begin
|
||||
require 'psych'
|
||||
rescue LoadError
|
||||
warn "It seems your ruby installation is missing psych (for YAML output).\n" \
|
||||
"To eliminate this warning, please install libyaml and reinstall your ruby.\n",
|
||||
uplevel: 1
|
||||
case RUBY_ENGINE
|
||||
when 'jruby'
|
||||
warn "The Psych YAML extension failed to load.\n" \
|
||||
"Check your env for conflicting versions of SnakeYAML\n" \
|
||||
"See https://github.com/jruby/jruby/wiki/FAQs#why-does-the-psych-yaml-extension-fail-to-load-in-my-environment",
|
||||
uplevel: 1
|
||||
else
|
||||
warn "It seems your ruby installation is missing psych (for YAML output).\n" \
|
||||
"To eliminate this warning, please install libyaml and reinstall your ruby.\n",
|
||||
uplevel: 1
|
||||
end
|
||||
raise
|
||||
end
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue