|
|
Targeted for 0.5 Alpha 3 |
Targeted for 0.5 Alpha 3 |
|
|
* Refactor binding and naming frameworks to |
* peak.ddt |
|
|
- make indirection convenient (e.g. bind to looking up something from |
- A bit more doc and demos |
another binding) |
|
|
|
- eliminate remaining introspection/'isinstance()' checks |
|
|
|
|
|
* peak.binding |
|
|
|
- Cleanup/document attribute binding interface |
|
|
|
- Attribute -> AttribDef |
|
|
|
- binding.AttribDef has an adequate docstring |
|
|
|
- Review all current usage of NameNotFound in binding and naming |
|
packages. If possible, push default values closer to the point of |
|
retrieval. (The idea is to minimize the possibility that an unrelated |
|
NameNotFound error gets hidden by a routine catching NameNotFound |
|
in order to return a default value.) |
|
|
|
- Ensure default __repr__'s for all bindings are acceptable |
|
|
|
- Update tutorial for current kwargs |
|
|
|
- Investigate whether suggestParentComponent() should be suppressed when |
|
the value is computed by the binding, or if perhaps 'suggestParent' |
|
should be set to 'False' by default for some kinds of bindings. |
|
|
|
|
|
|
|
|
|
|
|
|
|
* peak.web (some of this may get bumped to alpha 4) |
|
|
|
- default error templates, w/useful info |
|
|
|
- Refactor skin/layer/resource machinery so that layers can be shared |
|
between skins (because i18n will probably want skins and that's going |
|
to greatly multiply memory requirements) |
|
|
|
- clean up DOMlet parse/build framework (e.g. add line number info) |
|
|
|
- A set of simple, basic form controls that handle value rendering only |
|
(form metadata, validation, etc. will be handled by peak.web.forms in |
|
a later release) |
|
|
|
- try/catch DOMlet (and related error rendering interface/framework) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Targeted for 0.5 Alpha 4 |
|
|
|
* 'ILoadingService', 'IObjectLoader' and 'load:kind@URL' scheme |
|
|
|
* peak.config |
|
|
|
- "service zones" or "service groups" to do smarter service groupings |
|
|
|
- Replace IMainLoop activity monitoring with a plugin-based mechanism? |
|
|
|
- plugin keys ordered by definition sequence, rather than randomly |
|
|
|
- ZConfig factory support to allow "smart" interpretation of strings, |
|
section names, etc. |
|
|
|
- Writable and subscribable config sources, including editable .ini's |
|
|
|
* peak.running.logs |
|
|
|
- Separate formatters from publishers |
|
|
|
- ZConfig schema for logging plugins, allowing multiple handlers/category |
|
|
|
* peak.running.commands |
|
|
|
- Add "error formatting" and "error reporting" services |
|
|
|
- Add option parsing framework based on optparse (backported to 2.2) |
|
|
|
* peak.binding |
|
|
|
- Cleanup/document attribute binding interface |
|
|
|
* peak.running.timers |
|
|
|
- Factor out state into separate object so timers aren't shared state |
|
|
|
- Look at possible integration of peak.query and cursor formatters, in |
|
order to view stats as an in-memory mini-DB w/reporting. |
|
|
Targeted for 0.5 Alpha 4 |
|
|
|
* Transaction/storage refactorings |
* Transaction/storage refactorings |
|
|
|
|
- DM.find()/DM.get() queries |
- DM.find()/DM.get() queries |
|
|
|
|
* peak.web |
* peak.web |
|
|
|
- clean up DOMlet parse/build framework (e.g. add line number info) |
|
|
|
- default error templates, w/useful info |
|
|
|
- A set of simple, basic form controls that handle value rendering only |
|
(form metadata, validation, etc. will be handled by peak.web.forms in |
|
a later release) |
|
|
|
- try/catch DOMlet (and related error rendering interface/framework) |
|
|
- allow use of // in DOMlets' data paths, to access resource space |
- allow use of // in DOMlets' data paths, to access resource space |
|
|
- DOMlets for layout/region, as defined in "A layout framework":http://www.eby-sarna.com/pipermail/transwarp/2003-August/000684.html |
- DOMlets for layout/region, as defined in "A layout framework":http://www.eby-sarna.com/pipermail/transwarp/2003-August/000684.html |
|
|
- the return of the Specialist |
- the return of the Specialist |
|
|
* "Pre-forking event driven services":http://www.eby-sarna.com/pipermail/transwarp/2003-August/000697.html |
|
|
|
* Have a way to easily in-line custom component usage (e.g. automatically |
* Have a way to easily in-line custom component usage (e.g. automatically |
create a subclass component with specified 'bindTo' bindings to get its |
create a subclass component with specified 'Obtain' or 'Make' bindings to |
configuration). |
get its configuration). |
|
|
* Implement "contextual protocols" (c.f. "object teams") and "parameterized |
|
protocols" (E.g. 'ListOf(IFoo)', 'MappingOf(keys=IBar,values=IBaz)') |
|
|
|
|
|
|
|
|
|
|
|
|
* Drop 'persistence' package, since ZODB 4 has been derailed. Change to |
|
"state-delegation" model, which will integrate better with 'peak.query'. |
|
|
|
|
|
|
|
|
Targeted for version 0.6 |
Targeted for version 0.6 |
|
|
|
* Functional/acceptance tests that access "real" databases, LDAP, etc. |
|
|
* Get XMI writing in place, w/transaction support |
* Get XMI writing in place, w/transaction support |
|
|
* Generate UML 1.5 and CWM 1.0 and 1.1, and add them to the |
* Generate UML 1.5 and CWM 1.0 and 1.1, and add them to the |
|
|
* Lock management interfaces/API for peak.storage |
* Lock management interfaces/API for peak.storage |
|
|
|
* Support for sending and receiving remote cache invalidation |
|
messages between DataManagers. |
|
|
* Make 'cluster' parser complain about things that would cause |
* Make 'cluster' parser complain about things that would cause |
the clusterit tools to choke or barf on the file, or which would |
the clusterit tools to choke or barf on the file, or which would |
produce ambiguous or unintended results. (Or replace with ZConfig |
produce ambiguous or unintended results. (Or replace with ZConfig |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Future Releases |
|
|
|
(Note: some of the below is held-over from TransWarp and may no longer be |
|
relevant as written, they are being kept on this list as placeholders for |
|
ideas or problem areas that may need to be re-considered in future.) |
|
|
|
Miscellaneous |
|
|
|
* Functional tests that access "real" databases, LDAP, etc. |
|
|
|
Simulator/Module Inheritance |
|
|
|
* Allow 'declareModule()' to bootstrap non-existent modules; this might |
|
let us create "virtual packages" made by assembling other packages and |
|
modules. |
|
|
|
* Need a strategy for handling "del" operations; they are currently |
|
untrapped. This might be okay under most circumstances, but need to |
|
consider edge cases. |
|
|
|
* 'makeClass()' should probably become part of the core API, where |
|
it can be used to resolve __metaclass__ conflicts during the first |
|
pass of importing a module (prior to running 'setupModule()') |
|
|
|
|
|
Messaging/ObjectSpaces |
|
|
|
* Support for sending and receiving remote cache invalidation |
|
messages between DataManagers. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
peak.model |
|
|
|
* Implement WarpCORE-oriented structural model, w/Querying support |
|
|
|
* "Indexed" version of in-memory model? |
|
|
|
|
|
Queries |
|
|
|
* Refactor to use interfaces, if appropriate |
|
|
|
* Incorporate into AbstractModel? |
|
|
|
- Pros: |
|
|
|
* Queries always available |
|
|
|
* Each StructuralModel implementation can easily include its own |
|
performance-tuned version of the basic items. |
|
|
|
- Con: default implementation doesn't perform well on large datasets |
|
|
|
* How much of framework needs extensibility? Should the predicate |
|
classes be placed in the StructuralModel's namespace so that predicates |
|
have their meaning assigned by the StructuralModel implementation? |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
peak.metamodels.uml |
|
|
|
* Helper methods in Elements & Services for marshalling, common queries, etc. |
|
|
|
* Generator framework |
|
|
|
- Tagged values in stereotypes vs. main values? |
|
|
|
- Should tagged values be copied directly into templates? Treated as |
|
Python expressions? |
|
|
|
- Should Services be generated using an Element class' "static" |
|
(class-scope) methods/attributes? |
|
|
|
- Are association-ends scoped? |
|
|
|
- Would it be better to seperate them? |
|
|
|
- What determines whether an implemented Service actually stores objects |
|
or delegates this to its subclass services? |
|
|
|
* Simple Zope product demo (upload XMI, then browse the model via the web) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|