Difference between revisions of "Roadmap"
(→Tasks) |
|||
Line 85: | Line 85: | ||
Qt3support is a library that provides backward compatibility classes that allows to build qt3 code with qt4, without great changes. Also it provides specific script that parses and the code and change qt3 staff with qt3support and qt4 staff. To build the code with both qt3 and qt4 we should make these changes revertable. Here are general types of changes made by qt3support script, and the ways this changes may be done revertable: | Qt3support is a library that provides backward compatibility classes that allows to build qt3 code with qt4, without great changes. Also it provides specific script that parses and the code and change qt3 staff with qt3support and qt4 staff. To build the code with both qt3 and qt4 we should make these changes revertable. Here are general types of changes made by qt3support script, and the ways this changes may be done revertable: | ||
+ | =====Usage of Compatibility Classes===== | ||
''' QXxxxxxx -> Q3Xxxxxxx''': Qt4 provides a number of [http://doc.trolltech.com/4.4/compatclasses.html Q3 Compatibility Classes] which differs from Qt3 ones just by adding "3" to the name of the classes. So thats what qt3support script does, just changes class names. To make code, changed in that way, buildable with qt3 we should rename these class names back to Qt3 notation. This can be done by simple <code>#define Q3PopupMenu QPopupMenu</code> in qt3-specific .h file. | ''' QXxxxxxx -> Q3Xxxxxxx''': Qt4 provides a number of [http://doc.trolltech.com/4.4/compatclasses.html Q3 Compatibility Classes] which differs from Qt3 ones just by adding "3" to the name of the classes. So thats what qt3support script does, just changes class names. To make code, changed in that way, buildable with qt3 we should rename these class names back to Qt3 notation. This can be done by simple <code>#define Q3PopupMenu QPopupMenu</code> in qt3-specific .h file. | ||
+ | ===== Const's Namespace Changes ===== | ||
+ | '''WType_Popup -> Qt::WType_Popup'''. The second difference between Qt3 and Qt4's Qt3Support is changes of namespaces of different consts. All Qt3 consts are located in common namespace, and in Qt4 they were moved to different namespaces, mostly in Qt-namespace. So when qt3support parses code, it adds namespaces to conts's names. To make code buildable by both frameworks we should create Compatibility Consts, that will be replaced by preprocessor to qt3 const or to qt4 before building the code. Just add <code>#define Q3WType_Popup WType_Popup</code> into qt3-specific .h file and <code>#define Q3WType_Popup Qt::WType_Popup</code> into qt4-specific .h file. | ||
* Create TextMessage abstract class: | * Create TextMessage abstract class: |
Revision as of 18:41, 3 February 2009
Sim-IM 0.9.4.4
We are not planning to release any bugfix releases of 0.9.4.x branch. If you are interested in porting bug-fixes from 0.9.5 branch into 0.9.4.x, please contact the development team via Mailing lists.
Sim-IM 0.9.5
General layout: Finish all tasks that were started by WRAR team, fix all known bugs that crashes or spoils something (if fix is possible without great architecture changes), or works totally wrong. Other bugs are optional, but also good to fix.
Tasks
- Task #4286 Internal unicode usage: use QString and QByteArray where ever is possible. Partly done by Chehrlic.
Task #4287 Jabber: Support for XEP-0092 (Software Version).Done by WRAR and Serzh.
- Task #4288 Jabber: Implement File Transfer (XEP-0096, XEP-0065). Started by Shaplov
- Task #4289 ICQ: Support for new avatar approach in ICQ 5.1 and QIP. Partly done by Chehrlic
- Bug #15110 ICQ: Sim-IM user's Avatar/Photo is not visible in non-Sim-IM clients Assigned to dirihle
Task #4290 Profiles Renaming feature.Done by Serzh
- Task #4291 Move from autoconf/automake to cmake. Partly done
- Task #4292 Implement creating source tarball via cpack
- Task #4293 Make i18n messages processing autoconf/automake independant
- Task #4294 Remove non-free media content from the project source code (see Bug #8843)
- Task #4295 Create GUN/(L)GPL iconset based on Crystal KDE icons. Partly done by Shaplov
Task #4296 Create GUN/(L)GPL sound set.Done by Noragen
- Task #4297 KDE spell check should work
- Bug #5995 KDE spell check: Marked misspelled words is sent to recipient coloured in red color
- Bug #5994 KDE spell check tries to analyse html tags of formatted message
- Bug #12254 KDE spell check highlights all words in message in some cases.
- Task #4298 Correct processing of connection troubles and correct reconnect
- Bug #10945 Sim-IM can't connect the network after changing of network address
- Task #4299 Go to inactive status when connection to the server is lost
- Task #4300 Go to incative status when OS reports network down. Partly done by dirihle
Bugs
Bug #10650 Impossible to add Non-IM contact:fixed by Vooft (Mikheev N.)Bug #11757 ICQ: Users from ignore list can't be deleted from contact listfixed by int32 (Dmitry Karasik)Bug #11493 ICQ: Impossible to change value of "Allow other to view my status from the web" optionfixed by dushistov_ea- Bug #9129 ICQ: Filetransfer is broken In progress by dirihle and noragen
- Bug #12259 MSN, Yahoo and OSCAR plugin can't be used together. Non-IM-Contacts conflicting, too. We should at least warn a user when creating new connection. ==>fix Groupmanagement
Bug #11669 Unable to connect password protected HTTPS Proxyfixed by Alex MasterovBug #10426 Jabber: Some messages is received twice.fixed by reklovJabber: Impossible to move some contacts from one group to anotherfixed by ShaplovBug #10994 Sim-IM loose configure files when disk is fullfixed by ShaplovSim-IM loose configure files when pressing Cancel while changing profilefixed by ShaplovBug #11221 Send button for "Authorization request" is always disabled, when request is sending from message window menu.fixed by Noragen- Bug #12255 Update button in userinfo/settings window is not re-enabling after updating.
Bug #12313 ICQ: Messages does not arrive ICQ6-Users (but it seems to work with SIM 0.9.4.3/4 ? needs testing)fixed by chehrlic (Christian Ehrlicher)- Bug #12348 AIM: Messages does not arrive ICQ6-Users (but it seems to work with SIM 0.9.4.3/4 ? needs testing)
- Bug #14123 New profile -> contact Msg's are not displayed until self send, due to creation of history file
Bug #10530 ICQ: Impossible to send SMSfixed by Shaplov- Bug #9681 Jabber: Problems with bold and underlined text in messages from gaim/pidgin
- Bug #9051 ICQ: Jabber groups is created on ICQ server when using ICQ and Jabber together
Bug #12257 Jabber: Sim-IM crashes when trying to send contact (Contact List menu option).fixed by Chehrlic (Christian Ehrlicher)- Bug #6969 Yahoo search and add does not work.
Bug #9236 Online contacts shown as offline after period of time (OSCAR-Specs-Problem, only non-authorized contacts seems to be affected)fixed needs testing by chehrlic (Christian Ehrlicher)- Bug #12314 ICQ: Change Passwords is not possible
- Bug #12316 Jabber: Change Passwords is not possible
- Bug #12319 Server-stored Non-IM contacts are afaik are not added to contactlist... (not processed?)
Bug #12320 Yahoo/MSN joined with ICQ contacts, cannot be put in visible/invisible list ==> crashfixed by Shaplov- Bug #14122 new ICQ connection -> old account loose in/visible grouping
Bug #14121 moving User in another group looses auth-statusfiexed by dirihle- Bug #14120 ICQ6-User is only after auth and sim-restart visible in SIM
Legend:
Bug #XXXXX — Bugs/tasks that blocks release. Can't release without fixing them
Bug #XXXXX — Normal bugs/tasks. Should be fixed if there is no serious problems.
Bug #XXXXX — Optional bugs/tasks. We can release without fixing them, though would be good to fix them anyway.
Bug #XXXXX — Fixed bug/finished task
Sim-IM 0.9.6
Semi-port to qt4 using qt3support
We should do (or at last try as much as possible) Sim-IM buildable both with qt3 and with qt4 (using qt3support).
Qt3support is a library that provides backward compatibility classes that allows to build qt3 code with qt4, without great changes. Also it provides specific script that parses and the code and change qt3 staff with qt3support and qt4 staff. To build the code with both qt3 and qt4 we should make these changes revertable. Here are general types of changes made by qt3support script, and the ways this changes may be done revertable:
Usage of Compatibility Classes
QXxxxxxx -> Q3Xxxxxxx: Qt4 provides a number of Q3 Compatibility Classes which differs from Qt3 ones just by adding "3" to the name of the classes. So thats what qt3support script does, just changes class names. To make code, changed in that way, buildable with qt3 we should rename these class names back to Qt3 notation. This can be done by simple #define Q3PopupMenu QPopupMenu
in qt3-specific .h file.
Const's Namespace Changes
WType_Popup -> Qt::WType_Popup. The second difference between Qt3 and Qt4's Qt3Support is changes of namespaces of different consts. All Qt3 consts are located in common namespace, and in Qt4 they were moved to different namespaces, mostly in Qt-namespace. So when qt3support parses code, it adds namespaces to conts's names. To make code buildable by both frameworks we should create Compatibility Consts, that will be replaced by preprocessor to qt3 const or to qt4 before building the code. Just add #define Q3WType_Popup WType_Popup
into qt3-specific .h file and #define Q3WType_Popup Qt::WType_Popup
into qt4-specific .h file.
- Create TextMessage abstract class:
- This class should be inherited by protocol specific TextMessages classes
- All interaction with message: showing, creating new message to send, etc should be done via virtual functions of that class
- All plugins are able to get incoming message and do something with sending message (which are represented by this class), if they want to by using existing event system (so will need to add some events for it)
- After TextMessage class is implemented we will be able:
- Rewrite history plugin
- Create spam-filter plugin
Sim-IM 0.9.7 and later
- Create Contat protocol independent generic class
- Create Group protocol independent generic class
- Create Protocol protocol independent generic class
- Create Profile abstract class
- Try to separate parsing code from UI-specific code
- Something else
Sim-IM 1.0
- Port to QT4.x