retrogradeorbit / bootleg

Simple template processing command line tool to help build static websites
Eclipse Public License 2.0
256 stars 12 forks source link

Selector functions don't survive babashka pod EDN bridge #74

Open lvh opened 3 years ago

lvh commented 3 years ago
(require '[babashka.pods :as pods])
(pods/load-pod 'retrogradeorbit/bootleg "0.1.9")
(require '[pod.retrogradeorbit.bootleg.enlive :as e])
(require '[pod.retrogradeorbit.net.cgrand.enlive-html :as eh])

(->> "<html><body><h1 data-x=1>hello</h1><p data-y=2>"
     eh/html-snippet
     (eh/select [(eh/attr? "data-x")]))

Run with bb, get:

Cannot read EDN:  "#object[net.cgrand.enlive_html$zip_pred$fn__3291 0x4816273d \"net.cgrand.enlive_html$zip_pred$fn__3291@7f002f3d2810\"]"
#error {
 :cause "No reader function for tag object"
 :via
 [{:type java.lang.RuntimeException
   :message "No reader function for tag object"
   :at [clojure.lang.EdnReader$TaggedReader readTagged "EdnReader.java" 801]}]
 :trace
 [[clojure.lang.EdnReader$TaggedReader readTagged "EdnReader.java" 801]
  [clojure.lang.EdnReader$TaggedReader invoke "EdnReader.java" 783]
  [clojure.lang.EdnReader$DispatchReader invoke "EdnReader.java" 549]
  [clojure.lang.EdnReader read "EdnReader.java" 145]
  [clojure.lang.EdnReader read "EdnReader.java" 111]
  [clojure.lang.EdnReader readString "EdnReader.java" 67]
  [clojure.edn$read_string invokeStatic "edn.clj" 46]
  [babashka.pods.impl$processor$fn__29371 invoke "impl.clj" 141]
  [babashka.pods.impl$processor invokeStatic "impl.clj" 170]
  [babashka.pods.sci$load_pod$fn__29526 invoke "sci.clj" 72]
  [sci.impl.vars$binding_conveyor_fn$fn__631 invoke "vars.cljc" 153]
  [clojure.core$binding_conveyor_fn$fn__5773 invoke "core.clj" 2034]
  [clojure.lang.AFn call "AFn.java" 18]
  [java.util.concurrent.FutureTask run "FutureTask.java" 264]
  [java.util.concurrent.ThreadPoolExecutor runWorker "ThreadPoolExecutor.java" 1128]
  [java.util.concurrent.ThreadPoolExecutor$Worker run "ThreadPoolExecutor.java" 628]
  [java.lang.Thread run "Thread.java" 829]
  [com.oracle.svm.core.thread.JavaThreads threadStartRoutine "JavaThreads.java" 553]
  [com.oracle.svm.core.posix.thread.PosixJavaThreads pthreadStartRoutine "PosixJavaThreads.java" 192]]}
maxrothman commented 1 month ago

I see there have been some commits that reference this issue, but I'm still seeing this behavior in the latest release.