Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 280533 - review Mantis for Connector Discovery listing
Summary: review Mantis for Connector Discovery listing
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Mylyn (show other bugs)
Version: unspecified   Edit
Hardware: PC All
: P2 enhancement (vote)
Target Milestone: 3.2   Edit
Assignee: Steffen Pingel CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 279709
  Show dependency tree
 
Reported: 2009-06-16 17:48 EDT by Steffen Pingel CLA
Modified: 2009-06-21 23:19 EDT (History)
2 users (show)

See Also:


Attachments
Proposed UI for validating SF.net repos 1/2 (148.17 KB, image/png)
2009-06-17 20:21 EDT, Robert Munteanu CLA
no flags Details
Proposed UI for validating SF.net repos 2/2 (146.55 KB, image/png)
2009-06-17 20:23 EDT, Robert Munteanu CLA
no flags Details
huge button in new task dialog (15.59 KB, image/png)
2009-06-17 21:23 EDT, Steffen Pingel CLA
no flags Details
new task editor (14.45 KB, image/png)
2009-06-17 21:27 EDT, Steffen Pingel CLA
no flags Details
query dialog (49.88 KB, image/png)
2009-06-17 22:10 EDT, Steffen Pingel CLA
no flags Details
branding icon is missing transparency (3.31 KB, image/png)
2009-06-17 22:12 EDT, Steffen Pingel CLA
no flags Details
cut off summary border on Mylyn 3.2 (5.09 KB, image/png)
2009-06-18 14:25 EDT, Steffen Pingel CLA
no flags Details
Alternate screenshot for discovery (52.61 KB, image/png)
2009-06-18 17:00 EDT, Robert Munteanu CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Steffen Pingel CLA 2009-06-16 17:48:26 EDT
Mantis is a popular Mylyn connector that should be considered for inclusion in the Mylyn connector discovery listing in the Community section. 

More information about the Mantis Connector for Mylyn: http://mylyn-mantis.wiki.sourceforge.net/
Comment 1 Steffen Pingel CLA 2009-06-16 23:05:13 EDT
Robert, here are my notes from a first quick UI review. I can do more testing once I have a working repository setup:

* My attempts to authenticate with the built-in SF repository were not successful. I was either getting "(302)Found error" or "Bad envelope: html". Can you advise which URL to use or is there another public Mantis repository that I could use for testing?

* The pre-defined repository has a very long label. It would be better rename it to something like "Mylyn-Mantis Support" and show the hint to use HTTP authentication in the query page.

* On a technical note I would be interested how the repository communication works? Does the Mantis connector use Mylyn's org.eclipse.commons.soap plug-in? To what extend are cancellation, password prompting and progress monitoring supported?

* The P2 update site does not specify any categories at the moment which hides the connector from the P2 UI by default. It would be good if it used the same categories as the site.xml.

* I noticed that the connector is not listed under Help > About > Installation Details > Features after an install although it works and the installation was successful. You should also consider using more desriptive names for the plug-in listed under Help > About > Installation Details > Plugins (e.g. Mylyn Mantis Connector Core / UI).

Comment 2 Steffen Pingel CLA 2009-06-16 23:14:09 EDT
Authentication error:

com.itsolut.mantis.core.exception.MantisRemoteException: org.xml.sax.SAXException: Bad envelope tag:  html
at com.itsolut.mantis.core.MantisAxis1SOAPClient.getProjects(MantisAxis1SOAPClient.java:176)
at com.itsolut.mantis.ui.wizard.MantisCustomQueryPage.refreshProjectCombo(MantisCustomQueryPage.java:344)
at com.itsolut.mantis.ui.wizard.MantisCustomQueryPage.createControl(MantisCustomQueryPage.java:118)
at org.eclipse.jface.wizard.Wizard.createPageControls(Wizard.java:170)
at org.eclipse.jface.wizard.WizardDialog.createPageControls(WizardDialog.java:675)
...

com.itsolut.mantis.core.exception.MantisRemoteException: (302)Found
at com.itsolut.mantis.core.MantisAxis1SOAPClient.getProjects(MantisAxis1SOAPClient.java:176)
at com.itsolut.mantis.ui.wizard.MantisCustomQueryPage.refreshProjectCombo(MantisCustomQueryPage.java:344)
at com.itsolut.mantis.ui.wizard.MantisCustomQueryPage.createControl(MantisCustomQueryPage.java:118)
at org.eclipse.jface.wizard.Wizard.createPageControls(Wizard.java:170)
at org.eclipse.jface.wizard.WizardDialog.createPageControls(WizardDialog.java:675)
at org.eclipse.jface.wizard.WizardDialog.setWizard(WizardDialog.java:1093)
...


