This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-08-15
Channels
- # architecture (2)
- # beginners (16)
- # boot (2)
- # cider (4)
- # clara (6)
- # cljs-dev (78)
- # cljsrn (3)
- # clojure (158)
- # clojure-austin (1)
- # clojure-belgium (1)
- # clojure-dusseldorf (19)
- # clojure-italy (8)
- # clojure-russia (3)
- # clojure-spec (77)
- # clojure-uk (61)
- # clojurescript (341)
- # cursive (9)
- # data-science (12)
- # datomic (18)
- # emacs (9)
- # fulcro (109)
- # hoplon (10)
- # juxt (2)
- # leiningen (2)
- # lumo (31)
- # off-topic (1)
- # om (4)
- # onyx (40)
- # parinfer (17)
- # re-frame (36)
- # reagent (19)
- # spacemacs (10)
- # vim (60)
- # yada (20)
sounds good to me too
CI agrees
I'll kick off a Canary build. Don't expect to learn anything different but'll do so anyway
All the downtream Canary builds passed: https://github.com/cljs-oss/canary/tree/results/reports/2017/08/15/job-000072-1.9.895-190f3fa
@dnolen I was thinking, given that we forked module-deps
, we could just add the other dependencies as transitive to that module and require less NPM dependencies for users doing things manually
do you think this is a good idea?
we currently require @cljs-oss/module-deps
, enhanced-resolve
and konan
adding enhanced-resolve
and konan
to the dependencies of @cljs-oss/module-deps
would allow us to only need that one
@anmonteiro seems like a fine idea to me
(I cut a release of @cljs-oss/module-deps
in NPM as part of this ticket)
@honzabrecka just mentioned a tool built on top of https://github.com/angular/tsickle on another channel, I tested using tsickle on leaflet defs from DefinitelyTyped, and the result looks very good: https://github.com/cljsjs/packages/compare/ts-d-externs?expand=1
Not sure yet what would be the most useful way to use these, but I could for example convert all 2500 defs to externs and package them for as cljsjs.extern/package-name "version"
for easy use
Then the foreign-lib packages could depend on the latest extern package, but it would also be easy to use externs without foreign libs
That’s exactly my idea 🙂
* DefinitelyTyped in fact has 3500 definitions
out of 420 cljsjs packages, 160 have type definitions on DefinitelyTyped, and some others are named differently
@juhoteperi there are also some other things in flowtyped
Some of the packages also probably maintain defs themselves
other work in this area is https://github.com/rrdelaney/reasonablytyped
that converts Flow typedefs to Ocaml interface files
@dnolen would be cool if CLJS-2322 also made it to this release
@anmonteiro testing it now
CLJS-2294 would fix minor issues with compiler-options validation
@dnolen hrm should requires be munged with the core munge
or cljs.compiler/munge
?
I guess this is where a test case would be helpful
because we definitely use cljs.compiler/munge
when we do goog.require
was Tony’s problem the fact that some of his namespaces had -
in them?
and we were looking for underscores?
we index inputs and we need to canonicalize everything up front so lookups work consistently
I see
@mfikes can you trigger a canary run?
Yep. I’ll do one now. In case you ever want to do one yourself, it is easy: Check out the jobs
branch, and commit an empty commit that has the commit message “job”:
git commit --allow-empty -m "job"
thanks
@anmonteiro you can also specify some extra params, like --compiler-repo
or --compiler-rev
to point to your own fork or specify exact revision, see the readme here: https://github.com/cljs-oss/canary/tree/jobs
btw. would be great to add lumo as a canary task when you get a minute, I will assist you
@juhoteperi I’m converting all defs from DefinitelyTyped, here’s first bunch https://github.com/honzabrecka/ts-to-goog/tree/definitelytyped/externs
It’s based on https://github.com/Microsoft/types-publisher - I plan to use it to keep externs in sync.
I made this change - https://github.com/clojure/clojurescript/commit/6130143bbc07e49c3d6e9313377226b9551be434
hopefully will fix, but it may affect other things - it’s hard to say - if you have a larger project esp. with a lot of :preloads
tooling, try master
@dnolen this was probably seen as far back as https://dev.clojure.org/jira/browse/CLJS-1821
probably seeing this again now because we’re always injecting the process shim preload
@dnolen if this is indeed the fix, I think we should only sort deps again if we do really have preloads otherwise it’s a useless sort
i.e. move the call to sort-deps
here: https://github.com/clojure/clojurescript/blob/master/src/main/clojure/cljs/closure.clj#L1002
If only I could have a reliable repro
@tony.kay do you have one?
@anmonteiro Do you want a github commit and instructions? I can test your change if you want.
no, I want a reliable repro to include as a test in the CLJS codebase
right