ichernyshovvv/org-timeblock

error with latest org, emacs 30.0.50 with native comp enabled

iantor opened this issue · 17 comments

iantor commented

installed via package-vc-install
call org-timeblock
the first time it worked but said no events for today.
After first time, get this:

error: org-timeblock-redraw-buffers: Wrong type argument: stringp, nil

There were some errors during native compilation, would it be best to disable native for this library?

Hi

Note, that org-timeblock buffer does not show events or tasks with no time. If you want to quickly reschedule those events, press [t] in the buffer to toggle org-timeblock-list. Then, you can reschedule via [s]

Could you please provide the backtrace for the error? I also want to see which native compilation errors you got

Thank you

iantor commented

It would be helpful if you also provide the version of org you use (or specific commit?) and the commit you built your Emacs from.

iantor commented

Ok, I have reinstalled it. This time I did get a timeblock buffer showing today's tasks (which I had defined earlier) which looked ok.

When installing got byte-compilation errors:

Compiling file c:/users/ian/.emacs.d/elpa/org-timeblock/org-timeblock.el at Sat Aug 5 14:44:24 2023
org-timeblock.el:336:18: Warning: Use of deprecated ((lambda (item) ...) ...)
form
org-timeblock.el:336:18: Warning: Use of deprecated ((lambda (item) ...) ...)
form
org-timeblock.el:341:18: Warning: Use of deprecated ((lambda (item) ...) ...)
form
org-timeblock.el:341:18: Warning: Use of deprecated ((lambda (item) ...) ...)
form
Leaving directory ‘c:/users/ian/.emacs.d/elpa/org-timeblock/’

Compiling file c:/users/ian/.emacs.d/elpa/org-timeblock/test/org-timeblock-test.el at Sat Aug 5 14:44:24 2023
Entering directory ‘c:/users/ian/.emacs.d/elpa/org-timeblock/test/’
org-timeblock-test.el:3:2: Error: Cannot open load file: No such file or directory, buttercup

Compiling file c:/users/ian/.emacs.d/elpa/org-timeblock/test/tdaterangep.el at Sat Aug 5 14:44:24 2023
tdaterangep.el:3:2: Error: Cannot open load file: No such file or directory, org-timeblock-test

Compiling file c:/users/ian/.emacs.d/elpa/org-timeblock/test/tintersection.el at Sat Aug 5 14:44:25 2023
tintersection.el:3:2: Error: Cannot open load file: No such file or directory, org-timeblock-test

Compiling file c:/users/ian/.emacs.d/elpa/org-timeblock/test/ts-date.el at Sat Aug 5 14:44:25 2023
ts-date.el:3:2: Error: Cannot open load file: No such file or directory, org-timeblock-test

Compiling file c:/users/ian/.emacs.d/elpa/org-timeblock/test/ts-to-org-timerange.el at Sat Aug 5 14:44:25 2023
ts-to-org-timerange.el:3:2: Error: Cannot open load file: No such file or directory, org-timeblock-test

Compiling file c:/users/ian/.emacs.d/elpa/org-timeblock/test/tschedule.el at Sat Aug 5 14:44:25 2023
tschedule.el:3:2: Error: Cannot open load file: No such file or directory, org-timeblock-test

Compiling file c:/users/ian/.emacs.d/elpa/org-timeblock/test/ttimestamp-encode.el at Sat Aug 5 14:44:25 2023
ttimestamp-encode.el:3:2: Error: Cannot open load file: No such file or directory, org-timeblock-test

I invoke org-timeblock, get native comp errors:

Compiling c:/users/ian/.emacs.d/elpa/org-timeblock/org-timeblock.el...

In toplevel form:
org-timeblock.el:336:18: Warning: Use of deprecated ((lambda (item) ...) ...) form
org-timeblock.el:336:18: Warning: Use of deprecated ((lambda (item) ...) ...) form
org-timeblock.el:341:18: Warning: Use of deprecated ((lambda (item) ...) ...) form
org-timeblock.el:341:18: Warning: Use of deprecated ((lambda (item) ...) ...) form
Compilation finished.

I do get a timeblock buffer showing today's tasks which I had defined before this.
When I click on timeblock buffer, get this traceback:

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
org-timeblock-mode()
org-timeblock-select-block-under-mouse()
funcall-interactively(org-timeblock-select-block-under-mouse)
command-execute(org-timeblock-select-block-under-mouse)

Emacs and org versions

GNU Emacs 30.0.50 (build 1, x86_64-w64-mingw32) of 2023-07-06
source of above build: https://corwin.bru.st/emacs-30/emacs-30-3cea0a/

