ANN: Retroweaver Plugin 1.3

I'm proud to announce the release of Retroweaver Plugin 1.3, aka The Real Thing. Changes since the latest release are:

  • The verifier is finally integrated with the plugin. When the 'Verify references' option is enabled for a module, compiled classes will be verified against a target JDK and any missing reference will be reported.


To those worried about it, the verifier included in the plugin is a modified version of the one bundled with retroweaver itself. Changes to the verifier when compared to the stock one includes:


The new version should be already available from IDEA's Plugin Manager. If this is the first time you hear about this plugin, you might want to read the original announcement[/url] or previous changes[/url].

Source code for the plugin is available from the darcs[/url] repository at http://www.animegaiden.com.br/pazu/repos/retroweaver-plugin or at attached to the plugin's Wiki topic[/url].

Peace,

-- Marcus Brito

7 comments
Comment actions Permalink

How many releases one can make in a single day? Anyways...

I'm proud to announce the release of Retroweaver Plugin 1.3.1, aka the "Just a Cloud" release. This is a minor update, but all users are encouraged to upgrade.

This release includes an updated retroweaver.jar that includes a patch by our very own Maxim Shafirov to fix a problem with class literals. To know more about this specific problem, read this post[/url] in Retroweaver SF forums.

If you're currently using an ant build to retroweave your production classes, you're strongly advised to use the bundled libraries instead of the stock retroweaver. Just copy retroweaver.jar and retroweaver-rt.jar from ~/.IntelliJIdea/config/plugins/retroweaver-plugin/lib or directly reference them from your build files.

0
Comment actions Permalink

Small world, isn't it? I also implemented a patch for that (as you can see in
the forum thread), but Maxim came up with a better solution.
I was just about to ask if you can include it.
Very nice. Also an improved verifier, and Maxim has single handedly implemented
an Idea inspection that triggers on JDK 1.5 usage.
Way coooool.

Marcus Brito wrote:

How many releases one can make in a single day? Anyways...

I'm proud to announce the release of Retroweaver Plugin 1.3.1, aka the "Just a Cloud" release. This is a minor update, but all users are encouraged to upgrade.

This release includes an updated retroweaver.jar that includes a patch by our very own Maxim Shafirov to fix a problem with class literals. To know more about this specific problem, read this post[/url] in Retroweaver SF forums.

If you're currently using an ant build to retroweave your production classes, you're strongly advised to use the bundled libraries instead of the stock retroweaver. Just copy retroweaver.jar and retroweaver-rt.jar from ~/.IntelliJIdea/config/plugins/retroweaver-plugin/lib or directly reference them from your build files.

0
Comment actions Permalink

Very nice. Also an improved verifier, and Maxim has
single handedly implemented
an Idea inspection that triggers on JDK 1.5 usage.
Way coooool.


You gotta be kidding, where's that inspection? I've been working on such thing, but it's still far away from being finished.

0
Comment actions Permalink

http://www.jetbrains.net/jira/browse/IDEADEV-1730

But that build is not released yet :(

Marcus Brito wrote:
>>Very nice. Also an improved verifier, and Maxim has
>>single handedly implemented
>>an Idea inspection that triggers on JDK 1.5 usage.
>>Way coooool.


You gotta be kidding, where's that inspection? I've been working on such thing, but it's still far away from being finished.

0
Comment actions Permalink

WoW, I missed that one. Maxim, can you give a heads up about how this inspection works? Does it use a fixed list of "forbidden" classes/methods or it actually checks your code against a choosen target JDK (like the retroweaver verifier)?

The former is probably faster, but the latter has potential for other uses, like checking your code against alternative runtimes (Kaffe[/url], GNU Classpath[/url]). If your inspection is implemented using the fixed list, maybe there's still room for my version :)

0
Comment actions Permalink

Hi Marcus,
Thank you once again for the plug-in. Just minor thing: 1.3 and 1.3.1 throws NPE when I try to open my project settings.
This completely destroys painting process of the project settings dialog.
NPE is in OptionsUI(line 142) and i fixed it with:
return super.getListCellRendererComponent(list, value == null ? "" : ((Sdk) value).getName(), index, selected, focus);

0
Comment actions Permalink

A new bugfix version, 1.3.2 has just been uploaded to the Plugin Repository. Changes since 1.3.1 include:

  • The previous version confused the verifier about generated field/methods to access class literals. The verifier has been updated to correctly handle these generated entities.

  • The target JDK name is now saved between sessions even when it doesn't exist in the host IDEA configuration.

  • If you try to compile a project with a missing target JDK for any affected module, an error message will be shown and no compilation will take place until you correct this situation.


All users are advised to upgrade. Andrei, the new version should fix the NPE you've unfortunately experienced. Mail me if it still happens after upgrading to the new version.

0

Please sign in to leave a comment.