changelog 0.5 → 0.6
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/CHANGELOG +3 -0
- data/README.textile +8 -0
- data/changelog.gemspec +1 -1
- data/lib/changelog.rb +6 -0
- data/lib/ordered_hash_1.8.rb +49 -0
- metadata +6 -2
data/CHANGELOG
CHANGED
data/README.textile
CHANGED
@@ -9,6 +9,14 @@ changelog = CHANGELOG.new("/path/to/my/changelog")
|
|
9
9
|
puts "Changes in the last version #{changelog.last_version_name}: \n- #{changelog.last_version_changes.join("\n- ")}"
|
10
10
|
</pre>
|
11
11
|
|
12
|
+
h1. JRuby
|
13
|
+
|
14
|
+
CHANGELOG _does_ work with JRuby, you just have to use the @--1.9@ switch:
|
15
|
+
|
16
|
+
<pre>
|
17
|
+
jruby --1.9 -S gem install changelog
|
18
|
+
</pre>
|
19
|
+
|
12
20
|
h1. Links
|
13
21
|
|
14
22
|
* "RDoc.info API Docs":http://rdoc.info/projects/botanicus/changelog
|
data/changelog.gemspec
CHANGED
@@ -8,7 +8,7 @@ require "base64"
|
|
8
8
|
|
9
9
|
Gem::Specification.new do |s|
|
10
10
|
s.name = "changelog"
|
11
|
-
s.version = "0.
|
11
|
+
s.version = "0.6"
|
12
12
|
s.authors = ["Jakub Šťastný aka Botanicus"]
|
13
13
|
s.homepage = "http://github.com/botanicus/changelog"
|
14
14
|
s.summary = "Simple CHANGELOG parser for Ruby 1.9"
|
data/lib/changelog.rb
CHANGED
@@ -0,0 +1,49 @@
|
|
1
|
+
# This is a hack from http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/20551
|
2
|
+
# But seriously folks, just for fuck sake upgrade your damn Ruby finally :/
|
3
|
+
# I shall drop 1.8 support at some point, not very soon, but it's a matter of months,
|
4
|
+
# not years, OK?
|
5
|
+
class OrderedHash < Hash
|
6
|
+
alias_method :store, :[]=
|
7
|
+
alias_method :each_pair, :each
|
8
|
+
|
9
|
+
attr_reader :keys
|
10
|
+
def initialize
|
11
|
+
@keys = []
|
12
|
+
end
|
13
|
+
|
14
|
+
def []=(key, val)
|
15
|
+
@keys << key
|
16
|
+
super
|
17
|
+
end
|
18
|
+
|
19
|
+
def delete(key)
|
20
|
+
@keys.delete(key)
|
21
|
+
super
|
22
|
+
end
|
23
|
+
|
24
|
+
def each
|
25
|
+
@keys.each { |k| yield k, self[k] }
|
26
|
+
end
|
27
|
+
|
28
|
+
def each_key
|
29
|
+
@keys.each { |k| yield k }
|
30
|
+
end
|
31
|
+
|
32
|
+
def each_value
|
33
|
+
@keys.each { |k| yield self[k] }
|
34
|
+
end
|
35
|
+
|
36
|
+
def merge(hash)
|
37
|
+
@keys.push(*hash.keys)
|
38
|
+
super(hash)
|
39
|
+
end
|
40
|
+
|
41
|
+
def select(&block)
|
42
|
+
self.inject(self.class.new) do |buffer, pair|
|
43
|
+
if block.call(*pair)
|
44
|
+
buffer.merge(pair[0] => pair[1])
|
45
|
+
end
|
46
|
+
buffer
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
metadata
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: changelog
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: 7
|
4
5
|
prerelease: false
|
5
6
|
segments:
|
6
7
|
- 0
|
7
|
-
-
|
8
|
-
version: "0.
|
8
|
+
- 6
|
9
|
+
version: "0.6"
|
9
10
|
platform: ruby
|
10
11
|
authors:
|
11
12
|
- "Jakub \xC5\xA0\xC5\xA5astn\xC3\xBD aka Botanicus"
|
@@ -32,6 +33,7 @@ files:
|
|
32
33
|
- README.textile
|
33
34
|
- changelog.gemspec
|
34
35
|
- lib/changelog.rb
|
36
|
+
- lib/ordered_hash_1.8.rb
|
35
37
|
- spec/changelog_spec.rb
|
36
38
|
- spec/data.txt
|
37
39
|
has_rdoc: true
|
@@ -48,6 +50,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
48
50
|
requirements:
|
49
51
|
- - ~>
|
50
52
|
- !ruby/object:Gem::Version
|
53
|
+
hash: 29
|
51
54
|
segments:
|
52
55
|
- 1
|
53
56
|
- 9
|
@@ -57,6 +60,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
57
60
|
requirements:
|
58
61
|
- - ">="
|
59
62
|
- !ruby/object:Gem::Version
|
63
|
+
hash: 3
|
60
64
|
segments:
|
61
65
|
- 0
|
62
66
|
version: "0"
|