OXIESEC PANEL
- Current Dir:
/
/
usr
/
lib
/
ruby
/
2.5.0
/
rubygems
/
resolver
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/09/2024 07:14:11 AM
rwxr-xr-x
📄
activation_request.rb
3.74 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
api_set.rb
2.46 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
api_specification.rb
1.95 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
best_set.rb
1.61 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
composed_set.rb
1.18 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
conflict.rb
3.36 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
current_set.rb
282 bytes
02/01/2016 12:43:26 PM
rw-r--r--
📄
dependency_request.rb
2.28 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
git_set.rb
2.88 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
git_specification.rb
1.27 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
index_set.rb
1.42 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
index_specification.rb
1.48 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
installed_specification.rb
1.21 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
installer_set.rb
5.02 KB
10/08/2017 01:32:18 AM
rw-r--r--
📄
local_specification.rb
807 bytes
02/01/2016 12:43:26 PM
rw-r--r--
📄
lock_set.rb
1.67 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
lock_specification.rb
1.83 KB
02/01/2016 12:43:26 PM
rw-r--r--
📁
molinillo
-
02/10/2020 11:55:58 AM
rwxr-xr-x
📄
molinillo.rb
82 bytes
02/01/2016 12:43:26 PM
rw-r--r--
📄
requirement_list.rb
1.33 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
set.rb
1.24 KB
03/17/2017 01:29:22 AM
rw-r--r--
📄
source_set.rb
898 bytes
02/01/2016 12:43:30 PM
rw-r--r--
📄
spec_specification.rb
1.06 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
specification.rb
2.31 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
stats.rb
950 bytes
02/01/2016 12:43:26 PM
rw-r--r--
📄
vendor_set.rb
1.91 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
vendor_specification.rb
580 bytes
02/01/2016 12:43:26 PM
rw-r--r--
Editing: api_set.rb
Close
# frozen_string_literal: true ## # The global rubygems pool, available via the rubygems.org API. # Returns instances of APISpecification. class Gem::Resolver::APISet < Gem::Resolver::Set ## # The URI for the dependency API this APISet uses. attr_reader :dep_uri # :nodoc: ## # The Gem::Source that gems are fetched from attr_reader :source ## # The corresponding place to fetch gems. attr_reader :uri ## # Creates a new APISet that will retrieve gems from +uri+ using the RubyGems # API URL +dep_uri+ which is described at # http://guides.rubygems.org/rubygems-org-api def initialize dep_uri = 'https://rubygems.org/api/v1/dependencies' super() dep_uri = URI dep_uri unless URI === dep_uri # for ruby 1.8 @dep_uri = dep_uri @uri = dep_uri + '../..' @data = Hash.new { |h,k| h[k] = [] } @source = Gem::Source.new @uri @to_fetch = [] end ## # Return an array of APISpecification objects matching # DependencyRequest +req+. def find_all req res = [] return res unless @remote if @to_fetch.include?(req.name) prefetch_now end versions(req.name).each do |ver| if req.dependency.match? req.name, ver[:number] res << Gem::Resolver::APISpecification.new(self, ver) end end res end ## # A hint run by the resolver to allow the Set to fetch # data for DependencyRequests +reqs+. def prefetch reqs return unless @remote names = reqs.map { |r| r.dependency.name } needed = names - @data.keys - @to_fetch @to_fetch += needed end def prefetch_now # :nodoc: needed, @to_fetch = @to_fetch, [] uri = @dep_uri + "?gems=#{needed.sort.join ','}" str = Gem::RemoteFetcher.fetcher.fetch_path uri loaded = [] Marshal.load(str).each do |ver| name = ver[:name] @data[name] << ver loaded << name end (needed - loaded).each do |missing| @data[missing] = [] end end def pretty_print q # :nodoc: q.group 2, '[APISet', ']' do q.breakable q.text "URI: #{@dep_uri}" q.breakable q.text 'gem names:' q.pp @data.keys end end ## # Return data for all versions of the gem +name+. def versions name # :nodoc: if @data.key?(name) return @data[name] end uri = @dep_uri + "?gems=#{name}" str = Gem::RemoteFetcher.fetcher.fetch_path uri Marshal.load(str).each do |ver| @data[ver[:name]] << ver end @data[name] end end