Fixes and Enhancements since Version 0.5 alpha 1 |
Fixes and Enhancements since Version 0.5 alpha 1 |
|
|
|
Changed, Enhanced, or Newly Deprecated Features |
|
|
|
- The signatures of the 'getObjectInstance()', 'getStateToBind()', and |
|
'getURLContext()' methods in the 'peak.naming' package have changed, to |
|
place the context or parent component as the first, non-optional argument. |
|
(If you don't know what these methods are for, you don't need to do anything |
|
about this, as they are part of the naming package's extensibility |
|
framework.) |
|
|
|
- 'EigenRegistry' and 'PropertyMap' no longer attempt to figure out whether |
|
implied (i.e. inherited) interfaces are more or less general with respect |
|
to a previous registration. This was behavior that emulated Zope adapter |
|
registries, but what we really wanted was more akin to a Zope "type" |
|
registry. The only parts of the test suite that used the old behavior |
|
were the tests specifically written to ensure that behavior! |
|
|
|
- 'binding.bindTo()' now accepts a 'default=' argument, whose value will be |
|
used in case of a 'NameNotFound' error. |
|
|
- DEPRECATED 'naming.ParsedURL'. It will disappear in 0.5 alpha 3 or beta. |
- DEPRECATED 'naming.ParsedURL'. It will disappear in 0.5 alpha 3 or beta. |
It is replaced by the new 'naming.URL.Base'. The 'naming.URL' package |
It is replaced by the new 'naming.URL.Base'. The 'naming.URL' package |
provides a new URL parsing framework based on 'peak.model'. Upgrading from |
provides a new URL parsing framework based on 'peak.model'. Upgrading from |
methods change slightly, and explicit field definitions (using |
methods change slightly, and explicit field definitions (using |
'model.structField' or similar) are required. See PEAK's 'URL.Base' |
'model.structField' or similar) are required. See PEAK's 'URL.Base' |
subclasses for examples. There is also a sophisticated parsing and |
subclasses for examples. There is also a sophisticated parsing and |
formatting framework that can be used in place of the old regex-based |
formatting framework (see the 'peak.naming.URL' and 'peak.util.fmtparse' |
approach. |
modules) that can be used in place of the old regex-based approach. |
|
|
|
- Added 'peak.util.fmtparse', a parsing and formatting framework, and |
|
integrated it with 'peak.model' so that any element type can have a |
|
syntax for parsing from, or formatting to, a string. |
|
|
- Added 'binding.whenAssembled(...)' as syntax sugar for |
- Added 'binding.whenAssembled(...)' as syntax sugar for |
'binding.Once(...,activateUponAssembly=True)'. |
'binding.Once(...,activateUponAssembly=True)'. |
'_getConfigData', 'getComponentName', or 'notifyUponAssembly', you need |
'_getConfigData', 'getComponentName', or 'notifyUponAssembly', you need |
to wrap them with 'binding.metamethod' now. |
to wrap them with 'binding.metamethod' now. |
|
|
|
- Made 'NOT_GIVEN' and 'NOT_FOUND' recognizable by humans (they 'repr' |
|
and 'str' to their names) and by Python (they can be pickled, and |
|
when restored they come back as the same object). |
|
|
|
|
|
Corrected Problems |
|
|
|
- Fixed 'naming.lookup()' and related APIs not setting the parent component |
|
of created objects without an explicitly supplied 'creationParent' keyword |
|
argument. This used to "sort of work" when we had implicit configuration |
|
parents, but was broken when we went "all explicit" for 0.5 alpha 1. |
|
|
|
- Fixed a problem where initializing single-valued immutable fields of |
|
'peak.model' types did not perform type/value normalization. |
|
|
|
- Fixed a problem where bindTo would use the attribute name as the |
|
default value for a lookup, if the requested name/property/utility |
|
was not found. |
|
|
- Fixed 'mof2py' generator script not working |
- Fixed 'mof2py' generator script not working |
|
|
- Fixed model.Element not getting parent component set when passed as a |
- Fixed model.Element not getting parent component set when passed as a |
|
|
- Fixed IndentedStream generating all-whitespace lines |
- Fixed IndentedStream generating all-whitespace lines |
|
|
- Made 'NOT_GIVEN' and 'NOT_FOUND' recognizable by humans (they 'repr' |
|
and 'str' to their names) and by Python (they can be pickled, and |
|
when restored they come back as the same object). |
|
|
|