37 mike 1.1 - Clean up and consolidate exception classes.
38
39 - Propagate underlying error messages across the CIM protocol.
40
41 - References:
42
43 - Validate arguments to CIMReference compound constructor and modifiers.
44 (namespaces, hosts, classnames, and keybindings)
45
46 - Be sure that escape sequences are handled inside of object names. For
47 example:
48
49 X.key1="Hello \"You\""
50
51 - Protocol:
52
53 - Improve protocol tracing to show messages in both directions.
54
55 - The TCPChannel::writeN() method blocks when the client and server
56 are in the same process. That is because the client cannot read
57 anything as long as writeN() is blocked on a synchronous write.
58 mike 1.1
59 - Figure out how to handle getProperty() return type.
60
61 - Provide ACE Channel implementation (for porting purposes)?
62
63 - Handle PARAMETER.REFARRAY in Procotol?
64
65 - Ignore extraneous XML elements (loosely valid).
66
67 - Porting:
68
69 - Replace "std::something" with "STD(something)"
70
71 - Replace "using namespace std" with "USING_NAMESPACE_PEGASUS"
72
73 - Aesthetics/Consistency/Usability:
74
75 - Change getLength() and getSize() to just size(): "Brevity is the soul
76 of genius and of Lingerie".
77
78 - Add methods to get objects by their names, in addition to index. For
79 mike 1.1 example:
80
81 CIMProperty CIMClass::getProperty(const String& name);
82
83 - Perform walkthrough to expose consistency problems.
84
85 - Distinguish between private and public classes (otherwise, users may
86 come to depend on classes with unstable interfaces).
87
88 - Documentation:
89
90 - Suggest newlines after methods.
91
92 - Suggest use of "/** ... */" instead of "///"
93
94 - Refine header file documentation.
95
96 - Write Pegasus Architecture Paper.
97
98 - Integrate DOC++ with make system (put all docs in doc tree):
99
100 mike 1.1 - Namespaces:
101
102 - Implement create and destroy namespace (according to the standard).
103
104 - Providers
105
106 - Add CIM-Server handles to provider interface.
107
108 - Implement MOF provider registration scheme (according to the standard).
109
110 - WBEM Query Language
111
112 - Find someone to work on standard.
113
114 - Implement leve-1 parser.
115
116 - MOF compiler:
117
118 - Work with Bob to identify work items.
119
120 - Threading
121 mike 1.1
122 - Write thread queuing document (input and output thread queue per
123 provider).
124
125 - Implement queuing.
126
127 - Make reference counted objects thread safe (Mutexing and atomic
128 increments).
129
130 - Connectors
131
132 - Work out basic concepts (write paper).
133
134 - Package up pegasus in Install Shield application.
135
136
137 - Install
138
139 - Need install mechanism for Unix and Windows.
140
141 - Interoperability
142 mike 1.1
143 - Fix reported bugs.
144
145 - Internationalization
146
147 - Handle UCS2 characters in XML (parsing and writing).
148
149 - Repository:
150
151 - Export to MOF.
152
153 - Miscellaneous
154
155 - Figure out how to handle CIM null values.
156
157 - Generalize iteration.
158
159 - Figure out how inheritance of keys works.
160
161 - Investiage weak assocations.
162
163 mike 1.1 - Provide conversions between DateTime and time_t.
164
165 - Constraint hanlding
166
167 - Enforce constraint qualifiers.
168
169 - Disallow resetting size of fixed length arrays.
170
171 - Optimization/Tuning
172
173 - Shrink object sizes.
174
175 - Use lighter I/O system (than C++ streams).
176
177 - Run Purify on all sources (port to Sun first).
178
179 - Optimize clear method on arrays (to not release memory).
180
181 - Porting
182
183 - Port to Solaris
184 mike 1.1
185 - Port to HPUX
186
187 - Port to AIX
188
189 - Testing
190
191 - Run Purify on all sources (port to Sun first).
192
193 - Run CIM/XML test suite.
194
195 - Server
196
197 - Use Service class in cimserver
198
199 - Implement Service class on Unix (daemonization from Comer book).
200
201 Short-term Items
202 ================
203
204 - Make HashTable take Equal template function argument.
205 mike 1.1
206 - Make InheritanceTree case-insensitive.
|