versionomy 0.4.0 → 0.4.1
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/History.rdoc +6 -0
- data/README.rdoc +3 -3
- data/Version +1 -0
- data/lib/versionomy/format_definitions/standard.rb +11 -11
- data/lib/versionomy/version.rb +1 -1
- data/{tests → test}/tc_custom_format.rb +1 -2
- data/{tests → test}/tc_readme_examples.rb +1 -2
- data/{tests → test}/tc_rubygems_basic.rb +1 -2
- data/{tests → test}/tc_rubygems_conversions.rb +1 -2
- data/{tests → test}/tc_semver_basic.rb +1 -2
- data/{tests → test}/tc_semver_conversions.rb +1 -2
- data/{tests → test}/tc_standard_basic.rb +1 -2
- data/{tests → test}/tc_standard_bump.rb +1 -2
- data/{tests → test}/tc_standard_change.rb +1 -2
- data/{tests → test}/tc_standard_comparison.rb +1 -2
- data/{tests → test}/tc_standard_misc.rb +1 -2
- data/{tests → test}/tc_standard_parse.rb +5 -2
- data/{tests → test}/tc_standard_reset.rb +1 -2
- data/{tests → test}/tc_version_of.rb +1 -2
- metadata +38 -58
- data/Rakefile +0 -149
data/History.rdoc
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
=== 0.4.1 / 2011-04-26
|
2
|
+
|
3
|
+
* Support underscore "_" as a delimiter.
|
4
|
+
* A .gemspec file is now available for gem building and bundler git integration.
|
5
|
+
* Some cleanup of the Rakefile and tests.
|
6
|
+
|
1
7
|
=== 0.4.0 / 2010-05-24
|
2
8
|
|
3
9
|
* Included Semantic Version (http://semver.org/) format called "semver".
|
data/README.rdoc
CHANGED
@@ -113,9 +113,9 @@ provides a schema and formatter/parser matching Gem::Version.
|
|
113
113
|
|
114
114
|
=== Requirements
|
115
115
|
|
116
|
-
* Ruby 1.8.
|
117
|
-
1.
|
118
|
-
* blockenspiel 0.
|
116
|
+
* Ruby 1.8.7 or later, Ruby 1.9.1 or later, JRuby 1.5 or later, or
|
117
|
+
Rubinius 1.0 or later.
|
118
|
+
* blockenspiel 0.4.1 or later.
|
119
119
|
|
120
120
|
=== Installation
|
121
121
|
|
data/Version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.4.1
|
@@ -295,23 +295,23 @@ module Versionomy
|
|
295
295
|
# So we just allow it to fall through to the default.
|
296
296
|
|
297
297
|
recognize_regexp_map(:style => :long, :default_delimiter => '',
|
298
|
-
:delimiter_regexp => '
|
298
|
+
:delimiter_regexp => '-|_|\.|\s?') do
|
299
299
|
map(:development, 'dev')
|
300
300
|
map(:alpha, 'alpha')
|
301
301
|
map(:beta, 'beta')
|
302
302
|
map(:preview, 'preview')
|
303
303
|
end
|
304
304
|
recognize_regexp_map(:style => :short, :default_delimiter => '',
|
305
|
-
:delimiter_regexp => '
|
305
|
+
:delimiter_regexp => '-|_|\.|\s?') do
|
306
306
|
map(:release_candidate, 'rc')
|
307
307
|
map(:preview, 'pre')
|
308
308
|
end
|
309
309
|
recognize_regexp_map(:style => :long, :default_delimiter => '',
|
310
|
-
:delimiter_regexp => '
|
310
|
+
:delimiter_regexp => '-|_|\.|\s?') do
|
311
311
|
map(:release_candidate, 'rc')
|
312
312
|
end
|
313
313
|
recognize_regexp_map(:style => :short, :default_delimiter => '',
|
314
|
-
:delimiter_regexp => '
|
314
|
+
:delimiter_regexp => '-|_|\.|\s?',
|
315
315
|
:requires_next_field => true) do
|
316
316
|
map(:development, 'd')
|
317
317
|
map(:alpha, 'a')
|
@@ -329,35 +329,35 @@ module Versionomy
|
|
329
329
|
# to 1, while parsing a string will yield 0 when the field is
|
330
330
|
# missing (e.g. we want "1.9.2dev" to mean "1.9.2dev0".)
|
331
331
|
field(:development_version, :default_value => 0) do
|
332
|
-
recognize_number(:delimiter_regexp => '
|
332
|
+
recognize_number(:delimiter_regexp => '-|_|\.|\s?', :default_delimiter => '',
|
333
333
|
:default_value_optional => true)
|
334
334
|
end
|
335
335
|
field(:development_minor) do
|
336
336
|
recognize_number(:default_value_optional => true)
|
337
337
|
end
|
338
338
|
field(:alpha_version, :default_value => 0) do
|
339
|
-
recognize_number(:delimiter_regexp => '
|
339
|
+
recognize_number(:delimiter_regexp => '-|_|\.|\s?', :default_delimiter => '',
|
340
340
|
:default_value_optional => true)
|
341
341
|
end
|
342
342
|
field(:alpha_minor) do
|
343
343
|
recognize_number(:default_value_optional => true)
|
344
344
|
end
|
345
345
|
field(:beta_version, :default_value => 0) do
|
346
|
-
recognize_number(:delimiter_regexp => '
|
346
|
+
recognize_number(:delimiter_regexp => '-|_|\.|\s?', :default_delimiter => '',
|
347
347
|
:default_value_optional => true)
|
348
348
|
end
|
349
349
|
field(:beta_minor) do
|
350
350
|
recognize_number(:default_value_optional => true)
|
351
351
|
end
|
352
352
|
field(:release_candidate_version, :default_value => 0) do
|
353
|
-
recognize_number(:delimiter_regexp => '
|
353
|
+
recognize_number(:delimiter_regexp => '-|_|\.|\s?', :default_delimiter => '',
|
354
354
|
:default_value_optional => true)
|
355
355
|
end
|
356
356
|
field(:release_candidate_minor) do
|
357
357
|
recognize_number(:default_value_optional => true)
|
358
358
|
end
|
359
359
|
field(:preview_version, :default_value => 0) do
|
360
|
-
recognize_number(:delimiter_regexp => '
|
360
|
+
recognize_number(:delimiter_regexp => '-|_|\.|\s?', :default_delimiter => '',
|
361
361
|
:default_value_optional => true)
|
362
362
|
end
|
363
363
|
field(:preview_minor) do
|
@@ -370,9 +370,9 @@ module Versionomy
|
|
370
370
|
field(:patchlevel, :requires_previous_field => false,
|
371
371
|
:default_value_optional => true, :default_style => :number) do
|
372
372
|
recognize_number(:style => :number, :default_delimiter => '-',
|
373
|
-
:delimiter_regexp => '(
|
373
|
+
:delimiter_regexp => '(-|_|\.|\s?)(p|u)|-|_')
|
374
374
|
recognize_letter(:style => :letter, :default_delimiter => '',
|
375
|
-
:delimiter_regexp => '
|
375
|
+
:delimiter_regexp => '-|_|\.|\s?',
|
376
376
|
:expected_follower_regexp => '\z')
|
377
377
|
end
|
378
378
|
field(:patchlevel_minor) do
|
data/lib/versionomy/version.rb
CHANGED
@@ -37,7 +37,7 @@
|
|
37
37
|
module Versionomy
|
38
38
|
|
39
39
|
# Current gem version, as a frozen string.
|
40
|
-
VERSION_STRING =
|
40
|
+
VERSION_STRING = ::File.read(::File.dirname(__FILE__)+'/../../Version').strip.freeze
|
41
41
|
|
42
42
|
# Current gem version, as a Versionomy::Value.
|
43
43
|
VERSION = ::Versionomy.parse(VERSION_STRING, :standard)
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -200,6 +199,7 @@ module Versionomy
|
|
200
199
|
def test_parsing_beta_alternates
|
201
200
|
assert_equal(::Versionomy.parse('2.52.1 beta4'), '2.52.1b4')
|
202
201
|
assert_equal(::Versionomy.parse('2.52.1-b4'), '2.52.1b4')
|
202
|
+
assert_equal(::Versionomy.parse('2.52.1_b4'), '2.52.1b4')
|
203
203
|
assert_equal(::Versionomy.parse('2.52.1.b4'), '2.52.1b4')
|
204
204
|
assert_equal(::Versionomy.parse('2.52.1B4'), '2.52.1b4')
|
205
205
|
assert_equal(::Versionomy.parse('2.52.1BETA4'), '2.52.1b4')
|
@@ -302,10 +302,13 @@ module Versionomy
|
|
302
302
|
def test_patchlevel_separators
|
303
303
|
expected_ = [1,9,1,0,:final,243,0]
|
304
304
|
assert_equal(expected_, ::Versionomy.parse('1.9.1-p243').values_array)
|
305
|
+
assert_equal(expected_, ::Versionomy.parse('1.9.1_p243').values_array)
|
306
|
+
assert_equal(expected_, ::Versionomy.parse('1.9.1_u243').values_array)
|
305
307
|
assert_equal(expected_, ::Versionomy.parse('1.9.1p243').values_array)
|
306
308
|
assert_equal(expected_, ::Versionomy.parse('1.9.1.p243').values_array)
|
307
309
|
assert_equal(expected_, ::Versionomy.parse('1.9.1 p243').values_array)
|
308
310
|
assert_equal(expected_, ::Versionomy.parse('1.9.1-243').values_array)
|
311
|
+
assert_equal(expected_, ::Versionomy.parse('1.9.1_243').values_array)
|
309
312
|
end
|
310
313
|
|
311
314
|
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
@@ -35,9 +35,8 @@
|
|
35
35
|
# -----------------------------------------------------------------------------
|
36
36
|
|
37
37
|
|
38
|
-
require 'rubygems'
|
39
38
|
require 'test/unit'
|
40
|
-
require
|
39
|
+
require 'versionomy'
|
41
40
|
|
42
41
|
|
43
42
|
module Versionomy
|
metadata
CHANGED
@@ -1,13 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: versionomy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 4
|
9
|
-
- 0
|
10
|
-
version: 0.4.0
|
4
|
+
prerelease:
|
5
|
+
version: 0.4.1
|
11
6
|
platform: ruby
|
12
7
|
authors:
|
13
8
|
- Daniel Azuma
|
@@ -15,8 +10,7 @@ autorequire:
|
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
12
|
|
18
|
-
date:
|
19
|
-
default_executable:
|
13
|
+
date: 2011-04-26 00:00:00 Z
|
20
14
|
dependencies:
|
21
15
|
- !ruby/object:Gem::Dependency
|
22
16
|
name: blockenspiel
|
@@ -26,12 +20,7 @@ dependencies:
|
|
26
20
|
requirements:
|
27
21
|
- - ">="
|
28
22
|
- !ruby/object:Gem::Version
|
29
|
-
|
30
|
-
segments:
|
31
|
-
- 0
|
32
|
-
- 3
|
33
|
-
- 1
|
34
|
-
version: 0.3.1
|
23
|
+
version: 0.4.1
|
35
24
|
type: :runtime
|
36
25
|
version_requirements: *id001
|
37
26
|
description: Versionomy is a generalized version number library. It provides tools to represent, manipulate, parse, and compare version numbers in the wide variety of versioning schemes in use.
|
@@ -41,9 +30,9 @@ executables: []
|
|
41
30
|
extensions: []
|
42
31
|
|
43
32
|
extra_rdoc_files:
|
33
|
+
- History.rdoc
|
44
34
|
- README.rdoc
|
45
35
|
- Versionomy.rdoc
|
46
|
-
- History.rdoc
|
47
36
|
files:
|
48
37
|
- lib/versionomy/conversion/base.rb
|
49
38
|
- lib/versionomy/conversion/parsing.rb
|
@@ -62,25 +51,24 @@ files:
|
|
62
51
|
- lib/versionomy/value.rb
|
63
52
|
- lib/versionomy/version.rb
|
64
53
|
- lib/versionomy.rb
|
65
|
-
-
|
66
|
-
-
|
67
|
-
-
|
68
|
-
-
|
69
|
-
-
|
70
|
-
-
|
71
|
-
-
|
72
|
-
-
|
73
|
-
-
|
74
|
-
-
|
75
|
-
-
|
76
|
-
-
|
77
|
-
-
|
78
|
-
-
|
54
|
+
- test/tc_custom_format.rb
|
55
|
+
- test/tc_readme_examples.rb
|
56
|
+
- test/tc_rubygems_basic.rb
|
57
|
+
- test/tc_rubygems_conversions.rb
|
58
|
+
- test/tc_semver_basic.rb
|
59
|
+
- test/tc_semver_conversions.rb
|
60
|
+
- test/tc_standard_basic.rb
|
61
|
+
- test/tc_standard_bump.rb
|
62
|
+
- test/tc_standard_change.rb
|
63
|
+
- test/tc_standard_comparison.rb
|
64
|
+
- test/tc_standard_misc.rb
|
65
|
+
- test/tc_standard_parse.rb
|
66
|
+
- test/tc_standard_reset.rb
|
67
|
+
- test/tc_version_of.rb
|
79
68
|
- History.rdoc
|
80
69
|
- README.rdoc
|
81
70
|
- Versionomy.rdoc
|
82
|
-
-
|
83
|
-
has_rdoc: true
|
71
|
+
- Version
|
84
72
|
homepage: http://virtuoso.rubyforge.org/versionomy
|
85
73
|
licenses: []
|
86
74
|
|
@@ -94,40 +82,32 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
94
82
|
requirements:
|
95
83
|
- - ">="
|
96
84
|
- !ruby/object:Gem::Version
|
97
|
-
|
98
|
-
segments:
|
99
|
-
- 1
|
100
|
-
- 8
|
101
|
-
- 6
|
102
|
-
version: 1.8.6
|
85
|
+
version: 1.8.7
|
103
86
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
104
87
|
none: false
|
105
88
|
requirements:
|
106
|
-
- - "
|
89
|
+
- - ">"
|
107
90
|
- !ruby/object:Gem::Version
|
108
|
-
|
109
|
-
segments:
|
110
|
-
- 0
|
111
|
-
version: "0"
|
91
|
+
version: 1.3.1
|
112
92
|
requirements: []
|
113
93
|
|
114
94
|
rubyforge_project: virtuoso
|
115
|
-
rubygems_version: 1.
|
95
|
+
rubygems_version: 1.7.2
|
116
96
|
signing_key:
|
117
97
|
specification_version: 3
|
118
98
|
summary: Versionomy is a generalized version number library.
|
119
99
|
test_files:
|
120
|
-
-
|
121
|
-
-
|
122
|
-
-
|
123
|
-
-
|
124
|
-
-
|
125
|
-
-
|
126
|
-
-
|
127
|
-
-
|
128
|
-
-
|
129
|
-
-
|
130
|
-
-
|
131
|
-
-
|
132
|
-
-
|
133
|
-
-
|
100
|
+
- test/tc_custom_format.rb
|
101
|
+
- test/tc_readme_examples.rb
|
102
|
+
- test/tc_rubygems_basic.rb
|
103
|
+
- test/tc_rubygems_conversions.rb
|
104
|
+
- test/tc_semver_basic.rb
|
105
|
+
- test/tc_semver_conversions.rb
|
106
|
+
- test/tc_standard_basic.rb
|
107
|
+
- test/tc_standard_bump.rb
|
108
|
+
- test/tc_standard_change.rb
|
109
|
+
- test/tc_standard_comparison.rb
|
110
|
+
- test/tc_standard_misc.rb
|
111
|
+
- test/tc_standard_parse.rb
|
112
|
+
- test/tc_standard_reset.rb
|
113
|
+
- test/tc_version_of.rb
|
data/Rakefile
DELETED
@@ -1,149 +0,0 @@
|
|
1
|
-
# -----------------------------------------------------------------------------
|
2
|
-
#
|
3
|
-
# Versionomy Rakefile
|
4
|
-
#
|
5
|
-
# -----------------------------------------------------------------------------
|
6
|
-
# Copyright 2008-2009 Daniel Azuma
|
7
|
-
#
|
8
|
-
# All rights reserved.
|
9
|
-
#
|
10
|
-
# Redistribution and use in source and binary forms, with or without
|
11
|
-
# modification, are permitted provided that the following conditions are met:
|
12
|
-
#
|
13
|
-
# * Redistributions of source code must retain the above copyright notice,
|
14
|
-
# this list of conditions and the following disclaimer.
|
15
|
-
# * Redistributions in binary form must reproduce the above copyright notice,
|
16
|
-
# this list of conditions and the following disclaimer in the documentation
|
17
|
-
# and/or other materials provided with the distribution.
|
18
|
-
# * Neither the name of the copyright holder, nor the names of any other
|
19
|
-
# contributors to this software, may be used to endorse or promote products
|
20
|
-
# derived from this software without specific prior written permission.
|
21
|
-
#
|
22
|
-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
23
|
-
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
24
|
-
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
25
|
-
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
26
|
-
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
27
|
-
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
28
|
-
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
29
|
-
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
30
|
-
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
31
|
-
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
32
|
-
# POSSIBILITY OF SUCH DAMAGE.
|
33
|
-
# -----------------------------------------------------------------------------
|
34
|
-
|
35
|
-
|
36
|
-
require 'rubygems'
|
37
|
-
require 'rake'
|
38
|
-
require 'rake/clean'
|
39
|
-
require 'rake/gempackagetask'
|
40
|
-
require 'rake/testtask'
|
41
|
-
require 'rake/rdoctask'
|
42
|
-
require 'rdoc'
|
43
|
-
require 'rdoc/rdoc'
|
44
|
-
require 'rdoc/generator/darkfish'
|
45
|
-
|
46
|
-
require ::File.expand_path('lib/versionomy.rb', ::File.dirname(__FILE__))
|
47
|
-
|
48
|
-
|
49
|
-
# Configuration
|
50
|
-
extra_rdoc_files_ = ['README.rdoc', 'Versionomy.rdoc', 'History.rdoc']
|
51
|
-
|
52
|
-
|
53
|
-
# Default task
|
54
|
-
task :default => [:clean, :rdoc, :package, :test]
|
55
|
-
|
56
|
-
|
57
|
-
# Clean task
|
58
|
-
CLEAN.include(['doc', 'pkg'])
|
59
|
-
|
60
|
-
|
61
|
-
# Test task
|
62
|
-
::Rake::TestTask.new('test') do |task_|
|
63
|
-
task_.pattern = 'tests/tc_*.rb'
|
64
|
-
end
|
65
|
-
|
66
|
-
|
67
|
-
# RDoc task
|
68
|
-
::Rake::RDocTask.new do |task_|
|
69
|
-
task_.main = 'README.rdoc'
|
70
|
-
task_.rdoc_files.include(*extra_rdoc_files_)
|
71
|
-
task_.rdoc_files.include('lib/versionomy/**/*.rb')
|
72
|
-
task_.rdoc_dir = 'doc'
|
73
|
-
task_.title = "Versionomy #{::Versionomy::VERSION_STRING} documentation"
|
74
|
-
task_.options << '-f' << 'darkfish'
|
75
|
-
end
|
76
|
-
|
77
|
-
|
78
|
-
# Gem task
|
79
|
-
gemspec_ = ::Gem::Specification.new do |s_|
|
80
|
-
s_.name = 'versionomy'
|
81
|
-
s_.summary = 'Versionomy is a generalized version number library.'
|
82
|
-
s_.version = ::Versionomy::VERSION_STRING.dup
|
83
|
-
s_.author = 'Daniel Azuma'
|
84
|
-
s_.email = 'dazuma@gmail.com'
|
85
|
-
s_.description = 'Versionomy is a generalized version number library. It provides tools to represent, manipulate, parse, and compare version numbers in the wide variety of versioning schemes in use.'
|
86
|
-
s_.homepage = 'http://virtuoso.rubyforge.org/versionomy'
|
87
|
-
s_.rubyforge_project = 'virtuoso'
|
88
|
-
s_.required_ruby_version = '>= 1.8.6'
|
89
|
-
s_.files = ::FileList['lib/**/*.rb', 'tests/**/*.rb', '*.rdoc', 'Rakefile'].to_a
|
90
|
-
s_.extra_rdoc_files = extra_rdoc_files_
|
91
|
-
s_.has_rdoc = true
|
92
|
-
s_.test_files = ::FileList['tests/tc_*.rb']
|
93
|
-
s_.platform = ::Gem::Platform::RUBY
|
94
|
-
s_.add_dependency('blockenspiel', '>= 0.3.1')
|
95
|
-
end
|
96
|
-
::Rake::GemPackageTask.new(gemspec_) do |task_|
|
97
|
-
task_.need_zip = false
|
98
|
-
task_.need_tar = true
|
99
|
-
end
|
100
|
-
|
101
|
-
|
102
|
-
# Publish RDocs
|
103
|
-
desc 'Publishes RDocs to RubyForge'
|
104
|
-
task :publish_rdoc_to_rubyforge => [:rerdoc] do
|
105
|
-
config_ = ::YAML.load(::File.read(::File.expand_path("~/.rubyforge/user-config.yml")))
|
106
|
-
username_ = config_['username']
|
107
|
-
sh "rsync -av --delete doc/ #{username_}@rubyforge.org:/var/www/gforge-projects/virtuoso/versionomy"
|
108
|
-
end
|
109
|
-
|
110
|
-
|
111
|
-
# Publish gem
|
112
|
-
task :release_gem_to_rubyforge => [:package] do |t_|
|
113
|
-
v_ = ::ENV["VERSION"]
|
114
|
-
abort "Must supply VERSION=x.y.z" unless v_
|
115
|
-
if v_ != ::Versionomy::VERSION_STRING
|
116
|
-
abort "Versions don't match: #{v_} vs #{::Versionomy::VERSION_STRING}"
|
117
|
-
end
|
118
|
-
gem_pkg_ = "pkg/versionomy-#{v_}.gem"
|
119
|
-
tgz_pkg_ = "pkg/versionomy-#{v_}.tgz"
|
120
|
-
release_notes_ = ::File.read("README.rdoc").split(/^(==.*)/)[2].strip
|
121
|
-
release_changes_ = ::File.read("History.rdoc").split(/^(===.*)/)[1..2].join.strip
|
122
|
-
|
123
|
-
require 'rubyforge'
|
124
|
-
rf_ = ::RubyForge.new.configure
|
125
|
-
puts "Logging in to RubyForge"
|
126
|
-
rf_.login
|
127
|
-
config_ = rf_.userconfig
|
128
|
-
config_["release_notes"] = release_notes_
|
129
|
-
config_["release_changes"] = release_changes_
|
130
|
-
config_["preformatted"] = true
|
131
|
-
puts "Releasing versionomy #{v_} to RubyForge"
|
132
|
-
rf_.add_release('virtuoso', 'versionomy', v_, gem_pkg_, tgz_pkg_)
|
133
|
-
end
|
134
|
-
|
135
|
-
|
136
|
-
# Publish gem
|
137
|
-
task :release_gem_to_gemcutter => [:package] do |t_|
|
138
|
-
v_ = ::ENV["VERSION"]
|
139
|
-
abort "Must supply VERSION=x.y.z" unless v_
|
140
|
-
if v_ != ::Versionomy::VERSION_STRING
|
141
|
-
abort "Versions don't match: #{v_} vs #{::Versionomy::VERSION_STRING}"
|
142
|
-
end
|
143
|
-
puts "Releasing versionomy #{v_} to GemCutter"
|
144
|
-
`cd pkg && gem push versionomy-#{v_}.gem`
|
145
|
-
end
|
146
|
-
|
147
|
-
|
148
|
-
# Publish everything
|
149
|
-
task :release => [:release_gem_to_gemcutter, :release_gem_to_rubyforge, :publish_rdoc_to_rubyforge]
|