compiling: cljsjs/<some-lib>.inc.js is not a relative path
- 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
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