djcb / mu

maildir indexer/searcher + emacs mail client + guile bindings
http://www.djcbsoftware.nl/code/mu
GNU General Public License v3.0
1.62k stars 391 forks source link

strange behaviour using mu4e-marks #2771

Closed joukeHijlkema closed 1 month ago

joukeHijlkema commented 1 month ago

Describe the bug

When I hit t and then + in the header view with threads showing, the thread gets flagged as expected. However, when I do the same thing with threads off all 500 messages get flagged. I'd expect only the highlighted message to be flagged.

This is a follow-up from an email exchange with Dirk. The

How to Reproduce

Environment

GNU Emacs 29.4 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.43,cairo version 1.18.0) mu4e - mu for emacs version 1.12.6-st

Checklist

Please make sure you all items in the checklist are set/met before filing the ticket.

Thank you!

djcb commented 1 month ago

Hmm, :branch "release/1.10"?

joukeHijlkema commented 1 month ago

ahhhhh :-( Sorry !

joukeHijlkema commented 1 month ago

False hope. With the following (and a rebuild) it does the same.

(use-package mu4e
  :straight (:host github
                   :files ("build/mu4e/*.el")
                   :repo "djcb/mu"
                   :pre-build (("./autogen.sh")
                               ("/usr/bin/meson" "setup" "--reconfigure" "build")
                               (shell-command (concat "echo " (shell-quote-argument (read-passwd "root password? ")) " | sudo -S /usr/bin/ninja -C build install"))))
  :commands mu4e
  :config (message "=== my mu4e config ===")
  (setq mail-user-agent 'mu4e-user-agent)
  (setq mu4e-get-mail-command "/usr/bin/offlineimap -o")
  (setq mu4e-sent-folder "/Work/INBOX.Sent")
  (setq mu4e-mu-binary "/usr/local/bin/mu")

  (mu4e-bookmark-define "maildir:/Work/INBOX NOT flag:trashed"                         "Inbox"        ?i)
  (mu4e-bookmark-define "maildir:/Work/INBOX AND flag:unread"                          "Inbox unread" ?u)
  (mu4e-bookmark-define "maildir:/Work/INBOX.Sent"                                     "Sent"         ?s)
  (mu4e-bookmark-define "maildir:/Work/INBOX AND date:today..now AND NOT flag:trashed" "Today"        ?t)
  (mu4e-bookmark-define "maildir:/Work/INBOX AND date:1w..now AND NOT flag:trashed"    "Last week"    ?w)
  (mu4e-bookmark-define "maildir:/Work/INBOX AND date:5w..now AND NOT flag:trashed"    "Last month"   ?m)
  (mu4e-bookmark-define "maildir:/Spam AND flag:unread"                                "Spam"         ?z)
  )
djcb commented 1 month ago

Can't reproduce with emacs 30 or 29, with something like:

emacs-29.4 -Q --eval "(progn (add-to-list 'load-path \"~/Sources/mu/build/mu4e\") (setq mu4e-mu-binary \"~/Sources/mu/build/mu/mu\") (require 'mu4e))"

Anyway, I don't know exactly what "straight" does, nor is it part of mu, so can you reproduce the "normal'" way? Thanks.

joukeHijlkema commented 1 month ago

Hello Dirk,

Using: emacs-29.4 -Q --eval "(progn (add-to-list 'load-path \"./mu4e\") (setq mu4e-mu-binary \"./mu/mu\") (require 'mu4e))"

and:

(setq mail-user-agent 'mu4e-user-agent) (setq mu4e-get-mail-command "/usr/bin/offlineimap -o") (setq mu4e-sent-folder "/Work/INBOX.Sent") (setq mu4e-mu-binary "/usr/local/bin/mu")

(mu4e-bookmark-define "maildir:/Work/INBOX NOT flag:trashed" "Inbox" ?i)

I have the same problem. Fagging (t and +) works fine with threads on but flags everything with threads off. However, hitting + flags only the selected message for both cases.

Let me know if I can do anything else.

Jouke

On Tue, Oct 15, 2024 at 5:42 PM Dirk-Jan C. Binnema < @.***> wrote:

Can't reproduce with emacs 30 or 29, with something like:

emacs-29.4 -Q --eval "(progn (add-to-list 'load-path \"~/Sources/mu/build/mu4e\") (setq mu4e-mu-binary \"~/Sources/mu/build/mu/mu\") (require 'mu4e))"

Anyway, I don't know exactly what "straight" does, nor is it part of mu, so can you reproduce the "normal'" way? Thanks.

— Reply to this email directly, view it on GitHub https://github.com/djcb/mu/issues/2771#issuecomment-2414382937, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADC3WSH6NABJF3HBGZSVWDZ3UZXBAVCNFSM6AAAAABP6WDLNCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMJUGM4DEOJTG4 . You are receiving this because you authored the thread.Message ID: @.***>

djcb commented 1 month ago

Ah, now I finally get what you mean, you use the t when there are no separate threads. Sorry for being slow!

But when there are no separate threads, I guess it's not unreasonable to consider all the messages in the same thread. I suppose some may find it "strange behavior", but it seems okay to me. I'll add a note to the docs, thanks for pointing this out.

joukeHijlkema commented 3 weeks ago

Hey Dirk-Jan,

I'm trying to get my head around this, but I can't seem to make it work. Is there a way to tag just one single message independent of threads? Preferably, from the view buffer.

Jouke

On Wed, Oct 16, 2024 at 9:47 PM Dirk-Jan C. Binnema < @.***> wrote:

Closed #2771 https://github.com/djcb/mu/issues/2771 as completed via 814ecc9 https://github.com/djcb/mu/commit/814ecc9882e7ff53c38d79aa731b9b0bd0c6d167 .

— Reply to this email directly, view it on GitHub https://github.com/djcb/mu/issues/2771#event-14688108739, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADC3WXA7ETXFGJRHOTVGS3Z327FBAVCNFSM6AAAAABP6WDLNCVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJUGY4DQMJQHA3TGOI . You are receiving this because you authored the thread.Message ID: @.***>

djcb commented 3 weeks ago

I never use that functionality, but I think you can mark with *, then x then your action (such as g for tagging).