eastwood

All things realted to eastwood - the Clojure linter
2018-10-03T02:03:11.000100Z

@slipset Not sure if you saw the latest Clojurists Together survey results, linked in the #announcements channel some days ago: https://www.clojuriststogether.org/news/q4-2018-survey-results/ It mentions "lint tools" and "Eastwood" explicitly as something the people surveyed might be interested in funding improvements of.

2018-10-03T02:04:09.000100Z

I have a full time gig so would not be interested in submitting a proposal for me, and you may be similarly otherwise occupied, too. Just wanted to pass along the mention in case you are interested.

slipset 2018-10-03T08:04:17.000100Z

I also have a full time job, so I wouldn’t be able to commit to a grant.

slipset 2018-10-03T08:06:01.000100Z

It would, however, be interesting to figure out what the respondents would like to see changed/improved in or added to Eastwood, and figure out a way to satisfy that.

2018-10-03T17:10:00.000100Z

my 2 cents: a release of eastwood that's up to date and prints my actual error when loading a namespace throws, instead of an internal eastwood error in the code handling the original problem - I might find time one of these weekends to figure out how the release process works (2.9 has the fix, using 2.9 via the plugin gives me 2.8, lein install of 3.0 snapshot locally works as expected...) - not making demands here, I could even do this work myself if I found the time / energy for it

slipset 2018-10-03T17:32:04.000100Z

I’ll see if I can’t cut a release real soon now. Sorry for the bugs and stuff :/

slipset 2018-10-03T19:32:10.000100Z

@noisesmith 0.3.0 is released to Clojars.

😄 1
2018-10-03T19:42:24.000100Z

@slipset why does it still say "eastwood 0.2.8" when it runs?

slipset 2018-10-03T19:42:42.000100Z

Seriously?

2018-10-03T19:42:59.000100Z

Retrieving jonase/eastwood/0.3.0/eastwood-0.3.0.pom from clojars
Retrieving jonase/eastwood/0.3.0/eastwood-0.3.0.jar from clojars
== Eastwood 0.2.8 Clojure 1.9.0 JVM 1.8.0_171
Directories scanned for source files:

2018-10-03T19:43:11.000100Z

is this something in the dep injection machinery?

2018-10-03T19:43:33.000100Z

when I run from a snapshot, it correctly prints the snapshot version iirc

slipset 2018-10-03T19:43:50.000100Z

give me a sec.

2018-10-03T19:44:01.000100Z

:thumbsup:

slipset 2018-10-03T19:47:08.000100Z

On a fresh lein new app baz

slipset 2018-10-03T19:47:10.000100Z

I get

2018-10-03T19:47:13.000100Z

in case it helps, I did verify that the arity exception on error-messages/format-exception is thrown when a namespace is broken on load

slipset 2018-10-03T19:47:19.000100Z

21:46 $ cd baz
✔ ~/Documents/github.com/baz
21:46 $ lein eastwood
Retrieving jonase/eastwood/0.3.0/eastwood-0.3.0.pom from clojars
Retrieving jonase/eastwood/0.3.0/eastwood-0.3.0.jar from clojars
== Eastwood 0.3.0 Clojure 1.8.0 JVM 1.8.0_172
Directories scanned for source files:
  src test
== Linting baz.core ==
== Linting baz.core-test ==
== Warnings: 0 (not including reflection warnings)  Exceptions thrown: 0
✔ ~/Documents/github.com/baz
21:46 $

2018-10-03T19:47:32.000100Z

OK - I'll try cleaning then

slipset 2018-10-03T19:47:42.000100Z

with profile.clj like

(defproject baz "0.1.0-SNAPSHOT"
  :description "FIXME: write description"
  :url "<http://example.com/FIXME>"
  :license {:name "Eclipse Public License"
            :url "<http://www.eclipse.org/legal/epl-v10.html>"}
  :dependencies [[org.clojure/clojure "1.8.0"]]
  :main ^:skip-aot baz.core
  :target-path "target/%s"
  :plugins [[jonase/eastwood "0.3.0"]]
  :profiles {:uberjar {:aot :all}})

slipset 2018-10-03T19:48:00.000100Z

and basically empty ~/.lein/profiles.clj

2018-10-03T19:48:02.000100Z

