⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.48
Server IP:
78.40.11.138
Server:
Linux tango.o2switch.net 4.18.0-553.30.1.lve.el8.x86_64 #1 SMP Tue Dec 3 01:21:19 UTC 2024 x86_64
Server Software:
Apache
PHP Version:
7.4.33
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
lib
/
rpm
/
View File Name :
rubygems.con
#!/usr/bin/ruby require 'rubygems/package' module RubyGemsReq module Helpers # Keep only '!=' requirements. def self.conflicts(requirements) conflicts = requirements.select {|r| r.first == '!='} end # Converts Gem::Requirement into array of requirements strings compatible # with RPM .spec file. def self.requirement_versions_to_rpm(requirement) self.conflicts(requirement.requirements).map do |op, version| version == Gem::Version.new(0) ? "" : "= #{version}" end end end # Report conflicting gem dependencies including their version. def self.gem_depenencies(specification) specification.runtime_dependencies.each do |dependency| conflict_strings = Helpers::requirement_versions_to_rpm(dependency.requirement).map do |requirement| requirement_string = "rubygem(#{dependency.name}) #{requirement}" end if conflict_strings.length > 0 conflict_string = conflict_strings.join(' with ') conflict_string.prepend('(').concat(')') if conflict_strings.length > 1 puts conflict_string end end end # Reports all conflicts specified by all provided .gemspec files. def self.conflicts while filename = gets filename.strip! begin specification = Gem::Specification.load filename gem_depenencies(specification) rescue => e # Ignore all errors. end end end end if __FILE__ == $0 RubyGemsReq::conflicts end