unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Did something with format-patch or send-email break?
@ 2024-06-09  0:22 Ian Eure
  2024-06-09 10:19 ` Tomas Volf
  0 siblings, 1 reply; 3+ messages in thread
From: Ian Eure @ 2024-06-09  0:22 UTC (permalink / raw)
  To: guix-devel

I’m not sure of the precise mechanism employed, but I believe that 
that in the past, if I ran `git format-patch' and `git 
send-email', it would send an email to the right place.  This is 
implied by the manual, which doesn’t mention a patch submission 
email address, except for an issue number address when sending a 
patch series.

This doesn’t seem to work anymore; the output of `git 
format-patch' has no To: header populated, so `git send-email' 
asks me where:

    meson!ieure:~/Projects/guix/staging$ guix describe
    Generation 13	Jun 08 2024 17:39:39	(current)
      atomized 6bb138d
        repository URL: 
        https://codeberg.org/ieure/atomized-guix.git
        branch: main
        commit: 6bb138db5b7f56f399c9cb2e0b45fecaa8cd0182
      guix bc8a41f
        repository URL: https://git.savannah.gnu.org/git/guix.git
        branch: master
        commit: bc8a41f4a8d9f1f0525d7bc97c67ed3c8aea3111
    meson!ieure:~/Projects/guix/staging$ git log --oneline 
    HEAD^..HEAD
    bc8a41f4a8 (HEAD -> master, upstream/master) gnu: mes: Update 
    to 0.26.1.
    meson!ieure:~/Projects/guix/staging$ echo "changes" >> 
    gnu/packages/python-xyz.scm && git ci -am "changes"
    [master 88e3f97240] changes
     1 file changed, 2 insertions(+)
    meson!ieure:~/Projects/guix/staging$ git format-patch -1
    0001-changes.patch
    meson!ieure:~/Projects/guix/staging$ git send-email 
    0001-changes.patch
    0001-changes.patch
    To whom should the emails be sent (if anyone)?   C-c C-c

    meson!ieure:~/Projects/guix/staging$

Reproduced on Guix System, Guix on Debian (which the above output 
is from), and someone in #guix also reproduced it.

Is it broken?  Am I missing one of the numerous intricate fiddly 
bits of setup to make email patch flow work?  The manual’s "The 
Perfect Setup" section only mentions Geiser and yasnippet setup, 
which isn’t relevant to this.

Thanks,

  — Ian


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Did something with format-patch or send-email break?
  2024-06-09  0:22 Did something with format-patch or send-email break? Ian Eure
@ 2024-06-09 10:19 ` Tomas Volf
  2024-06-09 10:51   ` Tomas Volf
  0 siblings, 1 reply; 3+ messages in thread
From: Tomas Volf @ 2024-06-09 10:19 UTC (permalink / raw)
  To: Ian Eure; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1435 bytes --]

Hi,

On 2024-06-08 17:22:30 -0700, Ian Eure wrote:
> I’m not sure of the precise mechanism employed, but I believe that that in the
> past, if I ran `git format-patch' and `git send-email', it would send an email
> to the right place.

There is etc/git/gitconfig in the repository that sets the necessary git
configuration for it to work.

> Is it broken?

Not for me.

> Am I missing one of the numerous intricate fiddly bits of setup to make email
> patch flow work?

Probably :) The fiddly piece here is that the git has to know about the
etc/git/gitconfig and it does not by default.  If I grep my actual .git/config,
I see this:

    $ cat .git/config | grep -B1 gitconfig
    [include]
    	path = ../etc/git/gitconfig

The configuration is installed automatically (I assume that is why it is not
mentioned in the manual as you say), however it is done during the build:

    $ cat Makefile.am | grep -C2 include.path
    .git/config: etc/git/gitconfig
    	$(AM_V_at)if command -v git >/dev/null && test -d .git; then \
    	git config --fixed-value --replace-all include.path \
    	  ../etc/git/gitconfig ../etc/git/gitconfig; \
    	fi

So, can you please try the usual `./bootstrap && ./configure && make' and report
back whether it helped?

Hope this helps,
Tomas

--
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Did something with format-patch or send-email break?
  2024-06-09 10:19 ` Tomas Volf
@ 2024-06-09 10:51   ` Tomas Volf
  0 siblings, 0 replies; 3+ messages in thread
From: Tomas Volf @ 2024-06-09 10:51 UTC (permalink / raw)
  To: Ian Eure, guix-devel; +Cc: ludo

[-- Attachment #1: Type: text/plain, Size: 998 bytes --]

CC-ing Ludovic as author of the recent guix git authenticate changes.

On 2024-06-09 12:19:21 +0200, Tomas Volf wrote:

> So, can you please try the usual `./bootstrap && ./configure && make' and report
> back whether it helped?

Ha, but there indeed is a bug present.  If you actually follow the documentation
(clone -> authenticate -> build), it will not work anymore due to the changes in
guix git authenticate.

When you run the authenticate, it updates the .git/config by recording the
channel introduction.  Due to that the appropriate target in Makefile
(`.git/config: etc/git/gitconfig') no longer works, since .git/config is now
newer.

As a workaround, running `touch etc/git/gitconfig' and `make' should correctly
install the configuration (hence fixing it for you), however you should probably
report this as a bug, this needs to be fixed upstream.

Have a nice day,
Tomas

--
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-06-09 10:52 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-09  0:22 Did something with format-patch or send-email break? Ian Eure
2024-06-09 10:19 ` Tomas Volf
2024-06-09 10:51   ` Tomas Volf

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).