comparison lib/redmine/scm/adapters/mercurial_adapter.rb.rej @ 14:1d32c0a0efbf

* Update to SVN trunk (revisions 3892-4040)
author Chris Cannam
date Wed, 25 Aug 2010 16:30:24 +0100
parents
children
comparison
equal deleted inserted replaced
4:9cc62779c13a 14:1d32c0a0efbf
1 --- lib/redmine/scm/adapters/mercurial_adapter.rb
2 +++ lib/redmine/scm/adapters/mercurial_adapter.rb
3 @@ -67,19 +67,17 @@
4 end
5
6 def info
7 - cmd = "#{HG_BIN} -R #{target('')} root"
8 - root_url = nil
9 - shellout(cmd) do |io|
10 - root_url = io.gets
11 - end
12 - return nil if $? && $?.exitstatus != 0
13 - info = Info.new({:root_url => root_url.chomp,
14 - :lastrev => revisions(nil,nil,nil,{:limit => 1}).last
15 - })
16 - info
17 - rescue CommandFailed
18 - return nil
19 + tip = summary['tip'].first
20 + Info.new(:root_url => summary['root'].first['path'],
21 + :lastrev => Revision.new(:identifier => tip['rev'].to_i,
22 + :revision => tip['rev'],
23 + :scmid => tip['node']))
24 end
25 +
26 + def summary
27 + @summary ||= fetchg 'rhsummary'
28 + end
29 + private :summary
30
31 def entries(path=nil, identifier=nil)
32 path ||= ''
33 --- lib/redmine/scm/adapters/mercurial_adapter.rb
34 +++ lib/redmine/scm/adapters/mercurial_adapter.rb
35 @@ -74,6 +74,16 @@
36 :scmid => tip['node']))
37 end
38
39 + def tags
40 + summary['tags'].map { |e| e['name'] }
41 + end
42 +
43 + # Returns map of {'tag' => 'nodeid', ...}
44 + def tagmap
45 + alist = summary['tags'].map { |e| e.values_at('name', 'node') }
46 + Hash[*alist.flatten]
47 + end
48 +
49 def summary
50 @summary ||= fetchg 'rhsummary'
51 end
52 --- lib/redmine/scm/adapters/mercurial_adapter.rb
53 +++ lib/redmine/scm/adapters/mercurial_adapter.rb
54 @@ -84,6 +84,19 @@
55 Hash[*alist.flatten]
56 end
57
58 + def branches
59 + summary['branches'].map { |e| e['name'] }
60 + end
61 +
62 + # Returns map of {'branch' => 'nodeid', ...}
63 + def branchmap
64 + alist = summary['branches'].map { |e| e.values_at('name', 'node') }
65 + Hash[*alist.flatten]
66 + end
67 +
68 + # NOTE: DO NOT IMPLEMENT default_branch !!
69 + # It's used as the default revision by RepositoriesController.
70 +
71 def summary
72 @summary ||= fetchg 'rhsummary'
73 end