1 2004-12-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3 * Process.cs: always pass the same arguments to the runtime.
5 2004-09-11 Sebastien Pouliot <sebastien@ximian.com>
7 * EventLogPermission.cs: Completed implementation.
8 * EventLogPermissionAccess.cs: Fixed enum values.
9 * EventLogPermissionEntry.cs: Added validation for machine names.
10 * EventLogPermissionEntryCollection.cs: Added synchronization
11 of entries with the base permission class.
12 * PerformanceCounterPermission.cs: Completed implementation.
13 * PerformanceCounterPermissionAccess.cs: Fixed enum values.
14 * PerformanceCounterPermissionEntry.cs: Added validations for machine
16 * PerformanceCounterPermissionEntryCollection.cs: Added synchronization
17 of entries with the base permission class.
19 2004-09-10 Sebastien Pouliot <sebastien@ximian.com>
21 * EventLogPermission.cs: Fixed initialization (TagNames and
22 PermissionAccessType).
23 * EventLogPermissionAccess.cs: Added new enums for NET_2_0 and added
24 [Obsolete] to some existing elements.
25 * EventLogPermissionAttribute.cs: Added missing validation to property
26 MachineName. Fixed changes for NET_2_0.
27 * PerformanceCounterPermission.cs: Fixed initialization (TagNames and
28 PermissionAccessType).
29 * PerformanceCounterPermissionAccess.cs: Added new enums for NET_2_0
30 and added [Obsolete] to some existing elements.
31 * PerformanceCounterPermissionAttribute.cs: Added missing validations
32 to properties (Path, MachineName). Fixed changes for NET_2_0.
34 2004-09-07 Dick Porter <dick@ximian.com>
36 * Process.cs: Throw documented exceptions when getting stdin,
37 stdout or stderr and they haven't been redirected. Check that
38 CreatePipe didn't fail, throw exceptions if it did. Close
39 redirected streams when the process is disposed, rather than rely
40 on the GC disposing them later. Makes timeline much happier,
41 because it could run out of file descriptors between GC
44 2004-09-06 Dick Porter <dick@ximian.com>
46 * Process.cs: Make Dispose() actually dispose things.
48 2004-06-24 Atsushi Enomoto <atsushi@ximian.com>
50 * Process.cs : quick fix for UseShellExecute=false on windows. See
53 2004-06-17 Lluis Sanchez Gual <lluis@ximian.com>
55 * Process.cs: Added missing check in HasExited property.
57 2004-05-20 Gert Driesen (drieseng@users.sourceforge.net)
59 * EventLogPermissionAttribute.cs:
60 * PerformanceCounterPermissionAttribute.cs: adjust AllowMultiple
61 and Inherited to match .NET
63 2004-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
65 * Process.cs: separate the command and the arguments when calling
68 2004-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
70 * Process.cs: redirecting I/O is not permitted if UseShellExecute is
71 true. Also throw if FileName is null.
73 2004-04-06 Lluis Sanchez Gual <lluis@ximian.com>
75 * DiagnosticsConfigurationHandler.cs: If initializeData is provided,
76 use the constructor that only takes one string as parameter to
77 construct the listener. The name is set using the Name property, not the
80 * TextWriterTraceListener.cs: In Write*, do nothing if no writer was
83 2004-03-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
85 * Process.cs: use the ISynchronizeInvoke object to invoke the event.
86 Implemented Close, CloseMainWindow and Kill.
88 2004-03-23 Ben Maurer <bmaurer@users.sourceforge.net>
90 * Switch.cs: Don't throw when there is no switches section.
92 2004-03-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
94 * Process.cs: support EnableRaisingEvents + Exited event.
96 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
98 * Process.cs: patch by Gert Driesen that fixes WaitForExit when the
99 timeout is int.MaxValue.
101 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
103 * Process.cs: added environment variables setting support and also
104 send useShellExecute to the runtime.
106 * ProcessStartInfo.cs: support EnvironmentVariables. MS uses
107 StringDictionary, which turns keys into lowercase. We don't do that.
109 2004-02-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
111 * Process.cs: ExitCode and ExitTime check that the process is finished.
113 2003-12-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
115 * Process.cs: if there's an error when starting the process, the 'pid'
116 field contains the GetLastError code. Use that for the Win32Exception.
118 2003-12-06 Martin Baulig <martin@ximian.com>
120 * DefaultTraceListener: Don't use `where' in variable names.
122 2003-11-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
124 * ICollectData.cs: Fixed signature
126 2003-11-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
128 * ICollectData.cs: Added missing attribute
130 2003-07-27 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
132 * SRDescriptionAttribute.cs: Moved to System directory
134 2003-07-21 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
136 * EventLog.cs: Implementation handling
137 * EventLogImpl.cs: Added, contains an platform independent empty implementation
140 2003-07-18 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
142 * AlphabeticalEnumConverter.cs: Added
143 * EventLogEntry.cs: Implemented
144 * EventLogPermissionEntryCollection.cs: Fixed signature and implementation of indexer
145 * EventLogTraceListener.cs: Fixed signature
146 * PerformanceCounter.cs: Added missing attribute
147 * PerformanceCounterType.cs: Added missing attribute
148 * SRDescriptionAttribute.cs: Added and implemented
150 2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
152 * CounterCreationData.cs:
155 * PerformanceCounter.cs:
158 * ProcessStartInfo.cs:
159 * ProcessThread.cs: Reworked attributes based on the new Consts scheme
161 2003-07-14 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
163 * PerformanceCounterCategory.cs: Fixed signatures
165 2003-07-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
167 * PerformanceCounter.cs: Implemented or implementation added
169 2003-07-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
171 * DiagnosticsConfigurationHandler.cs: Removed a never used variable
172 * EventLog.cs: Small update to prevent a warning
173 * EventLogPermission.cs: Implemented or implementation added
174 * EventLogPermissionAttribute.cs: Implemented or implementation added
175 * EventLogPermissionEntry.cs: Implemented or implementation added
176 * EventLogPermissionEntryCollection.cs: Implemented or implementation added
177 * EventLogTraceListener.cs: Implemented or implementation added
178 * PerformanceCounterManager.cs: Implemented or implementation added
179 * PerformanceCounterInstaller.cs: Made internal
180 * PerformanceCounterCategory.cs: Implemented few members
181 * PerformanceCounterPermission.cs: Implemented or implementation added
182 * PerformanceCounterPermissionAttribute.cs: Implemented or implementation added
183 * PerformanceCounterPermissionEntry.cs: Implemented or implementation added
184 * PerformanceCounterPermissionEntryCollection.cs: Implemented or implementation added
186 2003-07-07 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
188 * EventLog.cs: Removed unneccesary attribute according to corecompare
189 * EventLogEntry.cs: Removed unneccesary attribute according to corecompare
190 * Process.cs: Removed unneccesary attributes according to corecompare, added attribute
191 * ProcessModule.cs: Removed unneccesary attribute according to corecompare
192 * ProcessStartInfo.cs: Removed unneccesary attribute according to corecompare
193 * ProcessThread.cs: Removed unneccesary attribute according to corecompare, fixed signature
195 2003-07-05 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
197 * InstanceDataCollectionCollection.cs: Corrected wrong signature
198 * EventLog.cs: Missing attributes added, redirected some class members
199 * EventLogEntry.cs: Missing attributes added
200 * EventLogInstaller.cs: Made internal
202 2003-07-02 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
204 * CounterCreationData.cs: Added missing attributes
205 * CounterSample.cs: Implemented missing rest, fixed signature
206 * CounterSampleCalculator.cs: Added private constructor, redirected function
207 * Process.cs: Added attributes, added event mechanism
208 * ProcessModule.cs: Added missing attributes
209 * ProcessModuleCollection.cs: Redone using the already inherited-from ArrayList. Simplifies this a LOT
210 * ProcessStartInfo.cs: Added missing attributes, moved internal fields to the begining of the file, restyling
211 * ProcessThread.cs: Added missing attributes, added pseudo constructor
212 * ProcessThreadCollection.cs: Implemented
213 * PerformanceCounterPermission.cs: Fixed typo in class name
214 * PerformanceCounterPermissionAccess.cs: Added attributes, fixed wrong member
216 2003-03-19 Dick Porter <dick@ximian.com>
218 * Process.cs: Implement HasExited, fixes bug 39267
220 2003-03-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
222 * Process.cs: throw an exception when the executable cannot be found.
224 2002-12-20 Jonathan Pryor <jonpryor@vt.edu>
225 * DiagnosticsConfigurationHandler.cs:
226 - Don't assume that optional attributes are always present
227 - <assert/> can't have any child nodes
228 - Change in semantics: if the attribute isn't present,
229 GetAttribute() returns null, not "". This allows us to
230 differentiate between an attribute not being present and an
231 attribute with an empty value.
232 - Translate exceptions if a TraceListener type is invalid
234 2002-12-19 Jonathan Pryor <jonpryor@vt.edu>
235 * TraceListenerCollection.cs: IndentLevel and IndentSize shouldn't be
236 hardcoded; they should be set to whatever TraceImpl is using (which
237 in turn may have been set by the .config file, so we should get the
238 user-specified values in added listeners).
239 * TraceListener.cs: Make sure that indents are initially written. This
240 allows code that uses Trace.Indent() before a Trace.WriteLine() to be
242 * TraceImpl.cs: provide a static constructor to explicitly specify the
243 ordering of initialization, in particular the ordering of
244 TraceImpl.Listeners and the reading of the .config file (by
245 accessing DiagnosticsConfiguration.Settings). This (hopefully)
246 ensures that the Listeners collection is initialized before the
247 .config file is read in, as the DiagnosticsConfigurationHandler will
248 directly modify the listeners collection.
249 The DiagnosticsConfigurationHandler assumes this so that it can
250 <add/> and <remove/> trace listeners and set the logfile for the
251 DefaultTraceListener.
254 2002-12-18 Jonathan Pryor <jonpryor@vt.edu>
255 * BooleanSwitch.cs: Complete re-write. It works now.
256 * DefaultTraceListener.cs:
257 - Use `const' strings, so I don't worry about copy/paste errors
258 - Give `AssertUiEnabled' an actual backing member
259 * DiagnosticsConfigurationHandler.cs: To avoid race conditions, let the
260 configuration handler set .config-specified properties on
261 DefaultTraceListener (AssertUiEnabled, LogFileName) and TraceImpl
262 (AutoFlush, IndentSize).
263 * Switch.cs: Near complete re-write. Actually works, and is (should be)
264 comformant with .NET behavior. Changed member names because they
265 were confusing me. (Yes, that doesn't say much about my memory.)
266 * TextWriterTraceListener.cs: Append text to already existing files,
267 don't overwrite them.
269 - Added private destructor, to ensure no instances are created.
270 - Move members declarations to be closer to each other.
271 * TraceSwitch.cs: Complete re-write. It works now.
273 2002-12-17 Jonathan Pryor <jonpryor@vt.edu>
274 * DiagnosticsConfigurationHandler.cs: Implement so that .config files
275 support <system.diagnostics> sections.
277 2002-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
279 * DefaultTraceListener.cs: now OutputDebugStringW is called from an
280 internal call (update your runtime!). No more warnings in linux.
282 2002-10-31 Dick Porter <dick@ximian.com>
284 * Process.cs: MonoIO methods now have an error parameter
286 2002-10-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
288 * DefaultTraceListener.cs: changed OutputDebugString to
289 OutputDebugStringW (no more warnings under windows). Also a few style
292 2002-10-23 Dick Porter <dick@ximian.com>
294 * Process.cs: Redirected standard input needs to have AutoFlush set
296 2002-09-27 Dick Porter <dick@ximian.com>
298 * Process.cs: Implemented {get_,set_}{Min,Max}WorkingSet,
299 ProcessName, GetProcessById, GetProcesses, GetProcessesByName.
300 Pass the working directory to Start. Pass the program and args in
301 one string to be used with the second arg of CreateProcess, so it
302 will search the path.
304 2002-09-19 Nick Drochak <ndrochak@gol.com>
306 * TraceImpl.cs: Remove debug prints
308 2002-09-19 Nick Drochak <ndrochak@gol.com>
310 * TraceListenerCollection.cs: Set Indet level and size to default
311 values. The values from TraceImpl might have been changed.
313 2002-08-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
316 * TextWriterTraceListener.cs: IDisposable fixes.
318 2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
320 * Process.cs: class status based fixes.
322 2002-07-20 Dick Porter <dick@ximian.com>
324 * Process.cs: Implement file handle redirection
326 2002-07-13 Jonathan Pryor <jonpryor@vt.edu>
327 * CounterCreationData.cs: Implemented
328 * CounterCreationDataCollection.cs: Implemented
329 * CounterSample.cs: Stubbed Out
330 * CounterSampleCalculator.cs: Stubbed Out
331 * InstanceData.cs: Implemented
332 * InstanceDataCollection.cs: Implemented
333 * InstanceDataCollectionCollection.cs: Implemented
334 * MonitoringDescriptionAttribute.cs: Implemented
335 * PerformanceCounter.cs: Stubbed Out
336 * PerformanceCounterCategory.cs: Stubbed Out
337 * PerformanceCounterInstaller.cs: Stubbed Out
338 * PerformanceCounterManager.cs: Stubbed Out
339 * PerformanceCounterPermission.cs: Stubbed Out
340 * PerformanceCounterPermissionAccess.cs: Implemented
341 * PerformanceCounterPermissionAttribute.cs: Stubbed Out
342 * PerformanceCounterPermissionEntry.cs: Stubbed Out
343 * PerformanceCounterPermissionEntryCollection.cs: Implemented
344 * PerformanceCounterType.cs: Implemented
347 2002-06-25 Dick Porter <dick@ximian.com>
349 * Process.cs: Process forking and waiting, and some support functions
351 * ProcessStartInfo.cs: Implemented the bits needed for basic
354 * ProcessModule.cs: Implemented
356 * ProcessModuleCollection.cs: Mostly implemented
358 * FileVersionInfo.cs: Implemented
360 2002-06-16 Jonathan Pryor <jonpryor@vt.edu>
361 * ICollectData.cs: Implemented
362 * TraceImpl.cs: Setting IndentLevel, IndentSize should change the
363 corresponding properties on all current TraceListeners.
364 Also, to answer the FIXME message: Yes, the properties in TraceListener
365 need to be [ThreadStatic] as well.
366 * TraceListenerCollection.cs: When adding a TraceListener, the TraceListener
367 should have its properties set to the current TraceImpl property values.
368 * TraceListener.cs: Make indentSize, lndentLevel [ThreadStatic].
370 2002-06-09 Jonathan Pryor <jonpryor@vt.edu>
371 * EntryWrittenEventArgs.cs: Implemented
372 * EntryWrittenEventHandler.cs: Implemented
373 * EventLog.cs: Stubbed out
374 * EventLogEntry.cs: Stubbed out
375 * EventLogEntryCOllection.cs: Implemented.
376 * EventLogEntryType.cs: Implemented
377 * EventLogInstaller.cs: Stubbed out
378 * EventLogPermission.cs: Stubbed out
379 * EventLogPermissionAccess.cs: Implemented
380 * EventLogPermissionAttribute.cs: Stubbed out
381 * EventLogPermissionEntry.cs: Stubbed out
382 * EventLogPermissionEntryCollection.cs: Stubbed out
383 * EventLogTraceListener.cs: Stubbed out
385 2002-05-29 Jonathan Pryor <jonpryor@vt.edu>
386 * DefaultTraceListener.cs: Implemented MONO_TRACE support
388 2002-05-27 Jonathan Pryor <jonpryor@vt.edu>
389 * Moved public API documentation for the following files to the
390 /mcs/docs/apidocs/xml/en/System.Diagnostics directory:
392 - DefaultTraceListener.cs
393 - DiagnosticsConfigurationHandler.cs
395 - TextWriterTraceListener.cs
399 - TraceListenerCollection.cs
402 2002-04-10 Jonathan Pryor <jonpryor@vt.edu>
404 * TraceListenerCollection.cs: Corrected indexer property to provide the
405 correct return value and implement the IList indexer property correctly.
407 2002-04-07 Jonathan Pryor <jonpryor@vt.edu>
409 * TraceListener.cs: Fix stack overflow bug
410 * DefaultTraceListener.cs: Implement log file support
412 2002-04-04 Dick Porter <dick@ximian.com>
414 * ThreadWaitReason.cs:
416 * ThreadPriorityLevel.cs:
417 * ProcessWindowStyle.cs:
418 * ProcessThreadCollection.cs
420 * ProcessStartInfo.cs:
421 * ProcessModuleCollection.cs: Stub out more classes needed for Process
423 2002-03-31 Dick Porter <dick@ximian.com>
426 * ProcessPriorityClass.cs:
428 * FileVersionInfo.cs: Stub out classes needed for Process
430 2002-03-08 Jonathan Pryor <jonpryor@vt.edu>
432 * Debug.cs: Clean up (lots of code can be shared with Trace.cs, which
433 is why TraceImpl.cs is introduced), "DEBUG" conditional support
434 * TraceListener.cs: Proper implementation of Dispose pattern;
435 implementatino of non-abstract methods in terms of abstract methods
436 * TraceListenerCollection.cs: check 'object' types before adding
437 * TextWriterTraceListener.cs: properly implement Dispose pattern;
438 handle NeedIndent and WriteIndent
439 * Trace.cs: new file; provides Trace functionality, "TRACE" conditional
441 * DefaultTraceListener.cs: new file; the default trace listener
443 2002-01-17 Miguel de Icaza <miguel@ximian.com>
444 * TraceListenerCollection.cs: Remove Warnings.
446 2002-01-06 Ravi Pratap <ravi@ximian.com>
447 * Switch.cs, TraceListenerCollection.cs : Decorate incomplete bits
448 with the MonoTODO attribute.
450 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
451 * Added Debug.cs to the build.
453 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
454 * Added preliminary TraceListenerCollection.cs to the build.
456 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
457 * Added TraceListener.cs, TextWriterTraceListener.cs, and
458 DefaultTraceListener.cs to the build and moved them into the
461 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
462 * Added DiagnosticsConfigurationHandler.cs to the build.
464 2001-09-09 Nick Drochak <ndrochak@gol.com>
465 * BooleanSwitch.cs: Make this class use it's parent class's features. Namely, use SwitchSetting
466 so that we can get OnSwitchSettingChanged() to fire for free.
468 2001-09-09 Nick Drochak <ndrochak@gol.com>
469 * ChangeLog: added this file
470 * Switch.cs: call OnSwitchSettingChanged() when the switch setting is, yes you gessed it, changed.