Now all tests and lints pass on Emacs versions 27.1-29.4, and the
current 30.0.50-ish snapshot build.
Note: This change was originally applied on master, but it seems
reasonable to apply it to this stable bugfix release now.
Fixes#433.
Reported-by: Akira Komamura <akira.komamura@gmail.com>
Co-developed-by: Stefan Monnier <monnier@iro.umontreal.ca>
This allows a query like this:
(level <= (string-to-number (property PROPERTY)))
to proceed without signaling an error from ORG-QL--QUERY-PREAMBLE.
See #460.
Reported-by: Stewmath <https://github.com/Stewmath>
Supporting this form isn't really required, since it violates the
CL-style argument parsing of CL-DEFUN, but it's convenient, and
probably saves some hair-pulling for users who are less familiar with
Elisp.
Fixes#460.
Reported-by: Stewmath <https://github.com/Stewmath>
Now all tests and lints pass on Emacs versions 27.1-29.4. But on the
current Emacs snapshot build used in CI, Buttercup is hanging
indefinitely, which may be the same problem that led Guix to disable
the tests in
<https://git.savannah.gnu.org/cgit/guix.git/commit/gnu/packages/emacs-xyz.scm?id=3add97c7761e6c58a1d7405f417a49dda5f0a742>.
But I've no way of knowing whether that's a problem in org-ql (seems
unlikely), Emacs snapshot, or Buttercup. It would be nice to solve
this before Emacs 30.1 is released, but I don't know how to peer
inside Buttercup to find out what it's hanging on.
Fixes#433.
Reported-by: Akira Komamura <akira.komamura@gmail.com>
Co-developed-by: Stefan Monnier <monnier@iro.umontreal.ca>
This does not solve the compilation warning, because that's caused by
the Pcase patterns at the end of the docstring, which the linter
falsely identifies as incorrect.
I'm not sure why calling the REC labeled function didn't correctly
normalize these sub-queries; it seemed to only normalize for one
round, leaving some queries incorrectly normalized. But this fixes
it.
Fixes#365.
Reported-by: Gabriele Mongiano <https://github.com/kofm>
When org-use-property-inheritance is a list, then the query
(property "FOO" "BAR")
would bail out with:
org-ql--byte-compile-warning: Invalid Org QL query: "Invalid Org QL
query: \"‘\\\"BLAH\\\"’ is a malformed function\", :warning", :error
(property "FOO") would still work though.
So, if org-use-property-inheritance is a list, cast it to
the (default) boolean value for this variable: nil.
Use 'selective' inheritance when org-use-property-inheritance is a list
This symbol is mentioned in the org-entry-get documentation.