This Bugzilla instance is deprecated, and most Eclipse projects now use GitHub or Eclipse GitLab. Please see the deprecation plan for details.
Bug 278555 - review Foglyn for Connector Discovery listing
Summary: review Foglyn 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 Windows Vista
: 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-05-31 09:32 EDT by Peter Stibrany CLA
Modified: 2009-06-23 01:45 EDT (History)
2 users (show)

See Also:


Attachments
Discovery site contribution (24.27 KB, application/octet-stream)
2009-05-31 09:33 EDT, Peter Stibrany CLA
no flags Details
Repository settings dialog (32.95 KB, image/png)
2009-06-14 05:45 EDT, Peter Stibrany CLA
no flags Details
Screenshot showing query setup dialogs (209.10 KB, image/png)
2009-06-14 05:52 EDT, Peter Stibrany CLA
no flags Details
Case editor (for UI review) (42.25 KB, image/png)
2009-06-14 05:53 EDT, Peter Stibrany CLA
no flags Details
Planning issue (38.37 KB, image/png)
2009-06-16 15:41 EDT, Peter Stibrany CLA
no flags Details
Patch to discovery plugin (2.60 KB, patch)
2009-06-22 06:01 EDT, Peter Stibrany CLA
no flags Details | Diff
Images for patch (26.23 KB, application/octet-stream)
2009-06-22 06:02 EDT, Peter Stibrany CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Stibrany CLA 2009-05-31 09:32:29 EDT
Hell,

I'd like to list Foglyn in the discovery directory. I've prepared plugin with discovery site contribution. There is one issue with it: I've used "org.eclipse.mylyn.discovery.site.categories.connectorCategoryEclipseOrg" category, because I found no other, and adding custom categories seems to be forbidden (Cannot create category 'thirdparty' with id 'com.foglyn.discoverysite.connectorCategory1' from com.foglyn.discoverysite: disallowed) I would prefer to put Foglyn into "3rd party connectors" category, once it exists.

Thank you very much,
-Peter

-----
From: David Green <dgreen99@gmail.com>
Subject: Re: [mylyn-dev] Request for help: connector discovery
Date: Wed, May 20, 2009 at 10:18 PM

[del]
You should be aware that in order for your discovery site to be discovered, it must be listed in the discovery directory at http://www.eclipse.org/mylyn/discovery/directory.xml
If you want for your site to be listed there you should create a bug under Tools/Mylyn to that effect.
Comment 1 Peter Stibrany CLA 2009-05-31 09:33:22 EDT
Created attachment 137788 [details]
Discovery site contribution

... (with invalid category)
Comment 2 Steffen Pingel CLA 2009-06-01 15:31:57 EDT
Thanks Peter. We are planning to have an outline of the process for adding contributions to the discovery site ready in the next few days.
Comment 3 Mik Kersten CLA 2009-06-09 22:18:16 EDT
Peter: We have taken a first pass at the criteria on bug 279709.  Please take a look, and we can discuss the Foglyn case further on this bug report or schedule a Mylyn meeting as proposed.
Comment 4 Peter Stibrany CLA 2009-06-14 05:45:38 EDT
Created attachment 139108 [details]
Repository settings dialog
Comment 5 Peter Stibrany CLA 2009-06-14 05:52:34 EDT
Created attachment 139109 [details]
Screenshot showing query setup dialogs
Comment 6 Peter Stibrany CLA 2009-06-14 05:53:25 EDT
Created attachment 139110 [details]
Case editor (for UI review)
Comment 7 Peter Stibrany CLA 2009-06-14 05:56:02 EDT
Hello,

here are details about Foglyn regarding information required by http://wiki.eclipse.org/Mylyn/Discovery wiki page. (I can join regular Mylyn meeting for further discussion)

