boot-clj / boot-clj/boot-cljs

compiling: cljsjs/<some-lib>.inc.js is not a relative path

Open
#168 10 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Clojure
Stars
176
Forks
40
PR merge metrics
No merged PRs in 30d

Description

Has anyone been able to compile bleeding edge clojurescript 1.9.854 (with the `global-exports` feature) when compiling with dependencies from cljsjs?

I’m getting a stack error of
```
/Users/.../.boot/cache/tmp3s9/d54ps8/main.out/cljsjs/development/moment.inc.js is not a relative path {:from :boot-cljs}
```
Per the [alpha recommendation](https://github.com/reagent-project/reagent/blob/master/docs/0.8-upgrade.md) of reagent 0.8, I have added a foreign-lib config to my `:compiler-options`:
```
;; note this is improper -- moment should be /cljsjs/moment/moment.file--, but
;; it's packaged incorrectly on cljsjs as /cljsjs/moment.file
{:foreign-libs [
{:file "cljsjs/development/moment.inc.js"
:file-min "cljsjs/production/moment.min.inc.js"
:provides ["moment"]
:global-exports '{moment moment}]}
```
I know the clojure version is still a release candidate, but I'm not really sure where to start digging. We have [one suspect here](https://github.com/clojure/clojurescript/blob/90dbbf889580e4914a16466440e83f982e27f3ed/changes.md) at issue CLJS-2152. Did this release fix a "problem" on which boot-cljs was depending?

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the failure with ClojureScript 1.9.854, the shown :foreign-libs configuration, and the cljsjs/development/moment.inc.js path. Read the linked changes.md entry for CLJS-2152 and compare its behavior with boot-cljs; done means establishing whether the release changed a dependency and documenting or addressing the compatibility issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
clojure, javascript
Domain
build-system, compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.