Open Issues/To-Do Items |
Open Issues/To-Do Items |
|
|
Targeted for 0.5 Final Release |
Targeted for 0.5 Alpha 1 |
|
|
|
* Fix issue w/reading XMI 1.1 files where metamodel has nested packages |
|
|
|
* Clean up __class_provides__ so that it isn't just something randomly |
|
poked in by binding.Once(); it needs a clean infrastructure/interface. |
|
|
|
* Refactor "Pythonic" UML 1.3 extensions so they're usable for most |
|
MOF-aligned metamodels (e.g. all UML and CWM versions) |
|
|
|
* Remove deprecated items from peak.model: Feature, Reference, Package, |
|
Model, Namespace, DataType, etc. |
|
|
|
* Get XMI writing in place, w/transaction support |
|
|
|
* Updated reference docstrings for 'peak.api', 'peak.binding', |
|
'peak.config', 'peak.exceptions', and 'peak.naming'. |
|
|
|
* Finish tutorial chapter 2 (?) |
|
|
|
Targeted for 0.5 Alpha 2 |
|
|
|
* On-the-fly class combination (think "runtime module inheritance", |
|
without the modules) for DMs. |
|
|
|
* ZConfig support, probably in the form of generating ZConfig schemas |
|
from 'peak.model' or MOF models, but maybe in the form of 'fromZConfig' |
|
constructor methods as well. |
|
|
|
* 'peak.running' refactorings: use standard 'logging' module's log levels, |
|
add 'logging' distro to 'peak.util' for 2.2 backward compatibility, |
|
make daemons based on 'peak.model' (or at least define ZConfig schemas), |
|
and possibly adjust cluster stuff to work off ZConfig primary and |
|
generate clustertools file(s). App startup tools based on ZConfig and |
|
PEAK-style .ini files. |
|
|
|
* 'peak.naming' refactorings: 'peak.model'-based syntax utilities for |
|
creating address syntaxes. |
|
|
|
Targeted for 0.5 Final Release (or sooner) |
|
|
General |
General |
|
|
* Update tutorial documentation |
* Tutorial complete through chapter 4 |
|
|
|
peak.storage |
|
|
|
- unit tests for more complex object scenarios: references, thunks..? |
|
|
|
- lock management interfaces/API |
|
|
|
- docstrings for reference |
|
|
|
peak.model |
|
|
|
- clean up TW docstrings & interfaces |
|
|
|
peak.naming |
|
|
|
- useful example "flat" naming context (e.g. like AppUtils.URLkeys) |
|
|
|
- useful example hierarchical naming context (e.g. like JNDI's LDAP |
|
context or filesystem context) |
|
|
|
- rework smtp: to return a factory object that supports open(). |
|
Also think about whether smtp should move elsewhere. Maybe |
|
there should be peak.network or peak.internet for things like |
|
smtp, ftp, etc contexts? |
|
|
|
peak.running |
|
|
|
- make 'cluster' parser complain about things that would cause |
|
the clusterit tools to choke or barf on the file, or which would |
|
produce ambiguous or unintended results. |
|
|
|
- simple daemons comparable to those in MetaDaemon, unit tests |
|
|
|
- docstrings for reference |
|
|
|
|
|
peak.config |
|
|
|
- "Rule"-oriented configuration files (section specifies component |
|
rather than property name prefix), so that daemons and other simple |
|
apps can be fully configured and run via a config file. |
|
|
|
peak.util |
|
|
|
- docstrings for reference |
|
|
|
- more unit tests? |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Database |
|
|
|
* Create test suite to check proper transactional functioning, cache |
|
consistency, queueing behavior, and typemap management. |
|
|
|
* Update Interfaces to reflect current API, and document internals |
|
|
|
|
|
|
|
Future Releases |
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.) |
|
|
|
|
Simulator/Module Inheritance |
Simulator/Module Inheritance |
|
|
* Need a strategy for handling "del" operations; they are currently |
* Need a strategy for handling "del" operations; they are currently |
pass of importing a module (prior to running 'setupModule()') |
pass of importing a module (prior to running 'setupModule()') |
|
|
|
|
Documentation/Tests/General |
|
|
|
* Create tutorials/examples based on actual uses |
|
|
|
|
|
Messaging/ObjectSpaces |
Messaging/ObjectSpaces |
|
|
* Support for sending and receiving remote cache invalidation |
* Support for sending and receiving remote cache invalidation |
messages between RecordManagers. |
messages between RecordManagers. |
|
|
|
|
peak.model |
|
|
|
* Review other-end-notification protocols in the light of managed storage |
|
models (e.g. database Records using virtual sequence objects as fields) |
|
|
|
* Marshalling interface in Services; implementations for Enumeration, etc. |
|
|
|
* More S-E-F metadata: features, subclasses, svc.<->class, nested services |
|
|
|
* Persistent SEF module, with Base.__getstate__ supporting omission |
|
of Once attributes, and DynamicBinding setting _p_changed on |
|
instantiation. |
|
|
|
* A way to generate Z3 Interfaces from Feature-based specifications? |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
peak.model |
|
|
* Implement WarpCORE-oriented structural model, w/Querying support |
* Implement WarpCORE-oriented structural model, w/Querying support |
|
|
* "Indexed" version of in-memory model? |
* "Indexed" version of in-memory model? |
|
|
* "Persistent" StructuralModel (indexes w/BTrees? Catalog?) |
|
|
|
Queries |
Queries |
|
|
have their meaning assigned by the StructuralModel implementation? |
have their meaning assigned by the StructuralModel implementation? |
|
|
|
|
peak.metamodels.uml |
|
|
|
* Need to write an MMX or XMI -> Python generator, and hook it back up into |
|
the UML package, since we're right now relying on a module generated |
|
by code that depends on stuff which is going away. |
|
|
|
* 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) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
peak.metamodels.uml |
|
|
peak.metamodels.xmi |
* Helper methods in Elements & Services for marshalling, common queries, etc. |
|
|
* Re-org to self-contain all XMI stuff inside an _XMI sub-component/service |
|
|
|
* Refactoring to pure S-E-F model using Persistence |
* Generator framework |
|
|
* Document version of standard used |
- Tagged values in stereotypes vs. main values? |
|
|
* Metamodel identity/version checking |
- Should tagged values be copied directly into templates? Treated as |
|
Python expressions? |
|
|
* XMI.Writing |
- Should Services be generated using an Element class' "static" |
|
(class-scope) methods/attributes? |
|
|
* Strict parsing and/or diagnostics on files that don't match the metamodel? |
- Are association-ends scoped? |
|
|
* UUID/GUID support |
- Would it be better to seperate them? |
|
|
* Support for advanced references, external references? |
- What determines whether an implemented Service actually stores objects |
|
or delegates this to its subclass services? |
|
|
* XML Namespaces (do any current XMI tools need this? Which spec version |
* Simple Zope product demo (upload XMI, then browse the model via the web) |
requires this?) |
|
|
|
* DOM StructuralModel (so files can be edited without affecting vendor XMI |
|
extensions) |
|
|
|
|
|