TODO.txt
changeset 156 520ccb3e05d4
parent 154 cd9e0ddbd5e9
child 157 eadf15a06ff5
child 183 b4bd77d58a3e
equal deleted inserted replaced
155:fdd637733628 156:520ccb3e05d4
     1 Review all the *Client receiver methods in layer3.go. They should
     1 Review all the *Client receiver methods in layer3.go. They should
     2 probably either all be receivers, or none.
     2 probably either all be receivers, or none.
     3 
     3 
     4 Maybe put auth-related stuff into its own structure inside Client,
       
     5 instead of at Client's top level.
       
     6 
       
     7 Add a way to broadcast status information as negotiation happens or
       
     8 disconnects occur. Possibly a new type of object that can be sent on
       
     9 Recv along with stanzas. Or use sync.Cond to protect a state
       
    10 variable.
       
    11 
       
    12 Asynchronously updating Client.Features is not thread safe. Use a
       
    13 public function GetFeatures() or similar. Same for setting the JID in
       
    14 bind()?
       
    15 
       
    16 NewClient should be synchronous, so it can update Features and JID and
       
    17 leave those as values rather than functions.
       
    18 
       
    19 Add a Reconnect() function.
     4 Add a Reconnect() function.
    20 
     5 
    21 Put roster and bind into separate packages, if possible.
       
    22 
       
    23 Eliminate as many uses of Generic as possible.
     6 Eliminate as many uses of Generic as possible.
    24 
       
    25 Callback doesn't need to return bool. It shouldn't affect what's given
       
    26 to the client.
       
    27 
     7 
    28 Don't keep the password in memory once we're done with it.
     8 Don't keep the password in memory once we're done with it.
    29 
     9 
    30 Rename extension.StanzaHandlers to something like StanzaTypes.
    10 Rename extension.StanzaHandlers to something like StanzaTypes.
    31 
    11