Changeset 5fe4906f2b21045f3053f18774b8db58f5f80533
- Timestamp:
- 01/06/07 23:36:51 (6 years ago)
- Author:
- Philipp Kern <phil@…>
- Parents:
- 8ac0580b1339819333e354149f0954a4f913befb
- Children:
- 208c114c62d65ab5e5af8c1b484f57384c97053a
- git-committer:
- Philipp Kern <phil@0x539.de> / 2007-01-06T22:36:51Z+0000
- Message:
-
[project @ TODO updated]
Original author: Trac <trac@…>
Date: 2005-06-02 21:01:51+00:00
- Files:
-
Legend:
- Unmodified
- Added
- Removed
-
|
r8ac0580
|
r5fe4906
|
|
| 7 | 7 | |
| 8 | 8 | Major: |
| 9 | | * gethostbyname on win32 (#19) |
| 10 | 9 | * Bug: User attribution copied when using copy & paste (#24) |
| 11 | 10 | |
| … |
… |
|
| 13 | 12 | * Improve the network handling on Win32 (#2) |
| 14 | 13 | * Implement support for Zeroconf (#17) |
| 15 | | * Provide some means of authentication (#21) |
| 16 | 14 | * A flag specifing if a document has changed (#25) |
| 17 | 15 | * Request confirmations for unsaved documents (#26) |
| … |
… |
|
| 19 | 17 | |
| 20 | 18 | Minor: |
| 21 | | * Error code transmission (#16) |
| 22 | 19 | * Repaint of user colour incorrect (#22) |
| 23 | 20 | |
| … |
… |
|
| 26 | 23 | Enhancement: |
| 27 | 24 | * Highlighting of own nickname in chat window (#6) |
| 28 | | * Flags for obby::user (#8) |
| 29 | | * Syncronise documents on request (#10) |
| 30 | 25 | * Multiple user lists (#12) |
| 31 | | * Translate failure messages with gettext (#14) |
| 32 | | * Session serialisation (#20) |
| 33 | 26 | * Auto indentation (#23) |
| 34 | | |
| 35 | | 19: gethostbyname on win32 |
| 36 | | -------------------------- |
| 37 | | net6 should use gethostbyname instead of getaddrinfo for the win32 |
| 38 | | implementation because getaddrinfo seem only to exist in Windows XP's |
| 39 | | version of ws2_32.dll. |
| 40 | 27 | |
| 41 | 28 | 24: Bug: User attribution copied when using copy & paste |
| … |
… |
|
| 67 | 54 | application). |
| 68 | 55 | |
| 69 | | 21: Provide some means of authentication |
| 70 | | ---------------------------------------- |
| 71 | | ''libobby'' should provide some means of authentication. There should be |
| 72 | | several possibilities of authentication schemes (maybe this ticket should |
| 73 | | be splitted when they are getting implemented one-by-one): |
| 74 | | |
| 75 | | * If a user logs in the first time since the host restarted a password |
| 76 | | specified by the user will be set on the server with which it could |
| 77 | | authenticate itself after a connection loss. |
| 78 | | * A simple global password is need to login into a server, known to all |
| 79 | | users of it. |
| 80 | | * The server checks a user/password combination against a user database, |
| 81 | | useful for dedicated private ''obby'' servers. |
| 82 | | * Single documents could be get some kind of password or access control |
| 83 | | list protection, but #10 has to be implemented first. |
| 84 | | |
| 85 | 56 | 25: A flag specifing if a document has changed |
| 86 | 57 | ---------------------------------------------- |
| … |
… |
|
| 100 | 71 | when loading one from a file. |
| 101 | 72 | |
| 102 | | 16: Error code transmission |
| 103 | | --------------------------- |
| 104 | | We should transmit error codes instead of error strings in net6. The client |
| 105 | | may build a (localised, see #14) string out of it. |
| 106 | | |
| 107 | 73 | 22: Repaint of user colour incorrect |
| 108 | 74 | ------------------------------------ |
| … |
… |
|
| 116 | 82 | Chat messages of others should be highlighted if the own nickname is |
| 117 | 83 | mentioned in them. |
| 118 | | |
| 119 | | 8: Flags for obby::user |
| 120 | | ----------------------- |
| 121 | | Extend obby::user with a 'flags' field. The idea behind is to introduce a |
| 122 | | flag like obby::user::connected which specifies if this user is currently |
| 123 | | connected to the obby session. We would not need the user_table classes any |
| 124 | | longer and resolve the confusion of obby::user vs. obby::user_table::user. |
| 125 | | |
| 126 | | However, this feature _is_ dangerous because many code would have to be |
| 127 | | adjusted to ignore non-connected user. Maybe we can provide two iterators: |
| 128 | | user_iterator and connected_user_iterator or something. Or |
| 129 | | user_iterator::step(user::flags). |
| 130 | | |
| 131 | | We should think and discuss about this before doing anything. |
| 132 | | |
| 133 | | 10: Syncronise documents on request |
| 134 | | ----------------------------------- |
| 135 | | Currently, all documents are synced to incoming clients. Having large |
| 136 | | and/or many documents, this causes much network traffic even if a user just |
| 137 | | wants to edit one of these documents. |
| 138 | | |
| 139 | | The idea is to send just a document list on connection. Users can subscribe |
| 140 | | and unsubscribe to documents which means that the document content is |
| 141 | | synced and they can edit the documents collaboratively until they |
| 142 | | unsubscribe. |
| 143 | | |
| 144 | | create_document should subscribe the creating user automatically. |
| 145 | | |
| 146 | | Of course, Gobby also needs many adjustments to support this feature. |
| 147 | 84 | |
| 148 | 85 | 12: Multiple user lists |
| … |
… |
|
| 158 | 95 | selected document |
| 159 | 96 | |
| 160 | | 14: Translate failure messages with gettext |
| 161 | | ------------------------------------------- |
| 162 | | The failure messages issued by net6 should be localised and translated with |
| 163 | | gettext. |
| 164 | | |
| 165 | | 20: Session serialisation |
| 166 | | ------------------------- |
| 167 | | When multiple persons are editing a document the situation that one |
| 168 | | (perhaps the host) has to leave is quite common. ''libobby'' should support |
| 169 | | some kind of session serialisation while preserving the history (and thus |
| 170 | | the attribution of each character to the corresponding user) so that it |
| 171 | | could be easily resumed. Probably (possibly compressed) XML should be used |
| 172 | | to serialise a tree of objects. The following features should be |
| 173 | | implemented: |
| 174 | | |
| 175 | | * Load/save documents to/from file and/or memory (while preserving |
| 176 | | history) |
| 177 | | * Load/save complete obby session |
| 178 | | |
| 179 | 97 | 23: Auto indentation |
| 180 | 98 | -------------------- |