[Subversion] / PEAK / CHANGES.txt |
No default branch
Bookmark a link to HEAD:
(view)
(download)
Fixed a formatting error for the online API reference (now up-to-date at http://www.telecommunity.com/PEAK/doc/). Of course, it's only as complete as the docstrings to date. :(
Changing docs from TransWarp->PEAK, referenced new site at http://www.telecommunity.com/PEAK/, prepping docs for 0.5a1 release.
Added 'TWX' package for extensions; added 'TWX.Diagrams.GraphViz' diagramming utility module. Very hacky and first-draft, with no unit tests, but I've manually verified most of the functionality so far.
Added support for pickling instances of nested classes; this required changing all uses of '__name__' which needed an unqualified class name. Notably, one should use 'feature.attrName' instead of 'feature.__name__' in verb definitions.
SEF.DynamicBinding is now SEF.AutoCreated, and all AutoCreatable classes like SEF.App and SEF.Service must now have an '__init__' method that accepts their SEF parent component. This lets such objects have access to the SEF hierarchy during initialization. (Note that this means any '__init__' methods of such classes must be revised to take this into consideration. See TW.Database.DataModel.Database for an example of such a revision.) Also, I dropped the unused SEF.StaticBinding class.
'setupModule()' and 'adviseModule()' will now issue warnings for most questionable code structures and variable redefinitions that might not work the way you'd expect or intend under module inheritance.
Added tests and documentation for 'adviseModule()' API
Added a 'test' command to 'setup.py' that installs and then tests all of TransWarp. (It saves me time running the unit tests while I'm writing new code.)
Added warnings for detectable module-level modifications of mutables in modules which are used for inheritances or advice. Added an API function, 'configure(object, attr1=val, attr2=val,...)' to safely set attributes of mutables that might have been defined in a derived module. Also, misc. updates to TODO.
Removed 'Meta.ClassInit' and '__class_init__' support. Use metaclass '__init__' methods instead; see 'TW.Database.DataModel.RecordTypeMC' for one example of the conversion.
Improved key integrity checks in DataModel: Record objects now disallow modification of key fields unless the old value is None, and cache collisions between records with supposedly unique keys will result in an AssertionError. Also, made the requirement of an LDAPConnection object more visible in Database.LDAPModel, and made misc. CHANGES/TODO updates.
Added 'SET' method (ala WarpCORE's set_X procedures) to TW.Utils.MiniTable.
Added more docs to TW.Utils.Code, and removed 'iterFromEnd()' method from code objects. Added experimental 'nextSplit' index to codeIndex objects that does top-level block analysis to allow splitting a code object into smaller routines.
Fixed the "reference to rebound class within another class" problem with module inheritance, as reported by (who else?) Ulrich Eck. :)
New-style features have landed! Lots o'docs and examples. CHANGES and TODO have been updated accordingly. Enjoy.
Fixed misc. bugs in DataModel, LDAPModel, Connections, and TW.Caching found by Ulrich Eck. Thanks Ulrich! Also, added a fix to ensure that non-existent records are invalidated by RecordType.getItem().
* Added basic Specialist implementation to 'TW.SEF.Basic', and reverted naming from 'TypeService' and 'ITypeService' to 'Specialist' and 'ISpecialist'. Updated 'TW.SEF.Interfaces' to reflect "self"-less convention for documenting methods. * Dropped obsolete 'TW.Database.Records' module.
Many changes in preparation for 0.2 final, including: * Added 'SEF.bindToParent()' and 'SEF.bindToNames()' specifiers to allow more flexible component parameter bindings. * Fixed the base class "rebind by name" bugs in module inheritance, and updated the documentation to more clearly reflect what it is that metaclass generation and module inheritance does and does not do. Added test cases to prevent regression of the rebind-by-name problem. * The 'setup.py' script features a new command, 'happy', which can be used to generate the API reference docs, and this command runs as part of the 'sdist' command to build source distributions. * The API reference docs in the source distribution has been moved from the 'doc' directory to 'docs/html/reference'. * Added 'CHANGES.txt' file.
cvs-admin@eby-sarna.com Powered by ViewCVS 1.0-dev |
ViewCVS and CVS Help |