Failure to load is-plain-object transitive npm dep

Description

The slate npm dep depends on is-plain-object but it can't be loaded. Start up a REPL with:

(Note, that in the above we are going with the default browser REPL; the problem doesn't occur if you specify -re node.)

Then, after the REPL is up and running:

Note that it can't load module$is_plain_object, which is specified via

inside of out/node_modules/slate/lib/slate.es.js.

But, you can load that namespace directly:

This appears to be the result of Closure failing to find the correct paths to the modules and simply emitting module$<symbol> instead of module$<path> for the goog.require.

Environment

{:deps {org.clojure/clojurescript {:mvn/version "1.10.238"}}}

Activity

Show:

Mike Fikes November 8, 2018 at 11:26 PM

It appears that the Map constructor issue is that the hosting object involves a default field:

Mike Fikes July 6, 2018 at 5:52 PM

Yeah, one issue (perhaps a different one, strictly speaking, given that this ticket as written will be solved when we ultimately move to a newer version of Closure), is that there seems to be some mixup between the debug module that is inside the slate module tree, and the top-level debug module.

import July 6, 2018 at 4:45 PM

Comment made by: jumblemuddle

In regards to `slate`, there are also browser console errors.

REPL

Browser Console Errors

import July 6, 2018 at 4:40 PM

Comment made by: jumblemuddle

This may be an unrelated issue, but there seems to be a problem if the npm module uses `process.env.NODE_ENV`.

Starting REPL with snapshot `closure-compiler-unshaded`

Browser Console Errors

Mike Fikes July 4, 2018 at 1:10 PM

Using current master of Closure Compiler, building the unshaded JAR via mvn -DskipTests -pl externs/pom.xml,pom-main.xml,pom-main-unshaded.xml and depending on it using

deps.edn

then you can (require 'slate) without errors being reported. (It is not clear to me whether Closure is loading all of the code correctly; after this it is not clear to me how you would use Slate and the exported object appears to be empty.)

Details

Assignee

Reporter

Labels

Priority

Created May 21, 2018 at 10:24 PM
Updated November 9, 2018 at 12:21 PM
Loading...