Suppose there's a project out there that already has externs (just not for clojurescript). Do I still need to include the .ext.js file in an extern for cljsjs, or can I just ask Boot to download that extern straight from the original project's repo?
@mikebelanger You can use Boot to download it
@juhoteperi cool, and btw it gets checksummed, so if that original repo changes, Boot will fail
You should also use URL with the library version
@juhoteperi you mean a url with a version number in it?
Yes
(I'm just writing comment on ToneJs PR about this)
Oh yeah, I should change the version thing to actually make sense, not just add nothing 😛
Both r8 and 0.8.0 are okay, r8 should work fine in Clojars & tooling, but ToneJs is using 0.8.0 in npm
@juhoteperi right its best to be consistent with npm -- I totally spaced.
@juhoteperi as far as urls go, I'm a little confused. Does the formatted url get assigned as the :scm
map value in the task-options! pom {...
part?
No, to the download task url parameter
@juhoteperi but that url doesn't exist -- I mean ideally Tonejs would go with version numbers in the url, but it doesn't look like that's a branch in the repo
@juhoteperi ...oh I see, instead of master its r8
...
Yeah, it is a tag instead of branch
@juhoteperi I had no idea github had the r/
urls 😛 I need to learn to git better.
I see what you mean, one var for lib url, one formatted to match up with npm
Usually libraries use the version number as tag, so there is no need for different "release" and "version"
That makes a lot of sense -- I was thinking the checksum was the only check in place against a changed repo, which is a little precarious
Checksum is mostly to guard against CI failing the download for some reason
And I'm not sure if it is worth it nowadays
Previously we didn't have as well refined build process
I could see it being useful in the case of a url that isn't in vc -- but I guess that's pretty rare
Sorry, as you can tell I know nothing about git, I just added a commit based on what you mentioned, do I need to do another PR, or does that commit get included in the PR?
It gets included.
@mikebelanger Now the PR is missing +version+
, it is used by pom task
oh and +lib-version+ refers itself, instead of +lib-release+
oops sorry will change that right away
Aaand it would be best to have +version+
still
+version+ includes the cljsjs specific part, e.g. -1
that is increased if the cljsjs package is changed without updating the library version
So something like...
(def +lib-release+ "8")
(def +lib-version+ (str "0." +lib-release+ ".0"))
(def +version+ (str +lib-version+ "-1"))
(set-env!
:resource-paths #{"resources"}
:dependencies '[[cljsjs/boot-cljsjs "0.5.2"]])
(task-options!
pom {:project 'cljsjs/tonejs
:version +version+
:description "A Web Audio framework for making interactive music in the browser."
:url "<http://www.tonejs.org/>"
:license {"MIT" "<https://github.com/Tonejs/Tone.js/blob/master/LICENSE.md>"}
:scm {:url "<https://github.com/cljsjs/packages>"}})
?@mikebelanger Yes, that seems correct
@juhoteperi sorry to bug you again, but the version in tonejs' README seems to be +version+, instead of the full release -- does it read it from the POM settings? I can make another PR real quick
I'm referring to the version number : https://github.com/cljsjs/packages/tree/master/tonejs
oh wait, looks like the robot changed it