When I tried to create a new query I clicked Back and Next which enabled the Finish button although no project was selected:

java.lang.NullPointerException
at com.itsolut.mantis.ui.wizard.MantisCustomQueryPage.applyTo(MantisCustomQueryPage.java:324)
at org.eclipse.mylyn.tasks.ui.wizards.AbstractRepositoryQueryPage.createQuery(AbstractRepositoryQueryPage.java:107)
at org.eclipse.mylyn.tasks.ui.wizards.RepositoryQueryWizard.performFinish(RepositoryQueryWizard.java:79)
at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:752)
at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:373)
at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:624)
...
Comment 3 Robert Munteanu CLA 2009-06-17 03:05:30 EDT
(In reply to comment #1)
> Robert, here are my notes from a first quick UI review. I can do more testing
> once I have a working repository setup:
> 
> * My attempts to authenticate with the built-in SF repository were not
> successful. I was either getting "(302)Found error" or "Bad envelope: html". Can
> you advise which URL to use or is there another public Mantis repository that I
> could use for testing?
> 

This is a known issue escalated to SF.net support - we're tracking it at https://sourceforge.net/apps/mantisbt/mylyn-mantis/view.php?id=57

I will create a private Mantis repository for you - details will arrive by email.
Comment 4 Robert Munteanu CLA 2009-06-17 03:33:55 EDT
(In reply to comment #1)
> 
> * On a technical note I would be interested how the repository communication
> works? Does the Mantis connector use Mylyn's org.eclipse.commons.soap plug-in?
> To what extend are cancellation, password prompting and progress monitoring
> supported?

We don't use the commons.soap plugin, although we do have a tracking issue set up for that : https://sourceforge.net/apps/mantisbt/mylyn-mantis/view.php?id=28

Cancellation and progress are supported for most actions - the IMantisClient interface has a IProgressMonitor parameter which is then used to notify of progress/check for cancellation.

Password prompting is not supported.
Comment 5 Robert Munteanu CLA 2009-06-17 11:58:13 EDT
I suggest that we use http://mylyn-mantis.sourceforge.net/eclipse/update-dev/ as a repository for testing versions.

The only visible change for the moment is that categories content is now enabled ( checked with 3.5 RC4 ).
Comment 6 Robert Munteanu CLA 2009-06-17 19:20:09 EDT
Steffen,

I've pushed version 3.0.3.200906180215 on the dev update site at  http://mylyn-mantis.sourceforge.net/eclipse/update-dev/ .

I've addressed most of your comments, namely:

# The NPE caused by allowing 'Finish' to be pressed when selecting 'New query'
# Added categories to the P2 update site
# Added branding plugin - appears in features
# Added descriptive names for plugins

I've changed the default repository name to _Mylyn-Mantis Support (HTTP auth)_ . I could remove Support and still make it clear. 

I don't think using the query page for authentication hints will help, since the validation would've already been performed and failed. I'm looking for a better way so please feel free to suggest one.

The SF.net tracker is still not available ( see also https://sourceforge.net/apps/trac/sourceforge/ticket/1336 ), but I've changed the support repo to the new location rather than follow 302s. Have you received the private repo password reset I've sent you?
Comment 7 Steffen Pingel CLA 2009-06-17 19:55:47 EDT
(In reply to comment #6)
> I've pushed version 3.0.3.200906180215 on the dev update site at
> http://mylyn-mantis.sourceforge.net/eclipse/update-dev/ .

Thanks! I'll try that.

> I've addressed most of your comments, namely:
> 
> # The NPE caused by allowing 'Finish' to be pressed when selecting 'New query'
> # Added categories to the P2 update site
> # Added branding plugin - appears in features
> # Added descriptive names for plugins

Great!

> I've changed the default repository name to _Mylyn-Mantis Support (HTTP auth)_ .
> I could remove Support and still make it clear.
> 
> I don't think using the query page for authentication hints will help, since the
> validation would've already been performed and failed. I'm looking for a better
> way so please feel free to suggest one.

Sorry, I meant to suggest the repository settings page. Maybe display an info/warning message in the title of the page when the support repository URL is selected and HTTP credentials are not provided.

> The SF.net tracker is still not available ( see also
> https://sourceforge.net/apps/trac/sourceforge/ticket/1336 ), but I've changed
> the support repo to the new location rather than follow 302s. Have you received
> the private repo password reset I've sent you?

No, I didn't get an email. Could you send it again to steffen.pingel@tasktop.com?
Comment 8 Robert Munteanu CLA 2009-06-17 20:21:29 EDT
Created attachment 139492 [details]
Proposed UI for validating SF.net repos 1/2

This shows the UI when the user validates a repo which is hosted by sf.net.

If validation fails and the http username is empty or the http password is empty, a supplementary error message is shown.
Comment 9 Robert Munteanu CLA 2009-06-17 20:23:04 EDT
Created attachment 139493 [details]
Proposed UI for validating SF.net repos 2/2

When the user validates a SF.net repo and has entered Http authentication data, no supplementary error message is shown.
Comment 10 Robert Munteanu CLA 2009-06-17 20:24:34 EDT
> Sorry, I meant to suggest the repository settings page. Maybe display an
> info/warning message in the title of the page when the support repository URL is
> selected and HTTP credentials are not provided.

See my previous screenshots.

> 
> > The SF.net tracker is still not available ( see also
> > https://sourceforge.net/apps/trac/sourceforge/ticket/1336 ), but I've changed
> > the support repo to the new location rather than follow 302s. Have you
> received
> > the private repo password reset I've sent you?
> 
> No, I didn't get an email. Could you send it again to
> steffen.pingel@tasktop.com?

I've sent it manually, should have arrived by now.
Comment 11 Steffen Pingel CLA 2009-06-17 21:22:04 EDT
(In reply to comment #10)
> > Sorry, I meant to suggest the repository settings page. Maybe display an
> > info/warning message in the title of the page when the support repository URL
> is
> > selected and HTTP credentials are not provided.
> 
> See my previous screenshots.

That looks good!

> I've sent it manually, should have arrived by now.

Thanks, got it. The credentials didn't work for me but I was able to sign up for a new account.
Comment 12 Steffen Pingel CLA 2009-06-17 21:23:56 EDT
Created attachment 139499 [details]
huge button in new task dialog

Maybe this could be replaced by a filtered list, similar to the Jira product selection?
Comment 13 Steffen Pingel CLA 2009-06-17 21:27:54 EDT
Created attachment 139500 [details]
new task editor

The new task editor opens 4 very similar text fields by default. Would it make sense to remove the New Comment field (the web doesn't seem to have that) and collapse Additional Information by default?
Comment 14 Steffen Pingel CLA 2009-06-17 22:10:05 EDT
Created attachment 139502 [details]
query dialog

If retrieval of the repository configuration fails an error is logged but there is no indication in the UI of the failure and no update button to recover, e.g.:

com.itsolut.mantis.core.exception.MantisRemoteException: (302)Found
	at com.itsolut.mantis.core.MantisAxis1SOAPClient.getProjects(MantisAxis1SOAPClient.java:176)
	at com.itsolut.mantis.ui.wizard.MantisCustomQueryPage.refreshProjectCombo(MantisCustomQueryPage.java:349)
	at com.itsolut.mantis.ui.wizard.MantisCustomQueryPage.createControl(MantisCustomQueryPage.java:118)
	at org.eclipse.jface.wizard.Wizard.createPageControls(Wizard.java:170)
Comment 15 Steffen Pingel CLA 2009-06-17 22:12:03 EDT
Created attachment 139503 [details]
branding icon is missing transparency

The black pixels should probably be transparent.
Comment 16 Steffen Pingel CLA 2009-06-17 22:55:13 EDT
A few more notes from a quick test run with the test repository:

* It is difficult to know the correct repository URL. I had to append /api/soap/mantisconnect.php to the base URL. Couldn't the connector probe for the different soap API urls and only require the user to enter the base (similar to Bugzilla and JIRA)?

* I wasn't able to submit tasks from Mylyn although it worked from the web. I always got an Access Denied error:
at com.itsolut.mantis.binding.MantisConnectBindingStub.mc_issue_add(MantisConnectBindingStub.java:1727)
at com.itsolut.mantis.core.MantisAxis1SOAPClient.createTicket(MantisAxis1SOAPClient.java:658)
at com.itsolut.mantis.core.MantisTaskDataHandler.postTaskData(MantisTaskDataHandler.java:182)
at org.eclipse.mylyn.internal.tasks.core.sync.SubmitTaskJob.run(SubmitTaskJob.java:79)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

* It would be helpful if the query page had a message that prompted the user what to do and would show a warning if a project does not have any pre-defined filters. I wasn't able to get it into a state where Finish would be enabled. How do I create a pre-defined filter?

Thanks a lot for creating a branding plug-in. The feature is now properly recognized as installed by the discovery portal.

Comment 17 Robert Munteanu CLA 2009-06-18 06:18:19 EDT
Thanks for the review Steffen.

I've pushed 3.0.3.200906181309 to the update-dev site:

# the huge button issue fixed - properly set layout. 
# in the new task editor: collapse the 2 extra large input fields and remove the new comment part.
# the query dialog shows the error messages if there is an exception
# made the overlay icon transparent
# the query page shows a warning if there are no filters found for the selected project
# the query page clearly states that filters may only be created from the web interface

I've created a separate issue in our bugtracker https://sourceforge.net/apps/mantisbt/mylyn-mantis/view.php?id=69 for the filtered list since the most annoying issue - huge select - is now gone.

The access denied on task submission comes from the fact that Mantis allows limited access to 'reporter' accounts using the SOAP interface. I need to look into this a bit more.
Comment 18 Robert Munteanu CLA 2009-06-18 10:01:59 EDT
(In reply to comment #17)
> Thanks for the review Steffen.
> 
> I've pushed 3.0.3.200906181309 to the update-dev site:
> 

That should be 3.0.3.200906181654 now - missed the fix for the huge select issue.
Comment 19 Steffen Pingel CLA 2009-06-18 14:25:56 EDT
Created attachment 139574 [details]
cut off summary border on Mylyn 3.2
Comment 20 Steffen Pingel CLA 2009-06-18 14:30:25 EDT
Great! Thanks for looking into these nits Robert. Another thing I noticed with the latest Mylyn release is that the border of the summary contorl is cut off. I have filed bug 280811 to address this in Mylyn but it won't get fixed before 3.2.1.

You should easily be able to fix it in Mantis by setting the type of the summary attribute to SHORT_RICH_TEXT which will also enable spell checking and hyperlink detection for the summary.
Comment 21 Steffen Pingel CLA 2009-06-18 14:41:38 EDT
Robert, can you send out an email to mylyn-dev@eclipse.org once you have a build that is available on the main Mylyn-Mantis update site requesting a vote on including it in the discovery portal?

Please also take a look at the current listing and screenshot in the org.eclipse.mylyn.discovery-directory plug-in and attach a patch here with any changes that should be made to the description etc.
Comment 22 Robert Munteanu CLA 2009-06-18 16:05:12 EDT
(In reply to comment #21)
> Robert, can you send out an email to mylyn-dev@eclipse.org once you have a build
> that is available on the main Mylyn-Mantis update site requesting a vote on
> including it in the discovery portal?
> 
> Please also take a look at the current listing and screenshot in the
> org.eclipse.mylyn.discovery-directory plug-in and attach a patch here with any
> changes that should be made to the description etc.

Sure, I'll do that in a couple of hours, and fix the summary styling as well.
Comment 23 Robert Munteanu CLA 2009-06-18 17:00:45 EDT
Created attachment 139591 [details]
Alternate screenshot for discovery

Alternate screenshot - feel free to use whatever you decide will work best.
Comment 24 Robert Munteanu CLA 2009-06-18 17:02:18 EDT
The description is fine by me - I've checked licensing as well.

The summary styling is fixed and on the main update site - reachable through the discovery mechanism, alongside all the items discussed here.
Comment 25 Steffen Pingel CLA 2009-06-18 17:17:48 EDT
Thanks! I'll get Mik to look at the listing and screenshots and we'll update it once the vote has been completed.
Comment 26 Steffen Pingel CLA 2009-06-19 14:28:31 EDT
Robert, I noticed this update site in Available Software Sites after installing the Mantis Connector: http://mylyn-mantis.sourceforge.net/eclipse/dev/update . It doesn't seem to exist, but it is listed in your content.jar on the update site (an older feature jar probably references it).
Comment 27 Robert Munteanu CLA 2009-06-21 05:42:18 EDT
(In reply to comment #26)
> Robert, I noticed this update site in Available Software Sites after installing
> the Mantis Connector: http://mylyn-mantis.sourceforge.net/eclipse/dev/update .
> It doesn't seem to exist, but it is listed in your content.jar on the update
> site (an older feature jar probably references it).

Thanks for spotting this.

I'll remove the feature jars and re-deploy the update site.
Comment 28 Steffen Pingel CLA 2009-06-21 23:19:03 EDT
Thanks. Great that we got Mantis added to the discovery portal!