Subject: bug#78120: 31.0.50; Calendar is not reliable with its marking

From: Manuel Giraud <[email-masked]>
Date: Mon, 28 Apr 2025 16:47:31 +0200

Hi,

It seems that the calendar is not reliable with its marking of diary
events.  Here is a recipe:

    1) emacs -Q

    2) Open the file "/tmp/diary", fill it with the following
       contents and save:
--8<---------------cut here---------------start------------->8---
%%(diary-block 5 4 2025 5 4 2025 'success) Success
May 4 2025 Good day
--8<---------------cut here---------------end--------------->8---

    3) M-: (use-package diary-lib :custom (diary-file "/tmp/diary")) 

    4) M-x calendar

    5) Hit 'm' (diary-mark-entries) a few times.  Observe that the
       fourth of May has not always the same color.

Maybe this is a limitation of overlays but when I tried to test
(lightly) with overlapping overlays the visual results were always the
same.

In GNU Emacs 31.0.50 (build 11, x86_64-unknown-openbsd7.7, X toolkit) of
 2025-04-28 built on computer
Repository revision: c801856820c17247416846ac565b81268b4aca16
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101016
System Description: OpenBSD computer 7.7 GENERIC.MP#626 amd64

Configured using:
 'configure CC=egcc CPPFLAGS=-I/usr/local/include
 LDFLAGS=-L/usr/local/lib MAKEINFO=gmakeinfo --prefix=/home/manuel/emacs
 --bindir=/home/manuel/bin --with-x-toolkit=lucid
 --with-toolkit-scroll-bars=no --without-cairo
 --without-compress-install'

Configured features:
DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG LCMS2 LIBOTF
LIBXML2 M17N_FLT MODULES NOTIFY KQUEUE PDUMPER PNG RSVG SQLITE3 THREADS
TIFF TREE_SITTER WEBP X11 XAW3D XDBE XFT XIM XINERAMA XINPUT2 XPM XRANDR
LUCID ZLIB

Important settings:
  value of $LC_CTYPE: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Elisp/l

Minor modes in effect:
  debbugs-browse-mode: t
  bug-reference-prog-mode: t
  display-time-mode: t
  display-battery-mode: t
  desktop-save-mode: t
  exwm-randr-mode: t
  server-mode: t
  electric-pair-mode: t
  override-global-mode: t
  repeat-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-regexp-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/manuel/prog/elisp/exwm/exwm hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm
/home/manuel/prog/elisp/exwm/exwm-xsettings hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-xsettings
/home/manuel/prog/elisp/exwm/exwm-xim hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-xim
/home/manuel/prog/elisp/exwm/exwm-workspace hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-workspace
/home/manuel/prog/elisp/exwm/exwm-randr hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-randr
/home/manuel/prog/elisp/exwm/exwm-manage hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-manage
/home/manuel/prog/elisp/exwm/exwm-layout hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-layout
/home/manuel/prog/elisp/exwm/exwm-input hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-input
/home/manuel/prog/elisp/exwm/exwm-floating hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-floating
/home/manuel/prog/elisp/exwm/exwm-systemtray hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-systemtray
/home/manuel/prog/elisp/exwm/exwm-core hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-core
/home/manuel/prog/elisp/exwm/exwm-background hides /home/manuel/.emacs.d/elpa/exwm-0.33/exwm-background
/home/manuel/.emacs.d/elpa/ef-themes-1.9.0/theme-loaddefs hides /home/manuel/emacs/share/emacs/31.0.50/lisp/theme-loaddefs
/home/manuel/.emacs.d/elpa/idlwave-6.5.1/idlwave hides /home/manuel/emacs/share/emacs/31.0.50/lisp/obsolete/idlwave
/home/manuel/.emacs.d/elpa/idlwave-6.5.1/idlw-toolbar hides /home/manuel/emacs/share/emacs/31.0.50/lisp/obsolete/idlw-toolbar
/home/manuel/.emacs.d/elpa/idlwave-6.5.1/idlw-shell hides /home/manuel/emacs/share/emacs/31.0.50/lisp/obsolete/idlw-shell
/home/manuel/.emacs.d/elpa/idlwave-6.5.1/idlw-help hides /home/manuel/emacs/share/emacs/31.0.50/lisp/obsolete/idlw-help
/home/manuel/.emacs.d/elpa/idlwave-6.5.1/idlw-complete-structtag hides /home/manuel/emacs/share/emacs/31.0.50/lisp/obsolete/idlw-complete-structtag

