opt
/
alt
/
ruby26
/
lib64
/
ruby
/
2.6.0
/
bundler
/
Go to Home Directory
+
Upload
Create File
root@0UT1S:~$
Execute
By Order of Mr.0UT1S
[DIR] ..
N/A
[DIR] cli
N/A
[DIR] compact_index_client
N/A
[DIR] fetcher
N/A
[DIR] installer
N/A
[DIR] plugin
N/A
[DIR] resolver
N/A
[DIR] settings
N/A
[DIR] source
N/A
[DIR] ssl_certs
N/A
[DIR] templates
N/A
[DIR] ui
N/A
[DIR] vendor
N/A
build_metadata.rb
1.61 KB
Rename
Delete
capistrano.rb
879 bytes
Rename
Delete
cli.rb
35.12 KB
Rename
Delete
compact_index_client.rb
3.27 KB
Rename
Delete
compatibility_guard.rb
518 bytes
Rename
Delete
constants.rb
212 bytes
Rename
Delete
current_ruby.rb
2.19 KB
Rename
Delete
definition.rb
36.44 KB
Rename
Delete
dep_proxy.rb
827 bytes
Rename
Delete
dependency.rb
4.43 KB
Rename
Delete
deployment.rb
3.19 KB
Rename
Delete
deprecate.rb
876 bytes
Rename
Delete
dsl.rb
21.46 KB
Rename
Delete
endpoint_specification.rb
3.91 KB
Rename
Delete
env.rb
5.22 KB
Rename
Delete
environment_preserver.rb
1.31 KB
Rename
Delete
errors.rb
4.59 KB
Rename
Delete
feature_flag.rb
3.07 KB
Rename
Delete
fetcher.rb
10.83 KB
Rename
Delete
friendly_errors.rb
4.33 KB
Rename
Delete
gem_helper.rb
5.88 KB
Rename
Delete
gem_helpers.rb
3.19 KB
Rename
Delete
gem_remote_fetcher.rb
1.46 KB
Rename
Delete
gem_tasks.rb
137 bytes
Rename
Delete
gem_version_promoter.rb
6.52 KB
Rename
Delete
gemdeps.rb
423 bytes
Rename
Delete
graph.rb
5.00 KB
Rename
Delete
index.rb
5.24 KB
Rename
Delete
injector.rb
8.61 KB
Rename
Delete
inline.rb
2.33 KB
Rename
Delete
installer.rb
11.85 KB
Rename
Delete
lazy_specification.rb
3.62 KB
Rename
Delete
lockfile_generator.rb
2.18 KB
Rename
Delete
lockfile_parser.rb
8.62 KB
Rename
Delete
match_platform.rb
659 bytes
Rename
Delete
mirror.rb
5.79 KB
Rename
Delete
plugin.rb
9.12 KB
Rename
Delete
process_lock.rb
702 bytes
Rename
Delete
psyched_yaml.rb
853 bytes
Rename
Delete
remote_specification.rb
3.46 KB
Rename
Delete
resolver.rb
14.20 KB
Rename
Delete
retry.rb
1.60 KB
Rename
Delete
ruby_dsl.rb
761 bytes
Rename
Delete
ruby_version.rb
4.96 KB
Rename
Delete
rubygems_ext.rb
5.88 KB
Rename
Delete
rubygems_gem_installer.rb
3.49 KB
Rename
Delete
rubygems_integration.rb
25.01 KB
Rename
Delete
runtime.rb
10.95 KB
Rename
Delete
settings.rb
12.38 KB
Rename
Delete
setup.rb
720 bytes
Rename
Delete
shared_helpers.rb
12.00 KB
Rename
Delete
similarity_detector.rb
1.84 KB
Rename
Delete
source.rb
2.66 KB
Rename
Delete
source_list.rb
5.87 KB
Rename
Delete
spec_set.rb
5.34 KB
Rename
Delete
stub_specification.rb
2.78 KB
Rename
Delete
ui.rb
198 bytes
Rename
Delete
uri_credentials_filter.rb
1.20 KB
Rename
Delete
vendored_fileutils.rb
192 bytes
Rename
Delete
vendored_molinillo.rb
100 bytes
Rename
Delete
vendored_persistent.rb
1.61 KB
Rename
Delete
vendored_thor.rb
193 bytes
Rename
Delete
version.rb
821 bytes
Rename
Delete
version_ranges.rb
2.86 KB
Rename
Delete
vlad.rb
466 bytes
Rename
Delete
worker.rb
2.57 KB
Rename
Delete
yaml_serializer.rb
2.41 KB
Rename
Delete
# frozen_string_literal: true # Some versions of the Bundler 1.1 RC series introduced corrupted # lockfiles. There were two major problems: # # * multiple copies of the same GIT section appeared in the lockfile # * when this happened, those sections got multiple copies of gems # in those sections. # # As a result, Bundler 1.1 contains code that fixes the earlier # corruption. We will remove this fix-up code in Bundler 1.2. module Bundler class LockfileParser attr_reader :sources, :dependencies, :specs, :platforms, :bundler_version, :ruby_version BUNDLED = "BUNDLED WITH".freeze DEPENDENCIES = "DEPENDENCIES".freeze PLATFORMS = "PLATFORMS".freeze RUBY = "RUBY VERSION".freeze GIT = "GIT".freeze GEM = "GEM".freeze PATH = "PATH".freeze PLUGIN = "PLUGIN SOURCE".freeze SPECS = " specs:".freeze OPTIONS = /^ ([a-z]+): (.*)$/i SOURCE = [GIT, GEM, PATH, PLUGIN].freeze SECTIONS_BY_VERSION_INTRODUCED = { # The strings have to be dup'ed for old RG on Ruby 2.3+ # TODO: remove dup in Bundler 2.0 Gem::Version.create("1.0".dup) => [DEPENDENCIES, PLATFORMS, GIT, GEM, PATH].freeze, Gem::Version.create("1.10".dup) => [BUNDLED].freeze, Gem::Version.create("1.12".dup) => [RUBY].freeze, Gem::Version.create("1.13".dup) => [PLUGIN].freeze, }.freeze KNOWN_SECTIONS = SECTIONS_BY_VERSION_INTRODUCED.values.flatten.freeze ENVIRONMENT_VERSION_SECTIONS = [BUNDLED, RUBY].freeze def self.sections_in_lockfile(lockfile_contents) lockfile_contents.scan(/^\w[\w ]*$/).uniq end def self.unknown_sections_in_lockfile(lockfile_contents) sections_in_lockfile(lockfile_contents) - KNOWN_SECTIONS end def self.sections_to_ignore(base_version = nil) base_version &&= base_version.release base_version ||= Gem::Version.create("1.0".dup) attributes = [] SECTIONS_BY_VERSION_INTRODUCED.each do |version, introduced| next if version <= base_version attributes += introduced end attributes end def initialize(lockfile) @platforms = [] @sources = [] @dependencies = {} @state = nil @specs = {} @rubygems_aggregate = Source::Rubygems.new if lockfile.match(/<<<<<<<|=======|>>>>>>>|\|\|\|\|\|\|\|/) raise LockfileError, "Your #{Bundler.default_lockfile.relative_path_from(SharedHelpers.pwd)} contains merge conflicts.\n" \ "Run `git checkout HEAD -- #{Bundler.default_lockfile.relative_path_from(SharedHelpers.pwd)}` first to get a clean lock." end lockfile.split(/(?:\r?\n)+/).each do |line| if SOURCE.include?(line) @state = :source parse_source(line) elsif line == DEPENDENCIES @state = :dependency elsif line == PLATFORMS @state = :platform elsif line == RUBY @state = :ruby elsif line == BUNDLED @state = :bundled_with elsif line =~ /^[^\s]/ @state = nil elsif @state send("parse_#{@state}", line) end end @sources << @rubygems_aggregate unless Bundler.feature_flag.lockfile_uses_separate_rubygems_sources? @specs = @specs.values.sort_by(&:identifier) warn_for_outdated_bundler_version rescue ArgumentError => e Bundler.ui.debug(e) raise LockfileError, "Your lockfile is unreadable. Run `rm #{Bundler.default_lockfile.relative_path_from(SharedHelpers.pwd)}` " \ "and then `bundle install` to generate a new lockfile." end def warn_for_outdated_bundler_version return unless bundler_version prerelease_text = bundler_version.prerelease? ? " --pre" : "" current_version = Gem::Version.create(Bundler::VERSION) case current_version.segments.first <=> bundler_version.segments.first when -1 raise LockfileError, "You must use Bundler #{bundler_version.segments.first} or greater with this lockfile." when 0 if current_version < bundler_version Bundler.ui.warn "Warning: the running version of Bundler (#{current_version}) is older " \ "than the version that created the lockfile (#{bundler_version}). We suggest you " \ "upgrade to the latest version of Bundler by running `gem " \ "install bundler#{prerelease_text}`.\n" end end end private TYPES = { GIT => Bundler::Source::Git, GEM => Bundler::Source::Rubygems, PATH => Bundler::Source::Path, PLUGIN => Bundler::Plugin, }.freeze def parse_source(line) case line when SPECS case @type when PATH @current_source = TYPES[@type].from_lock(@opts) @sources << @current_source when GIT @current_source = TYPES[@type].from_lock(@opts) # Strip out duplicate GIT sections if @sources.include?(@current_source) @current_source = @sources.find {|s| s == @current_source } else @sources << @current_source end when GEM if Bundler.feature_flag.lockfile_uses_separate_rubygems_sources? @opts["remotes"] = @opts.delete("remote") @current_source = TYPES[@type].from_lock(@opts) @sources << @current_source else Array(@opts["remote"]).each do |url| @rubygems_aggregate.add_remote(url) end @current_source = @rubygems_aggregate end when PLUGIN @current_source = Plugin.source_from_lock(@opts) @sources << @current_source end when OPTIONS value = $2 value = true if value == "true" value = false if value == "false" key = $1 if @opts[key] @opts[key] = Array(@opts[key]) @opts[key] << value else @opts[key] = value end when *SOURCE @current_source = nil @opts = {} @type = line else parse_spec(line) end end space = / / NAME_VERSION = / ^(#{space}{2}|#{space}{4}|#{space}{6})(?!#{space}) # Exactly 2, 4, or 6 spaces at the start of the line (.*?) # Name (?:#{space}\(([^-]*) # Space, followed by version (?:-(.*))?\))? # Optional platform (!)? # Optional pinned marker $ # Line end /xo def parse_dependency(line) return unless line =~ NAME_VERSION spaces = $1 return unless spaces.size == 2 name = $2 version = $3 pinned = $5 version = version.split(",").map(&:strip) if version dep = Bundler::Dependency.new(name, version) if pinned && dep.name != "bundler" spec = @specs.find {|_, v| v.name == dep.name } dep.source = spec.last.source if spec # Path sources need to know what the default name / version # to use in the case that there are no gemspecs present. A fake # gemspec is created based on the version set on the dependency # TODO: Use the version from the spec instead of from the dependency if version && version.size == 1 && version.first =~ /^\s*= (.+)\s*$/ && dep.source.is_a?(Bundler::Source::Path) dep.source.name = name dep.source.version = $1 end end @dependencies[dep.name] = dep end def parse_spec(line) return unless line =~ NAME_VERSION spaces = $1 name = $2 version = $3 platform = $4 if spaces.size == 4 version = Gem::Version.new(version) platform = platform ? Gem::Platform.new(platform) : Gem::Platform::RUBY @current_spec = LazySpecification.new(name, version, platform) @current_spec.source = @current_source # Avoid introducing multiple copies of the same spec (caused by # duplicate GIT sections) @specs[@current_spec.identifier] ||= @current_spec elsif spaces.size == 6 version = version.split(",").map(&:strip) if version dep = Gem::Dependency.new(name, version) @current_spec.dependencies << dep end end def parse_platform(line) @platforms << Gem::Platform.new($1) if line =~ /^ (.*)$/ end def parse_bundled_with(line) line = line.strip return unless Gem::Version.correct?(line) @bundler_version = Gem::Version.create(line) end def parse_ruby(line) @ruby_version = line.strip end end end
Save