-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error with #voc/lstr Language Tagged Strings in CLJS #32
Comments
Hmm. The unit tests are working. Sorry but I don't play on the cljs side much, and when I do, I typically use shadow. Could you give me instructions for entering the cljs environment that triggers this error? Thanks for logging this BTW. |
From Emacs I do M-x cider-jack-in-cljs > figwheel-main > dev From CLI I do:
Everything loads normally in CIDER except the reader macro for the LangStr doesn't print correctly and I can't use the #voc/lstr literals. However in Clojure CLI it works. If I require a namespace (like https://github.com/aamedina/rdf/blob/main/src/cljc/net/wikipunk/rdf/as.cljc) with lstrs I can load it and even see the lstrs but they print malformed as I reported. |
Do you think you could give me a minimal deps.edn? Also, (ont-app.vocabulary.lstr/->LangStr "hello" "en") should actually be throwing an error. It only expects one argument, e.g. "hello@en" Edit: sorry, I was working off of memory. You are correct |
Isn't that the constructor for the deftype? It should accept 2 positional args. {:deps
{org.clojure/clojure
{:mvn/version "1.12.0-alpha3"}
com.cognitect/transit-clj
{:mvn/version "1.0.333"}
com.cognitect/transit-cljs
{:mvn/version "0.8.280"}
io.github.aamedina/rdf
{:git/sha "264ac9dbce0ff2f354a3bd0175c56c88abcce882"}
org.clojure/clojurescript
{:mvn/version "1.11.60"}
reagent/reagent
{:mvn/version "1.2.0"}
cljsjs/react
{:mvn/version "17.0.2-0"}
cljsjs/react-dom
{:mvn/version "17.0.2-0"}}
:paths ["src/clj" "src/cljc" "src/cljs" "classes" "resources" "target"]
:aliases
{:dev
{:extra-deps
{com.bhauman/figwheel-main
{:mvn/version "0.2.18"}
com.bhauman/rebel-readline-cljs
{:mvn/version "0.1.4"}}
:extra-paths ["dev"]}}} |
I haven't had a chance to really wrestle this problem to the ground, but early indications suggest that this might be a problem with the cider or nrepl render custom tags. |
Traced this to a problem in piggieback. Logged this issue: nrepl/piggieback#128 |
Nice job tracking that down! |
Issue: Error with #voc/lstr Reader Macro for Language Tagged Strings in RDF in CLJS
Description
I am encountering an issue when trying to use the #voc/lstr reader macro to support language tagged strings in CLJS. The expected output is not being produced, and instead, I am seeing compile exceptions.
Steps to Reproduce
#voc/lstr "hello@en"
in a CLJS REPL. This results in a compile exception:failed compiling constant: hello; ont_app.vocabulary.lstr.LangStr is not a valid ClojureScript constant.
(ont_app.vocabulary.lstr.LangStr.)
. This results in#voc/lstrundefined@undefined
.(ont-app.vocabulary.lstr.LangStr.)
. This also results in#voc/lstrundefined@undefined
.(ont-app.vocabulary.lstr/->LangStr "hello" "en")
. This results in#voc/lstrhello@en
.Expected Behavior
The expected output when running
#voc/lstr "hello@en"
is#voc/lstr "hello@en"
.Actual Behavior
Instead of the expected output, we're seeing compile exceptions and incorrect output.
Additional Information
vocabulary/src/ont_app/vocabulary/lstr.cljc
Line 56 in a6e14d6
Thank you for your work on this library.
The text was updated successfully, but these errors were encountered: