Skip to content

timer errors #76

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
emacsomancer opened this issue Dec 8, 2024 · 14 comments
Closed

timer errors #76

emacsomancer opened this issue Dec 8, 2024 · 14 comments

Comments

@emacsomancer
Copy link
Contributor

I seem to be getting org-node-related timer errors:

Error running timer: (cl-no-applicable-method #[(sortstr key) ((if (fboundp 'org-node-fakeroam-daily-create) (org-node-fakeroam-daily-create sortstr key t) (error "Not installed: org-node-fakeroam"))) nil] comp--spill-lap-function #[(sortstr key) ((if (fboundp 'org-node-fakeroam-daily-create) (org-node-fakeroam-daily-create sortstr key t) (error "Not installed: org-node-fakeroam"))) nil])
Error running timer: (cl-no-applicable-method #[(node) ((let ((time (cdr (assoc "CREATION_TIME" (org-node-get-props node))))) (when (and time (not (string-blank-p time))) (cons time (org-node-get-id node))))) nil] comp--spill-lap-function #[(node) ((let ((time (cdr (assoc "CREATION_TIME" (org-node-get-props node))))) (when (and time (not (string-blank-p time))) (cons time (org-node-get-id node))))) nil])
Error running timer: (cl-no-applicable-method #[(sortstr key) ((org-node-create sortstr (org-id-new) key)) nil] comp--spill-lap-function #[(sortstr key) ((org-node-create sortstr (org-id-new) key)) nil])

(I'm using elpaca to install org-node, org-node-fakeroam, and el-job from github; maybe I don't have these in the right order or something. I'm wondering if this related to dailies not currently being marked/font-locked on the calendar view.)

@meedstrom
Copy link
Owner

meedstrom commented Dec 9, 2024 via email

@meedstrom
Copy link
Owner

meedstrom commented Dec 9, 2024

Would these changes solve the issue? e60db8b

@emacsomancer
Copy link
Contributor Author

I still don't seem to be getting marked dates in the calendar

@meedstrom
Copy link
Owner

meedstrom commented Dec 13, 2024

Oh, maybe with this? I'll add it in, thanks for mentioning.

(defvaralias 'org-node-series-that-marks-calendar 
             'org-node-seq-that-marks-calendar)

@meedstrom
Copy link
Owner

Checking in, do you get marked dates now?

@emacsomancer
Copy link
Contributor Author

I do get marked dates now.

(I'm still getting the timer errors sometimes, but functionality doesn't seem otherwise impaired?)

meedstrom added a commit that referenced this issue Feb 2, 2025
@meedstrom
Copy link
Owner

meedstrom commented Feb 2, 2025

Interesting problem. Now I understand my first fix would not have done anything.

Did a possible fix on a separate branch: 131059d

If you get time, maybe copy-paste that and see if the problem stops appearing!


As always, thanks for reporting. It's possible that other people are also seeing this error. Out of curiosity, what's your gc-cons-threshold?

@meedstrom
Copy link
Owner

I believe 0126d65 (1.9.36) makes it moot, so closing.

@emacsomancer
Copy link
Contributor Author

Thanks, @meedstrom ! Yes, I've merged the latest now from MELPA, and these errors seemed to have disappeared. Cheers!

I was curious about the commit - you say "Give up native-compiling lambdas due to inconsistent support" - is it different versions of Emacs? Different versions of libjitgcc? Where there are differences? Or that details of different compiled lambdas are just differently amenable to native-compilation?

@meedstrom
Copy link
Owner

In my several months-old build of Emacs 30.0.50, I could do (native-compile (lambda ()).

In the just-releaded Emacs 30.1, it causes an error. The definition of native-compile doesn't appear to support anonymous lambdas, I'm guessing it was never really intended or not a priority. It needs a symbol with a function definition.

@emacsomancer
Copy link
Contributor Author

Hmm, that's interesting. (I'm still on 30.0.93; need to upgrade when I get can around to it for Guix [have a custom build for Emacs with Lucid and some other things].)

(I don't understand the deep underpinning of native compilation well enough at this point to reason about what native-compile (lambda ()) would or should do. It would seem that (lambda ()) and (defun ()) should be able to be handled similarly. Is it just about whether there's a label to hang it on? Is their undefined behaviour that can arise otherwise?)

@meedstrom
Copy link
Owner

meedstrom commented Feb 25, 2025 via email

@meedstrom
Copy link
Owner

meedstrom commented Feb 25, 2025 via email

@emacsomancer
Copy link
Contributor Author

I suppose I'm wondering why unlabelled/anonymous functions wouldn't potentially benefit from native optimisation, but maybe there are technical details of nativecomp I'm not understanding.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants