1 2004-09-07 Dick Porter <dick@ximian.com>
3 * Process.cs: Throw documented exceptions when getting stdin,
4 stdout or stderr and they haven't been redirected. Check that
5 CreatePipe didn't fail, throw exceptions if it did. Close
6 redirected streams when the process is disposed, rather than rely
7 on the GC disposing them later. Makes timeline much happier,
8 because it could run out of file descriptors between GC
11 2004-09-06 Dick Porter <dick@ximian.com>
13 * Process.cs: Make Dispose() actually dispose things.
15 2004-06-24 Atsushi Enomoto <atsushi@ximian.com>
17 * Process.cs : quick fix for UseShellExecute=false on windows. See
20 2004-06-17 Lluis Sanchez Gual <lluis@ximian.com>
22 * Process.cs: Added missing check in HasExited property.
24 2004-05-20 Gert Driesen (drieseng@users.sourceforge.net)
26 * EventLogPermissionAttribute.cs:
27 * PerformanceCounterPermissionAttribute.cs: adjust AllowMultiple
28 and Inherited to match .NET
30 2004-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
32 * Process.cs: separate the command and the arguments when calling
35 2004-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
37 * Process.cs: redirecting I/O is not permitted if UseShellExecute is
38 true. Also throw if FileName is null.
40 2004-04-06 Lluis Sanchez Gual <lluis@ximian.com>
42 * DiagnosticsConfigurationHandler.cs: If initializeData is provided,
43 use the constructor that only takes one string as parameter to
44 construct the listener. The name is set using the Name property, not the
47 * TextWriterTraceListener.cs: In Write*, do nothing if no writer was
50 2004-03-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
52 * Process.cs: use the ISynchronizeInvoke object to invoke the event.
53 Implemented Close, CloseMainWindow and Kill.
55 2004-03-23 Ben Maurer <bmaurer@users.sourceforge.net>
57 * Switch.cs: Don't throw when there is no switches section.
59 2004-03-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
61 * Process.cs: support EnableRaisingEvents + Exited event.
63 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
65 * Process.cs: patch by Gert Driesen that fixes WaitForExit when the
66 timeout is int.MaxValue.
68 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
70 * Process.cs: added environment variables setting support and also
71 send useShellExecute to the runtime.
73 * ProcessStartInfo.cs: support EnvironmentVariables. MS uses
74 StringDictionary, which turns keys into lowercase. We don't do that.
76 2004-02-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
78 * Process.cs: ExitCode and ExitTime check that the process is finished.
80 2003-12-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
82 * Process.cs: if there's an error when starting the process, the 'pid'
83 field contains the GetLastError code. Use that for the Win32Exception.
85 2003-12-06 Martin Baulig <martin@ximian.com>
87 * DefaultTraceListener: Don't use `where' in variable names.
89 2003-11-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
91 * ICollectData.cs: Fixed signature
93 2003-11-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
95 * ICollectData.cs: Added missing attribute
97 2003-07-27 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
99 * SRDescriptionAttribute.cs: Moved to System directory
101 2003-07-21 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
103 * EventLog.cs: Implementation handling
104 * EventLogImpl.cs: Added, contains an platform independent empty implementation
107 2003-07-18 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
109 * AlphabeticalEnumConverter.cs: Added
110 * EventLogEntry.cs: Implemented
111 * EventLogPermissionEntryCollection.cs: Fixed signature and implementation of indexer
112 * EventLogTraceListener.cs: Fixed signature
113 * PerformanceCounter.cs: Added missing attribute
114 * PerformanceCounterType.cs: Added missing attribute
115 * SRDescriptionAttribute.cs: Added and implemented
117 2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
119 * CounterCreationData.cs:
122 * PerformanceCounter.cs:
125 * ProcessStartInfo.cs:
126 * ProcessThread.cs: Reworked attributes based on the new Consts scheme
128 2003-07-14 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
130 * PerformanceCounterCategory.cs: Fixed signatures
132 2003-07-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
134 * PerformanceCounter.cs: Implemented or implementation added
136 2003-07-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
138 * DiagnosticsConfigurationHandler.cs: Removed a never used variable
139 * EventLog.cs: Small update to prevent a warning
140 * EventLogPermission.cs: Implemented or implementation added
141 * EventLogPermissionAttribute.cs: Implemented or implementation added
142 * EventLogPermissionEntry.cs: Implemented or implementation added
143 * EventLogPermissionEntryCollection.cs: Implemented or implementation added
144 * EventLogTraceListener.cs: Implemented or implementation added
145 * PerformanceCounterManager.cs: Implemented or implementation added
146 * PerformanceCounterInstaller.cs: Made internal
147 * PerformanceCounterCategory.cs: Implemented few members
148 * PerformanceCounterPermission.cs: Implemented or implementation added
149 * PerformanceCounterPermissionAttribute.cs: Implemented or implementation added
150 * PerformanceCounterPermissionEntry.cs: Implemented or implementation added
151 * PerformanceCounterPermissionEntryCollection.cs: Implemented or implementation added
153 2003-07-07 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
155 * EventLog.cs: Removed unneccesary attribute according to corecompare
156 * EventLogEntry.cs: Removed unneccesary attribute according to corecompare
157 * Process.cs: Removed unneccesary attributes according to corecompare, added attribute
158 * ProcessModule.cs: Removed unneccesary attribute according to corecompare
159 * ProcessStartInfo.cs: Removed unneccesary attribute according to corecompare
160 * ProcessThread.cs: Removed unneccesary attribute according to corecompare, fixed signature
162 2003-07-05 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
164 * InstanceDataCollectionCollection.cs: Corrected wrong signature
165 * EventLog.cs: Missing attributes added, redirected some class members
166 * EventLogEntry.cs: Missing attributes added
167 * EventLogInstaller.cs: Made internal
169 2003-07-02 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
171 * CounterCreationData.cs: Added missing attributes
172 * CounterSample.cs: Implemented missing rest, fixed signature
173 * CounterSampleCalculator.cs: Added private constructor, redirected function
174 * Process.cs: Added attributes, added event mechanism
175 * ProcessModule.cs: Added missing attributes
176 * ProcessModuleCollection.cs: Redone using the already inherited-from ArrayList. Simplifies this a LOT
177 * ProcessStartInfo.cs: Added missing attributes, moved internal fields to the begining of the file, restyling
178 * ProcessThread.cs: Added missing attributes, added pseudo constructor
179 * ProcessThreadCollection.cs: Implemented
180 * PerformanceCounterPermission.cs: Fixed typo in class name
181 * PerformanceCounterPermissionAccess.cs: Added attributes, fixed wrong member
183 2003-03-19 Dick Porter <dick@ximian.com>
185 * Process.cs: Implement HasExited, fixes bug 39267
187 2003-03-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
189 * Process.cs: throw an exception when the executable cannot be found.
191 2002-12-20 Jonathan Pryor <jonpryor@vt.edu>
192 * DiagnosticsConfigurationHandler.cs:
193 - Don't assume that optional attributes are always present
194 - <assert/> can't have any child nodes
195 - Change in semantics: if the attribute isn't present,
196 GetAttribute() returns null, not "". This allows us to
197 differentiate between an attribute not being present and an
198 attribute with an empty value.
199 - Translate exceptions if a TraceListener type is invalid
201 2002-12-19 Jonathan Pryor <jonpryor@vt.edu>
202 * TraceListenerCollection.cs: IndentLevel and IndentSize shouldn't be
203 hardcoded; they should be set to whatever TraceImpl is using (which
204 in turn may have been set by the .config file, so we should get the
205 user-specified values in added listeners).
206 * TraceListener.cs: Make sure that indents are initially written. This
207 allows code that uses Trace.Indent() before a Trace.WriteLine() to be
209 * TraceImpl.cs: provide a static constructor to explicitly specify the
210 ordering of initialization, in particular the ordering of
211 TraceImpl.Listeners and the reading of the .config file (by
212 accessing DiagnosticsConfiguration.Settings). This (hopefully)
213 ensures that the Listeners collection is initialized before the
214 .config file is read in, as the DiagnosticsConfigurationHandler will
215 directly modify the listeners collection.
216 The DiagnosticsConfigurationHandler assumes this so that it can
217 <add/> and <remove/> trace listeners and set the logfile for the
218 DefaultTraceListener.
221 2002-12-18 Jonathan Pryor <jonpryor@vt.edu>
222 * BooleanSwitch.cs: Complete re-write. It works now.
223 * DefaultTraceListener.cs:
224 - Use `const' strings, so I don't worry about copy/paste errors
225 - Give `AssertUiEnabled' an actual backing member
226 * DiagnosticsConfigurationHandler.cs: To avoid race conditions, let the
227 configuration handler set .config-specified properties on
228 DefaultTraceListener (AssertUiEnabled, LogFileName) and TraceImpl
229 (AutoFlush, IndentSize).
230 * Switch.cs: Near complete re-write. Actually works, and is (should be)
231 comformant with .NET behavior. Changed member names because they
232 were confusing me. (Yes, that doesn't say much about my memory.)
233 * TextWriterTraceListener.cs: Append text to already existing files,
234 don't overwrite them.
236 - Added private destructor, to ensure no instances are created.
237 - Move members declarations to be closer to each other.
238 * TraceSwitch.cs: Complete re-write. It works now.
240 2002-12-17 Jonathan Pryor <jonpryor@vt.edu>
241 * DiagnosticsConfigurationHandler.cs: Implement so that .config files
242 support <system.diagnostics> sections.
244 2002-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
246 * DefaultTraceListener.cs: now OutputDebugStringW is called from an
247 internal call (update your runtime!). No more warnings in linux.
249 2002-10-31 Dick Porter <dick@ximian.com>
251 * Process.cs: MonoIO methods now have an error parameter
253 2002-10-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
255 * DefaultTraceListener.cs: changed OutputDebugString to
256 OutputDebugStringW (no more warnings under windows). Also a few style
259 2002-10-23 Dick Porter <dick@ximian.com>
261 * Process.cs: Redirected standard input needs to have AutoFlush set
263 2002-09-27 Dick Porter <dick@ximian.com>
265 * Process.cs: Implemented {get_,set_}{Min,Max}WorkingSet,
266 ProcessName, GetProcessById, GetProcesses, GetProcessesByName.
267 Pass the working directory to Start. Pass the program and args in
268 one string to be used with the second arg of CreateProcess, so it
269 will search the path.
271 2002-09-19 Nick Drochak <ndrochak@gol.com>
273 * TraceImpl.cs: Remove debug prints
275 2002-09-19 Nick Drochak <ndrochak@gol.com>
277 * TraceListenerCollection.cs: Set Indet level and size to default
278 values. The values from TraceImpl might have been changed.
280 2002-08-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
283 * TextWriterTraceListener.cs: IDisposable fixes.
285 2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
287 * Process.cs: class status based fixes.
289 2002-07-20 Dick Porter <dick@ximian.com>
291 * Process.cs: Implement file handle redirection
293 2002-07-13 Jonathan Pryor <jonpryor@vt.edu>
294 * CounterCreationData.cs: Implemented
295 * CounterCreationDataCollection.cs: Implemented
296 * CounterSample.cs: Stubbed Out
297 * CounterSampleCalculator.cs: Stubbed Out
298 * InstanceData.cs: Implemented
299 * InstanceDataCollection.cs: Implemented
300 * InstanceDataCollectionCollection.cs: Implemented
301 * MonitoringDescriptionAttribute.cs: Implemented
302 * PerformanceCounter.cs: Stubbed Out
303 * PerformanceCounterCategory.cs: Stubbed Out
304 * PerformanceCounterInstaller.cs: Stubbed Out
305 * PerformanceCounterManager.cs: Stubbed Out
306 * PerformanceCounterPermission.cs: Stubbed Out
307 * PerformanceCounterPermissionAccess.cs: Implemented
308 * PerformanceCounterPermissionAttribute.cs: Stubbed Out
309 * PerformanceCounterPermissionEntry.cs: Stubbed Out
310 * PerformanceCounterPermissionEntryCollection.cs: Implemented
311 * PerformanceCounterType.cs: Implemented
314 2002-06-25 Dick Porter <dick@ximian.com>
316 * Process.cs: Process forking and waiting, and some support functions
318 * ProcessStartInfo.cs: Implemented the bits needed for basic
321 * ProcessModule.cs: Implemented
323 * ProcessModuleCollection.cs: Mostly implemented
325 * FileVersionInfo.cs: Implemented
327 2002-06-16 Jonathan Pryor <jonpryor@vt.edu>
328 * ICollectData.cs: Implemented
329 * TraceImpl.cs: Setting IndentLevel, IndentSize should change the
330 corresponding properties on all current TraceListeners.
331 Also, to answer the FIXME message: Yes, the properties in TraceListener
332 need to be [ThreadStatic] as well.
333 * TraceListenerCollection.cs: When adding a TraceListener, the TraceListener
334 should have its properties set to the current TraceImpl property values.
335 * TraceListener.cs: Make indentSize, lndentLevel [ThreadStatic].
337 2002-06-09 Jonathan Pryor <jonpryor@vt.edu>
338 * EntryWrittenEventArgs.cs: Implemented
339 * EntryWrittenEventHandler.cs: Implemented
340 * EventLog.cs: Stubbed out
341 * EventLogEntry.cs: Stubbed out
342 * EventLogEntryCOllection.cs: Implemented.
343 * EventLogEntryType.cs: Implemented
344 * EventLogInstaller.cs: Stubbed out
345 * EventLogPermission.cs: Stubbed out
346 * EventLogPermissionAccess.cs: Implemented
347 * EventLogPermissionAttribute.cs: Stubbed out
348 * EventLogPermissionEntry.cs: Stubbed out
349 * EventLogPermissionEntryCollection.cs: Stubbed out
350 * EventLogTraceListener.cs: Stubbed out
352 2002-05-29 Jonathan Pryor <jonpryor@vt.edu>
353 * DefaultTraceListener.cs: Implemented MONO_TRACE support
355 2002-05-27 Jonathan Pryor <jonpryor@vt.edu>
356 * Moved public API documentation for the following files to the
357 /mcs/docs/apidocs/xml/en/System.Diagnostics directory:
359 - DefaultTraceListener.cs
360 - DiagnosticsConfigurationHandler.cs
362 - TextWriterTraceListener.cs
366 - TraceListenerCollection.cs
369 2002-04-10 Jonathan Pryor <jonpryor@vt.edu>
371 * TraceListenerCollection.cs: Corrected indexer property to provide the
372 correct return value and implement the IList indexer property correctly.
374 2002-04-07 Jonathan Pryor <jonpryor@vt.edu>
376 * TraceListener.cs: Fix stack overflow bug
377 * DefaultTraceListener.cs: Implement log file support
379 2002-04-04 Dick Porter <dick@ximian.com>
381 * ThreadWaitReason.cs:
383 * ThreadPriorityLevel.cs:
384 * ProcessWindowStyle.cs:
385 * ProcessThreadCollection.cs
387 * ProcessStartInfo.cs:
388 * ProcessModuleCollection.cs: Stub out more classes needed for Process
390 2002-03-31 Dick Porter <dick@ximian.com>
393 * ProcessPriorityClass.cs:
395 * FileVersionInfo.cs: Stub out classes needed for Process
397 2002-03-08 Jonathan Pryor <jonpryor@vt.edu>
399 * Debug.cs: Clean up (lots of code can be shared with Trace.cs, which
400 is why TraceImpl.cs is introduced), "DEBUG" conditional support
401 * TraceListener.cs: Proper implementation of Dispose pattern;
402 implementatino of non-abstract methods in terms of abstract methods
403 * TraceListenerCollection.cs: check 'object' types before adding
404 * TextWriterTraceListener.cs: properly implement Dispose pattern;
405 handle NeedIndent and WriteIndent
406 * Trace.cs: new file; provides Trace functionality, "TRACE" conditional
408 * DefaultTraceListener.cs: new file; the default trace listener
410 2002-01-17 Miguel de Icaza <miguel@ximian.com>
411 * TraceListenerCollection.cs: Remove Warnings.
413 2002-01-06 Ravi Pratap <ravi@ximian.com>
414 * Switch.cs, TraceListenerCollection.cs : Decorate incomplete bits
415 with the MonoTODO attribute.
417 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
418 * Added Debug.cs to the build.
420 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
421 * Added preliminary TraceListenerCollection.cs to the build.
423 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
424 * Added TraceListener.cs, TextWriterTraceListener.cs, and
425 DefaultTraceListener.cs to the build and moved them into the
428 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
429 * Added DiagnosticsConfigurationHandler.cs to the build.
431 2001-09-09 Nick Drochak <ndrochak@gol.com>
432 * BooleanSwitch.cs: Make this class use it's parent class's features. Namely, use SwitchSetting
433 so that we can get OnSwitchSettingChanged() to fire for free.
435 2001-09-09 Nick Drochak <ndrochak@gol.com>
436 * ChangeLog: added this file
437 * Switch.cs: call OnSwitchSettingChanged() when the switch setting is, yes you gessed it, changed.