Mylyn-Mantis connector 3.7.0 released

This release features multi-project queries, support for deleting task attachments and support for textarea custom fields.

Multi-project queries

MantisBT allows users to define filters as belonging to ‘All Projects’ . This is very useful for working with large numbers of projects and defining just one filter, e.g. ‘My tasks’ .  You can now use these filters in Eclipse, by selecting filters available under the ‘All Projects’ node:

Deleting task attachments

Task attachments may now be deleted from the attachment’s context menu.

Support for textarea custom fields

The development branch of MantisBT supports textarea custom fields. The plugin also supports them for the development branch.

As a direct consequence, users of TaskTop Dev can add a custom textarea field named task_relations to enable the full functionality of editing task associations.

Display attachment authors

Attachment authors are displayed.

Display the category in collapsed attributes section

When the attributes section is collapsed we now display a ‘project/category’ text hint. Previously only the project was displayed.

Other fixes

  1. More judicious use of the SOAP API, resulting in fewer remote calls and email notifications when updating existing issues;
  2. Fixes in comment hyperlink detection;
  3. Fixed duplication of available queries which would sometimes occur in the query page.

For comments, bugs and support requests, our bug tracker and forums await you.

Advertisements

Leave a Comment

Mylyn-Mantis connector 3.6.0 released

Mark private comments

Building on support from Mylyn 3.6, private comments are now marked as such in the task editor.

Delete tasks

We now enable deletion of task from the MantisBT repository, not only from the local task list.

Quicker task creation

When creating a new task, selecting a query or a task in the task list before creation short-circuits the project selection page, as the project is inferred from the current selection. If no selection is available, the project selection page appears as usual.

This can be combined with having the task selected and creating a task for a specific repository to bypass the new task wizard completely.

Support direct linking to bug comments

The MantisBT syntax of linking to comments using the ‘~’ prefix is now supported.

Leave a Comment

Mylyn-Mantis connector 3.5.0 released

Monitoring tasks

Thanks to recent improvements in the MantisBT SOAP API the task monitor list is available and also the ability to add yourself to the monitor list. This functionality is only available for installations running MantisBT 1.2.5 or newer.

Rich text support for comments

Our rich text support is extended to the new comment editor. We are also rendering comments as HTML if the rich text editor preference is enabled.

Tree display of sub-projects

Sub-projects are now displayed in a proper tree. This is more consistent with the Eclipse visual metaphors and fixes a display problem specific to Mac OS X .

Better rich text editor support

Thanks to recent improvements in both the connector and the HtmlText feature from Mylyn we are now able to generate exactly the markup that MantisBT expects . This should greatly improve the experience when using both the web interface and the text editor.

Leave a Comment

Mylyn-Mantis connector source moved to GitHub

SourceForge.net is a great place for an OpenSource project, taking care behind the scenes of many things so we don’t have to. That being said, GitHub’s way of encouraging contributions is a great incentive for projects to move there, so we bit the bullet and moved the source. The new location is https://github.com/Mylyn-Mantis/mylyn-mantis .

The current repository at SourceForge will remain in read-only while we make sure that the GitHub move is a success. Our other facilities – forums, issues, wiki etc – will remain at SourceForge for the time being.

To wrap up, here’s what you should take away from this posting:

fork, fork, fork

Forks away!

Leave a Comment

Mylyn-Mantis connector 3.4.1 released

The 3.4.1 release of the connector is primarily a bugfix release concerning the HTML editor.

Open query in browser

Open query in browser is now available for users of MantisBT 1.2.5 or newer. To activate it for an existing query you need to refresh the repository configuration and then reopen the query dialog.

Update site fixes

The update site did not reference the latest available Mylyn version, but we did require it. This prevented users running versions of Mylyn 3.4 or older from installing the connector. Now the installation process is verified to work for old versions as well.

Rich text editor fixes

The rich text editor now blends in more naturally with the other controls:

  1. The editor is now shown for unsubmitted tasks;
  2. The editor is highlighted for incoming changes;
  3. Editors are collapsed if there are no incoming changes.

Some of these changes require a nightly build of Mylyn Docs, which should be available as a released version in the 22nd of June, according to the current Mylyn plan.

Leave a Comment

Mylyn-Mantis connector 3.4.0 released

This release features an experimental rich text HTML editor, display of real names for comments and minor performance improvements to the task editor.

Rich text editor

The task editor was based on the plain-text contents of the task, which was sub-optimal when the task description contained HTML markup. Now there is an experimental setting in the task repository page which allows you to activate the rich text editor.

Be warned that it still has its kinks, and I’m putting this out for feedback rather than for mass consumption. It is expected that the formatting will not yet completely match the one from Mantis  and that some features such as highlighting incoming changes and dirty tracking are broken or require a nightly build of Mylyn.

That being said, this is a preview of the editor:

It is built on the excellent HtmlText component which arrived fresh with Mylyn 3.5.0 and features the exact HTML controls which are allowed by Mantis itself. I encourage you to report any bugs you find or improvements you need on the Mylyn-Mantis issue tracker. I hope that in a couple of releases this component will be stable enough to leave the experimental state.

Real names displayed for comments

Whenever available, the real names are displayed for comment authors.

