pesterhazy / bash2bb

44 stars 1 forks source link

Fails for list with 3 or more commands #1

Closed dundalek closed 1 year ago

dundalek commented 1 year ago

This translates OK: echo a && echo b

When there are 3 or more commands like: echo a && echo b && echo c

Translation errors with:

----- Error --------------------------------------------------------------------
Type:     java.lang.AssertionError
Message:  Assert failed: (= (quote shell) (first cmd))
Location: /home/me/.gitlibs/libs/io.github.pesterhazy/bash2bb/57c4f925273e2146b7ba8c392e3268775cef0616/src/bash2bb/core.clj:108:38

----- Context ------------------------------------------------------------------
104:   (assert (<= (count redirs) 2))
105:   (let [finalize
106:         (fn [form]
107:           (if (= :binary context)
108:             (list 'zero? (list :exit (update-shell form assoc :continue true)))
                                          ^--- Assert failed: (= (quote shell) (first cmd))
109:             form))]
110:     (case type
111:       "CallExpr"
112:       (let [{args "Args", assigns "Assigns"} cmd]
113:         (cond

----- Stack trace --------------------------------------------------------------
bash2bb.core/update-shell     - /home/me/.gitlibs/libs/io.github.pesterhazy/bash2bb/57c4f925273e2146b7ba8c392e3268775cef0616/src/bash2bb/core.clj:33:1
bash2bb.core                  - /home/me/.gitlibs/libs/io.github.pesterhazy/bash2bb/57c4f925273e2146b7ba8c392e3268775cef0616/src/bash2bb/core.clj:108:38
clojure.core/list             - <built-in>
bash2bb.core                  - /home/me/.gitlibs/libs/io.github.pesterhazy/bash2bb/57c4f925273e2146b7ba8c392e3268775cef0616/src/bash2bb/core.clj:108:26
clojure.core/list             - <built-in>
... (run with --debug to see elided elements)
bash2bb.core/bash->bb         - /home/me/.gitlibs/libs/io.github.pesterhazy/bash2bb/57c4f925273e2146b7ba8c392e3268775cef0616/src/bash2bb/core.clj:246:23
bash2bb.core/bash->bb         - /home/me/.gitlibs/libs/io.github.pesterhazy/bash2bb/57c4f925273e2146b7ba8c392e3268775cef0616/src/bash2bb/core.clj:245:1
bash2bb.core                  - /home/me/.gitlibs/libs/io.github.pesterhazy/bash2bb/57c4f925273e2146b7ba8c392e3268775cef0616/src/bash2bb/core.clj:259:16
clojure.core/apply            - <built-in>
user                          - <expr>:1:37