mirror of
https://github.com/correl/SleekXMPP.git
synced 2024-11-30 19:19:55 +00:00
160 lines
3.5 KiB
Text
160 lines
3.5 KiB
Text
|
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
|