Class: Bundler::CLI::Platform
| Relationships & Source Files | |
| Inherits: | Object |
| Defined in: | lib/bundler/cli/platform.rb |
Class Method Summary
- .new(options) ⇒ Platform constructor
Instance Attribute Summary
- #options readonly
Instance Method Summary
- #run
- #force_ruby_platform_origin private
- #platform_info private
Constructor Details
.new(options) ⇒ Platform
# File 'lib/bundler/cli/platform.rb', line 6
def initialize() @options = end
Instance Attribute Details
#options (readonly)
[ GitHub ]# File 'lib/bundler/cli/platform.rb', line 5
attr_reader :
Instance Method Details
#force_ruby_platform_origin (private)
[ GitHub ]#platform_info (private)
[ GitHub ]# File 'lib/bundler/cli/platform.rb', line 50
def platform_info info = "Your platform is: #{Gem::Platform.local}" return info if Bundler.local_platform == Gem::Platform.local info + "\nHowever, your effective platform is: #{Bundler.local_platform} " \ "(because force_ruby_platform is #{force_ruby_platform_origin})" end
#run
[ GitHub ]# File 'lib/bundler/cli/platform.rb', line 10
def run ruby_version = if Bundler.locked_gems Bundler.locked_gems.ruby_version&.gsub(/p\d+\Z/, "") else Bundler.definition.ruby_version&.single_version_string end output = [] if [:ruby] if ruby_version output << ruby_version else output << "No ruby version specified" end else platforms = Bundler.definition.platforms.map {|p| "* #{p}" } output << platform_info output << "Your app has gems that work on these platforms:\n#{platforms.join("\n")}" if ruby_version output << "Your Gemfile specifies a Ruby version requirement:\n* #{ruby_version}" begin Bundler.definition.validate_runtime! output << "Your current platform satisfies the Ruby version requirement." rescue RubyVersionMismatch => e output << e. end else output << "Your Gemfile does not specify a Ruby version requirement." end end Bundler.ui.info output.join("\n\n") end