Linux cesa-www-main 6.1.0-49-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
Apache/2.4.68 (Debian)
Server IP : 10.218.0.2 & Your IP : 216.73.216.28
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
ruby /
3.1.0 /
bundler /
source /
Delete
Unzip
Name
Size
Permission
Date
Action
git
[ DIR ]
drwxr-xr-x
2025-06-05 11:22
path
[ DIR ]
drwxr-xr-x
2025-06-05 11:22
rubygems
[ DIR ]
drwxr-xr-x
2025-06-05 11:22
gemspec.rb
286
B
-rw-r--r--
2022-04-12 11:11
git.rb
10.59
KB
-rw-r--r--
2022-04-12 11:11
metadata.rb
1.63
KB
-rw-r--r--
2022-04-12 11:11
path.rb
7.78
KB
-rw-r--r--
2022-04-12 11:11
rubygems.rb
16.89
KB
-rw-r--r--
2022-04-12 11:11
rubygems_aggregate.rb
2.09
KB
-rw-r--r--
2022-04-12 11:11
Save
Rename
# frozen_string_literal: true module Bundler class Source class RubygemsAggregate attr_reader :source_map, :sources def initialize(sources, source_map) @sources = sources @source_map = source_map @index = build_index end def specs @index end def identifier to_s end def to_s "any of the sources" end private def build_index Index.build do |idx| dependency_names = source_map.pinned_spec_names sources.all_sources.each do |source| source.dependency_names = dependency_names - source_map.pinned_spec_names(source) idx.add_source source.specs dependency_names.concat(source.unmet_deps).uniq! end double_check_for_index(idx, dependency_names) end end # Suppose the gem Foo depends on the gem Bar. Foo exists in Source A. Bar has some versions that exist in both # sources A and B. At this point, the API request will have found all the versions of Bar in source A, # but will not have found any versions of Bar from source B, which is a problem if the requested version # of Foo specifically depends on a version of Bar that is only found in source B. This ensures that for # each spec we found, we add all possible versions from all sources to the index. def double_check_for_index(idx, dependency_names) pinned_names = source_map.pinned_spec_names names = :names # do this so we only have to traverse to get dependency_names from the index once unmet_dependency_names = lambda do return names unless names == :names new_names = sources.all_sources.map(&:dependency_names_to_double_check) return names = nil if new_names.compact! names = new_names.flatten(1).concat(dependency_names) names.uniq! names -= pinned_names names end sources.all_sources.each do |source| source.double_check_for(unmet_dependency_names) end end end end end