I'll check my deps plugin-tree too

2018-10-03T19:49:20.000100Z

Do you have eastwood mentioned in your $HOME/.lein/profiles.clj, your project's local project.clj, or both?

2018-10-03T19:49:41.000100Z

both are set to 0.3.0 currently -checking plugins-tree for conflicts

2018-10-03T19:50:53.000100Z

plugin-tree says 0.3.0, profiles.clj says 0.3.0, project.clj says 0.3.0, I get 0.2.8

2018-10-03T19:51:20.000100Z

Currently on my Mac, I have eastwood 0.3.0 in my $HOME/.lein/profiles.clj, and in a project where project.clj and no other file in the project mentions eastwood at all, I see 0.3.0 printed when I run 'lein eastwood'

2018-10-03T19:51:50.000100Z

at this point I'm assuming pebkac and just trying to see where it's happening

2018-10-03T19:52:09.000100Z

OK - it was a module dependency merge issue, seems resolved

2018-10-03T19:52:24.000100Z

so it was all on my side, thanks for the update

slipset 2018-10-03T19:52:40.000200Z

Thank you for taking the time to check it out!

2018-10-03T19:53:18.000100Z

Glad you found it. I was about to do a Hail Mary and ask if you had either a file /etc/leiningen/profiles.clj or $HOME/.lein/profiles.d/user.clj on your system, which Leiningen also uses if they exist.

2018-10-03T19:53:41.000100Z

I don't have those names memorized, but the big Eastwood README mentions them in one section of its docs.

2018-10-03T19:54:26.000100Z

nice

Exception thrown during phase :analyze+eval of linting namespace ledger.run

The following form was being processed during the exception:
(/ 1 0)

2018-10-03T19:54:51.000200Z

woot!

2018-10-03T19:54:53.000100Z

the issue was a custom fork of lein modules that lies about :plugin-tree

2018-10-03T19:59:34.000100Z

one weird thing though - after showing that error, I get at the end:

== Warnings: 0 (not including reflection warnings)  Exceptions thrown: 0

slipset 2018-10-03T20:08:25.000100Z

Yeah, that’s a regression since 0.2.5

slipset 2018-10-03T20:09:03.000100Z

I’ll create an issue on that.

slipset 2018-10-03T20:10:57.000100Z

https://github.com/jonase/eastwood/issues/290

2018-10-03T20:49:19.000100Z

:thumbsup:

2018-10-03T21:13:34.000100Z

@slipset I replied on that github PR you tagged me on, looks good except the ANALYZING messages of course

slipset 2018-10-03T21:22:23.000100Z

Didn’t get the analyzing part what’s that? British vs Us?

slipset 2018-10-03T21:22:38.000100Z

anyways, it’s merged and released with 0.3.1

slipset 2018-10-03T21:22:46.000100Z

Happy hacking and thanks for all the help!

2018-10-03T21:23:51.000100Z

excerpt

== Linting ledger.euat-test.stress.kill-zookeeper ==
ANALYZING
== Linting jackdaw.client-extras-test ==
ANALYZING
== Linting ledger.euat-test.traffic ==
ANALYZING
== Linting ledger.euat-test.perf ==
ANALYZING
== Linting ledger.validation-tests ==
ANALYZING
== Linting ledger.event-reverser.unit-test ==
ANALYZING
== Linting ledger.tools.event-ids-test ==
ANALYZING
== Linting ledger.balance-tests ==
ANALYZING
== Linting ledger.euat-test.stress.control ==
ANALYZING
== Linting ledger.balance-loader.drain-tests ==
ANALYZING

2018-10-03T21:23:59.000100Z

not a deal breaker, but probably not intended?

2018-10-03T21:27:47.000100Z

looks like those messages only happen with a local snapshot install

slipset 2018-10-03T23:41:23.000100Z

Stange:

slipset 2018-10-03T23:41:41.000200Z

$ grep -r ANALYZING *
✘-1 ~/Documents/github.com/eastwood [master|…6]
$ 

2018-10-03T23:47:04.000100Z

any local changes in your local snapshot install, perhaps, noisesmith? I don't see ANALYZING in the published eastwood source, either.

2018-10-03T23:48:04.000100Z

ugh, probably my PEBKAC, right