.. todolist::
.. todo:: - Write dedicated utilities to optimize particular games (start with Oblivion, maybe eventually also do Fallout 3, Morrowind, etc.).
.. todo:: Aion caf format (MtlNameChunk header?).
.. todo:: refactoring plans - what's up with get_global_child_names? - common base classes for pyffi.object_models.xml.basic.BasicBase/StructBase and pyffi.object_models.xsd.SimpleType/ComplexType (e.g. pyffi.ObjectModel.SimpleType/ComplexType) - derive object_models.array_type and object_models.StructType from common subclass pyffi.object_models.ComplexType, use these then as base classes for object_models.xml.array and object_models.xml.struct\_.StructBase - use pyffi.utils.graph for all object_models.XXX implementations - upgrade QSkope and XML model to use GlobalNode instead of the current ad hoc system with Refs - improve the abstract object_models.Delegate classes (i.e. naming, true abstract base classes, defining a common interface); also perhaps think about deriving these delegate classes from TreeLeaf (only leafs have editors!)? - ditch version and user_version from the object_models interface, and instead use object_models.Data as a global root element that contains all file information with a minimal format independent interface; implementation plan (this is already partially implemented, namely in the nif format): + use abstract Data and Tree base classes fo the XSD parser, in subsequent 2.x.x releases + update the XML parser to follow the same scheme, when switching from 2.x.x to 3.0.0, and document the 2.x.x -> 3.0.0 migration strategy + deprecate the old methods (XxxFormat.read, XxxFormat.write, XxxFormat.getVersion, and so on) in 3.x.x + remove old method in 4.x.x - one of the aims is that qskope no longer relies on any object_models.xml/object_models.xsd specific implementations; if it only relies on the abstract base classes in object_models.Graph and object_models.Data then future expansions are a lot easier to cope with; in particular, qskope should never have to import from object_models.XXX, or Formats.XXX
.. todo:: Doctests for all spells.
.. todo:: Improve overall documentation, for instance: - add docstrings for all spells - add docstrings for all spell methods
.. todo:: * move all regression tests to the tests directory (but keep useful examples in the docstrings!) * add spell support for qskope directly using the pyffi.spells module * allow qskope to create new spells, from a user supplied spells module - custom spell module creation wizard (creates dir structure for user and stores it into the configuration) - custom spell creation wizard (adds new spell to user's spell module) - automatic templates for typical spells * pep8 conventions - resolve all complaints from cheesecake's pep8 checker