Closed grtcdr closed 1 year ago
Hi, thanks for the report! Before trying to reproduce the bug in detail, a quick reaction: The few times I saw similar problems in the past (simple operations on citeproc structures throwing wrong-type-argument error) it was always caused by compiled byte code (or maybe nowadays native code) incompatibilities between different Emacs versions. So the first thing I'd check is whether this could be the case and if recompilation helps if that is a possibility at all.
Thanks for the quick reply!
The configuration files that ship the website are not being byte-compiled.
The configuration files that ship the website are not being byte-compiled.
I didn't necessarily mean configuration files, rather the files in the Citeproc and Queue packages, maybe also Org. Is it possible that some of them were somehow compiled for an Emacs version different from the one which is actually used? The error seems to be resulting from something so elementary (appending something to [an apparently empty] queue structure) that it is most probably not a Citeproc bug.
You may also try to check whether simple queue operations (creating a queue, appending anything to it etc.) work independently of Citeproc.
Is it possible that some of them were somehow compiled for an Emacs version different from the one which is actually used?
Maybe. I was able to successfully publish the website locally, though I can't say the same for the CI.
citeproc
and queue
and other project dependencies are being built in their own init directory (dependencies are pulled and compiled from scratch on every commit) but it's setup-emacs whose byte compilation I cannot control.
Well, the only thing I see is that adding an object to an empty queue fails. As far as I know there are no constraints on what kind of object could be appended, so the problem somehow concerns accessing the slots of the queue structure. The only cases I've seen this kind of problem were compiled code incompatibilities.
citeproc
andqueue
and other project dependencies are being built in their own init directory (dependencies are pulled and compiled from scratch on every commit) but it's setup-emacs whose byte compilation I cannot control.
Maybe you could try to turn off compilation for citeproc and queue?
Well, the only thing I see is that adding an object to an empty queue fails.
But isn't the queue empty at first?
As far as I know there are no constraints on what kind of object could be appended, so the problem somehow concerns accessing the slots of the queue structure. The only cases I've seen this kind of problem were compiled code incompatibilities.
Gotcha!
Maybe you could try to turn off byte compilation for citeproc and queue?
I'll do that and report back.
Well, that fixed it :)
Thank you so much for the help!
Hi András,
Thank you so much for your continued work on this wonderful package. I'm experiencing a bit of a roadblock at the moment during the publishing process of my website.
Versions
30.0.50 of 2023-02-24
9.6.1 (release_9.6.1-34-geeada8da)
citeproc-20230125.1818
[^1]Backtrace
Here's the backtrace from the output of running
org-publish-all
on thisox-publish
-based website:2022-07-15.org is referencing the following BibTeX entry (from the
refs.bib
file) which is reported by biber as a valid reference:For a more detailed log, this one shows a full backtrace of the above error, though it is performed in a CI setting and with
debug-on-error
set tonil
(to avoid extremely long backtraces).Settings
The following is a list of customizations of
oc
andoc-csl
relevant tociteproc
:What I've tried
citation-style-language-{styles,locales}
whose PKGBUILD I personally created for myself, though the outcome of the export process (locally and in CI[^2]) remains the same.APA
instead ofIEEE
, just in case there was an incompatibility between the different packages and citation styles.[^1]: citeproc is being downloaded in batch mode via
package-vc-install
with the:latest-release
option. [^2]: CI uses Ubuntu which already packages thecitation-style-language-{styles,locales}
packages (and in the same location).