Wow, I think Clojure just jumped the shark.https://twitter.com/cognitect/status/949350240108339202 …
-
Show this thread
-
Go: maybe using Git as a package manager wasn't the best idea after all, let's see if we can back slowly and responsibly out of this Clojure: LEEEEEEEEROY JENKINS
1 reply 17 retweets 80 likesShow this thread -
I mean, git deps are fine as long as they aren't allowed in release artifacts. But, and please correct me if I'm wrong, but this reads like "git hashes are now release artifacts."
3 replies 1 retweet 4 likesShow this thread -
The important property of a repository of release artifacts is that it offers immutability guarantees: artifacts are available in perpetuity and cannot change once published, barring legal intervention. Git offers none of this.
3 replies 1 retweet 16 likesShow this thread -
And, given that Clojure is what taught me the value of immutability in the first place, this design decision is particularly puzzling.
2 replies 3 retweets 18 likesShow this thread -
Replying to @bodil
Immutability of what? SHAs beat locations, that's why artifact sources publish SHAs. If you use SHAs you will get what you intended based upon content identity, regardless of source. Immutability only makes sense in a controlled memory space, which the internet isn't.
1 reply 1 retweet 16 likes -
Replying to @richhickey
I'm not worried about hashes vs versions, but about availability. Random git repositories vanish or break with more frequency than trusted registries, and are harder to cache against outages.
4 replies 0 retweets 3 likes -
Replying to @bodil
Availability != immutability. Plenty of mitigations for the former. There's no basis for what you are saying about caching. All bytes are equally cacheable.
1 reply 0 retweets 4 likes -
Replying to @richhickey
The immutability I'm talking about is local to the registry in question, obviously. And unless you address the problem of availability, is there any reason to expect it'll have fewer problems this time round than Erlang and Go have had?
1 reply 0 retweets 1 like
Availability is always addressed via redundancy. But redundant maven repos break your immutability-is-local idea while redundant git repos don't break SHAs. Go tracked HEAD, had no pinning? Dunno. Later planes had fewer problems than earlier ones, shrug. #fearmongering
-
-
Replying to @richhickey @bodil
I wouldn’t say fearmongering as much as having concerns. I do think your response answered the concerns though (at least for me). Keep up the good work

0 replies 0 retweets 1 likeThanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.