Are you ready....


for MetricsReloaded?

My metrics plugin is now code complete, and will be shipping after I put it through a full QA cycle and figure out exactly what incantations I need to do to redistribute an LGPL graphing library (JFreeChart). 108 source code metrics, at the project, module, package, class, and method levels. Shipping Monday. Pallada 2008 required.

--Dave Griffith

7 comments
Comment actions Permalink

Hello Dave,

for MetricsReloaded?

My metrics plugin is now code complete, and will be shipping after I
put it through a full QA cycle and figure out exactly what
incantations I need to do to redistribute an LGPL graphing library
(JFreeChart). 108 source code metrics, at the project, module,
package, class, and method levels. Shipping Monday. Pallada 2008
required.

--Dave Griffith


Can't wait!
Give it to us!
Who cares about QA anyway. It is overrated like unit testing... ;-P

Jacques

0
Comment actions Permalink

You're insane.. but who cares, give us the goods! :)

Really really cool. (although, 2008 only? Really?)

Vince.


0
Comment actions Permalink

2008 only. Really. For some unknown reason, JetBrains changed the numbering of token types in the PSI, and refactored the definitions into a different class. This is already creating bugs in InspectionGadgets, and prevents me from shipping/compiling against 4.0 and 2008 without jumping through severe hoops. For 0.1, at least, I'm shipping the 2008 version only.

--Dave Griffith

0
Comment actions Permalink

Dave Griffith wrote:

2008 only. Really. For some unknown reason, JetBrains changed the numbering of token types in the PSI, and refactored the definitions into a different class. This is already creating bugs in InspectionGadgets, and prevents me from shipping/compiling against 4.0 and 2008 without jumping through severe hoops. For 0.1, at least, I'm shipping the 2008 version only.

--Dave Griffith

If I not missing something those constants weren't opened. Did you use just plain numbers?

--
Maxim Shafirov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0
Comment actions Permalink

Hi,
In 4.0 weren't but in 2008 seems opened. There are many useful classes not in OpenAPI and plugin authors very often use them cause they don't offuscated. Please leave it unobfuscated without them plugins become foreign to IDE. May be their transition to OpenAPI may be more smooth?

TIA,
Dmitry

0
Comment actions Permalink


As near as I can determine:

PsiJavaToken was available in all the pre-4.0 EAPs of Aurora. It contains a bunch of public static final integers representing token types. These constants are used extensively throughout InspectionGadgets and IntentionPowerPack, and in a couple of places in MetricsReloaded.

In the 4.0 release, those numeric constants were still present, but their values were changed. Since static final integers in Java are bound at compile-time, rather than run-time, this means that IPP and IG compiled against
the EAP versions will run, but have incorrect sementics, if run under 4.0. (This is the cause of the "x1 can be replaced by x" bug, in the trivial arithmetic expression bug. I'm comparing the operation to see if it is "*", and that comparison is succeeding since the token values have been shifted. IG thinks that "x1" is actually "x*1", and recommends that you simplify it.)

In 2008, those constants have been moved to a new class JavaTokenType. This means that IG and IPP will no longer even compile against the 2008 libraries, and that I have to choose which to ship MetricsReloaded against. Since I'm personally using the EAP version, it's about a hundred times easier for me to ship against it. Assuming you guys are serious about including IPP and IG in Pallada, those are blissfully not my problem, otherwise I've got some hard choices to make.

--Dave Griffith

0
Comment actions Permalink

Dave, you rock!

0

Please sign in to leave a comment.