This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-09-13
Channels
- # aws-lambda (21)
- # beginners (8)
- # boot (67)
- # braveandtrue (2)
- # cider (12)
- # cljs-dev (38)
- # cljsjs (87)
- # cljsrn (11)
- # clojure (307)
- # clojure-austin (29)
- # clojure-finland (1)
- # clojure-italy (9)
- # clojure-russia (19)
- # clojure-spec (71)
- # clojure-uk (33)
- # clojurescript (109)
- # clojutre (1)
- # core-async (2)
- # cursive (24)
- # datomic (11)
- # devops (5)
- # ethereum (5)
- # figwheel (2)
- # hoplon (25)
- # ipfs (1)
- # jobs (1)
- # luminus (17)
- # off-topic (1)
- # om (38)
- # om-next (3)
- # onyx (166)
- # other-lisps (1)
- # proton (5)
- # re-frame (15)
- # reagent (45)
- # ring (2)
- # spacemacs (6)
- # specter (12)
- # untangled (58)
- # yada (23)
Does anyone have any idea why this preloads vector does not seem get picked up
(cljs :ids #{"public/js/main"}
:source-map true
:compiler-options {:preloads '[devtools.preload]
:external-config {:devtools/config {:features-to-install [:formatters :hints :async]}}})
I see the external config is wrong hmm
Ow nvm that is my formatting š
I have updated some deps and now it started working!
@bill hello :)
hello @flyboarder my Mavenfreude has reached a critical point. Seeking solace.
Hahaha you have come to the right place, what problem are you having?
Downloading things?
Uploading things?
just Maven
Would it be feasible, or maybe even profitable to replace all my pom.xml
in a medium-sized Java project (say 20 POMs building a Java REST server) with Boot scripts?
Iām the only one on the team of 6 that currently knows Clojure but I swan, I just canāt take Maven any more
Are you looking to replace them with a boot generated Pom?
couldnāt I just actually use Boot and if it needed to gen POMs in order to deploy artifacts then thatād be ok but I wouldnāt manage POMs as source code
but perhaps Iām overly-optimistic⦠was seeking a more declarative build spec, more like make(1)
where I ask for what I want and the build system deduced whatās needed instead of (Mavenās) sequential phases looping through plugin goals in nested for loops forever
boot is sort of the opposite of make (and maven), it does not actually know anything about your build
neat @micha. You say boot does not actually know anything about your build. I kinda get that. But does Boot have a notion of dependency and a notion of when a dependency is out of date? My impression was dependency and āout of dateā were building blocks I could rely on in Boot
boot exposes them in a way that is easy to use, because most of the time you'll want to get dependencies from maven etc
the term ādependencyā is overloaded. Youāre talking specifically about Mavenās dependency notion. I wonder about Bootās native notion of dependency (if any). Makeās dependencies are declarative. Does boot have a first-class dependency notion thatās declarative? Seems like it does. Seems like there is a āplannerā in Boot that knows when to call certain tasks (and not call others) based on the Fileset right?
@bill boot doesnāt have notions when to call or not to call boot tasks, it does have a boot environment which you can declare dependencies in and will be fetched by boot along with specifying folder paths for the fileset
neat yeah @flyboarder
but that has nothing to do with the actual build pipeline
so you can use the environment deps to fetch things that contain boot tasks which you can then use
@bill could you maybe rephrase your question, your current project has about 20 deps and you are looking to convert it from make or lein or whatever to boot yes?
@flyboarder: I get the impression @bill wants to run boot build
and have boot say that X is built, so I can skip that, but Y isnt, so I need to do that.
Iām all Maven right now, building Java sources almost exclusively. I have a top-level POM that depends on three other subproject POMs which in turn my depend on a dozen or so other subproject POMs. 2 KLOC in 15 POM files in all
plugins like surefire, shade, assembly, dependency, compiler, enforcer, javadoc, jar, cobertura (code coverage)
wondering about feasibility/sensibility of turning the whole shootinā match to glorious Clojure
@bill so since you have nested projects I would think thats more of an advanced setup, which may need boot-in-boot im not sure where that example lives
I dont work with java at all, so my knowledge on that is limited
I dontā want nested projects. Itās just that in Maven, if you want any modularity you have to create another POM and you end up with another Maven artifact in repositories everywhere
@bill one thing you can do in boot that i want to do, but haven't yet
hmm what's the maven thing called, that's like a template you can subclass?
i guess a parent pom
anyway the way you can do that in boot is with mixing-in instead of inheritance
for example you can make a clojure program with a function that returns a [[vector/of "1.2.3"] [dependencies "1.0.0-SNAPSHOT"]]
so in your build.boot you could:
(set-env! :dependencies '[[acme/company-deps "1.0.0"]])
(require '[acme.company-deps :refer [deps]])
(set-env! :dependencies (into '[[foo/bar "1.2"]] (deps))
i need to make something like acme/company-deps because i'm constantly managing exclusions between slf4j versions, jackson deps, etc
so what you can do with boot is make a library that produces a program that brings in the deps you want
a downside to this is if you already have very maven-aware jenkins machinery powered by parent poms etc
Iām going to abandon Jenkins too because it promotes a world where stuff really can only ever get built (right) on Jenkins servers
a thousand times this sentiment
I think the solution to that is to not allow anything but environment variables in your ābuild configurationā or whatever on the jenkins server, and have all the actual build work checked in
along with using agents that get wiped out regularly and have no deps installed⦠make people bring their own deps ā containers, virtualenv, whatever.
Trying to use boot-new, anyone have a clue how to begin debugging this ? http://paste.ubuntu.com/23175338/ / https://github.com/readux/readux-starter
@pseud i dont see you including the template dep
im not sure boot-new downloads templates for us
boot-new
looks on Clojars etc for the named template.
That exception looks like a failure in the template itself or while applying the template generating function⦠let me try that locally...
FWIW, trying exactly what it says on that projectās README fails:
(! 502)-> boot -d seancorfield/boot-new new -t readux-starter -n pseudapp2
Retrieving maven-metadata.xml from (1k)
Retrieving boot-template-0.1.1.pom from
Retrieving boot-template-0.1.1.jar from (8k)
Could not load template, failed with: Could not locate boot/new/readux_starter__init.class or boot/new/readux_starter.clj on classpath. Please check that namespaces with dashes use underscores in the Clojure file name.
clojure.lang.ExceptionInfo: 1
data: {:file
"/var/folders/p1/30gnjddx6p193frh670pl8nh0000gn/T/boot.user4270760942851705989.clj",
:line 17}
boot.App$Exit: 1
boot.new-helpers/resolve-remote-template/fn new_helpers.clj: 64
boot.new-helpers/resolve-remote-template/invokeStatic new_helpers.clj: 64
boot.new-helpers/resolve-remote-template new_helpers.clj: 16
Iāll clone the redux-starter repo and see if I can figure out whatās wrong with it...