Version 11 (modified by 16 years ago) (diff) | ,
---|
Periodically we see or come up with ideas that would make a good Google Summer of Code project. Many of these get forgotten when we actually get around to listing ideas for the next summer. Here is a space to store them.
Some of these ideas may be insufficient for an entire Summer of Code project; in those cases it will probably be desirable to combine two or more ideas listed here into a single project.
Projects under way this summer are listed on the Summer of Code 2007 page.
Write Jabber Transports Based on libpurple
libpurple is our backend library that connects to AIM, MSN, Yahoo, etc. A Jabber transport is an add-on component that allows Jabber users to talk to people using AIM, MSN, Yahoo, etc. It should be possible to write a generic Jabber transport that supports all the same protocols supported by libpurple. This idea is so freaking awesome don't even play.
ICQ TLC
Our ICQ implementation in the OSCAR code is substandard in a variety of respects. We do not have full support for ICQ status, ICQ privacy, or ICQ formatting to name just a few shortfalls. Others include our buddy list management, message size restrictions and ICQ's chats. Your goal is to compare what libpurple does at a protocol level with what the official Windows ICQ client does, figure out where it differs, and to repair libpurple's implementation, extending Pidgin's, Finch's, and libpurple's capabilities where possible or necessary.
Yahoo! TLC
Our Yahoo! implementation is currently a substandard in many ways. For example, file transfers don't work between libpurple clients and the current versions of the official client. We also don't support the newest protocol revision, which allows the MSN interoperability to function. Your task is to compare what libpurple does at a protocol level with what the official Windows Yahoo! client does, figure out where it differs, and then repair libpurple's implementation.
Finch Improvements
- A new window manager (or improvements to the existing ones). For example, a tiling window manager would be super awesome.
- Improve the widget-packing in a container (GntBox?), may be even have a grid-like container.
- Have a spell checker, which would add some way of indicating spelling errors, suggesting possible corrections, etc.