Fork me on GitHub
#clojure
<
2021-09-20
>
damien15:09:09

Hi all, is there a recommended tool for checking which projects in a given deps.edn config are out-of-date?

Derek15:09:53

I can recommend https://github.com/liquidz/antq

👍 3
☝️ 8
Derek15:09:39

welcome 🙂

dharrigan16:09:39

depot is no longer actively maintained

dharrigan16:09:47

antq is the biz 🙂

💯 2
seancorfield17:09:52

Another big +1 for antq -- it also checks GitHub Actions workflow files and pom.xml files and I think a few other things. We run it every day at work to track which dependencies are outdated (we don't update deps every day but it's useful to track "drift").

👍 2
Derek17:09:04

1.1.0 is excellent re: support for :git/tag and :git/sha as well

dpsutton22:09:27

anyone have a good argument on why to prefer one form over another?

(or (valid-thing? foo)
    (throw (ex-info "invalid foo" {})))

(when-not (valid-thing? foo)
  (throw (ex-info "invalid foo" {})))

didibus06:09:51

Do you care to return true when the error is not thrown? If so, only the or has that behavior

Linus Ericsson10:09:20

I think the when-not implies that a side-effect will occur when the predicate is returning false. In the or someone is interested in the result (which happens to be either true or an exception).

dpsutton22:09:04

it's not in a let-bind context so the return value is not needed. its more or less an assertion in an api handler

escherize22:09:49

If you don’t want the return value, I’d go with the when-not

6
dpsutton22:09:42

i agree. just wondering if there was a good argument for the or version. it's in a PR and i can't tell if its superficial style disagreement and mere preference or not

ghadi22:09:09

the return value in question above is the return of the predicate evaluation, not the object/val being tested