Chris@1295: require 'rexml/document' Chris@1295: Chris@1295: module Redmine Chris@1295: module VERSION #:nodoc: Chris@1295: MAJOR = 2 Chris@1295: MINOR = 3 Chris@1295: TINY = 1 Chris@1295: Chris@1295: # Branch values: Chris@1295: # * official release: nil Chris@1295: # * stable branch: stable Chris@1295: # * trunk: devel Chris@1295: BRANCH = 'stable' Chris@1295: Chris@1295: # Retrieves the revision from the working copy Chris@1295: def self.revision Chris@1295: if File.directory?(File.join(Rails.root, '.svn')) Chris@1295: begin Chris@1295: path = Redmine::Scm::Adapters::AbstractAdapter.shell_quote(Rails.root.to_s) Chris@1295: if `svn info --xml #{path}` =~ /revision="(\d+)"/ Chris@1295: return $1.to_i Chris@1295: end Chris@1295: rescue Chris@1295: # Could not find the current revision Chris@1295: end Chris@1295: end Chris@1295: nil Chris@1295: end Chris@1295: Chris@1295: REVISION = self.revision Chris@1295: ARRAY = [MAJOR, MINOR, TINY, BRANCH, REVISION].compact Chris@1295: STRING = ARRAY.join('.') Chris@1295: Chris@1295: def self.to_a; ARRAY end Chris@1295: def self.to_s; STRING end Chris@1295: end Chris@1295: end