libgems 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- 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
|