alloy-microgem 0.1.1 → 0.2.0
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/README.rdoc +30 -1
- data/bin/ugem +14 -0
- data/bin//302/265gem +1 -12
- data/lib/microgem/options_parser.rb +7 -4
- metadata +5 -3
data/README.rdoc
CHANGED
@@ -1,9 +1,34 @@
|
|
1
1
|
== MicroGem
|
2
|
+
|
2
3
|
The aim of this project is, at first, to create a re-implementation of the
|
3
4
|
RubyGems +install+ command, which should be easier to get up and running on
|
4
5
|
Ruby implementations such as MacRuby.
|
5
6
|
|
6
|
-
|
7
|
+
=== What's up with the ‘illegal character’ ?
|
8
|
+
|
9
|
+
If a character is not in the ASCII table, it doesn’t make it illegal or however
|
10
|
+
people are calling them nowadays. That’s problem it was trying to draw
|
11
|
+
attention to. I see people normalizing these types of characters in places
|
12
|
+
where unicode is very very valid. Just because it looks like a `u' does _not_
|
13
|
+
make it one…
|
14
|
+
|
15
|
+
But after multiple request it was decided to add an executable without a
|
16
|
+
multibyte character; ugem.
|
17
|
+
|
18
|
+
If you are hardcore, you can get the `µ' character on OS X with: ⌥ + M (that’s the ALT key…)
|
19
|
+
|
20
|
+
==== Tell me more, more!
|
21
|
+
|
22
|
+
Mu (uppercase Μ, lowercase μ; Greek: Μι or Μυ [mi]) is the 12th letter of the
|
23
|
+
Greek alphabet. In Unicode, the upper and lower case mu are encoded at U+039C
|
24
|
+
and U+03BC respectively. In ISO 8859-7 they are encoded at CCHEX and ECHEX.
|
25
|
+
The micro sign or micron is considered a distinct character from the Greek
|
26
|
+
alphabet letter by Unicode for historical reasons (although it is a homoglyph)
|
27
|
+
|
28
|
+
Because µ is the abbreviation for the Metric System prefix micro-, the symbol
|
29
|
+
is used in many word plays about the field of micro-computing.
|
30
|
+
|
31
|
+
So to recap, it’s ‘micro’ in MicroGem, got it?
|
7
32
|
|
8
33
|
=== Installation
|
9
34
|
|
@@ -21,6 +46,7 @@ Install the remote gem:
|
|
21
46
|
$ sudo env PRODUCTION=true macruby ./bin/µgem install alloy-microgem --simple --debug
|
22
47
|
|
23
48
|
=== µgem banner
|
49
|
+
|
24
50
|
Microgem is an unsophisticated package manager for Ruby.
|
25
51
|
And the first commandline utility to start with a multibyte character; µ
|
26
52
|
|
@@ -55,14 +81,17 @@ Note that unless you set the PRODUCTION environment variable everything is insta
|
|
55
81
|
The current default sources are rubyforge and github.
|
56
82
|
|
57
83
|
=== Limitations
|
84
|
+
|
58
85
|
There are a lot of limitations currently compared to RubyGems. The most important ones are:
|
59
86
|
* Does not install C extensions yet.
|
60
87
|
|
61
88
|
=== Development
|
89
|
+
|
62
90
|
The way it's being developed is in a test and RubyGems data driven manner.
|
63
91
|
We are using the `quick' marshalled specs, so we use those fixtures to run the tests.
|
64
92
|
|
65
93
|
=== Goals
|
94
|
+
|
66
95
|
* Install gems.
|
67
96
|
* Small.
|
68
97
|
* Test driven.
|
data/bin/ugem
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
if defined?(Gem::Specification)
|
4
|
+
# Hack to make sure we don't run with RubyGems loaded.
|
5
|
+
ENV['PRODUCTION'] = 'true'
|
6
|
+
exec "#{File.expand_path(__FILE__)} #{ARGV.join(' ')}"
|
7
|
+
|
8
|
+
else
|
9
|
+
# Run the normal operations.
|
10
|
+
$:.unshift File.expand_path('../../lib', __FILE__)
|
11
|
+
require 'microgem'
|
12
|
+
|
13
|
+
Gem::Micro.run(ARGV)
|
14
|
+
end
|
data/bin//302/265gem
CHANGED
@@ -1,14 +1,3 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
-
|
4
|
-
# Hack to make sure we don't run with RubyGems loaded.
|
5
|
-
ENV['PRODUCTION'] = 'true'
|
6
|
-
exec "#{File.expand_path(__FILE__)} #{ARGV.join(' ')}"
|
7
|
-
|
8
|
-
else
|
9
|
-
# Run the normal operations.
|
10
|
-
$:.unshift File.expand_path('../../lib', __FILE__)
|
11
|
-
require 'microgem'
|
12
|
-
|
13
|
-
Gem::Micro.run(ARGV)
|
14
|
-
end
|
3
|
+
load File.expand_path('../ugem', __FILE__)
|
@@ -3,6 +3,8 @@ require 'optparse'
|
|
3
3
|
module Gem
|
4
4
|
module Micro
|
5
5
|
class OptionsParser
|
6
|
+
EXECUTABLE = File.basename($0)
|
7
|
+
|
6
8
|
attr_accessor :command, :arguments, :options
|
7
9
|
|
8
10
|
def initialize
|
@@ -13,14 +15,15 @@ module Gem
|
|
13
15
|
@parser ||= OptionParser.new do |opts|
|
14
16
|
opts.banner = "Microgem is an unsophisticated package manager for Ruby."
|
15
17
|
opts.separator "And the first commandline utility to start with a multibyte character; µ"
|
18
|
+
opts.separator "Although you apperantly don’t appreciate unicode enough, how lame… ;-)" if EXECUTABLE != 'µgem'
|
16
19
|
opts.separator ""
|
17
20
|
opts.separator " Usage:"
|
18
|
-
opts.separator "
|
21
|
+
opts.separator " #{EXECUTABLE} [command] [arguments…] [options…]"
|
19
22
|
opts.separator ""
|
20
23
|
opts.separator " Example:"
|
21
|
-
opts.separator "
|
22
|
-
opts.separator "
|
23
|
-
opts.separator "
|
24
|
+
opts.separator " #{EXECUTABLE} install rake"
|
25
|
+
opts.separator " #{EXECUTABLE} install rails --force"
|
26
|
+
opts.separator " #{EXECUTABLE} cache update --debug"
|
24
27
|
opts.separator ""
|
25
28
|
opts.separator " Options:"
|
26
29
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: alloy-microgem
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eloy Duran
|
@@ -13,10 +13,11 @@ date: 2009-02-05 00:00:00 -08:00
|
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|
16
|
-
description: "MicroGem provides a simple naive replacement for the `gem install' command in the form of the `\xC2\xB5gem' commandline utility."
|
16
|
+
description: "MicroGem provides a simple naive replacement for the `gem install' command in the form of the `\xC2\xB5gem' or `mgem' commandline utility."
|
17
17
|
email: eloy.de.enige@gmail.com
|
18
18
|
executables:
|
19
19
|
- "\xC2\xB5gem"
|
20
|
+
- ugem
|
20
21
|
extensions: []
|
21
22
|
|
22
23
|
extra_rdoc_files:
|
@@ -40,6 +41,7 @@ files:
|
|
40
41
|
- lib/microgem/version.rb
|
41
42
|
- lib/microgem/unpacker.rb
|
42
43
|
- lib/microgem/utils.rb
|
44
|
+
- bin/ugem
|
43
45
|
- bin/zinflate
|
44
46
|
- "bin/\xC2\xB5gem"
|
45
47
|
- TODO
|
@@ -109,6 +111,6 @@ rubyforge_project:
|
|
109
111
|
rubygems_version: 1.2.0
|
110
112
|
signing_key:
|
111
113
|
specification_version: 2
|
112
|
-
summary: "MicroGem provides a simple naive replacement for the `gem install' command in the form of the `\xC2\xB5gem' commandline utility."
|
114
|
+
summary: "MicroGem provides a simple naive replacement for the `gem install' command in the form of the `\xC2\xB5gem' or `mgem' commandline utility."
|
113
115
|
test_files: []
|
114
116
|
|