summaryrefslogtreecommitdiff
path: root/todo1.0
diff options
context:
space:
mode:
Diffstat (limited to 'todo1.0')
-rw-r--r--todo1.0159
1 files changed, 159 insertions, 0 deletions
diff --git a/todo1.0 b/todo1.0
new file mode 100644
index 00000000..593185bc
--- /dev/null
+++ b/todo1.0
@@ -0,0 +1,159 @@
+Atom stanza? Should stanzas for plugins go in sleekxmpp.stanza or sleekxmpp.plugins.stanza?
+
+sleekxmpp.stanza __all__ out of date?
+
+stanza.error could be cleaned up, use _delSubText, etc
+
+stanza.htmlim could use _delSubText, etc. Why not msg['html']['body'] instead of msg['html']['html']?
+
+Unify timeout values - maybe xmlstream.stanzabase.TIMEOUT?
+
+Need to use registerStanzaPlugin in rootstanza instead of the manual steps
+
+Is exceptions.XMPPError raised anywhere? grep says no, is it still needed?
+
+Extra tostring method in xmlstream. Maybe modify the tostring/ packages to accept a stream and top namespace instead of assuming a stanza object? Change ElementBase __str__ to pass its stream object to new function instead of extending ToString.
+
+Move tostring and tostring26 to be a single package with import switch in a __init__.py that selects appropriate file to import.
+
+Remove thread remains from handler classes.
+
+Clarify what is meant by 'instream' for a handler.
+
+Allow for XPath matching to use basic [@att="value"] filter. <- eek? Alternative is to use xml mask, but those are longer.
+
+ElementBase sub_items not subitem?
+
+Only import cElementTree in stanzabase, everything else reference that. Would make using lxml instead of cElementTree easier if needed.
+
+*XMPP needs to use JID class instead of lots of fields.
+
+BaseXMPP set_jid, makeIqQuery, getjidresource, getjidbare not needed
+
+Is BaseXMPP.send used anywhere?
+
+Make top level examples folder, put example.py, component_example.py there. Maybe even the disco browser too.
+
+__getitem__ should be in BaseXMPP. get too, or remove it?
+
+xmlstreammod in ComponentXMPP can be removed, just use XMLStream.
+
+Why CamelCase and underscore_names? Document semantics.
+
+Make the common classes available using __init__.py
+
+Need to unit test stanzabase/elementbase. Heavily.
+
+conn_tests and sleekxmpp/tests and sleekxmpp/xmlstresm/test.* -> convert to either unit tests, or at least put in same place
+
+Update setup.py - github url, version #
+
+scheduler needs unit tests
+
+__init__.py stream:features handler should use new state machine
+
+
+
+-- PEP8 - all files
+
+Need to use spaces
+
+Docstrings are lacking. Need to document attributes and return values.
+
+Organize imports
+
+Use absolute, not relative imports
+
+Fix one-liner if statements
+
+Line length limit of 79 characters
+
+
+
+-- Plugins
+
+--- xep_0004
+
+Need more unit tests
+
+--- xep_0009
+
+Need stanza objects
+
+Need unit tests
+
+--- xep_0045
+
+Need to use stanza objects
+
+A few TODO comments for checking roles and using defaults
+
+Need unit tests
+
+--- xep_0050
+
+Need unit tests
+
+Need stanza objects - use new xep_0004
+
+--- xep_0060
+
+Need unit tests
+
+Need to use existing stanza objects
+
+--- xep_0078
+
+Is it useful still?
+
+Need stanza objects/unit tests
+
+--- xep_0086
+
+Is there a way to automate setting error codes?
+
+Seems like this should be part of the error stanza by default
+
+Use stanza objects
+
+--- xep_0092
+
+Stanza objects
+
+Unit tests
+
+--- xep_0199
+
+Stanza objects
+
+Unit tests
+
+Clean commented code
+
+Use the new scheduler
+
+
+
+-- Documentation
+
+Document the Zen/Tao/Whatever of SleekXMPP to explain design goals and decisions
+
+Write architecture description
+
+XMPP:TDG needs to be rewritten.
+
+Need to update docs that reference old JID attributes of sleekxmpp objects
+
+Page describing new JID class
+
+Message page needs updating
+
+Iq page needs to be written
+
+Make guides to go with example.py and component_example.py
+
+Page on xmlstream.matchers
+
+Page on xmlstream.handlers, especially waiters
+
+Page on using xmlstream.scheduler