From unknown Fri Jun 20 18:22:37 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#57400 <57400@debbugs.gnu.org> To: bug#57400 <57400@debbugs.gnu.org> Subject: Status: 29.0.50; Support sending patches from VC directly Reply-To: bug#57400 <57400@debbugs.gnu.org> Date: Sat, 21 Jun 2025 01:22:37 +0000 retitle 57400 29.0.50; Support sending patches from VC directly reassign 57400 emacs submitter 57400 Antoine Kalmbach severity 57400 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Aug 25 04:48:06 2022 Received: (at submit) by debbugs.gnu.org; 25 Aug 2022 08:48:06 +0000 Received: from localhost ([127.0.0.1]:48848 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oR8Wz-0002K8-7s for submit@debbugs.gnu.org; Thu, 25 Aug 2022 04:48:06 -0400 Received: from lists.gnu.org ([209.51.188.17]:42372) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oR8Ww-0002Jk-TJ for submit@debbugs.gnu.org; Thu, 25 Aug 2022 04:48:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:41894) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oR8Ww-0006E6-Bv for bug-gnu-emacs@gnu.org; Thu, 25 Aug 2022 04:48:02 -0400 Received: from lahtoruutu.iki.fi ([185.185.170.37]:33554) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oR8Ws-0001uh-Uh for bug-gnu-emacs@gnu.org; Thu, 25 Aug 2022 04:48:01 -0400 Received: from thanatos (91-157-197-22.elisa-laajakaista.fi [91.157.197.22]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: ane) by lahtoruutu.iki.fi (Postfix) with ESMTPSA id 565221B00027 for ; Thu, 25 Aug 2022 11:47:55 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1661417275; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type; bh=G6m+ludGHLRgPmh0kbc8+oYvl0G2IIVpboBYRF8zyDg=; b=aT0QywCNCTd3SIj/v+2S4NNZDdH8Ya272KztMoiBVFpL3+gP/wI/XCkOgM2GUNVsFfC450 9YJu0nT/BHGXsJfO2tvuhvcosK5Kxztf7ZVujvksBzLncwAgbANG41QizCcqEmxcD8uSI+ z1lKreI6+kN3Tt/AWC4JVsQ/vXiMTym2jGyP+SjqTXepbddWjAa9ZcqEAItsT/OGzqkWQN bHkjoljZAtSx5umZiJF83KiqkoBPTeIvXb1zNGSfmVdWFYO8T2BH+hwABkjD3VE32jsq99 eAqWEqJyPiGirN+YnyKJqp8mS19nXviz98HDHem8cKiX+o0+PVHQiKsvTdd5WQ== From: Antoine Kalmbach To: bug-gnu-emacs@gnu.org Subject: 29.0.50; Support sending patches from VC directly Date: Thu, 25 Aug 2022 11:47:54 +0300 Message-ID: <84v8qgn1z9.fsf@iki.fi> MIME-Version: 1.0 Content-Type: text/plain ARC-Seal: i=1; s=lahtoruutu; d=iki.fi; t=1661417275; a=rsa-sha256; cv=none; b=BBssmeDSQvTZ6qQ9b/3mfECFvbvP1K5so1rZuH+dI9y2b96IeWpa38K8HtsqrsK2qzcVNk xXijJrHBMrjysFiZh2dfuQ3DenlHCxtkTn5AmzgvfqseVzNSnOmKcczhd7m9eCw45KZul+ kJ0OulCns4foXIAiJ6TQsITGsqJFuN2ZDSjz/JKdqw07qYoV5vsO+AwN2KmV8Q3CeRigHZ yW0Q7HcPudoPfCJNLxbtqaMXHlvfBGkq+aiYEGC4MAx5+zu22ddsIrGT1lgssBdKq7JeqC l9aB6cA7AcOXPqAgbkVur6q5aNzhHYJixSOOX2XSOG3/V8yPOzMaNzzzB0EY4w== ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=ane smtp.mailfrom=ane@iki.fi ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1661417275; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type; bh=G6m+ludGHLRgPmh0kbc8+oYvl0G2IIVpboBYRF8zyDg=; b=c2tOC9CHp7O9AlRFgv3rHAcrCJ5M3ibUFe2ElRvt+oKzFIm5j0zCBfBLarv374I91ttosA qZNmjOzJ497bZr/f53u0sVJaPcDZTRz2OzcwRZ5lTGWQJ3RO57EIrpblovlq1TmdxIte/r Hn+07+OsiMbCThxdFjkX774VBjqLG2sU/ZYl0wCLSwBlgnMBjdtr58tyh4q68YoEjT0Po5 HVo79BENgo4GEM+ZH2Ir8R9MQ92GPpNBNIb56wU5+OKbXAQ0ahxneOkD0bsTs/sFpUpg6s kwXwuLFol9gGDbo+O+IBXaCG0QmozJRq4Oj8gr7KuZqZoJ0q1l5Kwv8IRgqMjA== Received-SPF: pass client-ip=185.185.170.37; envelope-from=ane@iki.fi; helo=lahtoruutu.iki.fi X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.6 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.6 (--) See the discussion here https://mail.gnu.org/archive/html/emacs-devel/2022-08/msg01059.html The idea would be to support sending patches using Emacs mail user agent capabilities directly from VC projects. This would depend on the chosen VC backend and whether it has support for email-based workflows in the first place. The reference implementation would be for Git. A command such as `vc-prepare-patch`, which would prompt for a Git revision range and then generate a set of .patch files. These then would be opened in the mail user agent configured in Emacs for sending. In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.34, cairo version 1.17.6) of 2022-08-23 built on thanatos Repository revision: 67a15ce1564ce35ece24a19f00e03a36e0575746 Repository branch: master System Description: Fedora Linux 36 (Workstation Edition) Configured using: 'configure --with-x-toolkit=motif --with-json --with-native-compilation --with-pgtk --with-imagemagick --with-mailutils' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ IMAGEMAGICK JPEG JSON LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS XIM GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8 Major mode: notmuch-hello Minor modes in effect: eros-mode: t electric-pair-mode: t global-corfu-mode: t corfu-mode: t marginalia-mode: t vertico-mode: t recentf-mode: t savehist-mode: t display-time-mode: t global-hl-line-mode: t global-auto-revert-mode: t winner-mode: t tooltip-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tab-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t column-number-mode: t line-number-mode: t indent-tabs-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /home/ane/.emacs.d/elpa/transient-20220806.2224/transient hides /usr/local/share/emacs/29.0.50/lisp/transient Features: (shadow emacsbug rfc2104 secrets dbus xml network-stream nsm mailalias textsec uni-scripts idna-mapping ucs-normalize uni-confusable textsec-check eudc-capf eudc cus-edit cus-start cus-load eudc-vars sort company-oddmuse company-keywords company-etags etags fileloop generator company-gtags company-dabbrev-code company-dabbrev company-files company-clang company-capf company-cmake company-semantic company-template company-bbdb company notmuch notmuch-tree notmuch-jump notmuch-hello notmuch-show notmuch-print notmuch-crypto notmuch-mua notmuch-message notmuch-draft notmuch-maildir-fcc notmuch-address notmuch-company notmuch-parser format-spec notmuch-wash coolj goto-addr icalendar diary-lib diary-loaddefs cal-menu calendar cal-loaddefs notmuch-tag crm notmuch-lib notmuch-compat mm-view mml-smime smime gnutls dig mule-util mail-extr flyspell ispell smex ido eros checkdoc lisp-mnt noutline outline rainbow-mode color rainbow-delimiters paredit eldoc-box eglot array xref flymake-proc flymake thingatpt compile comint ansi-color project imenu jsonrpc ert pp ewoc debug backtrace advice find-func vc-hg vc-git diff-mode vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view pcvs-util vc vc-dispatcher bug-reference elec-pair corfu marginalia vertico recentf tree-widget wid-edit cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs hydra lv smtpmail message sendmail yank-media puny dired dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util text-property-search time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader diminish modus-operandi-theme modus-themes use-package-diminish edmacro kmacro use-package-bind-key bind-key easy-mmode use-package-ensure use-package-core savehist comp comp-cstr warnings icons rx cl-extra pcase finder-inf ace-window-autoloads avy-autoloads clj-refactor-autoloads cider-autoloads clojure-mode-extra-font-locking-autoloads clojure-mode-autoloads company-autoloads consult-autoloads corfu-doc-autoloads corfu-autoloads debbugs-autoloads diff-hl-autoloads diminish-autoloads edit-indirect-autoloads eglot-autoloads eldoc-box-autoloads eros-autoloads exec-path-from-shell-autoloads expand-region-autoloads flycheck-autoloads geiser-guile-autoloads geiser-impl help-fns radix-tree help-mode geiser-custom geiser-base geiser-autoloads gif-screencast-autoloads go-mode-autoloads google-c-style-autoloads graphviz-dot-mode-autoloads hl-todo-autoloads hydra-autoloads inflections-autoloads keycast-autoloads kind-icon-autoloads lv-autoloads magit-autoloads git-commit-autoloads magit-section-autoloads marginalia-autoloads markdown-mode-autoloads meson-mode-autoloads modus-themes-autoloads multiple-cursors-autoloads neotree-autoloads ninja-mode-autoloads notmuch-autoloads paredit-autoloads parseedn-autoloads parseclj-autoloads pinentry-autoloads pkg-info-autoloads epl-autoloads plantuml-mode-autoloads dash-autoloads queue-autoloads rainbow-delimiters-autoloads rainbow-mode-autoloads rust-mode-autoloads scss-mode-autoloads sesman-autoloads sly-asdf-autoloads popup-autoloads sly-macrostep-autoloads macrostep-autoloads sly-repl-ansi-color-autoloads sly-autoloads smex-autoloads spinner-autoloads ssh-config-mode-autoloads svg-lib-autoloads transient-autoloads tree-sitter-langs-autoloads tree-sitter-autoloads tsc-autoloads typescript-mode-autoloads use-package-autoloads bind-key-autoloads vertico-autoloads web-mode-autoloads wgrep-autoloads with-editor-autoloads info compat-autoloads yaml-mode-autoloads yasnippet-snippets-autoloads yasnippet-autoloads zig-mode-autoloads package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x map byte-opt gv bytecomp byte-compile cconv url-vars time hl-line autorevert filenotify cl-loaddefs cl-lib winner ring rmc iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win pgtk-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo gtk pgtk multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 815238 428939) (symbols 48 32388 106) (strings 32 177583 63256) (string-bytes 1 5448488) (vectors 16 78687) (vector-slots 8 1356913 2880582) (floats 8 317 2125) (intervals 56 1817 7744) (buffers 1000 18)) -- Antoine Kalmbach From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 03:37:56 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 07:37:56 +0000 Received: from localhost ([127.0.0.1]:51933 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRTue-0005aN-86 for submit@debbugs.gnu.org; Fri, 26 Aug 2022 03:37:56 -0400 Received: from mout01.posteo.de ([185.67.36.65]:46355) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRTub-0005a6-9p for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 03:37:54 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id D97DE24002A for <57400@debbugs.gnu.org>; Fri, 26 Aug 2022 09:37:45 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1661499466; bh=axoi0aRvNzZ4vHi2XNkIHcfSy/3KVJGgibuYxYxWcJ8=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=aFKo2B9V5O0yZr5D25Qc24F0VPu+Ad1c0KFglcnjdcVfZk4dKfatGFWeTJ3eIIGLR maeDw97w4/zYmkmX2z4F8a1QMy/GyXuEkJwNm5uXrwvOfIz32kAsugW8e12TzYkI+A /ZkyRVtOW7BSVTgOE91oUSaGYfAidoyR6TA02aJUNo8gA6OZSCeGJ8ZjPFVAD2mCA6 zuL8Dnz7DiX/7gCzmZ8qNFhiQqMf3m9qZ34u7wBmQpD/7KwZVharOKHdA9zug47Yu4 ThhidCgxW4RJI4K4vlQZscK3oSrzpnCYNFH9D3b43ugvOWANOhO/eZ/nOhBks+mxK6 M0CTEYojXrVVQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MDWrn1J3Pz6tq1; Fri, 26 Aug 2022 09:37:44 +0200 (CEST) From: Philip Kaludercic To: Antoine Kalmbach Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <84v8qgn1z9.fsf@iki.fi> (Antoine Kalmbach's message of "Thu, 25 Aug 2022 11:47:54 +0300") References: <84v8qgn1z9.fsf@iki.fi> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Fri, 26 Aug 2022 07:37:39 +0000 Message-ID: <87h71zo3p8.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Antoine Kalmbach writes: > > > See the discussion here > > https://mail.gnu.org/archive/html/emacs-devel/2022-08/msg01059.html > > The idea would be to support sending patches using Emacs mail user agent > capabilities directly from VC projects. This would depend on the chosen > VC backend and whether it has support for email-based workflows in the > first place. > > The reference implementation would be for Git. A command such as > `vc-prepare-patch`, which would prompt for a Git revision range and then > generate a set of .patch files. These then would be opened in the mail > user agent configured in Emacs for sending. Have you started implementing anything yet? From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 06:15:22 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 10:15:22 +0000 Received: from localhost ([127.0.0.1]:52059 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRWMz-0001BJ-Vk for submit@debbugs.gnu.org; Fri, 26 Aug 2022 06:15:22 -0400 Received: from lahtoruutu.iki.fi ([185.185.170.37]:57416) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRWMy-0001BB-9x for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 06:15:21 -0400 Received: from qfinm256.local (unknown [66.159.213.92]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: ane) by lahtoruutu.iki.fi (Postfix) with ESMTPSA id 386121B0018B; Fri, 26 Aug 2022 13:15:17 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1661508917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=sZeyhxYj1/i9UDAr5S0bgDWXyBRIvrIn+oqKSj5pzAM=; b=WBQ8N67m4mKpuvBV6A6rgHMf7YIdiJAiW6szxcjWgystOwnwtrGzPz3hfmKQ6bjdF54axr IavPcdMWaDk2DRO0wA2SvS9KhbHSQ1nn1IETN7f4+BXhxLyYeQKBMT9MwnQwBEDl3UKiGB 6OX7kLypoHl9Eo4h0hF0KtpQVuVcMMGhrE4PJ8uBtzG4Sp5dUaL4W2Ci5szrL0Njmfc8QQ uZmHQspRN6Sx7Hporufy7zR51YJP1HyVahh3vg13+MzSIBKwzqHUYQvG0QfMrlwFAHrawD GbFuci8Nv4b9mCVi/pWBih1xuxp5LvIxCOZwG1RN130brAUVxLFywXwat9x9UA== From: Antoine Kalmbach To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87h71zo3p8.fsf@posteo.net> References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> Date: Fri, 26 Aug 2022 13:15:15 +0300 Message-ID: MIME-Version: 1.0 Content-Type: text/plain ARC-Seal: i=1; s=lahtoruutu; d=iki.fi; t=1661508917; a=rsa-sha256; cv=none; b=S04cXdIWYPrnp1TQeE7t4Gx0Bsj+0F/NHKa5t5uFkxlN1L/lqaKHp6SZ01KgZI6UloVePG bV/O4ZGKrF2E5Hvmf8pCjh2HhdhCz+5RcCca3P1DY5jdgm40um6cr0+JddtXrs1Tkn1e+f /HQr7ArJDgTeSmWS1JZHFSp7Uo41tOr+e4oCpsNELrJyQRDRHor/Gg08x3WjmKI6Wgsuy/ /PFG7jXsEG8yeUrt3vF29Xb+wENiIqJbyOS1I8Ckm15gaRF0V+nZQEOa/pNfu2fueufkTW dUJnjPPCVzukIcXgVz/To4gJPW6BUNHpzyD7P3QdwwIK1jyqC0eCG5GmEIXoDg== ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=ane smtp.mailfrom=ane@iki.fi ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1661508917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=sZeyhxYj1/i9UDAr5S0bgDWXyBRIvrIn+oqKSj5pzAM=; b=HdhFV7Y9W2hCcth+1thdcP4Z/elkuc+dt7kL2s3YH47Ee7qbXQE4wLsf1D2NTsNLr0urGO X1d8R0ov69v/XdLGmYvnrHmpE0f3xedDNUpCghxR9E6/LNhkS3SkSMSG2C+3p8Q6/NMhAZ otGrq3dd9NoOXoVx0Ygsfr5mH5a2X8eN/3uDQ3joz93er3BS2oWlZlJNpr1YGv6ddh53Ge 8b4bCbJYQsUeD2JpNGSwQpHZZeOXYbPRdFHM8EKwaJnChpgtBgEeoPB4Kq87q+i+KkOkL2 ZuB8I9NGmQOA4JwV+fIh+TEY+CBWh9aBx2N2WkXwAIcQJGeFsNEz9sNmfsHQKg== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Philip Kaludercic writes: > Have you started implementing anything yet? No, not yet. Hadn't you also thought about implementing this, if I recall correctly? -- Antoine Kalmbach From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 06:35:22 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 10:35:22 +0000 Received: from localhost ([127.0.0.1]:52141 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRWgL-0001sO-OH for submit@debbugs.gnu.org; Fri, 26 Aug 2022 06:35:22 -0400 Received: from mout01.posteo.de ([185.67.36.65]:37145) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRWgJ-0001s7-HV for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 06:35:20 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 38F66240028 for <57400@debbugs.gnu.org>; Fri, 26 Aug 2022 12:35:12 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1661510113; bh=61DnrQfRh2XQMdrORkvQ3W2W5QhcJWx3koTRti7rhes=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=RFemCNlTn6ghmzWDxvejkoDU6bqcxVzdRMa2LC6cQ1E+mep3ybQMqGkWqTKDx5tr/ esF7vzzjc1GjGBvgjAx5bQ+Qn3jf3UI9lKvP34ukGqvbJhKNqd0BlDQ3bviNy5VMN7 Qmv5gxY2/DdsAOImFzaphqdBeuTLZKrHBMgEt4U1zjqL9g2x8A5H6nlBRdSMnLr7cc bsazSzfp+iuX17y3Yk/hHUDm/STvtEuKDHI4YKmAOXEwjEkfzYjEtaauTyLuoB3ol6 SE32qcrykdlxPDVmQ+GVUJOihIr/jQ6aMByPNJ92QD1yAQqWKu8B6yITsJrA7BNvqo +l9EQ/qXn4MhA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MDbnX2srYz6tmB; Fri, 26 Aug 2022 12:35:09 +0200 (CEST) From: Philip Kaludercic To: Antoine Kalmbach Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: (Antoine Kalmbach's message of "Fri, 26 Aug 2022 13:15:15 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Fri, 26 Aug 2022 10:35:08 +0000 Message-ID: <87sfljmgwz.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Antoine Kalmbach writes: > > Philip Kaludercic writes: > >> Have you started implementing anything yet? > > No, not yet. Hadn't you also thought about implementing this, if I > recall correctly? Yes, and I began implementing a different approach (as mentioned on the emacs-devel thread), which I have since abandoned. If you haven't written anything yet, and don't insist on it, I could propose to start sketching out your suggestions. From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 06:45:56 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 10:45:56 +0000 Received: from localhost ([127.0.0.1]:52221 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRWqa-0004O2-Bx for submit@debbugs.gnu.org; Fri, 26 Aug 2022 06:45:56 -0400 Received: from lahtoruutu.iki.fi ([185.185.170.37]:42282) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRWqY-0004Nq-39 for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 06:45:54 -0400 Received: from qfinm256.local (unknown [66.159.213.92]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: ane) by lahtoruutu.iki.fi (Postfix) with ESMTPSA id 165FD1B0018B; Fri, 26 Aug 2022 13:45:52 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1661510752; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=0CNUFwa3Vl5LTtcr+Gnsrni6EOXlu2uah3WmjawPdwQ=; b=Vb5l2YfH8J+VVzAAdTIuQ0Hf75OplaEWahwz8LVDB8wb4dTKUcCV3xAG71ei1BbEx0AjAO MlRB8Qu45jzGGLdyY3Lg48PyC++LK/Hdi7cJk26AiPkDYGL6KNZeb+XA2/brHWogJ+RMx/ y7nUxXSPcpnR6pBDxBgMa8nVbtNVTV1EpT9FTdhLxs9XUNfsdlyZxBMfM8vbBds5jRp7nt eWFUuja030f+XpuFgJrbls+DsRi4cH7onzzcDW3tWRyNmJIWpkan0VCSpq2QIvkSrkGMIi h2rRU9PXca4ZSc0NtxKeQSBC7h33gxQdJxuL8u6n1S3RaAg2FfpJDHhwhWV+9A== From: Antoine Kalmbach To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87sfljmgwz.fsf@posteo.net> References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> Date: Fri, 26 Aug 2022 13:45:51 +0300 Message-ID: MIME-Version: 1.0 Content-Type: text/plain ARC-Seal: i=1; s=lahtoruutu; d=iki.fi; t=1661510752; a=rsa-sha256; cv=none; b=HCFdDyy5wD+5gR2COtlbBtmX/uCetq5ieHXPR+Fp+Ol5L1nl0xkuN9ZCeRga4xEa7FiI37 Foorz9kVKJzBWFQXXAVoIz8Bv4yaAtuzDm2zJDhoJduNOaTW+kKAN+nsPJgE/XAh9pi8Ng XPYSVf5E5Sfy7pbEBWMXnB5AZZXT5WEkG0dc8TNRjp70OdmoLY2VXgp+xjzCF0sfBmJzdM It8K/PE4cgTLUJveptNFkRZveIwfjekzZu0iHdDIHv4/6GCbW8RLW6uR87Rh5VhYJOOkYU N5am/cU47nxVs8odcpgL6RFZiiTTSNuT/CQIsoo53g06VRuBcQ21AATjkKJCpQ== ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=ane smtp.mailfrom=ane@iki.fi ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1661510752; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=0CNUFwa3Vl5LTtcr+Gnsrni6EOXlu2uah3WmjawPdwQ=; b=CXKJkGV7IzzwQ25q6jBybIEvjzkZEpO59MfsPeyMvtgXvLf747DHaf0e61w0LGIo+mpogg AoejgdJqdnCKbW4YatpdsnY7Dh6zeNvwCJbvp0Eim2NSxuZQE56nQqiMENxDl1esnAlmB1 K1J7atEFppudy0ZAGTT74CWWSZOFNvZmp5fmx3gQ57r+aDi4ds1YnFpCHMXmr6N0gfxilm 681jP0FDbb9+5mmw8HmY+QqF9KHFKPjwvj6EInf7WCXZMXmGco6+x4Fj6JAuBsX/HPhxNd 7Oobglv06fr7QmHHII3rrLKoDU5jYPPVDlVzLAQuF2XP+X9pZs9HG5rvMuRqRw== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Philip Kaludercic writes: > Yes, and I began implementing a different approach (as mentioned on the > emacs-devel thread), which I have since abandoned. If you haven't > written anything yet, and don't insist on it, I could propose to start > sketching out your suggestions. Sure! I was thinking we could start from a very basic command, call it `vc-prepare-patch` as per your suggestion. Since VC uses generics, we can dispatch to backend-specific implementations, something like this, with Git: 1. `M-x vc-prepare-patch` 2. Dispatch to `vc-git-prepare-patch` 3. Git wants a revision range, so interactively prompt for that (e.g. `HEAD^`, `abcd1234..ghjk5678`, or `-1`) 4. `call-process` to `git format-patch $REV`, and so forth, get the list of files. 5. Loop each file in `message-mode`. `C-c C-c` sends and goes to the next patch, `C-c C-k` cancels the whole thing. Once the file opens in message-mode, most likely we need to strip the magic From header from the beginning of the mail. Then we ensure don't do any nasty whitespace removal or wrapping. Most likely, depending on the backend, we should not require any parameters besides the "set of changes". For instance, in Git you can configure `git-format-patch` in the git configuration for several attributes, like --to=, --annotate, --prefix, etc. I don't remember how Mercurial works with this. Probably similar. It should generate mbox entries as well, I think. -- Antoine Kalmbach From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 06:58:14 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 10:58:14 +0000 Received: from localhost ([127.0.0.1]:52281 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRX2T-0004mb-V3 for submit@debbugs.gnu.org; Fri, 26 Aug 2022 06:58:14 -0400 Received: from eggs.gnu.org ([209.51.188.92]:37522) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRX2S-0004mP-QA for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 06:58:13 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:60066) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRX2N-0001TH-Io; Fri, 26 Aug 2022 06:58:07 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=KBdki2H9GBUyw9oen195ROfzG/LXzLS9l3mFIColy5c=; b=IRjY5RwRU36j s/9mz8Azpfmcm0xdOQR5sgD90GhleW7pRJninuuj/yg4SzzaordOuQ5i3rkUG4A/0ThrPmIiEcx7R Wha0zKQvqlNTR1FeZQkAndnGn1SZc6cb6Ht/l88Ln0ibRtKk70s6g2ract0i2QhJ0kS24LiWBe/j6 1nmPzZHtKbHkVRqlva8rIfGK3hpw+LiPVuc21qTQzcraQ1aAoiG9+O+q5Sf26hTOfelWrlhtLT8u2 RVWaKUHEvWGJJoImapcLCm0BPFJON0QmTBT86opn8gzURP6oCRfnczAtHoWX0TJssrXoyR/VmOif2 YckpUMBpSzkF1MJqKlfdzQ==; Received: from [87.69.77.57] (port=2689 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRX2M-0002bo-R7; Fri, 26 Aug 2022 06:58:07 -0400 Date: Fri, 26 Aug 2022 13:58:19 +0300 Message-Id: <83sflj1dbo.fsf@gnu.org> From: Eli Zaretskii To: Antoine Kalmbach In-Reply-To: (message from Antoine Kalmbach on Fri, 26 Aug 2022 13:45:51 +0300) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: 57400@debbugs.gnu.org > From: Antoine Kalmbach > Date: Fri, 26 Aug 2022 13:45:51 +0300 > > 1. `M-x vc-prepare-patch` > 2. Dispatch to `vc-git-prepare-patch` > 3. Git wants a revision range, so interactively prompt for that > (e.g. `HEAD^`, `abcd1234..ghjk5678`, or `-1`) Please allow the user to specify the range of commits in a log-like display, e.g. by having mark and point around them. It makes no sense to force users to type revisions in the Git syntax, and come up with the SHA1 codes on top of that. VC is supposed to be a convenient UI, not just a dumb front-end to the VCS. > 4. `call-process` to `git format-patch $REV`, and so forth, get the > list of files. By "list of files" do you mean the list of patch files? > 5. Loop each file in `message-mode`. `C-c C-c` sends and goes to the > next patch, `C-c C-k` cancels the whole thing. Please don't hard-code message-mode. Please honor the user setting of mail-user-agent instead. Also, I'm not sure why we'd need to send each patch file separately. Why not add them one by one as attachments to the same email message? > Most likely, depending on the backend, we should not require any > parameters besides the "set of changes". If you allow to specify that via the region, all your problems are solved, and the only one that remains is how to express that in the backend-specific syntax. From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 07:26:43 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 11:26:43 +0000 Received: from localhost ([127.0.0.1]:52461 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRXU2-0001Xf-QD for submit@debbugs.gnu.org; Fri, 26 Aug 2022 07:26:43 -0400 Received: from mout02.posteo.de ([185.67.36.66]:52139) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRXU1-0001XR-2D for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 07:26:41 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id F234E240101 for <57400@debbugs.gnu.org>; Fri, 26 Aug 2022 13:26:33 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1661513195; bh=IGboPacd35yaV+GCg9Nojg7ej1Xd12KRqsZoXKhglVY=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=Q0U+ZmydCPYa3/T9ouERO5MCsxQ9tebbDXZfMckckGapuL2gtOzFmAdT6MEjxR2pr eTknE/WfPnPorDc7jRZa8+sN5gz/ib0MyCYGP4VJuJhKmi2ds6k1ygsAnb/D9hgKqb M+MbjTU81UWCd+QyI7ZV5yG83rSYxuDio68AH7K98zQDZfo08kdMBZfDTCyUwXeOO5 RhMzgxuSSrIHhVTAFgtL6oLMTnLBZQwRWpSInnmariN0xRPMRjyPlwibhZSTIoquo/ bow6eeU+7XMZVGBkTbjYw6JDMwofK6YB5w/OE7YiEemH2D2Z4U6kK1UvkAjRT7jy9b JUpl/fPGvEmjg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MDcwm2rRhz6tpm; Fri, 26 Aug 2022 13:26:29 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83sflj1dbo.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 26 Aug 2022 13:58:19 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Fri, 26 Aug 2022 11:26:29 +0000 Message-ID: <87fshjmeje.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: >> 5. Loop each file in `message-mode`. `C-c C-c` sends and goes to the >> next patch, `C-c C-k` cancels the whole thing. > > Please don't hard-code message-mode. Please honor the user setting of > mail-user-agent instead. Is there a generic way to handle any mail-user-agent? E.g. if you want to add attachments, is there any better way that just doing a case distinction on known user agent implementations? > Also, I'm not sure why we'd need to send each patch file separately. > Why not add them one by one as attachments to the same email message? This wouldn't work if we are sending patches to a mailing list that assumes patches are sent out by git send-email, and that the messages can be filtered through git am. From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 07:44:30 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 11:44:30 +0000 Received: from localhost ([127.0.0.1]:52499 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRXlF-0004B2-Nq for submit@debbugs.gnu.org; Fri, 26 Aug 2022 07:44:30 -0400 Received: from eggs.gnu.org ([209.51.188.92]:43962) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRXlD-0004Am-9W for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 07:44:28 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:49216) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRXl8-0002QV-1E; Fri, 26 Aug 2022 07:44:22 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=sj7xkH0y82D11HQZ/KtR2tkM3NSPrUpKQbGSRI1pJIA=; b=j0BUiRCUx7Iu gkouCsNXlKeI+vCQIvvnvq32sWNMi55h9ouFkr2zioQ2lkFFbYgNAnE6p/GsDb/cmUuwzez990+Zl 1lwdq9lelu/nAQ7oaFzoZJ0jZEPl7QDUlPGQiSqsPfw7SUOpuCsHc1z6yaqSPJ2RABReeXsH75D/J eg/rH53UYK3B3PGaVO2VEGG8LK3sc4UM0s7KuL6j0lVSUNrz9CWgFEqIMXwhGAydLNz0anQA98ava UccPVAI0mtMJz8sNPGtmEpEwO8wdUceCeV5LXq0d2JE2aiVRmwFjK3Jp1y1AukYB+e+fNsgDOfgHm sT2jaUIElPsJUa0Dv91+lg==; Received: from [87.69.77.57] (port=1622 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRXl7-0007Jx-7t; Fri, 26 Aug 2022 07:44:21 -0400 Date: Fri, 26 Aug 2022 14:44:34 +0300 Message-Id: <83mtbr1b6l.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87fshjmeje.fsf@posteo.net> (message from Philip Kaludercic on Fri, 26 Aug 2022 11:26:29 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Philip Kaludercic > Cc: Antoine Kalmbach , 57400@debbugs.gnu.org > Date: Fri, 26 Aug 2022 11:26:29 +0000 > > Eli Zaretskii writes: > > >> 5. Loop each file in `message-mode`. `C-c C-c` sends and goes to the > >> next patch, `C-c C-k` cancels the whole thing. > > > > Please don't hard-code message-mode. Please honor the user setting of > > mail-user-agent instead. > > Is there a generic way to handle any mail-user-agent? For some value of "generic way to handle", yes. For example, compose-mail does that. > E.g. if you want to add attachments, is there any better way that > just doing a case distinction on known user agent implementations? Not sure about attachments, but we could either add another property to mail-user-agent, like we do with composefunc property, or dispatch on the agent itself. > > Also, I'm not sure why we'd need to send each patch file separately. > > Why not add them one by one as attachments to the same email message? > > This wouldn't work if we are sending patches to a mailing list that > assumes patches are sent out by git send-email, and that the messages > can be filtered through git am. "git am" handles attachments without any problems, I do it all the time. But I don't object to having optional behaviors here. My point is that we should allow sending all the patches together, as that is the preferred/usual practice in Emacs development. From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 08:05:18 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 12:05:18 +0000 Received: from localhost ([127.0.0.1]:52547 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRY5N-0000gV-PJ for submit@debbugs.gnu.org; Fri, 26 Aug 2022 08:05:18 -0400 Received: from mout02.posteo.de ([185.67.36.66]:41999) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRY5M-0000gF-1w for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 08:05:16 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 07E37240106 for <57400@debbugs.gnu.org>; Fri, 26 Aug 2022 14:05:09 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1661515510; bh=N38R6UoP3m4mn/EtwaAZtYa5KDCKQoHK375FWtK/H7I=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=hYRtH2Q6Bw46TkyqehQy3Jae4G0YsbClteSTSMLeLwYrjS1L4beVkTWzSb04RBEmo Rrinx3uGXR+xMK/rBxfLQSafKjuhJGwZh0OCn7nHwH8ytJuG0sCf9cIwi1St9IRaWg Bw9zegWIKj5rLkwm2TV6JmUEuh8I41Sv9Z8NSOOZZtNi9h49IJnt9c5uamP8S7fwcN nrLF6Pub8AWkU5xFc/7z5sOoZCA6+5Si6TdxuvVf0UK3HdK/tGBURfN2zred+FnBBR RuiO21vcJLXx6pqbtT2LqF00ziu4r0j+KxiTThBurgtqd4i8kO0B6C091KJSyV6hqM HWjUcCDu03EHw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MDdnK17k6z6tm6; Fri, 26 Aug 2022 14:05:08 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83mtbr1b6l.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 26 Aug 2022 14:44:34 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Fri, 26 Aug 2022 12:05:07 +0000 Message-ID: <87tu5zky6k.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: > >> From: Philip Kaludercic >> Cc: Antoine Kalmbach , 57400@debbugs.gnu.org >> Date: Fri, 26 Aug 2022 11:26:29 +0000 >> >> Eli Zaretskii writes: >> >> >> 5. Loop each file in `message-mode`. `C-c C-c` sends and goes to the >> >> next patch, `C-c C-k` cancels the whole thing. >> > >> > Please don't hard-code message-mode. Please honor the user setting of >> > mail-user-agent instead. >> >> Is there a generic way to handle any mail-user-agent? > > For some value of "generic way to handle", yes. For example, > compose-mail does that. > >> E.g. if you want to add attachments, is there any better way that >> just doing a case distinction on known user agent implementations? > > Not sure about attachments, but we could either add another property > to mail-user-agent, like we do with composefunc property, or dispatch > on the agent itself. That sounds like a good approach. >> > Also, I'm not sure why we'd need to send each patch file separately. >> > Why not add them one by one as attachments to the same email message? >> >> This wouldn't work if we are sending patches to a mailing list that >> assumes patches are sent out by git send-email, and that the messages >> can be filtered through git am. > > "git am" handles attachments without any problems, I do it all the > time. Only if the MUA can recognise the patch and pipe it into a git am process. But if we are trying to re-create the behaviour of "git send-email" (as I think is necessary if we want the feature to be of use outside of Emacs circles, such as sending a patch to the Linux Kernel Mailing List), then we need to consider people using clients like Mutt or Aerc (https://aerc-mail.org/) that just pipe the entire message through "git am". > But I don't object to having optional behaviors here. My point is > that we should allow sending all the patches together, as that is the > preferred/usual practice in Emacs development. Of course, the idea that was proposed on emacs-devel was to have this behaviour be controlled by a (file-local) variable that could be set on a per-project basis. From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 08:08:06 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 12:08:06 +0000 Received: from localhost ([127.0.0.1]:52552 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRY86-0000kw-F5 for submit@debbugs.gnu.org; Fri, 26 Aug 2022 08:08:06 -0400 Received: from lahtoruutu.iki.fi ([185.185.170.37]:35098) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRY84-0000km-MV for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 08:08:05 -0400 Received: from qfinm256.local (unknown [66.159.213.92]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: ane) by lahtoruutu.iki.fi (Postfix) with ESMTPSA id 0965D1B001A3; Fri, 26 Aug 2022 15:08:01 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1661515682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=h9T/CxzmtzzZ5hdxv6vOKSpom383IT4/xPma8fzAwcA=; b=LEgXK4FTMxq50Wrmp/qVZtQemT2d6PRI4C9pAxZSt2WumyAurNV6UTD+mD5PzOjjkHjh3y 5tFyoR/BOd/MA6UwHnLlBlj6Yezw5tJ0g4E1uOS9XG3ikXjK8bc0yceamTbUY9aF88gNaF am7RIW0VHj+nbeoKhIX727ieEbVAhFRjthE8gSBQ9mgGWBJutG5N2phvDk6Vaj+iPAWrep nV5fAlG7AxuWEgSwhvS7A8u0dKs4Z/e6WKNDWi0IflKtHMcURWFFEB+Rc5qyZkU41sXfl7 aTQGru/p9ClXJWBs8M7b4iGaY78PJFELA9bVKUtIwJmZUCSi6Q/t2m3LFVfQhg== From: Antoine Kalmbach To: Eli Zaretskii , Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83mtbr1b6l.fsf@gnu.org> References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> Date: Fri, 26 Aug 2022 15:08:01 +0300 Message-ID: MIME-Version: 1.0 Content-Type: text/plain ARC-Seal: i=1; s=lahtoruutu; d=iki.fi; t=1661515682; a=rsa-sha256; cv=none; b=hPQJ9rSANsWiWoxhsFSYepuVMw6e7Q+NwwwSGekS9EZdarmJCoXesg5aNk9H3OWE10y/Zi JDdLJ7GE30C1H4RXQSK1vuAu2EqGnVRwg/JQRguTvOLfV6jViG9luLb6AY8+YI/KiKqoBF 8b68bvmAtTcxOKL5x7yH+ODgEO0IJTAMlIqVBvu+H6VvL9CavAzwmfArjpzIJxjyim3BBp SyBlcFwkCiHNS26+IzUJkcpcWT+7EAwRw7A3Q1ZUTMcGibwQikxZN1fYHLkb7MD0o3MSPE dhsuFio/Wk1vQQRbEAYksy5pdGjoW6x6aezjRaHkgtyVqCYeULEO2iejZi2UMQ== ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=ane smtp.mailfrom=ane@iki.fi ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1661515682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=h9T/CxzmtzzZ5hdxv6vOKSpom383IT4/xPma8fzAwcA=; b=wcd7/vHNKbEiTNo83IVf7XIQD7gG+918G1ACSYTJ8y64ubnyJ+cfdYyS8vNFO/+KvKeLKD l86r5LTebZueimX6AjRMx4wL+HExoDqIRu7r5VU2Tn7cM5SoQDLTJ8G/9LoubyWr9B8cEO F3y6hFoHAlz/p47GRlf1VbTpFLEULLfgu3RULXMiw1y9iiUZU6EtjbXdlocXeqGpPJv4RP ngtlk50qIHmzv0nmr9qijBj0DZuT/CGljtLzQjjv/PR65wneNUOnmIbsq6OO9uO7p0SHSX 0YZ3FSfcR7EHOffaSCAPRVHnSHi/DauuhM+AJDjlpvl2LH5ls8pUSiC6PWmDIA== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Eli Zaretskii writes: >> > Also, I'm not sure why we'd need to send each patch file separately. >> > Why not add them one by one as attachments to the same email message? >> >> This wouldn't work if we are sending patches to a mailing list that >> assumes patches are sent out by git send-email, and that the messages >> can be filtered through git am. > > "git am" handles attachments without any problems, I do it all the > time. > But you have to save the attached .patch files and then run git am on those. Typically, without attachments, you'd run `git am` on the message (mbox) directly. Each mail is a patch in that sense, and a separate cover letter is sent first when there's some introductory words that need to be said. > But I don't object to having optional behaviors here. My point is > that we should allow sending all the patches together, as that is the > preferred/usual practice in Emacs development. Yes, but users would have to apply the customization to get the Emacs way of working, I think. -- Antoine Kalmbach From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 08:27:05 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 12:27:05 +0000 Received: from localhost ([127.0.0.1]:52578 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRYQS-0003QN-Rp for submit@debbugs.gnu.org; Fri, 26 Aug 2022 08:27:05 -0400 Received: from eggs.gnu.org ([209.51.188.92]:52826) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRYQJ-0003Ph-7U for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 08:27:03 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:48598) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRYQC-0001Su-2J; Fri, 26 Aug 2022 08:26:48 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=j75ebuoETUl5EB6MMwv1Ny3z9GHtem4fflJ+w5LTwag=; b=CXAJ2wUOD2LS x6MKWN9IEjJplh4NdXNLTU8mHOfv0rRyth7cYL0W3ylrpDF7urqQtHFbyUkfpxjWVrZRh0sAJIoBj CJKG0Anf/MnU1tbcAB9/iV1fWeaA864v0I7GwjvrQyHf1rpdR4hihgk5yhwAB9j+CbPE8DBoGpp+E aBS9Iq3Ri9W8eK8s6EJeKNPd1ZyziOwnXMmsrydb6KvT/RBFY+vboffKVTEdu/kCgxCHZ/ci0AID1 jUM0LvlLX2dFuVU0AxMJ8OowU6NYJXSfpO15Inn1F2D+P6tptohOjlpJC6X2oWSmuujEL05dWhN4W /zKMjnNJc0N4CznpFmy4xQ==; Received: from [87.69.77.57] (port=4450 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRYQA-0008Dg-NI; Fri, 26 Aug 2022 08:26:47 -0400 Date: Fri, 26 Aug 2022 15:26:59 +0300 Message-Id: <83lerb197w.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87tu5zky6k.fsf@posteo.net> (message from Philip Kaludercic on Fri, 26 Aug 2022 12:05:07 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> <87tu5zky6k.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Philip Kaludercic > Cc: ane@iki.fi, 57400@debbugs.gnu.org > Date: Fri, 26 Aug 2022 12:05:07 +0000 > > >> > Also, I'm not sure why we'd need to send each patch file separately. > >> > Why not add them one by one as attachments to the same email message? > >> > >> This wouldn't work if we are sending patches to a mailing list that > >> assumes patches are sent out by git send-email, and that the messages > >> can be filtered through git am. > > > > "git am" handles attachments without any problems, I do it all the > > time. > > Only if the MUA can recognise the patch and pipe it into a git am > process. What do you mean by "MUA can recognize" here? which Emacs MUA recognizes Git-formatted patches and applies them? What I do is invoke "M-|" and send the region to "git am". That requires myself to recognize the patches, not the MUA I use. > But if we are trying to re-create the behaviour of "git > send-email" (as I think is necessary if we want the feature to be of use > outside of Emacs circles, such as sending a patch to the Linux Kernel > Mailing List), then we need to consider people using clients like Mutt > or Aerc (https://aerc-mail.org/) that just pipe the entire message > through "git am". Do you intend to provide a VC front-end to applying the patch-set, as part of this job? Because if not, what happens on the receiving end is out of the scope of the feature we are discussing. > > But I don't object to having optional behaviors here. My point is > > that we should allow sending all the patches together, as that is the > > preferred/usual practice in Emacs development. > > Of course, the idea that was proposed on emacs-devel was to have this > behaviour be controlled by a (file-local) variable that could be set on > a per-project basis. We should have a user option that doesn't require project.el (project.el can override it, of course). There should be no requirement to use project.el to send patches from VC. From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 08:28:31 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 12:28:31 +0000 Received: from localhost ([127.0.0.1]:52583 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRYRr-0003Si-Gv for submit@debbugs.gnu.org; Fri, 26 Aug 2022 08:28:31 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51146) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRYRq-0003SU-Jz for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 08:28:30 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:43308) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRYRk-0001qk-Jh; Fri, 26 Aug 2022 08:28:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=+4C2I85h2nxFR/yQ0V8X8mczO6C4+/KDeTDxJNhevUU=; b=MxiYE3zmgNXz CN4zbcXHqEE3UA24ZUzkzr0b14zS4E9N4cjTwmgZPKOvfsIR7UHqKAGR28kC3YGZvH8hmnCBz7Mjz PcKj3SoLX5TvMgxGaqXust1bl6lFuwvw/Qcl15JRPBr8T5+h/Im2W+QxGKZLVymgzXyda0eONag/Y cOwbIRFE8r/Jep7L3C3D1KB2E8DGA8babOlXKRP5otNDJaliPYZGEgl2iFyFxgfZHkAOWXHSTkkqj VS88iH9ozshG0fvA7Xg6hKZwK1m/VG+AtXdd+rPM50TeEIT6iwlTNYG0tlAkJ7XlJo5j0Mo4iCliS fmgQOrmhLC6YU+XzJs5WSA==; Received: from [87.69.77.57] (port=4551 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRYRj-0002cM-4g; Fri, 26 Aug 2022 08:28:23 -0400 Date: Fri, 26 Aug 2022 15:28:36 +0300 Message-Id: <83k06v1957.fsf@gnu.org> From: Eli Zaretskii To: Antoine Kalmbach In-Reply-To: (message from Antoine Kalmbach on Fri, 26 Aug 2022 15:08:01 +0300) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Antoine Kalmbach > Cc: 57400@debbugs.gnu.org > Date: Fri, 26 Aug 2022 15:08:01 +0300 > > Eli Zaretskii writes: > > >> > Also, I'm not sure why we'd need to send each patch file separately. > >> > Why not add them one by one as attachments to the same email message? > >> > >> This wouldn't work if we are sending patches to a mailing list that > >> assumes patches are sent out by git send-email, and that the messages > >> can be filtered through git am. > > > > "git am" handles attachments without any problems, I do it all the > > time. > > But you have to save the attached .patch files and then run git am on > those. No, I just use M-| from Emacs. > > But I don't object to having optional behaviors here. My point is > > that we should allow sending all the patches together, as that is the > > preferred/usual practice in Emacs development. > > Yes, but users would have to apply the customization to get the Emacs > way of working, I think. You are now arguing about the default value of that option? Let's delay that until the feature is done and the option is available, okay? From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 09:11:08 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 13:11:08 +0000 Received: from localhost ([127.0.0.1]:52664 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRZ75-0002kk-Qa for submit@debbugs.gnu.org; Fri, 26 Aug 2022 09:11:08 -0400 Received: from meesny.iki.fi ([195.140.195.201]:35572) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRZ70-0002kH-35 for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 09:11:06 -0400 Received: from qfinm256.local (unknown [66.159.213.92]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: ane) by meesny.iki.fi (Postfix) with ESMTPSA id 4E8BE200BF; Fri, 26 Aug 2022 16:10:59 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=meesny; t=1661519460; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=OblYlGQm2sjzpdxUde/M1vQxHVUlqdFYPi5Xq0Kx5e4=; b=hY0UcjH0UBCh32mpQmJCZ4GFaaMEzjVwu5Z5/Q0zBfqBz+UhWzp6vLf6B2/FzK4ACJ296d EupWg8S13WyNJJKnp6WGA+3AtNvk1iHIJZ94xE8QUGk9H3x60GOF/ESqzB7EKbyPnADftR AHaqDhjHe0ffhL8063pvsQZFR7Gap1w= From: Antoine Kalmbach To: Eli Zaretskii , Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83lerb197w.fsf@gnu.org> References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> <87tu5zky6k.fsf@posteo.net> <83lerb197w.fsf@gnu.org> Date: Fri, 26 Aug 2022 16:10:58 +0300 Message-ID: MIME-Version: 1.0 Content-Type: text/plain ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=meesny; t=1661519460; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=OblYlGQm2sjzpdxUde/M1vQxHVUlqdFYPi5Xq0Kx5e4=; b=jTcdTRay/HRCeJHLGc2lXpNAp/xRwp3odkyQXRnGcliEIs1IbsGjLIFrZ+jv0hn79LKCUM L4VGYX10O7fX2pSDgWz5xAPYbiRLV8sifuCccMYv2tALh4lzHtwqJzbL8x5uroonGXZ9CB h7zbw1dhs8siG127PbbiqLfOgEAmJ0U= ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=ane smtp.mailfrom=ane@iki.fi ARC-Seal: i=1; s=meesny; d=iki.fi; t=1661519460; a=rsa-sha256; cv=none; b=yeiWVAlWMkkDpsTK5IHpmqbyFx6VNqb5modI4nJMtF7ksjOVSRoBx849XSnNSCbvQXM1+L hK/lEtAVEtJyZJBbAHzhXqMrPunioQpVxa2+Yl4CkpgcSkHQ6Ch8zgBVaFvqOhhDoH45pz 2NFjzIL3SQvBZEWiGFnDOTTKsBg+5FI= X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eli Zaretskii writes: >> Only if the MUA can recognise the patch and pipe it into a git am >> process. > > What do you mean by "MUA can recognize" here? which Emacs MUA > recognizes Git-formatted patches and applies them? I don't think any does. Insofar as Mutt and Aerc are concerned, all they provide is functionality for syntax highlighting the diff and then a command for piping the message. Emacs can do, and does, both of those. (At least Gnus highlights patch blocks.) > What I do is invoke "M-|" and send the region to "git am". That > requires myself to recognize the patches, not the MUA I use. If the patch is attached, you open the patch, mark it, and then M-| git am, right? The standard Git approach is to just pipe the whole message, expecting the patch to be in the email directly. Or even with attachments, can you actually mark the whole email buffer and pipe that? > Do you intend to provide a VC front-end to applying the patch-set, as > part of this job? Because if not, what happens on the receiving end > is out of the scope of the feature we are discussing. > Having a complementary `vc-apply-patch` wouldn't be a bad idea, but I think we should do the sending part first. > > We should have a user option that doesn't require project.el > (project.el can override it, of course). There should be no > requirement to use project.el to send patches from VC. I think Philip means directory-local variables, not project.el. -- Antoine Kalmbach From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 09:17:07 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 13:17:07 +0000 Received: from localhost ([127.0.0.1]:52670 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRZCq-0002uJ-KT for submit@debbugs.gnu.org; Fri, 26 Aug 2022 09:17:07 -0400 Received: from eggs.gnu.org ([209.51.188.92]:43196) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRZCl-0002tj-HY for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 09:17:03 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:60084) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRZCg-0003FZ-8U; Fri, 26 Aug 2022 09:16:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=6hMsKX2V3qmNAJWOZyuSAjBsm/lzrjPQZ/+zH90fLh4=; b=QDjl9SoLZ4FD AtLPRjFMq0vFaN4fgxYkO1RiLUmfEf6wHEQbdd/asaIyOcWsIMQoMRW/NEZJcVRA2VoI0J3dRjeoK 1OOPDaroaIsD6Warw+Oeu+uMbZmQgDgwRMHdzdP85MSv2teJJZCPVQCOg4tlwsyGVinlh/aNwFuqt HIrx20RjNpWV0W+XEkCGwWsTxu/2X4y8IBpPw7BEQOkQpDmwZgDOQQU3Gkki6uixKpT9es7n5pWUh Sk6+l1wIgQ8lRe/BEvRFm2L4v8/TiA0nd4IRZjXZVirgQwxcZAIj6lY2E69kpeKe6TqhF2coj3R1h A+BUDWkbGpdQRlL0fyJkGw==; Received: from [87.69.77.57] (port=4774 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRZCf-0004el-O8; Fri, 26 Aug 2022 09:16:54 -0400 Date: Fri, 26 Aug 2022 16:17:07 +0300 Message-Id: <83ilmf16wc.fsf@gnu.org> From: Eli Zaretskii To: Antoine Kalmbach In-Reply-To: (message from Antoine Kalmbach on Fri, 26 Aug 2022 16:10:58 +0300) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> <87tu5zky6k.fsf@posteo.net> <83lerb197w.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Antoine Kalmbach > Cc: 57400@debbugs.gnu.org > Date: Fri, 26 Aug 2022 16:10:58 +0300 > > > What I do is invoke "M-|" and send the region to "git am". That > > requires myself to recognize the patches, not the MUA I use. > > If the patch is attached, you open the patch, mark it, and then M-| git > am, right? Yes (modulo "cd .." to the right directory). > The standard Git approach is to just pipe the whole message, > expecting the patch to be in the email directly. The patch attachments can all be shown inline, since they are text, and then you can pipe the entire message, yes. > Or even with attachments, can you actually mark the whole email buffer > and pipe that? I think I once did that, and it worked. Not sure. But if you intend to provide/improve what happens on the receiving end as well, then Emacs could filter the irrelevant parts from what it sends down the "git am" pipe. > > Do you intend to provide a VC front-end to applying the patch-set, as > > part of this job? Because if not, what happens on the receiving end > > is out of the scope of the feature we are discussing. > > Having a complementary `vc-apply-patch` wouldn't be a bad idea, but > I think we should do the sending part first. Fine by me. > > We should have a user option that doesn't require project.el > > (project.el can override it, of course). There should be no > > requirement to use project.el to send patches from VC. > > I think Philip means directory-local variables, not project.el. Once we have an option, it can be included in directory-local variables, right? From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 09:29:41 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 13:29:41 +0000 Received: from localhost ([127.0.0.1]:52726 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRZP3-0003FF-7A for submit@debbugs.gnu.org; Fri, 26 Aug 2022 09:29:41 -0400 Received: from mout01.posteo.de ([185.67.36.65]:39965) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRZP0-0003F1-Pm for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 09:29:39 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id E9E9F240027 for <57400@debbugs.gnu.org>; Fri, 26 Aug 2022 15:29:30 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1661520572; bh=/KExMXW469SfSsKOCSvgCt7yeNANQktNhFk3ZGF/jEQ=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=IRb8y/RCRw/+AKBehFvxmqSBh8yRzAINbDKj7bhxAamjl62QHW1iSdf3TGqLutpRl tTOCCXaCDutw/IerIlzRCUsJvbzLQK8OfHhEMWfMYos0fYvZoAmvYu6lh/zRbFzxy7 1x+lwjc8xWmjGw7Cg+H6yCRenpYKzjYBgM0tf3pYUrsRS/S/I4I9v6f+hAnR8LVrgQ 1dls/noQvu5KLV5RViP0CgHcaLiO/ejwotGeNU96Sc1rmo+C+YEHsxS0mvxYIHzWGE 4p9YydXX+jD773jBicyylMUq3JEF7nncQzEepyViA/N8vwWRQmyq2hqvIUHkhjTRjh o40RDYU9kNftA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MDgfd4W8Zz9rxK; Fri, 26 Aug 2022 15:29:27 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83lerb197w.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 26 Aug 2022 15:26:59 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> <87tu5zky6k.fsf@posteo.net> <83lerb197w.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Fri, 26 Aug 2022 13:29:22 +0000 Message-ID: <87y1vbjfpp.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: > >> From: Philip Kaludercic >> Cc: ane@iki.fi, 57400@debbugs.gnu.org >> Date: Fri, 26 Aug 2022 12:05:07 +0000 >> >> >> > Also, I'm not sure why we'd need to send each patch file separately. >> >> > Why not add them one by one as attachments to the same email message? >> >> >> >> This wouldn't work if we are sending patches to a mailing list that >> >> assumes patches are sent out by git send-email, and that the messages >> >> can be filtered through git am. >> > >> > "git am" handles attachments without any problems, I do it all the >> > time. >> >> Only if the MUA can recognise the patch and pipe it into a git am >> process. > > What do you mean by "MUA can recognize" here? which Emacs MUA > recognizes Git-formatted patches and applies them? The MUA recognizes the patch as a an attachment. E.g. in Gnus the patch is highlighted and "|" is bound to a command that pipes the contents of the attachment through a command. > What I do is invoke "M-|" and send the region to "git am". That > requires myself to recognize the patches, not the MUA I use. I hadn't considered that, but again, if we are thinking about preparing messages that are sent out to other developers using other MUAs, then I don't know if this kind of functionality is available. >> But if we are trying to re-create the behaviour of "git >> send-email" (as I think is necessary if we want the feature to be of use >> outside of Emacs circles, such as sending a patch to the Linux Kernel >> Mailing List), then we need to consider people using clients like Mutt >> or Aerc (https://aerc-mail.org/) that just pipe the entire message >> through "git am". > > Do you intend to provide a VC front-end to applying the patch-set, as > part of this job? Because if not, what happens on the receiving end > is out of the scope of the feature we are discussing. No, this is just about sending patches, but if the patches sent out are of no use to the developers receiving them, then the feature is not as useful as it could be. >> > But I don't object to having optional behaviors here. My point is >> > that we should allow sending all the patches together, as that is the >> > preferred/usual practice in Emacs development. >> >> Of course, the idea that was proposed on emacs-devel was to have this >> behaviour be controlled by a (file-local) variable that could be set on >> a per-project basis. > > We should have a user option that doesn't require project.el > (project.el can override it, of course). There should be no > requirement to use project.el to send patches from VC. There should be no need for project.el, this could just be set in dir .dir-locals.el file in emacs.git. But I don't think there is an actual issue here, the plan has been all along to provide both kinds of patches (git am-style, attached) to be sent out. From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 10:21:16 2022 Received: (at 57400) by debbugs.gnu.org; 26 Aug 2022 14:21:16 +0000 Received: from localhost ([127.0.0.1]:54219 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRaCx-00052e-KY for submit@debbugs.gnu.org; Fri, 26 Aug 2022 10:21:15 -0400 Received: from eggs.gnu.org ([209.51.188.92]:58244) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRaCv-00052P-6K for 57400@debbugs.gnu.org; Fri, 26 Aug 2022 10:21:13 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:36196) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRaCp-0005W5-GZ; Fri, 26 Aug 2022 10:21:07 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=8+GkyZOSosE94pQSq0RvUlS8q03RX3uTXXNTPmRQJpE=; b=NtThQO80RVHC FyDO56Qvw/d6jQ+gKWSRkFBhRBOz3zqP521kmhXEErkkRX+QRu9OilnOFxqzL20xWkRimVSR3sndO ZJqegBP0VPZsR7SS+1VsNn5cKEVDxzL5Q4bQuRKRkGUmTXzolNJu6Uo0gANsFagPt62zdLsiUJvwJ f71pXd1Nmy/SHfiMSpnkVCFJjKi7xQTtbz7hyzSJGVA56gtpC1oAHB3PLB+BxxRhaS6bz7t1jrAMZ O6/P/Jg+SQNYc2INmWdvUrEAUIvjeTCSpvocJm/VV+tX0LMXuPS7UQKSQul5A5PMhX+9cmX9Xgc2s CQll4o1x8W5Dakx0/qInKw==; Received: from [87.69.77.57] (port=4713 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRaCo-0002RM-St; Fri, 26 Aug 2022 10:21:07 -0400 Date: Fri, 26 Aug 2022 17:21:19 +0300 Message-Id: <83h71z13xc.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87y1vbjfpp.fsf@posteo.net> (message from Philip Kaludercic on Fri, 26 Aug 2022 13:29:22 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> <87tu5zky6k.fsf@posteo.net> <83lerb197w.fsf@gnu.org> <87y1vbjfpp.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Philip Kaludercic > Cc: ane@iki.fi, 57400@debbugs.gnu.org > Date: Fri, 26 Aug 2022 13:29:22 +0000 > > >> Only if the MUA can recognise the patch and pipe it into a git am > >> process. > > > > What do you mean by "MUA can recognize" here? which Emacs MUA > > recognizes Git-formatted patches and applies them? > > The MUA recognizes the patch as a an attachment. E.g. in Gnus the patch > is highlighted and "|" is bound to a command that pipes the contents of > the attachment through a command. > > > What I do is invoke "M-|" and send the region to "git am". That > > requires myself to recognize the patches, not the MUA I use. > > I hadn't considered that, but again, if we are thinking about preparing > messages that are sent out to other developers using other MUAs, then I > don't know if this kind of functionality is available. I fail to see how other MUAs used by other developers are relevant here. We are talking about sending patches, not receiving them. Sending them as attachments is a known, and frequently required or preferred, technique. How the patches are handled on the receiving end is a separate problem, but it already has its solution, because people send patches as attachments all over the place. > >> But if we are trying to re-create the behaviour of "git > >> send-email" (as I think is necessary if we want the feature to be of use > >> outside of Emacs circles, such as sending a patch to the Linux Kernel > >> Mailing List), then we need to consider people using clients like Mutt > >> or Aerc (https://aerc-mail.org/) that just pipe the entire message > >> through "git am". > > > > Do you intend to provide a VC front-end to applying the patch-set, as > > part of this job? Because if not, what happens on the receiving end > > is out of the scope of the feature we are discussing. > > No, this is just about sending patches, but if the patches sent out are > of no use to the developers receiving them, then the feature is not as > useful as it could be. They cannot be "of no use", because these practices are already in use, regardless of whether Emacs does or doesn't support them. From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 27 04:21:47 2022 Received: (at 57400) by debbugs.gnu.org; 27 Aug 2022 08:21:47 +0000 Received: from localhost ([127.0.0.1]:55114 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRr4d-0003tW-62 for submit@debbugs.gnu.org; Sat, 27 Aug 2022 04:21:47 -0400 Received: from mout01.posteo.de ([185.67.36.65]:45001) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRr4b-0003tC-8B for 57400@debbugs.gnu.org; Sat, 27 Aug 2022 04:21:45 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 8FCDB240026 for <57400@debbugs.gnu.org>; Sat, 27 Aug 2022 10:21:39 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1661588499; bh=X0pIJ1jvqVDNvEICBGFS+z1IPgEiq6yRRJmNQyzNWW8=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=PeUF7VIoHMK3mcCMtHLN3DE8g7+/N4G8u7Bj1cw+NPiXVU8dmlcZzAduwy56AMs5Z 1/4PmOZ7628Xc/lmP6h/Foo9b+El5AE3ry75SJF2XAF55qffwQp9mR3Vo0E/XRlIFs yc1HV7LwcBBPCjh7nePnlI/LbnqtDjr9789U4InY/YDxhgNgO2mPsSFsVqgipcOFz8 ZKMWoFB5HDGgMF6s+upvY7fbYp8fpflzVP+c49MGxv2PBqfrg4oSLRfGVZZUDIqOtQ 29feAY0DOL/7YRlZN9ds+UCkXHQttZJIIFkU96zK0Y2nDXtN+pK8kNTQGIzOjabJbC 6rNQTCcDjw/ow== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MF8my3Q3sz6trK; Sat, 27 Aug 2022 10:21:37 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83h71z13xc.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 26 Aug 2022 17:21:19 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> <87tu5zky6k.fsf@posteo.net> <83lerb197w.fsf@gnu.org> <87y1vbjfpp.fsf@posteo.net> <83h71z13xc.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Sat, 27 Aug 2022 08:21:36 +0000 Message-ID: <87v8qecd0v.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: > >> From: Philip Kaludercic >> Cc: ane@iki.fi, 57400@debbugs.gnu.org >> Date: Fri, 26 Aug 2022 13:29:22 +0000 >> >> >> Only if the MUA can recognise the patch and pipe it into a git am >> >> process. >> > >> > What do you mean by "MUA can recognize" here? which Emacs MUA >> > recognizes Git-formatted patches and applies them? >> >> The MUA recognizes the patch as a an attachment. E.g. in Gnus the patch >> is highlighted and "|" is bound to a command that pipes the contents of >> the attachment through a command. >> >> > What I do is invoke "M-|" and send the region to "git am". That >> > requires myself to recognize the patches, not the MUA I use. >> >> I hadn't considered that, but again, if we are thinking about preparing >> messages that are sent out to other developers using other MUAs, then I >> don't know if this kind of functionality is available. > > I fail to see how other MUAs used by other developers are relevant > here. We are talking about sending patches, not receiving them. > Sending them as attachments is a known, and frequently required or > preferred, technique. How the patches are handled on the receiving > end is a separate problem, but it already has its solution, because > people send patches as attachments all over the place. But there are plenty of projects that will only accept patches formatted and sent by "git send-email". If you send them an attachment with a patch, they might complain and ask you to send it back again using "git send-email". Once again, I don't think we disagree on anything substantial here. You have already said that it is fine to implement support for both, and everything beyond that should not matter for the proposal. From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 27 05:21:00 2022 Received: (at 57400) by debbugs.gnu.org; 27 Aug 2022 09:21:00 +0000 Received: from localhost ([127.0.0.1]:55185 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRrzw-0005OJ-A8 for submit@debbugs.gnu.org; Sat, 27 Aug 2022 05:21:00 -0400 Received: from eggs.gnu.org ([209.51.188.92]:45588) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRrzu-0005O5-H0 for 57400@debbugs.gnu.org; Sat, 27 Aug 2022 05:20:59 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:59206) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRrzp-0000SL-3h; Sat, 27 Aug 2022 05:20:53 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=bfmgng26w30d7WAiCf4+Unka1PpTacOm+0104xvwCFI=; b=CRCsTjTjx2Kh PGfvEdq4Lu7RirXYnMmtTZkBG6npgj5qC0pgnT/8MAQeoxI9rzHUYaEJuUkfaNTPRprx9/P01wKTk DFeGD9r/ozNhqLgc0guxZRHdTirg4z0ac/KZs8H8j1NZ38EHvSb1UXTmO1TolOGEMzp64+m9e9HVF QPk1cacav/trYyGmQhEFvMZHrpGwOHFfHrMHmgJWY8Yd1IqzsBzVoWYmMxpKAPajvHXHspAmReaRt mOJ4yfUJAcLKze1DjXByy/ow4GQzN2Zfy6Zk4gy0lz+LQNdO84AlPphH1r885gLgVFCG/wTdrtvgQ /OFs+/KCXt/xSXpcgU9U1g==; Received: from [87.69.77.57] (port=2782 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oRrzo-0002Np-HK; Sat, 27 Aug 2022 05:20:52 -0400 Date: Sat, 27 Aug 2022 12:21:08 +0300 Message-Id: <83zgfqyrcr.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87v8qecd0v.fsf@posteo.net> (message from Philip Kaludercic on Sat, 27 Aug 2022 08:21:36 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> <87tu5zky6k.fsf@posteo.net> <83lerb197w.fsf@gnu.org> <87y1vbjfpp.fsf@posteo.net> <83h71z13xc.fsf@gnu.org> <87v8qecd0v.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Philip Kaludercic > Cc: ane@iki.fi, 57400@debbugs.gnu.org > Date: Sat, 27 Aug 2022 08:21:36 +0000 > > But there are plenty of projects that will only accept patches > formatted and sent by "git send-email". If you send them an attachment > with a patch, they might complain and ask you to send it back again > using "git send-email". > > Once again, I don't think we disagree on anything substantial here. You > have already said that it is fine to implement support for both, and > everything beyond that should not matter for the proposal. So why are we still arguing? From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 27 05:31:04 2022 Received: (at 57400) by debbugs.gnu.org; 27 Aug 2022 09:31:04 +0000 Received: from localhost ([127.0.0.1]:55198 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRs9g-0007q0-Hj for submit@debbugs.gnu.org; Sat, 27 Aug 2022 05:31:04 -0400 Received: from mout02.posteo.de ([185.67.36.66]:46529) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oRs9e-0007pT-3Z for 57400@debbugs.gnu.org; Sat, 27 Aug 2022 05:31:02 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 1698B240101 for <57400@debbugs.gnu.org>; Sat, 27 Aug 2022 11:30:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1661592656; bh=px8sLp4CDRYZjOTierpIuIzOGMYN7jc6rxN1LuWR/64=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=dEoOT/GKAtDL0EsRWsxpycPpaQJnYT6ATT1XnRFZN8ZWErLaimQflknwtGw7o1OUN orzVXa4iqn+/Xkx+lpWjtxdTceda/iQ+95DvOBp0rf7wr0WfLQQ01LKMMunx1Prf3n MGqbJ76mIeADI7buf32ar0bpuff2pnXAacWCGkBAK803bofQN1vNU6ql54J0V0Rn78 L7dETVuNWCG6DBRpSd3K4cMRJIRlf5GuFoEvLa+/Vt4nTHugQMOyvzCnqbpVDg//hy hicN6wAlALjOXj9wgTy5BpYlXCtK9ZpNBAWYeCA1ZAgqzIejl0bBqGIH4yxiJ49LCf XCn6yqd+ms1Mg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MFBJv19Twz9rxd; Sat, 27 Aug 2022 11:30:53 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83zgfqyrcr.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 27 Aug 2022 12:21:08 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <83sflj1dbo.fsf@gnu.org> <87fshjmeje.fsf@posteo.net> <83mtbr1b6l.fsf@gnu.org> <87tu5zky6k.fsf@posteo.net> <83lerb197w.fsf@gnu.org> <87y1vbjfpp.fsf@posteo.net> <83h71z13xc.fsf@gnu.org> <87v8qecd0v.fsf@posteo.net> <83zgfqyrcr.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Sat, 27 Aug 2022 09:30:53 +0000 Message-ID: <87k06uc9te.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: > >> From: Philip Kaludercic >> Cc: ane@iki.fi, 57400@debbugs.gnu.org >> Date: Sat, 27 Aug 2022 08:21:36 +0000 >> >> But there are plenty of projects that will only accept patches >> formatted and sent by "git send-email". If you send them an attachment >> with a patch, they might complain and ask you to send it back again >> using "git send-email". >> >> Once again, I don't think we disagree on anything substantial here. You >> have already said that it is fine to implement support for both, and >> everything beyond that should not matter for the proposal. > > So why are we still arguing? I don't know. From debbugs-submit-bounces@debbugs.gnu.org Sun Aug 28 00:07:13 2022 Received: (at 57400) by debbugs.gnu.org; 28 Aug 2022 04:07:13 +0000 Received: from localhost ([127.0.0.1]:57416 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oS9Zp-0007KK-3k for submit@debbugs.gnu.org; Sun, 28 Aug 2022 00:07:13 -0400 Received: from eggs.gnu.org ([209.51.188.92]:54382) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oS9Zm-0007K5-1q for 57400@debbugs.gnu.org; Sun, 28 Aug 2022 00:07:12 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:56204) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oS9Zf-0000ME-LG; Sun, 28 Aug 2022 00:07:03 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:To:From: mime-version; bh=ff3xVRAKxUPNfxAuv606tScbB/8BEV748HaS1cn4X7Y=; b=e7U1shFdOeYM Mf+EzIqib3FVTtyPS/LJyHQi2aNkq6Be61oTeBlqKVSOlx3ntnoFP+kBKuRmBgp7VwkX3fOHz1ATe m9hwRle+qYGU5D6FzsbIW/UJtR415LRDgRX7VsoRG5vAnH5vuF/kZ5mwYfBtIbjcqhSW34GMz61RT OMFi4PTBLeu6LSjE5f9j8ieZrbMjGCjPbb/hTEaoJah9W9msvCyuSP/M7IVcc2WEp5cx/S8eiJc16 mnC03d+KdO93sfDyzvBCcAT8WlU14gUFKms10c7cgJ20iRGAwERY8wLvBqlYxaKHZQChkXRoqT0Gh 8ywHBuiyDRjnhiptWE2DGQ==; Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1oS9Ze-0004Zh-It; Sun, 28 Aug 2022 00:07:02 -0400 Content-Type: text/plain; charset=Utf-8 From: Richard Stallman To: Antoine Kalmbach In-Reply-To: (message from Antoine Kalmbach on Fri, 26 Aug 2022 13:45:51 +0300) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> Message-Id: Date: Sun, 28 Aug 2022 00:07:02 -0400 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: rms@gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > 1. `M-x vc-prepare-patch` > 2. Dispatch to `vc-git-prepare-patch` That would happen if the file uses git, Please implement a default alternative that works generically for other VC systems. > 3. Git wants a revision range, so interactively prompt for that > (e.g. `HEAD^`, `abcd1234..ghjk5678`, or `-1`) > 4. `call-process` to `git format-patch $REV`, and so forth, get the > list of files. > 5. Loop each file in `message-mode`. `C-c C-c` sends and goes to the > next patch, `C-c C-k` cancels the whole thing. `message-mode' is one of Emacs's packages for composing mail. Please use `compose-mail' so that you use whichever one the user has selected. I think you can insert the patch text into the composition buffer after `compose-mail' returns, and it will work with either of the two usual mail composition packages. -- Dr Richard Stallman (https://stallman.org) Chief GNUisance of the GNU Project (https://gnu.org) Founder, Free Software Foundation (https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org) From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 03 14:59:23 2022 Received: (at 57400) by debbugs.gnu.org; 3 Oct 2022 18:59:23 +0000 Received: from localhost ([127.0.0.1]:51726 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofQew-0000Ly-RF for submit@debbugs.gnu.org; Mon, 03 Oct 2022 14:59:23 -0400 Received: from mout01.posteo.de ([185.67.36.65]:44189) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofQeu-0000Lg-Gp for 57400@debbugs.gnu.org; Mon, 03 Oct 2022 14:59:21 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 63802240028 for <57400@debbugs.gnu.org>; Mon, 3 Oct 2022 20:59:14 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664823554; bh=SlZ1K0apbE2dG2ZBaQu4zge0AWypMjGnWVYB0tF5jW8=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=bNxRQAmqLGZtxoz7fYjx2bmsHWboho70pGO6/RsnbOVKHzRgRJ/isWtU+z5UpXcYF I9KRgktFXTGmLSuT5KRWZEEngAwrMTW/gm3EIa9YYvGwh4dtmgavVmM+XWugnFbAgJ Fs+FKwU+349da47EjxqxbIBlqv9U1HI+EAXiTtoxk5CEQC6g3nffWfY0MM5Pi8n9sM WTHCgX55byQNsvC+5lyFF+IgtCFjAT0cJIGpAO46ibU7ICCQID2Xampo6bsTcXjBkm /IAlSQdjFQeoYkNSZgyrte6kAncds6pfKcFl2JHC8pvqO2G/BaP7xUjLTxLEcCjyus seJj812g9iimg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Mh99Y3Yx2z6tmM; Mon, 3 Oct 2022 20:59:10 +0200 (CEST) From: Philip Kaludercic To: Antoine Kalmbach Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: (Antoine Kalmbach's message of "Fri, 26 Aug 2022 13:45:51 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Mon, 03 Oct 2022 18:59:09 +0000 Message-ID: <87y1twvima.fsf@posteo.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-=-= Content-Type: text/plain Antoine Kalmbach writes: > Philip Kaludercic writes: > >> Yes, and I began implementing a different approach (as mentioned on the >> emacs-devel thread), which I have since abandoned. If you haven't >> written anything yet, and don't insist on it, I could propose to start >> sketching out your suggestions. > > Sure! I was thinking we could start from a very basic command, call it > `vc-prepare-patch` as per your suggestion. Since VC uses generics, we > can dispatch to backend-specific implementations, something like this, > with Git: > > 1. `M-x vc-prepare-patch` > 2. Dispatch to `vc-git-prepare-patch` > 3. Git wants a revision range, so interactively prompt for that > (e.g. `HEAD^`, `abcd1234..ghjk5678`, or `-1`) > 4. `call-process` to `git format-patch $REV`, and so forth, get the > list of files. > 5. Loop each file in `message-mode`. `C-c C-c` sends and goes to the > next patch, `C-c C-k` cancels the whole thing. Sorry for the delay, here is a first approximation of this idea: --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-Add-a-command-to-send-patches.patch >From a350b7cbd1b61925c687b501c6251a8ef4fb5549 Mon Sep 17 00:00:00 2001 From: Philip Kaludercic Date: Mon, 3 Oct 2022 20:54:38 +0200 Subject: [PATCH] Add a command to send patches * lisp/vc/vc-git.el (vc-git-prepare-patch): Add Git implementation. * lisp/vc/vc.el (vc-read-revision): Add a MULTIPLE argument. (vc-read-multiple-revisions): Add an auxiliary function that always calls 'vc-read-revision' with a non-nil value for MULTIPLE. (vc-compose-patches-inline): Add user option. (message-goto-body): Declare function. (message--name-table): Declare function. (vc-compose-patch): Add command. (bug#57400) --- lisp/vc/vc-git.el | 27 ++++++++++++++++++ lisp/vc/vc.el | 70 ++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 93 insertions(+), 4 deletions(-) diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index f5ac43f536..439e82b12e 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -1705,6 +1705,33 @@ vc-git-extra-status-menu (defun vc-git-root (file) (vc-find-root file ".git")) +(defun vc-git-prepare-patch (rev) + (with-temp-buffer + (call-process vc-git-program nil t nil "format-patch" + "--no-numbered" "--stdout" + ;; From gitrevisions(7): ^ means the th parent + ;; (i.e. ^ is equivalent to ^1). As a + ;; special rule, ^0 means the commit itself and + ;; is used when is the object name of a tag + ;; object that refers to a commit object. + (concat rev "^0")) + (let (filename subject body) + ;; Save the patch in a temporary file if required + (when (bound-and-true-p vc-compose-patches-inline) + (setq filename (make-temp-file "vc-git-prepare-patch")) + (write-region nil nil filename)) ;FIXME: Clean up + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^Subject: \\(.+\\)") + (setq subject (match-string 1)) + ;; Extract the patch body + (search-forward-regexp "\n\n") + (setq body (buffer-substring (point) (point-max))) + ;; Return the extracted data + (list :filename filename + :subject subject + :body body)))) + ;; grep-compute-defaults autoloads grep. (declare-function grep-read-regexp "grep" ()) (declare-function grep-read-files "grep" (regexp)) diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index 24300e014a..e990f51a91 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -574,6 +574,14 @@ ;; containing FILE-OR-DIR. The optional REMOTE-NAME specifies the ;; remote (in Git parlance) whose URL is to be returned. It has ;; only a meaning for distributed VCS and is ignored otherwise. +;; +;; - prepare-patch (rev) +;; +;; Prepare a patch and return a property list with the keys +;; `:subject' indicating the patch message as a string, `:body' +;; containing the contents of the patch as a string (excluding the +;; header) and `:filename' pointing to a file where the patch has +;; been stored. ;;; Changes from the pre-25.1 API: ;; @@ -1910,7 +1918,7 @@ vc-diff-internal (defvar vc-revision-history nil "History for `vc-read-revision'.") -(defun vc-read-revision (prompt &optional files backend default initial-input) +(defun vc-read-revision (prompt &optional files backend default initial-input multiple) (cond ((null files) (let ((vc-fileset (vc-deduce-fileset t))) ;FIXME: why t? --Stef @@ -1920,9 +1928,16 @@ vc-read-revision (let ((completion-table (vc-call-backend backend 'revision-completion-table files))) (if completion-table - (completing-read prompt completion-table - nil nil initial-input 'vc-revision-history default) - (read-string prompt initial-input nil default)))) + (funcall + (if multiple #'completing-read-multiple #'completing-read) + prompt completion-table nil nil initial-input 'vc-revision-history default) + (let ((answer (read-string prompt initial-input nil default))) + (if multiple + (split-string answer "[ \t]*,[ \t]*") + answer))))) + +(defun vc-read-multiple-revisions (prompt &optional files backend default initial-input) + (vc-read-revision prompt files backend default initial-input t)) (defun vc-diff-build-argument-list-internal (&optional fileset) "Build argument list for calling internal diff functions." @@ -3243,6 +3258,53 @@ vc-update-change-log (vc-call-backend (vc-responsible-backend default-directory) 'update-changelog args)) +(defcustom vc-compose-patches-inline nil + "Non-nil means that `vc-compose-patch' creates a single message." + :type 'boolean + :safe #'booleanp) + +(declare-function message-goto-body "message" (&optional interactive)) +(declare-function message--name-table "message" (orig-string)) + +;;;###autoload +(defun vc-compose-patch (addressee subject revisions) + "Compose a message sending REVISIONS to ADDRESSEE with SUBJECT." + (interactive (save-current-buffer + (require 'message) + (vc-ensure-vc-buffer) + (let ((revs (vc-read-multiple-revisions "Revisions: ")) to) + (while (null (setq to (completing-read-multiple + "Whom to send: " + (message--name-table "")))) + (message "At least one addressee required.") + (sit-for 1)) + (list (string-join to ", ") + (read-string "Subject: " "[PATCH] " nil nil t) + revs)))) + (require 'message) + (save-current-buffer + (vc-ensure-vc-buffer) + (let ((patches (mapcar (lambda (rev) + (vc-call-backend + (vc-responsible-backend default-directory) + 'prepare-patch rev)) + revisions))) + (if (not vc-compose-patches-inline) + (dolist (patch patches) + (compose-mail addressee (plist-get patch :subject) + nil nil nil nil + `((exit-recursive-edit))) + (message-goto-body) + (save-excursion ;don't jump to the end + (insert (plist-get patch :body))) + (recursive-edit)) + (compose-mail addressee subject) + (message-goto-body) + (dolist (patch patches) + (mml-attach-file (plist-get patch :filename) "text/x-patch")) + (message-goto-body) + (open-line 2))))) + (defun vc-default-responsible-p (_backend _file) "Indicate whether BACKEND is responsible for FILE. The default is to return nil always." -- 2.37.3 --=-=-= Content-Type: text/plain The documentation is not complete yet, and I haven't tested it yet extensively, but it fundamentally does the right thing. I am not too sure about the generic interface and the plist that `prepare-patch' returns. There might be a better way to do this, generating less garbage, but I'm stuck between trying to be VC-generic and MUA-generic which is unsurprisingly tricky. > Once the file opens in message-mode, most likely we need to strip the > magic From header from the beginning of the mail. Then we ensure > don't do any nasty whitespace removal or wrapping. > > Most likely, depending on the backend, we should not require any > parameters besides the "set of changes". For instance, in Git you can > configure `git-format-patch` in the git configuration for several > attributes, like --to=, --annotate, --prefix, etc. > > I don't remember how Mercurial works with this. Probably similar. It > should generate mbox entries as well, I think. --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 03 15:07:12 2022 Received: (at 57400) by debbugs.gnu.org; 3 Oct 2022 19:07:12 +0000 Received: from localhost ([127.0.0.1]:51735 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofQmW-0000ZB-IG for submit@debbugs.gnu.org; Mon, 03 Oct 2022 15:07:12 -0400 Received: from quimby.gnus.org ([95.216.78.240]:36996) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofQmT-0000Yy-Qw for 57400@debbugs.gnu.org; Mon, 03 Oct 2022 15:07:10 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=+2gR1QF0paqgrgugI3G4nvfZc1OLOI8D9ou77GzDJd8=; b=Q6T4X5pEMr1NfiJ+rnw6Ts3Esy POIP30Cj1xSjPgvPoS42ek2QaL8t2FGqaowrgK2IyNpOKsP3ORAlAvwUjuBhQ71ZJ5RQhrKsjqMmR 9/d+WBCRCE9BWTM2utlxT7pI/QOl1nk048wzXSM+lZiRpbBapkK7pqwtKE1ZVCwqmIJc=; Received: from [84.212.220.105] (helo=downe) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ofQmK-0003t0-9W; Mon, 03 Oct 2022 21:07:02 +0200 From: Lars Ingebrigtsen To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87y1twvima.fsf@posteo.net> (Philip Kaludercic's message of "Mon, 03 Oct 2022 18:59:09 +0000") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEUzLTSvo6aFeYH/ //+uDohvAAAAAWJLR0QDEQxM8gAAAAd0SU1FB+YKAxMEKvV79IsAAAFdSURBVCjPTZHBaoNAEIb/ LG3QvdtDT1Iw1DyFPfZWSkbUUwi0NHmKjRBovVsST1airPuU3V2NyR5m/m9n52eWgbctY6xnSrJM wCOicNPHSmU9vJ1SMlwD0FBFOs9MyAokJrsWfpBdKxKlyTAhLUARg1ONPb1wBSNhgCMXbiHIPJUc aeQCngHBtdsc4AZ0PIpBAYyDi1Gj5mAamL2oHe0GP1jBARoHzT57fu8wtyDys1/PEbwZyEVtGoLE wH5wezpC6WeTNXNQj5KvtWMjB1gmGjZjxcs0REOPoj98Y9BMtNtcGQPLixPFRlm4Uz1hOiqw4A/f ub8FXUn8y0c9DaN26hPhUuC3oGe4gWY7gY8mzfQ4/jBcn7VGMutciODa0+nLCX7tJsaBjvUe6UJW bZqGJbWE+PGrpBcKiQ6EUn22tKOA6DUGdedSQ/hBhxX6qqtaqZaqLKTZj1kg8AD8A2iXcoJUEAQV AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIyLTEwLTAzVDE5OjA0OjQyKzAwOjAwbsd08QAAACV0RVh0 ZGF0ZTptb2RpZnkAMjAyMi0xMC0wM1QxOTowNDo0MiswMDowMB+azE0AAAAASUVORK5CYII= X-Now-Playing: The Style Council's _Our Favourite Shop_: "Come To Milton Keynes" Date: Mon, 03 Oct 2022 21:06:57 +0200 Message-ID: <878rlw681a.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Philip Kaludercic writes: > Sorry for the delay, here is a first approximation of this idea: Looks good, but one question: Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Philip Kaludercic writes: > Sorry for the delay, here is a first approximation of this idea: Looks good, but one question: > +(defun vc-git-prepare-patch (rev) Do many other VCs have commands to prepare patches like this? If not, would then most of the others have a generic vc-*-prepare-patch function that just basically calls `vc-diff'? From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 03 15:23:31 2022 Received: (at 57400) by debbugs.gnu.org; 3 Oct 2022 19:23:31 +0000 Received: from localhost ([127.0.0.1]:51744 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofR2J-0000xj-Ek for submit@debbugs.gnu.org; Mon, 03 Oct 2022 15:23:31 -0400 Received: from eggs.gnu.org ([209.51.188.92]:55166) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofR2H-0000xV-IN for 57400@debbugs.gnu.org; Mon, 03 Oct 2022 15:23:30 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:56218) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofR2C-0002St-8w; Mon, 03 Oct 2022 15:23:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=jmfIipAlDz0TH5rEF/VpygWD6t8OxwPclxoo8hb2g9E=; b=O/iVj/RdjaLa QZ1kXMBEmP3w/2kBy5fOZJMH92vz5K+FLLDMPrSLYzCbr3zgp1ZWcyF8hA32SBjWwe9RZGais3Se3 rfJtWBa4QnfkBj0uZ46VsLBuN6STMNNhBNXklLZexzjRfrXbHL9YL5JBQuVWiAT9o6uNsmVTfUQ9e xVWIZ8uApUC9/dO5yqNoXhluxOCsVSHhUmQyBYJtUiV0fDhx+6s1W17kw2lyeVS5m+vrT8mCIIwMi rqULj9QPFeLoX316+ljPqsnhhl0Ipv7mqhkMjwL/ZMoFbqGQpgqF4rgdxVocXjDfgGzRLjVeZ7qtr DjVWEgOcI8u1HROYJfeUFA==; Received: from [87.69.77.57] (port=4283 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofR2A-0004KK-E8; Mon, 03 Oct 2022 15:23:22 -0400 Date: Mon, 03 Oct 2022 22:23:15 +0300 Message-Id: <83zgecww2k.fsf@gnu.org> From: Eli Zaretskii To: Lars Ingebrigtsen In-Reply-To: <878rlw681a.fsf@gnus.org> (message from Lars Ingebrigtsen on Mon, 03 Oct 2022 21:06:57 +0200) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: 57400@debbugs.gnu.org, Antoine Kalmbach > From: Lars Ingebrigtsen > Date: Mon, 03 Oct 2022 21:06:57 +0200 > > Do many other VCs have commands to prepare patches like this? Hg and bzr do have such commands. Others should indeed run vc-diff, I think. From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 03 17:22:32 2022 Received: (at 57400) by debbugs.gnu.org; 3 Oct 2022 21:22:32 +0000 Received: from localhost ([127.0.0.1]:51814 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofStT-0003v6-Mw for submit@debbugs.gnu.org; Mon, 03 Oct 2022 17:22:31 -0400 Received: from mout01.posteo.de ([185.67.36.65]:58647) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofStR-0003ut-Qm for 57400@debbugs.gnu.org; Mon, 03 Oct 2022 17:22:31 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id C7710240026 for <57400@debbugs.gnu.org>; Mon, 3 Oct 2022 23:22:23 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664832143; bh=Ms869KCsmULc4KDKPoE1UcnNBS75aoet0k6nO4wxUUQ=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=Gq2V6NE8YL9AZELRWF6lvgyZPjmKhdDeELwqEL3E4RaOHZW5544dO04icuWO5rXOa 4/zshJ7EqYIwZ4KXHm/Y8Woam3uSlnbXoIaxOR5dos3cAaHVCkUTOXhwlaUl3KjRDV cCNmR8oe+LYqgZaQMkSp/rlXmfKwFETRz4L14l6v9b66DagzACXdn/XKseT6VWofNe cZx7MTZ1WgksD13LLfo3IO58YJRWklASocMOp6zchUu4w6m620AB3al+q6w0VkfmMz N5AhD2vuYj/tbpXTmJ05+VaQ2xVKgfm7PeXE8bNs/t77a0SoEM/epL47aYF6K6MG+6 AnI/qqEealsNw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MhDLk44zhz9rxM; Mon, 3 Oct 2022 23:22:22 +0200 (CEST) From: Philip Kaludercic To: Lars Ingebrigtsen Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <878rlw681a.fsf@gnus.org> (Lars Ingebrigtsen's message of "Mon, 03 Oct 2022 21:06:57 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Mon, 03 Oct 2022 21:22:16 +0000 Message-ID: <87r0zovbzr.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: >> Cc: 57400@debbugs.gnu.org, Antoine Kalmbach >> From: Lars Ingebrigtsen >> Date: Mon, 03 Oct 2022 21:06:57 +0200 >> >> Do many other VCs have commands to prepare patches like this? > > Hg and bzr do have such commands. Yes, and I would plan to implement it for these as well (even though I have never used bzr). > Others should indeed run vc-diff, I > think. That seem possible, but for that to work I will need a generic way to detect the predecessor of a commit and extract a commit message. Currently, I am not sure if this can be done. From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 03 17:55:48 2022 Received: (at 57400) by debbugs.gnu.org; 3 Oct 2022 21:55:48 +0000 Received: from localhost ([127.0.0.1]:51854 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofTPg-00050K-4r for submit@debbugs.gnu.org; Mon, 03 Oct 2022 17:55:48 -0400 Received: from mout02.posteo.de ([185.67.36.66]:55449) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofTPc-000503-VM for 57400@debbugs.gnu.org; Mon, 03 Oct 2022 17:55:46 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id E3C15240101 for <57400@debbugs.gnu.org>; Mon, 3 Oct 2022 23:55:37 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664834138; bh=uZudC1F1RLBQLAObj+lEEKAWvD9sWfJtYeUaeLr+DF4=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=JV+/BcSLRtfJTtMk3WeZiQZlBsohWVwZUMdrWBLeooHYBcrc4HR7Lbh4ifCKIMq8A LeHC4I8nZBKmWibItadO/43tSTvIGV9TCaEdHK8Lzzr+yiVRwcd+Hl48c/3ZQZb9Wi 5Ub6jJHDmVQPXUQmTmfn6fDJbl/kpiT5I7iHpHhrPruKKj9niq5NcG2/z3Oc/I/Fkb ty2zOElKUTlRb0YFEQRd2lVgdJXfk3lgnNtu9jJymnjjHDe3n2qy8kfZyeAYvDKCqG WC+Z/n/fqKH0GIuo2miF9BCAtLnNjxAyIKNGF8c3D909Wl4WuEIJrys9RqMB2i6p1K q1nM87dD+b+fA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MhF550SN6z6tnW; Mon, 3 Oct 2022 23:55:35 +0200 (CEST) From: Philip Kaludercic To: Lars Ingebrigtsen Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87r0zovbzr.fsf@posteo.net> (Philip Kaludercic's message of "Mon, 03 Oct 2022 23:22:16 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Mon, 03 Oct 2022 21:55:35 +0000 Message-ID: <87mtacvag8.fsf@posteo.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-=-= Content-Type: text/plain Philip Kaludercic writes: > Eli Zaretskii writes: > >>> Cc: 57400@debbugs.gnu.org, Antoine Kalmbach >>> From: Lars Ingebrigtsen >>> Date: Mon, 03 Oct 2022 21:06:57 +0200 >>> >>> Do many other VCs have commands to prepare patches like this? >> >> Hg and bzr do have such commands. > > Yes, and I would plan to implement it for these as well (even though I > have never used bzr). > >> Others should indeed run vc-diff, I >> think. > > That seem possible, but for that to work I will need a generic way to > detect the predecessor of a commit and extract a commit message. > Currently, I am not sure if this can be done. I had forgotten about `previous-revision', so that was easy and I decided to fall back to a generic subject as that can be easily revised: --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-Add-a-command-to-send-patches.patch >From cfb24a0bd74d4af4e4ed86f5a0029cb7f2cf1aed Mon Sep 17 00:00:00 2001 From: Philip Kaludercic Date: Mon, 3 Oct 2022 20:54:38 +0200 Subject: [PATCH] Add a command to send patches * lisp/vc/vc-git.el (vc-git-prepare-patch): Add Git implementation. * lisp/vc/vc.el (vc-read-revision): Add a MULTIPLE argument. (vc-read-multiple-revisions): Add an auxiliary function that always calls 'vc-read-revision' with a non-nil value for MULTIPLE. (vc-compose-patches-inline): Add user option. (message-goto-body): Declare function. (message--name-table): Declare function. (vc-default-prepare-patch): Add a default implementation. (vc-compose-patch): Add command. (bug#57400) --- lisp/vc/vc-git.el | 27 ++++++++++++++ lisp/vc/vc.el | 90 ++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 113 insertions(+), 4 deletions(-) diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index f5ac43f536..439e82b12e 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -1705,6 +1705,33 @@ vc-git-extra-status-menu (defun vc-git-root (file) (vc-find-root file ".git")) +(defun vc-git-prepare-patch (rev) + (with-temp-buffer + (call-process vc-git-program nil t nil "format-patch" + "--no-numbered" "--stdout" + ;; From gitrevisions(7): ^ means the th parent + ;; (i.e. ^ is equivalent to ^1). As a + ;; special rule, ^0 means the commit itself and + ;; is used when is the object name of a tag + ;; object that refers to a commit object. + (concat rev "^0")) + (let (filename subject body) + ;; Save the patch in a temporary file if required + (when (bound-and-true-p vc-compose-patches-inline) + (setq filename (make-temp-file "vc-git-prepare-patch")) + (write-region nil nil filename)) ;FIXME: Clean up + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^Subject: \\(.+\\)") + (setq subject (match-string 1)) + ;; Extract the patch body + (search-forward-regexp "\n\n") + (setq body (buffer-substring (point) (point-max))) + ;; Return the extracted data + (list :filename filename + :subject subject + :body body)))) + ;; grep-compute-defaults autoloads grep. (declare-function grep-read-regexp "grep" ()) (declare-function grep-read-files "grep" (regexp)) diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index 24300e014a..70f1f75d00 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -574,6 +574,14 @@ ;; containing FILE-OR-DIR. The optional REMOTE-NAME specifies the ;; remote (in Git parlance) whose URL is to be returned. It has ;; only a meaning for distributed VCS and is ignored otherwise. +;; +;; - prepare-patch (rev) +;; +;; Prepare a patch and return a property list with the keys +;; `:subject' indicating the patch message as a string, `:body' +;; containing the contents of the patch as a string (excluding the +;; header) and `:filename' pointing to a file where the patch has +;; been stored. ;;; Changes from the pre-25.1 API: ;; @@ -1910,7 +1918,7 @@ vc-diff-internal (defvar vc-revision-history nil "History for `vc-read-revision'.") -(defun vc-read-revision (prompt &optional files backend default initial-input) +(defun vc-read-revision (prompt &optional files backend default initial-input multiple) (cond ((null files) (let ((vc-fileset (vc-deduce-fileset t))) ;FIXME: why t? --Stef @@ -1920,9 +1928,16 @@ vc-read-revision (let ((completion-table (vc-call-backend backend 'revision-completion-table files))) (if completion-table - (completing-read prompt completion-table - nil nil initial-input 'vc-revision-history default) - (read-string prompt initial-input nil default)))) + (funcall + (if multiple #'completing-read-multiple #'completing-read) + prompt completion-table nil nil initial-input 'vc-revision-history default) + (let ((answer (read-string prompt initial-input nil default))) + (if multiple + (split-string answer "[ \t]*,[ \t]*") + answer))))) + +(defun vc-read-multiple-revisions (prompt &optional files backend default initial-input) + (vc-read-revision prompt files backend default initial-input t)) (defun vc-diff-build-argument-list-internal (&optional fileset) "Build argument list for calling internal diff functions." @@ -3243,6 +3258,73 @@ vc-update-change-log (vc-call-backend (vc-responsible-backend default-directory) 'update-changelog args)) +(defcustom vc-compose-patches-inline nil + "Non-nil means that `vc-compose-patch' creates a single message." + :type 'boolean + :safe #'booleanp) + +(declare-function message-goto-body "message" (&optional interactive)) +(declare-function message--name-table "message" (orig-string)) + +(defun vc-default-prepare-patch (rev) + (let ((backend (vc-backend buffer-file-name)) + filename) + (with-temp-buffer + (vc-diff-internal + nil (list backend) rev + (vc-call-backend backend 'previous-revision + buffer-file-name rev) + nil t) + (when vc-compose-patches-inline + (setq filename (make-temp-file "vc-default-prepare-patch")) + (write-region nil nil filename)) + (list :filename filename :body (buffer-string))))) + +;;;###autoload +(defun vc-compose-patch (addressee subject revisions) + "Compose a message sending REVISIONS to ADDRESSEE with SUBJECT." + (interactive (save-current-buffer + (require 'message) + (vc-ensure-vc-buffer) + (let ((revs (vc-read-multiple-revisions "Revisions: ")) to) + (while (null (setq to (completing-read-multiple + "Whom to send: " + (message--name-table "")))) + (message "At least one addressee required.") + (sit-for 1)) + (list (string-join to ", ") + (read-string "Subject: " "[PATCH] " nil nil t) + revs)))) + (require 'message) + (save-current-buffer + (vc-ensure-vc-buffer) + (let ((patches (mapcar (lambda (rev) + (vc-call-backend + (vc-responsible-backend default-directory) + 'prepare-patch rev)) + revisions))) + (if (not vc-compose-patches-inline) + (dolist (patch patches) + (compose-mail addressee + (or (plist-get patch :subject) + (concat + "Patch for " ;guess + (file-name-nondirectory + (directory-file-name + (vc-root-dir))))) + nil nil nil nil + `((exit-recursive-edit))) + (message-goto-body) + (save-excursion ;don't jump to the end + (insert (plist-get patch :body))) + (recursive-edit)) + (compose-mail addressee subject) + (message-goto-body) + (dolist (patch patches) + (mml-attach-file (plist-get patch :filename) "text/x-patch")) + (message-goto-body) + (open-line 2))))) + (defun vc-default-responsible-p (_backend _file) "Indicate whether BACKEND is responsible for FILE. The default is to return nil always." -- 2.37.3 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 03 19:32:29 2022 Received: (at 57400) by debbugs.gnu.org; 3 Oct 2022 23:32:29 +0000 Received: from localhost ([127.0.0.1]:51887 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofUvF-0007Ks-G6 for submit@debbugs.gnu.org; Mon, 03 Oct 2022 19:32:29 -0400 Received: from quimby.gnus.org ([95.216.78.240]:38764) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofUvC-0007Kd-VA for 57400@debbugs.gnu.org; Mon, 03 Oct 2022 19:32:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=uJWyQCyVYgowAaWlUFnYstiA9/QGxLCJwnV38OFGB94=; b=mf1KibLid+q0mF9CIVHTcjytd6 qDn+fY/A+7ChpFIxXm2m2bfyG1dTCwF1SxOq8xgSS+oy5k6LdYEq0AVacfmC8ihItqiZn68YGPLmB NpXUZwy+2DI5zdVGvYA8d4myYA1e3PDrWC3EhEItAQOtsErfSS25o7oiAFD3dXpNfOtI=; Received: from [84.212.220.105] (helo=downe) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ofUv2-0005iN-HP; Tue, 04 Oct 2022 01:32:18 +0200 From: Lars Ingebrigtsen To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87mtacvag8.fsf@posteo.net> (Philip Kaludercic's message of "Mon, 03 Oct 2022 21:55:35 +0000") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAElBMVEWwjWtxQT+fUEzR saT49O3///+dfHtVAAAAAWJLR0QF+G/pxwAAAAd0SU1FB+YKAxceMlEzPtoAAAGRSURBVDjLfZIB YsMgCEUVcwDjLqCYAzjJAbra+59pH026dHWjasUX+BFizNzs5Cz+CcIUUB8TYEeyWao/xKPxhjtI 66t1/wrC9YmowNvoiWMki10ICe4AkZA4es82Ugwp2XQCNjjpgA2nlNgPDZ+sPwAZZmtPECydIJg4 wKnBAIGtD0j1AsyIQApP11Ts8VZhTWHlAHUOIwJ30xbQccFQjwtCT2tUMB3DPghhAK4smOIUiC7L Ud3FCKzgZ5w0pw6eEgVwdjhiFvzvpWHfToABkR5cMOBCQ4aw6TtXXjpYZq0dYuUdPNTktIfsD9GT rwEu1nZxUyCtIWoCbjidgdaPO3gK672xtNykA+JXs8wr728g6Vx5+TKNcl3yPW+u1lxdZKoun2B3 krdM91wkW1vNAJxZsuScuWZUhy6Aar4BUN3QSbpXOUCstx4BwAD1AA/Sjg+Qn6C/LsSlg09Vq/Ve tg4YX+LWXI5cI0sspOIKbOKohS7jpqGvPZUxWjpFPwXYf1VXK4mOYH3vx2H/AJnb5zdoRIS3tuUh TAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0xMC0wM1QyMzozMDo0OSswMDowMLr3pY0AAAAldEVY dGRhdGU6bW9kaWZ5ADIwMjItMTAtMDNUMjM6MzA6NDkrMDA6MDDLqh0xAAAAAElFTkSuQmCC X-Now-Playing: Scritti Politti's _Cupid & Psyche 85_: "Lover To Fall" Date: Tue, 04 Oct 2022 01:32:15 +0200 Message-ID: <874jwk5vr4.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Philip Kaludercic writes: > I had forgotten about `previous-revision', so that was easy and I > decided to fall back to a generic subject as that can be easily revised: I haven't tested it, but it looks good to me, so feel free to push when you feel it's ready (after adding documentation and a NEWS item). Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Philip Kaludercic writes: > I had forgotten about `previous-revision', so that was easy and I > decided to fall back to a generic subject as that can be easily revised: I haven't tested it, but it looks good to me, so feel free to push when you feel it's ready (after adding documentation and a NEWS item). From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 02:42:07 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 06:42:07 +0000 Received: from localhost ([127.0.0.1]:52176 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofbd0-0003Xs-Fg for submit@debbugs.gnu.org; Tue, 04 Oct 2022 02:42:06 -0400 Received: from eggs.gnu.org ([209.51.188.92]:50910) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofbcy-0003XM-Oq for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 02:42:05 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:52416) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofbcr-0007dM-D6; Tue, 04 Oct 2022 02:41:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=spPi2l0HkmIT2PS064HEp2QQnoLtLq/4ypdeHs8uWkk=; b=fYXgMRmJlJ2r bAFbCjDyMXHjXA2TsdOtIOR1Qld9eL+W0RGz6ILx2dDpd2qzbG1kViJ1Gv2J96UUVjk3BCh5nd11q XXlcxdM6x6b+QjwkTrGsqKqZCjOwyoLgGKxpzeRRfyOXb7ks8yo08dQwcpPmzZWVEpH1F9jE23GEq jwmF6I1TfN7qJGxFf8MCYPyj9dvJKFEqSRDcDCVxNRSm/LneD+2eb2L+nh9+vQ9AzImC32BzkQfNI ypceJ4FXH02w6qfmaoFnczRfLTa7oT0DDhGcLyb5e+1yAQhq33hDwrZLRnE3f/Fb8TDH8Ptxut34v f7IXtHQ503pXt0lpaZFu2w==; Received: from [87.69.77.57] (port=2191 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofbcp-0006DA-Ru; Tue, 04 Oct 2022 02:41:56 -0400 Date: Tue, 04 Oct 2022 09:41:50 +0300 Message-Id: <83r0zow0nl.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87mtacvag8.fsf@posteo.net> (message from Philip Kaludercic on Mon, 03 Oct 2022 21:55:35 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: 57400@debbugs.gnu.org, Antoine Kalmbach > From: Philip Kaludercic > Date: Mon, 03 Oct 2022 21:55:35 +0000 > > >> Others should indeed run vc-diff, I > >> think. > > > > That seem possible, but for that to work I will need a generic way to > > detect the predecessor of a commit and extract a commit message. > > Currently, I am not sure if this can be done. > > I had forgotten about `previous-revision', so that was easy and I > decided to fall back to a generic subject as that can be easily revised: Thanks. A few comments below. > +(defun vc-git-prepare-patch (rev) > + (with-temp-buffer > + (call-process vc-git-program nil t nil "format-patch" > + "--no-numbered" "--stdout" > + ;; From gitrevisions(7): ^ means the th parent > + ;; (i.e. ^ is equivalent to ^1). As a > + ;; special rule, ^0 means the commit itself and > + ;; is used when is the object name of a tag > + ;; object that refers to a commit object. > + (concat rev "^0")) This needs to set up decoding of the stuff Git outputs, because it is usually in UTF-8 (but could be in some other encoding), and the defaults could be different, depending on the locale. See vc-git-log-output-coding-system and its use elsewhere. Or maybe you should just use vc-git--call here, which handles that already, and uses process-file instead of call-process, so this will work via Tramp: an additional benefit. > + (let (filename subject body) > + ;; Save the patch in a temporary file if required > + (when (bound-and-true-p vc-compose-patches-inline) > + (setq filename (make-temp-file "vc-git-prepare-patch")) > + (write-region nil nil filename)) ;FIXME: Clean up By "clean up" did you mean delete the temporary file? > + ;; Return the extracted data > + (list :filename filename > + :subject subject > + :body body)))) I think this should include :encoding ENCODING, to provide the temporary file's encoding to the caller. The encoding should be the same as buffer-file-coding-system in the buffer which you write above. > -(defun vc-read-revision (prompt &optional files backend default initial-input) > +(defun vc-read-revision (prompt &optional files backend default initial-input multiple) This API change warrants a NEWS entry, I think. > (cond > ((null files) > (let ((vc-fileset (vc-deduce-fileset t))) ;FIXME: why t? --Stef > @@ -1920,9 +1928,16 @@ vc-read-revision > (let ((completion-table > (vc-call-backend backend 'revision-completion-table files))) > (if completion-table > - (completing-read prompt completion-table > - nil nil initial-input 'vc-revision-history default) > - (read-string prompt initial-input nil default)))) > + (funcall > + (if multiple #'completing-read-multiple #'completing-read) > + prompt completion-table nil nil initial-input 'vc-revision-history default) > + (let ((answer (read-string prompt initial-input nil default))) > + (if multiple > + (split-string answer "[ \t]*,[ \t]*") > + answer))))) > + > +(defun vc-read-multiple-revisions (prompt &optional files backend default initial-input) > + (vc-read-revision prompt files backend default initial-input t)) > > (defun vc-diff-build-argument-list-internal (&optional fileset) > "Build argument list for calling internal diff functions." > @@ -3243,6 +3258,73 @@ vc-update-change-log > (vc-call-backend (vc-responsible-backend default-directory) > 'update-changelog args)) > > +(defcustom vc-compose-patches-inline nil > + "Non-nil means that `vc-compose-patch' creates a single message." This is rather cryptic, IMO, and will benefit from more detailed description, after the initial line. Also, I suggest a slight rewording of the above sentence: If non-nil, `vc-compose-patch' will create a single email message. > + :type 'boolean > + :safe #'booleanp) The :version tag is missing. > +(declare-function message-goto-body "message" (&optional interactive)) > +(declare-function message--name-table "message" (orig-string)) Can we not force the use of message.el? Can we use mail-user-agent instead, and use its properties to find out the compose function the user has set up, like "C-x m" does? This would probably eliminate quite a few problems with user email setup, which might not support message.el. > +(defun vc-compose-patch (addressee subject revisions) > + "Compose a message sending REVISIONS to ADDRESSEE with SUBJECT." "Compose an email message to send REVISIONS to ADDRESSEE with SUBJECT." The "email" part is important, because we cannot assume the reader of the doc string is necessarily aware of the context. > + (interactive (save-current-buffer > + (require 'message) > + (vc-ensure-vc-buffer) > + (let ((revs (vc-read-multiple-revisions "Revisions: ")) to) > + (while (null (setq to (completing-read-multiple > + "Whom to send: " Instead "Whom to send:" I suggest just "Addressee:" or maybe even "Send patches to:" > + (compose-mail addressee > + (or (plist-get patch :subject) > + (concat > + "Patch for " ;guess > + (file-name-nondirectory > + (directory-file-name > + (vc-root-dir))))) > + nil nil nil nil > + `((exit-recursive-edit))) > + (message-goto-body) compose-mail doesn't necessarily invoke message.el functions, so message-goto-body is not necessarily appropriate here. From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 02:46:26 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 06:46:26 +0000 Received: from localhost ([127.0.0.1]:52185 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofbhB-0003fY-LS for submit@debbugs.gnu.org; Tue, 04 Oct 2022 02:46:25 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56360) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofbh9-0003fJ-9C for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 02:46:23 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:59908) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofbh2-0008L9-25; Tue, 04 Oct 2022 02:46:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=yvUh5T2T5uWzKc82XE/o9R6WR/OoY0mmlD4s8eQ2sV4=; b=oEBFwkNwWj1r /WM3YlYRigwRYhOL9MuY1zCuvbLuA3u7v+kVQDMaCHhiqRAzgY21+kFLIqw8jqhsUvJl4/7STa5Bi blFKC8wBTqt6WUfsvtMtn39IKJzkIgBIC6sjt6VoZAwAabADkPbC0/zVshbxzbjZoTHYBHgvzkh7l 6syhY5ggYGPrcy3ydEUxVEECyOtpPO9OlZw7FuylkFLXGhkVKivhRMuuQnvX9bf9NqeCkKeEbFZxR FiVEdlxzZeroHYlMnajWopuQx+ehL4Dtk/vVf403zo2rn0XkA8UI4l1WGnYQ7nCMQl6ONfdRnBAxq u23TESJR1abBFo/D5mW95A==; Received: from [87.69.77.57] (port=2456 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofbh1-0007ih-54; Tue, 04 Oct 2022 02:46:15 -0400 Date: Tue, 04 Oct 2022 09:46:11 +0300 Message-Id: <83pmf8w0gc.fsf@gnu.org> From: Eli Zaretskii To: Lars Ingebrigtsen , Dmitry Gutov In-Reply-To: <874jwk5vr4.fsf@gnus.org> (message from Lars Ingebrigtsen on Tue, 04 Oct 2022 01:32:15 +0200) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> <874jwk5vr4.fsf@gnus.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: 57400@debbugs.gnu.org, Antoine Kalmbach > From: Lars Ingebrigtsen > Date: Tue, 04 Oct 2022 01:32:15 +0200 > > Philip Kaludercic writes: > > > I had forgotten about `previous-revision', so that was easy and I > > decided to fall back to a generic subject as that can be easily revised: > > I haven't tested it, but it looks good to me, so feel free to push when > you feel it's ready (after adding documentation and a NEWS item). Please allow some time for patch review and comments, there's no reason to rush ahead with such a significant new feature. Ideally, Dmitry should chime in. From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 03:10:24 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 07:10:24 +0000 Received: from localhost ([127.0.0.1]:52223 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofc4O-0004I3-0n for submit@debbugs.gnu.org; Tue, 04 Oct 2022 03:10:24 -0400 Received: from mout01.posteo.de ([185.67.36.65]:55053) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofc4M-0004Hg-81 for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 03:10:23 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id B8929240027 for <57400@debbugs.gnu.org>; Tue, 4 Oct 2022 09:10:16 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664867416; bh=o9yfTlKK+/o+2dEUe2Zni0tVnlDep0SMAIlzD2iJj2c=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=UNHhSqG6f+oChqOx7r3pD3LRy1WFfL99MnqblyxDrrDBX5Lr1upjQMyRA3t0X1/q8 /8iisR0sdpmaI0dC0y/TSQ9tycTWK6uuAweSEdciCQfvDCsyQkeLu2iA9FWx4Lu5g6 KO5MbHutm1+bZshbSsu9lS7VVWaxkhZ1hGoW5Vbc125nUhJR9ZI1yJMvZg9BjfLO+1 f9Bt8fs6nfgUxd0f9uIKLdiF+jxHd+gFZEDDSYnzll7wgZewwC0dVQi6rlUTw4PWQe 0XLoJZCnZuZYhRoo//PZtKaXAB+lHTLf9LceP9AGh+iXtK1DZtTeb1+VIEP0wJyo6g n6yH1TpNl8lEg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MhTP333wPz6tmN; Tue, 4 Oct 2022 09:10:15 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83r0zow0nl.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 04 Oct 2022 09:41:50 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> <83r0zow0nl.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Tue, 04 Oct 2022 07:10:15 +0000 Message-ID: <87a66cukrs.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: >> Cc: 57400@debbugs.gnu.org, Antoine Kalmbach >> From: Philip Kaludercic >> Date: Mon, 03 Oct 2022 21:55:35 +0000 >> >> >> Others should indeed run vc-diff, I >> >> think. >> > >> > That seem possible, but for that to work I will need a generic way to >> > detect the predecessor of a commit and extract a commit message. >> > Currently, I am not sure if this can be done. >> >> I had forgotten about `previous-revision', so that was easy and I >> decided to fall back to a generic subject as that can be easily revised: > > Thanks. A few comments below. > >> +(defun vc-git-prepare-patch (rev) >> + (with-temp-buffer >> + (call-process vc-git-program nil t nil "format-patch" >> + "--no-numbered" "--stdout" >> + ;; From gitrevisions(7): ^ means the th parent >> + ;; (i.e. ^ is equivalent to ^1). As a >> + ;; special rule, ^0 means the commit itself and >> + ;; is used when is the object name of a tag >> + ;; object that refers to a commit object. >> + (concat rev "^0")) > > This needs to set up decoding of the stuff Git outputs, because it is > usually in UTF-8 (but could be in some other encoding), and the > defaults could be different, depending on the locale. See > vc-git-log-output-coding-system and its use elsewhere. > > Or maybe you should just use vc-git--call here, which handles that > already, and uses process-file instead of call-process, so this will > work via Tramp: an additional benefit. I will look into this. >> + (let (filename subject body) >> + ;; Save the patch in a temporary file if required >> + (when (bound-and-true-p vc-compose-patches-inline) >> + (setq filename (make-temp-file "vc-git-prepare-patch")) >> + (write-region nil nil filename)) ;FIXME: Clean up > > By "clean up" did you mean delete the temporary file? Yes. Another idea was to create buffers and attach those, but I still haven't decided which is preferable. >> + ;; Return the extracted data >> + (list :filename filename >> + :subject subject >> + :body body)))) > > I think this should include :encoding ENCODING, to provide the > temporary file's encoding to the caller. The encoding should be the > same as buffer-file-coding-system in the buffer which you write above. OK. >> -(defun vc-read-revision (prompt &optional files backend default initial-input) >> +(defun vc-read-revision (prompt &optional files backend default initial-input multiple) > > This API change warrants a NEWS entry, I think. More NEWS entries that just this one will be necessary. >> (cond >> ((null files) >> (let ((vc-fileset (vc-deduce-fileset t))) ;FIXME: why t? --Stef >> @@ -1920,9 +1928,16 @@ vc-read-revision >> (let ((completion-table >> (vc-call-backend backend 'revision-completion-table files))) >> (if completion-table >> - (completing-read prompt completion-table >> - nil nil initial-input 'vc-revision-history default) >> - (read-string prompt initial-input nil default)))) >> + (funcall >> + (if multiple #'completing-read-multiple #'completing-read) >> + prompt completion-table nil nil initial-input 'vc-revision-history default) >> + (let ((answer (read-string prompt initial-input nil default))) >> + (if multiple >> + (split-string answer "[ \t]*,[ \t]*") >> + answer))))) >> + >> +(defun vc-read-multiple-revisions (prompt &optional files backend default initial-input) >> + (vc-read-revision prompt files backend default initial-input t)) >> >> (defun vc-diff-build-argument-list-internal (&optional fileset) >> "Build argument list for calling internal diff functions." >> @@ -3243,6 +3258,73 @@ vc-update-change-log >> (vc-call-backend (vc-responsible-backend default-directory) >> 'update-changelog args)) >> >> +(defcustom vc-compose-patches-inline nil >> + "Non-nil means that `vc-compose-patch' creates a single message." > > This is rather cryptic, IMO, and will benefit from more detailed > description, after the initial line. Also, I suggest a slight > rewording of the above sentence: > > If non-nil, `vc-compose-patch' will create a single email message. You are right, the docstring was just a temporary fill-in so that I could specify the following user option attributes. It has to be expanded anyway. >> + :type 'boolean >> + :safe #'booleanp) > > The :version tag is missing. Thanks for the reminder. >> +(declare-function message-goto-body "message" (&optional interactive)) >> +(declare-function message--name-table "message" (orig-string)) > > Can we not force the use of message.el? Can we use mail-user-agent > instead, and use its properties to find out the compose function the > user has set up, like "C-x m" does? This would probably eliminate > quite a few problems with user email setup, which might not support > message.el. I'd like to avoid that if possible, but I don't see how. >> +(defun vc-compose-patch (addressee subject revisions) >> + "Compose a message sending REVISIONS to ADDRESSEE with SUBJECT." > > "Compose an email message to send REVISIONS to ADDRESSEE with SUBJECT." > > The "email" part is important, because we cannot assume the reader of > the doc string is necessarily aware of the context. Good point. >> + (interactive (save-current-buffer >> + (require 'message) >> + (vc-ensure-vc-buffer) >> + (let ((revs (vc-read-multiple-revisions "Revisions: ")) to) >> + (while (null (setq to (completing-read-multiple >> + "Whom to send: " > > Instead "Whom to send:" I suggest just "Addressee:" or maybe even > "Send patches to:" You are right, that sounds better. >> + (compose-mail addressee >> + (or (plist-get patch :subject) >> + (concat >> + "Patch for " ;guess >> + (file-name-nondirectory >> + (directory-file-name >> + (vc-root-dir))))) >> + nil nil nil nil >> + `((exit-recursive-edit))) >> + (message-goto-body) > > compose-mail doesn't necessarily invoke message.el functions, so > message-goto-body is not necessarily appropriate here. Oh, I thought it was because `submit-emacs-patch' did the same. Again, do you have any suggestions what else could be done to keep this generic? From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 04:00:16 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 08:00:17 +0000 Received: from localhost ([127.0.0.1]:52355 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcqe-0005dX-GM for submit@debbugs.gnu.org; Tue, 04 Oct 2022 04:00:16 -0400 Received: from eggs.gnu.org ([209.51.188.92]:59140) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcqc-0005dD-LN for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 04:00:15 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:47286) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofcqX-0004qL-1M; Tue, 04 Oct 2022 04:00:09 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=Kx/TzXHsD6qUEUBH/pPNxuj4aDvO9oFG5FLcXkcMYbo=; b=gI/e174fXg/w 0xeFx3doZEOspgk/n5MXCUdCGn3nNWjLKt+9v7j8+xezkIp8kuw3BoFZgavfK8ZcffD1key1gjKav ykajkUyMMnuVnHKYvrKgyrQ4Kq/8TyFai2otYj7bGO828iU3k1/DfQ4Ye5pUhDntq0hcWGPAqsdBw LqdSmfp+H0dOzR7fclGhv8KoKgFeIHqLHxffdml1SJziUSVmVLAN5zCd82jOUusvt6WTH7Tr1Igra 4bgbEpiB1CEcCeUg8Gn2GFs2JrIc7jrPnf2bapW1lF3Hy9DeOuPtv7hmyX8sayF/1NZWAjaUUPha6 ltpcUWtP6cjixYetWeNkpw==; Received: from [87.69.77.57] (port=3244 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofcqW-0003Ik-8Y; Tue, 04 Oct 2022 04:00:08 -0400 Date: Tue, 04 Oct 2022 11:00:03 +0300 Message-Id: <83bkqsvx18.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87a66cukrs.fsf@posteo.net> (message from Philip Kaludercic on Tue, 04 Oct 2022 07:10:15 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> <83r0zow0nl.fsf@gnu.org> <87a66cukrs.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Philip Kaludercic > Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi > Date: Tue, 04 Oct 2022 07:10:15 +0000 > > Eli Zaretskii writes: > > >> + (compose-mail addressee > >> + (or (plist-get patch :subject) > >> + (concat > >> + "Patch for " ;guess > >> + (file-name-nondirectory > >> + (directory-file-name > >> + (vc-root-dir))))) > >> + nil nil nil nil > >> + `((exit-recursive-edit))) > >> + (message-goto-body) > > > > compose-mail doesn't necessarily invoke message.el functions, so > > message-goto-body is not necessarily appropriate here. > > Oh, I thought it was because `submit-emacs-patch' did the same. Again, > do you have any suggestions what else could be done to keep this > generic? Can you ask more specific questions? Are you looking for a generic way of doing what message-goto-body does? If so, would rfc822-goto-eoh do the job? From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 06:40:35 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 10:40:35 +0000 Received: from localhost ([127.0.0.1]:52564 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1offLn-0001Nh-GK for submit@debbugs.gnu.org; Tue, 04 Oct 2022 06:40:35 -0400 Received: from mout01.posteo.de ([185.67.36.65]:38639) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1offLl-0001NR-Bh for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 06:40:34 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id CD5A2240028 for <57400@debbugs.gnu.org>; Tue, 4 Oct 2022 12:40:26 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664880027; bh=gMr7IFnGnO80mpX1ULEn/ChY+LEPxU2Pqo4zERMCRl8=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=V+v4iRUaZJuSgKqlWWFuytYALVHuG0pYBSidbbCoCHqeF6IHD1GAx7FfwDGC7xDAR BEdEXCUZPmHARWaCoxjW9x9bHhp03tjPKNQfPTjya6lvp83pzYmpz5ZoGGrtMwQICY OE3/5hxeksOXMkdHZQzMJ/98FQy7Kc/rf6usGDEZB4nqdM0RFudLYuAQAFdZKnPyqc tjXZgofGeXU0xeVXhmy/n7VCldTO9xV9eTbkd3ktXU8y4SZrr2osXQLcyXosznzh+c wghXYmiSHE4iiBcz4aPRV+hJmjbBlQg7g/2hbF6hrFUDebatKP0fXj8VGH9RdYBh4q LAjBMC99VB1oA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MhZ3X3Xm9z6tnM; Tue, 4 Oct 2022 12:40:23 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83bkqsvx18.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 04 Oct 2022 11:00:03 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> <83r0zow0nl.fsf@gnu.org> <87a66cukrs.fsf@posteo.net> <83bkqsvx18.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Tue, 04 Oct 2022 10:40:23 +0000 Message-ID: <87y1tvub1k.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: >> From: Philip Kaludercic >> Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi >> Date: Tue, 04 Oct 2022 07:10:15 +0000 >> >> Eli Zaretskii writes: >> >> >> + (compose-mail addressee >> >> + (or (plist-get patch :subject) >> >> + (concat >> >> + "Patch for " ;guess >> >> + (file-name-nondirectory >> >> + (directory-file-name >> >> + (vc-root-dir))))) >> >> + nil nil nil nil >> >> + `((exit-recursive-edit))) >> >> + (message-goto-body) >> > >> > compose-mail doesn't necessarily invoke message.el functions, so >> > message-goto-body is not necessarily appropriate here. >> >> Oh, I thought it was because `submit-emacs-patch' did the same. Again, >> do you have any suggestions what else could be done to keep this >> generic? > > Can you ask more specific questions? Are you looking for a generic > way of doing what message-goto-body does? Kind of, I would like to have some function that would place the point at the beginning of the message body, no matter what MUA is used. From what I see, the implicit assumption always is that a message is composed in a single buffer where the headers are written out at the beginning of the buffer, then there is some kind of to detect the end of the headers, followed by the body. But what if a MUA wants to use a separate buffer for the headers and the body, placing them in two separate windows? What if the headers aren't shown at all? If I want to handle the situation generically, it seems like I would have to take all the design decisions into consideration. > If so, would > rfc822-goto-eoh do the job? It doesn't seem to do the same, as in message-mode, it jumps to the beginning of the "--text follows this line--" line, not to the line after it. From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 06:42:27 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 10:42:27 +0000 Received: from localhost ([127.0.0.1]:52569 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1offNb-0001Qf-17 for submit@debbugs.gnu.org; Tue, 04 Oct 2022 06:42:27 -0400 Received: from mout01.posteo.de ([185.67.36.65]:43793) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1offNZ-0001QT-9r for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 06:42:25 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id C2E98240026 for <57400@debbugs.gnu.org>; Tue, 4 Oct 2022 12:42:19 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664880139; bh=7EGpAnm/o/dxENqeVtDGCWA7Zb6TPODgT81swUfnunE=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=OkXj/PnyJbNFrypXNr1z4Ac8t6VQ4lyYXSFCQXuipQEYUGWIZFOGo8z9ZnzjJwcpT 9ZBGELUd3qvjJxNAEbBtwZyKqzB8Xe1OyekQG8v1R6Hhsl+oQLEJDJkVOhY2AgrZ1Y 6A9k37vGPB/K6Mo9DPAnLEGMTttAOQaxmJNYbOUHJOTFayYKHrt6fnePlsIIdL0mSV fU3tLgQqLRXkD8M65NcmeK1OlVz7cEsr5Y1fVjivlNW4h+5c8xiBpwfSUeEOy0mZCl Pw7+KI9ZTziWKXLsqoQhzGNQ/2ji5g56pRXJ9o+MisWB+aAJkvABmXHYH3YSMYgkm/ cjsUf5pLYvVxA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MhZ5l2RKLz6tmr; Tue, 4 Oct 2022 12:42:19 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87y1tvub1k.fsf@posteo.net> (Philip Kaludercic's message of "Tue, 04 Oct 2022 12:40:23 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> <83r0zow0nl.fsf@gnu.org> <87a66cukrs.fsf@posteo.net> <83bkqsvx18.fsf@gnu.org> <87y1tvub1k.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Tue, 04 Oct 2022 10:42:19 +0000 Message-ID: <87tu4juayc.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Philip Kaludercic writes: > Eli Zaretskii writes: > >>> From: Philip Kaludercic >>> Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi >>> Date: Tue, 04 Oct 2022 07:10:15 +0000 >>> >>> Eli Zaretskii writes: >>> >>> >> + (compose-mail addressee >>> >> + (or (plist-get patch :subject) >>> >> + (concat >>> >> + "Patch for " ;guess >>> >> + (file-name-nondirectory >>> >> + (directory-file-name >>> >> + (vc-root-dir))))) >>> >> + nil nil nil nil >>> >> + `((exit-recursive-edit))) >>> >> + (message-goto-body) >>> > >>> > compose-mail doesn't necessarily invoke message.el functions, so >>> > message-goto-body is not necessarily appropriate here. >>> >>> Oh, I thought it was because `submit-emacs-patch' did the same. Again, >>> do you have any suggestions what else could be done to keep this >>> generic? >> >> Can you ask more specific questions? Are you looking for a generic >> way of doing what message-goto-body does? > > Kind of, I would like to have some function that would place the point > at the beginning of the message body, no matter what MUA is used. From > what I see, the implicit assumption always is that a message is composed > in a single buffer where the headers are written out at the beginning of > the buffer, then there is some kind of to detect the end of the headers, > followed by the body. But what if a MUA wants to use a separate buffer > for the headers and the body, placing them in two separate windows? > What if the headers aren't shown at all? If I want to handle the > situation generically, it seems like I would have to take all the design > decisions into consideration. Another issue is how attachments are made: mml-attach-* is part of Gnus and inserts literal text that some MUAs interpret, but is this something that all MUAs have to do? >> If so, would >> rfc822-goto-eoh do the job? > > It doesn't seem to do the same, as in message-mode, it jumps to the > beginning of the "--text follows this line--" line, not to the line > after it. From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 08:24:50 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 12:24:50 +0000 Received: from localhost ([127.0.0.1]:52818 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofgye-0006mZ-VQ for submit@debbugs.gnu.org; Tue, 04 Oct 2022 08:24:50 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56640) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofgya-0006mI-Eb for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 08:24:47 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:59206) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofgyU-000571-Fr; Tue, 04 Oct 2022 08:24:38 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=HA7+mlf+O3GkiLJRZ0vgipg85QUHgATnMfIN8HLHm+w=; b=Zjx6Aywx/CFg QHoVE13uw16f+qOdQM5UTiVZi450de5frc4cL75yrLVfK9vyJ4M79YqTg90/3SKsEeoCbSY/meSoK l1j93Oe/G4BxSl9A1Chb9jAcgRoQaDoG7wB4Pi7QIymqWEc2l7AmeS6yQJn9S7SraK5VsZOIkttoh 6BNp5fR+CEqo+HKfpbVgYWlOfVfKofWPYiO22xK1qpp++1a3HeLRQnOApP5Vv1mS3CoFDojdtsquy SWt+eid+30DYDd5yy4diGEu5+gby7kqssc1EXEmqbgxEqCgJq7pkPQsSkGh1E9ouPTHoaotNCXpVn 2ISpW4/aKzFR4tomSiuwqw==; Received: from [87.69.77.57] (port=3845 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofgyT-0007ny-UO; Tue, 04 Oct 2022 08:24:38 -0400 Date: Tue, 04 Oct 2022 15:24:34 +0300 Message-Id: <83y1tvvksd.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87y1tvub1k.fsf@posteo.net> (message from Philip Kaludercic on Tue, 04 Oct 2022 10:40:23 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> <83r0zow0nl.fsf@gnu.org> <87a66cukrs.fsf@posteo.net> <83bkqsvx18.fsf@gnu.org> <87y1tvub1k.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Philip Kaludercic > Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi > Date: Tue, 04 Oct 2022 10:40:23 +0000 > > Eli Zaretskii writes: > > > Can you ask more specific questions? Are you looking for a generic > > way of doing what message-goto-body does? > > Kind of, I would like to have some function that would place the point > at the beginning of the message body, no matter what MUA is used. From > what I see, the implicit assumption always is that a message is composed > in a single buffer where the headers are written out at the beginning of > the buffer, then there is some kind of to detect the end of the headers, > followed by the body. But what if a MUA wants to use a separate buffer > for the headers and the body, placing them in two separate windows? > What if the headers aren't shown at all? If I want to handle the > situation generically, it seems like I would have to take all the design > decisions into consideration. Do you happen to know about such MUAs? mail-user-agent currently supports just 4 MUAs: do any of them work like above? We could bite the bullet and make this operation a property of mail-user-agent, like 'composefunc' we already have (see the doc string of define-mail-user-agent for the full list). But if rfc822-goto-eoh can do the job, maybe it's "good enough"? > > If so, would > > rfc822-goto-eoh do the job? > > It doesn't seem to do the same, as in message-mode, it jumps to the > beginning of the "--text follows this line--" line, not to the line > after it. Well, moving one line after that, if this is the line you get to with that function, is easy. Don't all MUAs have that line? From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 08:25:35 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 12:25:35 +0000 Received: from localhost ([127.0.0.1]:52824 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofgzO-0006oA-SC for submit@debbugs.gnu.org; Tue, 04 Oct 2022 08:25:35 -0400 Received: from eggs.gnu.org ([209.51.188.92]:52200) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofgzM-0006nu-UH for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 08:25:33 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:58670) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofgzB-0006KV-9j; Tue, 04 Oct 2022 08:25:26 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=4NmR2w7WdkCiUq0aPMs79Dze5mCFlhlFTYuMRs9DWOY=; b=dc6Gb6nWBGlE cccrLlTSviGoAha7z7zH+KVs1jirTQj0OhrvvN5ZJBRsRzYdM+mqo/U8dTn8SC1t10+PMpW+QUZT7 8IdsQOXIIfqUzfHPglMpG2eM1gQJbDlE3sz9CoMQo25o06zLZcc8wR96VI8sfdS8h7Up4m/VHyvYM QQzvOt8Wafd9PWSEMPU3teVPCqnpP8drbOp0kcY473+MnMpPGYCXkqOy6fcLfnlhRJbAkwikGp2pz wGHBGjrDIwGCVmAAbZrvHDfQF+dyldQQgpK3hvDVxifw7mgECItQDqjtydx0qTF9gZBAJVJ6kHU7z 8/MDQCYmN28HQnPyu0VhTA==; Received: from [87.69.77.57] (port=3882 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofgyz-0007tF-PD; Tue, 04 Oct 2022 08:25:16 -0400 Date: Tue, 04 Oct 2022 15:25:06 +0300 Message-Id: <83wn9fvkrh.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87tu4juayc.fsf@posteo.net> (message from Philip Kaludercic on Tue, 04 Oct 2022 10:42:19 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> <83r0zow0nl.fsf@gnu.org> <87a66cukrs.fsf@posteo.net> <83bkqsvx18.fsf@gnu.org> <87y1tvub1k.fsf@posteo.net> <87tu4juayc.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Philip Kaludercic > Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi > Date: Tue, 04 Oct 2022 10:42:19 +0000 > > Another issue is how attachments are made: mml-attach-* is part of Gnus > and inserts literal text that some MUAs interpret, but is this something > that all MUAs have to do? How about mail-add-attachment? From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 14:08:17 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 18:08:17 +0000 Received: from localhost ([127.0.0.1]:55160 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofmL2-0005gw-JF for submit@debbugs.gnu.org; Tue, 04 Oct 2022 14:08:17 -0400 Received: from mout01.posteo.de ([185.67.36.65]:54507) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofmL1-0005gf-53 for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 14:08:15 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id C3A1F240028 for <57400@debbugs.gnu.org>; Tue, 4 Oct 2022 20:08:06 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664906888; bh=tgO99AUD4iqabVDqVG22bJxmaWq+q2NWgxFDBsJ79Ac=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=aVkvaQhuJ/rg13SIv3qDXej0NK5CUXwzkHEak+n9gamIBswDBPmC3Bt5XtG3jH4/2 MRD+BOsyjrrHJ/VURWjH/Ze4ilwGLFrHZW3SohNXOPCyXnjErP0zBCoRQr/VnfF2Yn ZmtfPBioIJj2nmtaAG2ytJU+RzhDiJGfPA+3eLfYXkB88oOH/j2JXfshXmnzUzZHWI L72jHL8k4AqcmhrwzDuA7r4aQByk3HiL2SKaB02t0sfx1ZGOT+xG6tdJhsoyQa2MyH vqTGOB88F+u5MxCG3K3aOXzTRS2t/X1wPZ9DAszgqvRB+/crBVsz6+tfigchSf2AEg t5ISmr+SIF/2g== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Mhm051s2Sz9rxN; Tue, 4 Oct 2022 20:08:05 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83y1tvvksd.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 04 Oct 2022 15:24:34 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <87r0zovbzr.fsf@posteo.net> <87mtacvag8.fsf@posteo.net> <83r0zow0nl.fsf@gnu.org> <87a66cukrs.fsf@posteo.net> <83bkqsvx18.fsf@gnu.org> <87y1tvub1k.fsf@posteo.net> <83y1tvvksd.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Tue, 04 Oct 2022 18:08:04 +0000 Message-ID: <877d1ftqbf.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) (not sure if my last message got send out, so I'll rewrite it) Eli Zaretskii writes: >> From: Philip Kaludercic >> Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi >> Date: Tue, 04 Oct 2022 10:40:23 +0000 >> >> Eli Zaretskii writes: >> >> > Can you ask more specific questions? Are you looking for a generic >> > way of doing what message-goto-body does? >> >> Kind of, I would like to have some function that would place the point >> at the beginning of the message body, no matter what MUA is used. From >> what I see, the implicit assumption always is that a message is composed >> in a single buffer where the headers are written out at the beginning of >> the buffer, then there is some kind of to detect the end of the headers, >> followed by the body. But what if a MUA wants to use a separate buffer >> for the headers and the body, placing them in two separate windows? >> What if the headers aren't shown at all? If I want to handle the >> situation generically, it seems like I would have to take all the design >> decisions into consideration. > > Do you happen to know about such MUAs? mail-user-agent currently > supports just 4 MUAs: do any of them work like above? Not to my knowledge, but my concern was that it might be possible for something like that to exist. I'll ask around to find out. > We could bite the bullet and make this operation a property of > mail-user-agent, like 'composefunc' we already have (see the doc > string of define-mail-user-agent for the full list). But if > rfc822-goto-eoh can do the job, maybe it's "good enough"? If you think so, then I'll follow that. >> > If so, would >> > rfc822-goto-eoh do the job? >> >> It doesn't seem to do the same, as in message-mode, it jumps to the >> beginning of the "--text follows this line--" line, not to the line >> after it. > > Well, moving one line after that, if this is the line you get to with > that function, is easy. Don't all MUAs have that line? Perhaps, but again not by necessity, just by (historical) chance. From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 15:19:58 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 19:19:58 +0000 Received: from localhost ([127.0.0.1]:55236 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofnSP-0001Es-N4 for submit@debbugs.gnu.org; Tue, 04 Oct 2022 15:19:58 -0400 Received: from mout01.posteo.de ([185.67.36.65]:44629) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofnSL-0001Ed-AK for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 15:19:56 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 980BA240027 for <57400@debbugs.gnu.org>; Tue, 4 Oct 2022 21:19:47 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664911187; bh=XAPJeVAiwGPU10jFGCnncr86V3HzPavCC6SkaiK8HZc=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=jLm1QmIcnUlPTQCL64VzuwUBVA8F2iqrMPAdU+yk+8l27zaJ8HZFbj4RakXjvCXq3 nD5fSv8eJPPe3QuUw6cH6MUHwttfS8LjmJlF0iWpKooKITyKf7h0Jq/LSSZctSxFwu LJq78+o68nue4UyyHwN98sMRPFgfl2E+d8ZNEPS6QfhHBY3WmHFCQSFWrz0DJFRe1u N2bPPDU0mWjYUbPAsmqpMw7xZ2y0oD5p7L1jTT4i8z3IfhZ4wV9gsQu71xZMCJe9iv IigbsC/R83YDeyJwBx9U6ycrI/nXe2ZIGiL2gWQCtvEbLCywGrp9j8VPDt+se/sKZm 0sP+R8urc7JEQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MhnZp1cY8z6tmQ; Tue, 4 Oct 2022 21:19:46 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83zgecww2k.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 03 Oct 2022 22:23:15 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <83zgecww2k.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Tue, 04 Oct 2022 19:19:45 +0000 Message-ID: <8735c3tmzy.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: Lars Ingebrigtsen , 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: >> Cc: 57400@debbugs.gnu.org, Antoine Kalmbach >> From: Lars Ingebrigtsen >> Date: Mon, 03 Oct 2022 21:06:57 +0200 >> >> Do many other VCs have commands to prepare patches like this? > > Hg and bzr do have such commands. ^ As I mentioned before, I have never used Bazaar before so I downloaded a repository to test out how patches are created and the output I get when picking out some revision is as follows: --8<---------------cut here---------------start------------->8--- rhea$ brz send --revision 6438 -o - Using saved parent location "http://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev/" to determine what changes to submit. Bundling 0 revisions. # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: pqm@pqm.ubuntu.com-20120116142737-incpbjom3tqo3hdb # target_branch: http://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev/ # testament_sha1: 0363416e18dfbea56a231638540b5f10be10c81c # timestamp: 2022-10-04 21:13:18 +0200 # base_revision_id: pqm@pqm.ubuntu.com-20120116142737-incpbjom3tqo3hdb # # Begin patch # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWdjgvvgAABJfgAAQQGFxUBIAAACv794QIABkRTaajamQyGjTaRiFGgBMBBkwQhDmaVnH5r9hMFQyJ7EUzThiw4Ixc/mQVpexbPS29yLLTxaFbWvXcN2zcydOQxpD652acQC4g4Z96jI5BipgKAAiM5Zz45Kd/4u5IpwoSGxwX3wA --8<---------------cut here---------------end--------------->8--- Which doesn't look like a patch to me. My understanding from[0] is that this is a "merge directive" indicating what change has to be made. But according to [1] a merge directive > [...] provides many things needed for requesting merges: > - A machine-readable description of the merge to perform > - An optional patch that is a preview of the changes requested > - An optional bundle of revision data, so that the changes can be applied directly from the merge directive, without retrieving data from a branch. so it might just be that my command is wrong? [0] http://doc.bazaar.canonical.com/latest/en/user-guide/sending_changes.html#creating-a-merge-directive [1] http://doc.bazaar.canonical.com/latest/en/user-reference/send-help.html From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 15:33:24 2022 Received: (at 57400) by debbugs.gnu.org; 4 Oct 2022 19:33:24 +0000 Received: from localhost ([127.0.0.1]:55246 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofnfQ-0001aN-BB for submit@debbugs.gnu.org; Tue, 04 Oct 2022 15:33:24 -0400 Received: from eggs.gnu.org ([209.51.188.92]:49702) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofnfN-0001a8-20 for 57400@debbugs.gnu.org; Tue, 04 Oct 2022 15:33:22 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:43288) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofnfF-0005Xj-Nr; Tue, 04 Oct 2022 15:33:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=GC08Rn61+bBNuUTX7pAZgQ7Asn93Qu3gMdxljXefnzE=; b=K/ylciDkk7jB JtdgxUd7yJI1yakf5BR2xhrfhcAQhAq0ZNoynrN0c/RtVIvOVu/OVRPRIyTsuGt5vHJrSM3ZfMEw8 NF20+T0ffLg6Ts6FMjvtVdeXkze1IhCrJkIxlUWx/DiN/dgyLIWYXEmCL2Fz/LkGrvPLf/F7s59EJ ButWQh4cD0AK5EqjORv8D2wGDaG1wMdZaGEveqX1wuPFXU7NGb7LUAwNWyDtjfjIKM/SkFKwTgOTf LTGGjH2MzTyGoAQc0Hq5ASEl1YFSLdBJEqDNdLC3ieZwPk3MIdi54DKTkBoyz9pHnOayKk5taFmNx fFZ0iR/PFfDqGnT+XHVveg==; Received: from [87.69.77.57] (port=3912 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ofnfE-0007ew-Qe; Tue, 04 Oct 2022 15:33:13 -0400 Date: Tue, 04 Oct 2022 22:33:09 +0300 Message-Id: <8335c3v0y2.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <8735c3tmzy.fsf@posteo.net> (message from Philip Kaludercic on Tue, 04 Oct 2022 19:19:45 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <878rlw681a.fsf@gnus.org> <83zgecww2k.fsf@gnu.org> <8735c3tmzy.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Philip Kaludercic > Cc: Lars Ingebrigtsen , 57400@debbugs.gnu.org, ane@iki.fi > Date: Tue, 04 Oct 2022 19:19:45 +0000 > > Eli Zaretskii writes: > > > Hg and bzr do have such commands. > ^ > > As I mentioned before, I have never used Bazaar before so I downloaded a > repository to test out how patches are created and the output I get when > picking out some revision is as follows: > > --8<---------------cut here---------------start------------->8--- > rhea$ brz send --revision 6438 -o - > Using saved parent location "http://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev/" to determine what changes to submit. > Bundling 0 revisions. > # Bazaar merge directive format 2 (Bazaar 0.90) > # revision_id: pqm@pqm.ubuntu.com-20120116142737-incpbjom3tqo3hdb > # target_branch: http://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev/ > # testament_sha1: 0363416e18dfbea56a231638540b5f10be10c81c > # timestamp: 2022-10-04 21:13:18 +0200 > # base_revision_id: pqm@pqm.ubuntu.com-20120116142737-incpbjom3tqo3hdb > # > # Begin patch > # Begin bundle > IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWdjgvvgAABJfgAAQQGFxUBIAAACv794QIABkRTaajamQyGjTaRiFGgBMBBkwQhDmaVnH5r9hMFQyJ7EUzThiw4Ixc/mQVpexbPS29yLLTxaFbWvXcN2zcydOQxpD652acQC4g4Z96jI5BipgKAAiM5Zz45Kd/4u5IpwoSGxwX3wA > --8<---------------cut here---------------end--------------->8--- > > Which doesn't look like a patch to me. My understanding from[0] is that > this is a "merge directive" indicating what change has to be made. But > according to [1] a merge directive > > > [...] provides many things needed for requesting merges: > > > - A machine-readable description of the merge to perform > > - An optional patch that is a preview of the changes requested > > - An optional bundle of revision data, so that the changes can be applied directly from the merge directive, without retrieving data from a branch. > > so it might just be that my command is wrong? Yes, try this instead: brz send --revision 6437..6438 -o - (Repeat after me: Bazaar is not Git, Bazaar is not Git, Bazaar is...) From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 05 12:07:11 2022 Received: (at 57400) by debbugs.gnu.org; 5 Oct 2022 16:07:11 +0000 Received: from localhost ([127.0.0.1]:57891 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og6vP-0004Wm-8R for submit@debbugs.gnu.org; Wed, 05 Oct 2022 12:07:11 -0400 Received: from lahtoruutu.iki.fi ([185.185.170.37]:40082) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og6vN-0004Wc-E2 for 57400@debbugs.gnu.org; Wed, 05 Oct 2022 12:07:10 -0400 Received: from thanatos (91-157-197-22.elisa-laajakaista.fi [91.157.197.22]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: ane) by lahtoruutu.iki.fi (Postfix) with ESMTPSA id 71E031B00126; Wed, 5 Oct 2022 19:07:06 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1664986026; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=t4Bf3zuVkXpjC9d5V/VbfavljiPShhjCzNYS3TkPfpg=; b=AEK8OlizXQu3fnxoosQPIIjMipfmyjcBLSDPuwyZaGaAahCrHNAoHEPHN8qA9UvzjS66bn oztJ3vO4gBdZ5A3VijnaGZZ9PmZsnM9BDGEDtOEDrUSTY1FM4vX83lZBjVB0wKXLk1OUQ8 eqaAJZcn6nQkumzyXdpOS56cwbysNWs+7sER1VzcXxRP8/6c7GF3fmHgv3TPdYiKRkWK2I 67SndbFZH/mHj9GgZF8gsyfDOO9vMqsLJKTz3SVOjjtKMnFGC4bKoMl3r10EWjC0LuZFTy 6g3cZxXhmFGFp5WbK8xsx9LYbwAp7xI5xZMZUoBc6ZqyMCaFN4Q+QfaqOUbryQ== From: Antoine Kalmbach To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87y1twvima.fsf@posteo.net> References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> Date: Wed, 05 Oct 2022 19:07:05 +0300 Message-ID: <84sfk2p846.fsf@iki.fi> MIME-Version: 1.0 Content-Type: text/plain ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=ane smtp.mailfrom=ane@iki.fi ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1664986026; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=t4Bf3zuVkXpjC9d5V/VbfavljiPShhjCzNYS3TkPfpg=; b=m11h4Z7GDz8GrtQs3MQsbUEedy/POJAJ7hyvv7myMr5DUBpXUOqXlMxxZzWVLG+z8GqHgw fF6s8lsGEMjDFB5eBO1US1MsOSv1g9SpHCDuJEaxo96v84fcfJkgS7vd5n4TNjj/cZOD+p vT+lleG3Rz4xXXpnDkmEOH/Xqr4s2gUeAT3/Vp2kR1EUuIvCpC6qgaQs1PiLsuGyrSAI19 XQJkLOHTkyWck46vlyWEoWRL9U/lT4ZUe0Ns6LqyOPunbKpakutYD1CVcyMM0ehDgghCIa VYGTmH2rlEOJolIo36dtgAQVn/KgUGi9bi49J4Ya9a8yNQKtwd7b6boiiSUFgw== ARC-Seal: i=1; s=lahtoruutu; d=iki.fi; t=1664986026; a=rsa-sha256; cv=none; b=ekSLwlo1poLIZfrcy8uReS3NRQwVT1/30pXllZJfURMon7O0fndL6u1g77/Wax47gFmSQM GAOhMgmqqaPytEXuNKzqDEvCe/Tt9vyeejZpM19U9HPiqfQYx5QtZ6CvgEdOP7n8qlj+uU mwNbNpxTecr8K6i6JTJ8c6zk9U6xSsZ+AbcfBvLQ9kbKgEZ8hUT0DE3GJBCBIxPXRlDUbe AByIlB1FiacEAt8+aSGMDeP836X61DKmbvtF0N97TCEGkqNlL6tDjWkazNC+37VQ6oako7 j8plWzy6XmzGir9Zp6376uDvOr7nlVzS1P9OLxOVMsOHCGMjT0Mp6FNDTTjB4Q== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Philip Kaludercic writes: > Sorry for the delay, here is a first approximation of this idea: Great news! > +(defun vc-compose-patch (addressee subject revisions) > + "Compose a message sending REVISIONS to ADDRESSEE with SUBJECT." > + (interactive (save-current-buffer Overall, this looks great. If I understand this right, this doesn't support entering revision ranges (abcd1234..ghjk568, HEAD~2, etc), but you have to input each absolute revision? I think that's actually fine, because it composes with the proposed vc-log feature of marking commits there and then applying vc-compose-patch on the commits. Trying to convert those into VCS specific revision ranges is probably asking for trouble. -- Antoine Kalmbach From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 05 13:34:36 2022 Received: (at 57400) by debbugs.gnu.org; 5 Oct 2022 17:34:36 +0000 Received: from localhost ([127.0.0.1]:57960 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og8Hz-0006ik-QJ for submit@debbugs.gnu.org; Wed, 05 Oct 2022 13:34:36 -0400 Received: from mout01.posteo.de ([185.67.36.65]:54977) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og8Hv-0006iU-KF for 57400@debbugs.gnu.org; Wed, 05 Oct 2022 13:34:34 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 9A3DE240026 for <57400@debbugs.gnu.org>; Wed, 5 Oct 2022 19:34:23 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664991265; bh=CLLYXw0kpyTMiRJ3svpndRNn339BkpuGmT5pLOhw2pM=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=dhA/O5vsVd76IE35iFnwQLtDTfVSN7Me+6U9KTG4QY6ozaGGcf4Toll86mfjZ+w14 qXMGZw98B7qqep6q7Mg7xQQ6gGhz9hlie2PzVe9WvrTphALBfmuG2+5p4HaYJIDvAr SpfTeOztOf+9lT88WD6AQXtf+/+o8qZxicXxrdX5FqJXbFTBEvoNB3W6J4PhJEbV6O io4xRd7zEMnRBHH8JSvtQC8sKwOH3Ce2408o28D1MGIorF3xKCg7HoMWtmqCDdss5G svTz4u0LH6xuCLIQg+stdfIsNZl4AIkfm/eEBTF4JWNs5NYP/+P+QB7WHgNini4+RR D/Op8pjYoNang== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MjMBk39Q4z9rxK; Wed, 5 Oct 2022 19:34:22 +0200 (CEST) From: Philip Kaludercic To: Antoine Kalmbach Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <84sfk2p846.fsf@iki.fi> (Antoine Kalmbach's message of "Wed, 05 Oct 2022 19:07:05 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Wed, 05 Oct 2022 17:34:22 +0000 Message-ID: <87h70i9ntt.fsf@posteo.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-=-= Content-Type: text/plain Here is an updated version of the patch: --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-Add-a-VC-command-to-prepare-patches.patch >From a384a0b74e8037c642ac49dbad9489fd51f6c8cd Mon Sep 17 00:00:00 2001 From: Philip Kaludercic Date: Mon, 3 Oct 2022 20:54:38 +0200 Subject: [PATCH] Add a VC command to prepare patches * doc/emacs/vc1-xtra.texi (Miscellaneous VC): Add new node. (Editing VC Commands): Document new feature. * etc/NEWS: Mention 'vc-prepare-patch'. * lisp/vc/log-view.el: Autoload 'log-view-get-marked'. * lisp/vc/vc-git.el (vc-git-prepare-patch): Add Git implementation. * lisp/vc/vc-hg.el (vc-git-prepare-patch): Add Mercurial implementation. * lisp/vc/vc-bzr.el (vc-git-prepare-patch): Add Bazaar implementation. * lisp/vc/vc.el (vc-read-revision): Add a MULTIPLE argument. (vc-read-multiple-revisions): Add an auxiliary function that always calls 'vc-read-revision' with a non-nil value for MULTIPLE. (vc-prepare-patches-inline): Add user option. (message-goto-body): Declare function. (message--name-table): Declare function. (vc-default-prepare-patch): Add a default implementation. (vc-prepare-patch): Add command. (bug#57400) --- doc/emacs/vc1-xtra.texi | 26 +++++++++ etc/NEWS | 15 +++++ lisp/vc/log-view.el | 1 + lisp/vc/vc-bzr.el | 14 +++++ lisp/vc/vc-git.el | 24 ++++++++ lisp/vc/vc-hg.el | 12 ++++ lisp/vc/vc.el | 121 ++++++++++++++++++++++++++++++++++++++-- 7 files changed, 209 insertions(+), 4 deletions(-) diff --git a/doc/emacs/vc1-xtra.texi b/doc/emacs/vc1-xtra.texi index 05d2144380..523e4611f0 100644 --- a/doc/emacs/vc1-xtra.texi +++ b/doc/emacs/vc1-xtra.texi @@ -16,6 +16,7 @@ Miscellaneous VC * Revision Tags:: Symbolic names for revisions. * Version Headers:: Inserting version control headers into working files. * Editing VC Commands:: Editing the VC shell commands that Emacs will run. +* Preparing Patches:: Preparing and Composing patches from within VC @end menu @node Change Logs and VC @@ -282,6 +283,31 @@ Editing VC Commands additional branches to the end of the @samp{git log} command that VC is about to run. +@node Preparing Patches +@subsubsection Preparing Patches + +@findex vc-prepare-patch +When collaborating on projects it is common to send patches via Email, +to share changes. If you wish to do this using VC, you can use the +@code{vc-prepare-patch} command. This will prompt you which revisions +you wish to share and who the addressee is. The command will then use +your @abbr{MUA, Mail User Agent} for you to review and send out. + +@vindex vc-prepare-patches-inline +Depending on configuration of the user option +@code{vc-prepare-patches-inline}, @code{vc-prepare-patch} will either +generate a single or multiple messages. A @code{nil} value (the default) +will prepare and display a message for each revision, one after +another. A non-@code{nil} value will have all patches attached to the +body of a single message. + +@vindex vc-default-patch-addressee +If you expect to contribute patches on a regular basis, you can set +the user option @code{vc-default-patch-addressee} to the address you +wish to use. This will be used as the default value when invoking +@code{vc-prepare-patch}. Project maintainers may consider setting +this as a directory local variable (@pxref{Directory Variables}). + @node Customizing VC @subsection Customizing VC diff --git a/etc/NEWS b/etc/NEWS index 0fa24c577c..78c607f0e9 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1846,6 +1846,14 @@ Git commands display summary lines. See the two new user options It is used to style the line that separates the 'log-edit' headers from the 'log-edit' summary. ++++ +*** New 'vc-prepare-patch' command. +Patches for any version control system can be prepared using VC. The +command will query what commits to send and will compose messages for +your mail user agent. The behaviour of 'vc-prepare-patch' can be +modified by the user options 'vc-prepare-patches-inline' and +'vc-default-patch-addressee'. + ** Message --- @@ -2043,6 +2051,13 @@ The new ':doc-spec-function' element can be used to compute the ':doc-spec' element when the user asks for info on that particular mode (instead of at load time). +** Subr-x + +--- +*** New macro 'with-funcall-substitutions'. +The macro can be used to generically substitute function symbols in +expressions. + ** Ansi-color --- diff --git a/lisp/vc/log-view.el b/lisp/vc/log-view.el index 415b1564ed..7a710386fe 100644 --- a/lisp/vc/log-view.el +++ b/lisp/vc/log-view.el @@ -359,6 +359,7 @@ log-view-toggle-mark-entry (overlay-put ov 'log-view-self ov) (overlay-put ov 'log-view-marked (nth 1 entry)))))))) +;;;###autoload (defun log-view-get-marked () "Return the list of tags for the marked log entries." (save-excursion diff --git a/lisp/vc/vc-bzr.el b/lisp/vc/vc-bzr.el index bce7996712..6f77f99555 100644 --- a/lisp/vc/vc-bzr.el +++ b/lisp/vc/vc-bzr.el @@ -1324,6 +1324,20 @@ vc-bzr-repository-url (match-string 1) (error "Cannot determine Bzr repository URL"))))) +(defun vc-bzr-prepare-patch (rev) + (with-current-buffer (generate-new-buffer " *vc-bzr-prepare-patch*") + (vc-bzr-command + "send" t 0 '() + "--revision" (concat (vc-bzr-previous-revision nil rev) ".." rev) + "--output" "-") + (let (subject) + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^[^#].*") + (setq subject (match-string 0)) + ;; Return the extracted data + (list :subject subject :buffer (current-buffer))))) + (provide 'vc-bzr) ;;; vc-bzr.el ends here diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 4a2a42ad2a..f9dae8b9ea 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -95,6 +95,7 @@ ;; - find-file-hook () OK ;; - conflicted-files OK ;; - repository-url (file-or-dir) OK +;; - prepare-patch (rev) OK ;;; Code: @@ -1742,6 +1743,29 @@ vc-git-extra-status-menu (defun vc-git-root (file) (vc-find-root file ".git")) +(defun vc-git-prepare-patch (rev) + (with-current-buffer (generate-new-buffer " *vc-git-prepare-patch*") + (vc-git-command + t 0 '() "format-patch" + "--no-numbered" "--stdout" + ;; From gitrevisions(7): ^ means the th parent + ;; (i.e. ^ is equivalent to ^1). As a + ;; special rule, ^0 means the commit itself and + ;; is used when is the object name of a tag + ;; object that refers to a commit object. + (concat rev "^.." rev)) + (let (subject) + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^Subject: \\(.+\\)") + (setq subject (match-string 1)) + ;; Jump to the beginning for the patch + (search-forward-regexp "\n\n") + ;; Return the extracted data + (list :subject subject + :buffer (current-buffer) + :body-start (point))))) + ;; grep-compute-defaults autoloads grep. (declare-function grep-read-regexp "grep" ()) (declare-function grep-read-files "grep" (regexp)) diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.el index eed9592378..2eebe2d543 100644 --- a/lisp/vc/vc-hg.el +++ b/lisp/vc/vc-hg.el @@ -80,6 +80,7 @@ ;; - delete-file (file) TEST IT ;; - rename-file (old new) OK ;; - find-file-hook () added for bug#10709 +;; - prepare-patch (rev) OK ;; 2) Implement Stefan Monnier's advice: ;; vc-hg-registered and vc-hg-state @@ -1507,6 +1508,17 @@ vc-hg-merge-branch (with-current-buffer buffer (vc-run-delayed (vc-compilation-mode 'hg))) (vc-set-async-update buffer))) +(defun vc-hg-prepare-patch (rev) + (with-current-buffer (generate-new-buffer " *vc-hg-prepare-patch*") + (vc-hg-command t 0 '() "export" "--rev" rev) + (let (subject) + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^[^#].*") + (setq subject (match-string 0)) + ;; Return the extracted data + (list :subject subject :buffer (current-buffer))))) + ;;; Internal functions (defun vc-hg-command (buffer okstatus file-or-list &rest flags) diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index f0f5ee504c..f0bd1023ac 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -574,6 +574,14 @@ ;; containing FILE-OR-DIR. The optional REMOTE-NAME specifies the ;; remote (in Git parlance) whose URL is to be returned. It has ;; only a meaning for distributed VCS and is ignored otherwise. +;; +;; - prepare-patch (rev) +;; +;; Prepare a patch and return a property list with the keys +;; `:subject' indicating the patch message as a string, `:body' +;; containing the contents of the patch as a string (excluding the +;; header) and `:filename' pointing to a file where the patch has +;; been stored. ;;; Changes from the pre-25.1 API: ;; @@ -1910,7 +1918,7 @@ vc-diff-internal (defvar vc-revision-history nil "History for `vc-read-revision'.") -(defun vc-read-revision (prompt &optional files backend default initial-input) +(defun vc-read-revision (prompt &optional files backend default initial-input multiple) (cond ((null files) (let ((vc-fileset (vc-deduce-fileset t))) ;FIXME: why t? --Stef @@ -1923,9 +1931,16 @@ vc-read-revision (completion-table (vc-call-backend backend 'revision-completion-table files))) (if completion-table - (completing-read prompt completion-table - nil nil initial-input 'vc-revision-history default) - (read-string prompt initial-input nil default)))) + (funcall + (if multiple #'completing-read-multiple #'completing-read) + prompt completion-table nil nil initial-input 'vc-revision-history default) + (let ((answer (read-string prompt initial-input nil default))) + (if multiple + (split-string answer "[ \t]*,[ \t]*") + answer))))) + +(defun vc-read-multiple-revisions (prompt &optional files backend default initial-input) + (vc-read-revision prompt files backend default initial-input t)) (defun vc-diff-build-argument-list-internal (&optional fileset) "Build argument list for calling internal diff functions." @@ -3237,6 +3252,104 @@ vc-update-change-log (vc-call-backend (vc-responsible-backend default-directory) 'update-changelog args)) +(defcustom vc-prepare-patches-inline nil + "Non-nil means that `vc-prepare-patch' creates a single message. +A single message is created by attaching all patches to the body +of a single message. If nil, each patch will be sent out in a +separate message, which will be prepared sequentially." + :type 'boolean + :safe #'booleanp + :version "29.1") + +(defcustom vc-default-patch-addressee nil + "Default addressee for `vc-prepare-patch'. +If nil, no default will be used. This option may be set locally." + :type '(choice (const :tag "No default" nil) string) + :safe #'stringp + :version "29.1") + +(declare-function message--name-table "message" (orig-string)) +(declare-function mml-attach-buffer "mml" + (buffer &optional type description disposition)) +(declare-function log-view-get-marked "log-view" ()) + +(defun vc-default-prepare-patch (rev) + (let ((backend (vc-backend buffer-file-name))) + (with-current-buffer (generate-new-buffer " *vc-default-prepare-patch*") + (vc-diff-internal + nil (list backend) rev + (vc-call-backend backend 'previous-revision + buffer-file-name rev) + nil t) + (list :subject (concat "Patch for " + (file-name-nondirectory + (directory-file-name + (vc-root-dir)))) + :buffer (current-buffer))))) + +;;;###autoload +(defun vc-prepare-patch (addressee subject revisions) + "Compose an Email sending patches for REVISIONS to ADDRESSEE. +If `vc-prepare-patches-inline' is non-nil, SUBJECT will be used +as the default subject for the message. Otherwise a separate +message will be composed for each revision. + +When invoked interactively in a Log View buffer with marked +revisions, these revisions will be used." + (interactive + (let ((revs (or (log-view-get-marked) + (vc-read-multiple-revisions "Revisions: "))) + to) + (require 'message) + (while (null (setq to (completing-read-multiple + (format-prompt + "Addressee" + vc-default-patch-addressee) + (message--name-table "") + nil nil nil nil + vc-default-patch-addressee))) + (message "At least one addressee required.") + (sit-for blink-matching-delay)) + (list (string-join to ", ") + (and vc-prepare-patches-inline + (read-string "Subject: " "[PATCH] " nil nil t)) + revs))) + (save-current-buffer + (vc-ensure-vc-buffer) + (let ((patches (mapcar (lambda (rev) + (vc-call-backend + (vc-responsible-backend default-directory) + 'prepare-patch rev)) + revisions))) + (if (not vc-prepare-patches-inline) + (dolist (patch patches) + (compose-mail addressee + (plist-get patch :subject) + nil nil nil nil + `((kill-buffer ,(plist-get patch :buffer)) + (exit-recursive-edit))) + (rfc822-goto-eoh) (forward-line) + (save-excursion ;don't jump to the end + (insert-buffer-substring + (plist-get patch :buffer) + (plist-get patch :body-start) + (plist-get patch :body-end))) + (recursive-edit)) + (compose-mail addressee subject nil nil nil nil + (mapcar + (lambda (p) + (list #'kill-buffer (plist-get p :buffer))) + patches)) + (rfc822-goto-eoh) + (forward-line) + (save-excursion + (dolist (patch patches) + (mml-attach-buffer (buffer-name (plist-get patch :buffer)) + "text/x-patch" + (plist-get patch :subject) + "attachment"))) + (open-line 2))))) + (defun vc-default-responsible-p (_backend _file) "Indicate whether BACKEND is responsible for FILE. The default is to return nil always." -- 2.37.3 --=-=-= Content-Type: text/plain It includes - some documentation for the Emacs manual and etc/NEWS, - a revised "prepare-patch" interface that uses buffers instead of temporary files (I hope this improves the encoding issue), - use log-view commits if anything is marked, - removed hard-coded `message-goto-body' calls, - added bzr and hg support, - A new user option 'vc-default-patch-addressee'. Antoine Kalmbach writes: >> +(defun vc-compose-patch (addressee subject revisions) >> + "Compose a message sending REVISIONS to ADDRESSEE with SUBJECT." >> + (interactive (save-current-buffer > > Overall, this looks great. If I understand this right, this doesn't > support entering revision ranges (abcd1234..ghjk568, HEAD~2, etc), but > you have to input each absolute revision? I think that's actually fine, > because it composes with the proposed vc-log feature of marking commits > there and then applying vc-compose-patch on the commits. Trying to > convert those into VCS specific revision ranges is probably asking for trouble. Yes, though the previous version of that patch didn't do this, and instead just passed the commit directly to "git format-patch", which isn't what the documentation claims the command does. --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 05 13:48:51 2022 Received: (at 57400) by debbugs.gnu.org; 5 Oct 2022 17:48:51 +0000 Received: from localhost ([127.0.0.1]:58013 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og8Vn-000794-J1 for submit@debbugs.gnu.org; Wed, 05 Oct 2022 13:48:51 -0400 Received: from mout01.posteo.de ([185.67.36.65]:37817) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og8Vl-00078p-FV for 57400@debbugs.gnu.org; Wed, 05 Oct 2022 13:48:50 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 6B685240028 for <57400@debbugs.gnu.org>; Wed, 5 Oct 2022 19:48:43 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664992123; bh=YTJtrJZgWnBY73Xn2tTV8wsaD1UUWBYRm9jJ01Ruo7w=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=TOjqCYa84ifLdK551+b+GIuOgrLzgIcEgwE14j+6SrHSiLCYput76bH1ncjSLQDSP vzt01nodkvWYQAcmeb5FZGFMHlrjI/VP5ZY0XcQyNSBQPvnEY/AK2df6G1PL1u0RB6 zuT8PJ5E1PgBdatyQ98zN9tr06pCrTb7J4g4MpAdOCopxOwKsSLgAvB6mH3db9pbDf puTmTzb0EKtlLPmLqw2HGyYBtvX6YkLjSmPmNuqhFDqi3VRebuAMiNl8bddDvpMyoy fgMqyNvqBlQC6fEsomA0aI66wZRRplBaMsFWs9aNGBfyqWZ/wlHR+gjq0uExp1tEfM KyOCtC2WFWWRw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MjMWG5KYDz6tmG; Wed, 5 Oct 2022 19:48:40 +0200 (CEST) From: Philip Kaludercic To: Antoine Kalmbach Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87h70i9ntt.fsf@posteo.net> (Philip Kaludercic's message of "Wed, 05 Oct 2022 19:34:22 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Wed, 05 Oct 2022 17:48:39 +0000 Message-ID: <87a66a9n60.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Philip Kaludercic writes: > Here is an updated version of the patch: Another question is if `vc-prepare-patch' should be bound to a key or not. From what I see "C-x v p" appears to be free, which might be a possible candidate. From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 05 14:18:09 2022 Received: (at 57400) by debbugs.gnu.org; 5 Oct 2022 18:18:09 +0000 Received: from localhost ([127.0.0.1]:58039 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og8y9-0007vT-Cs for submit@debbugs.gnu.org; Wed, 05 Oct 2022 14:18:09 -0400 Received: from eggs.gnu.org ([209.51.188.92]:58328) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og8y4-0007uw-T5 for 57400@debbugs.gnu.org; Wed, 05 Oct 2022 14:18:07 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:45968) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1og8xz-0006Nv-9H; Wed, 05 Oct 2022 14:17:59 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=9AH92lgfUoiLzr2aOrkyyGJJTtRDhRQiTGQqck561lk=; b=h6bCQWfDAc74 c+ktcmjD4WRJf3c8qsbe1bkGHSlTWwpb9CDfTQ/v2yKmY/F/Lm35GkmHrFP6jTwvu3I+0BF+/ZWC4 /oPvGYiJjXXjcxJT5pNJ6Gdpz0iEPIxA7iikUnfTHgTFocqcB8gc07dQjy0SUgtz+orOAAv73+4bI 4QdRSRmBJpVnboWHfjyCGS/nFgMP7NC3USKqqkLPR5rWKgmjKOm7audVqtJv7kALkOE2E37DpwcV7 Cx5VwTtTiiVf8tFje8qbibFs4Wn5atns4X7Jb4hBdeMKdd9w9h0FL4rR89gdHF1Sei5mnqru2oB1d QcA2utcQ2Z6GxRzLmYgTjQ==; Received: from [87.69.77.57] (port=1191 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1og8xy-0007yd-0N; Wed, 05 Oct 2022 14:17:58 -0400 Date: Wed, 05 Oct 2022 21:17:55 +0300 Message-Id: <83mtaarv70.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87h70i9ntt.fsf@posteo.net> (message from Philip Kaludercic on Wed, 05 Oct 2022 17:34:22 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: 57400@debbugs.gnu.org > From: Philip Kaludercic > Date: Wed, 05 Oct 2022 17:34:22 +0000 > > Here is an updated version of the patch: Thanks. > +@findex vc-prepare-patch > +When collaborating on projects it is common to send patches via Email, I think "email" should not be capitalized. > ++++ > +*** New 'vc-prepare-patch' command. "New command 'vc-prepare-patch'." > +** Subr-x > + > +--- > +*** New macro 'with-funcall-substitutions'. > +The macro can be used to generically substitute function symbols in > +expressions. This looks unrelated? From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 05 14:32:59 2022 Received: (at 57400) by debbugs.gnu.org; 5 Oct 2022 18:32:59 +0000 Received: from localhost ([127.0.0.1]:58049 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og9CV-0008IE-2s for submit@debbugs.gnu.org; Wed, 05 Oct 2022 14:32:59 -0400 Received: from quimby.gnus.org ([95.216.78.240]:60494) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og9CT-0008I0-Qt for 57400@debbugs.gnu.org; Wed, 05 Oct 2022 14:32:58 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=wJ3OxRS4hAhwKKxuE6H2I6XV1jQBVA5dmHO6qyd0TQc=; b=C/C8rUYrnpXG17od1uew7HiGer VSECpyljsVScYpBerpUAQqh9uRiDAuWvXbq4cUADQpz0ERmrcErBpheBOJYbQgXhiUBo3TTzH7d0r C9bpPAG79Q3UKo0PCxBEgQokERCru9JvsfPeZlSFH/SVCtNw0QxzUhT3IqvFAsm/eWVs=; Received: from [84.212.220.105] (helo=downe) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1og9CE-0002fr-Uy; Wed, 05 Oct 2022 20:32:45 +0200 From: Lars Ingebrigtsen To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87a66a9n60.fsf@posteo.net> (Philip Kaludercic's message of "Wed, 05 Oct 2022 17:48:39 +0000") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEU+EBrELUrnf6b/ //8p1TR9AAAAAWJLR0QDEQxM8gAAAAd0SU1FB+YKBRIZJ1AP0cEAAAF8SURBVCjPNZExi9wwEIVH YdXvwuog7pPfIUPcy2Ge4dSl8IH3Z1yROoHTwm13hRakX5k3vqwb6+ON3ozeiIicv5d4mqYRPJ/C Vg7eORiEl/fKnwYDd22/okjykChfcoUex8g7Mb5+A3zySc6C/PtjwhT06CZJWx2hZwd1kNRWgHeg NPjZlICIROtedSng8aiEgqdOiVaQdxa/UILBhqRhuT6AQ+XbWgw4CrDc7yUS/prxci9vR1rPO9Db lGTQUMLc6JFpcMO2skT0GSturVeM5u6B3Fv1cxAOIPL0HJKbIUGdiJ+82ERBLROGB6ziLSD73ARx DzicipUdduCDBOmgnxL7LH8eIKPsEZ13GFjm0rxr4yAp+RkGSINU/VyMX0OWrq5QcNiQBdHVFMWV bYVcR1RE+YHMl2ZoIcD3vudWaaDj5QJpgBmk+dKboKAlrhwZnaDbDgMuYsthd6+D9Sk82bSmsIvt VPDVoFRmaQOuNKjbf1ho3S9WFhCW9g8XIZry5hMsEAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0x MC0wNVQxODoyNTozOCswMDowMPnbQDgAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMTAtMDVUMTg6 MjU6MzgrMDA6MDCIhviEAAAAAElFTkSuQmCC X-Now-Playing: Soft Cell's _The Art of Falling Apart_: "The Art Of Falling Apart" Date: Wed, 05 Oct 2022 20:32:41 +0200 Message-ID: <87edvm2kae.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Philip Kaludercic writes: > Another question is if `vc-prepare-patch' should be bound to a key or > not. From what I see "C-x v p" appears to be free, which might be a > possible candidate. Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Philip Kaludercic writes: > Another question is if `vc-prepare-patch' should be bound to a key or > not. From what I see "C-x v p" appears to be free, which might be a > possible candidate. There's some potential for confusion with pull/push, I guess, but I can't think of any better key (that's free). Er... `C-x v S'? (For send.) Hm... no, `S' is taken in vc-dir buffers, and it'd be nice to have the same key in vc-dir-mode. Oh, `p' is taken in `vc-dir-mode', too. *scratches head* From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 05 14:45:29 2022 Received: (at 57400) by debbugs.gnu.org; 5 Oct 2022 18:45:29 +0000 Received: from localhost ([127.0.0.1]:58064 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og9Oa-0000AL-1k for submit@debbugs.gnu.org; Wed, 05 Oct 2022 14:45:29 -0400 Received: from mout02.posteo.de ([185.67.36.66]:59171) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og9OT-0000A2-Sz for 57400@debbugs.gnu.org; Wed, 05 Oct 2022 14:45:26 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 0570F240103 for <57400@debbugs.gnu.org>; Wed, 5 Oct 2022 20:45:13 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664995516; bh=3ID21dEjTS09a++KIQTEC7hOKKMLEl7B7Rob6UEE1WI=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=Pud9aH4SVQF7GgaM/AAp3A7yKAaKixCYkGwv78/xRCTkAGJ8Tic9Ex8retF17rgPm 7QC/1Vtt35PEmoCzrQO9O07cC1XbmnZ2pfMRPfdXRaRTjeyHohJesugUc1T3s8IMZC +Bma//7MCpFUOjA69zRCUp2LXfmUUaA8k2i8aWCUMsnoSN2o0GKBt2p6+2MjSfh9z6 FVdVViDwYopGZt+f1E7aQIcXu3z0eyxQ+CHYqCYhyjHM4nFP3a04S1v3AUoG1+xyQ3 HMXfSebXysQJzLaJQudXRkncemPqoklPdd/qhonf9gUmzgOLGFURcab4Y7f/+Ou8An jUZyjZ8tZF4bg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MjNmS6Szqz6tnw; Wed, 5 Oct 2022 20:45:12 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83mtaarv70.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 05 Oct 2022 21:17:55 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <83mtaarv70.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Wed, 05 Oct 2022 18:45:12 +0000 Message-ID: <875ygy9kjr.fsf@posteo.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-=-= Content-Type: text/plain Eli Zaretskii writes: >> Cc: 57400@debbugs.gnu.org >> From: Philip Kaludercic >> Date: Wed, 05 Oct 2022 17:34:22 +0000 >> >> Here is an updated version of the patch: > > Thanks. > >> +@findex vc-prepare-patch >> +When collaborating on projects it is common to send patches via Email, > > I think "email" should not be capitalized. Done too. >> ++++ >> +*** New 'vc-prepare-patch' command. > > "New command 'vc-prepare-patch'." Also done. >> +** Subr-x >> + >> +--- >> +*** New macro 'with-funcall-substitutions'. >> +The macro can be used to generically substitute function symbols in >> +expressions. > > This looks unrelated? You are right, this is from a different patch. --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-Add-a-VC-command-to-prepare-patches.patch >From 5a79e575ab37a1fa60d9428e5d05e7bf95ad570a Mon Sep 17 00:00:00 2001 From: Philip Kaludercic Date: Mon, 3 Oct 2022 20:54:38 +0200 Subject: [PATCH] Add a VC command to prepare patches * doc/emacs/vc1-xtra.texi (Miscellaneous VC): Add new node. (Editing VC Commands): Document new feature. * etc/NEWS: Mention 'vc-prepare-patch'. * lisp/vc/log-view.el: Autoload 'log-view-get-marked'. * lisp/vc/vc-git.el (vc-git-prepare-patch): Add Git implementation. * lisp/vc/vc-hg.el (vc-git-prepare-patch): Add Mercurial implementation. * lisp/vc/vc-bzr.el (vc-git-prepare-patch): Add Bazaar implementation. * lisp/vc/vc.el (vc-read-revision): Add a MULTIPLE argument. (vc-read-multiple-revisions): Add an auxiliary function that always calls 'vc-read-revision' with a non-nil value for MULTIPLE. (vc-prepare-patches-inline): Add user option. (message-goto-body): Declare function. (message--name-table): Declare function. (vc-default-prepare-patch): Add a default implementation. (vc-prepare-patch): Add command. (bug#57400) --- doc/emacs/vc1-xtra.texi | 26 +++++++++ etc/NEWS | 8 +++ lisp/vc/log-view.el | 1 + lisp/vc/vc-bzr.el | 14 +++++ lisp/vc/vc-git.el | 24 ++++++++ lisp/vc/vc-hg.el | 12 ++++ lisp/vc/vc.el | 122 ++++++++++++++++++++++++++++++++++++++-- 7 files changed, 203 insertions(+), 4 deletions(-) diff --git a/doc/emacs/vc1-xtra.texi b/doc/emacs/vc1-xtra.texi index 05d2144380..b27dd6644f 100644 --- a/doc/emacs/vc1-xtra.texi +++ b/doc/emacs/vc1-xtra.texi @@ -16,6 +16,7 @@ Miscellaneous VC * Revision Tags:: Symbolic names for revisions. * Version Headers:: Inserting version control headers into working files. * Editing VC Commands:: Editing the VC shell commands that Emacs will run. +* Preparing Patches:: Preparing and Composing patches from within VC @end menu @node Change Logs and VC @@ -282,6 +283,31 @@ Editing VC Commands additional branches to the end of the @samp{git log} command that VC is about to run. +@node Preparing Patches +@subsubsection Preparing Patches + +@findex vc-prepare-patch +When collaborating on projects it is common to send patches via email, +to share changes. If you wish to do this using VC, you can use the +@code{vc-prepare-patch} command. This will prompt you which revisions +you wish to share and who the addressee is. The command will then use +your @abbr{MUA, Mail User Agent} for you to review and send out. + +@vindex vc-prepare-patches-inline +Depending on configuration of the user option +@code{vc-prepare-patches-inline}, @code{vc-prepare-patch} will either +generate a single or multiple messages. A @code{nil} value (the default) +will prepare and display a message for each revision, one after +another. A non-@code{nil} value will have all patches attached to the +body of a single message. + +@vindex vc-default-patch-addressee +If you expect to contribute patches on a regular basis, you can set +the user option @code{vc-default-patch-addressee} to the address you +wish to use. This will be used as the default value when invoking +@code{vc-prepare-patch}. Project maintainers may consider setting +this as a directory local variable (@pxref{Directory Variables}). + @node Customizing VC @subsection Customizing VC diff --git a/etc/NEWS b/etc/NEWS index 0fa24c577c..9cf1930c39 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1846,6 +1846,14 @@ Git commands display summary lines. See the two new user options It is used to style the line that separates the 'log-edit' headers from the 'log-edit' summary. ++++ +*** New command 'vc-prepare-patch'. +Patches for any version control system can be prepared using VC. The +command will query what commits to send and will compose messages for +your mail user agent. The behaviour of 'vc-prepare-patch' can be +modified by the user options 'vc-prepare-patches-inline' and +'vc-default-patch-addressee'. + ** Message --- diff --git a/lisp/vc/log-view.el b/lisp/vc/log-view.el index 415b1564ed..7a710386fe 100644 --- a/lisp/vc/log-view.el +++ b/lisp/vc/log-view.el @@ -359,6 +359,7 @@ log-view-toggle-mark-entry (overlay-put ov 'log-view-self ov) (overlay-put ov 'log-view-marked (nth 1 entry)))))))) +;;;###autoload (defun log-view-get-marked () "Return the list of tags for the marked log entries." (save-excursion diff --git a/lisp/vc/vc-bzr.el b/lisp/vc/vc-bzr.el index bce7996712..6f77f99555 100644 --- a/lisp/vc/vc-bzr.el +++ b/lisp/vc/vc-bzr.el @@ -1324,6 +1324,20 @@ vc-bzr-repository-url (match-string 1) (error "Cannot determine Bzr repository URL"))))) +(defun vc-bzr-prepare-patch (rev) + (with-current-buffer (generate-new-buffer " *vc-bzr-prepare-patch*") + (vc-bzr-command + "send" t 0 '() + "--revision" (concat (vc-bzr-previous-revision nil rev) ".." rev) + "--output" "-") + (let (subject) + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^[^#].*") + (setq subject (match-string 0)) + ;; Return the extracted data + (list :subject subject :buffer (current-buffer))))) + (provide 'vc-bzr) ;;; vc-bzr.el ends here diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 4a2a42ad2a..f9dae8b9ea 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -95,6 +95,7 @@ ;; - find-file-hook () OK ;; - conflicted-files OK ;; - repository-url (file-or-dir) OK +;; - prepare-patch (rev) OK ;;; Code: @@ -1742,6 +1743,29 @@ vc-git-extra-status-menu (defun vc-git-root (file) (vc-find-root file ".git")) +(defun vc-git-prepare-patch (rev) + (with-current-buffer (generate-new-buffer " *vc-git-prepare-patch*") + (vc-git-command + t 0 '() "format-patch" + "--no-numbered" "--stdout" + ;; From gitrevisions(7): ^ means the th parent + ;; (i.e. ^ is equivalent to ^1). As a + ;; special rule, ^0 means the commit itself and + ;; is used when is the object name of a tag + ;; object that refers to a commit object. + (concat rev "^.." rev)) + (let (subject) + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^Subject: \\(.+\\)") + (setq subject (match-string 1)) + ;; Jump to the beginning for the patch + (search-forward-regexp "\n\n") + ;; Return the extracted data + (list :subject subject + :buffer (current-buffer) + :body-start (point))))) + ;; grep-compute-defaults autoloads grep. (declare-function grep-read-regexp "grep" ()) (declare-function grep-read-files "grep" (regexp)) diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.el index eed9592378..2eebe2d543 100644 --- a/lisp/vc/vc-hg.el +++ b/lisp/vc/vc-hg.el @@ -80,6 +80,7 @@ ;; - delete-file (file) TEST IT ;; - rename-file (old new) OK ;; - find-file-hook () added for bug#10709 +;; - prepare-patch (rev) OK ;; 2) Implement Stefan Monnier's advice: ;; vc-hg-registered and vc-hg-state @@ -1507,6 +1508,17 @@ vc-hg-merge-branch (with-current-buffer buffer (vc-run-delayed (vc-compilation-mode 'hg))) (vc-set-async-update buffer))) +(defun vc-hg-prepare-patch (rev) + (with-current-buffer (generate-new-buffer " *vc-hg-prepare-patch*") + (vc-hg-command t 0 '() "export" "--rev" rev) + (let (subject) + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^[^#].*") + (setq subject (match-string 0)) + ;; Return the extracted data + (list :subject subject :buffer (current-buffer))))) + ;;; Internal functions (defun vc-hg-command (buffer okstatus file-or-list &rest flags) diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index f0f5ee504c..130dee531f 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -574,6 +574,14 @@ ;; containing FILE-OR-DIR. The optional REMOTE-NAME specifies the ;; remote (in Git parlance) whose URL is to be returned. It has ;; only a meaning for distributed VCS and is ignored otherwise. +;; +;; - prepare-patch (rev) +;; +;; Prepare a patch and return a property list with the keys +;; `:subject' indicating the patch message as a string, `:body' +;; containing the contents of the patch as a string (excluding the +;; header) and `:filename' pointing to a file where the patch has +;; been stored. ;;; Changes from the pre-25.1 API: ;; @@ -1910,7 +1918,7 @@ vc-diff-internal (defvar vc-revision-history nil "History for `vc-read-revision'.") -(defun vc-read-revision (prompt &optional files backend default initial-input) +(defun vc-read-revision (prompt &optional files backend default initial-input multiple) (cond ((null files) (let ((vc-fileset (vc-deduce-fileset t))) ;FIXME: why t? --Stef @@ -1923,9 +1931,16 @@ vc-read-revision (completion-table (vc-call-backend backend 'revision-completion-table files))) (if completion-table - (completing-read prompt completion-table - nil nil initial-input 'vc-revision-history default) - (read-string prompt initial-input nil default)))) + (funcall + (if multiple #'completing-read-multiple #'completing-read) + prompt completion-table nil nil initial-input 'vc-revision-history default) + (let ((answer (read-string prompt initial-input nil default))) + (if multiple + (split-string answer "[ \t]*,[ \t]*") + answer))))) + +(defun vc-read-multiple-revisions (prompt &optional files backend default initial-input) + (vc-read-revision prompt files backend default initial-input t)) (defun vc-diff-build-argument-list-internal (&optional fileset) "Build argument list for calling internal diff functions." @@ -3237,6 +3252,105 @@ vc-update-change-log (vc-call-backend (vc-responsible-backend default-directory) 'update-changelog args)) +(defcustom vc-prepare-patches-inline nil + "Non-nil means that `vc-prepare-patch' creates a single message. +A single message is created by attaching all patches to the body +of a single message. If nil, each patch will be sent out in a +separate message, which will be prepared sequentially." + :type 'boolean + :safe #'booleanp + :version "29.1") + +(defcustom vc-default-patch-addressee nil + "Default addressee for `vc-prepare-patch'. +If nil, no default will be used. This option may be set locally." + :type '(choice (const :tag "No default" nil) + (string :tag "Addressee")) + :safe #'stringp + :version "29.1") + +(declare-function message--name-table "message" (orig-string)) +(declare-function mml-attach-buffer "mml" + (buffer &optional type description disposition)) +(declare-function log-view-get-marked "log-view" ()) + +(defun vc-default-prepare-patch (rev) + (let ((backend (vc-backend buffer-file-name))) + (with-current-buffer (generate-new-buffer " *vc-default-prepare-patch*") + (vc-diff-internal + nil (list backend) rev + (vc-call-backend backend 'previous-revision + buffer-file-name rev) + nil t) + (list :subject (concat "Patch for " + (file-name-nondirectory + (directory-file-name + (vc-root-dir)))) + :buffer (current-buffer))))) + +;;;###autoload +(defun vc-prepare-patch (addressee subject revisions) + "Compose an Email sending patches for REVISIONS to ADDRESSEE. +If `vc-prepare-patches-inline' is non-nil, SUBJECT will be used +as the default subject for the message. Otherwise a separate +message will be composed for each revision. + +When invoked interactively in a Log View buffer with marked +revisions, these revisions will be used." + (interactive + (let ((revs (or (log-view-get-marked) + (vc-read-multiple-revisions "Revisions: "))) + to) + (require 'message) + (while (null (setq to (completing-read-multiple + (format-prompt + "Addressee" + vc-default-patch-addressee) + (message--name-table "") + nil nil nil nil + vc-default-patch-addressee))) + (message "At least one addressee required.") + (sit-for blink-matching-delay)) + (list (string-join to ", ") + (and vc-prepare-patches-inline + (read-string "Subject: " "[PATCH] " nil nil t)) + revs))) + (save-current-buffer + (vc-ensure-vc-buffer) + (let ((patches (mapcar (lambda (rev) + (vc-call-backend + (vc-responsible-backend default-directory) + 'prepare-patch rev)) + revisions))) + (if (not vc-prepare-patches-inline) + (dolist (patch patches) + (compose-mail addressee + (plist-get patch :subject) + nil nil nil nil + `((kill-buffer ,(plist-get patch :buffer)) + (exit-recursive-edit))) + (rfc822-goto-eoh) (forward-line) + (save-excursion ;don't jump to the end + (insert-buffer-substring + (plist-get patch :buffer) + (plist-get patch :body-start) + (plist-get patch :body-end))) + (recursive-edit)) + (compose-mail addressee subject nil nil nil nil + (mapcar + (lambda (p) + (list #'kill-buffer (plist-get p :buffer))) + patches)) + (rfc822-goto-eoh) + (forward-line) + (save-excursion + (dolist (patch patches) + (mml-attach-buffer (buffer-name (plist-get patch :buffer)) + "text/x-patch" + (plist-get patch :subject) + "attachment"))) + (open-line 2))))) + (defun vc-default-responsible-p (_backend _file) "Indicate whether BACKEND is responsible for FILE. The default is to return nil always." -- 2.37.3 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 05 14:46:22 2022 Received: (at 57400) by debbugs.gnu.org; 5 Oct 2022 18:46:22 +0000 Received: from localhost ([127.0.0.1]:58068 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og9PS-0000CF-5r for submit@debbugs.gnu.org; Wed, 05 Oct 2022 14:46:22 -0400 Received: from mout01.posteo.de ([185.67.36.65]:54745) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og9PQ-0000C1-4N for 57400@debbugs.gnu.org; Wed, 05 Oct 2022 14:46:20 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 96E2C240026 for <57400@debbugs.gnu.org>; Wed, 5 Oct 2022 20:46:14 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664995574; bh=efDX39VM9KkyF+ziRbgzZAH0aqF8FwNBmdZJCXhDz0I=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=SHdzqkbL85YEzJRhyS6VasjmzTiT2TunaFYB3Exw0h6k/6WY/llmnHnSdZYCrg8ci plOChjvynq7w3Z8jPKo/z4VPHl6zFbCVTDBVX5kTgT93JsLrHR5iUtrTUJZXukVmL6 cPO4InZ7KoCV9jGEqZMH5fyeGdf+1cGeFYwrMhXWI/QA76pLkLnQlc/fzKS9bPDseG f/0ymJk/WPGAg6Xw71iQYjB5bm/yz2Msu1vxsWvMAfOiOofOtjhFKLSXVJULR1pIek DhIHtCVeapdUzk1Ea89hPvA7yO4mGPqtZ8z7VPczPupXCG+vZ7gI/sQgre2b/eugb/ OdSHb8iNDVnyA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MjNnf06qzz6tq0; Wed, 5 Oct 2022 20:46:14 +0200 (CEST) From: Philip Kaludercic To: Lars Ingebrigtsen Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87edvm2kae.fsf@gnus.org> (Lars Ingebrigtsen's message of "Wed, 05 Oct 2022 20:32:41 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Wed, 05 Oct 2022 18:46:13 +0000 Message-ID: <871qrm9ki2.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Lars Ingebrigtsen writes: > Philip Kaludercic writes: > >> Another question is if `vc-prepare-patch' should be bound to a key or >> not. From what I see "C-x v p" appears to be free, which might be a >> possible candidate. > > There's some potential for confusion with pull/push, I guess, but I > can't think of any better key (that's free). > > Er... `C-x v S'? (For send.) Hm... no, `S' is taken in vc-dir > buffers, and it'd be nice to have the same key in vc-dir-mode. Oh, `p' > is taken in `vc-dir-mode', too. > > *scratches head* There is no inherent reason why it has to be bound. I just wanted to bring it up. From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 05 15:08:51 2022 Received: (at 57400) by debbugs.gnu.org; 5 Oct 2022 19:08:51 +0000 Received: from localhost ([127.0.0.1]:58078 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og9lD-0000kP-76 for submit@debbugs.gnu.org; Wed, 05 Oct 2022 15:08:51 -0400 Received: from quimby.gnus.org ([95.216.78.240]:32768) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1og9l9-0000k9-B0 for 57400@debbugs.gnu.org; Wed, 05 Oct 2022 15:08:49 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=lb8HsODIbD643c42Z+uQJn/1n78qXY2izsMiNkmQk6s=; b=g1nZgQonXwx/iIPAmMFPIUSnv/ 2dZg7zHpmlPZNfQpNK9tSmL8fONsUS9FI6LwineI3FiDtcVSJOvRwL1fc/X52vk3i+siGPbyOnTXI dli4HjyfxOzWoWssdMv29+XPC/FpZ1nfyX3JXL7neJ/mN94hwzf7zmsqt6fBgNJQxfnA=; Received: from [84.212.220.105] (helo=downe) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1og9kz-0002wT-Pa; Wed, 05 Oct 2022 21:08:40 +0200 From: Lars Ingebrigtsen To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <871qrm9ki2.fsf@posteo.net> (Philip Kaludercic's message of "Wed, 05 Oct 2022 18:46:13 +0000") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <871qrm9ki2.fsf@posteo.net> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEU+EBrELUrnf6b/ //8p1TR9AAAAAWJLR0QDEQxM8gAAAAd0SU1FB+YKBRIZJ1AP0cEAAAF8SURBVCjPNZExi9wwEIVH YdXvwuog7pPfIUPcy2Ge4dSl8IH3Z1yROoHTwm13hRakX5k3vqwb6+ON3ozeiIicv5d4mqYRPJ/C Vg7eORiEl/fKnwYDd22/okjykChfcoUex8g7Mb5+A3zySc6C/PtjwhT06CZJWx2hZwd1kNRWgHeg NPjZlICIROtedSng8aiEgqdOiVaQdxa/UILBhqRhuT6AQ+XbWgw4CrDc7yUS/prxci9vR1rPO9Db lGTQUMLc6JFpcMO2skT0GSturVeM5u6B3Fv1cxAOIPL0HJKbIUGdiJ+82ERBLROGB6ziLSD73ARx DzicipUdduCDBOmgnxL7LH8eIKPsEZ13GFjm0rxr4yAp+RkGSINU/VyMX0OWrq5QcNiQBdHVFMWV bYVcR1RE+YHMl2ZoIcD3vudWaaDj5QJpgBmk+dKboKAlrhwZnaDbDgMuYsthd6+D9Sk82bSmsIvt VPDVoFRmaQOuNKjbf1ho3S9WFhCW9g8XIZry5hMsEAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0x MC0wNVQxODoyNTozOCswMDowMPnbQDgAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMTAtMDVUMTg6 MjU6MzgrMDA6MDCIhviEAAAAAElFTkSuQmCC X-Now-Playing: Soft Cell's _The Art of Falling Apart_: "audio_12.mp3" Date: Wed, 05 Oct 2022 21:08:36 +0200 Message-ID: <875ygy2imj.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Philip Kaludercic writes: > There is no inherent reason why it has to be bound. I just wanted to > bring it up. Sure. But I think it would be nice if it had a binding -- I think this is very useful functionality. Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Philip Kaludercic writes: > There is no inherent reason why it has to be bound. I just wanted to > bring it up. Sure. But I think it would be nice if it had a binding -- I think this is very useful functionality. From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 05 16:05:33 2022 Received: (at 57400) by debbugs.gnu.org; 5 Oct 2022 20:05:33 +0000 Received: from localhost ([127.0.0.1]:58156 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogAe5-0002Mg-Ci for submit@debbugs.gnu.org; Wed, 05 Oct 2022 16:05:33 -0400 Received: from relay6-d.mail.gandi.net ([217.70.183.198]:37689) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogAe2-0002MP-07 for 57400@debbugs.gnu.org; Wed, 05 Oct 2022 16:05:32 -0400 Received: (Authenticated sender: juri@linkov.net) by mail.gandi.net (Postfix) with ESMTPSA id 717ACC0007; Wed, 5 Oct 2022 20:05:20 +0000 (UTC) From: Juri Linkov To: Lars Ingebrigtsen Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87edvm2kae.fsf@gnus.org> (Lars Ingebrigtsen's message of "Wed, 05 Oct 2022 20:32:41 +0200") Organization: LINKOV.NET References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> Date: Wed, 05 Oct 2022 22:57:47 +0300 Message-ID: <861qrmox5o.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Philip Kaludercic , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) >> Another question is if `vc-prepare-patch' should be bound to a key or >> not. From what I see "C-x v p" appears to be free, which might be a >> possible candidate. > > There's some potential for confusion with pull/push, I guess, but I > can't think of any better key (that's free). > > Er... `C-x v S'? (For send.) Hm... no, `S' is taken in vc-dir > buffers, and it'd be nice to have the same key in vc-dir-mode. Oh, `p' > is taken in `vc-dir-mode', too. Currently 'C-x v =' (vc-diff) can be easily mistyped as 'C-x v +' (vc-pull) often with an adverse effect because '=' and '+' are on the same key. It would be nice to bring both 'vc-pull' and 'vc-push' under the same prefix key 'C-x v p'. And to add vc-prepare-patch under the same prefix. 'p' and 'S' in vc-dir are specific to the vc-dir buffer. So 'C-x v S' could be bound to the command vc-log-search that has no key binding. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 04:21:15 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 08:21:15 +0000 Received: from localhost ([127.0.0.1]:58855 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogM83-0000Bu-7T for submit@debbugs.gnu.org; Thu, 06 Oct 2022 04:21:15 -0400 Received: from mail-wm1-f46.google.com ([209.85.128.46]:56181) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogM80-0000Bg-BN for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 04:21:13 -0400 Received: by mail-wm1-f46.google.com with SMTP id t4so545604wmj.5 for <57400@debbugs.gnu.org>; Thu, 06 Oct 2022 01:21:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=3KrV6FTtLtnCuQLIpHrsV//alo+BsHG5Y30pGC4UkR8=; b=F8vNtO3jhKlRiZhOk95I3HO+jYC5BDhishyQBe9ukMpIRJRjQlIMeLXE7VfXERHOuY BC7X4OnYyN77JZSufuM6V+uI4OLBo1tLAQbIrjb95hMrDO3+QTM9yCFgi5+4obDyjAE2 YEhaGqjnVpay0H+qISztdznfl7tAd4YUTIPTWsfZs/cYIcxocTjxQQVnlg4r6/l1IFtr TlXL1a6E239hvIYFOPU0NZPChdwUtfgMBiClf/1KeRFxObAsLTmZZtfZhu+Sw1TomoH1 PLbCE4qhGuMJAK11dB99eQEF33ua0rts/h7SGAXPJqhp5yUK0hTI0NjstDVUqUwzR7Dz GJbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=3KrV6FTtLtnCuQLIpHrsV//alo+BsHG5Y30pGC4UkR8=; b=7yUe/3J9sbWSMcvkbGwy/+rmcjp1V4lrF8eKmkEbGbchXnxdzVe2Ue3UyZhoZA60iS /un4ndgkWLn5rMpCWleSUcNQu8tvxtkvY96pG1/7SYvzBeFgNADagZYpOBCD1RiaPnPC l+liOCFgbJvcWQqWYkICZ+4VYi66OwRUQDBfkhFz6Edzi9jRoM7YwGbPZNF9atzrbmoz 0wAz2aWDR0Vg5PGMqysQ9U44pl5muKwhsA1aR6msB1Stq90m1+ROApbp/vJSdgKYp/7Z lxvlstuwRSAa1ywCpkKtQARp3jfdmgXQwhoNIM520RvGK+oOGSRgU8yWDQ12OPYO+ZBG 6g1g== X-Gm-Message-State: ACrzQf2IMpgxJMbM+SX6ofWOw1tlAd0yJmNIZtDYnnGoOLthcbsk2jTq br9nYbTpn+c356+kegLBkv0= X-Google-Smtp-Source: AMsMyM7Li7Byl1PnIwRb2MmCq5MC6mEWXHtIeGiGjboKkXCwqvoEQzdgTlltEoJviuD+GSeO4fpHLg== X-Received: by 2002:a05:600c:524d:b0:3b4:91ee:933e with SMTP id fc13-20020a05600c524d00b003b491ee933emr2342759wmb.80.1665044466345; Thu, 06 Oct 2022 01:21:06 -0700 (PDT) Received: from rltb ([2a01:e0a:3f3:fb50:912:1b38:fb01:987c]) by smtp.gmail.com with ESMTPSA id u10-20020adff88a000000b0022e47b57735sm8063110wrp.97.2022.10.06.01.21.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Oct 2022 01:21:05 -0700 (PDT) From: Robert Pluim To: Lars Ingebrigtsen Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <875ygy2imj.fsf@gnus.org> (Lars Ingebrigtsen's message of "Wed, 05 Oct 2022 21:08:36 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <871qrm9ki2.fsf@posteo.net> <875ygy2imj.fsf@gnus.org> Date: Thu, 06 Oct 2022 10:21:05 +0200 Message-ID: <87v8ox747i.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 57400 Cc: Philip Kaludercic , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >>>>> On Wed, 05 Oct 2022 21:08:36 +0200, Lars Ingebrigtsen said: Lars> Philip Kaludercic writes: >> There is no inherent reason why it has to be bound. I just wanted to >> bring it up. Lars> Sure. But I think it would be nice if it had a binding -- I think this Lars> is very useful functionality. If we once again steal from Magit, it has patch commands on 'W', presumably for 'W'rite (and 'git am' is on 'w') Robert -- From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 04:36:03 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 08:36:03 +0000 Received: from localhost ([127.0.0.1]:58898 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogMMN-0002mx-97 for submit@debbugs.gnu.org; Thu, 06 Oct 2022 04:36:03 -0400 Received: from mout02.posteo.de ([185.67.36.66]:37161) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogMMK-0002mS-Dn for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 04:36:01 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 6E47B240105 for <57400@debbugs.gnu.org>; Thu, 6 Oct 2022 10:35:54 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665045354; bh=vqXfbXwb2rRbq44pJgMUzBnLcb8Buggcy3gBQCnaqR4=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=lush4VRYzYdWzJWldz6ViUEqQg5chWl4o24cM+e2EP1hNvc280rnNkkN/DykO7JZg 3n26WOuBIP5pTjTkFjYvCNX7j2+1Hhzrgfvakpd/nI7qsgkH4BbSrHDL4i6iGTOSnV Xtd4dKyGDXWfXzU+1v6NeqJjClwK9nqLX0Ju6CaZRDTeiYlzbQGgWM9q4PWg83lcp1 il/avfcbUYBJITRxwIXv0+a3B5izFGytpfOfr29jIk7m7QcoKoJGeHV96leHoNUKO3 7IzEjLDg0/JoYL2Aqhba/tfRGs8LXIej+uxR8DlYGo8vHApz3YTK3sSvr+OI+lPwak guFlqUCeH1pHg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MjlBw5hq4z6tmH; Thu, 6 Oct 2022 10:35:52 +0200 (CEST) From: Philip Kaludercic To: Robert Pluim Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87v8ox747i.fsf@gmail.com> (Robert Pluim's message of "Thu, 06 Oct 2022 10:21:05 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <871qrm9ki2.fsf@posteo.net> <875ygy2imj.fsf@gnus.org> <87v8ox747i.fsf@gmail.com> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Thu, 06 Oct 2022 08:35:51 +0000 Message-ID: <87o7up8i3c.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: Lars Ingebrigtsen , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Robert Pluim writes: >>>>>> On Wed, 05 Oct 2022 21:08:36 +0200, Lars Ingebrigtsen said: > > Lars> Philip Kaludercic writes: > >> There is no inherent reason why it has to be bound. I just wanted to > >> bring it up. > > Lars> Sure. But I think it would be nice if it had a binding -- I think this > Lars> is very useful functionality. > > If we once again steal from Magit, it has patch commands on 'W', > presumably for 'W'rite (and 'git am' is on 'w') Personally I have never been fond of that binding, and have invoked it a few times by mistake assuming that w would add something like a commit tag to the kill ring. > Robert From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 04:59:41 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 08:59:41 +0000 Received: from localhost ([127.0.0.1]:58947 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogMjF-0003P5-0r for submit@debbugs.gnu.org; Thu, 06 Oct 2022 04:59:41 -0400 Received: from mail-wr1-f52.google.com ([209.85.221.52]:38734) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogMjD-0003Os-D3 for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 04:59:39 -0400 Received: by mail-wr1-f52.google.com with SMTP id j16so1647093wrh.5 for <57400@debbugs.gnu.org>; Thu, 06 Oct 2022 01:59:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=H657yb8ORCjKonBZDUznLrDkx2gPnwZjC2V+iO/3ZHM=; b=TCnXixI2pQHWyTcZq6DQr8M+OCNblRuUq7XyFn+rJARNLj2m6F2BhauBtUAgVpT4Bj gVsjioRHKOhXhZ/4Bj0bVGz5k0NobRwWcGMwbaULn8HRQX+xFyqQt3reMgCIife1ZWNh OnNI74/P8McaEetW+QfpAS4hfnfeE+oDnNWsk3HvWYEli7MOhXngrVX6cQnKBiGP4HNu 4txv+Ptpia4QdcEKfP1nAdrRnyK5yaQGSwDqFmT66tQOKovjSgI3CkeF85RJRd0OdVLW H0dKZarPeFGTiGmj1QYUseCQSR26HvOhtBfjxheUkzAaWL+6BSccRzNtG7Xx7/Mo6K5C A71g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=H657yb8ORCjKonBZDUznLrDkx2gPnwZjC2V+iO/3ZHM=; b=JiKSYwvfdCQkMAvH6H1YHR1soO2uSvLCD9ju4+l6nD8jPqJ2Cnw2csDznrw6hGFtGB Bz0eQSDkOri7tvVuuwwuC5X3ILcUQ89LpvUTqlBjkK7BZexysxHgKdMJvrT6qiAtuPTE QDZu6WnA4Asj6pHyGghw9SdboR2rD7RAey+3uNehnTw34CmurEaunyYqRgKWef0wsHve sY+B5b7mDH0tzbjuPr0wOARMR4VgJ0eb3oyu8cETnmbzlxbX4YTQXAz8ei5MJHbg76SH fszwepOOhz0tWjIpbXwccsVLnb/Vow//BU0JRCqx5kWPI98lLECNLzvIGz1/SnafXjD3 /IJQ== X-Gm-Message-State: ACrzQf269XO1oafQq6aBhlVnONHt/p/451Cc+t94mMMWFp3bakyS3qc6 Mise43bijEW3hkHftEKHhfc= X-Google-Smtp-Source: AMsMyM4Li/oxVe5n4HFK/+4Ngr57A+5t6aa63Me1qIq2D02cq2wd19oMbW3zxXHqvpQA+5BY0kpsWw== X-Received: by 2002:a05:6000:1b06:b0:22c:da6d:b199 with SMTP id f6-20020a0560001b0600b0022cda6db199mr2348509wrz.584.1665046773528; Thu, 06 Oct 2022 01:59:33 -0700 (PDT) Received: from rltb ([2a01:e0a:3f3:fb50:912:1b38:fb01:987c]) by smtp.gmail.com with ESMTPSA id c6-20020a5d4146000000b0022a403954c3sm17607670wrq.42.2022.10.06.01.59.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Oct 2022 01:59:32 -0700 (PDT) From: Robert Pluim To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87o7up8i3c.fsf@posteo.net> (Philip Kaludercic's message of "Thu, 06 Oct 2022 08:35:51 +0000") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <871qrm9ki2.fsf@posteo.net> <875ygy2imj.fsf@gnus.org> <87v8ox747i.fsf@gmail.com> <87o7up8i3c.fsf@posteo.net> Date: Thu, 06 Oct 2022 10:59:32 +0200 Message-ID: <87ilkx72ff.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 57400 Cc: Lars Ingebrigtsen , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >>>>> On Thu, 06 Oct 2022 08:35:51 +0000, Philip Kaludercic said: Philip> Robert Pluim writes: >>>>>>> On Wed, 05 Oct 2022 21:08:36 +0200, Lars Ingebrigtsen said: >>=20 Lars> Philip Kaludercic writes: >> >> There is no inherent reason why it has to be bound. I just wante= d to >> >> bring it up. >>=20 Lars> Sure. But I think it would be nice if it had a binding -- I thin= k this Lars> is very useful functionality. >>=20 >> If we once again steal from Magit, it has patch commands on 'W', >> presumably for 'W'rite (and 'git am' is on 'w') Philip> Personally I have never been fond of that binding, and have inv= oked it a Philip> few times by mistake assuming that w would add something like a= commit Philip> tag to the kill ring. That=CA=BCs on 'C-w' Robert --=20 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 05:13:02 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 09:13:03 +0000 Received: from localhost ([127.0.0.1]:58967 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogMwA-0003lQ-Hs for submit@debbugs.gnu.org; Thu, 06 Oct 2022 05:13:02 -0400 Received: from mout01.posteo.de ([185.67.36.65]:36741) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogMw5-0003ks-2W for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 05:13:00 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 0DC6C2400A7 for <57400@debbugs.gnu.org>; Thu, 6 Oct 2022 11:12:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665047571; bh=Pii24V+NHbZ9mEHvsEu+mXGKPeQX8adiX3xhiG63lAo=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=CjCSou74pMLILlSGG1PWTJp2VkePf3J0PJvsZVIFLkF3hL71fAzavJzrT6vPRPY/9 4azHA2+UPDpDDYCZMqBuS2rELdxmUJF+lIgmUCAXATvklyv8jju/OfXYtfm+jwiUGj LitBWSSVxjmfqxiyY+3aVROvly48eFfK1vIEGZILGNun8GrBT01YiolPwBWSjakiYB 2ZxoHjA5/qaN3duydhu9zaEc62mB+ramH+B6XZYSyzgnUVk0DECTZSLoDtDmR9nL8u Xjcxi1MhROnwIH2AzuuuMBZxlfxrJCb87QKplpPlyL7EK5bm3UCiY/H+c4tFLvuIxj rBWXp6PEcnuQg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Mjm1Y64syz9rxF; Thu, 6 Oct 2022 11:12:49 +0200 (CEST) From: Philip Kaludercic To: Robert Pluim Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87ilkx72ff.fsf@gmail.com> (Robert Pluim's message of "Thu, 06 Oct 2022 10:59:32 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <871qrm9ki2.fsf@posteo.net> <875ygy2imj.fsf@gnus.org> <87v8ox747i.fsf@gmail.com> <87o7up8i3c.fsf@posteo.net> <87ilkx72ff.fsf@gmail.com> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Thu, 06 Oct 2022 09:12:44 +0000 Message-ID: <87k05d8gdv.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: Lars Ingebrigtsen , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Robert Pluim writes: >>>>>> On Thu, 06 Oct 2022 08:35:51 +0000, Philip Kaludercic said: > > Philip> Robert Pluim writes: > >>>>>>> On Wed, 05 Oct 2022 21:08:36 +0200, Lars Ingebrigtsen said: > >>=20 > Lars> Philip Kaludercic writes: > >> >> There is no inherent reason why it has to be bound. I just wan= ted to > >> >> bring it up. > >>=20 > Lars> Sure. But I think it would be nice if it had a binding -- I th= ink this > Lars> is very useful functionality. > >>=20 > >> If we once again steal from Magit, it has patch commands on 'W', > >> presumably for 'W'rite (and 'git am' is on 'w') > > Philip> Personally I have never been fond of that binding, and have i= nvoked it a > Philip> few times by mistake assuming that w would add something like= a commit > Philip> tag to the kill ring. > > That=CA=BCs on 'C-w' OK, but I would have never guessed that, especially since I bind C-w to a custom command that runs `backwards-kill-word' when the region is not active. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 05:14:22 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 09:14:22 +0000 Received: from localhost ([127.0.0.1]:58971 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogMxS-0003nW-0V for submit@debbugs.gnu.org; Thu, 06 Oct 2022 05:14:22 -0400 Received: from mout01.posteo.de ([185.67.36.65]:34517) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogMxP-0003nI-Av for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 05:14:21 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id D1ACE240029 for <57400@debbugs.gnu.org>; Thu, 6 Oct 2022 11:14:13 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665047653; bh=m7ughOJuFFe++xupA8Mfh11vw/vv06hxuJ7Usm8Ua+0=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=NFAS88aj49Z9nf6TlqGjT9SMuOT5ckFNtHiqot10nZnERk4+3VsncA69ct8ijRXK0 bVNslYBVUt1woRfjLUymwR0vPxSLjbq8rgI0lEMdwF8Ik4ZHsuWl3unp/hAGjHxa0r yZ+OaFik0f1TTCDIzbb8OeR5v3svz6qLAACSIQjNj198YTJCaKTIpAbKQ0qOTp4yXe /MscCq9Rku/YuX6ZNuhKUnRzcl4Pb8yVYjQGyrmTO6T9Ude1jZVpaC6SI0ds9+5e1a tq+DO3Yf0wHgpN3x3w9ialQ9kPBrmUSxfrOPH0pbs1pfB8r5X/HKQHXCMBZCKwa6H/ yI8yeD8kuEMfQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Mjm392nw5z9rxK; Thu, 6 Oct 2022 11:14:13 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <875ygy9kjr.fsf@posteo.net> (Philip Kaludercic's message of "Wed, 05 Oct 2022 20:45:12 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <83mtaarv70.fsf@gnu.org> <875ygy9kjr.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Thu, 06 Oct 2022 09:14:13 +0000 Message-ID: <87fsg18gbe.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Philip Kaludercic writes: > Eli Zaretskii writes: > >>> Cc: 57400@debbugs.gnu.org >>> From: Philip Kaludercic >>> Date: Wed, 05 Oct 2022 17:34:22 +0000 >>> >>> Here is an updated version of the patch: >> >> Thanks. >> >>> +@findex vc-prepare-patch >>> +When collaborating on projects it is common to send patches via Email, >> >> I think "email" should not be capitalized. > > Done too. > >>> ++++ >>> +*** New 'vc-prepare-patch' command. >> >> "New command 'vc-prepare-patch'." > > Also done. Any comments on the updated patch? Should I push it? The additional keybindings can be resolved later. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 05:19:46 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 09:19:46 +0000 Received: from localhost ([127.0.0.1]:58980 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogN2g-0003vs-18 for submit@debbugs.gnu.org; Thu, 06 Oct 2022 05:19:46 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56374) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogN2c-0003vd-QF for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 05:19:44 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:40132) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ogN2U-00041b-Gz; Thu, 06 Oct 2022 05:19:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=PQxwYx9womB/OIR7hO90L6zhxAZQqbVHvuMw8idztZQ=; b=JrLJETNj/qk+ kwkovU6kh7swFjCZ82yLgdE7lS90jssceSURo+3HYAQI9nPphjXU5Fza/uZib0BpyCIIK8/zs5d1S 1EoSik7ShYe9YJC20jqz2PfGzTU51n+sCi/A/tOyKWCMhzWGHlbyfg2hnz8EH7NlVaDlsxENSGVFr OS2T7asp3Ql+d1GZqTyDYiCbc7B5Kp1kehY/4Ef485Bjhe602BvqmuFiJKkB9iQ80/F5mtzuCbTAC Ykx2o/pWwpxBZz6wV4/+XaOoifFyT3Rmzyy3dscNqhzPXDAxjhcIa2ibvPicM4bQySJrM872ADIBV GcBphJQHFdTrB8AwHtJ+yQ==; Received: from [87.69.77.57] (port=4917 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ogN2T-0004Y2-KG; Thu, 06 Oct 2022 05:19:34 -0400 Date: Thu, 06 Oct 2022 12:19:34 +0300 Message-Id: <834jwhqpg9.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic , Dmitry Gutov In-Reply-To: <87fsg18gbe.fsf@posteo.net> (message from Philip Kaludercic on Thu, 06 Oct 2022 09:14:13 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <83mtaarv70.fsf@gnu.org> <875ygy9kjr.fsf@posteo.net> <87fsg18gbe.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Philip Kaludercic > Cc: ane@iki.fi, 57400@debbugs.gnu.org > Date: Thu, 06 Oct 2022 09:14:13 +0000 > > Any comments on the updated patch? Should I push it? The additional > keybindings can be resolved later. I'd like Dmitry to review and comment, if he has time. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 07:02:21 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 11:02:22 +0000 Received: from localhost ([127.0.0.1]:59090 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogOdx-0000a0-JI for submit@debbugs.gnu.org; Thu, 06 Oct 2022 07:02:21 -0400 Received: from mout02.posteo.de ([185.67.36.66]:43411) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogOdu-0000Zi-7l for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 07:02:20 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 52144240101 for <57400@debbugs.gnu.org>; Thu, 6 Oct 2022 13:02:09 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665054132; bh=lPeoK0y+ElqpjLZDoKNK/5GuuicOenfPgM45UbkN+uo=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=jQfB62/HK4tDD5hpYwk1kpejLhJAg+kZzpkffaCtlVTFUPPI431Hw4R/NNGeBC1Nz 0gYylLOIGfoR8IpzBjNJxfMhGpehf68D5d/8O0Tf31P70wgH5+ew4CT26N/R1+b+Al KoiUpprfIFJaFW3pdqHohZrbO1O9yKBhV5CXbvF6ZcAf4wHtfpbLb8tCxpMsE9uqW+ LomuPUzluT+l9cmzbhzIjL0m8T1ztumiMR1hFqr7oKaqi9MuK8deXshQtHehP8JuXq nYVqo4ztSiYh4UB+tY87qTxM63NZrYtUUiYfRuBgQiXYHM6JcfT4tiWUxj9WcMeXDh IVsc4P3YNIc9A== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MjpRj2LYQz9rxF; Thu, 6 Oct 2022 13:02:08 +0200 (CEST) From: Philip Kaludercic To: Lars Ingebrigtsen Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <871qrm9ki2.fsf@posteo.net> (Philip Kaludercic's message of "Wed, 05 Oct 2022 20:46:13 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <871qrm9ki2.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Thu, 06 Oct 2022 11:02:08 +0000 Message-ID: <87fsg1nrkf.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Philip Kaludercic writes: > Lars Ingebrigtsen writes: > >> Philip Kaludercic writes: >> >>> Another question is if `vc-prepare-patch' should be bound to a key or >>> not. From what I see "C-x v p" appears to be free, which might be a >>> possible candidate. >> >> There's some potential for confusion with pull/push, I guess, but I >> can't think of any better key (that's free). >> >> Er... `C-x v S'? (For send.) Hm... no, `S' is taken in vc-dir >> buffers, and it'd be nice to have the same key in vc-dir-mode. Oh, `p' >> is taken in `vc-dir-mode', too. >> >> *scratches head* > > There is no inherent reason why it has to be bound. I just wanted to > bring it up. Another reason against "C-x v p" is that "p" is bound to `vc-dir-previous-line' in vc-dir. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 07:33:15 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 11:33:15 +0000 Received: from localhost ([127.0.0.1]:59137 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogP7r-0003Ws-7L for submit@debbugs.gnu.org; Thu, 06 Oct 2022 07:33:15 -0400 Received: from mail-wm1-f48.google.com ([209.85.128.48]:45656) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogP7o-0003Wc-Sh for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 07:33:13 -0400 Received: by mail-wm1-f48.google.com with SMTP id y23-20020a1c4b17000000b003bd336914f9so730849wma.4 for <57400@debbugs.gnu.org>; Thu, 06 Oct 2022 04:33:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=biv6/O8iwd1dGYs5Z+M8hUBBFwMtg4/yxohYzzQgAdg=; b=Qun8YJZA69tdRSxLBjw9xrgMKUQrPwZZ4aPBA11guqqHcr/uo7T81aFgQTETDYYII0 hyfY8X6ZBTHqFDBOTo4ucOfE1Lw/D87lrsJTEwdNUZ60wXjQPJJbXSgI7Z68NjgyeV2D ZgNJna1x/btKxQx1GKtqAi3eeYmDm0Jhh+z1ZSmkcLKA19kcoebKZYftNxOwl/f/AE2P nkPjG0ETQnQDyAcKfNMYAtfwSCxDNVPGlARhja50LTKFpTu7OklVpcuHSn4jNL7ECL/g 6SNi28X1gREIC49uQ1MHeKaqnP1jWp7c4QOnwsopJ2BWIMPY+rltVYxoZ9yYGURIdPJJ /Z/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=biv6/O8iwd1dGYs5Z+M8hUBBFwMtg4/yxohYzzQgAdg=; b=otycTHljAPX0mHjhJbzku3A6noRkPPxw9k4ceGXsYeskq/Q5a4xyPkXqBAhkxpbK3d DxoNoqWBs5njgB/BT+8ZSQSbqbCFzMQ+EiDULI9/XDjbKtwWK9bqrHPrUhX4WeCIPFgl gXtw1CUyUHABEVjee1ZEvwDFfSKRdxpIOl1rXUbtOZ5ytaOTK/dQVVcXHRDZiAx610ST 0a2QaM9ab/dGCn4JeyJyfbfuIlTDBF/69seSVzDh1kNh3FfstlqmoUrmE6aVMmXp3qu4 h3zUUa2dkXG5gGGrWE3h2wb4klLdscn+ngsQ+PYf9Cws7QfMB8VYl1JaMUp9c0+2I5OR PIUw== X-Gm-Message-State: ACrzQf0+Q1mCA+LmuuhncoPUYaWRrhbSrcYQ/kDUJjPxYw8FnoVPWdg4 6omuoUZN4t4FPpJ9+ZazmQxfLd5+a+I= X-Google-Smtp-Source: AMsMyM4TPoujuH1O0Yj6/lxyVwKfJh1bQJM45pEuQM1PqQOJILZKRhwqQ4COaXUBBQ6T80Iy45kB9w== X-Received: by 2002:a05:600c:1e24:b0:3b4:6c1e:8bb7 with SMTP id ay36-20020a05600c1e2400b003b46c1e8bb7mr2965165wmb.1.1665055986394; Thu, 06 Oct 2022 04:33:06 -0700 (PDT) Received: from rltb ([2a01:e0a:3f3:fb50:912:1b38:fb01:987c]) by smtp.gmail.com with ESMTPSA id f2-20020a0560001b0200b00223b8168b15sm6823926wrz.66.2022.10.06.04.33.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Oct 2022 04:33:05 -0700 (PDT) From: Robert Pluim To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87h70i9ntt.fsf@posteo.net> (Philip Kaludercic's message of "Wed, 05 Oct 2022 17:34:22 +0000") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> Date: Thu, 06 Oct 2022 13:33:04 +0200 Message-ID: <87edvl6vbj.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >>>>> On Wed, 05 Oct 2022 17:34:22 +0000, Philip Kaludercic said: Philip> +@code{vc-prepare-patch} command. This will prompt you which r= evisions Philip> +you wish to share and who the addressee is. The command will = then use Philip> +your @abbr{MUA, Mail User Agent} for you to review and send ou= t. Philip> + How about --begin-- This will prompt you for the revisions you wish to share, and which destination email address(es) to use. The command will then prepare those revisions using your @abbr{MUA, Mail User Agent} for you to review and send. --end-- The semantics is 'one-or-more addresses', right? Philip> +@vindex vc-prepare-patches-inline Philip> +Depending on configuration of the user option "Depending on the value of the user option" Philip> +@code{vc-prepare-patches-inline}, @code{vc-prepare-patch} will= either Philip> +generate a single or multiple messages. A @code{nil} value (t= he default) Philip> +will prepare and display a message for each revision, one after Philip> +another. A non-@code{nil} value will have all patches attache= d to the Philip> +body of a single message. Philip> + --begin-- @code{vc-prepare-patches-inline}, @code{vc-prepare-patch} will generate one or more messages. The default value @code{nil} means prepare and display a message for each revision, one after another. A non-@code{nil} value means to generate a single message with all patches attached in the body. --end-- Philip> +@vindex vc-default-patch-addressee Philip> +If you expect to contribute patches on a regular basis, you ca= n set Philip> +the user option @code{vc-default-patch-addressee} to the addre= ss you Philip> +wish to use. This will be used as the default value when invo= king Philip> +@code{vc-prepare-patch}. Project maintainers may consider set= ting Philip> +this as a directory local variable (@pxref{Directory Variables= }). Philip> + This can contain multiple addresses, I think, in which case it should say so. =20 Philip> +** Subr-x Philip> + Philip> +--- Philip> +*** New macro 'with-funcall-substitutions'. Philip> +The macro can be used to generically substitute function symbo= ls in Philip> +expressions. Philip> + Philip> ** Ansi-color That sounds interesting, but I don=CA=BCt see it in the patch :-) =20 Philip> +(defcustom vc-prepare-patches-inline nil Philip> + "Non-nil means that `vc-prepare-patch' creates a single Philip> message. "Whether `vc-prepare-patch' attaches all revision in a single message." I=CA=BCm not sure this should have the suffix '-inline', because you can have inline attachments and attached attachments, but it=CA=BCs not a big deal. I also wonder about the default. Creating 100 mail buffers by accident is harder to recover from than a single one with 100 attachments, but I guess experience will inform us. Philip> +A single message is created by attaching all patches to the bo= dy Philip> +of a single message. If nil, each patch will be sent out in a Philip> +separate message, which will be prepared sequentially." Philip> + :type 'boolean Philip> + :safe #'booleanp Philip> + :version "29.1") Philip> + (I didn=CA=BCt check, can this do the [PATCH n/m] stuff with the subject that 'git format-patch' can do?) Philip> +(defcustom vc-default-patch-addressee nil Philip> + "Default addressee for `vc-prepare-patch'. Philip> +If nil, no default will be used. This option may be set local= ly." Philip> + :type '(choice (const :tag "No default" nil) string) Philip> + :safe #'stringp Philip> + :version "29.1") Philip> + Again, I think this can be multiple addresses. Either as a string with commas or as a list of strings perhaps?=20 Philip> +;;;###autoload Philip> +(defun vc-prepare-patch (addressee subject revisions) Philip> + "Compose an Email sending patches for REVISIONS to ADDRESSEE. Philip> +If `vc-prepare-patches-inline' is non-nil, SUBJECT will be used Philip> +as the default subject for the message. Otherwise a separate Philip> +message will be composed for each revision. Philip> + ? What does `vc-prepare-patches-inline' have to do with the SUBJECT? Philip> It includes Philip> - some documentation for the Emacs manual and etc/NEWS, Philip> - a revised "prepare-patch" interface that uses buffers instead= of Philip> temporary files (I hope this improves the encoding issue), If it=CA=BCs all buffers now then I think you need to update this comment: +;; +;; - prepare-patch (rev) +;; +;; Prepare a patch and return a property list with the keys +;; `:subject' indicating the patch message as a string, `:body' +;; containing the contents of the patch as a string (excluding the +;; header) and `:filename' pointing to a file where the patch has +;; been stored. I have no firm opinion on if there should be a default binding nor what it should be =F0=9F=98=BA Thanks for this, it will be useful Robert --=20 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 08:04:05 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 12:04:05 +0000 Received: from localhost ([127.0.0.1]:59184 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogPbh-0004Ll-0H for submit@debbugs.gnu.org; Thu, 06 Oct 2022 08:04:05 -0400 Received: from quimby.gnus.org ([95.216.78.240]:40570) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogPbf-0004LI-B6 for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 08:04:03 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=1SU8vU9Q5zwVXUd0UjL/XDeg0bhkWmIDFbD4ziyTTEU=; b=lRR47rVM9pQgrt3b0CXgGdcNTq YBs7nG9AV059lk4BmA/KED1VcY8toDGk4/dWmDnnSBTpOOPZOkIV1CICh43dllogqk2dxRukvgb14 VZyW3VT1ZD227orGBlNzEDmMjUqhLyf8qiNXFFHtyn1jXUjC/sYr+9zCk/1yTtKi9RHE=; Received: from [84.212.220.105] (helo=downe) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ogPbV-0002Sh-V7; Thu, 06 Oct 2022 14:03:56 +0200 From: Lars Ingebrigtsen To: Juri Linkov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <861qrmox5o.fsf@mail.linkov.net> (Juri Linkov's message of "Wed, 05 Oct 2022 22:57:47 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <861qrmox5o.fsf@mail.linkov.net> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEV2Uk3Au67u9vX/ ///L+4V1AAAAAWJLR0QDEQxM8gAAAAd0SU1FB+YKBgs1N3XLnRoAAAGMSURBVCjPVdKxatxAEAbg WXES8VU2SCZSlSIpck+hhFiQToGbBW2VwnegfYrD4BSu7oy1YFU6oxWeecrsSMHBWyx8aGaY/RHA u7NNoYS4vNzGJaS+7Txqt8f+AKluf3r9+EfvTA1Z0exuv0+dRlvDtcF9a1ynG/sbCvNr347F846+ zqjwmHCb4wDFg3ZXpaIkaQIcjQhQ6+hLwNjiBICbSsooNx4UoXkJYHZURvRUscBPfExwUFZAu36y zbgA/cNxzVQZGZBwz8ymcoKCe+uZipPgmilVoUymUcTsLXstGCOemK0/CY4RnxrKYjQLaAV1vBUM Cd/m1SGPe8H6NbsY4UMmGMMO8VCuWAYMxVOdXh3AzojuEfclLF9Uj8g/1DQD7IXmG+VmfPqs6lX0 bVkHMr/F8/2ChD3aAY2g3gT0L499QK42TDpEJO/5mIewAjopy+06lIX3zT1c8SmgmzfgO54C3IIz n7u5bY6XvQtJLWBpIP2GkKH5D0v2Da9W7n+QDsEqxnCUXOW7H+wv6Cvqu1FwwH4AAAAldEVYdGRh dGU6Y3JlYXRlADIwMjItMTAtMDZUMTE6NTM6NTUrMDA6MDDUG/OhAAAAJXRFWHRkYXRlOm1vZGlm eQAyMDIyLTEwLTA2VDExOjUzOjU1KzAwOjAwpUZLHQAAAABJRU5ErkJggg== X-Now-Playing: Material, Nona Hendryx's _A Christmas Record_: "It's A Holiday" Date: Thu, 06 Oct 2022 14:03:53 +0200 Message-ID: <87edvl17me.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Juri Linkov writes: > Currently 'C-x v =' (vc-diff) can be easily mistyped as 'C-x v +' (vc-pull) > often with an adverse effect because '=' and '+' are on the same key. > It would be nice to bring both 'vc-pull' and 'vc [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: Philip Kaludercic , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Juri Linkov writes: > Currently 'C-x v =' (vc-diff) can be easily mistyped as 'C-x v +' (vc-pull) > often with an adverse effect because '=' and '+' are on the same key. > It would be nice to bring both 'vc-pull' and 'vc-push' under the same > prefix key 'C-x v p'. And to add vc-prepare-patch under the same prefix. Personally, I've never hit `C-x v +' when I meant to hit `C-x v =' -- because the latter is much easier to type. (On a US keyboard, I'm sure it varies.) But grouping these commands more logically under `C-x v p' does sound attractive. That would also give us a place to put pull-and-then-push. But: > 'p' and 'S' in vc-dir are specific to the vc-dir buffer. > So 'C-x v S' could be bound to the command vc-log-search > that has no key binding. If we want `C-x v p' as a prefix, then I think `p' should also be a prefix in vc-dir. But it's taken for a command that I think people probably use all the time, so I don't think it's feasible to take it. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 08:38:39 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 12:38:39 +0000 Received: from localhost ([127.0.0.1]:59304 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogQ98-0001Md-Fp for submit@debbugs.gnu.org; Thu, 06 Oct 2022 08:38:39 -0400 Received: from mout01.posteo.de ([185.67.36.65]:35459) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogQ93-0001M6-9o for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 08:38:36 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 5C711240026 for <57400@debbugs.gnu.org>; Thu, 6 Oct 2022 14:38:27 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665059907; bh=xbybzbAcYWpHBDx7Py2HjBCnRVD2TDntchvDhj7Xrq0=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=dKcyECkkjyq6ZQWAfOz/8Q7ypEdb+n/+Jayo8yQfYh0oDnZ9GVKn8Nkunczje0nXu ZAFxWyUKbaUiQDShxunj2EMNLNpWE8RluQT7PXDy19/iPY+K8m8Dm1/K6qCiCdyeWw tWlwhgFpFHkfdXdP8CHj0YLXzASMtexmt9txIxW8dtXMWmKrzT6p9kjWKR73SBu+Fh P3KCQJsu0jhowN0uIIFeJHah3t2zRw1ens5lZj3oLdmkuI/YBZv4ZrC8lWezYeNlZr ZqjgDr3cUUetLif9mfjV39HNs1EDU4Khp1QL/Yp+hkhJCpL6TqY5AqU+rlNAvuudpv Ac4OHjs91neEQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MjrZp22CRz9rxQ; Thu, 6 Oct 2022 14:38:26 +0200 (CEST) From: Philip Kaludercic To: Robert Pluim Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87edvl6vbj.fsf@gmail.com> (Robert Pluim's message of "Thu, 06 Oct 2022 13:33:04 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Thu, 06 Oct 2022 12:38:25 +0000 Message-ID: <8735c1nn3y.fsf@posteo.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Robert Pluim writes: >>>>>> On Wed, 05 Oct 2022 17:34:22 +0000, Philip Kaludercic > said: > > Philip> +@code{vc-prepare-patch} command. This will prompt you > Philip> which revisions > Philip> +you wish to share and who the addressee is. The command > Philip> will then use > Philip> +your @abbr{MUA, Mail User Agent} for you to review and send = out. > Philip> + > > How about > > --begin-- > This will prompt you for the revisions you wish to share, and which > destination email address(es) to use. The command will then prepare > those revisions using your @abbr{MUA, Mail User Agent} for you to > review and send. > --end-- I like it. > The semantics is 'one-or-more addresses', right? Yes, right. > Philip> +@vindex vc-prepare-patches-inline > Philip> +Depending on configuration of the user option > > "Depending on the value of the user option" Sounds better. > Philip> +@code{vc-prepare-patches-inline}, @code{vc-prepare-patch} > Philip> will either > Philip> +generate a single or multiple messages. A @code{nil} > Philip> value (the default) > Philip> +will prepare and display a message for each revision, one af= ter > Philip> +another. A non-@code{nil} value will have all patches > Philip> attached to the > Philip> +body of a single message. > Philip> + > > --begin-- > @code{vc-prepare-patches-inline}, @code{vc-prepare-patch} will > generate one or more messages. The default value @code{nil} means > prepare and display a message for each revision, one after another. A > non-@code{nil} value means to generate a single message with all > patches attached in the body. > --end-- Sounds a lot better. > Philip> +@vindex vc-default-patch-addressee > Philip> +If you expect to contribute patches on a regular basis, you = can set > Philip> +the user option @code{vc-default-patch-addressee} to the add= ress you > Philip> +wish to use. This will be used as the default value when in= voking > Philip> +@code{vc-prepare-patch}. Project maintainers may consider s= etting > Philip> +this as a directory local variable (@pxref{Directory Variabl= es}). > Philip> + > > This can contain multiple addresses, I think, in which case it should > say so. Would replacing "address" with "address(es)" suffice? > Philip> +** Subr-x > Philip> + > Philip> +--- > Philip> +*** New macro 'with-funcall-substitutions'. > Philip> +The macro can be used to generically substitute function sym= bols in > Philip> +expressions. > Philip> + > Philip> ** Ansi-color > > That sounds interesting, but I don=CA=BCt see it in the patch :-) As mentioned in another response, this is from a different patch I hope to submit soon. I just had it lying around in etc/NEWS. > Philip> +(defcustom vc-prepare-patches-inline nil > Philip> + "Non-nil means that `vc-prepare-patch' creates a single > Philip> message. > > "Whether `vc-prepare-patch' attaches all revision in a single message." > > I=CA=BCm not sure this should have the suffix '-inline', because you can > have inline attachments and attached attachments, but it=CA=BCs not a big > deal. If you have a better name, there is no better time to change it than now. > I also wonder about the default. Creating 100 mail buffers by accident > is harder to recover from than a single one with 100 attachments, but > I guess experience will inform us. The only case where this might happen by accident is when someone invokes `vc-prepare-patch' in a log-edit buffer where all (or at least a lot) of revisions have been marked. In that case, one could add a "safely check" and make sure that the user actually wants to proceed. > Philip> +A single message is created by attaching all patches to the = body > Philip> +of a single message. If nil, each patch will be sent out in= a > Philip> +separate message, which will be prepared sequentially." > Philip> + :type 'boolean > Philip> + :safe #'booleanp > Philip> + :version "29.1") > Philip> + > > (I didn=CA=BCt check, can this do the [PATCH n/m] stuff with the > subject that 'git format-patch' can do?) Yes, as the Git backend just copies the subject name that git-format-patch generates. > Philip> +(defcustom vc-default-patch-addressee nil > Philip> + "Default addressee for `vc-prepare-patch'. > Philip> +If nil, no default will be used. This option may be set loc= ally." > Philip> + :type '(choice (const :tag "No default" nil) string) > Philip> + :safe #'stringp > Philip> + :version "29.1") > Philip> + > > Again, I think this can be multiple addresses. Either as a string > with commas or as a list of strings perhaps?=20 As this is just the default value for `read-multiple-choice' a list with commae should do. That being said, how common is it to have multiple people you consistently want to send a patch to? Usually you'd have a central mailing list or something like that, I'd assume. > Philip> +;;;###autoload > Philip> +(defun vc-prepare-patch (addressee subject revisions) > Philip> + "Compose an Email sending patches for REVISIONS to ADDRESS= EE. > Philip> +If `vc-prepare-patches-inline' is non-nil, SUBJECT will be u= sed > Philip> +as the default subject for the message. Otherwise a separate > Philip> +message will be composed for each revision. > Philip> + > > ? What does `vc-prepare-patches-inline' have to do with the SUBJECT? Because the subject for an "inline patch" is extracted from the commit message. > Philip> It includes > > Philip> - some documentation for the Emacs manual and etc/NEWS, > > Philip> - a revised "prepare-patch" interface that uses buffers inste= ad of > Philip> temporary files (I hope this improves the encoding issue), > > If it=CA=BCs all buffers now then I think you need to update this comment: > > +;; > +;; - prepare-patch (rev) > +;; > +;; Prepare a patch and return a property list with the keys > +;; `:subject' indicating the patch message as a string, `:body' > +;; containing the contents of the patch as a string (excluding the > +;; header) and `:filename' pointing to a file where the patch has > +;; been stored. You are right, thanks for the reminder! > I have no firm opinion on if there should be a default binding nor > what it should be =F0=9F=98=BA > > Thanks for this, it will be useful I'm glad to hear that. Here is the updated patch: --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-Add-a-VC-command-to-prepare-patches.patch >From 9e802cb4fd5657e7536bbff54fef1e8cfe7eafca Mon Sep 17 00:00:00 2001 From: Philip Kaludercic Date: Mon, 3 Oct 2022 20:54:38 +0200 Subject: [PATCH] Add a VC command to prepare patches * doc/emacs/vc1-xtra.texi (Miscellaneous VC): Add new node. (Editing VC Commands): Document new feature. * etc/NEWS: Mention 'vc-prepare-patch'. * lisp/vc/log-view.el: Autoload 'log-view-get-marked'. * lisp/vc/vc-git.el (vc-git-prepare-patch): Add Git implementation. * lisp/vc/vc-hg.el (vc-git-prepare-patch): Add Mercurial implementation. * lisp/vc/vc-bzr.el (vc-git-prepare-patch): Add Bazaar implementation. * lisp/vc/vc.el (vc-read-revision): Add a MULTIPLE argument. (vc-read-multiple-revisions): Add an auxiliary function that always calls 'vc-read-revision' with a non-nil value for MULTIPLE. (vc-prepare-patches-inline): Add user option. (message-goto-body): Declare function. (message--name-table): Declare function. (vc-default-prepare-patch): Add a default implementation. (vc-prepare-patch): Add command. (Bug#57400) --- doc/emacs/vc1-xtra.texi | 27 +++++++++ etc/NEWS | 18 ++++++ lisp/vc/log-view.el | 1 + lisp/vc/vc-bzr.el | 14 +++++ lisp/vc/vc-git.el | 24 ++++++++ lisp/vc/vc-hg.el | 12 ++++ lisp/vc/vc.el | 124 ++++++++++++++++++++++++++++++++++++++-- 7 files changed, 216 insertions(+), 4 deletions(-) diff --git a/doc/emacs/vc1-xtra.texi b/doc/emacs/vc1-xtra.texi index 05d2144380..00f5e5aac6 100644 --- a/doc/emacs/vc1-xtra.texi +++ b/doc/emacs/vc1-xtra.texi @@ -16,6 +16,7 @@ Miscellaneous VC * Revision Tags:: Symbolic names for revisions. * Version Headers:: Inserting version control headers into working files. * Editing VC Commands:: Editing the VC shell commands that Emacs will run. +* Preparing Patches:: Preparing and Composing patches from within VC @end menu @node Change Logs and VC @@ -282,6 +283,32 @@ Editing VC Commands additional branches to the end of the @samp{git log} command that VC is about to run. +@node Preparing Patches +@subsubsection Preparing Patches + +@findex vc-prepare-patch +When collaborating on projects it is common to send patches via email, +to share changes. If you wish to do this using VC, you can use the +@code{vc-prepare-patch} command. This will prompt you for the +revisions you wish to share, and which destination email address(es) +to use. The command will then prepare those revisions using your +@abbr{MUA, Mail User Agent} for you to review and send. + +@vindex vc-prepare-patches-inline +Depending on the value of the user option +@code{vc-prepare-patches-inline}, @code{vc-prepare-patch} will +generate one or more messages. The default value @code{nil} means +prepare and display a message for each revision, one after another. A +non-@code{nil} value means to generate a single message with all +patches attached in the body. + +@vindex vc-default-patch-addressee +If you expect to contribute patches on a regular basis, you can set +the user option @code{vc-default-patch-addressee} to the address(es) +you wish to use. This will be used as the default value when invoking +@code{vc-prepare-patch}. Project maintainers may consider setting +this as a directory local variable (@pxref{Directory Variables}). + @node Customizing VC @subsection Customizing VC diff --git a/etc/NEWS b/etc/NEWS index 536c7aa319..58a0745a1b 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1865,6 +1865,24 @@ Git commands display summary lines. See the two new user options It is used to style the line that separates the 'log-edit' headers from the 'log-edit' summary. +--- +*** The function 'vc-read-revision' accepts a new MULTIPLE argument. +If non-nil, multiple revisions can be queried. This is done using +'completing-read-multiple'. + +--- +*** New function 'vc-read-multiple-revisions' +This function invokes 'vc-read-revision' with a non-nil value for +MULTIPLE. + ++++ +*** New command 'vc-prepare-patch'. +Patches for any version control system can be prepared using VC. The +command will query what commits to send and will compose messages for +your mail user agent. The behaviour of 'vc-prepare-patch' can be +modified by the user options 'vc-prepare-patches-inline' and +'vc-default-patch-addressee'. + ** Message --- diff --git a/lisp/vc/log-view.el b/lisp/vc/log-view.el index 415b1564ed..7a710386fe 100644 --- a/lisp/vc/log-view.el +++ b/lisp/vc/log-view.el @@ -359,6 +359,7 @@ log-view-toggle-mark-entry (overlay-put ov 'log-view-self ov) (overlay-put ov 'log-view-marked (nth 1 entry)))))))) +;;;###autoload (defun log-view-get-marked () "Return the list of tags for the marked log entries." (save-excursion diff --git a/lisp/vc/vc-bzr.el b/lisp/vc/vc-bzr.el index bce7996712..6f77f99555 100644 --- a/lisp/vc/vc-bzr.el +++ b/lisp/vc/vc-bzr.el @@ -1324,6 +1324,20 @@ vc-bzr-repository-url (match-string 1) (error "Cannot determine Bzr repository URL"))))) +(defun vc-bzr-prepare-patch (rev) + (with-current-buffer (generate-new-buffer " *vc-bzr-prepare-patch*") + (vc-bzr-command + "send" t 0 '() + "--revision" (concat (vc-bzr-previous-revision nil rev) ".." rev) + "--output" "-") + (let (subject) + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^[^#].*") + (setq subject (match-string 0)) + ;; Return the extracted data + (list :subject subject :buffer (current-buffer))))) + (provide 'vc-bzr) ;;; vc-bzr.el ends here diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 4a2a42ad2a..f9dae8b9ea 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -95,6 +95,7 @@ ;; - find-file-hook () OK ;; - conflicted-files OK ;; - repository-url (file-or-dir) OK +;; - prepare-patch (rev) OK ;;; Code: @@ -1742,6 +1743,29 @@ vc-git-extra-status-menu (defun vc-git-root (file) (vc-find-root file ".git")) +(defun vc-git-prepare-patch (rev) + (with-current-buffer (generate-new-buffer " *vc-git-prepare-patch*") + (vc-git-command + t 0 '() "format-patch" + "--no-numbered" "--stdout" + ;; From gitrevisions(7): ^ means the th parent + ;; (i.e. ^ is equivalent to ^1). As a + ;; special rule, ^0 means the commit itself and + ;; is used when is the object name of a tag + ;; object that refers to a commit object. + (concat rev "^.." rev)) + (let (subject) + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^Subject: \\(.+\\)") + (setq subject (match-string 1)) + ;; Jump to the beginning for the patch + (search-forward-regexp "\n\n") + ;; Return the extracted data + (list :subject subject + :buffer (current-buffer) + :body-start (point))))) + ;; grep-compute-defaults autoloads grep. (declare-function grep-read-regexp "grep" ()) (declare-function grep-read-files "grep" (regexp)) diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.el index eed9592378..2eebe2d543 100644 --- a/lisp/vc/vc-hg.el +++ b/lisp/vc/vc-hg.el @@ -80,6 +80,7 @@ ;; - delete-file (file) TEST IT ;; - rename-file (old new) OK ;; - find-file-hook () added for bug#10709 +;; - prepare-patch (rev) OK ;; 2) Implement Stefan Monnier's advice: ;; vc-hg-registered and vc-hg-state @@ -1507,6 +1508,17 @@ vc-hg-merge-branch (with-current-buffer buffer (vc-run-delayed (vc-compilation-mode 'hg))) (vc-set-async-update buffer))) +(defun vc-hg-prepare-patch (rev) + (with-current-buffer (generate-new-buffer " *vc-hg-prepare-patch*") + (vc-hg-command t 0 '() "export" "--rev" rev) + (let (subject) + ;; Extract the subject line + (goto-char (point-min)) + (search-forward-regexp "^[^#].*") + (setq subject (match-string 0)) + ;; Return the extracted data + (list :subject subject :buffer (current-buffer))))) + ;;; Internal functions (defun vc-hg-command (buffer okstatus file-or-list &rest flags) diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index 787dd51d07..52ea2b83cf 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -574,6 +574,16 @@ ;; containing FILE-OR-DIR. The optional REMOTE-NAME specifies the ;; remote (in Git parlance) whose URL is to be returned. It has ;; only a meaning for distributed VCS and is ignored otherwise. +;; +;; - prepare-patch (rev) +;; +;; Prepare a patch and return a property list with the keys +;; `:subject' indicating the patch message as a string, `:buffer' +;; with a buffer object that contains the entire patch message and +;; `:body-start' and `:body-end' demarcating what part of said +;; buffer should be inserted into an inline patch. If the two last +;; properties are omitted, `point-min' and `point-max' will +;; respectively be used instead. ;;; Changes from the pre-25.1 API: ;; @@ -1910,7 +1920,7 @@ vc-diff-internal (defvar vc-revision-history nil "History for `vc-read-revision'.") -(defun vc-read-revision (prompt &optional files backend default initial-input) +(defun vc-read-revision (prompt &optional files backend default initial-input multiple) (cond ((null files) (let ((vc-fileset (vc-deduce-fileset t))) ;FIXME: why t? --Stef @@ -1923,9 +1933,16 @@ vc-read-revision (completion-table (vc-call-backend backend 'revision-completion-table files))) (if completion-table - (completing-read prompt completion-table - nil nil initial-input 'vc-revision-history default) - (read-string prompt initial-input nil default)))) + (funcall + (if multiple #'completing-read-multiple #'completing-read) + prompt completion-table nil nil initial-input 'vc-revision-history default) + (let ((answer (read-string prompt initial-input nil default))) + (if multiple + (split-string answer "[ \t]*,[ \t]*") + answer))))) + +(defun vc-read-multiple-revisions (prompt &optional files backend default initial-input) + (vc-read-revision prompt files backend default initial-input t)) (defun vc-diff-build-argument-list-internal (&optional fileset) "Build argument list for calling internal diff functions." @@ -3264,6 +3281,105 @@ vc-edit-next-command (lambda (&rest args) (apply #'vc-user-edit-command (apply old args)))))) +(defcustom vc-prepare-patches-inline nil + "Non-nil means that `vc-prepare-patch' creates a single message. +A single message is created by attaching all patches to the body +of a single message. If nil, each patch will be sent out in a +separate message, which will be prepared sequentially." + :type 'boolean + :safe #'booleanp + :version "29.1") + +(defcustom vc-default-patch-addressee nil + "Default addressee for `vc-prepare-patch'. +If nil, no default will be used. This option may be set locally." + :type '(choice (const :tag "No default" nil) + (string :tag "Addressee")) + :safe #'stringp + :version "29.1") + +(declare-function message--name-table "message" (orig-string)) +(declare-function mml-attach-buffer "mml" + (buffer &optional type description disposition)) +(declare-function log-view-get-marked "log-view" ()) + +(defun vc-default-prepare-patch (rev) + (let ((backend (vc-backend buffer-file-name))) + (with-current-buffer (generate-new-buffer " *vc-default-prepare-patch*") + (vc-diff-internal + nil (list backend) rev + (vc-call-backend backend 'previous-revision + buffer-file-name rev) + nil t) + (list :subject (concat "Patch for " + (file-name-nondirectory + (directory-file-name + (vc-root-dir)))) + :buffer (current-buffer))))) + +;;;###autoload +(defun vc-prepare-patch (addressee subject revisions) + "Compose an Email sending patches for REVISIONS to ADDRESSEE. +If `vc-prepare-patches-inline' is non-nil, SUBJECT will be used +as the default subject for the message. Otherwise a separate +message will be composed for each revision. + +When invoked interactively in a Log View buffer with marked +revisions, these revisions will be used." + (interactive + (let ((revs (or (log-view-get-marked) + (vc-read-multiple-revisions "Revisions: "))) + to) + (require 'message) + (while (null (setq to (completing-read-multiple + (format-prompt + "Addressee" + vc-default-patch-addressee) + (message--name-table "") + nil nil nil nil + vc-default-patch-addressee))) + (message "At least one addressee required.") + (sit-for blink-matching-delay)) + (list (string-join to ", ") + (and vc-prepare-patches-inline + (read-string "Subject: " "[PATCH] " nil nil t)) + revs))) + (save-current-buffer + (vc-ensure-vc-buffer) + (let ((patches (mapcar (lambda (rev) + (vc-call-backend + (vc-responsible-backend default-directory) + 'prepare-patch rev)) + revisions))) + (if (not vc-prepare-patches-inline) + (dolist (patch patches) + (compose-mail addressee + (plist-get patch :subject) + nil nil nil nil + `((kill-buffer ,(plist-get patch :buffer)) + (exit-recursive-edit))) + (rfc822-goto-eoh) (forward-line) + (save-excursion ;don't jump to the end + (insert-buffer-substring + (plist-get patch :buffer) + (plist-get patch :body-start) + (plist-get patch :body-end))) + (recursive-edit)) + (compose-mail addressee subject nil nil nil nil + (mapcar + (lambda (p) + (list #'kill-buffer (plist-get p :buffer))) + patches)) + (rfc822-goto-eoh) + (forward-line) + (save-excursion + (dolist (patch patches) + (mml-attach-buffer (buffer-name (plist-get patch :buffer)) + "text/x-patch" + (plist-get patch :subject) + "attachment"))) + (open-line 2))))) + (defun vc-default-responsible-p (_backend _file) "Indicate whether BACKEND is responsible for FILE. The default is to return nil always." -- 2.37.3 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 08:58:48 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 12:58:48 +0000 Received: from localhost ([127.0.0.1]:59364 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogQSe-0004B2-2V for submit@debbugs.gnu.org; Thu, 06 Oct 2022 08:58:48 -0400 Received: from mail-wr1-f46.google.com ([209.85.221.46]:33677) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogQSb-0004Ap-Sh for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 08:58:46 -0400 Received: by mail-wr1-f46.google.com with SMTP id a3so2649084wrt.0 for <57400@debbugs.gnu.org>; Thu, 06 Oct 2022 05:58:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=OOOm2YkEHBvRu121K89g/WNK7izQU+nsqu4d0Ya4BOw=; b=YpJ4EKFn22LBBw3gMZx3hxNnjgtKRHH8x7au5M2t4vbnSmnNtA4ZBZSBnUkWd7zXMO BsOAwknyS/swBBwt95oiBiXeicZf5PxXOb3MwBLlJKlPkK0k2wxsMg2JwvGQyaRPTd50 B+FpVlyKzSNt3lc1lg5UiRovrfvX6VJGUmALuh8eptCdEoZ/7t7o6ET5uFUgfSnMigo6 DjmV9ijApWMc1F2Gfj+3zeFnqNc9Wm54YYyYfpquhgKtcclbUzBmhMcHRGjXV8bO0rkI J/BJ1/UreWIbGeISxQ6KoOIMqsAUyJlUq4WjDkeoCWpPo/VFEiV38scWN7Hnto5l/oTw w8ig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OOOm2YkEHBvRu121K89g/WNK7izQU+nsqu4d0Ya4BOw=; b=m1veefzGG/yu6ajRY0V11gLzp+kgwYjiSsnxet4MrX1glxRgPnGfaWbQWNrTrmF03m KP7GZ00oXJm80r9HfGywoZnUXZHxWzH9jBQuhBWYTwTZx/IF5aw0VofA6/5kRU+48mlA Orfm2O/kPFXwX/VLd4VQsKoAv2zW5YqafPYxjTTYeIjUz+dM8uuePGZwH7n6Ok1Yfpmy nXCuGVLQICxy8TEmAhC/lZeDezzk2XenQt0OvFN4+ISz1ZNEmqZEDenpAzXj2E60LYB9 A/wFZ9MSiv/5jfMu2AWTRA65A4+Mc9MJLsYNMFczJQnJg8mBzk34hgWoZCdZcBXqE1d6 yEKA== X-Gm-Message-State: ACrzQf0Uu0fyUgFYf1aD4E2rafsjdIZX3AYOuaU4AobdGmQU5dTr3q5o wlRph5c3Q+1T531hJhvyHBQ= X-Google-Smtp-Source: AMsMyM4W9B7CpUlbgRrk6b44oNJYcXgtGJzb680MxwTquF9qHvnU/rzkRsukUJdwKHOEzhZxWXTzJw== X-Received: by 2002:a5d:5849:0:b0:22b:a0e:11e0 with SMTP id i9-20020a5d5849000000b0022b0a0e11e0mr3277271wrf.72.1665061119738; Thu, 06 Oct 2022 05:58:39 -0700 (PDT) Received: from rltb ([2a01:e0a:3f3:fb50:912:1b38:fb01:987c]) by smtp.gmail.com with ESMTPSA id l6-20020a5d5606000000b00228d52b935asm18368736wrv.71.2022.10.06.05.58.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Oct 2022 05:58:38 -0700 (PDT) From: Robert Pluim To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <8735c1nn3y.fsf@posteo.net> (Philip Kaludercic's message of "Thu, 06 Oct 2022 12:38:25 +0000") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> Date: Thu, 06 Oct 2022 14:58:37 +0200 Message-ID: <877d1d6rcy.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >>>>> On Thu, 06 Oct 2022 12:38:25 +0000, Philip Kaludercic said: Philip> +(defcustom vc-prepare-patches-inline nil Philip> + "Non-nil means that `vc-prepare-patch' creates a single Philip> message. >>=20 >> "Whether `vc-prepare-patch' attaches all revision in a single messag= e." >>=20 >> I=CA=BCm not sure this should have the suffix '-inline', because you= can >> have inline attachments and attached attachments, but it=CA=BCs not = a big >> deal. Philip> If you have a better name, there is no better time to change it= than now. `vc-prepare-patch-attach'? `vc-prepare-patch-attach-patches'? It=CA=BCs all a bit of a mouthful to type, and it doesn=CA=BCt feel like much of an improvement over what you have. >> I also wonder about the default. Creating 100 mail buffers by accide= nt >> is harder to recover from than a single one with 100 attachments, but >> I guess experience will inform us. Philip> The only case where this might happen by accident is when someo= ne Philip> invokes `vc-prepare-patch' in a log-edit buffer where all (or a= t least a Philip> lot) of revisions have been marked. In that case, one could ad= d a Philip> "safely check" and make sure that the user actually wants to pr= oceed. That sounds sufficiently hard to achieve by accident that we should leave it alone for now. Philip> +A single message is created by attaching all patches to the bo= dy Philip> +of a single message. If nil, each patch will be sent out in a Philip> +separate message, which will be prepared sequentially." Philip> + :type 'boolean Philip> + :safe #'booleanp Philip> + :version "29.1") Philip> + >>=20 >> (I didn=CA=BCt check, can this do the [PATCH n/m] stuff with the >> subject that 'git format-patch' can do?) Philip> Yes, as the Git backend just copies the subject name that Philip> git-format-patch generates. Perfect Philip> As this is just the default value for `read-multiple-choice' a = list with Philip> commae should do. That being said, how common is it to have mu= ltiple Philip> people you consistently want to send a patch to? Usually you'd= have a Philip> central mailing list or something like that, I'd assume. Right, and it=CA=BCs a string, so it caters for multiple addresses. >> ? What does `vc-prepare-patches-inline' have to do with the SUBJECT? Philip> Because the subject for an "inline patch" is extracted from the= commit Philip> message. Perhaps mention that in the docstring? Anyway, I think I=CA=BCve picked enough nits for this patch. Robert --=20 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 10:38:11 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 14:38:11 +0000 Received: from localhost ([127.0.0.1]:33118 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogS0p-0007kN-5O for submit@debbugs.gnu.org; Thu, 06 Oct 2022 10:38:11 -0400 Received: from mout02.posteo.de ([185.67.36.66]:44705) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogS0n-0007jz-E7 for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 10:38:10 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 834DC240101 for <57400@debbugs.gnu.org>; Thu, 6 Oct 2022 16:38:02 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665067083; bh=VAwVxmENjP76a/dD2gLQr3Nyb6RDfZGiDW1Ds0cC43w=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=KzcPyycTlKR0xLFKhJdUpjkKW23ECV8B6A2gB+m0gXgaXfJvbOMcda+3CL3sliQmZ hhZnSqVnYOdGTf7FLgfpmrvP43Za7LnFJxmlfnpnTYRlvx0PcsJmFMEOxvy0KpvPOC hTD2CEtqC3mLV0pDQTO/ECMa22oH8iWJlL26z3n4DlO7Uxvy2FIQiBgTYmXR2FEr+e JOi7yCHqULitSeHLMKqvYPh7zMi7HHUw7mNhRhNWSy4qn5U2mI1eANZ+OHnOTkTGS5 zPfZSIpBBVS3EkJNm6EO9HXXE3psOsJCSFoWTOg46HXRWFbI6MNye/pmCKDoH6ZxX7 4h3lJSZiqMrYQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MjvDl3rRJz6tnC; Thu, 6 Oct 2022 16:37:59 +0200 (CEST) From: Philip Kaludercic To: Robert Pluim Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <877d1d6rcy.fsf@gmail.com> (Robert Pluim's message of "Thu, 06 Oct 2022 14:58:37 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Thu, 06 Oct 2022 14:37:59 +0000 Message-ID: <87sfk1m308.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Robert Pluim writes: >>>>>> On Thu, 06 Oct 2022 12:38:25 +0000, Philip Kaludercic > said: > Philip> +(defcustom vc-prepare-patches-inline nil > Philip> + "Non-nil means that `vc-prepare-patch' creates a single > Philip> message. > >>=20 > >> "Whether `vc-prepare-patch' attaches all revision in a single mess= age." > >>=20 > >> I=CA=BCm not sure this should have the suffix '-inline', because y= ou can > >> have inline attachments and attached attachments, but it=CA=BCs no= t a big > >> deal. > > Philip> If you have a better name, there is no better time to > Philip> change it than now. > > `vc-prepare-patch-attach'? `vc-prepare-patch-attach-patches'? It=CA=BCs a= ll > a bit of a mouthful to type, and it doesn=CA=BCt feel like much of an > improvement over what you have. Maybe `vc-prepare-patches-separately' and set the value to t by defaut? > >> I also wonder about the default. Creating 100 mail buffers by acci= dent > >> is harder to recover from than a single one with 100 attachments, = but > >> I guess experience will inform us. > > Philip> The only case where this might happen by accident is when som= eone > Philip> invokes `vc-prepare-patch' in a log-edit buffer where all > Philip> (or at least a > Philip> lot) of revisions have been marked. In that case, one could = add a > Philip> "safely check" and make sure that the user actually wants to = proceed. > > That sounds sufficiently hard to achieve by accident that we > should leave it alone for now. Ok. > Philip> +A single message is created by attaching all patches to the = body > Philip> +of a single message. If nil, each patch will be sent out in= a > Philip> +separate message, which will be prepared sequentially." > Philip> + :type 'boolean > Philip> + :safe #'booleanp > Philip> + :version "29.1") > Philip> + > >>=20 > >> (I didn=CA=BCt check, can this do the [PATCH n/m] stuff with the > >> subject that 'git format-patch' can do?) > > Philip> Yes, as the Git backend just copies the subject name that > Philip> git-format-patch generates. > > Perfect > > Philip> As this is just the default value for > Philip> `read-multiple-choice' a list with > Philip> commae should do. That being said, how common is it to have = multiple > Philip> people you consistently want to send a patch to? Usually > Philip> you'd have a > Philip> central mailing list or something like that, I'd assume. > > Right, and it=CA=BCs a string, so it caters for multiple addresses. I am confused, so everything in fine? > >> ? What does `vc-prepare-patches-inline' have to do with the SUBJEC= T? > > Philip> Because the subject for an "inline patch" is extracted > Philip> from the commit > Philip> message. > > Perhaps mention that in the docstring? That should be doable. > Anyway, I think I=CA=BCve picked enough nits for this patch. If there is anything more to nit, please pick. > Robert From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 10:43:32 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 14:43:32 +0000 Received: from localhost ([127.0.0.1]:33155 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogS5z-0007uv-Mh for submit@debbugs.gnu.org; Thu, 06 Oct 2022 10:43:31 -0400 Received: from mail-wr1-f48.google.com ([209.85.221.48]:33584) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogS5y-0007to-G6 for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 10:43:30 -0400 Received: by mail-wr1-f48.google.com with SMTP id a3so3103664wrt.0 for <57400@debbugs.gnu.org>; Thu, 06 Oct 2022 07:43:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=OlqKpTXRsz3EF6WfiDVdA4/lxI200ueeQOkQI6T1H9U=; b=OL9m7XhwjY2BlRzUHlCQFyD9FFtoPspEJWmcSeekKVbKO+iuLuZVDfaOZRKDZHPzBE X1ZoMywOXg+lbYOhD7b6jAJUVkx+cjxmgSBkFObLPtUpfTLuaGihZDkkOQjoeoFVR8O+ fdIJyS4Ykk6TQIh9TCEuBUNKs7q4ampFu2hNEka1A90Z+CD8MBbi/cFfg+uNRPAYuXbX xzIMtsls9NNECAGhtGdcUN/xjfsCUGyMlM/GFFTv8HNZ+189qGSd5yhnOtDGtdDRbkEn 1yTkq+XN6rwVIoNyiDWKFNiJ1V9jIvl4vXFwRD3ECVexVL9expIZiXWlyErK7x9DB6HV 5HJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OlqKpTXRsz3EF6WfiDVdA4/lxI200ueeQOkQI6T1H9U=; b=HUzpss//rZBLudcdemwV0RvPlLYFOO7RyWE5PoRs909YVixx4tyiz+q6tQ+J48c6rC HcDymsR9xp2F4RUFNqfD42AfzAQ/m2/0W8RRRMufs7KlgQFaG2ss0cO/bdxMlerNmJRr fUxHsLOiq2ZsFF3fjT0nDbnRugJrejVIRlPV8Xf3d2D+TKufktqeJmnkpxH8Mk0KIiUv a3vr/Tx3YwKkmbkwCQqob4gyGc1OPiw64+SSQYSeNYyaCFyPZ5yLmp5k4n3gOCLTblqE JoZWZLy+y9od4GN8X/CB8KIEuDnus9ADaAeCjIru9XBOqSoBBuhZVw4xC67dPhQVYbG6 XWiA== X-Gm-Message-State: ACrzQf0xBPtkGYuRHZasjwmcr97vNo9tO0/yAUqDaAdCRoYM2YFZTE1N 3V48ofVSjlOJT52qLJkiS2M= X-Google-Smtp-Source: AMsMyM5gz8M66BSB4kXVR2bBtiKTckOLo8Py1niwz2fyWK0RX1pjlhy4DgWStXIoWhiqPkmFPZPK2w== X-Received: by 2002:a5d:50cf:0:b0:22d:f2f:dee9 with SMTP id f15-20020a5d50cf000000b0022d0f2fdee9mr165559wrt.529.1665067404281; Thu, 06 Oct 2022 07:43:24 -0700 (PDT) Received: from rltb ([2a01:e0a:3f3:fb50:912:1b38:fb01:987c]) by smtp.gmail.com with ESMTPSA id n3-20020a1ca403000000b003b49bd61b19sm4993497wme.15.2022.10.06.07.43.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Oct 2022 07:43:23 -0700 (PDT) From: Robert Pluim To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87sfk1m308.fsf@posteo.net> (Philip Kaludercic's message of "Thu, 06 Oct 2022 14:37:59 +0000") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <87sfk1m308.fsf@posteo.net> Date: Thu, 06 Oct 2022 16:43:22 +0200 Message-ID: <87zge957xx.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >>>>> On Thu, 06 Oct 2022 14:37:59 +0000, Philip Kaludercic said: Philip> Maybe `vc-prepare-patches-separately' and set the value to t by= defaut? Yes, that sounds good >> Right, and it=CA=BCs a string, so it caters for multiple addresses. Philip> I am confused, so everything in fine? Yes, it=CA=BCs fine Philip> If there is anything more to nit, please pick. At some point you just have to push the changes, and deal with the fallout :-) Robert --=20 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 11:54:45 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 15:54:45 +0000 Received: from localhost ([127.0.0.1]:33256 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogTCv-0001Js-9X for submit@debbugs.gnu.org; Thu, 06 Oct 2022 11:54:45 -0400 Received: from eggs.gnu.org ([209.51.188.92]:32828) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogTCr-0001Jd-Dk for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 11:54:44 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:59426) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ogTCk-000366-7I; Thu, 06 Oct 2022 11:54:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=VHauiWaWDpMKQ2ZgXMBA3YO6uRqVN9J242OE1BZlnZg=; b=Trkv8k80pA3h sW73/5pL/9ueJn9LjTLjB7HpXJWsNUzMMl3n08nnrAQddnj7DUPU8+69ug1A12hR+Yn/njznrg9m6 5ucorGpmODzm/pVqVk5+hWLhRedjcGVjEOp2hdCyLDQHMUaQuuliUhNm6lUXO7F0XSEC7+jkFlKpP OgpcUtfNZLFg5QnOdoLbM/81ZnOMwKlIJ/qXH1XNkc2mjO/5/cpjf8vIUKxzeC+jYZVy35svtzFjW 5PJVjlz9S3fSvWD4HMqVdvRThVXlF4Ii49gF0QiUyAzmDAw5JHlOlkSjg/iq3bQqNrbnWf/Yztbi5 ydlQo7tLjvfmkC2AhR8dXQ==; Received: from [87.69.77.57] (port=1217 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ogTCW-0005A3-T2; Thu, 06 Oct 2022 11:54:33 -0400 Date: Thu, 06 Oct 2022 18:54:18 +0300 Message-Id: <83h70hoslx.fsf@gnu.org> From: Eli Zaretskii To: Philip Kaludercic In-Reply-To: <87sfk1m308.fsf@posteo.net> (message from Philip Kaludercic on Thu, 06 Oct 2022 14:37:59 +0000) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <87sfk1m308.fsf@posteo.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: rpluim@gmail.com, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: 57400@debbugs.gnu.org, Antoine Kalmbach > From: Philip Kaludercic > Date: Thu, 06 Oct 2022 14:37:59 +0000 > > Maybe `vc-prepare-patches-separately' and set the value to t by defaut? Why t by default? Isn't it better to have all the patch series in the same message? From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 12:27:13 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 16:27:13 +0000 Received: from localhost ([127.0.0.1]:33350 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogTiK-0002EG-R4 for submit@debbugs.gnu.org; Thu, 06 Oct 2022 12:27:13 -0400 Received: from mout02.posteo.de ([185.67.36.66]:34949) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogTiH-0002E0-2t for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 12:27:11 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id ACDCB240103 for <57400@debbugs.gnu.org>; Thu, 6 Oct 2022 18:27:02 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665073622; bh=6kNNEMcZDPgJnN56jDJKQVJ7CiqQTgCPlyD2akK0/1o=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=i8/PSDVk8jQun9b0IxX1iWTX1OLGezS9Fa+DuHEdJ6voyoY4yW8GSaQjn8N7zOqUU tUYP4MJJNsTs6jLlLHRkmHiCABj5F4YMRRY2okbfv07cOfVkB5HvhOvyRvYU60n3i6 KHeu+7Old6GwoijLmrNSjq0ETF9S+wzGKlgL7NPnxACM9PEel10bHlSJqip8uQqd8O 3dO6zxYCbN35Hmp1y7050VoQOc78ski816FgVVZNcON9xK8+gshu3bTQPtNCZxquXM p7rOLqbTAjaTsem2y/xt/HQkolPy2obL8WvTErmMPDSSJZ7e6FTPSClX9PxuzeQa77 1p0UAQ6D/xXYg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MjxfX5FRvz9rxW; Thu, 6 Oct 2022 18:27:00 +0200 (CEST) From: Philip Kaludercic To: Eli Zaretskii Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <83h70hoslx.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 06 Oct 2022 18:54:18 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <87sfk1m308.fsf@posteo.net> <83h70hoslx.fsf@gnu.org> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Thu, 06 Oct 2022 16:27:00 +0000 Message-ID: <87edvknciz.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: rpluim@gmail.com, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: >> Cc: 57400@debbugs.gnu.org, Antoine Kalmbach >> From: Philip Kaludercic >> Date: Thu, 06 Oct 2022 14:37:59 +0000 >> >> Maybe `vc-prepare-patches-separately' and set the value to t by defaut? > > Why t by default? Isn't it better to have all the patch series in the > same message? I believe we have discussed this already in a tangent to this bug report, but if the option is to be useful as a "git send-email" replacement, it should conform to that style by default. I believe more mailing-list based projects insist on that style, that there are projects that accept attachments. And as this is a user option, anyone can easily change it, so I think that the default choice is reasonable. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 18:10:43 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 22:10:43 +0000 Received: from localhost ([127.0.0.1]:33749 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogZ4k-00078x-TX for submit@debbugs.gnu.org; Thu, 06 Oct 2022 18:10:43 -0400 Received: from mail-wr1-f46.google.com ([209.85.221.46]:37602) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogZ4i-00078c-Cf for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 18:10:41 -0400 Received: by mail-wr1-f46.google.com with SMTP id bv10so1100370wrb.4 for <57400@debbugs.gnu.org>; Thu, 06 Oct 2022 15:10:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date; bh=zD+UUs6vQ9TLA5KchejJfdi5Y7fv4f+qfur2EwWpNI8=; b=lARW7wW6KYGv0ul5RqqieNJHw8Z5fSYkJk/QxFroDpniR2ixEWEQd995cz8D4sbHDz EUOPkVQgZtYnLczEntm4I8XM+WUK5zDy3KFbfxMvsk8Msak39QA3W11UoElP3rKNFayP uJYKpQwhR35m8M+JZulE4OO2H96yrlRurvGFdimM2MxA2YKyGJBpIdfO0QZH7RQnNaUC vsV9JACEVJzCpn1H7EHG5GIA3YwwqXmQoexE1wjJX/h62xXPA28Fu4hcWwDS6RSS9ZQm mvfOkM/xQ2wNF1I3ZCH06xSQGi9A3T5RNtsPqG+XC08SKP6A0X3RBOMj5JCC3P5uXQE3 25kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date; bh=zD+UUs6vQ9TLA5KchejJfdi5Y7fv4f+qfur2EwWpNI8=; b=k5xJEAevMhOhYh+l3FJBTf0wPj8l8MXPjojDa59roMVParIH99LoKdzUUM7mpcVQJz Uw6HMNRc0muU6hk9an8gOdn9lgPFSlwiWN8Uf0x3KiQjhpl4FUqkeDSFHy9kYdGUPLzd BeD4n/g6r/0BsldQsovd1uvEKfzkW7kUucSS+oPc4CEoxXIGNXBeUuvShW1MZovmgyrM fV2EG5aZHvfH+ITyPLYo/TH51qftVDlSrEopoEe/p8wfFzm17rYeGxsQn8+/GPDwnh8A X/0LGOVoke3RLIdWxPF0Ig3XI34MvhpVCgYxyOQIp/5Y9HB1TTE9yERSj0VoCQulFZzg BfPQ== X-Gm-Message-State: ACrzQf28kKPhhR5sElmSFD6sl4STZuTQtRlcZJajl/kk2OPO55zJySj8 zcvYBc4bAmqWzIu94dhyekg= X-Google-Smtp-Source: AMsMyM7nYASuxAtihDnfIdgO185CEGKf6uAByj2xvnBzzCRgesmUzTAR29pVtEgmaBPk+XW7ZbpAVg== X-Received: by 2002:a5d:5148:0:b0:22e:53bd:31c5 with SMTP id u8-20020a5d5148000000b0022e53bd31c5mr1214869wrt.241.1665094234280; Thu, 06 Oct 2022 15:10:34 -0700 (PDT) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id iv19-20020a05600c549300b003b47b913901sm17967492wmb.1.2022.10.06.15.10.33 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 06 Oct 2022 15:10:34 -0700 (PDT) Message-ID: <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> Date: Fri, 7 Oct 2022 01:10:32 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly To: Philip Kaludercic , Robert Pluim References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> Content-Language: en-US From: Dmitry Gutov In-Reply-To: <8735c1nn3y.fsf@posteo.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) Hi Philip, On 06.10.2022 15:38, Philip Kaludercic wrote: > I'm glad to hear that. Here is the updated patch: This version resolves the main questions I had as well. Here's one more, though: the way I normally used 'git format-patch' is I pass just one ref, and that's usually the name of the branch to start the history at (the argument from the manual). So I never had to "type revisions in the Git syntax" for this to work, something Eli was worried about. Should this new command support this usage as well? The range of revisions could be fetched by passing the base revision as LIMIT to the 'print-log' action (like vc-log-mergebase does), but how the updated calling convention for vc-prepare-patch will look is not obvious to me. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 06 18:22:53 2022 Received: (at 57400) by debbugs.gnu.org; 6 Oct 2022 22:22:53 +0000 Received: from localhost ([127.0.0.1]:33765 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogZGP-0007RE-I1 for submit@debbugs.gnu.org; Thu, 06 Oct 2022 18:22:53 -0400 Received: from mail-wr1-f42.google.com ([209.85.221.42]:35385) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogZGN-0007R1-WD for 57400@debbugs.gnu.org; Thu, 06 Oct 2022 18:22:44 -0400 Received: by mail-wr1-f42.google.com with SMTP id u10so4713888wrq.2 for <57400@debbugs.gnu.org>; Thu, 06 Oct 2022 15:22:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date; bh=/jCGmRazHrH0ocj/XlcLKylq34ArD1ak2/Us6j2ZwXU=; b=VW3Nopti6tqU+Myp4l9eATJ7103JkA/bM/IzgGoU36d4wfUzV3neOVp8pKdiQ16JLP WnPj3vq2O5qquj6q5QP+lzwZJudsx88qNyjX6busznTR3yEQet3lyL0xLIroaNifm1rc frnjV05DWuaaa6rpTofPmUOykanIafs0u/f9T4d9v8VSzKo0CPlmW/U0aMyzunUP120f J3u4iIdGS5zM3IKgdDhsrHE0YD2LsRg5i6G7zshweZhugaJ1kRqgaNmHUTRkAz31KSd6 L7FuJRq7NY6e/90Wqb8XFg7UCZ1KSMeP23NhQ2EoCrpBj3ia5KOypG0HJGAYTJfjsQzx vgHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date; bh=/jCGmRazHrH0ocj/XlcLKylq34ArD1ak2/Us6j2ZwXU=; b=ZVkHXEIPdpGa15/xqIHOjz+ZqO2Typslg4lN2v23LZJdci9hLCcMhjRMOdW2t7K+ra 6ZL7d0LWzIkL+PvR/TVQlvxaPyYKrq/4zKYCS2oYsvbcs7d1gpX2hZL0UrSTyskw09w3 7mZ5Ckdpva5h3gMLoqebjyisGj4HUnThbZkYU2cE53SaOgFGCEAMDWTKX3Pyt5C5c5C3 MOw+Nb4hU1rM8kZ7HNf0WfmzBdBxwH4gaTMQqR6IGqRrqMkuY1wKj95b7LNTlG2M0lHP 8hgRNYJLsE01GE+Gl91wbPSBBqlOofoOmKxYHha3q1TBmluGdG1e67Tm6kNnnUug2eMH ObhA== X-Gm-Message-State: ACrzQf2xSRtXx6KsBDWYVFq7F33ArVbIhrYpP4m9LVVmpovTWFwOCK6M z3ZC2WiZGnyJdg8vKdHqzpQ= X-Google-Smtp-Source: AMsMyM5X+3jrcI2AvY16YZBYa99LK8GZRfElpAt7R2ji9IGN8VcORswO6X5iYzkscVJvDPEYiNmKRA== X-Received: by 2002:adf:cd84:0:b0:22e:2ff1:7305 with SMTP id q4-20020adfcd84000000b0022e2ff17305mr1312336wrj.650.1665094957993; Thu, 06 Oct 2022 15:22:37 -0700 (PDT) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id z2-20020a5d44c2000000b0022e55f40bc7sm404141wrr.82.2022.10.06.15.22.37 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 06 Oct 2022 15:22:37 -0700 (PDT) Message-ID: <00f6118d-c0e4-8ea2-a85d-6b3376a9a228@yandex.ru> Date: Fri, 7 Oct 2022 01:22:36 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly Content-Language: en-US To: Eli Zaretskii , Philip Kaludercic References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <83mtaarv70.fsf@gnu.org> <875ygy9kjr.fsf@posteo.net> <87fsg18gbe.fsf@posteo.net> <834jwhqpg9.fsf@gnu.org> From: Dmitry Gutov In-Reply-To: <834jwhqpg9.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On 06.10.2022 12:19, Eli Zaretskii wrote: >> From: Philip Kaludercic >> Cc:ane@iki.fi,57400@debbugs.gnu.org >> Date: Thu, 06 Oct 2022 09:14:13 +0000 >> >> Any comments on the updated patch? Should I push it? The additional >> keybindings can be resolved later. > I'd like Dmitry to review and comment, if he has time. Thanks for the ping, fortunately I noticed this message. Either the volume of messages on the mailing lists picked up, or I'm finding less free time these days, but the numbers of unread messages in my Debbugs and Emacs-Diffs folders is now in the thousands, and when I'm paging quickly through them, there are good odds of me missing some mentions. I'll try to set up tags through message filters, and see how it goes. This brings me back to the older discussion about forges and their email notifications. And being able to subscribe to specific subjects only. And also, when one is not subscribed to a thread (or perhaps to any threads as all), a @mention will be sure to attract their attention because it doesn't drown in an existing thread of messages that one might or might not be interested in reading. From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 02:37:24 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 06:37:24 +0000 Received: from localhost ([127.0.0.1]:34077 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oggz6-0003Z0-Hz for submit@debbugs.gnu.org; Fri, 07 Oct 2022 02:37:24 -0400 Received: from eggs.gnu.org ([209.51.188.92]:44868) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oggz3-0003Yk-FI for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 02:37:23 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:51134) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oggyx-0001Yv-JQ; Fri, 07 Oct 2022 02:37:15 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=Q4/8E49ccbd7NXbMyFKMsxuay2vQvVAXHfV23ni0LYA=; b=J9muSjSnMfAE lycDIYofH0z4aigig7TbEOKcGaZ1uVRLYFjHdsSQWAoCv8i4HJl8udE28dWE8Blj9Oe18Y3ESUTkw yBwV0I0UgOq7HCka5BZG4ges3EXebKHKEQuGbuwoKttXRzLcVwfdvBOQs+XicSaJLkb8OeSkSLKAo h+bYy6wMkEt8a+3hqq5CilFQgaidRgUP7bOKLbw0iv74XLHk8MDx4h3pH09aDJRQFSwC2G2I43j21 fB3fxaOA7wbDuNOHtgXf4WTlRBz/hCAZLETW9m3eFllc0I34KhcuM6hGM/5Ybul6C5QsYHzQAxmbc ys8YZ18j4YyL6NxkWg3Btg==; Received: from [87.69.77.57] (port=3538 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oggyT-0004r6-2V; Fri, 07 Oct 2022 02:36:52 -0400 Date: Fri, 07 Oct 2022 09:36:43 +0300 Message-Id: <831qrkp2bo.fsf@gnu.org> From: Eli Zaretskii To: Dmitry Gutov In-Reply-To: <00f6118d-c0e4-8ea2-a85d-6b3376a9a228@yandex.ru> (message from Dmitry Gutov on Fri, 7 Oct 2022 01:22:36 +0300) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <83mtaarv70.fsf@gnu.org> <875ygy9kjr.fsf@posteo.net> <87fsg18gbe.fsf@posteo.net> <834jwhqpg9.fsf@gnu.org> <00f6118d-c0e4-8ea2-a85d-6b3376a9a228@yandex.ru> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Date: Fri, 7 Oct 2022 01:22:36 +0300 > Cc: ane@iki.fi, 57400@debbugs.gnu.org > From: Dmitry Gutov > > Either the volume of messages on the mailing lists picked up, or I'm > finding less free time these days The former is definitely true, unfortunately. I hope it's just a transient thing, and will subside soon enough... From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 04:03:56 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 08:03:56 +0000 Received: from localhost ([127.0.0.1]:34242 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogiKp-0005mA-Ru for submit@debbugs.gnu.org; Fri, 07 Oct 2022 04:03:56 -0400 Received: from mout01.posteo.de ([185.67.36.65]:36643) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogiKo-0005lw-FH for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 04:03:55 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 46177240028 for <57400@debbugs.gnu.org>; Fri, 7 Oct 2022 10:03:45 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665129828; bh=ZzU6IzuM3bqrN8EjzD5JigEv4O406BLIpE3YpbbY8hs=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=ag9A21xYBvhABMu475IYVRJX2GrdvhRxNWLKH+z+8Rg017eiDcysa/gAplOmHcW3x MBlzdAVgAtX3KOkMICZTJIHcKolZx9K+q+1SSvJ02GxFBlF3XPsdSg/ourroXak3+c eBpu19ZGEuImeaoyAMGnBO6l4wFAPe3B1lZxUO7ebRWJH4HAjNaDyx51oyEefBmx98 /qWJus/9FmqnwReml/GpxCo51un0FjBf8wLmuVR1ST1vkudXpYQN2VNaNztrNwMHYP rLgV2gvZa3Kaz2SQHqHRnRyytmSpwyk8f1/GwqkV0TcGjCaHV/7NYjirBQBPD8U2YI Utl9CvgjcPJMQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkLRM1x37z6tnC; Fri, 7 Oct 2022 10:03:43 +0200 (CEST) From: Philip Kaludercic To: Dmitry Gutov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> (Dmitry Gutov's message of "Fri, 7 Oct 2022 01:10:32 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Fri, 07 Oct 2022 08:03:42 +0000 Message-ID: <87sfk0jc0x.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Dmitry Gutov writes: > Hi Philip, > > On 06.10.2022 15:38, Philip Kaludercic wrote: >> I'm glad to hear that. Here is the updated patch: > > This version resolves the main questions I had as well. > > Here's one more, though: the way I normally used 'git format-patch' is > I pass just one ref, and that's usually the name of the branch to > start the history at (the argument from the manual). So I > never had to "type revisions in the Git syntax" for this to work, > something Eli was worried about. It might be tricky to do this in a VC-generic way, but what I can think of would be if the command is invoked with a prefix argument, then instead of querying for specific revisions, we query for one only, then use 'next-revision' to check if it is a predecessor of the current revision. If so, all the commits in-between are used. The main issue I see here is that 'next-revision' requires a file argument. What should that be? > Should this new command support this usage as well? > > The range of revisions could be fetched by passing the base revision > as LIMIT to the 'print-log' action (like vc-log-mergebase does), but > how the updated calling convention for vc-prepare-patch will look is > not obvious to me. Even if we do this, the value of the argument "files" still remains an open question. It is for this reason that I prefer the current approach, especially when combined with the ability to select commits in a log. From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 04:05:25 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 08:05:25 +0000 Received: from localhost ([127.0.0.1]:34246 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogiMH-0005ok-CG for submit@debbugs.gnu.org; Fri, 07 Oct 2022 04:05:25 -0400 Received: from relay7-d.mail.gandi.net ([217.70.183.200]:38895) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogiMF-0005oW-FJ for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 04:05:24 -0400 Received: (Authenticated sender: juri@linkov.net) by mail.gandi.net (Postfix) with ESMTPSA id 4799B20019; Fri, 7 Oct 2022 08:05:12 +0000 (UTC) From: Juri Linkov To: Robert Pluim Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <877d1d6rcy.fsf@gmail.com> (Robert Pluim's message of "Thu, 06 Oct 2022 14:58:37 +0200") Organization: LINKOV.NET References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> Date: Fri, 07 Oct 2022 10:58:55 +0300 Message-ID: <867d1cjc8w.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Philip Kaludercic , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) >> If you have a better name, there is no better time to change it than now. > > `vc-prepare-patch-attach'? `vc-prepare-patch-attach-patches'? Itʼs all > a bit of a mouthful to type, and it doesnʼt feel like much of an > improvement over what you have. We could base the name of the existing commands. There is the command 'submit-emacs-patch', so the corresponding VC command could be 'vc-submit-patch'. Also like the existing command 'git-send-email' the name could be 'vc-send-patch'. Also please note that the most convenient way to select revisions to submit is to show the log buffer, and use 'm' to mark revisions (log-view-toggle-mark-entry). Then 'log-view-get-marked' returns all marked revisions. I suggest to push the current version of the patch, then such marking could be added later. From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 07:42:50 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 11:42:50 +0000 Received: from localhost ([127.0.0.1]:34546 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oglkg-0003O6-Bi for submit@debbugs.gnu.org; Fri, 07 Oct 2022 07:42:50 -0400 Received: from mout01.posteo.de ([185.67.36.65]:57345) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oglke-0003Nt-GX for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 07:42:49 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 6A3D4240027 for <57400@debbugs.gnu.org>; Fri, 7 Oct 2022 13:42:42 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665142962; bh=3WcMhOMFxQbNEwvS/A2W0PyXAI2nIapDWi/ZnViKbkg=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=lcg7j5AkVMTog9Opxu2UG6FWbSnyxWR6ZQ/UpU4YCqHLrvUMoV+w9NqpICcydwoD6 qgBzwE2E/L9t3dJdbkL1nnUaT9eJWDHQrtKEMMK7oNzonZjqq1av0yiqzMEcSDrbdo PLEht1CXW4seprnlCS9dTJJcy/N8M7ci/wjvrfomGorQXpdKQGTaYISOf7AMIdiVv6 ohjZ9DQbnyV0ZlZndtUJWnNwmol5pc97TQw7P/Pvxeiib0+GrmXyQJxpK/omyr7D81 WO/jmMF7K+VoYs/vNOzi+J1EI9S3f6oE2CN05sKZG4GRoDXrqvQmkkr9xvKnmJyfxC lwAHz4aX48u4w== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkRJ05Mc3z6tmR; Fri, 7 Oct 2022 13:42:40 +0200 (CEST) From: Philip Kaludercic To: Juri Linkov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <867d1cjc8w.fsf@mail.linkov.net> (Juri Linkov's message of "Fri, 07 Oct 2022 10:58:55 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <867d1cjc8w.fsf@mail.linkov.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Fri, 07 Oct 2022 11:42:35 +0000 Message-ID: <87o7unkggk.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: >>> If you have a better name, there is no better time to change it than no= w. >> >> `vc-prepare-patch-attach'? `vc-prepare-patch-attach-patches'? It=CA=BCs = all >> a bit of a mouthful to type, and it doesn=CA=BCt feel like much of an >> improvement over what you have. > > We could base the name of the existing commands. There is the command > 'submit-emacs-patch', so the corresponding VC command could be > 'vc-submit-patch'. Also like the existing command 'git-send-email' > the name could be 'vc-send-patch'. So should I rename the command? I'm not committed to any name. > Also please note that the most convenient way to select revisions > to submit is to show the log buffer, and use 'm' to mark revisions > (log-view-toggle-mark-entry). Then 'log-view-get-marked' returns > all marked revisions. This is supported, but currently not in this order. Do you think an option should be added that would use recursive editing to prompt the user? > I suggest to push the current version of the patch, then such marking > could be added later. OK, I'll do so later today. From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 08:06:15 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 12:06:15 +0000 Received: from localhost ([127.0.0.1]:34609 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogm7L-00043c-FE for submit@debbugs.gnu.org; Fri, 07 Oct 2022 08:06:15 -0400 Received: from mail-wm1-f46.google.com ([209.85.128.46]:42832) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogm7K-00043P-Fs for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 08:06:14 -0400 Received: by mail-wm1-f46.google.com with SMTP id o20-20020a05600c4fd400b003b4a516c479so2489893wmq.1 for <57400@debbugs.gnu.org>; Fri, 07 Oct 2022 05:06:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=5fojyhs1D1Sv0EJGQ4jhOSg/EeiHkOKSwqr0+aV52Hg=; b=Xp4m/YDnddN3+CIkrizSEmj5b3gvhQUqXV9p4ZqTs5dXqKrUjraHGctfY7/50xSbfB 5J+G76rwY9pyXkyFO7aP89Yc5E7p6QAsiHZjzNtTemRGw9QSKNGuOqOC9ImYMhhnzc8P op0CfsAgLUDp+bf/6GxiATQIB76z2fbovtm2izr9tOettan8aRp3iYP1wov/Whugvuic nwqGw/1GtXXi9736HHWG33gBTX9WmkC0p/0Wmo2jDLl4/HrUaS5qYtdUCiGQt4X3AV0S SpvA+ruF7INlQPp3vlgTleiTUzbB3dKBgXjNxDZ9NndiakevBLTu/XfA+UjvWsbtDLyl cBGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=5fojyhs1D1Sv0EJGQ4jhOSg/EeiHkOKSwqr0+aV52Hg=; b=KxYG2qbHXJqFW/5LeSIhmIBIu4sdRkYmrFSYi738gQn/pGCPA6n49mUwTEtCl0a9gO xDCFV8fuvpRjKxaTrmbWd4E4j4ZSFyDTLWXgzK/M/CcusvZ5ySumz9zg3spTRmCCKank wS0mh0BlnxBt5xTaZYkalWbYRKWVF+5vsHCmEizQTax1C/r4VWRO6tewgr/inzzohb9o mbiC08WXlH8t0Di5MQ3W31NgrruQhXDe0KeT2yk0k2xz2UGeHu6mfhlPL+xNa9+EKhxp 2S8nHHiz2iz97Iwsaz7MHLsdC0YbWElX341J00t7c9617oSo3zcEF8/Dg4tkyIb+rOas C46A== X-Gm-Message-State: ACrzQf1Wi6xmhk1o3Zx2pOfPa8aQbFFCg5FmI4n1DWzHmjwgyrdLctK2 y9xQbOHeN04mNZg/lts1aGs= X-Google-Smtp-Source: AMsMyM6NTDXfrdsazoRwhP29+r2fH1ajQN/HObUOc5LmLrvuYhpwNOsBg/7pqYc9geWcrxy8ZyWCHg== X-Received: by 2002:a05:600c:22c7:b0:3b4:92ba:ff99 with SMTP id 7-20020a05600c22c700b003b492baff99mr3230600wmg.190.1665144368591; Fri, 07 Oct 2022 05:06:08 -0700 (PDT) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id ck15-20020a5d5e8f000000b0022afe4fb459sm1947770wrb.51.2022.10.07.05.06.07 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 07 Oct 2022 05:06:08 -0700 (PDT) Message-ID: Date: Fri, 7 Oct 2022 15:06:07 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly Content-Language: en-US To: Eli Zaretskii References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <83mtaarv70.fsf@gnu.org> <875ygy9kjr.fsf@posteo.net> <87fsg18gbe.fsf@posteo.net> <834jwhqpg9.fsf@gnu.org> <00f6118d-c0e4-8ea2-a85d-6b3376a9a228@yandex.ru> <831qrkp2bo.fsf@gnu.org> From: Dmitry Gutov In-Reply-To: <831qrkp2bo.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On 07.10.2022 09:36, Eli Zaretskii wrote: >> Date: Fri, 7 Oct 2022 01:22:36 +0300 >> Cc:ane@iki.fi,57400@debbugs.gnu.org >> From: Dmitry Gutov >> >> Either the volume of messages on the mailing lists picked up, or I'm >> finding less free time these days > The former is definitely true, unfortunately. I hope it's just a > transient thing, and will subside soon enough... It's probably a good thing (more activity might mean more improvements and better features), but it does put a strain on everybody following everything. From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 08:57:05 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 12:57:05 +0000 Received: from localhost ([127.0.0.1]:34770 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogmuW-0007eJ-LW for submit@debbugs.gnu.org; Fri, 07 Oct 2022 08:57:04 -0400 Received: from mail-wr1-f43.google.com ([209.85.221.43]:41933) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogmuV-0007dq-4Y for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 08:57:03 -0400 Received: by mail-wr1-f43.google.com with SMTP id bu30so7167366wrb.8 for <57400@debbugs.gnu.org>; Fri, 07 Oct 2022 05:57:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=DDUKhLKf1UFzSwd6drH9HB/Izdp4L5MPyHoAJYHHNJk=; b=VYD6hfOMNe3SfDf2BXQI07E23wbesHknOgeZgnFz1tznHIri+HTW2EgFh2iGaEduMK zNueDzkTqlpdVBA+6HGPdu3eR11NNIIiMLl0BFRmF4CpN/J+2gxJs2e2+KFXfO6itaVD RN6R3CUoD1H+uzmgOAJc2ifKFqqh+uzAP5AAqVlNboClg2mVXGDxoq9cZkzojxYfjnT4 HnJglG7mm8iEqlCDTNrIPIzlM5ZKjwx0rSTcisJAgbZDO+KGLiDA0Hna0tSVCG/kgT5M O55/xAoI3+QMGj3j4p7frl0WN7F4XvG0IpC/mEaqRPqQPPxNx5h/FWpfHriRWdQbPI72 qOPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=DDUKhLKf1UFzSwd6drH9HB/Izdp4L5MPyHoAJYHHNJk=; b=NQOHQEkGQyJkT9u3cl7wJG6shEW4X9HhQv226XixYUW8dIYjAe4ZbfJvrm3tZqMinP fqcvZSDbVwo1KHu0UNgwUFOKjIEcbScS91V5HtnAxY6vKPDBGNYMWI86M7bNJYQtAWK7 d1vvZX0fsVOiIuVcpgxYolXDFyF6v+KEyQyylBrrOtQR05VLLVpg9jcIGIA4hTeZfX8h hGOOjpFNoDg1EH/igftiuHG49O7nlECaANOufdf9qMJVf4fR03o22uGsECuvb95NlIRn DSIzWc7kwfsOANIbi9Ufv57WrtJfX30e9rjU6UkUbxYtpgeu2+2W75OCsaZC9IB168dj cLww== X-Gm-Message-State: ACrzQf2FpWgN5jdWDzYEx/wjnCmteX7kTDexgMfw+j92l5bn+jR35UMs QixzdnuI3jtjB6WQg6JsXuo= X-Google-Smtp-Source: AMsMyM4DfhxVl5/5PjFVoiXwKRG7amC5aP9QQF+vHrbgK/rYfRsL66Fi3UuMtYVMr/yyc9y3c7953Q== X-Received: by 2002:a5d:64aa:0:b0:226:de65:810c with SMTP id m10-20020a5d64aa000000b00226de65810cmr3300812wrp.536.1665147417128; Fri, 07 Oct 2022 05:56:57 -0700 (PDT) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id m65-20020a1c2644000000b003c3339dfaaesm1546551wmm.4.2022.10.07.05.56.55 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 07 Oct 2022 05:56:56 -0700 (PDT) Message-ID: Date: Fri, 7 Oct 2022 15:56:54 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly Content-Language: en-US To: Philip Kaludercic References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> From: Dmitry Gutov In-Reply-To: <87sfk0jc0x.fsf@posteo.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On 07.10.2022 11:03, Philip Kaludercic wrote: > Dmitry Gutov writes: > >> Hi Philip, >> >> On 06.10.2022 15:38, Philip Kaludercic wrote: >>> I'm glad to hear that. Here is the updated patch: >> >> This version resolves the main questions I had as well. >> >> Here's one more, though: the way I normally used 'git format-patch' is >> I pass just one ref, and that's usually the name of the branch to >> start the history at (the argument from the manual). So I >> never had to "type revisions in the Git syntax" for this to work, >> something Eli was worried about. > > It might be tricky to do this in a VC-generic way, but what I can think > of would be if the command is invoked with a prefix argument, then prefix argument? Ok. I would imagine this to be the "default" usage scenario, though. > instead of querying for specific revisions, we query for one only, then > use 'next-revision' to check if it is a predecessor of the current > revision. If so, all the commits in-between are used. is not necessarily a predecessor: 'git format-patch master' works even when master has some more extra commits since the "merge base" commit. 'master' will point to the commit that's not present in the current branch. But vc-log-mergebase is fine with such situation. It calls (vc-call-backend backend 'mergebase rev1 rev2) to find the most recent common revision, and start after it. > The main issue I see here is that 'next-revision' requires a file > argument. What should that be? The 'mergebase' and 'print-log' actions don't seem to require it. >> Should this new command support this usage as well? >> >> The range of revisions could be fetched by passing the base revision >> as LIMIT to the 'print-log' action (like vc-log-mergebase does), but >> how the updated calling convention for vc-prepare-patch will look is >> not obvious to me. > > Even if we do this, the value of the argument "files" still remains an > open question. vc-log-mergebase passes (list rootdir) as FILES to 'print-log'. > It is for this reason that I prefer the current approach, especially > when combined with the ability to select commits in a log. I'm definitely not going to insist: I'm not the target audience of this feature. From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:30:24 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 15:30:25 +0000 Received: from localhost ([127.0.0.1]:37225 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpIu-00062z-DK for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:30:24 -0400 Received: from mout01.posteo.de ([185.67.36.65]:54529) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpIs-00062c-CD for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 11:30:23 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 5BFA8240026 for <57400@debbugs.gnu.org>; Fri, 7 Oct 2022 17:30:13 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156616; bh=TjEzwvjqmDL3DARCk8w8r8CvRnyetxA5J1T0VgppBj8=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=ADzqU2sHNTdQ/HbHDhC9C4VVaZFRQg/Qjop5UafD0LA07O9f15tBo/YlTKYHepsaO a9wkAtOYoUk7bJE4kpnf9BrZShgkBPqfubXikcS25Nq8WeszffBKw39IJkju0lvQIS +wzt6t1WYkqYq34hHNp3cNZ0UhYmsYMmWPA3MSNTp9wEiY61IBKdL5GFC298cwJf45 hwdlG1dBQ5iyLUF5gXBHqBB9s7qsmEvk7JuigKBDgX5WI0aUfqzu0NktFwyIFJ1zV0 RWyuC1+vsjE0dOjuXeAizWpW7ahWoa84IMimLJSNnTuBUE0PKQtFHWyRUowkH967zM mVlDvMu7lghIw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkXLX0H2Lz9rxK; Fri, 7 Oct 2022 17:30:11 +0200 (CEST) From: Philip Kaludercic To: Dmitry Gutov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: (Dmitry Gutov's message of "Fri, 7 Oct 2022 15:56:54 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Fri, 07 Oct 2022 15:30:11 +0000 Message-ID: <87edvj7it8.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Dmitry Gutov writes: > > On 07.10.2022 11:03, Philip Kaludercic wrote: >> Dmitry Gutov writes: >> >>> Hi Philip, >>> >>> On 06.10.2022 15:38, Philip Kaludercic wrote: >>>> I'm glad to hear that. Here is the updated patch: >>> >>> This version resolves the main questions I had as well. >>> >>> Here's one more, though: the way I normally used 'git format-patch' is >>> I pass just one ref, and that's usually the name of the branch to >>> start the history at (the argument from the manual). So I >>> never had to "type revisions in the Git syntax" for this to work, >>> something Eli was worried about. >> It might be tricky to do this in a VC-generic way, but what I can >> think >> of would be if the command is invoked with a prefix argument, then > > prefix argument? Ok. I would imagine this to be the "default" usage > scenario, though. It could be the default too, I guess it depends on how well the feature works. I certainly know from my own works flow that I don't always want to submit all the commits on a branch, but just one or two, so having the option would be appreciated. >> instead of querying for specific revisions, we query for one only, then >> use 'next-revision' to check if it is a predecessor of the current >> revision. If so, all the commits in-between are used. > > is not necessarily a predecessor: 'git format-patch master' > works even when master has some more extra commits since the "merge > base" commit. 'master' will point to the commit that's not present in > the current branch. > > But vc-log-mergebase is fine with such situation. It calls > (vc-call-backend backend 'mergebase rev1 rev2) to find the most recent > common revision, and start after it. > >> The main issue I see here is that 'next-revision' requires a file >> argument. What should that be? > > The 'mergebase' and 'print-log' actions don't seem to require it. I will take a look at those. >>> Should this new command support this usage as well? >>> >>> The range of revisions could be fetched by passing the base revision >>> as LIMIT to the 'print-log' action (like vc-log-mergebase does), but >>> how the updated calling convention for vc-prepare-patch will look is >>> not obvious to me. >> Even if we do this, the value of the argument "files" still remains >> an >> open question. > > vc-log-mergebase passes (list rootdir) as FILES to 'print-log'. That appears to only work if the backend defines a root directory. >> It is for this reason that I prefer the current approach, especially >> when combined with the ability to select commits in a log. > > I'm definitely not going to insist: I'm not the target audience of > this feature. I could imagine falling back onto the manual selection of revisions when the root directory is not defined, but I fear that would be too inconsistent and might lead to unintended/unexpected behaviour when switching between VCSs. From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:47:49 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 15:47:49 +0000 Received: from localhost ([127.0.0.1]:37266 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpZl-0006WA-FC for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:47:49 -0400 Received: from mail-wr1-f47.google.com ([209.85.221.47]:41531) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpZk-0006VU-4L for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 11:47:48 -0400 Received: by mail-wr1-f47.google.com with SMTP id bu30so7871440wrb.8 for <57400@debbugs.gnu.org>; Fri, 07 Oct 2022 08:47:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=UgrlXafg8gq3Wc9o3QCA0Q8io3molpg8+9xKWVQY/Ag=; b=CUQkNMYSUbe4ChI3f0zf/ZQ/x5ivs0h/f1kXwaa1S9psTlrcHzxX4dxu7b4AB53mZF bP/viblwiVME4btiwz2T+ircCd9WR8o0RNQcvMXJIk3j9D7K1TyhugHOM1DSiBYyda/K N6qsh1O12o13BOfK5KvlobnxNwiuuwcVW1J8dIGhRPPtV9p3xj8Zn6IMq9zu2Ijl1qA+ XNupTGObo7CAVx43sYFCCbh7LrW3XXHsodyGSCQ+VmWzvkMEpUjLRgvlnlnBLF0ehP6g 7EhaHVTfE5kF3ic7kVcIIDYK2IS1T8mQVFCJ+V5xrUw3x+7Af9mf5TN6SAMEggyKWQrN d4Zg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=UgrlXafg8gq3Wc9o3QCA0Q8io3molpg8+9xKWVQY/Ag=; b=ytXRLBaYyWgUxcKwMK9zj/6pDiR8Kc819k8AU7P+il81CHl8e+j/C6NB+2TZx/qJxd ydvKWskFteCPeKqZ8dNkGHNpHgCdTh7wQWMQZYL7OTlNZ2OK4Av5/RmSpywNFbAUBHI8 L1ovFLQDzY+1f5UjGKJPMF0tmt8ezOSROyQ7StqrDW6fhGwG9vM8ESLnvdGMVxFImjOv hA6vzWP6W53E1GsvGghv8nsB4a3BtFRh9yGEORNICwmvXwZ/iJII7NqIJ4bFC5jDPCy7 1KRRBMvWhg+Oey2xPMOYi3V2+EtCrBxNKLcAwiFTF1ma6EGqnEEg1nwq79jC7s782/hi oT7w== X-Gm-Message-State: ACrzQf3bvILUbQ9Wsy0U0wOy0s4VwTcfnyX4OjKUVFC9SUUWFharZrRS 8H1O85bAlStMbeV1MJfEVi0= X-Google-Smtp-Source: AMsMyM7uET1WCRMyxuSxyy0dE8AOc6aD1WAYSZQznqtCoDcZHrQssnvYn44/r/3TRoFR3P9ljpv5CA== X-Received: by 2002:a5d:452b:0:b0:22e:3d4a:2ea3 with SMTP id j11-20020a5d452b000000b0022e3d4a2ea3mr3590108wra.309.1665157662241; Fri, 07 Oct 2022 08:47:42 -0700 (PDT) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id z3-20020adff1c3000000b0022cdeba3f83sm2348711wro.84.2022.10.07.08.47.41 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 07 Oct 2022 08:47:41 -0700 (PDT) Message-ID: Date: Fri, 7 Oct 2022 18:47:40 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly Content-Language: en-US To: Philip Kaludercic References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> <87edvj7it8.fsf@posteo.net> From: Dmitry Gutov In-Reply-To: <87edvj7it8.fsf@posteo.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On 07.10.2022 18:30, Philip Kaludercic wrote: >>> It is for this reason that I prefer the current approach, especially >>> when combined with the ability to select commits in a log. >> I'm definitely not going to insist: I'm not the target audience of >> this feature. > I could imagine falling back onto the manual selection of revisions when > the root directory is not defined, but I fear that would be too > inconsistent and might lead to unintended/unexpected behaviour when > switching between VCSs. IMHO we could just refuse to support the backends which don't have the notion of root directory, in this feature. From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:54:38 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 15:54:38 +0000 Received: from localhost ([127.0.0.1]:37280 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpgL-0006hQ-U4 for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:54:38 -0400 Received: from mout01.posteo.de ([185.67.36.65]:40193) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpgI-0006hB-Ob for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 11:54:35 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 33035240027 for <57400@debbugs.gnu.org>; Fri, 7 Oct 2022 17:54:25 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665158068; bh=Vz7eAmL3XEB0sgmYoyUFC8oqGswMI4xvfW4miqV6uyU=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=YCaenhGbnQgQuKjsAID3YAHjV4jwUBoxUa1qZ6C/SEpdzwk7BdvPSn50pcbsrV1lY t7zY9YlVzPwadaGzWZLDkUuc9dHnOn5yUNkkON8Ow3xnOudWZn2iIoJxc9q11W03uF hTldwI2h5nPk5SA9YENRL8MfBcYAxWbGamEUJYLsXXUd4XowcVgHJ6FMknmWMPdmE5 EWpKj7AIBOr+95RAF13cz92VQfMZ4Ks78BKABCCRoevt8pAN78E1kiUqpPMnrze9eO htcxzjrGNhZU1jRsieeVPOhHYQGtFUY7SMhEwA86pySQWQdhhNR8L6oR0P2Zyzl1cE vhDrolIufeMLg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkXtQ3F4Qz6tmQ; Fri, 7 Oct 2022 17:54:22 +0200 (CEST) From: Philip Kaludercic To: Dmitry Gutov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: (Dmitry Gutov's message of "Fri, 7 Oct 2022 18:47:40 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> <87edvj7it8.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Fri, 07 Oct 2022 15:54:21 +0000 Message-ID: <87a6677hoy.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Dmitry Gutov writes: > > On 07.10.2022 18:30, Philip Kaludercic wrote: >>>> It is for this reason that I prefer the current approach, especially >>>> when combined with the ability to select commits in a log. >>> I'm definitely not going to insist: I'm not the target audience of >>> this feature. >> I could imagine falling back onto the manual selection of revisions when >> the root directory is not defined, but I fear that would be too >> inconsistent and might lead to unintended/unexpected behaviour when >> switching between VCSs. > > IMHO we could just refuse to support the backends which don't have the > notion of root directory, in this feature. I wouldn't be a fan, one such backend is CVS that still has people using it, eg. the BSD people, who also use mailing lists for development. From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 18:49:14 2022 Received: (at 57400) by debbugs.gnu.org; 7 Oct 2022 22:49:14 +0000 Received: from localhost ([127.0.0.1]:37646 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogw9a-0002ms-CC for submit@debbugs.gnu.org; Fri, 07 Oct 2022 18:49:14 -0400 Received: from eggs.gnu.org ([209.51.188.92]:39736) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogw9L-0002mC-D9 for 57400@debbugs.gnu.org; Fri, 07 Oct 2022 18:49:12 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:51848) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ogw9F-0001JH-72; Fri, 07 Oct 2022 18:48:53 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:To:From: mime-version; bh=azbzse5avx2qCP9elItrBVqA+zWX2PmJ84nGtV3ihlA=; b=bgjGCaYJ73vX Xb0r/sz6o7Iuo7cyqipFZj8a9eZ1iLlU01rWN69Iy2gBJr2H0/zYB08noEdESOPH3vyONTdA2W0kr w5zWGQp5YwauH2ufh4PpTyiLpcpU9bROMVUQSmjH6fEbmqKgTYxkH00S7WG7XwKZFHzMkXUE1L1Iw EIw7SM5Z7emPCQKxkqlK90B6zKd9lufAo2hS+Q2LuyddW6XohWm38Zhl69piukAUjchanbpB/Q41b 3JexShL3dDW8SSQ4XjCvvKUn+V5phSb/xIslARGivM1J1iauAskONR/ZXXE4C68W5fIVv/VgKVYch rkkM9y+H1qgqL3axz6iktA==; Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1ogw9E-0008LI-VG; Fri, 07 Oct 2022 18:48:52 -0400 Content-Type: text/plain; charset=Utf-8 From: Richard Stallman To: Juri Linkov In-Reply-To: <861qrmox5o.fsf@mail.linkov.net> (message from Juri Linkov on Wed, 05 Oct 2022 22:57:47 +0300) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <861qrmox5o.fsf@mail.linkov.net> Message-Id: Date: Fri, 07 Oct 2022 18:48:52 -0400 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 57400 Cc: larsi@gnus.org, 57400@debbugs.gnu.org, philipk@posteo.net, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: rms@gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > Currently 'C-x v =' (vc-diff) can be easily mistyped as 'C-x v +' (vc-pull) > often with an adverse effect because '=' and '+' are on the same key. > It would be nice to bring both 'vc-pull' and 'vc-push' under the same > prefix key 'C-x v p'. And to add vc-prepare-patch under the same prefix. Making C-x v p a prefix character implies 4-char key sequences. That is rather inconvenient. Can we find another way? Also, the similarity will invite confusion just like the similarity between + and =. Can we do anything to decide automatically whether to push or pull? -- Dr Richard Stallman (https://stallman.org) Chief GNUisance of the GNU Project (https://gnu.org) Founder, Free Software Foundation (https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org) From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 08 06:03:37 2022 Received: (at 57400-done) by debbugs.gnu.org; 8 Oct 2022 10:03:37 +0000 Received: from localhost ([127.0.0.1]:38323 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh6gD-0003N2-6D for submit@debbugs.gnu.org; Sat, 08 Oct 2022 06:03:37 -0400 Received: from mout01.posteo.de ([185.67.36.65]:55295) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh6gB-0003Mp-Ie for 57400-done@debbugs.gnu.org; Sat, 08 Oct 2022 06:03:36 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 536D3240029 for <57400-done@debbugs.gnu.org>; Sat, 8 Oct 2022 12:03:28 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665223409; bh=dw3XK2owwjlYZLJ2JonGqXTEyfpzIulkhNOc4lDTq+0=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=BCDVIZQ1bSz00jD1aqzwOKXmi1APJkUXe9KJnN78u7gZ8O+J/aaxLGM3dBqCjCzZ9 I6/jQHTgIirdbfN7ZsktwXeVm85ilv743AJJlD62RwQXO8Mslz1687ueIob+DbERz4 isv9YynnNuH9ncUa0YcSfTrAkZgUaOGNNSwyytN4+PZlZ0t5M3eBcpN8sJc2V0zeAA 8schRFUUD3r5p5XimPfmJMtUdfRVA9PEBetaH5sQYsemSsGEwvX1+tUSou0KiqTUAq jdSXLBouTLhPcZRC+4rPZwMo6uGXrJRMsTkobsF9Lb0kHmG5+buWgf4TFgneUNsr3G BSF2z7/UaSUIw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Ml1332zdWz6tmL; Sat, 8 Oct 2022 12:03:27 +0200 (CEST) From: Philip Kaludercic To: Juri Linkov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87o7unkggk.fsf@posteo.net> (Philip Kaludercic's message of "Fri, 07 Oct 2022 13:42:35 +0200") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <867d1cjc8w.fsf@mail.linkov.net> <87o7unkggk.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Sat, 08 Oct 2022 10:03:27 +0000 Message-ID: <87bkqmhbtc.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400-done Cc: Robert Pluim , 57400-done@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Philip Kaludercic writes: >> I suggest to push the current version of the patch, then such marking >> could be added later. > > OK, I'll do so later today. I have now pushed the patch. Thanks to all the people who participated and gave their input. From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 08 08:11:27 2022 Received: (at 57400) by debbugs.gnu.org; 8 Oct 2022 12:11:27 +0000 Received: from localhost ([127.0.0.1]:38493 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh8fu-0000VX-M9 for submit@debbugs.gnu.org; Sat, 08 Oct 2022 08:11:26 -0400 Received: from mout01.posteo.de ([185.67.36.65]:56189) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh8fs-0000VJ-4n for 57400@debbugs.gnu.org; Sat, 08 Oct 2022 08:11:24 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 04AA6240026 for <57400@debbugs.gnu.org>; Sat, 8 Oct 2022 14:11:15 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665231078; bh=ikR7DN7m9rJE1o0C6p8yrVYPeH8pAJPaWso68xGqMKM=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=Lj2pgHoNWkPPl+hCGQNJG20CzyjT9uylVCVxInfL0Wk+0a2d0pfG7mhZ44RoeT7HQ +IWiB4er0MFCl/DHvdmtqWBSKvSixGOQC5pC7V5641Z6n3LvdwNuAUHpNxq70ZctBu afYyH7PE9EhmuFLXAB00odHV9mAFJlS8gCD/WEm180nX/gtDBnJbiksH8j3oCyrkve RsjPm+pR+yS6J4yoKszsI0M2gM9atg6Feoq764YtvruTaLt6EEdUZ9i+fU8ttMWLgy 4SwMaC4p4f8wOOZevqSjc5HU2MbuKYd+WR1IPZmPcpRvJBnIN9RICtsWJtml4na21a TvcCLjHFFyhAQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Ml3tS10tzz9rxF; Sat, 8 Oct 2022 14:11:12 +0200 (CEST) From: Philip Kaludercic To: Dmitry Gutov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: (Dmitry Gutov's message of "Fri, 7 Oct 2022 15:56:54 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Sat, 08 Oct 2022 12:11:11 +0000 Message-ID: <8735byh5wg.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Dmitry Gutov writes: >> The main issue I see here is that 'next-revision' requires a file >> argument. What should that be? > > The 'mergebase' and 'print-log' actions don't seem to require it. I am not sure if this might help, but it seems that (vc-deduce-fileset t) could give some useful information? From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 08 08:45:14 2022 Received: (at 57400) by debbugs.gnu.org; 8 Oct 2022 12:45:14 +0000 Received: from localhost ([127.0.0.1]:38551 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh9Cc-0001Kz-8h for submit@debbugs.gnu.org; Sat, 08 Oct 2022 08:45:14 -0400 Received: from mail-dm6nam12olkn2011.outbound.protection.outlook.com ([40.92.22.11]:1312 helo=NAM12-DM6-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh9CZ-0001Ki-TX for 57400@debbugs.gnu.org; Sat, 08 Oct 2022 08:45:12 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IDsKkQal9AYB4bhbDOyBCjWNDQZBJKrl2DZPfEdRZYa4+ODA45evnAdbO984G2XIVoJ2oZe3YZEQaffHW7fqvTQg4kPTupcFoYPB80HzCHLVIw+t0oSPoamEVbgrMpmkmSqK3ObBp++8gD//8xZskRcjPIPnBr+8brgConvKo1qORv/Hbh0YaWC4T3whEWgZ5c5OgNyHVzhAk8H+XkoPlwV4/bP9tfOJGJkKuHcP1Rk11i8lnF15DEN+AyETsF4YEyLMlCPUPd0KA6WOeKBwNp5TxbgzDZoenOkI2e+8iWh1qxdY5XCrg3wrigYi6Q8xckHC7kH5QgTpR5vCW9ds7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=vDyRlF8GsEO1Ko/AtOaAfa2sQ703pgJ6IvtwGV3gg7U=; b=f0JjHUqOs1J4IomgXXIhqCoXKex5wWJ7CSK6XPKwjs24YBCPgoJinbmn22+yt+Ab2giMoUa+sr1ooC86DU/Ri9aX6zjwur5LfFbSiTKRyJAjM3M315yOxwbUTzVypOUujLd+HQ0FMjc7AkdelNYCqH0SRGdK0b2aN4xf24q0TzW23fjM37sm0ysHqH6p6FoVvDP43n59k+Zu+UODv2b4Q4AjGzZ3ZZORXPsiXQ+J55tBum9aRk16iB0KzWEyLSdM9FuYClEyvc5LeKYQ9yn1CrO5O74BNx5JsngKI5aO1SBfm4OioHlmczoj3ushit3uuztzqVK/+sf4Z4okpdfmMw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vDyRlF8GsEO1Ko/AtOaAfa2sQ703pgJ6IvtwGV3gg7U=; b=bOFGVDbCWHmv4zGGF+XWmuVy+R4dUxRcwXokOSKWQGgB0vRQxTughm8lVpS8a1KKC/Skwa9n9TkBA1GQqX6XviJqzkdFMeZg5wz84O6ZNWXmunvtS0IUDsZqWWld9ojvf/BMyh/RlPXFcv5lSel7eg49MxRhqIKgsnm64G5ZfZJ9bsCzaOBs9/1mAt6L1G5ZUuqKvMbejcyB2j8ureOwKfbvRrhsNJ3LJICPuFtB61H/A2G7ZzVdmHrZqlXmW0uvuou7fMqUFDxAQABlA/mN0b0/SfYbEUkBV2OwGrmnUpKbmDVNgL0lmCf4upv23l44xAWQjtsYwPmqe8F0mQm0fg== Received: from DM5PR2201MB1161.namprd22.prod.outlook.com (2603:10b6:4:2f::19) by BLAPR22MB2177.namprd22.prod.outlook.com (2603:10b6:208:274::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5709.15; Sat, 8 Oct 2022 12:45:04 +0000 Received: from DM5PR2201MB1161.namprd22.prod.outlook.com ([fe80::3195:2954:fd59:96e8]) by DM5PR2201MB1161.namprd22.prod.outlook.com ([fe80::3195:2954:fd59:96e8%6]) with mapi id 15.20.5709.015; Sat, 8 Oct 2022 12:45:04 +0000 From: German Pacenza To: Philip Kaludercic , Dmitry Gutov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <8735byh5wg.fsf@posteo.net> References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> <8735byh5wg.fsf@posteo.net> Date: Sat, 08 Oct 2022 09:44:55 -0300 Message-ID: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-TMN: [Blp74hyJSPyn+Ccas2MaIpsQBZza87CP] X-ClientProxiedBy: SC1P152CA0047.LAMP152.PROD.OUTLOOK.COM (2603:10d6:1:1::22) To DM5PR2201MB1161.namprd22.prod.outlook.com (2603:10b6:4:2f::19) X-Microsoft-Original-Message-ID: <875ygucwmw.fsf@hotmail.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM5PR2201MB1161:EE_|BLAPR22MB2177:EE_ X-MS-Office365-Filtering-Correlation-Id: 6da6b03b-66b4-405c-c845-08daa92aec5a X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SRShql+QG46I+CHyAS5KtRI17j1HThJXX83WGDFg0OzxB5fiHg+EFCvSCmbTfNggyKFaJdECwXlLa/JtHJPR1cCNVpA3QL8SgPtgvyZ+ZMqLowOGsuD0+hgxiDLKQfSjIstjqqz/gesoFJxzSS2Fl5ORAS4tYWOSnebpTjleAUe3BMvJcrs5dOwFSB1XF06ykfkZN2CuFBOJRlJCmxuMr3nrXCUdwRFjM+kd1gdnBIdlq82Mx7t3d5HAlg0DydKed/oM8EEFCSu4bHQajQogEruxBb2DOBCXauccxb1u2+5JNEu5qY8QjUh1gxsS51yH9xBa+6Ok5EcniVo2YH8k+9gPN6qGRy+Fb4gni7nXkFltgdtFOyiBM++X04woOQwGbMdjeIO5HZrVZ71c9IXCR/StWaVOusU9DRkS/Sz2Tl1vpQ77qEUWQc49GMW6Brp4QmZovH8hqyHy4GhhPe7ii4l8JgFWYqwBmkFMpXTUeppyXsZ6n+UPNFdMXRhfLNCSs+8pAr1JIRSAFopg4jQAytm84YJbl3Nv3PAymetX5KW7CfgpAO2zLfwM4SMNlHeezTMNB+1dYFCvGexP+QHh9o6bq85CbgGgCQF2iUwB5xNcJkMXG9NFKYcKTwda88CINAcgKjasLcPmX9k2vpSKz7wlVTszDPHbujKrbLNm4v/hEDBIPgsqWcDH6eMA+ANS X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SFAxSURUQnFPQTZvUGFscUJLOHFPSkppcHp6azZxYXFnVlFpODMwYmh4K2pI?= =?utf-8?B?RVFjWlFMQVo1ZkUwOWo3VGdScXRzcEVESFc0RDFyeTBNWkJoRlJyYWc1VmIv?= =?utf-8?B?aXFKWENIdE9IM202K3lCeGxoT0Z3QkxKQTFsQ3FUcEwyTVo1ck1YemNBaUZV?= =?utf-8?B?Y3J6dDhlelhZZDhZNkRhL3BTSURxY0kvSndNQTBlV3Y4MWZxUVI5eUsveVdp?= =?utf-8?B?ZjhoZ0FQc0JKSUhGbDJWaTB5TDVUR2k1cGxGdE9sVlpSOG9ETk56SUZETUhp?= =?utf-8?B?aW4zbkU0QUo0bWpFcGhFeTc3RCsrSDE1ZERTZTRxdUtlTnJIZlpkN0hsbmlv?= =?utf-8?B?bkcxOUNtNDV1WjJuVFAwQk44ZFIzcFFaL2xHbklQc3NuRzZlSEFjOU1GZG04?= =?utf-8?B?RWRYbFVRak9LUjNybCtjQmJrSTFjQk9nZC8vZGV5WEQ4OHNiSk9BdExyTUo3?= =?utf-8?B?MnloNCs3VFNoTFZUU3RValU2VEljaTZ4NG85SEhPL0IvY3F6UGUvS2pMT0JH?= =?utf-8?B?WDk5cGlHODFWeGZHczB0dFZzMlJTM3ZVZnlQWTBNaUVqVm43UlcrUXUwbUw5?= =?utf-8?B?cy8ySENkeGlrTGJ4MXdBY01oWDhkU2JuNmU2NzVFWEkzWThvZThwUC9Rb0E2?= =?utf-8?B?MUJqd0NSKysyaTJkQU4vMi9XME9TWGgrUWtTOW1hcGp6clp3RWU0eHhJRlA4?= =?utf-8?B?YjZpdnhhRE5jTjM2QjBUbFBsanYvcG56ekJrc0Q5OW02bXgxN0Q1bW5kb2o1?= =?utf-8?B?SURncktXWkZBZnM2SXlzcDBxelE1bUIyWUp5aDdGM2RmQzVPMmNvTjc0RGVY?= =?utf-8?B?YmJadkdNN3hOWkp1OUk2bnh0VW5pbFBxMEd0bjZXTFNESjNUUUtwMG9DdHM5?= =?utf-8?B?cE16dDM3L0FiWjBsODlUWThHTEc0amNJemtoZlZpOFlQQ0UwdkFrZko4VVJX?= =?utf-8?B?NG1zWmRJbTZ3Ymc3Wm9tS2xXTnlrYVVLenkwYVNCb2dTN1hON1RrTTNsTFIx?= =?utf-8?B?VHAzMGp0QlpsV1YxY1JjN2NDZTNEd3hxQXFkUTJaRWxvTUVDNlA4Q2tYMU1Y?= =?utf-8?B?KzJVSDlQM28xUW1uTDVqSTI1cHBYd3h4a0F2Y2NkY3FUT1dBYzI3T0JqNFpt?= =?utf-8?B?VHRCS0hJVWpDcXdGdmxUU3kveGZmVjFKQUdtejFXRXJHS0ROQ0VrazB2K3pR?= =?utf-8?B?TUp6bjAzZTBQK21xc1dmeGFXbVhkTDhHOXV1M1gzWCsxdGFGVEtkZWlwTytj?= =?utf-8?B?RDlFVDJPcW1kZUNkUVdVMUptbFRvSW5UYWZQZ0JVY2FCMXhETmZtVnVxbzlp?= =?utf-8?B?M000WUZQK1N0K3NLQXo5OHZaOGkzUjB6UzVKZHNPcm9kSCs1RXhZVXNmYXZh?= =?utf-8?B?b0p3bUdLTDJoR0NJQ2FrdWVlN09WMmx1ejVBZ0dEV0JXZit0T0owRml1cHBh?= =?utf-8?B?aFpSOGg0ZzNUdEZTR3JjZkdvTTd6LzI0ZWJsb0FwWG41M1lQaVRrYXhtdmhR?= =?utf-8?B?YUV0YVJvWU9VZFJGVlV3TzV5ZUM5dDNQQlJHbkxSSGdnS3FJWkF2bnpkL0R5?= =?utf-8?B?cnRrQm1HM1dZOFB3WEl6VzIwaU5RZm5ORUJOYXp0OVk1S0ozeHpCbXc5aGhz?= =?utf-8?B?NGoyK0dlWkNvMDVrZXlpMktsaitCaDM1M0IwVDJESGxhQzlmS2VTa1JpTDZm?= =?utf-8?B?bzZGRnBUR0hScEE3YS9wQlhCVmRJMG5BQjdTYkJZSVdLODdCT0lxVXBBPT0=?= X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-c3c87.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: 6da6b03b-66b4-405c-c845-08daa92aec5a X-MS-Exchange-CrossTenant-AuthSource: DM5PR2201MB1161.namprd22.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Oct 2022 12:45:04.8408 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR22MB2177 X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.8 (/) Philip Kaludercic writes: vc-prepare-patches-separately info manual and docstring contradict each other: Info: "The default value =E2=80=98t=E2=80=99 means prepare and display a message for each revision, one after another. A value of =E2=80=98nil=E2= =80=99 means to generate a single message with all patches attached in the body." Docstring: "Non-nil means that vc-prepare-patch creates a single message." German Pacenza From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 08 09:02:29 2022 Received: (at 57400) by debbugs.gnu.org; 8 Oct 2022 13:02:29 +0000 Received: from localhost ([127.0.0.1]:38574 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh9TJ-0001nk-9R for submit@debbugs.gnu.org; Sat, 08 Oct 2022 09:02:29 -0400 Received: from mout02.posteo.de ([185.67.36.66]:45057) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh9TF-0001nU-Ie for 57400@debbugs.gnu.org; Sat, 08 Oct 2022 09:02:27 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id B16DF240103 for <57400@debbugs.gnu.org>; Sat, 8 Oct 2022 15:02:19 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665234139; bh=G65bVMHcyUSVvOgmd7LkyvjYTvBgjqlmO4tQWS3lBio=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=FcWx7mfJjHJQSnkiyClsGo6tYS7x9hUU1HBEVFqDK2aQABT57zjF3nkYxMVN5/ivg s7m6i1ufieafpkXsfHaOygX6aBHAYGJKN4Y4TVR7ooOtRBWpt0p89u5oOx2hg7JPPU Bp67u0z3OCbt+9yxFqIQvIenZV4wVrcAlv0TuHMzRS/LhgRaWvTpVgQDwsn3I7Eovj tMyPM8U8nV3XU7JVniIW7MPeDOX33LcCLBWGYrN/AHV30RY/jtRSkKjP0xyHfkkwVN bka/BlxRT2oPNmgomM3FihKB31ISTh+LZC7tDb6ZnEw/GODzHP+a0cujMBd6OLkttM Z6bzukbHRDiwQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Ml51P4M9qz6tn5; Sat, 8 Oct 2022 15:02:17 +0200 (CEST) From: Philip Kaludercic To: German Pacenza Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: (German Pacenza's message of "Sat, 08 Oct 2022 09:44:55 -0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> <8735byh5wg.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Sat, 08 Oct 2022 13:02:17 +0000 Message-ID: <87r0zifoyu.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach , Dmitry Gutov X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) German Pacenza writes: > Philip Kaludercic writes: > > vc-prepare-patches-separately info manual and docstring contradict each > other: > > Info: > "The default value =E2=80=98t=E2=80=99 means prepare and display a > message for each revision, one after another. A value of =E2=80=98nil=E2= =80=99 means to > generate a single message with all patches attached in the body." > > Docstring: > "Non-nil means that vc-prepare-patch creates a single message." The docstring was not updated, I'll fix that. > German Pacenza Thank you for noticing. From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 08 09:07:54 2022 Received: (at 57400) by debbugs.gnu.org; 8 Oct 2022 13:07:54 +0000 Received: from localhost ([127.0.0.1]:38583 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh9YY-0001vV-E7 for submit@debbugs.gnu.org; Sat, 08 Oct 2022 09:07:54 -0400 Received: from mail-wm1-f52.google.com ([209.85.128.52]:38405) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oh9YV-0001vG-Sb for 57400@debbugs.gnu.org; Sat, 08 Oct 2022 09:07:53 -0400 Received: by mail-wm1-f52.google.com with SMTP id r8-20020a1c4408000000b003c47d5fd475so773619wma.3 for <57400@debbugs.gnu.org>; Sat, 08 Oct 2022 06:07:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=8zKv/ilHvtc/AUZx+gZLYh6PXhlqLUoebA56jVnfQYY=; b=Yi4/a7MijTdlYrtHKqzvQ3s9jC3joterdv2DY/LGGVa24f1t7yb+pe3I3ahf38A+Fo ZVBdBtyE/LyqX15VcC5wzYSDrtTDRgQETs6F6X6jqAhqWhJHJvwqcmHVEqaoHywz69ZF i/hOxCbSwYQfaDdQP4B7Y4FSDR8TStjqHCpw9XPnal7SNylWbgXptvGzBexqCU6vmJaW jrLRQcTsgQ7j9ISdaoh6C0fZyinepfVgwc2kqIyyHbsbXDqsp/rn+dOOMeJNthVFALbx DoipLqEBef+KoJ4qDT49u+B7PwspHwget0PzAze8wIWqLFVm659nA/A8sZESSh197WMb TJoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=8zKv/ilHvtc/AUZx+gZLYh6PXhlqLUoebA56jVnfQYY=; b=DZbiIG0Se6RMQHTuKpPgLClOjHz5Ih+qeashME13v7g6+AsNTQenak28NkeOOVLR+a C9QSb8YklZORzCivsMtD7yhvtFShmNUGKk9o64/5onWTnsMnsoDb77k/zq7sdUwy2Yb+ kwTb99VBxnR6c2F3PE/2pWOORgVM28vOKizgpgzap56hRnEIvYhbKqHAd/DFBnEWsxqp L4r2Uwk4VkmgeAV/5JKEbgOfy+jkimbB+rcrhkcjjgcJkL0QY1+gXCG4p1JbuvyupWp9 tHJxIuRwWP+Bh0aMpPjiMcVAD9/jMYZjwT3v3bmbqCH57wOI5O8opxOLp+ptbavy7uIj lWOg== X-Gm-Message-State: ACrzQf1EU5UHzJRB879klC7ZY/p7bszPIIuU61a3qfsg1OU+J/G1rKul +gEqR1tbk+bmlzZhbe3niXo= X-Google-Smtp-Source: AMsMyM6y7QniYGo+eJi3L7G2N8nIi+NgUGgFwWuCIlNk8t0XIvRkdc1+tvy6NwnCqBMfaffS8iW86A== X-Received: by 2002:a1c:f009:0:b0:3b4:9398:49c9 with SMTP id a9-20020a1cf009000000b003b4939849c9mr13664144wmb.174.1665234465716; Sat, 08 Oct 2022 06:07:45 -0700 (PDT) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id m38-20020a05600c3b2600b003b4ff30e566sm27072108wms.3.2022.10.08.06.07.44 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 08 Oct 2022 06:07:45 -0700 (PDT) Message-ID: Date: Sat, 8 Oct 2022 16:07:43 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly Content-Language: en-US To: Philip Kaludercic References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> <8735byh5wg.fsf@posteo.net> From: Dmitry Gutov In-Reply-To: <8735byh5wg.fsf@posteo.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On 08.10.2022 15:11, Philip Kaludercic wrote: > Dmitry Gutov writes: > >>> The main issue I see here is that 'next-revision' requires a file >>> argument. What should that be? >> The 'mergebase' and 'print-log' actions don't seem to require it. > I am not sure if this might help, but it seems that (vc-deduce-fileset > t) could give some useful information? I suppose it could, if we wanted to support limiting the generated patches to a subset of files. That might be not very obvious behavior, though. I don't know. BTW, does vc-print-root-log really not work with CVS? Perhaps it will be a good idea to define the 'root' action there (which will recursively check the parent directory and see whether it still contains the "CVS" dir). As long as CVS knows how to recursively diff the directory tree, I suppose. And show history for it whole. From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 08 09:42:57 2022 Received: (at 57400) by debbugs.gnu.org; 8 Oct 2022 13:42:58 +0000 Received: from localhost ([127.0.0.1]:38648 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohA6T-00050j-Ef for submit@debbugs.gnu.org; Sat, 08 Oct 2022 09:42:57 -0400 Received: from mout02.posteo.de ([185.67.36.66]:52635) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohA6K-00050O-Kn for 57400@debbugs.gnu.org; Sat, 08 Oct 2022 09:42:55 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 87948240106 for <57400@debbugs.gnu.org>; Sat, 8 Oct 2022 15:42:42 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665236562; bh=Wj4elLjBpnWnuioGktU46k4YvFv7Ig3LNShlNllpxdA=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=GEa7dfFsjg/OB/Pd9Jo+uQANTN9vId1gaAioHbwwhNyNJwGxBKoAKy1+PIsRA1rTp tXROn6iAC4yc1ioEzy4DHWkhIf2dVoSOVL42DiRIyk0/HN8OwY/pb9AkVPa5AJSlsj pulAqPjEG4xluodY3QcsFs7oUxc6Hfgoy6eGAAlY5YEBRwu2Nw1oUxV3mhEE0RPDyU f6lIYBINcph8CnbhUoGI0nJwsD4ypawGYbGe5KUDPXw8SwOJmiBl4wyu2kwcIM5E92 7e9OyWNory0lZB8nAqRKPRnJkw59ygQoVRZp1T03fjKxvhNRp0KOksUoJvogrAERhS /AyfF3yYHJAzA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Ml5w057lBz6tmM; Sat, 8 Oct 2022 15:42:40 +0200 (CEST) From: Philip Kaludercic To: Dmitry Gutov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: (Dmitry Gutov's message of "Sat, 8 Oct 2022 16:07:43 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> <8735byh5wg.fsf@posteo.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Sat, 08 Oct 2022 13:42:40 +0000 Message-ID: <87k05afn3j.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Dmitry Gutov writes: > On 08.10.2022 15:11, Philip Kaludercic wrote: >> Dmitry Gutov writes: >> >>>> The main issue I see here is that 'next-revision' requires a file >>>> argument. What should that be? >>> The 'mergebase' and 'print-log' actions don't seem to require it. >> I am not sure if this might help, but it seems that (vc-deduce-fileset >> t) could give some useful information? > > I suppose it could, if we wanted to support limiting the generated > patches to a subset of files. That might be not very obvious behavior, > though. I don't know. > > BTW, does vc-print-root-log really not work with CVS? Perhaps it will > be a good idea to define the 'root' action there (which will > recursively check the parent directory and see whether it still > contains the "CVS" dir). As long as CVS knows how to recursively diff > the directory tree, I suppose. And show history for it whole. I checked out the Emacs www repository and tried it out. This was the error I got: Debugger entered--Lisp error: (vc-not-supported root CVS) signal(vc-not-supported (root CVS)) vc-call-backend(CVS root "~/Source/emacs-www/") vc-print-root-log(2000) funcall-interactively(vc-print-root-log 2000) call-interactively(vc-print-root-log nil nil) command-execute(vc-print-root-log) From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 08 10:02:48 2022 Received: (at 57400) by debbugs.gnu.org; 8 Oct 2022 14:02:48 +0000 Received: from localhost ([127.0.0.1]:41101 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohAPg-0008LT-FU for submit@debbugs.gnu.org; Sat, 08 Oct 2022 10:02:48 -0400 Received: from mail-wr1-f49.google.com ([209.85.221.49]:36387) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohAPe-0008LG-AJ for 57400@debbugs.gnu.org; Sat, 08 Oct 2022 10:02:46 -0400 Received: by mail-wr1-f49.google.com with SMTP id j7so10981950wrr.3 for <57400@debbugs.gnu.org>; Sat, 08 Oct 2022 07:02:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=N8E15DdYd9BjZ4MbJKFMC3RzQqVtPMFpqb+TJT3qd2A=; b=oi3kc+ZjXwVVm+BAejscK+ju28zXF2cQI5VUV4HtZBMOSelGZl39y0GPg5iLTZQl5l soV+2vS7njbFS49oVZy9iOTi7v1mTsojsHaSSS90SVWwPAojntE4qSDHkQz5NlxQ/ns7 9HkkpiHUm3TzNpQAZdh/wdPj1LNrrT+8dZuebcfVD3HafjeJ9aVFYfUHX1zxmIZFJ3LC GEhiKYUvh0ULg7D8JQylyuEjTp3wQ/ttPy0BhFypFx1y7ZvmAy2EEvlh8wE9HR/wvlYr QLij5rFDMJIX1bAFA+ZK9eo9RG/lksPdOiQbZJ5b11fVhqrI0+5qq/glqD0JSQBo5Ki/ T6sg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=N8E15DdYd9BjZ4MbJKFMC3RzQqVtPMFpqb+TJT3qd2A=; b=ndEqFWSYM95nTzqrxRzRPA6MPWjfwGpja75SweHDyRDyD7G5xBwj5EQrnncMccS6C+ bf12HW1NWjHI1HxU3ms0PE/yuy/GB24VnNpkOXetZV6eTjDa0uyka+5YmnuK5QBDWJsN uzudLLYcVEXJv/jCkGz3g35KFYKxppTnPj5kYVuanjM6Zqw9snTvQKcKvYqEf4qzOiL/ Imoehm5GMffOd6Xeqca9fo7YYZQ4BGMVcGlqIS/o37pcZ50rLzi/HYnao/Cx384OI6Vs HI12LF2oMKOUGcRiaritCahLqmkao5k8cwE106SZQXrqARDlhpDEKizEDpDeZnp1WoSm u4QA== X-Gm-Message-State: ACrzQf1HVxNDbGrcoeWw6b0JJHlhqmIijF+JJd+qCDKp7zTvWMfwV1ha wQdisKu6DB92S636Dlxnt3A= X-Google-Smtp-Source: AMsMyM6oJnnCHlnZK3Bvadsxs6DfTzUI6RtEPwgR/fXVLx+IaKeUy94M8hIPjuOUxluMStViMyAudA== X-Received: by 2002:adf:edd1:0:b0:22e:5257:a19e with SMTP id v17-20020adfedd1000000b0022e5257a19emr6035634wro.180.1665237760218; Sat, 08 Oct 2022 07:02:40 -0700 (PDT) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id iv19-20020a05600c549300b003b47b913901sm27673640wmb.1.2022.10.08.07.02.39 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 08 Oct 2022 07:02:39 -0700 (PDT) Message-ID: <8d0c3d16-221b-4f3e-2816-d40e10477d35@yandex.ru> Date: Sat, 8 Oct 2022 17:02:38 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly Content-Language: en-US To: Philip Kaludercic References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> <8735byh5wg.fsf@posteo.net> <87k05afn3j.fsf@posteo.net> From: Dmitry Gutov In-Reply-To: <87k05afn3j.fsf@posteo.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On 08.10.2022 16:42, Philip Kaludercic wrote: >> Perhaps it will >> be a good idea to define the 'root' action there (which will >> recursively check the parent directory and see whether it still >> contains the "CVS" dir). As long as CVS knows how to recursively diff >> the directory tree, I suppose. And show history for it whole. > I checked out the Emacs www repository and tried it out. This was the > error I got: > > Debugger entered--Lisp error: (vc-not-supported root CVS) > signal(vc-not-supported (root CVS)) > vc-call-backend(CVS root "~/Source/emacs-www/") > vc-print-root-log(2000) > funcall-interactively(vc-print-root-log 2000) > call-interactively(vc-print-root-log nil nil) > command-execute(vc-print-root-log) Right, I did too. So I described above how 'vc-cvs-root' could be implemented. Aside from minor concerns about performance with Tramp, my question is whether vc-root-diff and/or vc-print-root-log will be able to work without individual files specified (when FILES is (list root)). vc-cvs-diff starts with looking for individual file backups, but maybe the "slow" fallback path will handle the directory just fine. From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 08 15:43:04 2022 Received: (at 57400) by debbugs.gnu.org; 8 Oct 2022 19:43:04 +0000 Received: from localhost ([127.0.0.1]:41495 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohFiy-0000bZ-2c for submit@debbugs.gnu.org; Sat, 08 Oct 2022 15:43:04 -0400 Received: from relay7-d.mail.gandi.net ([217.70.183.200]:57559) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohFiw-0000b3-2B for 57400@debbugs.gnu.org; Sat, 08 Oct 2022 15:43:02 -0400 Received: (Authenticated sender: juri@linkov.net) by mail.gandi.net (Postfix) with ESMTPSA id 76C4420002; Sat, 8 Oct 2022 19:42:50 +0000 (UTC) From: Juri Linkov To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87o7unkggk.fsf@posteo.net> (Philip Kaludercic's message of "Fri, 07 Oct 2022 11:42:35 +0000") Organization: LINKOV.NET References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <867d1cjc8w.fsf@mail.linkov.net> <87o7unkggk.fsf@posteo.net> Date: Sat, 08 Oct 2022 22:34:16 +0300 Message-ID: <86edvids93.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) >> We could base the name of the existing commands. There is the command >> 'submit-emacs-patch', so the corresponding VC command could be >> 'vc-submit-patch'. Also like the existing command 'git-send-email' >> the name could be 'vc-send-patch'. > > So should I rename the command? I'm not committed to any name. The current name is fine. >> Also please note that the most convenient way to select revisions >> to submit is to show the log buffer, and use 'm' to mark revisions >> (log-view-toggle-mark-entry). Then 'log-view-get-marked' returns >> all marked revisions. > > This is supported, Thanks. Since it's the most convenient UI, shouldn't this be documented in the Info? IOW, what about copying this from the docstring to the manual: When invoked interactively in a Log View buffer with marked revisions, these revisions will be used. Also the use of "," to separate revisions needs to be documented in the docstrings and the manual. Maybe also mention the separator in the prompt that reads multiple revisions. > but currently not in this order. Do you think an option should be > added that would use recursive editing to prompt the user? I see that currently the chronological order of revisions is used from the log. This looks like the right order. Prompting with the default value that is set to these revisions from the log would be also nice to do, so users will be able to change the order manually by moving revisions between ",". Additional question: shouldn't the behavior of vc-prepare-patches-separately=nil be equivalent to vc-prepare-patches-separately=t when only one revision is given? Both cases create just one mail. So when vc-prepare-patches-separately is nil, could it extract the subject from the single revision? Or maybe vc-prepare-patches-separately should support a new customization value for this? From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 08 18:35:05 2022 Received: (at 57400) by debbugs.gnu.org; 8 Oct 2022 22:35:05 +0000 Received: from localhost ([127.0.0.1]:41571 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohIPR-0004n1-E4 for submit@debbugs.gnu.org; Sat, 08 Oct 2022 18:35:05 -0400 Received: from eggs.gnu.org ([209.51.188.92]:37192) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohIPP-0004mS-Lw for 57400@debbugs.gnu.org; Sat, 08 Oct 2022 18:35:04 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:53624) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ohIPI-0004UA-1e; Sat, 08 Oct 2022 18:34:56 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:To:From: mime-version; bh=/n/X/PgL1DAOlEbqJPPArsLTvxL3I0IYjHKgb0EMUC0=; b=ozfrdR5hQCUr pt2rkyzDMDBJbiZ4kcZh1igFr6LrZOsoggHoVHNTp0uSVWtkxRQTojSH6A/iJuHH6ehPsrxqI4aSQ lHGTQM5KK8qlyGxW9jhYXL5qAENhoNOz8/HlI3zAzCY++NOgdmYYFMyYjdDQQU32AwNR4riY2ZRQR maa445MVxc6kc3p6gJzGsQyQnC+O3uW3hu7EuBz0/o3oQGeYK1GQgpODqzF7wmR94kc+WcTCQMzQ2 MmmoobEKApyoO6ID0oXk9jkz5nG56tdh99hfpKoN3rBZI+xGQ7WNmranWFUbpFRFbhXCZ7PYqvnx5 lBmwAhO4eRbEgvpIT4WubQ==; Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1ohIPH-0007z4-LT; Sat, 08 Oct 2022 18:34:55 -0400 Content-Type: text/plain; charset=Utf-8 From: Richard Stallman To: Dmitry Gutov In-Reply-To: (message from Dmitry Gutov on Fri, 7 Oct 2022 18:47:40 +0300) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <8fa87ad2-6d5c-2f9d-ed37-0b956fbadd2c@yandex.ru> <87sfk0jc0x.fsf@posteo.net> <87edvj7it8.fsf@posteo.net> Message-Id: Date: Sat, 08 Oct 2022 18:34:55 -0400 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org, rpluim@gmail.com, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: rms@gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > IMHO we could just refuse to support the backends which don't have the > notion of root directory, in this feature. Surely we can find a kludge which will usually be somewhat helpful for those backends, even if it requires a little human help. -- Dr Richard Stallman (https://stallman.org) Chief GNUisance of the GNU Project (https://gnu.org) Founder, Free Software Foundation (https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org) From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 08:15:52 2022 Received: (at 57400) by debbugs.gnu.org; 9 Oct 2022 12:15:52 +0000 Received: from localhost ([127.0.0.1]:42296 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohVDk-0002pZ-EM for submit@debbugs.gnu.org; Sun, 09 Oct 2022 08:15:52 -0400 Received: from mout02.posteo.de ([185.67.36.66]:35683) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohVDh-0002pK-Lf for 57400@debbugs.gnu.org; Sun, 09 Oct 2022 08:15:51 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 782FA240106 for <57400@debbugs.gnu.org>; Sun, 9 Oct 2022 14:15:43 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665317743; bh=a27cT/PSlhLkqM5qbpMPhFDhWBXWs4lsFl2sDNC/bEo=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=PE57WZFiXZwMpSRFKl5axpRkuozkS1o3rF67miMLWP6n2C27ss5gEdrjEWJ4o1Kz1 +JUvStKB9EdHHDe7LxJrar3oMvPJWzh7Z4LO2sMSj2k7FBVueEeIn4huQpUrHctevV eyIUrcqBPK/5WGjOC6brFe04lDERg9W9Zz++yFwjQEmE+5PYwzCy5yW0NSj09iP65A 0Fk40JUXjnFgOoBG/u2UZlAbZCB6tPaSrsyubrvL+mKDrumNJ7in9eqihC3zG/Zalm f7rR1vNrn+wWu0ZBrdByObBVBMHxLb/B6pkgF8KTUhRwu87DZKHQzRL8U2lNRfOUZG pKplJ6gxg6rGw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Mlgx80VLjz6tmJ; Sun, 9 Oct 2022 14:15:39 +0200 (CEST) From: Philip Kaludercic To: Juri Linkov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <86edvids93.fsf@mail.linkov.net> (Juri Linkov's message of "Sat, 08 Oct 2022 22:34:16 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <867d1cjc8w.fsf@mail.linkov.net> <87o7unkggk.fsf@posteo.net> <86edvids93.fsf@mail.linkov.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Sun, 09 Oct 2022 12:15:39 +0000 Message-ID: <87zge52nx0.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: >>> Also please note that the most convenient way to select revisions >>> to submit is to show the log buffer, and use 'm' to mark revisions >>> (log-view-toggle-mark-entry). Then 'log-view-get-marked' returns >>> all marked revisions. >> >> This is supported, > > Thanks. Since it's the most convenient UI, shouldn't this be > documented in the Info? IOW, what about copying this from the docstring > to the manual: > > When invoked interactively in a Log View buffer with marked > revisions, these revisions will be used. I can add that. > Also the use of "," to separate revisions needs to be documented > in the docstrings and the manual. Maybe also mention the separator > in the prompt that reads multiple revisions. Actually it is whatever was specified by `crm-separator', right? But yes, that can be mentioned too. >> but currently not in this order. Do you think an option should be >> added that would use recursive editing to prompt the user? > > I see that currently the chronological order of revisions is used from > the log. This looks like the right order. Prompting with the default > value that is set to these revisions from the log would be also nice > to do, so users will be able to change the order manually by moving > revisions between ",". Again, regarding `crm-separator' I don't know if this is a value that people change or not (perhaps it should be changed to a defconst). But setting that aside, that sounds like a good idea. I can also imagine that the initial input outside of a log buffer ought to just be the last commit. > Additional question: shouldn't the behavior of > vc-prepare-patches-separately=nil be equivalent to > vc-prepare-patches-separately=t when only one revision is given? Both > cases create just one mail. So when vc-prepare-patches-separately is > nil, could it extract the subject from the single revision? Or maybe > vc-prepare-patches-separately should support a new customization value > for this? Yes, but the formatting is different. In the one case you attach a patch to a regular message, while in the other case the message is prepared in such a way that (at least when using Git) the entire message is a valid patch, where we can use "git am". From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 10 10:39:56 2022 Received: (at 57400) by debbugs.gnu.org; 10 Oct 2022 14:39:56 +0000 Received: from localhost ([127.0.0.1]:49534 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohtwh-0006vI-Qj for submit@debbugs.gnu.org; Mon, 10 Oct 2022 10:39:56 -0400 Received: from wout4-smtp.messagingengine.com ([64.147.123.20]:52525) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohtwf-0006v2-QY for 57400@debbugs.gnu.org; Mon, 10 Oct 2022 10:39:54 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.west.internal (Postfix) with ESMTP id 2BC6632000CC; Mon, 10 Oct 2022 10:39:47 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Mon, 10 Oct 2022 10:39:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.fm; h= cc:cc:content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm3; t=1665412786; x=1665499186; bh=Xc1X54Gl6P vq1QgimeBfxbk5tFCUqGp2wWKGcNOXrPM=; b=Oe2DGh7p+BRP2Ku2N3o/Iqg3Cx 1F05VpBF4Phss97r5s/XLsgFvQArli6wELqpuvmj23YQEd4W1dPNXVrwSrwWYyuv z//xdR4/thm4CB/Lb/JyO0iNuTgox33BuN75ZFqHHdeTB1cpPmHFdT42AP5+PKZ1 77hgQmCd+ywCgT5Gv90JtjB8+lgr/7Ab7bwK62C90NTSQWEQcxmGBE9/wDM0KTN8 LVksMHlQXQguWFKiM0As1rEYZ8G5aAj/CS9/brFGHMcLFF9HEEyIojUev+U00lxZ 6odLEutrYHtJWP2hGptvD8PVTR0glATP7jJWmFMHzi9zbfT+3XIQCuSQFngA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:date:date:feedback-id :feedback-id:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:sender:subject:subject:to:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm3; t=1665412786; x=1665499186; bh=Xc1X54Gl6Pvq1QgimeBfxbk5tFCU qGp2wWKGcNOXrPM=; b=LkI5ZnmlrvmOZ2sD+LeqmAF/lamm/RmnWq3usf7BIhfE pXYwprd8mxcFcmhnqOysZLIrlynKNBIvQSQtREw8tIpiWcYM4MNHsvE0xgXn07Vp Sf7YKn80Co7HCxJ1DeYmSFlvXKcEBqSZZjR8ebvwPZE9Gapc/ORZJiufmkVqlfUm 0auD6C9k9dnsFraq1EZxxe10dY7XKvLlTs76LTY1ifAbSJ0w/+0kyAsc9HlYj3YK jYb6+10//GFuEcEOS+lddDAsa9JYWJVXkTJ5mTsXIVK8LFzzt0FFMBTRShSPsMvp FwaThjlkZujoUYqYetIMuh2QNmBi7TJx5yfQxdfrLg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrfeejgedgjeegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefujghffgffkfggtgesthdtredttdertdenucfhrhhomhephfhilhhi phhpucfiuhhnsghinhcuoehfghhunhgsihhnsehfrghsthhmrghilhdrfhhmqeenucggtf frrghtthgvrhhnpeffhfejveeiieeiudetgfehffelieevfeeffedtkeelheeludefueeu udehveeiffenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhroh hmpehfghhunhgsihhnsehfrghsthhmrghilhdrfhhm X-ME-Proxy: Feedback-ID: id48c41f1:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 10 Oct 2022 10:39:45 -0400 (EDT) From: Filipp Gunbin To: Juri Linkov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <861qrmox5o.fsf@mail.linkov.net> (Juri Linkov's message of "Wed, 05 Oct 2022 22:57:47 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <861qrmox5o.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Date: Mon, 10 Oct 2022 17:39:43 +0300 Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Lars Ingebrigtsen , 57400@debbugs.gnu.org, Philip Kaludercic , Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) On 05/10/2022 22:57 +0300, Juri Linkov wrote: >>> Another question is if `vc-prepare-patch' should be bound to a key or >>> not. From what I see "C-x v p" appears to be free, which might be a >>> possible candidate. >> >> There's some potential for confusion with pull/push, I guess, but I >> can't think of any better key (that's free). >> >> Er... `C-x v S'? (For send.) Hm... no, `S' is taken in vc-dir >> buffers, and it'd be nice to have the same key in vc-dir-mode. Oh, `p' >> is taken in `vc-dir-mode', too. > > Currently 'C-x v =' (vc-diff) can be easily mistyped as 'C-x v +' (vc-pull) > often with an adverse effect because '=' and '+' are on the same key. > It would be nice to bring both 'vc-pull' and 'vc-push' under the same > prefix key 'C-x v p'. And to add vc-prepare-patch under the same > prefix. I find there's some similarity between vc-log-outgoing (`C-x v O') and vc-prepare-patch. So maybe `C-x v o'? > 'p' and 'S' in vc-dir are specific to the vc-dir buffer. > So 'C-x v S' could be bound to the command vc-log-search > that has no key binding. It would be great to put this command on some key binding. Filipp From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 10 15:05:22 2022 Received: (at 57400) by debbugs.gnu.org; 10 Oct 2022 19:05:22 +0000 Received: from localhost ([127.0.0.1]:50007 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohy5Z-0003aV-V1 for submit@debbugs.gnu.org; Mon, 10 Oct 2022 15:05:22 -0400 Received: from relay5-d.mail.gandi.net ([217.70.183.197]:37719) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohy5X-0003aC-T3 for 57400@debbugs.gnu.org; Mon, 10 Oct 2022 15:05:20 -0400 Received: (Authenticated sender: juri@linkov.net) by mail.gandi.net (Postfix) with ESMTPSA id 9D1191C0002; Mon, 10 Oct 2022 19:05:09 +0000 (UTC) From: Juri Linkov To: Filipp Gunbin Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: (Filipp Gunbin's message of "Mon, 10 Oct 2022 17:39:43 +0300") Organization: LINKOV.NET References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <861qrmox5o.fsf@mail.linkov.net> Date: Mon, 10 Oct 2022 21:58:23 +0300 Message-ID: <86r0zfsefc.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Lars Ingebrigtsen , 57400@debbugs.gnu.org, Philip Kaludercic , Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) >> Currently 'C-x v =' (vc-diff) can be easily mistyped as 'C-x v +' (vc-pull) >> often with an adverse effect because '=' and '+' are on the same key. >> It would be nice to bring both 'vc-pull' and 'vc-push' under the same >> prefix key 'C-x v p'. And to add vc-prepare-patch under the same >> prefix. > > I find there's some similarity between vc-log-outgoing (`C-x v O') and > vc-prepare-patch. So maybe `C-x v o'? Not only vc-log-outgoing, but also another useful command to show the log to be able to mark commits in it for preparing a patch, is `C-x v M L' (vc-log-mergebase) that shows the log of all changes in the branch. So I'd rather turn `C-x v l' into a prefix key. >> 'p' and 'S' in vc-dir are specific to the vc-dir buffer. > >> So 'C-x v S' could be bound to the command vc-log-search >> that has no key binding. > > It would be great to put this command on some key binding. With `C-x v l' as a prefix key it could be `C-x v l s'. From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 10 15:05:26 2022 Received: (at 57400) by debbugs.gnu.org; 10 Oct 2022 19:05:26 +0000 Received: from localhost ([127.0.0.1]:50010 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohy5e-0003ak-80 for submit@debbugs.gnu.org; Mon, 10 Oct 2022 15:05:26 -0400 Received: from relay9-d.mail.gandi.net ([217.70.183.199]:57927) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohy5c-0003aL-Vr for 57400@debbugs.gnu.org; Mon, 10 Oct 2022 15:05:25 -0400 Received: (Authenticated sender: juri@linkov.net) by mail.gandi.net (Postfix) with ESMTPSA id 525C5FF807; Mon, 10 Oct 2022 19:05:15 +0000 (UTC) From: Juri Linkov To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87zge52nx0.fsf@posteo.net> (Philip Kaludercic's message of "Sun, 09 Oct 2022 12:15:39 +0000") Organization: LINKOV.NET References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <867d1cjc8w.fsf@mail.linkov.net> <87o7unkggk.fsf@posteo.net> <86edvids93.fsf@mail.linkov.net> <87zge52nx0.fsf@posteo.net> Date: Mon, 10 Oct 2022 22:03:11 +0300 Message-ID: <86sfjvqz68.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > Again, regarding `crm-separator' I don't know if this is a value that > people change or not (perhaps it should be changed to a defconst). At least, it's not defcustom, so it's not intended for user customization. > I can also imagine that the initial input outside of a log buffer ought > to just be the last commit. Depends on whether this is one of the most popular workflows. >> Additional question: shouldn't the behavior of >> vc-prepare-patches-separately=nil be equivalent to >> vc-prepare-patches-separately=t when only one revision is given? Both >> cases create just one mail. So when vc-prepare-patches-separately is >> nil, could it extract the subject from the single revision? Or maybe >> vc-prepare-patches-separately should support a new customization value >> for this? > > Yes, but the formatting is different. In the one case you attach a > patch to a regular message, while in the other case the message is > prepared in such a way that (at least when using Git) the entire message > is a valid patch, where we can use "git am". Hmm, I tried both variants, and still not sure which is better for the 1-patch case. However, what I definitely suggest to do is to get rid of recursive-edit, that also Robert noticed on emacs-devel. recursive-edit is too fragile for modal editing, because such commands as keyboard-escape-quit can easily break it. Without recursive-edit you can just create all mail buffers at once. Then after sending one mail, its buffer gets buried, and the next mail buffer will be shown instead, etc. From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 10 18:01:32 2022 Received: (at 57400) by debbugs.gnu.org; 10 Oct 2022 22:01:32 +0000 Received: from localhost ([127.0.0.1]:50197 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oi0q4-0001kO-EF for submit@debbugs.gnu.org; Mon, 10 Oct 2022 18:01:32 -0400 Received: from eggs.gnu.org ([209.51.188.92]:37474) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oi0q2-0001kB-3U for 57400@debbugs.gnu.org; Mon, 10 Oct 2022 18:01:30 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:59556) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oi0pu-00006p-Np; Mon, 10 Oct 2022 18:01:22 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:To:From: mime-version; bh=xiKkYX0huVtgbC8Ke4kuTbVeYDqIzcrsdCsMcKxXXV0=; b=dzVEjNiDASmd NChl0TBeAo/1/2Otfyb50teG2N+Ep9IxfHinki6mEcSU+1sh5b8emFSRUkujgFgXMvZooMtCFH9dm S+U20ZajDCgsSweC7X2djOO+fWPwkeFzvgHFWqC3RXI/baxLHIQtAqPGGE/7K+0modJlnK7Af6Iea +gqAVIYB5K2yqxNq/6R7NI4xOEmK8pb8tu0ZI45/Zvt88LBZkpQ0UNb3bgO9wAyKVupoIYK3k4bfz 5U5+It3LAIZhi0ZCErT3JFWQReiaOQN9OzCUsGWy4UrwUUxbKwXfFRzVimwS0wYIOwjb9u3LOt6AS iaTigxaCmqw6MnZZtWCrYQ==; Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1oi0pt-0000Rx-Uo; Mon, 10 Oct 2022 18:01:22 -0400 Content-Type: text/plain; charset=Utf-8 From: Richard Stallman To: Juri Linkov In-Reply-To: <86edvids93.fsf@mail.linkov.net> (message from Juri Linkov on Sat, 08 Oct 2022 22:34:16 +0300) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <867d1cjc8w.fsf@mail.linkov.net> <87o7unkggk.fsf@posteo.net> <86edvids93.fsf@mail.linkov.net> Message-Id: Date: Mon, 10 Oct 2022 18:01:21 -0400 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org, rpluim@gmail.com, ane@iki.fi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: rms@gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] Can someone please send me a self-contained description of this new feature? Which VC backends does it support? -- Dr Richard Stallman (https://stallman.org) Chief GNUisance of the GNU Project (https://gnu.org) Founder, Free Software Foundation (https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org) From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 10 20:27:27 2022 Received: (at 57400) by debbugs.gnu.org; 11 Oct 2022 00:27:27 +0000 Received: from localhost ([127.0.0.1]:50267 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oi37A-0005D5-R8 for submit@debbugs.gnu.org; Mon, 10 Oct 2022 20:27:27 -0400 Received: from quimby.gnus.org ([95.216.78.240]:60402) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oi36u-0005CM-Ur for 57400@debbugs.gnu.org; Mon, 10 Oct 2022 20:27:19 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID :Date:References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=4Oj01LCHGX6HYxusHq/y/OUTv0HIrhP/LprRy+1oj4s=; b=B/hsyGp2IIkkSc3rtrGyB7rJQ+ AltA64Xr+o8W7pFt4h48XcilG3GiTQQF7kwFTaVuydCELqsBvCqQfZAbwLOfKsK05ISAF+tJGf+rR 57J+zkpoyd3+pBsO2E1q7futd2AaJ2CIgew0CWDOIpewu/NDKudIsdHtLl8md2U2ZC5o=; Received: from [84.212.220.105] (helo=downe) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oi36k-0006Ar-Oz; Tue, 11 Oct 2022 02:26:58 +0200 From: Lars Ingebrigtsen To: Filipp Gunbin Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: (Filipp Gunbin's message of "Mon, 10 Oct 2022 17:39:43 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <861qrmox5o.fsf@mail.linkov.net> X-Now-Playing: Metalheadz's _15 Years of Metalheadz_: "Swarm" Date: Tue, 11 Oct 2022 02:26:54 +0200 Message-ID: <87ilkrkxwx.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Filipp Gunbin writes: > I find there's some similarity between vc-log-outgoing (`C-x v O') and > vc-prepare-patch. So maybe `C-x v o'? It sounds logical to me, but unfortunately `o' is already taken in vc-dir-mode. 😐 Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 57400 Cc: Philip Kaludercic , 57400@debbugs.gnu.org, Antoine Kalmbach , Juri Linkov X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Filipp Gunbin writes: > I find there's some similarity between vc-log-outgoing (`C-x v O') and > vc-prepare-patch. So maybe `C-x v o'? It sounds logical to me, but unfortunately `o' is already taken in vc-dir-mode. =F0=9F=98=90 From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 10 20:28:02 2022 Received: (at 57400) by debbugs.gnu.org; 11 Oct 2022 00:28:02 +0000 Received: from localhost ([127.0.0.1]:50271 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oi37p-0005E6-Oy for submit@debbugs.gnu.org; Mon, 10 Oct 2022 20:28:02 -0400 Received: from quimby.gnus.org ([95.216.78.240]:60424) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oi37o-0005Dm-6P for 57400@debbugs.gnu.org; Mon, 10 Oct 2022 20:28:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=dbqxQSYXKMBNybbkhRQkKWgGtl5XXiL1+419o32vw+E=; b=GeOkfnpjD6WH0OSeq1Ca2MndSv +vhDI5W2wrjRjhfP0Ft5iwiciekyz7y4+jyJbjLwQbi9S6CgeAbAFh0nkWfPDy2LAXNxgu1R1WTAL PirV28rJHxQ7Q8WPJ/cmpWyT7ZrMYzkbhk1S2VmQ1terZ2AqdgXun9Vj3/XoFVzEgtQQ=; Received: from [84.212.220.105] (helo=downe) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oi37e-0006BM-UX; Tue, 11 Oct 2022 02:27:53 +0200 From: Lars Ingebrigtsen To: Juri Linkov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <86r0zfsefc.fsf@mail.linkov.net> (Juri Linkov's message of "Mon, 10 Oct 2022 21:58:23 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87a66a9n60.fsf@posteo.net> <87edvm2kae.fsf@gnus.org> <861qrmox5o.fsf@mail.linkov.net> <86r0zfsefc.fsf@mail.linkov.net> X-Now-Playing: Metalheadz's _15 Years of Metalheadz_: "Swarm" Date: Tue, 11 Oct 2022 02:27:50 +0200 Message-ID: <87edvfkxvd.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Juri Linkov writes: > Not only vc-log-outgoing, but also another useful command to show > the log to be able to mark commits in it for preparing a patch, > is `C-x v M L' (vc-log-mergebase) that shows the log of all chan [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: Philip Kaludercic , 57400@debbugs.gnu.org, Filipp Gunbin , Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Juri Linkov writes: > Not only vc-log-outgoing, but also another useful command to show > the log to be able to mark commits in it for preparing a patch, > is `C-x v M L' (vc-log-mergebase) that shows the log of all changes > in the branch. So I'd rather turn `C-x v l' into a prefix key. I think `C-x v l' is one of the more commonly used commands, so changing it would probably be annoying. From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 11 01:37:34 2022 Received: (at 57400) by debbugs.gnu.org; 11 Oct 2022 05:37:34 +0000 Received: from localhost ([127.0.0.1]:50614 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oi7xN-00057l-Rv for submit@debbugs.gnu.org; Tue, 11 Oct 2022 01:37:34 -0400 Received: from eggs.gnu.org ([209.51.188.92]:39936) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oi7xL-00057X-S5 for 57400@debbugs.gnu.org; Tue, 11 Oct 2022 01:37:32 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:50782) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oi7xF-0000aK-Qx; Tue, 11 Oct 2022 01:37:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=lNKLseL6yY7Wy8lOfKLMBmJYQRcDOuS5VoC/2WurcCk=; b=Xp9cBfLX9rYu WvQdMDDFGfutwHFRJXb64ttWNA2MUvQmwzHXh1RbzcMf6o7+20xO60tEdyo65rNjBW2u235mkO9sG oliylNJ03GgpM4lvNR+IooamfqvHmK9yI4qfSS+0ne7m8kJuJnnH2hTGojR4277S88WTRzlaNY38c Z9QqrAtl7pRJQs5mgfQdhctXIw9gSjoNQxwhp2PjCvxAtJQHabv8C7gCGkVQLJ1QWRj8nvRGazu8U 4FvocUVF+Xq3iAtXR+xi3CHNuxGKpUcQ6L1Eur043p27vbq5muNCrxQk1t/TRiqSxtUI3dXd09yDT 5dS26axYwdaN8Cw7fyZhRw==; Received: from [87.69.77.57] (port=1287 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oi7x7-0006AR-Jn; Tue, 11 Oct 2022 01:37:18 -0400 Date: Tue, 11 Oct 2022 08:37:26 +0300 Message-Id: <83pmeygbu1.fsf@gnu.org> From: Eli Zaretskii To: rms@gnu.org In-Reply-To: (message from Richard Stallman on Mon, 10 Oct 2022 18:01:21 -0400) Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <867d1cjc8w.fsf@mail.linkov.net> <87o7unkggk.fsf@posteo.net> <86edvids93.fsf@mail.linkov.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 57400 Cc: philipk@posteo.net, 57400@debbugs.gnu.org, rpluim@gmail.com, ane@iki.fi, juri@linkov.net X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: philipk@posteo.net, 57400@debbugs.gnu.org, rpluim@gmail.com, ane@iki.fi > From: Richard Stallman > Date: Mon, 10 Oct 2022 18:01:21 -0400 > > Can someone please send me a self-contained description of this new > feature? It's in Git, including documentation which describes the feature. You can find the changeset by searching "git log" output for the bug number, 57400. I attach below the docs parts of the changeset and the command itself. > Which VC backends does it support? All of them, AFAIU. diff --git a/doc/emacs/vc1-xtra.texi b/doc/emacs/vc1-xtra.texi index 05d2144..66d3f51 100644 --- a/doc/emacs/vc1-xtra.texi +++ b/doc/emacs/vc1-xtra.texi @@ -16,6 +16,7 @@ Miscellaneous VC * Revision Tags:: Symbolic names for revisions. * Version Headers:: Inserting version control headers into working files. * Editing VC Commands:: Editing the VC shell commands that Emacs will run. +* Preparing Patches:: Preparing and Composing patches from within VC @end menu @node Change Logs and VC @@ -282,6 +283,32 @@ Editing VC Commands additional branches to the end of the @samp{git log} command that VC is about to run. +@node Preparing Patches +@subsubsection Preparing Patches + +@findex vc-prepare-patch +When collaborating on projects it is common to send patches via email, +to share changes. If you wish to do this using VC, you can use the +@code{vc-prepare-patch} command. This will prompt you for the +revisions you wish to share, and which destination email address(es) +to use. The command will then prepare those revisions using your +@abbr{MUA, Mail User Agent} for you to review and send. + +@vindex vc-prepare-patches-separately +Depending on the value of the user option +@code{vc-prepare-patches-separately}, @code{vc-prepare-patch} will +generate one or more messages. The default value @code{t} means +prepare and display a message for each revision, one after another. A +value of @code{nil} means to generate a single message with all +patches attached in the body. + +@vindex vc-default-patch-addressee +If you expect to contribute patches on a regular basis, you can set +the user option @code{vc-default-patch-addressee} to the address(es) +you wish to use. This will be used as the default value when invoking +@code{vc-prepare-patch}. Project maintainers may consider setting +this as a directory local variable (@pxref{Directory Variables}). + @node Customizing VC @subsection Customizing VC diff --git a/etc/NEWS b/etc/NEWS index f674423..ca85705 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1866,6 +1866,24 @@ Git commands display summary lines. See the two new user options It is used to style the line that separates the 'log-edit' headers from the 'log-edit' summary. +--- +*** The function 'vc-read-revision' accepts a new MULTIPLE argument. +If non-nil, multiple revisions can be queried. This is done using +'completing-read-multiple'. + +--- +*** New function 'vc-read-multiple-revisions' +This function invokes 'vc-read-revision' with a non-nil value for +MULTIPLE. + ++++ +*** New command 'vc-prepare-patch'. +Patches for any version control system can be prepared using VC. The +command will query what commits to send and will compose messages for +your mail user agent. The behaviour of 'vc-prepare-patch' can be +modified by the user options 'vc-prepare-patches-separately' and +'vc-default-patch-addressee'. + ** Message --- diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index 787dd51..72189cf 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -574,6 +574,16 @@ ;; containing FILE-OR-DIR. The optional REMOTE-NAME specifies the ;; remote (in Git parlance) whose URL is to be returned. It has ;; only a meaning for distributed VCS and is ignored otherwise. +;; +;; - prepare-patch (rev) +;; +;; Prepare a patch and return a property list with the keys +;; `:subject' indicating the patch message as a string, `:buffer' +;; with a buffer object that contains the entire patch message and +;; `:body-start' and `:body-end' demarcating what part of said +;; buffer should be inserted into an inline patch. If the two last +;; properties are omitted, `point-min' and `point-max' will +;; respectively be used instead. +(defcustom vc-prepare-patches-separately t + "Non-nil means that `vc-prepare-patch' creates a single message. +A single message is created by attaching all patches to the body +of a single message. If nil, each patch will be sent out in a +separate message, which will be prepared sequentially." + :type 'boolean + :safe #'booleanp + :version "29.1") + +(defcustom vc-default-patch-addressee nil + "Default addressee for `vc-prepare-patch'. +If nil, no default will be used. This option may be set locally." + :type '(choice (const :tag "No default" nil) + (string :tag "Addressee")) + :safe #'stringp + :version "29.1") + +;;;###autoload +(defun vc-prepare-patch (addressee subject revisions) + "Compose an Email sending patches for REVISIONS to ADDRESSEE. +If `vc-prepare-patches-separately' is non-nil, SUBJECT will be used +as the default subject for the message. Otherwise a separate +message will be composed for each revision. + +When invoked interactively in a Log View buffer with marked +revisions, these revisions will be used." + (interactive + (let ((revs (or (log-view-get-marked) + (vc-read-multiple-revisions "Revisions: "))) + to) + (require 'message) + (while (null (setq to (completing-read-multiple + (format-prompt + "Addressee" + vc-default-patch-addressee) + (message--name-table "") + nil nil nil nil + vc-default-patch-addressee))) + (message "At least one addressee required.") + (sit-for blink-matching-delay)) + (list (string-join to ", ") + (and (not vc-prepare-patches-separately) + (read-string "Subject: " "[PATCH] " nil nil t)) + revs))) + (save-current-buffer + (vc-ensure-vc-buffer) + (let ((patches (mapcar (lambda (rev) + (vc-call-backend + (vc-responsible-backend default-directory) + 'prepare-patch rev)) + revisions))) + (if vc-prepare-patches-separately + (dolist (patch patches) + (compose-mail addressee + (plist-get patch :subject) + nil nil nil nil + `((kill-buffer ,(plist-get patch :buffer)) + (exit-recursive-edit))) + (rfc822-goto-eoh) (forward-line) + (save-excursion ;don't jump to the end + (insert-buffer-substring + (plist-get patch :buffer) + (plist-get patch :body-start) + (plist-get patch :body-end))) + (recursive-edit)) + (compose-mail addressee subject nil nil nil nil + (mapcar + (lambda (p) + (list #'kill-buffer (plist-get p :buffer))) + patches)) + (rfc822-goto-eoh) + (forward-line) + (save-excursion + (dolist (patch patches) + (mml-attach-buffer (buffer-name (plist-get patch :buffer)) + "text/x-patch" + (plist-get patch :subject) + "attachment"))) + (open-line 2))))) + (defun vc-default-responsible-p (_backend _file) "Indicate whether BACKEND is responsible for FILE. The default is to return nil always." From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 11 08:44:47 2022 Received: (at 57400) by debbugs.gnu.org; 11 Oct 2022 12:44:47 +0000 Received: from localhost ([127.0.0.1]:51336 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oiEco-0001Yq-Ds for submit@debbugs.gnu.org; Tue, 11 Oct 2022 08:44:46 -0400 Received: from mout02.posteo.de ([185.67.36.66]:56693) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oiEck-0001YZ-EB for 57400@debbugs.gnu.org; Tue, 11 Oct 2022 08:44:45 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 5E647240101 for <57400@debbugs.gnu.org>; Tue, 11 Oct 2022 14:44:33 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665492276; bh=V1VNkxZ9SogcVUfD/GT+JjYJkc33MZNGilAgYt10+vQ=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=X5urc2jYLA4PBjdeUD/y35pKS3FtudRxPLHUQL7ffV0O+dVKGKWMmU9QHPs2JW9R8 MPKC50QG8fKIb+X9vLqJAFp6Em6/LjC1eD8TVlUZYzRxZ7z1Eytt6ZxQScuIJOSrR5 XZ+D+OANnbO0LMTUOFJ11u9W1GSDD3TnUBkBEI+qd0xHdTnxGKdv9q6VAGj50u2L65 R6kSaFwXAPlBDkuV/N1sVf+3mK+1yoOphBf+mhBUHPBCiwUVKjBmYbBCLOTdT7zo8W cAve43k6FcNt9VnVbflhcw026CoIhG/13wByy5frwO8O3WvowdY4GcDxlKoekxsYMC gXn79Wunj/J1g== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MmwTX0L1Sz6tmR; Tue, 11 Oct 2022 14:44:31 +0200 (CEST) From: Philip Kaludercic To: Juri Linkov Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <86sfjvqz68.fsf@mail.linkov.net> (Juri Linkov's message of "Mon, 10 Oct 2022 22:03:11 +0300") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <867d1cjc8w.fsf@mail.linkov.net> <87o7unkggk.fsf@posteo.net> <86edvids93.fsf@mail.linkov.net> <87zge52nx0.fsf@posteo.net> <86sfjvqz68.fsf@mail.linkov.net> Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Date: Tue, 11 Oct 2022 12:44:26 +0000 Message-ID: <87a662fs2d.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 57400 Cc: Robert Pluim , 57400@debbugs.gnu.org, Antoine Kalmbach X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Juri Linkov writes: >> Again, regarding `crm-separator' I don't know if this is a value that >> people change or not (perhaps it should be changed to a defconst). > > At least, it's not defcustom, so it's not intended for user customization. Sure, but could a completion frontend decide to change it? >> I can also imagine that the initial input outside of a log buffer ought >> to just be the last commit. > > Depends on whether this is one of the most popular workflows. Seems popular to me, you make a change and want to submit it. The issue I have noticed is that vc doesn't allow for an easy way to detect the latest revision. The best I can do is the last revision for the file associated with the current buffer. >>> Additional question: shouldn't the behavior of >>> vc-prepare-patches-separately=nil be equivalent to >>> vc-prepare-patches-separately=t when only one revision is given? Both >>> cases create just one mail. So when vc-prepare-patches-separately is >>> nil, could it extract the subject from the single revision? Or maybe >>> vc-prepare-patches-separately should support a new customization value >>> for this? >> >> Yes, but the formatting is different. In the one case you attach a >> patch to a regular message, while in the other case the message is >> prepared in such a way that (at least when using Git) the entire message >> is a valid patch, where we can use "git am". > > Hmm, I tried both variants, and still not sure which is better > for the 1-patch case. However, what I definitely suggest to do is > to get rid of recursive-edit, that also Robert noticed on emacs-devel. > recursive-edit is too fragile for modal editing, because such > commands as keyboard-escape-quit can easily break it. Without > recursive-edit you can just create all mail buffers at once. > Then after sending one mail, its buffer gets buried, and the > next mail buffer will be shown instead, etc. I think you are right, I'll do that and push the changes. From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 11 09:59:26 2022 Received: (at 57400) by debbugs.gnu.org; 11 Oct 2022 13:59:26 +0000 Received: from localhost ([127.0.0.1]:54489 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oiFmp-0004GR-N8 for submit@debbugs.gnu.org; Tue, 11 Oct 2022 09:59:26 -0400 Received: from mail-wr1-f46.google.com ([209.85.221.46]:44747) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oiFmj-0004FQ-O3 for 57400@debbugs.gnu.org; Tue, 11 Oct 2022 09:59:09 -0400 Received: by mail-wr1-f46.google.com with SMTP id r13so21731632wrj.11 for <57400@debbugs.gnu.org>; Tue, 11 Oct 2022 06:59:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=gQjgN2mmjObZ4yQRrjnFPQfXiUedbSrHUdm/laA+6Cs=; b=oI2eI0kKewPOj7KyKaN26UN5SD3rNc5vqapwbB42kPvV2t0ZhzKHenpXknuJ9uXOB1 ioGN3jkMItdaC9SjIOJjELnhVcqycROkG9LJQykAEEOyLVKNKpJ9RbLPwKFnDZ6cXjVb fjV9ql9XeXpyymaidc7TQ7FIRKNaO/W6mm5lHsyw0nRLn1rxoEOsZwcdkWfDx8nkky1A rUlkh7L9xi4c0TNueBSgWmWT7i0sknfxnTdOtbD6bcMZgu53jkjEgZURAXeD8z0DqOFR VDknroR5MwMor1elXIxR3GTtcCaJPbhxX54RUV1GPMjyoixmeMN5wIkKP2AiUncdLCIy njrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gQjgN2mmjObZ4yQRrjnFPQfXiUedbSrHUdm/laA+6Cs=; b=1ERBfy8mTI2IoJbPn6IyhQaN0m4JyaaMhvzlEVhZ9EA7zM9AFddD2HCs+gnrFTvF0m QuZJu4w7rFWDOgEmUS70ewAxkQ66CUAZ7S0dt3CqPNrFC30VL3iEtxhjVxz75XPGDOpe t1cV+SxAs+i08wQD41nlrfRsT9EAzs/jFu086zrfy7+u2bjWsqr9+AGah/fLBQOGtHNg ftNr5jeC6uclo/eZFzpiW+yotVtBRpS80U8CEke3qxcBdZoqQQFSS69gJyxXrZ2ap1l/ Kr6Ve0HFcgo90UUxM65nIB5LzqtRGh16E360N8y465DKmZ56R48/FXwLCdu97AsaXox2 ldMw== X-Gm-Message-State: ACrzQf2biEZFDd4x/ZVJyn9ka5kYkArlGT5luLEVSo/qrU1afEFWgCdJ JCWWpqWzXLTNmh7LtEaHVro= X-Google-Smtp-Source: AMsMyM4mHdmSeAvu/PYggSnghUZLeN0c90TopIrVaRncsU3odIYRl4LnSHBterQuK/UFqx0nOWVNlQ== X-Received: by 2002:a5d:608d:0:b0:22e:7bde:c19d with SMTP id w13-20020a5d608d000000b0022e7bdec19dmr15271601wrt.494.1665496739258; Tue, 11 Oct 2022 06:58:59 -0700 (PDT) Received: from rltb ([2a01:e0a:3f3:fb50:ffa:5cda:d6f9:1663]) by smtp.gmail.com with ESMTPSA id c8-20020a05600c0a4800b003b4fdbb6319sm20997100wmq.21.2022.10.11.06.58.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Oct 2022 06:58:58 -0700 (PDT) From: Robert Pluim To: Philip Kaludercic Subject: Re: bug#57400: 29.0.50; Support sending patches from VC directly In-Reply-To: <87a662fs2d.fsf@posteo.net> (Philip Kaludercic's message of "Tue, 11 Oct 2022 12:44:26 +0000") References: <84v8qgn1z9.fsf@iki.fi> <87h71zo3p8.fsf@posteo.net> <87sfljmgwz.fsf@posteo.net> <87y1twvima.fsf@posteo.net> <84sfk2p846.fsf@iki.fi> <87h70i9ntt.fsf@posteo.net> <87edvl6vbj.fsf@gmail.com> <8735c1nn3y.fsf@posteo.net> <877d1d6rcy.fsf@gmail.com> <867d1cjc8w.fsf@mail.linkov.net> <87o7unkggk.fsf@posteo.net> <86edvids93.fsf@mail.linkov.net> <87zge52nx0.fsf@posteo.net> <86sfjvqz68.fsf@mail.linkov.net> <87a662fs2d.fsf@posteo.net> Date: Tue, 11 Oct 2022 15:58:57 +0200 Message-ID: <87o7ui4g2m.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 57400 Cc: 57400@debbugs.gnu.org, Antoine Kalmbach , Juri Linkov X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >>>>> On Tue, 11 Oct 2022 12:44:26 +0000, Philip Kaludercic said: Philip> Juri Linkov writes: >>> Again, regarding `crm-separator' I don't know if this is a value th= at >>> people change or not (perhaps it should be changed to a defconst). >>=20 >> At least, it's not defcustom, so it's not intended for user customiz= ation. Philip> Sure, but could a completion frontend decide to change it? I=CA=BCm not aware of anything that changes it permanently. org let-binds i= t in a few places, but that=CA=BCs perfectly ok.