Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Corrected links that should have been relative instead of absolute.

[10:07:03 CDT(-0500)] <Arvids> Hi, Eric
[10:07:20 CDT(-0500)] <Arvids> I wanted to share with you my findings regarding code analysis tools...
[10:07:22 CDT(-0500)] <EricDalquist> hi
[10:07:28 CDT(-0500)] <EricDalquist> oh cool
[10:07:32 CDT(-0500)] <Arvids> http://www.ucdetector.org/
[10:07:36 CDT(-0500)] <Arvids> this one looks pretty good
[10:07:49 CDT(-0500)] <EricDalquist> oh yeah
[10:07:52 CDT(-0500)] <EricDalquist> problem is it doesn
[10:07:56 CDT(-0500)] <EricDalquist> 't get IOC
[10:08:02 CDT(-0500)] <EricDalquist> I found that one a while back
[10:08:09 CDT(-0500)] <EricDalquist> it marks all of our spring managed beans as unused
[10:08:18 CDT(-0500)] <EricDalquist> since they are only every referenced from the spring bean config
[10:08:30 CDT(-0500)] <EricDalquist> or with a spring stereotype annotation
[10:08:48 CDT(-0500)] <Arvids> yes, but you can configure annotations that mark used classes
[10:08:57 CDT(-0500)] <EricDalquist> oh hrm
[10:08:59 CDT(-0500)] <EricDalquist> so then we'
[10:09:05 CDT(-0500)] <Arvids> for example, ignore (unused) classes who have annotation Controller
[10:09:15 CDT(-0500)] <EricDalquist> 'd just have to check the list against the spring xml files as well
[10:09:26 CDT(-0500)] <EricDalquist> since there are a bunch of beans that aren't annotated
[10:09:31 CDT(-0500)] <Arvids> in that way you can minimize the list of unused classes to a sane number
[10:09:31 CDT(-0500)] <EricDalquist> nice
[10:09:53 CDT(-0500)] <Arvids> yeah, but i'm not so optimistic regarding XML files and their scanning
[10:10:19 CDT(-0500)] <EricDalquist> well if we can get this to output a list of fully qualified class names
[10:10:30 CDT(-0500)] <EricDalquist> it would be easy enough to grep the uPortal codebase for each class name
[10:10:37 CDT(-0500)] <EricDalquist> and remove any files that have hits
[10:10:40 CDT(-0500)] <Arvids> i can give you one
[10:10:49 CDT(-0500)] <EricDalquist> that would be great
[10:12:03 CDT(-0500)] <Arvids> http://pastebin.com/D09pAxBd
[10:12:48 CDT(-0500)] <Arvids> there's only 88 marked classes... and some of them are clearly visible as used (referenced from XML files)
[10:13:02 CDT(-0500)] <Arvids> hence... it won't be a much of a pain to go through them
[10:13:04 CDT(-0500)] <EricDalquist> wow that's not that bad
[10:13:25 CDT(-0500)] <EricDalquist> though there are likely groups of classes that have references between each other
[10:13:30 CDT(-0500)] <EricDalquist> but are not used externally
[10:14:27 CDT(-0500)] <Arvids> yes - classes can not be deleted carelessly
[10:14:52 CDT(-0500)] <Arvids> but that's a good starting point
[10:15:13 CDT(-0500)] <EricDalquist> yup
[10:15:50 CDT(-0500)] <EricDalquist> cat unused.txt | sed 's/(.).<init>./\1/' > unused_classes.txt
[10:16:07 CDT(-0500)] <EricDalquist> that takes that list you sent and just grabs the fqn of each class
[10:17:47 CDT(-0500)] <Arvids> since i have it installed as eclipse plugin, i have markers in my GUI (smile)
[10:18:08 CDT(-0500)] <EricDalquist> hah
[10:19:46 CDT(-0500)] <EricDalquist> meeting time
[10:20:03 CDT(-0500)] <EricDalquist> I just did the grep and will prune the list with that when I get back
[10:20:11 CDT(-0500)] <Arvids> ok, bye