Sean:

Eastwood's current use of :arglists for :wrong-arity linter checking is
definitely 'at odds' with the way java.jdbc and some other libraries use it
for clearer documentation of fn/macro args.

I would recommend leaving :arglists as-is for java.jdbc, and wait for the
next version of Eastwood to add a capability to have something like an
:eastwood-arglists for functions that explicitly replace their :arglists
like this. Such a capability might best belong in Eastwood itself, since it
is the new tool on the block.

As an example, I was considering that if a fn/macro explicitly chose to be
Eastwood-friendly in this way, it could have an :arglists and
:eastwood-arglists explicitly, for those few vars that replace their
:arglists. When one is using Eastwood with a library that they do not want
to modify in that way, there could be some extra config file for Eastwood
where one could specify these :eastwood-arglists.

Thoughts?
Andy


On Mon, Jan 13, 2014 at 11:56 AM, Sean Corfield <s...@corfield.org> wrote:

> Thanx for the specific example!
>
> Yeah, I've used :arglists for "examples" in a couple of places instead of
> actual argument lists. I'll fix that in 0.3.3 and may do the same with
> CongoMongo (although it's a far worse culprit in several areas - and we're
> in the process of migrating to Monger now anyway).
>
> Sean
>
> On Jan 13, 2014, at 11:49 AM, Nicola Mometto <brobro...@gmail.com> wrote:
> > Sean, it looks like the issue is caused by arglists like this one:
> >
> https://github.com/clojure/java.jdbc/blob/master/src/main/clojure/clojure/java/jdbc.clj#L782-L783
> >
> > tools.analyzer.jvm uses :arglists to detect possible invoke calls with a
> > misplaced arity, expecting that to be a valid value, in your case for
> > documentation purposes you are attaching a :arglists that does not match
> > a valid list of args vector, so t.a.j interprets that as a 6-arity
> > arglist.
> >
> > Nicola
> >
> >
> > Sean Corfield (Clojure) writes:
> >
> >> Just started using this and I see the argslist caveat that causes
> >> Eastwood to misdiagnose :wrong-arity (the readme specifies java.jdbc
> >> 0.3.x but it also gets tripped up by congomongo).
> >>
> >> Can you (Andy or Jonas or any other Eastwood user) clarify how the
> >> arglists cause the problem and what, if anything, can be done in the
> >> source of java.jdbc and/or congomongo to alleviate the problem?
> >>
> >> Thanx,
> >> Sean
>
>

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to