From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <emacs-orgmode-bounces+larch=yhetil.org@gnu.org>
Received: from mp0.migadu.com ([2001:41d0:303:e224::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by ms13.migadu.com with LMTPS
	id 0HkoC51saWZUPQAAqHPOHw:P1
	(envelope-from <emacs-orgmode-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Wed, 12 Jun 2024 09:38:37 +0000
Received: from aspmx1.migadu.com ([2001:41d0:303:e224::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by mp0.migadu.com with LMTPS
	id 0HkoC51saWZUPQAAqHPOHw
	(envelope-from <emacs-orgmode-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Wed, 12 Jun 2024 11:38:37 +0200
X-Envelope-To: larch@yhetil.org
Authentication-Results: aspmx1.migadu.com;
	dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=Jb1XeiQZ;
	dmarc=pass (policy=none) header.from=gnu.org;
	spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org"
ARC-Seal: i=1; s=key1; d=yhetil.org; t=1718185117; a=rsa-sha256; cv=none;
	b=DKkk27VYvVnYLtqLG7OpRaWNdlx8aJVTxn9UjsZLIoXPZX+4ZhrsBBzARfOLyadu/DJ9fc
	GDK3hRdK1O1GTb7LFfR3MQ5jR3agiVggseCyq3ltZTtFXVSd98Yh3HPSgvgg2XvVoXZTS+
	iaAJVOPf3dtVouYQV1pDP01LIhcyxXxdg53pRNLwDIfGpIL1S7vLJnw2qNE7qa6rEqVPuv
	Yd/aQVdbgVbpEKLDtJDFGqeN8jOXa+Hhim1dvtCqaRyKqVOcleLr3KCNq0BcrpohMllgVr
	iMyXU45RvGl9BId7dJSrx8wKEMNTFC2DBThkjhu/waYpsS/Qk8o0CD3fMp3BQQ==
ARC-Authentication-Results: i=1;
	aspmx1.migadu.com;
	dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=Jb1XeiQZ;
	dmarc=pass (policy=none) header.from=gnu.org;
	spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org"
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org;
	s=key1; t=1718185117;
	h=from:from:sender:sender:reply-to:subject:subject:date:date:
	 message-id:message-id:to:to:cc:list-id:list-help:list-unsubscribe:
	 list-subscribe:list-post:dkim-signature;
	bh=574zrstG9+YWhzjWF2Er5lVLMOyPhogXWPb4D+7e9Ac=;
	b=Mo829Id83dyxRlU8PxV2JKL631OJz4e/iG50j4f1f2x8+IiFzWEyuT8EBz2OAe17VV6fpR
	MpcukW/O71aclYQvka1hpA8S5j112ezWIgQaDHJ1FIvBBsP3COaezU0/Vwe4Lo6X+zYRal
	MTvAF2wiUtjNuV09WWoPqpgAi6tenq1CYMsBq4ZLBjrDc/90QxY1k4dtA0ZwXYc2hKoj0M
	WhItAsTCzMthNzcyAY3gDJ9N0Q2TZC4wpcY+sh6FIF7dmTkXQbtRVSs5ZeCLvvRQfEXxz0
	kbPLOmXGb70CoVsok+75HZH2ELIaGakGEVCk55KDjAM16bMKmG8qEjpthC74Lg==
Received: from lists.gnu.org (lists.gnu.org [209.51.188.17])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by aspmx1.migadu.com (Postfix) with ESMTPS id 19A04626C9
	for <larch@yhetil.org>; Wed, 12 Jun 2024 11:38:36 +0200 (CEST)
Received: from localhost ([::1] helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <emacs-orgmode-bounces@gnu.org>)
	id 1sHKQj-000658-Gg; Wed, 12 Jun 2024 05:38:09 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@gnu.org>) id 1sHKQi-00064u-6Q
 for emacs-orgmode@gnu.org; Wed, 12 Jun 2024 05:38:08 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@gnu.org>) id 1sHKQh-0004Sf-GE
 for emacs-orgmode@gnu.org; Wed, 12 Jun 2024 05:38:07 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=Subject:To:From:Date:mime-version:in-reply-to:
 references; bh=574zrstG9+YWhzjWF2Er5lVLMOyPhogXWPb4D+7e9Ac=; b=Jb1XeiQZoNTtrn
 CuNDD0/ceJxTxSeN35qmxWq6cOjexfcCgzK4DBFg/MMF8cLv5PIXzWkdO2qUB0JCBy+O+LqGjxdO+
 Kn3EOvvdvNos0DCQrYN3RW+KDQLSBf1R/Td9Eo87JMdBEELkpmXiniRhCXCMBbzlLxsHRKf6Fi858
 HEHJ6iH6XEEv86H1djcOAxMaSxG3xfOJ1ebT8CbxlCUZQyU1adDRzE3L/XYls9FnlGRth5jykMr3s
 oydgxBGHBIdQyN+Noksv0n6c5fNlHzU2hmSPlctSpB1v2wWENROKUnwWaFSm19JbclkCbGgpPJZGY
 CI21a4UdoBhp2NzcyiSA==;
Date: Wed, 12 Jun 2024 12:38:05 +0300
Message-Id: <86ed921oxu.fsf@gnu.org>
From: Eli Zaretskii <eliz@gnu.org>
To: emacs-orgmode@gnu.org
Subject: Please document the caching and its user options
X-BeenThere: emacs-orgmode@gnu.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "General discussions about Org-mode." <emacs-orgmode.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/emacs-orgmode>,
 <mailto:emacs-orgmode-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/emacs-orgmode>
List-Post: <mailto:emacs-orgmode@gnu.org>
List-Help: <mailto:emacs-orgmode-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/emacs-orgmode>,
 <mailto:emacs-orgmode-request@gnu.org?subject=subscribe>
Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org
Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org
X-Migadu-Country: US
X-Migadu-Flow: FLOW_IN
X-Migadu-Queue-Id: 19A04626C9
X-Migadu-Scanner: mx12.migadu.com
X-Migadu-Spam-Score: -11.08
X-Spam-Score: -11.08
X-TUID: Pc/LeBCgzGbn

I needed to visit org.org, the Org manual, today, and to my surprise
saw Emacs writing some data files into the ~/.cache/org-persist/
directory.  What's more, Emacs popped a buffer out of the blue telling
me that it could not safely encode the data written to (I presume)
some of those files, and asked me to select a safe coding-system.

By randomly poking here and there, I've succeeded to figure out that
this is due to org-element's caching of data from parsing Org files.
It seems this caching is turned on by default, but is not documented
in the Org manual, and in particular there's nothing in the manual
about turning off the caching.

Please document the caching features of Org in the manual, including
how to turn that off.  (I also question the wisdom of turning this on
by default without as much as a single request for confirmation from
the user.)

Please also make sure that the code which actually writes the data to
the cache files makes a point of binding coding-system-for-write to a
proper value (probably utf-8-unix), or forces
buffer-file-coding-system of the buffer from which it writes to have
such a safe value, to avoid annoying and unexpected prompting of the
user to select a proper encoding.  Lisp programs that write files in
the background cannot fail to set a proper encoding, because the call
to select-safe-coding-system is not supposed to be triggered by Lisp
programs unless they run as a direct result of a user-invoked command.

I've seen those problems in Emacs 29.3.  If these issues are already
solved in what will become Emacs 30, then my apologies, and kudos to
whoever solved them.  (However, the latest Org manual still keeps
completely silent about these features and their control by users.)

Thanks.