[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Bug: org-publish-find-title called before cache initialization s
From: |
Nicolas Goaziou |
Subject: |
Re: [O] Bug: org-publish-find-title called before cache initialization signals "no cache present" [8.3.1 (release_8.3.1-505-g6b2c38 @ /home/arunisaac/.emacs.d/org-mode/lisp/)] |
Date: |
Sun, 06 Dec 2015 18:55:07 +0100 |
Hello,
Arun Isaac <address@hidden> writes:
> If org-publish-find-title is called before org-publish-cache is
> initialized (by some routine calling org-publish-initialize-cache), a
> "no cache present" error is signalled.
>
> This happens because org-publish-find-title does not pass a PROJECT-NAME
> argument to org-publish-cache-get-file-property. Only if a PROJECT-NAME
> argument is passed to org-publish-cache-get-file-property does it
> initialize the cache.
>
> Can this be considered a bug? Is org-publish-cache-get-file-property
> supposed to automatically initialize the cache if it is not present? Or
> is the user supposed to initialize the cache manually if required?
>
> In my use case, my preparation-function calls
> org-publish-find-title. However org-publish-projects initializes the
> cache only after executing the preparation function. Hence I get a "no
> cache present" error.
IIUC, you are responsible for calling `org-publish-find-title', an
internal "ox-publish" function, before `org-publish-cache' is
initialized. In this case I tend to think that you are also responsible
for taking care of the cache.
> I could work around this problem by simply initializing the cache on my
> own. But, I'm wondering if this can be fixed at a more fundamental
> level.
You can suggest a patch, if you want to.
The problem is that functions calling
`org-publish-cache-get-file-property' do not usually know about the
current project name. Calling `org-publish-get-project-from-filename'
each time is a bit expensive, IMO.
Regards,
--
Nicolas Goaziou