Performance improvements

There was one more action which could freeze the task editor while opening, and it has been fixed. It especially affected repositories in offline mode.

Comments (2)

Maven Recipe : GWT development profile

It’s no secret that I am a fan of GWT for web development. I believe it to be a superior solution for large-scale Javascript development. However, it does come with some downsides. Verbosity is one of them, but we have a solution for that – see how to cut down GWT’s verbosity. Another one is the long compilation time.  Since GWT generates permutations for multiple browser targets – 6 in version 2.1 – you will wait more than needed if you just need to compile for one browser.

It often is the case that a single-permutation application is deployed for smoke testing, and then a application with all permutations is deployed to Q&A. This is usually achieved by creating a development module which reduces the number of permutations to one. I will show you how to integrate this in a natural way into your Maven build.

I will start with the simplest possible Maven/GWT project, as shown below:

I will not insist over the contents of the project, as it is not important. The project only has one client-side class, and is based on the archetype from the excellent gwt-maven plugin from Codehaus.

In the pom.xml, the module to compile is configured to be the production one:

<plugin>
 <groupId>org.codehaus.mojo</groupId>
 <artifactId>gwt-maven-plugin</artifactId>
 <version>2.1.0-1</version>
 <!-- contents omitted -->
 <configuration>
  <!-- contents omitted -->
  <module>ro.lmn.maven.recipe.gwtdev.ProfileDemo</module>
 </configuration>
</plugin>

A compiler run currently generates six permutations and takes 23 seconds on my machine. I am lucky to have four cores at my disposal, but usually build server CPU time is scarce, so the effect is amplified.

robert@neghvar:~/git-repos/gwtdev-profile (master)> mvn clean package
...
[INFO] --- gwt-maven-plugin:2.1.0-1:compile (default) @ gwtdev-profile ---
[INFO] Compiling module ro.lmn.maven.recipe.gwtdev.ProfileDemo
[INFO]    Compiling 6 permutations
[INFO]       Compiling permutation 0...
[INFO]       Process output
[INFO]          Compiling
[INFO]             Compiling permutation 1...
[INFO]       Compiling permutation 2...
[INFO]       Compiling permutation 3...
[INFO]       Compiling permutation 4...
[INFO]          Compiling
[INFO]             Compiling permutation 5...
[INFO]    Compile of permutations succeeded
[INFO] Linking into /home/robert/git-repos/gwtdev-profile/target/gwtdev-profile-1.0-SNAPSHOT/ProfileDemo
[INFO]    Link succeeded
[INFO]    Compilation succeeded -- 22.702s
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 29.101s
[INFO] Finished at: Sat Mar 05 23:59:24 EET 2011
[INFO] Final Memory: 12M/142M
[INFO] ------------------------------------------------------------------------

To cut down on compilation time I will use a Dev module which compiles just for recent versions of FireFox:

<?xml version="1.0" encoding="UTF-8"?>
<module rename-to="ProfileDemo">
 <inherits name="ro.lmn.maven.recipe.gwtdev.ProfileDemo" />
 <set-property name="user.agent" value="gecko1_8" />
</module>

To select it in my pom.xml I will create a dev profile, which overwrites some of the configuration entries of the gwt-maven-plugin:

<profiles>
 <profile>
 <id>dev</id>
  <build>
   <plugins>
    <plugin>
     <groupId>org.codehaus.mojo</groupId>
     <artifactId>gwt-maven-plugin</artifactId>
     <configuration>
      <module>ro.lmn.maven.recipe.gwtdev.ProfileDemoDev</module>
      <draftCompile>true</draftCompile>
     </configuration>
    </plugin>
   </plugins>
  </build>
 </profile>
</profiles>

For added speed, I’ve enabled draft compilation, which means that the GWT compiler will spend less effort on trying to optimise the resulting javascript.

Rerunning the build with the -Pdev argument results in just one permutation being generated:

robert@neghvar:~/git-repos/gwtdev-profile (master)> mvn -Pdev clean package
...
[INFO] --- gwt-maven-plugin:2.1.0-1:compile (default) @ gwtdev-profile ---
[INFO] Compiling module ro.lmn.maven.recipe.gwtdev.ProfileDemoDev
[INFO]    Compiling 1 permutation
[INFO]       Compiling permutation 0...
[INFO]    Compile of permutations succeeded
[INFO] Linking into /home/robert/git-repos/gwtdev-profile/target/gwtdev-profile-1.0-SNAPSHOT/ProfileDemo
[INFO]    Link succeeded
[INFO]    Compilation succeeded -- 14.091s
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 19.939s
[INFO] Finished at: Sun Mar 06 00:08:55 EET 2011
[INFO] Final Memory: 11M/104M
[INFO] ------------------------------------------------------------------------

The speed saving is of 35% and will likely increase as the GWT code increases in size and complexity.

We have reached our goal of creating a GWT development profile. By using a Maven profile we can make minimal modifications to our configuration and even apply different compiler options.

The complete source code for this article is available at https://github.com/rombert/Maven-Recipe—GWT-development-profile. If you have any suggestions or corrections, please comment. Or better yet, fork me.

Comments (5)

« Newer Posts · Older Posts »