Fork me on GitHub
#hoplon
<
2016-10-23
>
jondejung00:10:52

It always indicates that I'm missing jar / repo not found

jondejung00:10:24

It's not necessarily the need for this for Project I'm just trying to configure my boot-profile to automate pushing to clojars.

jondejung00:10:29

I'm running into complications

micha00:10:13

@jondejung can you paste the exception you get please?

jondejung00:10:30

clojure.lang.ExceptionInfo: missing jar file or repo not found data: {:file "/tmp/boot.user5334880196296361713.clj", :line 21} java.lang.Exception: missing jar file or repo not found

micha00:10:57

can you paste the stack trace also?

jondejung00:10:23

Yeah, sorry about that

jondejung00:10:25

java.lang.Exception: missing jar file or repo not found boot.task.built-in/fn/fn/fn/fn built_in.clj: 867 boot.core/run-tasks core.clj: 938 boot.core/boot/fn core.clj: 948 clojure.core/binding-conveyor-fn/fn core.clj: 1916

micha00:10:08

ah right, ok

micha00:10:52

weird, that error is originating with the push task

micha00:10:55

not the install task

micha00:10:14

but your build.boot file doesn't reference the push task at all

micha00:10:41

are you sure that's the right build.boot file?

jondejung00:10:18

(task-options! push {:repo "earth-css"} pom {:project 'rojikkushisutemu/earth-css :version "0.1.0" :description "common css projects"} speak {:theme "woodblock"}) (deftask build-jar [] (comp (pom) (jar))) (deftask install-jar [] (comp (build-jar) (install)))

jondejung00:10:22

Yeah I have it listed above

jondejung00:10:31

along with the set-env credentials

jondejung00:10:51

Maybe I' haven't followed instructions on how to push correctly

jondejung00:10:02

and the .gpg file I have is not set up correctly

micha00:10:41

i don't see push anywhere in what you pasted though?

micha00:10:25

you are doing like boot build-jar push at the command line?

jondejung00:10:47

push {:repo "earth-css"} pom {:project 'rojikkushisutemu/earth-css :version "0.1.0" :description "common css projects"}

jondejung00:10:52

is that not correct?

micha00:10:53

the :repo option should be "clojars" in your case

micha00:10:20

that option should be the name of the repository where you want to push the artifacts to

micha00:10:09

if you do (get-env :repositories) in the repl you can see the default repos

micha00:10:31

or you can do boot show -e and look for the :repositories key

jondejung00:10:45

Thanks a Million, Micha!

micha00:10:51

it's working?

jondejung00:10:49

org.apache.maven.wagon.authorization.AuthorizationException: Access denied to: https://clojars.org/repo/earth-css/rojikkushisutemu/earth-css/maven-metadata.xml, ReasonPhrase: Forbidden - the group in the pom (rojikkushisutemu) does not match the group you are deploying to (earth-css.rojikkushisutemu).

jondejung00:10:00

I'll fix it don't worry, Thanks A Million!

jondejung00:10:39

Messed up earlier while trying to push to it . I'll write back when I get it uploaded

micha00:10:24

great, good luck 🙂

thedavidmeister02:10:40

hey @micha does/could hoplon do anything like this? https://github.com/wilsonpage/fastdom

onetom15:10:58

@alandipert thanks for the link. it was fascinating indeed. the second part of the article is quite though provoking regarding what identity is http://www.japantimes.co.jp/community/2016/07/10/issues/japans-discriminatory-koseki-registry-system-looks-ever-outdated/#.WAxuf6Nh1E4

flyboarder17:10:50

😬 so many things!

micha17:10:33

strange, i merged PRs and the cards remain in the project view

micha17:10:43

shouldn't they transition to "done" or something?

micha17:10:19

we could also use the http://waffle.io github integration

micha17:10:24

as an alternative

flyboarder17:10:11

The GitHub project thing is rather simple I don't think it tracks status yet

flyboarder17:10:49

Using http://waffle.io is probably a bit better

micha19:10:10

thre we go, boot-hoplon back in hoplon

flyboarder19:10:51

@micha are the versions for clojure, clojurescript and boot-cljs the “minimum” supported version? And projects bump the versions from there?

micha19:10:04

so if something is broken people can look at hoplon's clojurescript dependency for example

micha19:10:29

anyway you really need to have an explicit dependency on clojure and clojurescript in your project

micha19:10:46

or some random dependency will pull in a random version of it transitively

micha19:10:02

btw it looks like the tests aren't actualyl testing anything?

micha19:10:20

i changed the build.boot to explicitly test the hoplon.app-test namespace

micha19:10:56

not sure how that's going to go down on travis, since it needs firefox and stuff

micha19:10:15

i guess we'll find out soon 😉

micha19:10:07

lol xalan-2.7.2.jar

alandipert19:10:42

always piques my interest

alandipert19:10:02

why would someone make an x11 version of me

alandipert19:10:07

the command line version works just great

alandipert19:10:36

@tbrooke the appeal of the koseke idea to me is that it's less like a transaction log, and more like a value in a cell

micha19:10:39

wow tests run in travis no problem

alandipert19:10:25

if anything the US system is transaction-log like, in thta the govt maintains events, not values. 3rd parties must spin through and piece together the events to arrive at a status value like married

alandipert19:10:11

but as per the 2nd part of the article, maybe it's good that there are inefficiencies like these. and that it's not all federalized

micha19:10:59

maybe, but there is also the possibility that they use that to create unequal access to the data that way

micha19:10:14

so it's easier for them to tiece it together than it is for you and your lawyer to do it

micha19:10:23

so they can selectively apply the fuckdown

flyboarder19:10:19

gotta love govt

dm319:10:26

you should probably have both - event log + the latest (snapshot) state

dm319:10:50

also known as event sourcing 🙂

alandipert19:10:51

an interesting aspect of the event log way is that it allows multiple interpretations

alandipert19:10:05

so a different jurisdication can honor the event log and still arrive at a different status

micha19:10:17

it would be nice if the govt just stayed out of that whole area of life

alandipert19:10:27

marriage? agree

micha19:10:40

everything other than taxes i guess

micha19:10:09

birth death taxes

alandipert19:10:12

i guess marriage gets sucked in when naturalization enters

alandipert19:10:30

but that should probably just be based on where you are physically born i guess

micha19:10:04

yeah i'm not sure that marriage should be a factor for immigration

micha19:10:41

like why shouldn't i be able to sponsor some random person who is important to me, why do i need to marry them

alandipert19:10:55

yeah with a rate limit

micha19:10:59

naturally

micha20:10:18

i'd let the church or whatever handle marriages

mynomoto20:10:10

Wow, lots of things happening.

mynomoto20:10:09

Is it only me that liked when .hl files an application concern and not present in hoplon libs? With that boot-hoplon was completely optional.

micha20:10:45

it's still optional, no?

micha20:10:58

you don't need to use it, it's just packaged in the same jar now

micha20:10:13

to prevent issues with different versions of hoplon and boot-hoplon

mynomoto20:10:50

The way we are deploying libs make that mandatory no? At least for libs using the manifest option and including .hl files.

mynomoto20:10:14

Yeah, I understand why make it a hoplon dependency.

micha20:10:45

oh you mean like for jars that contain .hl files?

micha20:10:52

not hoplon itself?

micha20:10:31

i think you're probably right there

micha20:10:47

how many libraries are there that include .hl files, i wonder?

mynomoto20:10:35

But there is a reason for that, it was because of the refering of vars that later were removed from hoplon.core, which broke compiled cljs files.

mynomoto20:10:12

I don't think there are many of those but certainly a few.

micha20:10:18

but we could say that libraries need just .cljs files and not .hl files

micha20:10:50

and you need to do your :refer and stuff explicitly in your namespace

mynomoto20:10:17

I'm in favor of that but would like to know what other people think. It kind of make it a little bit harder.

flyboarder20:10:58

@mynomoto I think if you are using a hoplon based lib it should include the hl files. After all the lib is for hoplon not just cljs

mynomoto20:10:07

@flyboarder I think that should be the end user decision. If hoplon itself doesn't require it, why would hoplon libraries do that?

mynomoto20:10:53

Hoplon is perfectly usable without .hl files unless we have libraries shipping them. It couples using hoplon with using boot-hoplon.

flyboarder21:10:04

right, i see what you mean, although it is usable without the boot task, the task is also part of the hoplon ecosystem, I think it makes sense for things to ship with the understanding that if you want all the convenience of the hoplon ecosystem you would use the built-in tools

mynomoto21:10:54

I'm only arguing that someone could be part of the ecosystem having all benefits of it without boot-hoplon if we don't include .hl files on libraries. It used to be that way before the changes in hoplon.core broke those libs and the way to do it became manifest files to tell boot-hoplon which files to compile from jars. It allows people that use lein to be part of the ecosystem.

flyboarder21:10:56

@mynomoto right I see what you mean, there is more to include in the cljs files if you arnt using the hoplon task now, but a lein plugin also isnt out of the realm of possibilities

flyboarder21:10:34

@mynomoto other than the hoplon.jquery namespace, are there other changes that break using the library without the boot task?

flyboarder21:10:39

maybe for hoplon lib authors we can write another task that does the requires for us and spits regular cljs files?

flyboarder21:10:10

thats basically only half of the existing task anyway right?

mynomoto21:10:47

We used to rely on the hoplon task itself for generating the cljs files but I think that would cause hoplon jquery or gcl being picked for you now right?

flyboarder21:10:13

However you can prevent that

mynomoto21:10:25

So the last time things broke because of refer-all. Some vars were removed from core and boom. If we could only refer things that are used it would be better.

flyboarder21:10:23

Yeah an empty refers option to boot task will prevent auto including jquery

flyboarder21:10:14

You should be able to generate cljs files that way that include the things from core that are needed, core still has defaults for everything that was moved to hoplon.jquery

mynomoto21:10:11

But it will include all things from core no? That was the problem last time.

jondejung21:10:46

org.sonatype.aether.resolution.ArtifactResolutionException: Could not find artifact org.clojure:clojurescript:jar:1.7.122 in clojars (https://clojars.org/repo/)

flyboarder21:10:03

@mynomoto: I think so, but those things should mostly all need to be there now, the modular parts have been split out now, so things should be less likely to cause breaking changes for hoplon libraries in the future

mynomoto21:10:27

@flyboarder true if there were no experimental things there right?

flyboarder21:10:27

@jondejung: clojurescript isn't on clojars but on maven instead

jondejung21:10:53

AH, Thank You

jondejung21:10:57

how foolish of Me

flyboarder21:10:22

@mynomoto: right so as long as you aren't using anything experimental your chances of breaking are much lower now, i think that also come with the territory of experimental ;)

flyboarder21:10:21

But if things do break or move out of core you just need to require it in your library manually

mynomoto21:10:00

Oh, what I mean is that the requires are done at compilation time, when the ,cljs file is created from the .hl file. And as clojurescript doesn't have :refer-all we do it by listing all vars inside :refer. If the var is removed this will break the cljs compiler.

flyboarder21:10:32

Ah I get it now, yes you are totally on point with that, I think the next version will mitigate that a bit more with the new structure

mynomoto22:10:32

We may want to have a experimental ns and only move solid things to core. That should also help to mitigate those kind of problems.

flyboarder22:10:47

Agreed, we are heading in the right direction for that, that's what the brew repo is for

flyboarder22:10:55

I think after the next release any feature changes should be developed there, this will also keep the hoplon repo in a much better LTS state

flyboarder22:10:01

@micha @alandipert : @mynomoto makes a good point about not using boot with hoplon, do you think including the task couples hoplon to boot too much?

mynomoto23:10:47

@flyboarder I don't think adding boot-hoplon as a dep to hoplon couples things, only shipping libraries jars with .hl files.

flyboarder23:10:19

There is a pr to deprecate the boot-hoplon repo and merge it

alandipert23:10:38

shipping .hl files in libraries seems not good, is there a reason to do it?

alandipert23:10:04

ie it's better to ship cljs w/ a hoplon runtime dependency

mynomoto23:10:07

@flyboarder I see no problem with merging. I don't like to have to use it to be able to use libs.

mynomoto23:10:03

@alandipert I think that's implicitly the recommended way right? That's what the manisfest option of the hoplon task is for I think.

mynomoto23:10:21

Also another thing that came to mind: we may have fragmentation problems with the new gcl impl. Some hoplon libs are jquery plugins, that will be not optimal for someone using gcl impl.

flyboarder23:10:28

Yeah pre compiling hl to cljs has problems

flyboarder23:10:47

You need to either ship hl or not use it and manually reference hoplon

mynomoto23:10:19

@flyboarder if the lib has a dep on hoplon it should work out of the box I believe. Except for the dom manipulation impl I think.

mynomoto23:10:27

After alpha17 I mean.

flyboarder23:10:57

@mynomoto: I made the gcl version feature compatible to the jquery version but really attribute providers could provide anything and you should refer to the provider you want since they can be mixed

mynomoto23:10:19

What happens when you load 2 providers?

flyboarder23:10:56

There is a preference between them if they overlap

flyboarder23:10:26

But providers can make any attribute so they may not overlap at all

mynomoto23:10:24

But they do overlap for everything in core right?

flyboarder23:10:12

Right, now the behavior is different for some of them but they do the relative thing