Commit Graph

52 Commits

Author SHA1 Message Date
Toshi MARUYAMA 7934e32ee1 scm: mercurial: fix Ruby 1.9 "hg diff" test fails (#7518).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4859 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:25 -07:00
Toshi MARUYAMA 654a22624e scm: mercurial: add identifier to entry.lastrev (#3724, #3421).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4857 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:25 -07:00
Toshi MARUYAMA 3ba56db935 scm: mercurial: rewrite MercurialAdapter#entries to show per-file change log and size (#3421, #4455).
Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4856 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:25 -07:00
Toshi MARUYAMA cb26f0adf9 scm: mercurial: rewrite MercurialAdapter#diff by using helper extension (#4455, #7518).
fix incompatibility of diff with Mercurial < 1.1.

Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4854 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:25 -07:00
Toshi MARUYAMA 0f1c932f35 scm: mercurial: rewrite MercurialAdapter#revisions as an iterator (#4455).
Now it uses XmlMini.parse() in place of slow REXML.

Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4848 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:25 -07:00
Toshi MARUYAMA 33f1436eb2 scm: mercurial: change identifier to revision in fetching revisions.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4847 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA 608025fd04 scm: mercurial: rewrite MercurialAdapter#info by using helper extention (#4455).
Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4846 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA 40d72c354a scm: mercurial: add "summary" method in adapter (#4455).
Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4845 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA 40ef1dd792 scm: mercurial: switch root_url or url in "hg" method (#4455).
"info" sets root_url from url.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4844 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA bed219927d scm: mercurial: refactor "cat" by using hg helper method (#4455).
Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4842 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA 713757cc8c scm: mercurial: refactor "annotate" by using hg helper method (#4455).
Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4841 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA 357ddfb112 scm: mercurial: add "hgtarget" method (#4455).
Abstract adapter shell quotes paths.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4840 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA 3f80b8a9a7 scm: mercurial: change "--cwd" option to "-R" for running "hg" (#4455).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4839 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA aa4b38025a scm: mercurial: add Mercurial helper extension (#4455).
* 'rhsummary' and 'rhmanifest' for reducing the number of hg command calls.
* 'rhdiff' for compatibility with Mercurial < 1.1.

Also renamed TEMPLATES_DIR to HELPERS_DIR because the directory now contains
templates and a helper extension.

Original version was written by Alessio Franceschelli,
downloaded from http://www.redmine.org/attachments/3395/overhaul.py

Contributed by Alessio Franceschelli and Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4833 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA cad0356322 scm: mercurial: add new method 'hg' to wrap shellout (#4455).
Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4830 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA 62ea9bd915 scm: mercurial: switch shell quote revision with argument.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4828 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-04-16 14:35:24 -07:00
Toshi MARUYAMA 6d0fcf556d scm: use shell quote for scm command at adapter level (#7517, #4273).
"C:\Program Files\TortoiseHg\hg.exe" can be used in config/configuration.yml.

In Ruby 1.9 IO.popen, if cmd is an Array of String,
it will be used as the subprocess‘s argv bypassing a shell.

See http://www.ruby-doc.org/core/classes/IO.html

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4821 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-03-27 10:10:55 -07:00
Toshi MARUYAMA d449ac518d scm: change key name of configurable command name (#7517, #6159, #7047).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4797 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-02-09 16:51:39 -08:00
Toshi MARUYAMA 02c30b1a67 scm: add a feature of configurable path of executable for scm adapters (#7517).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4795 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-02-09 16:51:04 -08:00
Toshi MARUYAMA 80b329d031 scm: mercurial: change diff option from --git to --config diff.git=false (#7253).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4688 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-11 08:41:35 +00:00
Toshi MARUYAMA a6f05b5e56 scm: mercurial: diff '-c' option supports above Mercurial 1.2 (#3724, #7253).
r4662 fails in old Mercurial.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4686 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-11 05:15:56 +00:00
Toshi MARUYAMA 1ff52e5c5a scm: mercurial: add --git option in 'hg diff' (#7253).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4668 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-09 13:53:47 +00:00
Toshi MARUYAMA 08c093bc85 scm: mercurial: replace identifier to hgrev(identifier).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4667 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-09 09:54:30 +00:00
Toshi MARUYAMA ed246cef41 scm: mercurial: wrap identifier with shell_quote at hgrev(identifier).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4666 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-09 09:54:10 +00:00
Toshi MARUYAMA ef28bf6d88 scm: mercurial: annotate accepts both of revision number and changeset id (#3724).
Change annotate revision label to Mercurial style '4:def6d2f1254a'
and use identifier.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4663 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-09 01:30:18 +00:00
Toshi MARUYAMA 5207211b6d scm: mercurial: fix diff and test for accept both of revision number and changeset id (#3724).
Diff of changeset can be wrong if the previous changeset isn't the parent.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4662 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-08 13:51:43 +00:00
Toshi MARUYAMA ad18cfda32 scm: mercurial: escape any filenames by urlescape (#2664, #7064).
In Mercurial, filename is not UTF-8 but byte-string.
So it should be escaped to UTF-8-safe string before parsing as XML document.

NOTE: Mercurial's {|obfuscate} filter cannot be used here, because it treats
filename as encoded by HGENCODING.

Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4633 e93f8b46-1217-0410-a6f0-8f06a7374b81
2011-01-05 15:02:24 +00:00
Jean-Philippe Lang f7529c94f6 Fixes mercurial adapter.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4541 e93f8b46-1217-0410-a6f0-8f06a7374b81
2010-12-18 18:35:37 +00:00
Jean-Philippe Lang 7d7c67daba Fixed that some arguments where not properly escaped in scm adapters.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4539 e93f8b46-1217-0410-a6f0-8f06a7374b81
2010-12-18 18:12:12 +00:00
Jean-Philippe Lang cfc3ee4f5a Fixed: r4417 breaks MercurialAdapter with ruby 1.8.6 (#5117).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4422 e93f8b46-1217-0410-a6f0-8f06a7374b81
2010-11-21 14:25:26 +00:00
Jean-Philippe Lang 6b72c66893 Fixed: MercurialAdapter.client_version depends on LANG environment variable (#5117).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4417 e93f8b46-1217-0410-a6f0-8f06a7374b81
2010-11-20 14:04:22 +00:00
Jean-Philippe Lang b897089729 Fixes Mercurial adapter for JRuby (#4494, #5404).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3722 e93f8b46-1217-0410-a6f0-8f06a7374b81
2010-05-01 09:55:40 +00:00
Jean-Philippe Lang 22d12032e7 Reject empty Mercurial entries (#4098).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3029 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-11-11 15:33:30 +00:00
Jean-Philippe Lang ac6ecdb360 Fixed: Mercurial integration doesn't work if redmine is installed in folder path containing space (#3159).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2679 e93f8b46-1217-0410-a6f0-8f06a7374b81
2009-04-21 16:05:04 +00:00
Jean-Philippe Lang 622b6121f4 Fixes nil error when svn binary version is unknown (#1607).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1652 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-07-12 09:06:19 +00:00
Jean-Philippe Lang 29fb8db936 Adds MercurialAdapter.client_version and prevent @hg --version@ to be called on each request.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1628 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-07-05 09:39:00 +00:00
Jean-Philippe Lang fda7bcdfb6 Mercurial adapter tests fix (#1469).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1563 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-06-18 17:02:39 +00:00
Jean-Philippe Lang ec0525d497 Move unified diff parser out of the scm abstract adapter so it can be reused for viewing attached diffs (#1403).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1513 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-06-08 16:28:42 +00:00
Jean-Philippe Lang aa9d04a4a7 Mercurial adapter improvements (patch #1199 by Pierre Paysant-Le Roux).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1499 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-06-07 09:19:50 +00:00
Jean-Philippe Lang a73f68a185 Fixed: Links to repository directories don't work (#1119).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1365 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-04-27 10:12:15 +00:00
Jean-Philippe Lang 7aaa538fd9 Fixed: error when browsing an empty Mercurial repository (#1046).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1343 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-04-12 17:13:17 +00:00
Jean-Philippe Lang db7f890030 Mercurial: Get proper file action on revision (#983).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1332 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-04-06 12:00:11 +00:00
Jean-Philippe Lang 472654aebe Fixed: revision is ignored in MercurialAdapter#cat.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1288 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-03-21 22:19:37 +00:00
Jean-Philippe Lang 451aa6ba4e Add "--encoding utf8" option to the Mercurial "hg log" command in order to get utf8 encoded commit logs (#834).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1256 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-03-15 11:05:22 +00:00
Jean-Philippe Lang 01fdaf5977 Mercurial adapter:
* fetch changesets by batches of 100 (rather than in a single transaction)
* fix: fetch_changesets tries to re-insert the last revision that exists in the db (#860)

git-svn-id: http://redmine.rubyforge.org/svn/trunk@1255 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-03-15 10:30:56 +00:00
Jean-Philippe Lang a9c972fbb3 Quotes Mercurial entries command depending on the OS.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1229 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-03-11 20:15:05 +00:00
Jean-Philippe Lang 71d3bb2f7b Fixes Mercurial browsing under unix-like os and for directory depth > 2 and (patch #826 by Frederic Moulins, slightly edited to preserve win32 compatibility).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1228 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-03-11 20:06:25 +00:00
Jean-Philippe Lang 78d9ae9754 Fixed: crash when fetching Mercurial changesets if changeset[:files] is nil (same fix as r921).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1045 e93f8b46-1217-0410-a6f0-8f06a7374b81
2008-01-06 17:33:41 +00:00
Jean-Philippe Lang ea35fff5bf SCM adapters: moved Errno::ENOENT exception rescuing to the abstract adapter.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1001 e93f8b46-1217-0410-a6f0-8f06a7374b81
2007-12-15 12:14:40 +00:00
Jean-Philippe Lang 8c65cc4712 Added Annotate/Blame view for Subversion, CVS and Mercurial repositories.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@947 e93f8b46-1217-0410-a6f0-8f06a7374b81
2007-12-02 20:58:02 +00:00