Fork me on GitHub
#announcements
<
2021-09-16
>
seancorfield03:09:46

io.github.seancorfield/build-clj {:git/tag "v0.2.2" :git/sha "5a12a1a"} -- a wrapper for tools.build with a lot of sane defaults to reduce boilerplate -- https://github.com/seancorfield/build-clj • Now includes an uber task -- which includes merging of log4j2 plugins cache files! • Accepts many more options per underlying tools.build tasks so you can still customize "everything" when using build-clj • Overhauls/expands docstrings and readme • Updates tools.build to v0.4.0 Follow-up in #tools-build

🎉 22
🌹 6
borkdude06:09:22

Why use bb for the alias of your lib instead of e.g. cb (corfield build)?

👍 8
seancorfield06:09:54

Because b is the example given for tools.build and bb seemed natural for an adjunct to that.

borkdude06:09:35

:thinking_face:

lread17:09:23

Will folks maybe get confused that bb relates to babashka in some way?

☝️ 2
borkdude17:09:48

I guess Sean isn't aware of how many times some people type those letters every day in their terminal ;)

seancorfield17:09:19

I would have used just b for the alias but tools.build already used that, and this is a "better build". Folks can of course use whatever aliases they want, but all my OSS projects that use build-clj use bb for it so I want to keep that consistent between those projects and build-clj itself.

borkdude17:09:23

I remember one discussion about an algorithm to automatically suggest aliases based on some heuristics in clj-kondo. I think I also remember why that never got written. If the library was named corfield.better.build I think the alias would have made a lot more sense.

seancorfield17:09:39

Naming is hard! ¯\(ツ)

lread19:09:15

So @U04V70XH6 you do know that the babashka executable is named bb right? I think this is what @U04V15CAJ is alluding to as a potential source for confusion.

seancorfield19:09:35

I have heard of babashka yes.

lread20:09:36

Ok cool, just thought there was maybe some bb misunderstanding in the back and forth - I think that there isn’t! simple_smile

seancorfield21:09:09

I just don't think anyone is going to confuse, say, the set shell command with the set alias for clojure.set, so I'm not sure why anyone thinks that a bb command and a bb alias for a namespace is going to cause confusion either?

lread21:09:36

Yeah, you could be right there! Perhaps just a case of babashka zealotry on my part!

borkdude06:09:03

I’ve seen several snippets with this alias and every time I cringe since the alias seems out of place and indeed is very much associated with bb (babashka). The corfield project is still young so it’s still a good time to change your mind, but it doesn’t seem like you’re open to this. At least I’ve tried.

seancorfield06:09:45

I'm sorry you "cringe" but that's really on you. No one "owns" an alias or an acronym.

seancorfield06:09:15

Anyone who doesn't like bb as a namespace alias will just pick something else.

seancorfield06:09:56

The "general recommendation" for aliases is to use the last ns segment if it's unique, else either the prior segment or a "grouped" segment name -- but clojure.tools.build.api :as b doesn't follow that. I am targeting tools.build so bb is pretty natural as a wrapper/higher-level ns. At work we use our build.clj as a "REPL" so we run clj -M:build -i build.clj -r and then it's all (build/whatever {}) in the REPL so that's another reason why I didn't want to use build as the alias for org.corfield.build.

borkdude07:09:30

You're right, I'm moving on, just wanted to get this off my chest :).