Project

General

Profile

Bug #8877

OptionParser::Version should not rely on SVN

Added by hasari (Hiro Asari) about 7 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
ruby -v:
ruby 2.1.0dev (2013-08-02 trunk 42320) [x86_64-darwin12.4.0]
[ruby-core:57069]

Description

=begin
Currently, (({OptionParser::Version})) is (()) by:

RCSID = %w$Id$[1..-1].each {|s| s.freeze}.freeze
Version = (RCSID[1].split('.').collect {|s| s.to_i}.extend(Comparable).freeze if RCSID[1])

This assumes that before this file is invoked, something preprocesses this file and rewrites (({$Id$})). This is not the case with (({git})).

As a result, if you build from the git clone, you'd get

irb(main):001:0> RUBY_DESCRIPTION
=> "ruby 2.1.0dev (2013-08-02 trunk 42320) [x86_64-darwin12.4.0]"
irb(main):002:0> require 'optparse'
=> true
irb(main):003:0> OptionParser::Version
=> nil

While I understand the history of the development process and Ruby core's professed affinity for SVN, but this strikes me as a very bad idea.

=end

Also available in: Atom PDF