babashka.el icon indicating copy to clipboard operation
babashka.el copied to clipboard

Syntax error on valid bb.edn

Open favetelinguis opened this issue 1 year ago • 5 comments

Just did an install from melpa to Doom emacs. I have the following bb.edn file.

{:tasks
 {db-stop {:doc "Stop the devbox distrobox"
           :task (shell "distrobox stop --yes devbox")}
  db-rm {:doc "Remove the devbox distrobox"
         :task (shell "distrobox rm --force devbox")}
  db-create {:doc "Create the devbox distrobox"
             :task (shell "distrobox create devbox -i devbox")}
  db-enter {:doc "Enter the created distrobox"
            :task (shell "distrobox enter devbox")}
  remake {:doc "Will kill and build and create a new devbox ready to enter"
          :task (do (run 'pm-build)
                    (run 'db-stop)
                    (run 'db-rm)
                    (run 'db-create))}
  pm-build {:doc "Build docker image"
            :task (shell "podman build -f CoreBox -t devbox .")}
  pm-clean {:doc "Cleanup unused images"
            :task (shell "podman image prune --all")}}}

I am getting the following error when running babashka-tasks.

parseclj--reduce-coll: parseclj: Syntax error: "At position 528, unmatched :rparen"

What am I doing wrong here?

favetelinguis avatar May 02 '24 12:05 favetelinguis

Did open the following https://github.com/clojure-emacs/parseedn/issues/18

favetelinguis avatar May 04 '24 07:05 favetelinguis

As a workaround you can put all of this into bb/pm-builld.clj and require it in bb.edn

licht1stein avatar May 04 '24 09:05 licht1stein

I am getting a similar unmatched :rparen syntax error with my config and found that a symbol in my task (e.g. ’foo in (run ’foo)) caused the issue. It seems like this has been confirmed by the maintainer in your issue on parseedn, so I guess we have to wait until they can fix it.

formsandlines avatar Dec 23 '24 22:12 formsandlines