Features:
(shadow sort mail-extr ispell emacsbug lisp-mnt org-agenda hi-lock
tex-mode slime-asdf grep slime-tramp tramp trampver tramp-integration
tramp-message tramp-compat shell tramp-loaddefs slime-fancy
slime-indentation slime-cl-indent cl-indent slime-trace-dialog
slime-fontifying-fu slime-package-fu slime-references
slime-compiler-notes-tree advice slime-scratch slime-presentations
slime-macrostep slime-mdot-fu slime-enclosing-context slime-fuzzy
slime-fancy-trace slime-fancy-inspector slime-c-p-c
slime-editing-commands slime-autodoc slime-repl slime-parse slime
apropos etags fileloop xref arc-mode archive-mode hyperspec
semantic/wisent/grammar semantic/bovine semantic/grammar help-fns
radix-tree semantic/idle semantic/analyze semantic/sort semantic/scope
semantic/analyze/fcn semantic/db semantic/grammar-wy semantic/format
semantic/tag-ls semantic/find semantic/ctxt semantic/wisent
semantic/wisent/wisent semantic/util-modes semantic/util semantic
semantic/tag semantic/lex semantic/fw mode-local cedet on-screen
make-mode flymake compile view python project macrostep-c cmacexp
macrostep org-indent oc-basic org-element org-persist org-id
org-element-ast inline avl-tree generator ol-eww eww vtable mule-util
url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect
ol-docview ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi cus-start
gnus-icalendar org-capture org-refile org ob ob-tangle ob-ref ob-lob
ob-table ob-exp org-macro org-src sh-script smie treesit executable
ob-comint org-pcomplete pcomplete comint ansi-osc ansi-color org-list
org-footnote org-faces org-entities org-version ob-emacs-lisp ob-core
ob-eval org-cycle org-table ol rx org-fold org-fold-core org-keys oc
org-loaddefs org-compat org-macs format-spec doc-view filenotify
jka-compr image-mode exif emacs-news-mode noutline outline texinfo
texinfo-loaddefs gnus-dired vc-dir ewoc vc-hg vc-bzr vc-src vc-sccs
vc-svn vc-cvs vc-rcs log-view log-edit add-log pcvs-util vc-git
diff-mode track-changes files-x vc vc-dispatcher debbugs-browse
bug-reference time battery desktop frameset exwm-randr xcb-randr exwm
exwm-input xcb-keysyms xcb-xkb exwm-manage exwm-floating xcb-cursor
xcb-render exwm-layout exwm-workspace exwm-core xcb-ewmh xcb-icccm xcb
xcb-xproto xcb-types xcb-debug server ef-themes
modus-operandi-tinted-theme modus-themes zone speed-type dash thingatpt
url-http url-auth url-gw nsm compat ytdious ring mpdired transmission
color calc-bin calc-ext calc calc-loaddefs rect calc-macs supercite regi
ebdb-gnus gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls
dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group
gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail
mail-source utf7 nnoo parse-time iso8601 gnus-spec gnus-int gnus-range
gnus-win ebdb-message message yank-media puny rfc822 mml mml-sec epa
derived epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse
rfc2231 gmm-utils mailheader ebdb-mua ebdb-com crm ebdb-format ebdb
mailabbrev eieio-opt speedbar ezimage dframe find-func eieio-base
timezone icalendar gnus nnheader gnus-util text-property-search
time-date range sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr
mail-utils erlang-start idlwave idlwave-menus idlw-menus
idlwave-bindings idlw-bindings idlwave-routine idlw-routine idlwave-scan
idlw-scan idlwave-help idlw-help idlwave-complete idlw-complete
idlwave-variables idlw-variables skeleton cc-mode cc-fonts cc-guess
cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs elec-pair
appt diary-lib diary-loaddefs cal-menu calendar cal-loaddefs pcase
dired-x dired-aux dired dired-loaddefs edmacro kmacro
use-package-bind-key bind-key use-package-core repeat easy-mmode
cus-edit pp cus-load wid-edit debbugs-autoloads ebdb-autoloads cl-extra
help-mode ef-themes-autoloads elpher-autoloads exwm-autoloads
gnuplot-autoloads hyperbole-autoloads kotl-autoloads hact set hhist
idlwave-autoloads notmuch-autoloads on-screen-autoloads osm-autoloads
pdf-tools-autoloads rust-mode-autoloads slime-autoloads warnings
macrostep-autoloads speed-type-autoloads info dash-autoloads
sudo-edit-autoloads svg-clock-autoloads tablist-autoloads
transmission-autoloads xelb-autoloads ytdious-autoloads package
browse-url xdg 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 icons
password-cache json subr-x map byte-opt gv bytecomp byte-compile
url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/x-win x-win term/common-win x-dnd touch-screen 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
theme-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 kqueue lcms2
dynamic-setting system-font-setting font-render-setting x-toolkit
xinput2 x multi-tty move-toolbar make-network-process tty-child-frames
emacs)

Memory information:
((conses 16 871923 625139) (symbols 48 58118 33)
 (strings 32 264513 42046) (string-bytes 1 6710222)
 (vectors 16 158873) (vector-slots 8 2162459 45731) (floats 8 605 217)
 (intervals 56 18132 128) (buffers 992 122))

-- 
Manuel Giraud