Account confirmers, Anti-spam team, Confirmed users, Bureaucrats and Sysops emeriti
4,925
edits
Zhcfreesea (talk | contribs) |
m (Changed protection level for "Community:SummerOfCode08" ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))) |
||
| (22 intermediate revisions by 4 users not shown) | |||
| Line 1: | Line 1: | ||
<span style="color: red; font-weight: bold">Looking for this year's Summer of Code information? [[SummerOfCode|Step right this way.]]</span> | |||
This is the Mozilla Project's list of potential Google Summer of Code projects for 2008. | |||
'''Potential students''': you may choose from the list below, '''but you do not have to''' - feel free to submit a proposal for your own idea. However, before you do so, see the guidelines for good ideas on [[Community:SummerOfCode08:Brainstorming|the Brainstorming page]]. | |||
You may wish to consider [http://weblogs.mozillazine.org/gerv/archives/2006/05/how_not_to_apply_for_summer_of.html How Not To Apply For Summer Of Code] before making your application. Then [http://code.google.com/soc/student_step1.html apply here] (you'll need a Google Account). | You may wish to consider [http://weblogs.mozillazine.org/gerv/archives/2006/05/how_not_to_apply_for_summer_of.html How Not To Apply For Summer Of Code] before making your application. Then [http://code.google.com/soc/student_step1.html apply here] (you'll need a Google Account). | ||
If you have questions about Summer of Code or if you are having problems connecting up with the right Mozilla developer that might be helpful in framing a proposal send mail to [mailto:gerv@mozilla.org Gerv] and/or [mailto:chofmann@mozilla.org chofmann]. We will try and respond as soon as possible and get your questions directed to the right person. Please allow at least 48 hours for a reply. | |||
You can also kick ideas around on in any of the bugs listed under the projects below or the #developers channel on irc://irc.mozilla.org . | |||
==Mozilla Platform== | ==Mozilla Platform== | ||
| Line 45: | Line 49: | ||
| valign="top" | Olli Pettay 'smaug' | | valign="top" | Olli Pettay 'smaug' | ||
| valign="top" | possibly Olli Pettay | | valign="top" | possibly Olli Pettay | ||
| valign="top" | | |||
|- | |||
| valign="top" | Quicktime or DirectShow video backend | |||
| valign="top" | Implement a backend for the <video> element so it can use native codecs on Windows or Mac for playing video and audio. Chris Double has a gstreamer backend already working for Linux/GTK which can be used as a template. Chris' code should be landed on trunk by the summer. | |||
| valign="top" | [[User:Roc|roc]] | |||
| valign="top" | [[User:Doublec|doublec]] | |||
| valign="top" | | |||
|- | |||
| valign="top" | Layout-flush reporting | |||
| valign="top" | Certain DOM APIs --- e.g., <tt>offsetLeft</tt> --- require a "layout flush" to bring layout up to date. Flushes can be very expensive; unnecessary use of these APIs (or use at the wrong time) can slow down web applications dramatically, but it's hard for Web developers to detect the problem or fix it. Firebug and other tools should receive reports of layout flushes and include them in profile data or console logs, along with the Javascript stack trace associated with each flush. This requires a small amount of core engine work to report the flushes, plus work to actually expose them in Firebug. | |||
| valign="top" | [[User:Roc|roc]] | |||
| valign="top" | [[User:Roc|roc]] | |||
| valign="top" | | |||
|- | |||
| valign="top" | Implement CSSOM RangeView | |||
| valign="top" | Currently there is no standards-based way to discover the bounds of a substring of a DOM text node. The [http://www.w3.org/TR/cssom-view/ CSSOM spec] defines a way, but no browser implements it yet. | |||
| valign="top" | [[User:Roc|roc]] | |||
| valign="top" | [[User:Roc|roc]] | |||
| valign="top" | | |||
|- | |||
| valign="top" | Rewrite Mac OS X Carbon printing impl in Cocoa | |||
| valign="top" | Currently Mozilla's Mac OS X printing code is written in Carbon. Our Carbon implementation uses quite a few deprecated APIs and conflicts with the rest of our Cocoa-based platform in some significant ways. | |||
| valign="top" | [[User:Josh|josh]] | |||
| valign="top" | [[User:Josh|josh]] | |||
| valign="top" | | |||
|- | |||
| valign="top" | Improved lxr | |||
| valign="top" | see [http://blog.mozilla.com/dmandelin/2008/03/03/mxr-your-dehydra/ Dave's blog], [http://blog.mozilla.com/tglek/2007/04/23/mozilla-class-browser/ Taras' blog] and [http://www.mail-archive.com/dev-static-analysis@lists.mozilla.org/msg00014.html proposal] | |||
LXR could be improved by hooking it up to semantic information extracted with Dehydra. Sample improvements: Class browsing, exact way of finding method definitions/implementations, list of callers of a method | |||
| valign="top" | [[User:taras|taras]] | |||
| valign="top" | taras, dmandelin? | |||
| valign="top" | | | valign="top" | | ||
|} | |} | ||
| Line 58: | Line 93: | ||
!Comments | !Comments | ||
|- | |- | ||
| valign="top" | | | valign="top" | Save Changes In Firebug | ||
| valign="top" | The | | valign="top" | The top requested feature in Firebug is "save my edits". The general problem is very hard, but several specific versions are easier and that allows incremental progress during the summer. Saving the generated page in a nice way or saving diffs (patches) are two cases. Lots of Firebug users would give good feedback. Could be implemented as a Firebug plugin. | ||
| valign="top" | | | valign="top" | Johnjbarton | ||
| valign="top" | | | valign="top" | Johnjbarton | ||
| valign="top" | | |||
|- | |||
| valign="top" | Extension: Firefox Reader | |||
| valign="top" | Build a rich UI for newspaper reading that covers the major features of the Microsoft NYT (etc) Reader: offline page storage, full-text indexing and searching, a nifty XUL UI, and a columns presentation. See [http://userscripts.org/scripts/show/9022 Manu's Greasemonkey script] for a start. | |||
| valign="top" | [[User:roc]] | |||
| valign="top" | | |||
| valign="top" | | |||
|- | |||
| valign="top" | Test Framework for Responsiveness of User Interface Elements | |||
| valign="top" | We currently have no tests for response time of specific application interactions such as: opening a new tab, opening each menu in primary UI, opening the Places Library, opening/saving pref panes, bookmarks and history sidebars, etc. This SOC project would entail using the [http://developer.mozilla.org/en/docs/Mochitest Mochitest framework] to build a set of tests that time these common UI interactions, and report the results to Tinderbox, so that the results can be tracked over time. | |||
| valign="top" | [[User:Dietrich]] | |||
| valign="top" | [[User:Dietrich]] | |||
| valign="top" | | |||
|- | |- | ||
| valign="top" | | | valign="top" | Javascript Framework for Automating Complex User Interface Interfactions | ||
| valign="top" | | | valign="top" | We currently have no tests for UI interactions involving copy and paste, nor drag and drop. This has been problematic during the Fx3 development cycle, as these types of interactions are only able to be tested manually, usually long after a regression has occurred. This SOC project entails the development of a standalone Javascript library that provides the ability to script copy/paste and drag/drop operations in the Firefox UI from within the [http://developer.mozilla.org/en/docs/Mochitest Mochitest framework]. | ||
| valign="top" | | | valign="top" | [[User:Dietrich]] | ||
| valign="top" | | | valign="top" | [[User:Dietrich]] | ||
| valign="top" | | |||
|} | |} | ||
==Thunderbird== | ==Thunderbird== | ||
Note: the Thunderbird team is extremely short on mentor time. Therefore, any Thunderbird-related proposals not on this list will have a much greater chance of being accepted if you can confirm a mentor before you submit the proposal. Otherwise, the barrier is going to be very high. | |||
Note also that there is [http://wiki.openchange.org/index.php/SoC/Ideas another project with a Thunderbird-related suggestion], and they have mentors available. | |||
{| class="standard-table" | {| class="standard-table" | ||
| Line 140: | Line 193: | ||
!Mentor(s) | !Mentor(s) | ||
!Comments | !Comments | ||
|- | |||
| valign="top" | Unit Testing | |||
| valign="top" | Add a unit testing framework to the Camino build system, and create unit test suites for significant portions of the Camino-specific code below the UI level (which would likely include refactoring some code for testabiliy). This would include generation of code coverage information to measure progress. | |||
| valign="top" | Stuart Morgan | |||
| valign="top" | Stuart Morgan | |||
| valign="top" | | |||
|- | |||
| valign="top" | User scripts (partial Greasemonkey support) | |||
| valign="top" | Add Greasemonkey-like support for site-specific, user-created JS modification to be run automatically to Camino, with as much compatibility with existing Greasemonkey scripts as is feasible. | |||
| valign="top" | Stuart Morgan | |||
| valign="top" | Stuart Morgan or Mike Pinkerton | |||
| valign="top" | | |||
|} | |} | ||
| Line 186: | Line 251: | ||
!Mentor(s) | !Mentor(s) | ||
!Comments | !Comments | ||
|- | |||
|Integrate Bugzilla with a Wiki | |||
|Many bug tracking systems have the capability to integrate with a wiki. Bugzilla doesn't. There are plenty of ways anyone could integrate these two types of systems. Bugzilla supports plug-ins as well. Some possible integrations are: | |||
* Linking from the wiki directly to Bugzilla via a simple tag. | |||
* Displaying a query on a wiki page, ie blockers for 3.2. | |||
* Linking to a wiki page from bugzilla and showing designs for more in depth enhancements, perhaps in an iframe? | |||
* Integrating project, component and other pages into the wiki might be neat. Maybe making a new component/project automatically makes a space in the wiki that shows some basic info about the state of bugs and also has places for the user to enter other info? Users in bugzilla have wiki pages that let them put more info about themselves like their IM or other stuff? This would be a super tight integration so that might want to be avoided due to annoyances in maintenance. | |||
* Examples from confluence/jira (neither are foss): [http://confluence.atlassian.com/display/DOC/JIRA+Issues+Macro 1], [http://confluence.atlassian.com/display/CONFEXT/Testplan+Plugins 2], [http://confluence.atlassian.com/display/DOC/JIRA+Portlet+Macro?focusedCommentId=137265353 3] | |||
* I've got to look at other wiki/bug tracking integrations for more ideas. | |||
The list is as long as your imagination. Also including Testopia into the mix might make it interesting as well. The solution could be a generalize way of hooking bugzilla into any wiki, or a specific wiki into bugzilla. | |||
|Atsushi Shimono & Guy Pyrzak | |||
|Max Kanat Alexander & Guy Pyrzak | |||
| | |||
|- | |||
|A Firefox Extension for Bugzilla | |||
|Firefox has many useful extensions that integrate bug trackers into it. There are extensions that integrate task systems into email such as [http://www.rememberthemilk.com/services/gmail/ Remember The Milk(RTM)]. We're interested in a useful way of integrating Bugzilla with Firefox, extra props for integrating it into an email client! Yeah, this one is a bit fuzzy. See [http://bugxula.mozdev.org/ Bugxula] for more ideas. Since Bugxula has not been worked on in a long time it could pick up from where it left off. It could focus more on finding and reporting bugs since it is probably the 2 main things users do without a full interface. It could also be a whole new think like the RTM extension which appears oh so cutely inside of gmail. Maybe it is an extension that works in both thunderbird and firefox! I'd kinda like to get feedback on places they would like to see this one. | |||
|Guy Pyrzak | |||
|Max Kanat Alexander & Guy Pyrzak | |||
| | |||
|- | |||
|Support general autolinkification for integration with Software Configuration Management systems | |||
|One of the most frequently requested features in [http://www.mkgnu.net/?q=scmbug Scmbug] is adding [http://bugzilla.mkgnu.net/show_bug.cgi?id=266 autolinkification] support for Bugzilla. When a developer browses changeset comments in a Bugzilla, they would like to click on a commited file and be directed to a ViewCVS/ViewSVN application that annotates the changes. However, implementing this requires changes to Bugzilla (and bug-trackers in general, e.g. Mantis [http://bugs.mantisbt.org/view.php?id=6368 suffers] from the same issue, but other bug-trackers, like JIRA don't) to enable them to transform changeset comment descriptions according to a [http://bugzilla.mkgnu.net/show_bug.cgi?id=266#c5 predefined convention]. Merely instructing Scmbug to produce such "autolinkified" comments is not enough, because for security reasons (cross-site scripting attacks) Bugzilla will not blindly linkify anything in a comment. Thus, special support is needed in Bugzilla to allow users to define possible log comment autolinkifications using [http://bugzilla.mozilla.org/show_bug.cgi?id=314097#c11 regular expressions]. | |||
|Kristis Makris | |||
|another mentor that ... *understands* Bugzilla is needed & Kristis Makris | |||
| | |||
|} | |} | ||
| Line 199: | Line 290: | ||
|} | |} | ||
==Add-on | ==Firefox Support (Sumo)== | ||
{| class="standard-table" | |||
|- | |||
!Title | |||
!Abstract - links to details/bugs/etc | |||
!Reporter | |||
!Mentor(s) | |||
!Comments | |||
|- | |||
| valign="top" | Online in-wiki screenshot annotator and editor | |||
| valign="top" | Sumo runs on TikiWiki. This will be a tool that will allow direct editing of images in the TikiWiki image gallery from which screenshots are embedded into support articles (i.e. wiki pages). This editing tool will primarily be used for annotation (in a way which is visually pleasing, preferably with tranparency), but other basic image processing functions such as resizing and cropping should also be supported. | |||
| valign="top" | Nelson (nkoth) | |||
| valign="top" | | |||
| valign="top" | Possible approaches - [http://dev.tikiwiki.org/tiki-view_tracker_item.php?itemId=909 Integrating fotonotes or wikigraphe or DOM Image Annotation or something else] -- Nelson | |||
|- | |||
| valign="top" | Add customized online screencast annotation using Kaltura | |||
| valign="top" | [http://www.kaltura.com Kaltura] is an open source project that allows collaborative editing of videos wiki-style. This can be used in sumo. However, the annotation/overlay capabilities do not currently include an easy way to add a support-style annotation. This project will create a kplayer extension for a custom overlay designed specially for support-style screencasts. | |||
| valign="top" | Nelson (nkoth) | |||
| valign="top" | Nelson (nkoth) | |||
| valign="top" | | |||
|- | |||
| valign="top" | Switch to more powerful search engine | |||
| valign="top" | SUMO currently uses Google as its search engine, which limits the possibility to integrate SUMO/tikiwiki specific features like categories and tags. Switching to and improving the built-in tiki search engine would allow us to better integrate forum and knowledge base searches, rank pages on more things than just page hits, etc. Improving performance would also be crucial for the success of this search engine switch. | |||
| valign="top" | David Tenser (djst) | |||
| valign="top" | Nelson? (nkoth) | |||
| valign="top" | See [http://wiki.mozilla.org/Support:Search_Requirements Search Requirements] | |||
|} | |||
===Rhino=== | |||
{| class="standard-table" | {| class="standard-table" | ||
| Line 209: | Line 329: | ||
!Comments | !Comments | ||
|- | |- | ||
| | | valign="top" | Rhino Wish List | ||
| | | valign="top" | See http://developer.mozilla.org/en/docs/Rhino_Wish_List | ||
| | | valign="top" | norrisboyd [at] gmail[dot]com | ||
| | | valign="top" | norrisboyd [at] gmail[dot]com | ||
| | | valign="top" | Note: Rhino is the Mozilla project's implementation of JavaScript, written in Java. | ||
|} | |} | ||