libgems 0.1.0 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/libgems.rb +9 -2
- data/lib/libgems/requirement.rb +20 -6
- metadata +8 -44
data/lib/libgems.rb
CHANGED
@@ -99,7 +99,7 @@ module LibGems
|
|
99
99
|
NAME = 'LibGems'
|
100
100
|
GEM_NAME = 'libgems'
|
101
101
|
VERSION = '1.3.9.2'
|
102
|
-
LIBGEMS_VERSION = '0.1.
|
102
|
+
LIBGEMS_VERSION = '0.1.2'
|
103
103
|
|
104
104
|
##
|
105
105
|
# Raised when SlimGems is unable to load or activate a gem. Contains the
|
@@ -662,11 +662,18 @@ module LibGems
|
|
662
662
|
# Loads YAML, preferring Psych
|
663
663
|
|
664
664
|
def self.load_yaml
|
665
|
+
using_psych = false
|
665
666
|
begin
|
666
|
-
|
667
|
+
unless ENV['TEST_SYCK']
|
668
|
+
require 'psych'
|
669
|
+
using_psych = true
|
670
|
+
end
|
667
671
|
rescue ::LoadError
|
668
672
|
ensure
|
669
673
|
require 'yaml'
|
674
|
+
if defined?(YAML::ENGINE)
|
675
|
+
YAML::ENGINE.yamler = using_psych ? 'psych' : 'syck'
|
676
|
+
end
|
670
677
|
end
|
671
678
|
|
672
679
|
# Hack to handle syck's DefaultKey bug with psych.
|
data/lib/libgems/requirement.rb
CHANGED
@@ -94,12 +94,6 @@ class LibGems::Requirement
|
|
94
94
|
[$1 || "=", LibGems::Version.new($2)]
|
95
95
|
end
|
96
96
|
|
97
|
-
##
|
98
|
-
# An array of requirement pairs. The first element of the pair is
|
99
|
-
# the op, and the second is the LibGems::Version.
|
100
|
-
|
101
|
-
attr_reader :requirements #:nodoc:
|
102
|
-
|
103
97
|
##
|
104
98
|
# Constructs a requirement from +requirements+. Requirements can be
|
105
99
|
# Strings, LibGems::Versions, or Arrays of those. +nil+ and duplicate
|
@@ -116,6 +110,26 @@ class LibGems::Requirement
|
|
116
110
|
@requirements = requirements.map! { |r| self.class.parse r }
|
117
111
|
end
|
118
112
|
|
113
|
+
##
|
114
|
+
# An array of requirement pairs. The first element of the pair is
|
115
|
+
# the op, and the second is the LibGems::Version.
|
116
|
+
|
117
|
+
def requirements
|
118
|
+
# This is an ugly hack to work around issues with Syck.
|
119
|
+
# There are fixes in other places but since we sometimes
|
120
|
+
# load from YAML, which bypasses any initialization and
|
121
|
+
# other callbacks, this seems the most reliable place to
|
122
|
+
# fix things.
|
123
|
+
if !defined?(YAML::ENGINE) || YAML::ENGINE.syck?
|
124
|
+
@requirements.each do |r|
|
125
|
+
if r[0].kind_of?(Syck::DefaultKey)
|
126
|
+
r[0] = '='
|
127
|
+
end
|
128
|
+
end
|
129
|
+
end
|
130
|
+
@requirements
|
131
|
+
end
|
132
|
+
|
119
133
|
def none?
|
120
134
|
@none ||= (to_s == ">= 0")
|
121
135
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: libgems
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,51 +9,15 @@ authors:
|
|
9
9
|
- Chad Fowler
|
10
10
|
- Eric Hodel
|
11
11
|
- Loren Segal
|
12
|
+
- Peter Wagenet
|
12
13
|
autorequire:
|
13
14
|
bindir: bin
|
14
15
|
cert_chain: []
|
15
|
-
date: 2011-08-
|
16
|
+
date: 2011-08-15 00:00:00.000000000Z
|
16
17
|
dependencies: []
|
17
|
-
description:
|
18
|
-
|
19
|
-
|
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"
|
56
|
-
email: lsegal@soen.ca
|
18
|
+
description: LibGems is essentially a clone of RubyGems but with a unique namespace
|
19
|
+
to run side-by-side with it.
|
20
|
+
email: peterw@strobecorp.com
|
57
21
|
executables: []
|
58
22
|
extensions: []
|
59
23
|
extra_rdoc_files: []
|
@@ -232,7 +196,7 @@ files:
|
|
232
196
|
- README.md
|
233
197
|
- Rakefile
|
234
198
|
- ChangeLog
|
235
|
-
homepage: http://
|
199
|
+
homepage: http://github.com/strobecorp/libgems
|
236
200
|
licenses: []
|
237
201
|
post_install_message:
|
238
202
|
rdoc_options: []
|
@@ -243,7 +207,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
243
207
|
requirements:
|
244
208
|
- - ! '>'
|
245
209
|
- !ruby/object:Gem::Version
|
246
|
-
version: 1.
|
210
|
+
version: 1.9.2
|
247
211
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
248
212
|
none: false
|
249
213
|
requirements:
|