versionomy 0.2.3 → 0.2.4

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 CHANGED
@@ -1,3 +1,7 @@
1
+ === 0.2.4 / 2009-11-19
2
+
3
+ * Fixed a regression introduced in 0.2.2 where "1.0a" was being recognized as an alpha version rather than a patchlevel of 1, and similar for "1.0b" and "1.0d".
4
+
1
5
  === 0.2.3 / 2009-11-19
2
6
 
3
7
  * Recognize "_" and "u" as patchlevel delimiters, to support Sun's Java version numbers (e.g. "1.6.0_17", "6u17").
@@ -158,7 +158,6 @@ module Versionomy
158
158
  if parse_data_
159
159
  parse_state_[:previous_field_missing] = false
160
160
  if recognizer_.requires_next_field
161
- parse_state_[:next_field_required] = true
162
161
  parse_state_ = {
163
162
  :backtrack => parse_state_,
164
163
  :string => parse_state_[:string],
@@ -167,6 +166,7 @@ module Versionomy
167
166
  :field => parse_state_[:field],
168
167
  :recognizer_index => 0,
169
168
  :previous_field_missing => false,
169
+ :next_field_required => true,
170
170
  }
171
171
  else
172
172
  parse_state_[:next_field_required] = false
@@ -37,7 +37,7 @@
37
37
  module Versionomy
38
38
 
39
39
  # Current gem version, as a frozen string.
40
- VERSION_STRING = '0.2.3'.freeze
40
+ VERSION_STRING = '0.2.4'.freeze
41
41
 
42
42
  # Current gem version, as a Versionomy::Value.
43
43
  VERSION = ::Versionomy.parse(VERSION_STRING, :standard)
@@ -270,6 +270,32 @@ module Versionomy
270
270
  end
271
271
 
272
272
 
273
+ # Test alphabetic patchlevels.
274
+ # In particular, make sure the parser can distinguish between these
275
+ # and the markers for prereleases.
276
+
277
+ def test_patchlevel_alphabetic
278
+ value_ = ::Versionomy.parse('1.9a')
279
+ assert_equal([1, 9, 0, 0, :final, 1, 0], value_.values_array)
280
+ assert_equal('1.9a', value_.to_s)
281
+ value_ = ::Versionomy.parse('1.9b')
282
+ assert_equal([1, 9, 0, 0, :final, 2, 0], value_.values_array)
283
+ assert_equal('1.9b', value_.to_s)
284
+ value_ = ::Versionomy.parse('1.9d')
285
+ assert_equal([1, 9, 0, 0, :final, 4, 0], value_.values_array)
286
+ assert_equal('1.9d', value_.to_s)
287
+ value_ = ::Versionomy.parse('1.9p')
288
+ assert_equal([1, 9, 0, 0, :final, 16, 0], value_.values_array)
289
+ assert_equal('1.9p', value_.to_s)
290
+ value_ = ::Versionomy.parse('1.9r')
291
+ assert_equal([1, 9, 0, 0, :final, 18, 0], value_.values_array)
292
+ assert_equal('1.9r', value_.to_s)
293
+ value_ = ::Versionomy.parse('1.9u')
294
+ assert_equal([1, 9, 0, 0, :final, 21, 0], value_.values_array)
295
+ assert_equal('1.9u', value_.to_s)
296
+ end
297
+
298
+
273
299
  # Test setting delimiters on unparse, including testing for illegal delimiters
274
300
 
275
301
  def test_unparse_with_custom_delimiters
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: versionomy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Azuma