Org mode version 9.6.7 ( @ c:/users/ian/.emacs.d/elpa/org-9.6.7/)

Hi, Ian

I've fixed compilation warnings and probably the error you get. I tested on emacs 30 and org 9.6.7 and couldn't reproduce your error. Could you please try the package now with the latest commit.

If you still get any errors, M-x toggle-debug-on-error and send me the *Backtrace* buffer here, please

iantor commented

Ok, deleted package and reinstalled using package-vc-install
no byte compilation errors.
Execute org-timeblock
(no native comp errors)
Timeblock screen displays (no entries). Try to go to previous day using specified command, get error
Add event for today
Restart emacs
toggle-debug-on-error
execute org-timeblock
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
org-timeblock-get-entries()
org-timeblock-redraw-buffers()
org-timeblock()
funcall-interactively(org-timeblock)
command-execute(org-timeblock record)
counsel-M-x-action("org-timeblock")
ivy-call()
ivy-read("M-x " [org-capture-goto-last-stored magit-section-show-headings AND calendar-forward-week vietnamese-tcvn-unix 0 Set\ Slice org-clock-get-sum-start table-source-caption-history Reduce\ To:\ to\ Cc: ivy-default-view-name help-follow-symbol pcomplete-stub japanese-hiragana-two-byte gnus-article-nndoc-name dired-unmark-all-marks rng-parse-validate-file uniquify-rename-buffer gnus-mime-security-details-buffer diredp-omit-files-regexp org-table--descriptor-line raw-text-dos org-habit-scheduled info--manual-names 0 :day-name gnus-try-warping-via-registry search-emacs-glossary :where *table--cell-kill-paragraph EXPLAIN byte-condition-case text-property--find-end-backward xref--push-markers 0 C-u Above nnimap-status-message gnus-summary-limit-to-marks org-agenda-menu-show-matcher nnmail-message-id-cache-file 0 article-fill-long-lines smime-buffer-as-string-region deferred:parallel-array-to-alist check-declare xref-group counsel--async-filter bibtex-text-in-string ! ...] :predicate #f(compiled-function (sym) #<bytecode -0x14abb373f8ac2f4e>) :require-match t :history counsel-M-x-history :action counsel-M-x-action :keymap (keymap (67108908 . counsel--info-lookup-symbol) (67108910 . counsel-find-symbol)) :initial-input nil :caller counsel-M-x)
counsel-M-x()
funcall-interactively(counsel-M-x)
command-execute(counsel-M-x)

@yantar92, thank you for mentioning the issue

@iantor I'm not sure if you use straight.el or not, but if so, the steps to fix the problem probably would be:

  1. Update straight.el to the latest commit
  2. Clean ~/.emacs.d/straight/build/ and ~/.emacs.d/eln-cache/, ~/.emacs.d/elpa/org-timeblock/, ~/.emacs.d/elpa/org/ folders
  3. Rerun your Emacs and reinstall org-timeblock

@iantor Maybe just updating straight.el would be sufficient. Note that you have to switch to develop branch of straight.el to get the update.

iantor commented

@ichernyshovvv I don't use Straight but am prepared to give it a try to see the effect. I will use your instructions.

iantor commented

Just on a hunch, and based on the contents of the error message I reported, I'm going to try removing Ivy and related tools, and see if that has any effect.

@iantor Can you join matrix chat :D? I guess it'll be much quicker to solve this issue in the chat

If you can figure our reproducer starting from emacs -Q, it would be nice.

iantor commented

I've rejoined matrix, is there a link to a specific room there?

I had the same issue with 30.0.50. When I moved to emacs 29.1, that problem went away. See if this in debugging this problem.

iantor commented

I had the same issue with 30.0.50. When I moved to emacs 29.1, that problem went away. See if this in debugging this problem.

I will test this ASAP

If I may offer some general advice: Emacs 29.1 was just released. Emacs 30.1 won't be released for a long time. Using a build of "Emacs 30.0.50" is not generally recommended, unless you want to be one of those generous users who seeks to find bugs in unreleased Emacs versions so they can be reported to the Emacs developers.

Reporting issues to package developers when using an unreleased version of Emacs is of questionable value; it can sometimes be a waste of everyone's time. At least, one should reproduce a problem on the latest released version of Emacs before reporting.

iantor commented

Using a build of "Emacs 30.0.50" is not generally recommended, unless you want to be one of those generous users who seeks to find bugs in unreleased Emacs versions so they can be reported to the Emacs developers.

Point well taken. Have installed 29.1 (build 2) and will retest org-timeblock