Fork me on GitHub
#boot
<
2016-04-14
>
kenny00:04:01

Has anyone been having problems with boot-cljsjs download? I get

clojure.lang.ExceptionInfo: java.lang.NoClassDefFoundError: IllegalName: compile__stub.clj_http.headers.clj-http.headers/HeaderMap, compiling:(clj_http/headers.clj:105:1)
when trying to run the download task. This is fixed by adding clj-http dependency. It looks like boot-cljsjs is loading clj-http in a pod.

micha00:04:04

@mattly: the target task shouldn't have any relation to reload

richiardiandrea01:04:45

a question, when using add-cached-resource I use digest/md5 as key, but what about cache-fn?

alandipert13:04:27

in srssnss tho, could use a hand with the wiki page. some editor came in an marked it as a stub 😢

dominicm13:04:12

Wait until the deletionists merge it with the Clojure page.

dominicm13:04:20

Rich Hickey isn't allowed a page.

alandipert13:04:02

yeah we'll see. i was amazed at how quickly editors swooped in

alandipert13:04:41

i haven't created a page since like 2005, i was pleasantly surprised that the creation barrier is still so low

dominicm13:04:47

I've become disillusioned with wikipedia lately. I've found more information in the talk pages a lot of the time.

dominicm13:04:03

But because of pokemon, that information isn't allowed on the page itself.

dominicm13:04:15

I want someone to take a dump of wikipedia pre-pokemon, and relaunch.

alandipert13:04:27

is pokemon some scandal?

alandipert13:04:55

err i'm aware of the TV show, just hnt the relationship to wiki

dominicm13:04:16

It used to be that every pokemon had a wikipedia page. Now there's ~5 pokemon-related pages. Everything has to pass this bar, that many kinds of content no longer match, e.g. pokemon. This is called the "pokemon test" Rich Hickey only has primary sources (himself). So he can't have a page. Apparently.

alandipert13:04:30

i see that same thing go on in big OSS projects

dominicm13:04:45

It's essentially a deletionist mentality which has become prevalent in the wikipedia staff mentality. For a universal compendium of knowledge, I want all the information, not just the information which can be proved via both [crappy newspaper] and the origins.

alandipert13:04:46

people with the dumbest ideas seem always to have the most time to defend them

dominicm13:04:10

It definitely seems that way.

alandipert13:04:50

altho i can respect the philosophical problems inherent in what they're doing lol

alandipert13:04:58

for instance, it wouldn't make sense for me to make pages for each of my dreams

alandipert13:04:04

but yeah, seems like they've drawn the line way too early. i'm always stunned when i run across clj page and don't see Rich Hickey is a link

dominicm13:04:41

Trying to make strict rules for such a broad problem seems impossible. You have start very light, and, well, probably stay that way.

dominicm13:04:22

I just went to check a controversial page, the paleo diet, it looks like it's gone. The paleo diet was literally insulted in it's opening sentence, Bill Clinton got more respect in his opening sentence.

alandipert13:04:11

yeah the lifestyle and political preferences of people with the most time seem also to always dominate

dominicm13:04:05

It seems to be becoming dominated by general "mass opinion"

richiardiandrea15:04:02

is there a sort of let-destroy for pod auto annihilation by any chance? 😄

alandipert15:04:33

like with-open you mean?

richiardiandrea15:04:46

yes but calling pod-destroy

richiardiandrea15:04:43

or another question would be: do I need to call pod-destroy every time? I see sometimes is not performed: https://github.com/boot-clj/boot/blob/8bdefc986798db9539f6351958632bf63d0a39a3/boot/core/src/boot/task/built_in.clj#L654

alandipert15:04:38

@richiardiandrea: hm, i'd guess that's a leak, probably warrants a core/cleanup

richiardiandrea15:04:55

ah ok got it 😄

alandipert15:04:26

i sense a cool macro coming

richiardiandrea15:04:26

it is not that complicated to implement and having a let just for destroying the pod is kind of visually ugly 😄

richiardiandrea17:04:30

so yesterday it was working but today when I do:

(pod/with-pod @pod
                  (let [tj (~transit-json ~input-path ~out-path)]
                       (boot.util/dbug "Tj %s\n" tj)
                          (.getPath tj )))

richiardiandrea17:04:50

I see Tj (boot.App/getStash "5b3bd323-2670-478e-a8a9-7a3edb9d6313")

richiardiandrea17:04:19

I basically moved the code from build.boot to a custom namespace that I require in build.boot

richiardiandrea17:04:35

does it make any difference?

