comparison lib/redmine/version.rb @ 0:513646585e45

* Import Redmine trunk SVN rev 3859
author Chris Cannam
date Fri, 23 Jul 2010 15:52:44 +0100
parents
children 1d32c0a0efbf
comparison
equal deleted inserted replaced
-1:000000000000 0:513646585e45
1 require 'rexml/document'
2
3 module Redmine
4 module VERSION #:nodoc:
5 MAJOR = 1
6 MINOR = 0
7 TINY = 0
8
9 # Branch values:
10 # * official release: nil
11 # * stable branch: stable
12 # * trunk: devel
13 BRANCH = 'devel'
14
15 def self.revision
16 revision = nil
17 entries_path = "#{RAILS_ROOT}/.svn/entries"
18 if File.readable?(entries_path)
19 begin
20 f = File.open(entries_path, 'r')
21 entries = f.read
22 f.close
23 if entries.match(%r{^\d+})
24 revision = $1.to_i if entries.match(%r{^\d+\s+dir\s+(\d+)\s})
25 else
26 xml = REXML::Document.new(entries)
27 revision = xml.elements['wc-entries'].elements[1].attributes['revision'].to_i
28 end
29 rescue
30 # Could not find the current revision
31 end
32 end
33 revision
34 end
35
36 REVISION = self.revision
37 ARRAY = [MAJOR, MINOR, TINY, BRANCH, REVISION].compact
38 STRING = ARRAY.join('.')
39
40 def self.to_a; ARRAY end
41 def self.to_s; STRING end
42 end
43 end