jpmonettas / clindex

A Clojure[Script] source code indexer
Eclipse Public License 1.0
116 stars 6 forks source link

Fails to require `clindex.api` on Clojure #8

Closed mauricioszabo closed 4 years ago

mauricioszabo commented 4 years ago

On Clojure side, if you require (require '[clindex.api :as clindex]) it fails with:

"Could not locate cljs/core/specs/alpha__init.class, cljs/core/specs/alpha.clj or cljs/core/specs/alpha.cljc on classpath."

Looking at the source code of the project, I see multiple requires of cljs.* over the .clj files. Does the project needs ClojureScript, or only works on ClojureScript for now?

jpmonettas commented 4 years ago

@mauricioszabo hey I'm just seeing this. Let me take a look. Are you from Brazil? I'm from Uruguay, currently living in Montevideo.

mauricioszabo commented 4 years ago

Great! Also, let me know if I can help with anything! I'll probably look at your other projects, lots of promising things to integrate into Chlorine / REPL-Tooling (my editor plug-ins projects :smile:)

Also, yes, I'm from Brazil :)

jpmonettas commented 4 years ago

@mauricioszabo I wrote this just after my previous answer but for some reason never pushed the Comment button :man_shrugging:

I'm not seeing that error, how are you running the repl?

clj -Sdeps '{:deps {clindex {:mvn/version "0.4.3"}}}'
Downloading: clindex/clindex/0.4.3/clindex-0.4.3.pom from https://repo.clojars.org/
Downloading: clindex/clindex/0.4.3/clindex-0.4.3.jar from https://repo.clojars.org/
Clojure 1.10.1
user=> (require '[clindex.api :as clindex])
nil
user=> 

The library is for Clojure, but can index Clojure and ClojureScript codebases. It has a dependency on ClojureScript because it uses some functionality from it to parse ClojureScript code.

mauricioszabo commented 4 years ago

With lein and project.clj. Just checked here, the bug still happens...

I also tested with deps (the very same command you sent) and got a different error:

user=> (require '[clindex.api :as clindex])
Syntax error compiling at (clindex/scanner.clj:254:16).
No such var: ns-find/clj

But then, I tried to require inside a docker, and it worked - so I believe there's something on my local profile.clj or global deps.edn that's conflicting. Will try to debug on my side. Thanks :)