richiardiandrea17:04:55

I actually see:

:unknown "java.io.File"
Tj (boot.App/getStash "392f10e7-b2be-427e-a2ec-1b1a942368f5")

micha17:04:23

could be a bug in with-pod

richiardiandrea17:04:52

ok, will check...

richiardiandrea17:04:14

but first I need to find a workaround

payal17:04:46

what is the exact use of task i.e. (deftask foo )

richiardiandrea17:04:07

@payal: that would declare a task

payal17:04:30

yes rightt .. I mean what are tasks used for

micha17:04:20

@payal: tasks are used to do stuff, like compile clojurescript to javascript, start a server, concatenate css, etc.

micha17:04:13

usually you will need to do a number of things, so tasks are designed in sucha way that they're easily composed with each other

payal17:04:26

That helped Thanks @micha and @richiardiandrea

dave18:04:20

i just got some insight on installing .exe files for windows from someone who contributed to alda's readme -- might be of interest for boot's readme as well? see: https://github.com/alda-lang/alda/pull/218

dave18:04:50

(prior to this PR, i shamelessly copied boot's windows install instructions :) )

dave18:04:22

tl;dr: apparently moving .exe files to windows system root is a bad practice

dave18:04:59

moving the .exe file to a folder inside of Program Files and adding that folder to PATH may be a better approach

richiardiandrea18:04:00

was the from where the pod classpath created from called :directories?

richiardiandrea19:04:18

answer: yes - but I don't know why it does not work at the moment here

richiardiandrea19:04:18

probably Sean and you guys beat me 😄

dave19:04:34

@richiardiandrea: holy cow! i think you win lol

dave19:04:43

that is a tricked-out build.boot

martinklepsch19:04:53

nice @richiardiandrea 😄

richiardiandrea20:04:05

@martinklepsch: thanks to your confetti it is actually smaller

richiardiandrea20:04:03

I wanted to have a task called "sma" or "save-me", go upload individual files, which is really easy to do with deploy-s3

martinklepsch20:04:05

@richiardiandrea: do you have any particular strategies for deploying? (content-hashing or similar)

martinklepsch20:04:49

@richiardiandrea: are you also using the library on it's own separately to sync-bucket?

martinklepsch20:04:43

Ah, I see, you were referring to your deploy-s3 task wrapping sync-bucket

richiardiandrea20:04:06

No hashing for now, just fileset to confetti

richiardiandrea20:04:52

It is good enough, buf for sure improvable

kenny20:04:33

What is the proper way to remove your source files when building an uberjar? I have tried doing (uber :exclude #{#".*\.clj.*"}) but then I get a "Invalid signature file digest for Manifest main attributes."

richiardiandrea20:04:43

@kenny: you can plug a (sift :include #{#".*\.clj.*"} :invert true)

alandipert20:04:12

another option is to put yuor clj code in :source-paths instead of :resource-paths

alandipert20:04:48

so it's in the fileset and on the repl classpath, but isn't "output role"

kenny20:04:59

Right. That works for my case. Doing the sift that @richiardiandrea said won't screw up the manifest like doing :exclude in the uber task did?

kenny20:04:10

Just tested it.. Looks like it doesn't. What is the point of the :exclude option then?

richiardiandrea21:04:38

@kenny: I think your option should work but uber caches and there might be some issue with :exclude

kenny21:04:56

Actually the sift option didn't even work. All the .clj* files are still in the uber jar

richiardiandrea21:04:25

sift happens after uber so you are kind of "wasting" some processor time...but it is a workaround

richiardiandrea21:04:40

@kenny: maybe the regex is wrong?

richiardiandrea21:04:55

remember that it is matched against the whole path

kenny21:04:55

Wait never mind.. I was looking at a cached version of the jar somehow.

kenny21:04:36

Still curious about actual use cases for the :exclude option in uber task..

richiardiandrea21:04:01

it does the same but while it runs

richiardiandrea21:04:32

but there must be a problem, if you have a repro case you might want to open an issue

kenny21:04:56

But if you use it it will change the fileset without updating the manifest causing that java security warning I mentioned above

kenny21:04:22

I was just making sure that my use case was an appropriate use case of it

richiardiandrea21:04:06

oh well, yeah, I agree with you that it should be handled...I am going to yield and let more experienced boot-ers continue 😄

danielsz23:04:14

Is [adzerk/boot-cljs "1.7.228-1"] compatible with the latest Clojurescript release (1.8.40)?

kenny23:04:38

@danielsz: Yes

danielsz23:04:16

@kenny: thanks.