* Current Foglyn 1.4 supports Mylyn 3.0, 3.1 and 3.2 (although it doesn't yet exploit all latest additions, like [Submit] button at the top of task editor. Next Foglyn version will add support in this area)
* Foglyn implements API necessary to support:
## querying the repository (with search-based queries similar to Bugzilla connector, and queries based on predefined filters from FogBugz repository)
## downloading case details with support for partial task download
## access to attachments, including context retrieval
## editing of case
## submitting of changed case back to repository
## uploading attachments (including attach context)
## links detection using common FogBugz formats
## searching for cases in search dialog
* UI review part: Foglyn doesn't have much UI on its own (see attached screenshots):
** it uses standard connector repository dialog from Mylyn, with some customizations (some parts are disabled/invisible, like encoding as FogBugz always uses UTF-8, ...)
** query dialog based on Mylyn's query dialog
** Foglyn uses Mylyn's task editor, slightly modified
** Foglyn adds cheatsheet to help new users with repository setup (screenshot available at http://www.foglyn.com/screenshots/first-steps.gif)
* Foglyn tries hard to avoid adding custom preferences, although it has preference page for setting registration key
* Foglyn is currently used by about 30-40 users (many of them got their registration key for free :-), like beta testers, fogbugz on demand student/startup edition users).
* Support is provided by email at support@foglyn.com, there is no user/support web forum at the moment.

I don't fully understand this requirement: "Provide a bugs.eclipse.org support forum that the Mylyn committers can forward connector-specific support requests to". From my point of view, it would be enough to forward such requests to support@foglyn.com, or to assign Foglyn related bugs in eclipse.org bugzilla to me (peter@foglyn.com). Is this what you have in mind? I can alternatively create a web-based support forum.

Thank you for review.
Comment 8 Steffen Pingel CLA 2009-06-14 19:52:52 EDT
> I don't fully understand this requirement: "Provide a bugs.eclipse.org support
> forum that the Mylyn committers can forward connector-specific support requests
> to". From my point of view, it would be enough to forward such requests to
> support@foglyn.com, or to assign Foglyn related bugs in eclipse.org bugzilla to
> me (peter@foglyn.com). Is this what you have in mind? 

Yes, that is the intention: You should provide a Bugzilla account for support requests, e.g. peter@foglyn.com. I have clarified the wording on the wiki page: "Provide a bugs.eclipse.org account that the Mylyn committers can assign connector-specific support requests to, and provide responses to those requests within a reasonable time frame (e.g., 2 weeks)."
Comment 9 Steffen Pingel CLA 2009-06-15 16:13:21 EDT
Peter, can you provide a very short overview how Foglyn accesses the repository and which libraries it uses? My main concern here being interoperability with other Mylyn connectors and cancellation support, password prompting etc.

Do you have a public test server that I could use to try out the connector?
Comment 10 Peter Stibrany CLA 2009-06-15 16:49:41 EDT
Hello Steffen,

Foglyn uses Apache Http Client libraries provided by Mylyn, and org.eclipse.mylyn.commons.net.WebUtil class to create a host configuration and method execution. Regarding cancellation support, network operations are only blocking operations in Foglyn ... I originally used WebUtil.getResponseBodyAsStream as other connectors do, but since then I switched to custom InputStream wrapper which avoids some problems I observed with PollingInputStream (I can share this code with Mylyn if you're interested). Re "password prompting" -- unfortunately, Foglyn doesn't prompt for password if it is missing (I know this for sure, because I was hit by this few times, and never realized that it is a bug until now).

I created FogBugz repository for you to try out. I'll email details to you to avoid sharing it in public.
Comment 11 Steffen Pingel CLA 2009-06-15 17:10:17 EDT
> I originally used
> WebUtil.getResponseBodyAsStream as other connectors do, but since then I
> switched to custom InputStream wrapper which avoids some problems I observed
> with PollingInputStream (I can share this code with Mylyn if you're interested).

Yes, please file a bug and let us know of any problems you ran into.

> I created FogBugz repository for you to try out. I'll email details to you to
> avoid sharing it in public.

Thanks!
Comment 12 Steffen Pingel CLA 2009-06-15 22:19:40 EDT
The connector looks really good! A few minor nits:

 * The connector label should not include "(Foglyn plugin)", it seems superfluous.
 * The new task editor has two delete buttons and a new subtask button. It is recommended to hide the Planning page for new tasks and include the Planning part instead.
 * The Current Estimate field has a double border on Linux.
 * The combo controls in the task editor do not use the flat look
 * The New Comment field does not support the Task Editor extension and is therefore not WikiText enabled
 * After a restart a dialog was displayed and this error was logged: "Password cannot be empty". I had not checked of "Save Password".
 * The Load From File button on the preference page is cut off on Linux
 * Foglyn does not implement the support extension (bug 150278)
 * Got this NPE after I reopened (?) a Case and selected values in the task editor:
 java.lang.NullPointerException
	at com.foglyn.ui.A.c(Unknown Source)
	at com.foglyn.ui.A.b(Unknown Source)
	at com.foglyn.ui.A.a(Unknown Source)
	at com.foglyn.ui.aq.a(Unknown Source)
	at com.foglyn.ui.u.attributeChanged(Unknown Source)
	at org.eclipse.mylyn.tasks.core.data.TaskDataModel$1.run(TaskDataModel.java:91)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.mylyn.tasks.core.data.TaskDataModel.attributeChanged(TaskDataModel.java:85)
	at org.eclipse.mylyn.tasks.ui.editors.AbstractAttributeEditor.attributeChanged(AbstractAttributeEditor.java:62)
	at com.foglyn.ui.A.b(Unknown Source)
	at com.foglyn.ui.A.a(Unknown Source)
	at com.foglyn.ui.aw.widgetSelected(Unknown Source)
	[...]

Peter, would you be able to join this Thursday's Mylyn meeting so we can do a review with the other Mylyn committers: http://wiki.eclipse.org/Mylyn/Meetings#Next_Meeting ?
Comment 13 Peter Stibrany CLA 2009-06-16 13:57:33 EDT
Steffen, thank you very much for your great feedback! I will fix problems you have pointed out (like double border, prompting for password, cut off "Load From File" button on Linux, WikiText-enabled new comment field and NPE :-( ).

Re "The new task editor has two delete buttons and a new subtask button": I am not quite sure what you mean. Do you observe two delete/new subtask buttons somewhere, or do you suggest that it is missing in foglyn's task editor?

Re "It is recommended to hide the Planning page for new tasks and include the Planning part instead" -- new Foglyn will hide Planning page, but current implementation doesn't include Planning part in editor. FogBugz cases already have its own Estimate and Due time fields, and having extra Planning part seems to be redundant for me. (In fact, some Foglyn users were confused by having two different estimate/due time fields, which were not fully synchronized).

Re "(Foglyn plugin)": you're right, I just wanted to provide additional hint when more FogBugz connectors are installed (there is one more existing connector) :-) I agree that it's superfluous in most cases.

Re flat look of combos: I use standard Combo widget, instead of CCombo, because it has much better support for keyboard, at least on Windows: CCombo doesn't support standard F4 shortcut, and it doesn't support quick-search of entries when you start typing name of entry. This is tradeoff between better funcionality and visual appearence (although it should not be hard to fix this keyboard stuff with little programming). I plan to make comboboxes editable in one of next version, with editing acting as filter ... this is how it works in FogBugz WebUI, and it is great feature for heavy keyboard oriented people like me. Hopefully it will also make combos to look better in form.

Re "Foglyn does not implement the support extension (bug 150278)": I don't think it makes sense for FogBugz repositories. Let me explain ... FogBugz pricing is based on number of users. External people who report issues usually don't have accounts in FogBugz repositories. They can either send support email (e.g. emails sent to support@foglyn.com go to my FogBugz repository), or create a discussion thread on FogBugz -- each discussion thread can be easily converted to new case/bug, when needed (see http://our.fogbugz.com/default.asp?fogbugz for example of such discussion forum running on FogBugz ... you cannot see "create case" option, because you're not real FogBugz user). Foglyn also currently doesn't support sending anonymous cases to FogBugz server (FB server *can* be configured to accept such posts), nor does it support discussion forum. Result is that Foglyn is not usable without real username/password, and getting username on FogBugz server always involve contacting admin (because it may cost more money).


I will join next Mylyn meeting on Thursday (18th Jun) ... I am looking forward to it :-)
Comment 14 Steffen Pingel CLA 2009-06-16 14:30:44 EDT
Thanks for your response Peter.

> Re "The new task editor has two delete buttons and a new subtask button": I am
> not quite sure what you mean. Do you observe two delete/new subtask buttons
> somewhere, or do you suggest that it is missing in foglyn's task editor?

I am getting two delete buttons in the toolbar of the editor (see below).

> Re "It is recommended to hide the Planning page for new tasks and include the
> Planning part instead" -- new Foglyn will hide Planning page, but current
> implementation doesn't include Planning part in editor. FogBugz cases already
> have its own Estimate and Due time fields, and having extra Planning part seems
> to be redundant for me. (In fact, some Foglyn users were confused by having two
> different estimate/due time fields, which were not fully synchronized).

I understand. Can you file a separate bug against Mylyn to support that better, e.g. by providing a way to disable toolbar button contributions of the planning page?

> Re flat look of combos: I use standard Combo widget, instead of CCombo, because
> it has much better support for keyboard, at least on Windows: CCombo doesn't
> support standard F4 shortcut, and it doesn't support quick-search of entries
> when you start typing name of entry. This is tradeoff between better
> funcionality and visual appearence (although it should not be hard to fix this
> keyboard stuff with little programming). I plan to make comboboxes editable in
> one of next version, with editing acting as filter ... this is how it works in
> FogBugz WebUI, and it is great feature for heavy keyboard oriented people like
> me. Hopefully it will also make combos to look better in form.

Yes, the usability of CCombos is problematic and has been the cause for complaint on Mylyn bugs as well. We should make that a goal of an upcoming release cycle to improve this in platform: bug 38991. I agree that using native combo controls is a good compromise.

> Re "Foglyn does not implement the support extension (bug 150278)": I don't think
> it makes sense for FogBugz repositories. Let me explain ... FogBugz pricing is
> based on number of users. External people who report issues usually don't have
> accounts in FogBugz repositories. They can either send support email (e.g.
> emails sent to support@foglyn.com go to my FogBugz repository), or create a
> discussion thread on FogBugz -- each discussion thread can be easily converted
> to new case/bug, when needed (see http://our.fogbugz.com/default.asp?fogbugz for
> example of such discussion forum running on FogBugz ... you cannot see "create
> case" option, because you're not real FogBugz user). Foglyn also currently
> doesn't support sending anonymous cases to FogBugz server (FB server *can* be
> configured to accept such posts), nor does it support discussion forum. Result
> is that Foglyn is not usable without real username/password, and getting
> username on FogBugz server always involve contacting admin (because it may cost
> more money).

Thanks for the detailed explanation. The support extension does not have good integration with email at the moment, so I agree that it doesn't make sense to implement it.

> I will join next Mylyn meeting on Thursday (18th Jun) ... I am looking forward
> to it :-)

Great! I have added the review to the meeting agenda.
Comment 15 Peter Stibrany CLA 2009-06-16 15:41:19 EDT
Created attachment 139353 [details]
Planning issue

(In reply to comment #14)
> I am getting two delete buttons in the toolbar of the editor (see below).
> 
[del]
> 
> I understand. Can you file a separate bug against Mylyn to support that better,
> e.g. by providing a way to disable toolbar button contributions of the planning
> page?
> 

When I disable planning page (by returning return new String[] { ITasksUiConstants.ID_PAGE_PLANNING }; from TaskEditorPageFactory.getConflictingIds(TaskEditorInput input)), I no longer get extra Delete button and New Subtask button (see screenshot). I think this is correct behaviour of Mylyn, no need to change anything. (Next Foglyn version will disable planning page).
Comment 16 Steffen Pingel CLA 2009-06-16 16:23:45 EDT
> When I disable planning page (by returning return new String[] {
> ITasksUiConstants.ID_PAGE_PLANNING }; from
> TaskEditorPageFactory.getConflictingIds(TaskEditorInput input)), I no longer get
> extra Delete button and New Subtask button (see screenshot). I think this is
> correct behaviour of Mylyn, no need to change anything. (Next Foglyn version
> will disable planning page).

You convinced me that there is a good use-case for having the planning page to avoid confusing users so I still think Mylyn should support that better even if not used by Foglyn :). I have created bug 280517 to track that.
Comment 17 Steffen Pingel CLA 2009-06-17 00:01:05 EDT
Just noticed that the query page says "If attributes are blank or stale press the Update button" but I don't see an update button. Should the button be there? It seems some jobs is running every time I open the page.
Comment 18 Peter Stibrany CLA 2009-06-17 14:17:54 EDT
(In reply to comment #17)
> Just noticed that the query page says "If attributes are blank or stale press
> the Update button" but I don't see an update button. Should the button be
> there? It seems some jobs is running every time I open the page.
> 

I also noticed "If attributes are blank or stale press the Update button" when taking screenshots and was surprised by it. I don't remember seeing it before. Update button is obviously missing, I'll add it because it makes sense to have it there. I already filed a case in my bug-tracking system :-)
Comment 19 Robert Elves CLA 2009-06-18 13:51:02 EDT
h2. Notes from conference call review

Attendees: Peter, Mik, Steffen, Shawn, David, Robert

* FogBugz/FogLyn  - naming conventions
** "FogLyn" as connector name (current)
** Add task repository: FogBugz
** Capital R and S in Repository Settings dialog description

* Discovery
** Require a 48x48 icon for discovery contribution
** provide patch against the discovery plugin

* Editor
** Consider using commons.ui.WorkbenchUtil.openUrl(..) for opening 'buy now' link
** Consider revising sort order button icon - suggest matching color and style of arrow from alphabetic sort button on plugin.xml editor's dependency tab.
** Task editor control decorations are generally located to left of control

* Welcome Screen
** Branding icon missing from welcome screen icon
** Move under Task-focused programming
** First steps with Foglyn

* Consider a Help contribution with screenshot with links to mylyn docs and your website
Comment 20 Steffen Pingel CLA 2009-06-18 14:45:05 EDT
Peter, thanks for joining the conference call today. Can you send out an email to mylyn-dev@eclipse.org requesting a vote on including Foglyn in the discovery listing?

Please attach your discovery entry as a patch against the org.eclipse.mylyn.discovery-directory plug-in to this bug.
Comment 21 Peter Stibrany CLA 2009-06-22 06:01:13 EDT
Created attachment 139735 [details]
Patch to discovery plugin

Patch with contribution to org.eclipse.mylyn.discovery-directory.
Images are in separate attachments.
Comment 22 Peter Stibrany CLA 2009-06-22 06:02:51 EDT
Created attachment 139738 [details]
Images for patch

Images for previous patch to org.eclipse.mylyn.discovery-directory plugin.
Comment 23 Peter Stibrany CLA 2009-06-22 06:04:49 EDT
I planned to fix as many issues as possible, but time is against me :-)
Anyway, here is updated build if you're interested: http://update.foglyn.com/devel

Issues fixed so far:
* added branding as discussed at https://bugs.eclipse.org/bugs/show_bug.cgi?id=280349
* moved cheatsheet into tasks category
* two delete buttons problem fixed by hiding private section
* added Update button to advanced search dialog to refresh attributes from repository
* fixed double-border around estimate, and Load from File button being cut-off on Linux
* added task editor extensions support ... unfortunately, this makes Foglyn dependent on Mylyn 3.1 :-( ... but WikiText now works! (Only now have I realized how cool feature is that. I used it before as standalone editor, but integrating it into task editor is great! I fell in love with it :-))
* fixed opening browser on "Buy now!" links on Linux (hopefully ... it works on my Ubuntu now)

I'll try to fix additional items too, and release new version asap (well, after some testing).
Comment 24 Peter Stibrany CLA 2009-06-22 06:16:22 EDT
Additional fixed issues:
* capital R and S in dialog
* 48x48 icon for connector discovery listing
Comment 25 Peter Stibrany CLA 2009-06-22 06:22:01 EDT
Ah, few more I forgot to mention:
* prompting for passwords in case password is empty, or incorrect
* removed "(Foglyn plugin)" from label in "Add Repository" dialog
Comment 26 Steffen Pingel CLA 2009-06-23 01:45:03 EDT
Foglyn is now available in the community section! Note that the discovery portal is mirrored and it might take a while until all mirrors have the updated content.