From: Dmitry Gutov <dgutov@yandex.ru>
To: Uwe Brauer <oub@mat.ucm.es>
Cc: emacs-devel@gnu.org
Subject: Re: log-edit-insert-changelog even when run git/hg from the
Date: Mon, 10 Oct 2022 05:10:09 +0300 [thread overview]
Message-ID: <32439d3e-e40b-c2c2-5f5a-34785a1a5790@yandex.ru> (raw)
In-Reply-To: <87k05cw3ps.fsf@mat.ucm.es>
[-- Attachment #1: Type: text/plain, Size: 337 bytes --]
On 07.10.2022 09:24, Uwe Brauer wrote:
>> On 02.10.2022 09:22, Uwe Brauer wrote:
>> The Git support is already in master.
> Is there any work in progress for mercurial, or is there non enough interest?
Here's a patch I thought almost working, except in the end it doesn't
move the working revision to the updated branch tip. Any ideas?
[-- Attachment #2: vc-hg-checkin-patch.diff --]
[-- Type: text/x-patch, Size: 1932 bytes --]
diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.el
index f4a44df3c2..d5740b6e21 100644
--- a/lisp/vc/vc-hg.el
+++ b/lisp/vc/vc-hg.el
@@ -1185,19 +1185,33 @@ vc-hg-log-edit-mode
"Major mode for editing Hg log messages.
It is based on `log-edit-mode', and has Hg-specific extensions.")
+(defvar vc-hg-patch-string nil)
+
(defun vc-hg-checkin (files comment &optional _rev)
"Hg-specific version of `vc-backend-checkin'.
REV is ignored."
- (let ((amend-extract-fn
- (lambda (value)
- (when (equal value "yes")
- (list "--amend")))))
- (apply #'vc-hg-command nil 0 files
- (nconc (list "commit" "-m")
- (log-edit-extract-headers `(("Author" . "--user")
- ("Date" . "--date")
- ("Amend" . ,amend-extract-fn))
- comment)))))
+ (apply #'vc-hg-command nil 0 files
+ (nconc (list "commit"
+ "-m")
+ (vc-hg--extract-headers comment))))
+
+(defun vc-hg-checkin-patch (patch-string comment)
+ (let ((patch-file (make-temp-file "hg-patch")))
+ (with-temp-file patch-file
+ (insert patch-string))
+ (unwind-protect
+ (apply #'vc-hg-command nil 0 nil
+ (nconc (list "import" "--bypass" patch-file "-m")
+ (vc-hg--extract-headers comment)))
+ (delete-file patch-file))))
+
+(defun vc-hg--extract-headers (comment)
+ (log-edit-extract-headers `(("Author" . "--user")
+ ("Date" . "--date")
+ ("Amend" . (lambda (value)
+ (when (equal value "yes")
+ (list "--amend")))))
+ comment))
(defun vc-hg-find-revision (file rev buffer)
(let ((coding-system-for-read 'binary)
next prev parent reply other threads:[~2022-10-10 2:10 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-11 8:06 log-edit-insert-changelog even when run git/hg from the Uwe Brauer
2022-09-30 0:58 ` Dmitry Gutov
2022-09-30 6:10 ` Uwe Brauer
2022-09-30 10:14 ` Dmitry Gutov
2022-09-30 15:48 ` Uwe Brauer
2022-10-01 0:10 ` Dmitry Gutov
2022-10-01 5:58 ` Uwe Brauer
2022-10-01 11:03 ` Dmitry Gutov
2022-10-01 12:51 ` Uwe Brauer
2022-10-01 18:13 ` Dmitry Gutov
2022-10-02 6:22 ` Uwe Brauer
2022-10-06 22:28 ` Dmitry Gutov
2022-10-07 6:24 ` Uwe Brauer
2022-10-10 2:10 ` Dmitry Gutov [this message]
2022-10-10 6:39 ` Uwe Brauer
2022-10-10 9:53 ` Dmitry Gutov
2022-10-10 12:41 ` [Serious BUG in master 93136169cba] (was: log-edit-insert-changelog even when run git/hg from the) Uwe Brauer
2022-10-10 13:22 ` [Serious BUG in master 93136169cba] Uwe Brauer
2022-10-10 13:23 ` [Confirmed] (was: [Serious BUG in master 93136169cba]) Uwe Brauer
2022-10-10 14:53 ` [patch: first impression] (was: log-edit-insert-changelog even when run git/hg from the) Uwe Brauer
2022-10-10 15:31 ` Dmitry Gutov
2022-10-10 15:41 ` [patch: first impression] Uwe Brauer
2022-10-11 2:05 ` Dmitry Gutov
2022-10-11 6:25 ` Uwe Brauer
2022-10-11 12:17 ` Dmitry Gutov
2022-10-11 12:24 ` Uwe Brauer
2022-10-11 16:50 ` Dmitry Gutov
2022-10-11 16:55 ` Uwe Brauer
2022-10-17 0:14 ` Dmitry Gutov
2022-10-17 5:48 ` Dr. Arne Babenhauserheide
2022-10-17 10:02 ` Dmitry Gutov
2022-10-17 7:11 ` Uwe Brauer
2022-10-17 10:04 ` Dmitry Gutov
2022-10-17 16:53 ` Uwe Brauer
2022-10-17 20:44 ` Uwe Brauer
2022-10-17 23:36 ` Dmitry Gutov
2022-10-18 6:33 ` Uwe Brauer
2022-10-18 12:23 ` Uwe Brauer
2022-10-18 12:45 ` Dmitry Gutov
2022-10-18 12:30 ` Dmitry Gutov
2022-10-18 13:28 ` Uwe Brauer
2022-10-18 14:47 ` Dmitry Gutov
2022-10-18 15:38 ` Uwe Brauer
2022-10-18 15:50 ` Dmitry Gutov
2022-10-18 16:47 ` Uwe Brauer
2022-10-18 17:30 ` Dmitry Gutov
2022-10-18 19:17 ` Dr. Arne Babenhauserheide
2022-10-18 19:29 ` Dr. Arne Babenhauserheide
2022-10-24 0:52 ` Dmitry Gutov
2022-10-24 15:34 ` Uwe Brauer
2022-10-24 16:33 ` Dmitry Gutov
2022-10-24 17:53 ` Uwe Brauer
2022-10-25 21:11 ` Dmitry Gutov
2022-10-19 5:40 ` Uwe Brauer
2022-10-24 1:03 ` Dmitry Gutov
2022-10-24 15:32 ` Uwe Brauer
2022-10-24 17:28 ` Dmitry Gutov
2022-10-25 8:19 ` Robert Pluim
2022-10-25 9:14 ` Uwe Brauer
2022-10-25 9:55 ` Robert Pluim
2022-10-25 11:15 ` Eli Zaretskii
2022-10-25 12:13 ` Uwe Brauer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=32439d3e-e40b-c2c2-5f5a-34785a1a5790@yandex.ru \
--to=dgutov@yandex.ru \
--cc=emacs-devel@gnu.org \
--cc=oub@mat.ucm.es \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).