libgems 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/libgems.rb +13 -9
- data/lib/libgems/command_manager.rb +1 -1
- data/lib/libgems/commands/environment_command.rb +3 -3
- data/lib/libgems/commands/mirror_command.rb +2 -1
- data/lib/libgems/config_file.rb +1 -1
- data/lib/libgems/custom_require.rb +17 -6
- data/lib/libgems/doc_manager.rb +0 -1
- data/lib/libgems/indexer.rb +1 -1
- data/lib/libgems/installer.rb +1 -1
- data/lib/libgems/package.rb +2 -1
- data/lib/libgems/remote_fetcher.rb +1 -1
- data/lib/libgems/server.rb +5 -4
- data/lib/libgems/spec_fetcher.rb +10 -8
- data/lib/libgems/specification.rb +9 -8
- data/test/test_gem_commands_environment_command.rb +1 -1
- data/test/test_gem_commands_update_command.rb +1 -1
- data/test/test_gem_indexer.rb +1 -1
- data/test/test_gem_source_index.rb +4 -4
- data/test/test_gem_specification.rb +5 -5
- metadata +57 -117
data/lib/libgems.rb
CHANGED
@@ -98,8 +98,8 @@ require 'thread'
|
|
98
98
|
module LibGems
|
99
99
|
NAME = 'LibGems'
|
100
100
|
GEM_NAME = 'libgems'
|
101
|
-
VERSION = '
|
102
|
-
|
101
|
+
VERSION = '1.3.8'
|
102
|
+
LIBGEMS_VERSION = '0.0.4'
|
103
103
|
|
104
104
|
##
|
105
105
|
# Raised when SlimGems is unable to load or activate a gem. Contains the
|
@@ -142,7 +142,7 @@ module LibGems
|
|
142
142
|
|
143
143
|
DIRECTORIES = %w[cache doc gems specifications] unless defined?(DIRECTORIES)
|
144
144
|
|
145
|
-
RubyGemsPackageVersion =
|
145
|
+
RubyGemsPackageVersion = VERSION
|
146
146
|
# :startdoc:
|
147
147
|
|
148
148
|
##
|
@@ -175,7 +175,7 @@ module LibGems
|
|
175
175
|
|
176
176
|
|
177
177
|
def self.rubygems_compat?
|
178
|
-
@using_rubygems_compat
|
178
|
+
@using_rubygems_compat ||= false
|
179
179
|
end
|
180
180
|
|
181
181
|
##
|
@@ -1170,32 +1170,36 @@ module ::Kernel
|
|
1170
1170
|
# different version was already activated, an exception will be raised.
|
1171
1171
|
#
|
1172
1172
|
# Kernel#gem should be called *before* any require statements (otherwise
|
1173
|
-
#
|
1173
|
+
# LibGems may load a conflicting library version).
|
1174
1174
|
#
|
1175
|
-
# In older
|
1175
|
+
# In older LibGems versions, the environment variable GEM_SKIP could be
|
1176
1176
|
# used to skip activation of specified gems, for example to test out changes
|
1177
|
-
# that haven't been installed yet. Now
|
1177
|
+
# that haven't been installed yet. Now LibGems defers to -I and the
|
1178
1178
|
# RUBYLIB environment variable to skip activation of a gem.
|
1179
1179
|
#
|
1180
1180
|
# Example:
|
1181
1181
|
#
|
1182
1182
|
# GEM_SKIP=libA:libB ruby -I../libA -I../libB ./mycode.rb
|
1183
1183
|
|
1184
|
-
alias_method :
|
1184
|
+
alias_method :rubygems_gem, :gem
|
1185
1185
|
|
1186
1186
|
def gem(gem_name, *version_requirements) # :doc:
|
1187
1187
|
skip_list = (ENV['LIBGEMS_SKIP'] || ENV['GEM_SKIP'] || "").split(/:/)
|
1188
1188
|
raise LibGems::LoadError, "skipping #{gem_name}" if skip_list.include? gem_name
|
1189
1189
|
LibGems.activate(gem_name, *version_requirements)
|
1190
1190
|
rescue LibGems::LoadError => e
|
1191
|
+
# If we've already activated, stop trying
|
1192
|
+
raise e if e.message =~ /can't activate/
|
1193
|
+
# Assuming other errors are not found errors so pass them on to see if RubyGems can find them.
|
1191
1194
|
begin
|
1192
|
-
|
1195
|
+
rubygems_gem(gem_name, *version_requirements)
|
1193
1196
|
rescue Gem::LoadError
|
1194
1197
|
raise e
|
1195
1198
|
end
|
1196
1199
|
end
|
1197
1200
|
|
1198
1201
|
private :gem
|
1202
|
+
private :rubygems_gem
|
1199
1203
|
|
1200
1204
|
end
|
1201
1205
|
|
@@ -123,7 +123,7 @@ class LibGems::CommandManager
|
|
123
123
|
say LibGems::Command::HELP
|
124
124
|
terminate_interaction(0)
|
125
125
|
when '-v', '--version'
|
126
|
-
say "#{LibGems::NAME} #{LibGems::
|
126
|
+
say "#{LibGems::NAME} #{LibGems::LIBGEMS_VERSION} (RubyGems #{LibGems::VERSION})"
|
127
127
|
terminate_interaction(0)
|
128
128
|
when /^-/
|
129
129
|
alert_error "Invalid option: #{args[0]}. See 'gem --help'."
|
@@ -70,7 +70,7 @@ lib/libgems/defaults/operating_system.rb
|
|
70
70
|
when /^packageversion/ then
|
71
71
|
out << LibGems::RubyGemsPackageVersion
|
72
72
|
when /^version/ then
|
73
|
-
out << LibGems::
|
73
|
+
out << LibGems::LIBGEMS_VERSION
|
74
74
|
when /^gemdir/, /^gemhome/, /^home/, /^LIBGEMS_HOME/, /^GEM_HOME/ then
|
75
75
|
out << LibGems.dir
|
76
76
|
when /^gempath/, /^path/, /^LIBGEMS_PATH/, /^GEM_PATH/ then
|
@@ -82,8 +82,8 @@ lib/libgems/defaults/operating_system.rb
|
|
82
82
|
when nil then
|
83
83
|
out = "#{LibGems::NAME} Environment:\n"
|
84
84
|
|
85
|
-
out << " - LibGems VERSION: #{LibGems::
|
86
|
-
out << " - RUBYGEMS VERSION: #{LibGems::
|
85
|
+
out << " - LibGems VERSION: #{LibGems::LIBGEMS_VERSION}\n"
|
86
|
+
out << " - RUBYGEMS VERSION: #{LibGems::VERSION}\n"
|
87
87
|
|
88
88
|
out << " - RUBY VERSION: #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}"
|
89
89
|
out << " patchlevel #{RUBY_PATCHLEVEL}" if defined? RUBY_PATCHLEVEL
|
data/lib/libgems/config_file.rb
CHANGED
@@ -6,13 +6,23 @@
|
|
6
6
|
|
7
7
|
module Kernel
|
8
8
|
|
9
|
-
|
10
|
-
|
9
|
+
if private_method_defined?(:gem_original_require)
|
10
|
+
##
|
11
|
+
# The Kernel#require from before RubyGems was loaded.
|
12
|
+
alias libgems_original_require gem_original_require
|
13
|
+
|
14
|
+
##
|
15
|
+
# The Kernel#require defined by RubyGems.
|
16
|
+
alias rubygems_require require
|
17
|
+
else
|
18
|
+
##
|
19
|
+
# The Kernel#require from before LibGems was loaded.
|
20
|
+
alias libgems_original_require require
|
21
|
+
end
|
11
22
|
|
12
|
-
alias libgems_original_require require
|
13
23
|
|
14
24
|
##
|
15
|
-
# When
|
25
|
+
# When LibGems is required, Kernel#require is replaced with our own which
|
16
26
|
# is capable of loading gems on demand.
|
17
27
|
#
|
18
28
|
# When you call <tt>require 'x'</tt>, this is what happens:
|
@@ -27,8 +37,8 @@ module Kernel
|
|
27
37
|
|
28
38
|
def require(path) # :doc:
|
29
39
|
# If we're using rubygems compat mode we don't want to call the original RubyGems require
|
30
|
-
require_method = (LibGems.rubygems_compat? && defined?(
|
31
|
-
:
|
40
|
+
require_method = (!LibGems.rubygems_compat? && defined?(rubygems_require)) ?
|
41
|
+
:rubygems_require : :libgems_original_require
|
32
42
|
send(require_method, path)
|
33
43
|
rescue LoadError => load_error
|
34
44
|
if load_error.message.end_with?(path)
|
@@ -42,6 +52,7 @@ module Kernel
|
|
42
52
|
|
43
53
|
private :require
|
44
54
|
private :libgems_original_require
|
55
|
+
private :rubygems_require if defined?(:rubygems_require)
|
45
56
|
|
46
57
|
end unless Kernel.private_method_defined?(:libgems_original_require)
|
47
58
|
|
data/lib/libgems/doc_manager.rb
CHANGED
data/lib/libgems/indexer.rb
CHANGED
@@ -320,7 +320,7 @@ class LibGems::Indexer
|
|
320
320
|
<title>#{rss_title}</title>
|
321
321
|
<link>http://#{rss_host}</link>
|
322
322
|
<description>Recently released gems from http://#{rss_host}</description>
|
323
|
-
<generator>#{LibGems::NAME} v#{LibGems::
|
323
|
+
<generator>#{LibGems::NAME} v#{LibGems::LIBGEMS_VERSION} (RubyGems v#{LibGems::VERSION})</generator>
|
324
324
|
<docs>http://cyber.law.harvard.edu/rss/rss.html</docs>
|
325
325
|
HEADER
|
326
326
|
|
data/lib/libgems/installer.rb
CHANGED
@@ -372,7 +372,7 @@ class LibGems::Installer
|
|
372
372
|
|
373
373
|
def ensure_required_rubygems_version_met
|
374
374
|
if rrgv = @spec.required_rubygems_version then
|
375
|
-
unless rrgv.satisfied_by? LibGems::Version.new(LibGems::
|
375
|
+
unless rrgv.satisfied_by? LibGems::Version.new(LibGems::VERSION) then
|
376
376
|
raise LibGems::InstallError,
|
377
377
|
"#{@spec.name} requires #{LibGems::NAME} version #{rrgv}. " +
|
378
378
|
"Try 'gem update --system' to update #{LibGems::NAME} itself."
|
data/lib/libgems/package.rb
CHANGED
@@ -7,12 +7,13 @@
|
|
7
7
|
require 'fileutils'
|
8
8
|
require 'find'
|
9
9
|
require 'stringio'
|
10
|
-
require 'yaml'
|
11
10
|
require 'zlib'
|
12
11
|
|
13
12
|
require 'libgems/security'
|
14
13
|
require 'libgems/specification'
|
15
14
|
|
15
|
+
LibGems.load_yaml
|
16
|
+
|
16
17
|
##
|
17
18
|
# Wrapper for FileUtils meant to provide logging and additional operations if
|
18
19
|
# needed.
|
@@ -313,7 +313,7 @@ class LibGems::RemoteFetcher
|
|
313
313
|
request.basic_auth uri.user, uri.password
|
314
314
|
end
|
315
315
|
|
316
|
-
ua = "#{LibGems::NAME}/#{LibGems::
|
316
|
+
ua = "#{LibGems::NAME}/#{LibGems::LIBGEMS_VERSION} #{LibGems::Platform.local}"
|
317
317
|
ua << " Ruby/#{RUBY_VERSION} (#{RUBY_RELEASE_DATE}"
|
318
318
|
ua << " patchlevel #{RUBY_PATCHLEVEL}" if defined? RUBY_PATCHLEVEL
|
319
319
|
ua << ")"
|
data/lib/libgems/server.rb
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
require 'webrick'
|
2
|
-
require 'yaml'
|
3
2
|
require 'zlib'
|
4
3
|
require 'erb'
|
5
4
|
|
6
5
|
require 'libgems'
|
7
6
|
require 'libgems/doc_manager'
|
8
7
|
|
8
|
+
LibGems.load_yaml
|
9
|
+
|
9
10
|
##
|
10
11
|
# LibGems::Server and allows users to serve gems for consumption by
|
11
12
|
# `gem --remote-install`.
|
@@ -646,16 +647,16 @@ div.method-source-code pre { color: #ffdead; overflow: hidden; }
|
|
646
647
|
specs << {
|
647
648
|
"authors" => "Chad Fowler, Rich Kilmer, Jim Weirich, Eric Hodel and others",
|
648
649
|
"dependencies" => [],
|
649
|
-
"doc_path" => "/doc_root/rubygems-#{LibGems::
|
650
|
+
"doc_path" => "/doc_root/rubygems-#{LibGems::VERSION}/rdoc/index.html",
|
650
651
|
"executables" => [{"executable" => 'gem', "is_last" => true}],
|
651
652
|
"only_one_executable" => true,
|
652
|
-
"full_name" => "libgems-#{LibGems::
|
653
|
+
"full_name" => "libgems-#{LibGems::LIBGEMS_VERSION}",
|
653
654
|
"has_deps" => false,
|
654
655
|
"homepage" => "http://docs.rubygems.org/",
|
655
656
|
"name" => 'rubygems',
|
656
657
|
"rdoc_installed" => true,
|
657
658
|
"summary" => "#{LibGems::NAME} itself",
|
658
|
-
"version" => LibGems::
|
659
|
+
"version" => LibGems::LIBGEMS_VERSION,
|
659
660
|
}
|
660
661
|
|
661
662
|
specs = specs.sort_by { |spec| [spec["name"].downcase, spec["version"]] }
|
data/lib/libgems/spec_fetcher.rb
CHANGED
@@ -287,14 +287,16 @@ class LibGems::SpecFetcher
|
|
287
287
|
loaded = true
|
288
288
|
end
|
289
289
|
|
290
|
-
specs =
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
290
|
+
specs = LibGems.with_rubygems_compat do
|
291
|
+
begin
|
292
|
+
Marshal.load spec_dump
|
293
|
+
rescue ArgumentError
|
294
|
+
spec_dump = @fetcher.fetch_path spec_path
|
295
|
+
loaded = true
|
296
|
+
|
297
|
+
Marshal.load spec_dump
|
298
|
+
end
|
299
|
+
end
|
298
300
|
|
299
301
|
if loaded and @update_cache then
|
300
302
|
begin
|
@@ -524,7 +524,7 @@ class LibGems::Specification
|
|
524
524
|
# Sets the rubygems_version to the current SlimGems version
|
525
525
|
|
526
526
|
def mark_version
|
527
|
-
@rubygems_version = LibGems::
|
527
|
+
@rubygems_version = LibGems::VERSION
|
528
528
|
end
|
529
529
|
|
530
530
|
##
|
@@ -700,15 +700,16 @@ class LibGems::Specification
|
|
700
700
|
end
|
701
701
|
|
702
702
|
def to_yaml(opts = {}) # :nodoc:
|
703
|
+
LibGems.load_yaml
|
703
704
|
if YAML.const_defined?(:ENGINE) && !YAML::ENGINE.syck? then
|
704
|
-
super.gsub(/ !!null \n/, " \n")
|
705
|
+
super.gsub(/ !!null \n/, " \n").gsub("!ruby/object:LibGems", "!ruby/object:Gem")
|
705
706
|
else
|
706
|
-
|
707
|
+
# TODO: Make sure this outputs Gem compatible code
|
708
|
+
YAML.quick_emit object_id, opts do |out|
|
707
709
|
out.map taguri, to_yaml_style do |map|
|
708
710
|
encode_with map
|
709
711
|
end
|
710
712
|
end
|
711
|
-
ret #.to_s.gsub("!ruby/object:LibGems", "!ruby/object:Gem").to_yaml
|
712
713
|
end
|
713
714
|
end
|
714
715
|
|
@@ -774,7 +775,7 @@ class LibGems::Specification
|
|
774
775
|
result << " s.specification_version = #{specification_version}"
|
775
776
|
result << nil
|
776
777
|
|
777
|
-
result << " if Gem::Version.new(Gem::
|
778
|
+
result << " if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then"
|
778
779
|
|
779
780
|
unless dependencies.empty? then
|
780
781
|
dependencies.each do |dep|
|
@@ -820,9 +821,9 @@ class LibGems::Specification
|
|
820
821
|
normalize
|
821
822
|
|
822
823
|
# TODO: Fix the versioning here
|
823
|
-
if rubygems_version != LibGems::
|
824
|
+
if rubygems_version != LibGems::VERSION then
|
824
825
|
raise LibGems::InvalidSpecificationException,
|
825
|
-
"expected RubyGems version #{LibGems::
|
826
|
+
"expected RubyGems version #{LibGems::VERSION}, was #{rubygems_version}"
|
826
827
|
end
|
827
828
|
|
828
829
|
@@required_attributes.each do |symbol|
|
@@ -1068,7 +1069,7 @@ class LibGems::Specification
|
|
1068
1069
|
#
|
1069
1070
|
# Do not set this, it is set automatically when the gem is packaged.
|
1070
1071
|
|
1071
|
-
required_attribute :rubygems_version, LibGems::
|
1072
|
+
required_attribute :rubygems_version, LibGems::VERSION
|
1072
1073
|
|
1073
1074
|
##
|
1074
1075
|
# :attr_accessor: specification_version
|
@@ -73,7 +73,7 @@ class TestGemCommandsUpdateCommand < RubyGemTestCase
|
|
73
73
|
end
|
74
74
|
|
75
75
|
def util_setup_rubygem_current
|
76
|
-
@rubygem_current = util_setup_rubygem LibGems::
|
76
|
+
@rubygem_current = util_setup_rubygem LibGems::LIBGEMS_VERSION
|
77
77
|
end
|
78
78
|
|
79
79
|
def util_add_to_fetcher *specs
|
data/test/test_gem_indexer.rb
CHANGED
@@ -165,7 +165,7 @@ pl-1-i386-linux
|
|
165
165
|
<title>ExampleForge gems</title>
|
166
166
|
<link>http://example.com</link>
|
167
167
|
<description>Recently released gems from http://example.com</description>
|
168
|
-
<generator>#{LibGems::NAME} v#{LibGems::
|
168
|
+
<generator>#{LibGems::NAME} v#{LibGems::LIBGEMS_VERSION} (RubyGems v#{LibGems::VERSION})</generator>
|
169
169
|
<docs>http://cyber.law.harvard.edu/rss/rss.html</docs>
|
170
170
|
<item>
|
171
171
|
<title>a-2</title>
|
@@ -66,11 +66,11 @@ class TestGemSourceIndex < RubyGemTestCase
|
|
66
66
|
|
67
67
|
spec_file = File.join spec_dir, "utf-8.gemspec"
|
68
68
|
spec_data = <<-SPEC
|
69
|
-
|
69
|
+
Gem::Specification.new do |s|
|
70
70
|
s.name = %q{utf}
|
71
71
|
s.version = "8"
|
72
72
|
|
73
|
-
s.required_rubygems_version =
|
73
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0")
|
74
74
|
s.authors = ["\317\200"]
|
75
75
|
s.date = %q{2008-09-10}
|
76
76
|
s.description = %q{This is a test description}
|
@@ -82,10 +82,10 @@ LibGems::Specification.new do |s|
|
|
82
82
|
s.summary = %q{this is a summary}
|
83
83
|
|
84
84
|
if s.respond_to? :specification_version then
|
85
|
-
current_version =
|
85
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
86
86
|
s.specification_version = 2
|
87
87
|
|
88
|
-
if
|
88
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
89
89
|
else
|
90
90
|
end
|
91
91
|
else
|
@@ -823,13 +823,13 @@ Gem::Specification.new do |s|
|
|
823
823
|
s.files = [\"lib/code.rb\"]
|
824
824
|
s.homepage = %q{http://example.com}
|
825
825
|
s.require_paths = [\"lib\"]
|
826
|
-
s.rubygems_version = %q{#{LibGems::
|
826
|
+
s.rubygems_version = %q{#{LibGems::VERSION}}
|
827
827
|
s.summary = %q{this is a summary}
|
828
828
|
|
829
829
|
if s.respond_to? :specification_version then
|
830
830
|
s.specification_version = #{Gem::Specification::CURRENT_SPECIFICATION_VERSION}
|
831
831
|
|
832
|
-
if Gem::Version.new(Gem::
|
832
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
833
833
|
s.add_runtime_dependency(%q<b>, [\"= 1\"])
|
834
834
|
else
|
835
835
|
s.add_dependency(%q<b>, [\"= 1\"])
|
@@ -877,14 +877,14 @@ Gem::Specification.new do |s|
|
|
877
877
|
s.require_paths = [\"lib\"]
|
878
878
|
s.requirements = [\"A working computer\"]
|
879
879
|
s.rubyforge_project = %q{example}
|
880
|
-
s.rubygems_version = %q{#{LibGems::
|
880
|
+
s.rubygems_version = %q{#{LibGems::VERSION}}
|
881
881
|
s.summary = %q{this is a summary}
|
882
882
|
s.test_files = [\"test/suite.rb\"]
|
883
883
|
|
884
884
|
if s.respond_to? :specification_version then
|
885
885
|
s.specification_version = 3
|
886
886
|
|
887
|
-
if Gem::Version.new(Gem::
|
887
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
888
888
|
s.add_runtime_dependency(%q<rake>, [\"> 0.4\"])
|
889
889
|
s.add_runtime_dependency(%q<jabber4r>, [\"> 0.0.0\"])
|
890
890
|
s.add_runtime_dependency(%q<pqa>, [\"> 0.4\", \"<= 0.6\"])
|
@@ -1249,7 +1249,7 @@ end
|
|
1249
1249
|
@a1.validate
|
1250
1250
|
end
|
1251
1251
|
|
1252
|
-
assert_equal "expected RubyGems version #{LibGems::
|
1252
|
+
assert_equal "expected RubyGems version #{LibGems::VERSION}, was 3",
|
1253
1253
|
e.message
|
1254
1254
|
end
|
1255
1255
|
|
metadata
CHANGED
@@ -1,10 +1,10 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: libgems
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.4
|
4
5
|
prerelease:
|
5
|
-
version: 0.0.3
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
7
|
+
authors:
|
8
8
|
- Jim Weirich
|
9
9
|
- Chad Fowler
|
10
10
|
- Eric Hodel
|
@@ -12,107 +12,52 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
|
16
|
-
date: 2011-06-14 00:00:00 Z
|
15
|
+
date: 2011-06-16 00:00:00.000000000Z
|
17
16
|
dependencies: []
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
##
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
## What Do I Have to do Differently to Use SlimGems?
|
59
|
-
|
60
|
-
Nothing. We maintain the same install paths, APIs and overall runtime environment
|
61
|
-
that RubyGems had. The only difference is that we have no intention on changing
|
62
|
-
this environment in future upgrades. You can upgrade safely knowing that the
|
63
|
-
newer versions of SlimGems will still be compatible with all of your code.
|
64
|
-
|
65
|
-
In short, yes, "require 'libgems'" still works.
|
66
|
-
|
67
|
-
## Installing and Upgrading
|
68
|
-
|
69
|
-
If you're on RubyGems, you can easily upgrade to SlimGems by typing:
|
70
|
-
|
71
|
-
$ gem install slimgems
|
72
|
-
|
73
|
-
You can do this from SlimGems too, but if you have SlimGems already, upgrading
|
74
|
-
works better with:
|
75
|
-
|
76
|
-
$ gem update --system
|
77
|
-
|
78
|
-
If you don't have any RubyGems or SlimGems install, there is still the pre-gem
|
79
|
-
approach to getting software, doing it manually:
|
80
|
-
|
81
|
-
1. Download from: http://github.com/slimgems/slimgems
|
82
|
-
2. Unpack into a directory and cd there
|
83
|
-
3. Install with: ruby setup.rb # you may need admin/root privilege
|
84
|
-
|
85
|
-
For more details and other options, see:
|
86
|
-
|
87
|
-
ruby setup.rb --help
|
88
|
-
|
89
|
-
## Uninstalling
|
90
|
-
|
91
|
-
If SlimGems isn't for you, you can downgrade back to RubyGems by performing
|
92
|
-
the following intuitive command:
|
93
|
-
|
94
|
-
$ gem uninstall slimgems
|
95
|
-
|
96
|
-
Again, you might need to have administrator privileges (sudo) to run these
|
97
|
-
commands.
|
98
|
-
|
99
|
-
## Notes about this SlimGems Fork
|
100
|
-
|
101
|
-
SlimGems is a RubyGems fork of RubyGems 1.3.7 and a limited set of backports
|
102
|
-
from 1.5.2. SlimGems is maintained by Loren Segal and others. SlimGems will
|
103
|
-
provide continual improvements with a stable API.
|
104
|
-
|
105
|
-
You can download the original RubyGems project at
|
106
|
-
http://rubyforge.org/projects/rubygems
|
107
|
-
|
17
|
+
description: ! "# SlimGems\n\n* Website: http://slimgems.github.com/\n* Github: http://github.com/slimgems/slimgems\n*
|
18
|
+
Get gems from: http://rubygems.org\n\n## Description\n\nSlimGems is a drop-in replacement
|
19
|
+
for RubyGems, a package management framework \nfor Ruby. We forked the project at
|
20
|
+
1.3.7, which was a great stable release.\n\nSlimGems focuses on maintaining a sane
|
21
|
+
and stable API. We believe that the\nproject has been put through enough stress
|
22
|
+
testing by the community to lock\ninto the current API functionality for the forseeable
|
23
|
+
future. We will also\ncontinue to improve the runtime performance over time; we
|
24
|
+
can do this\nwithout changing the API.\n\n## Project Goals\n\n1. A fast package
|
25
|
+
manager that \"Just Works\". We will attempt to make SlimGems\n as fast as possible
|
26
|
+
and believe it can be done without breaking the existing\n API.\n \n2. A consistent
|
27
|
+
and stable API. Deprecations will not occur without ample\n warning to library
|
28
|
+
developers *before* a release. Deprecations will not \n necessarily mean removed
|
29
|
+
methods or runtime warnings, and we will consult \n with the community if widely
|
30
|
+
used APIs ever need to be removed.\n \n3. Receptive and friendly project maintainers.
|
31
|
+
We will listen to your bugs\n and suggestions without deriding you. We believe
|
32
|
+
the community deserves\n a voice in matters that affect package management tools,
|
33
|
+
and we respect \n that voice.\n\n4. Improved communication with the community
|
34
|
+
about future plans. We believe\n it's important to keep the community informed
|
35
|
+
about major changes. We will\n discuss our rationale for any changes that might
|
36
|
+
cause problems for other\n library developers.\n\n## What Do I Have to do Differently
|
37
|
+
to Use SlimGems?\n\nNothing. We maintain the same install paths, APIs and overall
|
38
|
+
runtime environment\nthat RubyGems had. The only difference is that we have no intention
|
39
|
+
on changing\nthis environment in future upgrades. You can upgrade safely knowing
|
40
|
+
that the\nnewer versions of SlimGems will still be compatible with all of your code.\n\nIn
|
41
|
+
short, yes, \"require 'libgems'\" still works.\n\n## Installing and Upgrading\n\nIf
|
42
|
+
you're on RubyGems, you can easily upgrade to SlimGems by typing:\n\n $ gem install
|
43
|
+
slimgems\n \nYou can do this from SlimGems too, but if you have SlimGems already,
|
44
|
+
upgrading\nworks better with:\n\n $ gem update --system\n\nIf you don't have
|
45
|
+
any RubyGems or SlimGems install, there is still the pre-gem \napproach to getting
|
46
|
+
software, doing it manually:\n\n1. Download from: http://github.com/slimgems/slimgems\n2.
|
47
|
+
Unpack into a directory and cd there\n3. Install with: ruby setup.rb # you may
|
48
|
+
need admin/root privilege\n\nFor more details and other options, see:\n\n ruby
|
49
|
+
setup.rb --help\n\n## Uninstalling\n\nIf SlimGems isn't for you, you can downgrade
|
50
|
+
back to RubyGems by performing\nthe following intuitive command:\n\n $ gem uninstall
|
51
|
+
slimgems\n\nAgain, you might need to have administrator privileges (sudo) to run
|
52
|
+
these\ncommands.\n\n## Notes about this SlimGems Fork\n\nSlimGems is a RubyGems
|
53
|
+
fork of RubyGems 1.3.7 and a limited set of backports\nfrom 1.5.2. SlimGems is maintained
|
54
|
+
by Loren Segal and others. SlimGems will\nprovide continual improvements with a
|
55
|
+
stable API.\n\nYou can download the original RubyGems project at \nhttp://rubyforge.org/projects/rubygems\n"
|
108
56
|
email: lsegal@soen.ca
|
109
57
|
executables: []
|
110
|
-
|
111
58
|
extensions: []
|
112
|
-
|
113
59
|
extra_rdoc_files: []
|
114
|
-
|
115
|
-
files:
|
60
|
+
files:
|
116
61
|
- lib/gauntlet_libgems.rb
|
117
62
|
- lib/libgems/builder.rb
|
118
63
|
- lib/libgems/command.rb
|
@@ -289,34 +234,29 @@ files:
|
|
289
234
|
- ChangeLog
|
290
235
|
homepage: http://rubygems.org
|
291
236
|
licenses: []
|
292
|
-
|
293
|
-
post_install_message: "Upgraded from LibGems to LibGems 0.0.3\n\
|
294
|
-
\xEF\xBB\xBF=== 1.3.8 / 2011-05-16\n\n\
|
295
|
-
SlimGems is born! SlimGems is a fork of RubyGems, see README.md for more.\n\n"
|
237
|
+
post_install_message:
|
296
238
|
rdoc_options: []
|
297
|
-
|
298
|
-
require_paths:
|
239
|
+
require_paths:
|
299
240
|
- lib
|
300
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
241
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
301
242
|
none: false
|
302
|
-
requirements:
|
303
|
-
- -
|
304
|
-
- !ruby/object:Gem::Version
|
243
|
+
requirements:
|
244
|
+
- - ! '>'
|
245
|
+
- !ruby/object:Gem::Version
|
305
246
|
version: 1.8.3
|
306
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
247
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
307
248
|
none: false
|
308
|
-
requirements:
|
309
|
-
- -
|
310
|
-
- !ruby/object:Gem::Version
|
311
|
-
version:
|
249
|
+
requirements:
|
250
|
+
- - ! '>='
|
251
|
+
- !ruby/object:Gem::Version
|
252
|
+
version: '0'
|
312
253
|
requirements: []
|
313
|
-
|
314
254
|
rubyforge_project:
|
315
255
|
rubygems_version: 1.8.5
|
316
256
|
signing_key:
|
317
257
|
specification_version: 3
|
318
258
|
summary: LibGems is a package management framework for Ruby
|
319
|
-
test_files:
|
259
|
+
test_files:
|
320
260
|
- test/bogussources.rb
|
321
261
|
- test/fake_certlib/openssl.rb
|
322
262
|
- test/foo/discover.rb
|