1 2008-09-10 Bill Holmes <billholmes54@gmail.com>
3 * Process.cs : Update the fields of ProcessAsyncReader to
4 match MonoSocketAsyncResult metadata/socket-io.h
6 Contributed under MIT/X11 license.
8 2008-09-09 Jonathan Pryor <jpryor@novell.com>
11 - Remove the "lock-free" code, which (come to think of it) would be
12 faulty in a multithreaded environment anyway because the "other"
13 threads won't wait (block) until initialization is complete...
14 - Add InitOnce() calls to all public properties, so that
15 `Debug.AutoFlush=true' will cause InitOnce() to be loaded, lest
16 a `Debug.AutoFlush=true; Debug.Listeners.Add(...)` sequence cause
17 .AutoFlush=true to be ignored as the InitOnce implied by .Add()
18 will "overwrite" the .AutoFlush.
19 - Split up TraceListenerCollection creation from DefaultTraceListener
20 addition, as TraceListenerCollection.Add() calls back into
21 TraceImpl, so if these aren't separate we get an infinite loop
22 and never actually initialize anything.
24 * TraceListenerCollection.cs: Add a TraceListenerCollection(bool)
25 constructor, which provides a way to NOT add the
26 DefaultTraceListener (needed by TraceImpl; see above).
28 2008-08-06 Sebastien Pouliot <sebastien@ximian.com>
30 * Debug_2_1.cs: Add missing [Conditional] attributes.
32 2008-08-02 Gert Driesen <drieseng@users.sourceforge.net>
34 * DelimitedTraceListener.cs: Changed accessibility of
35 GetSupportedAttributes to protected internal.
36 * DiagnosticsConfigurationHandler.cs: Use GetSupportedAttributes to
37 allow custom attributes on tracelisteners. Fixes bug #413203.
38 * TraceListener.cs: Changed accessibility of GetSupportedAttributes
39 to protected internal. Removed MonoTODO on GetSupportedAttributes and
40 Attributes. Fixed line endings.
42 2008-08-01 Paolo Molaro <lupus@ximian.com>
44 * CounterCreationData.cs, PerformanceCounterCategory.cs: more
45 checks and default type fix.
47 2008-07-28 Dick Porter <dick@ximian.com>
49 * Process.cs: When passing handle references around, it needs to
50 be duplicated and freed so the OS doesn't close it. Makes the
51 testcase in 410743 work again now the underlying bug has been
54 2008-07-27 Zoltan Varga <vargaz@gmail.com>
56 * Process.cs (SetExitCallbackIfNeeded): Avoid a race condition by not
57 checking for HashExited.
59 2008-06-27 Atsushi Enomoto <atsushi@ximian.com>
61 * DiagnosticsConfigurationHandler.cs: quick build fix (hopefully).
63 2008-06-26 Gert Driesen <drieseng@users.sourceforge.net>
65 * DiagnosticsConfigurationHandler.cs: On 2.0 profile, throw
66 ConfigurationErrorsException when any attribute other than 'Name'
67 is found when referencing a shared listener. Fixes bug #404054.
68 Added support for the traceOutputOptions attribute on 2.0 profile.
71 2008-06-21 Robert Jordan <robertj@gmx.net>
73 * Process.cs (Start_common): UserName may be null or empty.
76 2008-06-19 Dick Porter <dick@ximian.com>
78 * Process.cs: Match the buffer sizes of StreamReader and
79 MonoSyncFileStream for redirected stdout and stderr. Fixes bug
82 2008-05-02 Zoltan Varga <vargaz@gmail.com>
84 * TraceImpl.cs: Update the IndentLevel property of this class when Indent ()
85 or Unindent () are called. Fixes #385666.
87 2008-03-26 Dick Porter <dick@ximian.com>
89 * FileVersionInfo.cs: Patch from Gert Driesen
90 (gert.driesen@pandora.be) for bug 355717.
92 2008-03-19 Zoltan Varga <vargaz@gmail.com>
94 * Stopwatch.cs: Fix visibility of GetTimestamp () method.
96 Thu Feb 28 19:52:30 CET 2008 Paolo Molaro <lupus@ximian.com>
98 * CounterCreationData.cs, PerformanceCounterCategory.cs,
99 PerformanceCounter.cs: bugfixes, icalls for categories,
100 more methods implemented.
102 Wed Feb 27 20:00:04 CET 2008 Paolo Molaro <lupus@ximian.com>
104 * CounterSample.cs, CounterSampleCalculator.cs, PerformanceCounter.cs,
105 PerformanceCounterCategory.cs, PerformanceCounterCategoryType.cs:
106 beginning of the performance counter implementation.
108 Tue Feb 26 18:37:13 CET 2008 Paolo Molaro <lupus@ximian.com>
110 * Stopwatch.cs: use an hires monotonic clock.
112 2008-01-23 Gert Driesen <drieseng@users.sourceforge.net>
114 * FileVersionInfo.cs (GetVersionInfo): Resolve filename to absolute
115 path, and throw FileNotFoundException if it does not exist.
117 2007-12-22 Gert Driesen <drieseng@users.sourceforge.net>
119 * Process.cs: In PriorityClass setter, first check whether value is
120 valid and remove LAMESPEC since the documentation has been corrected
121 for .NET 3.5. Code formatting.
123 2007-12-19 Dick Porter <dick@ximian.com>
125 * Process.cs: Check that the process has been started before
126 getting or setting the priority class. Fixes bug 348415.
128 2007-12-10 Miguel de Icaza <miguel@novell.com>
130 * DefaultTraceListener.cs: By default set the AssertUiEnabled to
131 false, as this is what we had previously and some broken
132 applications (Tomboy) are too trigger happy with Debug.Assert.
134 Also, we now load the Windows.Forms code on demand, instead of
135 preloading it on the static ctor to reduce memory usage.
137 2007-12-08 Gert Driesen <drieseng@users.sourceforge.net>
139 * LocalFileEventLog.cs: To allow entry to be fully written before
140 attempting to read it, added small sleep period in the Created event
143 2007-12-04 Gert Driesen <drieseng@users.sourceforge.net>
145 * Process.cs: Modified StartInfo to throw ArgumentNullException when
146 value is set to null, instead of ArgumentException. Remove check if
147 file name is rooted and exists when UseShellExecute is false, and let
148 runtime handle this. Fixes bug #3455655. When a process cannot be
149 started, do not access ProcessStartInfo.EnvironmentVariables since that
150 would not allow us to re-use the instance when changing
151 UseShellExecute. Added argument check in Start (ProcessStartInfo).
154 2007-11-16 Jb Evain <jbevain@novell.com>
156 * Debug_2_1.cs: simply write debug messages to the
159 2007-11-15 Dick Porter <dick@ximian.com>
161 * Process.cs: Pass the process handle to GetModules_internal();
163 2007-11-13 Atsushi Enomoto <atsushi@ximian.com>
165 * Process.cs : ... and it exposed some missing attributes.
167 2007-11-13 Atsushi Enomoto <atsushi@ximian.com>
169 * Process.cs : oops, SessionId was int.
171 2007-11-13 Atsushi Enomoto <atsushi@ximian.com>
173 * Process.cs : added missing SessionId (NIE).
175 2007-10-30 Robert Jordan <robertj@gmx.net>
177 * Process.cs: Wrap the redirected streams with a stream
178 that provides real async Begin/Read|Write operations.
181 2007-09-25 Miguel de Icaza <miguel@novell.com>
183 * Process.cs: Return an empty collection to prevent crashes;
186 Tue Sep 25 18:03:37 CEST 2007 Paolo Molaro <lupus@ximian.com>
188 * Process.cs: eliminate the console encoding logic which was
189 duplicated from System.Console and just use Console.Out.Encoding
192 2007-09-21 Gert Driesen <drieseng@users.sourceforge.net>
194 * DiagnosticsConfigurationHandler.cs: Rename ValidateIntegralValue
195 to GetSwitchValue. On 2.0 profile, leave the type conversion to
196 Switch implementations. Minor corrections to exception messages to
198 * Switch.cs: Avoid unnecessary inits. On 2.0 profile, catch and
199 rethrow exceptions in setter for Value. Do not hide exceptions thrown
200 in GetConfigFileSetting. Only set value from config file if switch is
202 * SourceSwitch.cs: Use SwitchSetting for getting/storing value instead
203 of new field. In OnValueChanged, parse enum value.
204 * TraceSwitch.cs: If SwitchSetting is changed to value > 4, then set
205 it to Verbose. In OnValueChanged, parse value case-insensitively, and
206 assign it to SwitchSetting (to allow other integral values).
208 2007-09-05 Atsushi Enomoto <atsushi@ximian.com>
210 * EventLog.cs : added cosmetic 2.0 attributes on newly added members.
212 2007-09-05 Atsushi Enomoto <atsushi@ximian.com>
214 * EventLog.cs, EventLogImpl.cs, LocalFileEventLog.cs, NullEventLog.cs,
215 Win32EventLog.cs : added missing members, will be left unsupported
216 in non-Win32 impl and left unimplemented in Win32.
217 * CounterCreationDataCollection.cs : in 2.0 OnValidate() is overriden
218 instad of OnInsert().
219 * Process.cs : removed StandardErrorEncoding and
220 StandardOutputEncoding. They do not exist anymore.
222 2007-09-03 Atsushi Enomoto <atsushi@ximian.com>
224 * ProcessStartInfo.cs : Implemented Verbs. It is done.
226 2007-09-03 Atsushi Enomoto <atsushi@ximian.com>
228 * Process.cs, ProcessStartInfo.cs : user info support (on windows).
230 2007-08-23 Robert Jordan <robertj@gmx.net>
232 * Process.cs: implement PriorityClass. Fixes #81756.
234 Mon Aug 20 12:41:09 CEST 2007 Paolo Molaro <lupus@ximian.com>
236 * Process.cs: implemented icall for system/user times.
238 2007-08-14 Gert Driesen <drieseng@users.sourceforge.net>
240 * EventLog.cs: Do not allow all whitespace machine name. Do nothing
241 when setting the same value for EnableRaisingEvents, and only modify
242 value of field when enable/disable succeeded. Treats log name case
243 insensitively on all platforms, and perform reset when the log name
244 is changed. Validate new machine name in property, and treat it
245 case-insensitively. Perform reset when source is modified, and log
246 name was not explicitly set. When EventLog is closed, also disable
248 * LocalEventLog.cs: In Close, clean-up the FileSystemWatcher. Add
249 locking to Created eventhandler to avoid duplicate notifications.
250 * Win32EventLog.cs: Cache handle for reading from eventlog. In Close,
251 close the read handle. Implement support for watching win32 eventlog.
254 2007-08-08 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
256 * Process.cs: added StandardOutputEncoding and StandardErrorEncoding
257 properties. Bug #82262 fixed.
259 2007-08-06 Atsushi Enomoto <atsushi@ximian.com>
261 * Process.cs, ProcessStartInfo.cs : added StandardOutputEncoding
262 and StandardErrorEncoding.
264 2007-08-06 Atsushi Enomoto <atsushi@ximian.com>
266 * PerformanceCounterCategory.cs PerformanceCounter.cs :
267 added missing 2.0 stuff (unimplemented, where things are anyways
268 unimplemented in 1.x layer).
270 2007-08-06 Atsushi Enomoto <atsushi@ximian.com>
272 * PerformanceCounterInstanceLifetime.cs
273 PerformanceCounterCategoryType.cs : new.
274 * ICollectData.cs ProcessStartInfo.cs
275 InstanceDataCollectionCollection.cs PerformanceCounter.cs
276 InstanceDataCollection.cs Process.cs :
277 cosmetic attributes cleanup.
279 2007-08-03 Jb Evain <jbevain@novell.com>
281 * FileVersionInfo.cs: force the use of the params
282 AppendFormat method of StringBuilder as it is the only
283 one accessible in 2.1 and in the previous versions.
285 2007-08-03 Jb Evain <jbevain@novell.com>
287 * FileVersionInfo.cs: remove CAS checks for 2.1.
289 2007-08-03 Jb Evain <jbevain@novell.com>
291 * Process.cs: disable StartExistCallbackIfNeeded in 2.1.
293 2007-08-03 Jb Evain <jbevain@novell.com>
295 * ProcessThreadCollection.cs
296 ProcessModuleCollection.cs: use our own collection base
297 for the 2.1 profile, as ReadOnlyCollectionBase does not exist
298 in 2.1, and they are internalized by the linker.
300 2007-08-02 Atsushi Enomoto <atsushi@ximian.com>
302 * EventLogTraceListener.cs : fixed wrong 2.0 dependency in 1.x.
304 2007-08-02 Atsushi Enomoto <atsushi@ximian.com>
306 * EventLogTraceListener.cs : implemented.
308 2007-08-02 Atsushi Enomoto <atsushi@ximian.com>
312 LocalFileEventLog.cs : Implemented EntryWritten event support.
313 * Win32EventLog.cs, NullEventLog.cs : they need stub overrides.
314 * EventLogEntry.cs : [MonitoringDescription].
315 * DiagnosticsConfigurationHandler.cs : [Obsolete]
317 2007-08-01 Atsushi Enomoto <atsushi@ximian.com>
319 * DefaultTraceListener.cs : implemented AssertUiEnabled using MWF.
321 2007-08-01 Atsushi Enomoto <atsushi@ximian.com>
323 * CounterSample.cs : implemented missing 2.0 equality stuff.
324 * CounterSampleCalculator.cs : static in 2.0.
326 2007-07-24 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
328 * Process.cs: use the default encoding or the windows input/output
329 encodings for the process input/output/error streams. Bug #80838 fixed.
331 2007-07-14 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
333 * Process.cs: don't send empty lines that are not in the input. Fixes
336 2007-07-11 Ankit Jain <jankit@novell.com>
338 * ProcessStartInfo.cs (WorkingDirectory.set): Don't set
339 working_directory to null.
341 2007-05-18 Atsushi Enomoto <atsushi@ximian.com>
343 * TraceSourceInfo.cs : new class for storing configuration data.
344 * TraceSource.cs : TraceEventCache arguments should be null (they are
345 nullable). Use TraceSourceInfo above.
346 * DiagnosticsConfigurationHandler.cs : removed hack to store listeners
347 in named sources, not traceimpl. Create TraceSource objects from
350 2007-05-18 Marek Safar <marek.safar@gmail.com>
352 * DiagnosticsConfigurationHandler.cs: Fixed 1.1 build.
354 2007-05-18 Atsushi Enomoto <atsushi@ximian.com>
356 * XmlWriterTraceListener.cs : open file in shared r/w mode.
357 * DiagnosticsConfigurationHandler.cs : process <sharedListeners>
358 elements first, so that named listeners work fine.
359 * EventLogTraceListener.cs : added 2.0 stubs.
360 * CorrelationManager.cs : removed todo.
362 2007-05-18 Atsushi Enomoto <atsushi@ximian.com>
364 * TraceListener.cs : in TraceTransfer(), use TraceEvent() (some
365 derived classes depend on this change).
366 * DelimitedListTraceListener.cs : implemented.
368 2007-05-18 Atsushi Enomoto <atsushi@ximian.com>
370 * EventLogPermissionAccess.cs ProcessPriorityClass.cs
371 ProcessWindowStyle.cs ThreadWaitReason.cs TraceImpl.cs
372 Trace.cs ThreadPriorityLevel.cs EventLogEntryType.cs
373 PerformanceCounterPermissionAccess.cs PerformanceCounterType.cs
374 TraceListener.cs ThreadState.cs : cosmetic API fixes.
375 * SwitchAttribute.cs : implemented GetAll().
377 2007-05-17 Atsushi Enomoto <atsushi@ximian.com>
379 * TraceOptions.cs : new enum.
380 * TraceListener.cs : support TraceOutputOptions. Fixed missing
381 NET_2_0 condition in TARGET_JVM section.
382 * TraceSwitch.cs, BooleanSwitch.cs :
383 Added missing constructors and OnValueChanged().
384 * Trace.cs, TraceImpl.cs :
385 Added CorrelationManager and UseGlobalLock.
386 * TraceEventCache.cs : initialize property values at construction.
387 * Switch.cs : added XmlIgnore on Attributes.
389 2007-05-15 Adar Wesley <adarw@mainsoft.com>
391 * Trace.cs: added missing method Refresh.
393 2007-05-14 Atsushi Enomoto <atsushi@ximian.com>
398 SwitchLevelAttribute.cs
399 DelimitedListTraceListener.cs
400 SwitchAttribute.cs : new files in 2.0.
401 * DiagnosticsConfigurationHandler.cs : partial support for named
403 * XmlWriterTraceListener.cs : cosmetic corcompare fixes. Added
405 * TraceListener.cs : added missing 2.0 stuff. Implemented Filter.
406 * DefaultTraceListener.cs : trivial ComVisible fix.
408 2007-05-10 Atsushi Enomoto <atsushi@ximian.com>
410 * TextWriterTraceListener.cs : open log file in readwrite share mode.
411 This fixes bug #81296.
413 2007-05-08 Igor Zelmanovich <igorz@mainsoft.com>
417 for TARGET_JVM used Thread Local Storage istead
418 Thread-Relative Static Fields
420 2007-05-02 Jonathan Chambers <joncham@gmail.com>
422 * Stopwatch.cs : Implement high performance stopwatch on windows.
424 2007-04-19 Atsushi Enomoto <atsushi@ximian.com>
426 * XmlWriterTraceListener.cs : new file, implementated.
427 * TraceListener.cs : implemented 2.0 members.
429 2007-03-04 Vladimir Krasnov <vlaimdirk@mainsoft.com>
431 * DiagnosticsConfigurationHandler.cs: removed configuration init in
432 TARGET_JVM since not supported
434 2007-02-02 Gert Driesen <drieseng@users.sourceforge.net>
436 * EventLogImpl.cs: When no log name is specified, return zero-length
437 string for LogDisplayName.
439 2007-01-28 Ilya Kharmatsky <ilyak -at- mainsoft.com>
441 * TraceEventCache.jvm.cs: added as a stub class.
443 Tue Jan 23 17:19:13 CET 2007 Paolo Molaro <lupus@ximian.com>
445 * ProcessStartInfo.cs: put the fields in the order expected
448 2007-01-18 Atsushi Enomoto <atsushi@ximian.com>
450 * Switch.cs : added missing .ctor(), Attributes, Value,
451 GetSupportedAttributes() and OnValueChanged().
452 * DiagnosticsConfigurationHandler.cs : added some hacky handler for
453 new "sources" element. Don't wrap another ConfigurationException.
454 * TraceListener.cs : added missing trace methods.
455 * TraceSource.cs, SourceLevels.cs, CorrelationManager.cs,
456 TraceEventCache.cs, TraceEventType.cs, SourceSwitch.cs:
457 added missing 2.0 stuff, mostly just stubs.
459 2007-01-12 Miguel de Icaza <miguel@novell.com>
461 * Trace.cs: Add a number of 2.0 overloads.
463 2007-01-02 Gert Driesen <drieseng@users.sourceforge.net>
465 * Process.cs: Allow GetProcesses and GetProcessById overloads with
466 machine name to work for local machine.
468 2006-12-29 Robert Jordan <robertj@gmx.net>
470 * TraceImpl.cs (Assert): Include line numbers in the stack trace
471 emitted by Assert (). Fixes bug #80400.
473 Thu Dec 14 20:24:09 CET 2006 Paolo Molaro <lupus@ximian.com>
475 * Process.cs: if a process object is restarted, close the
476 previous process handle (bug #80143).
478 2006-11-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
480 * Process.cs: the Process returned by the static Start method never had
481 the right ProcessStartInfo. Fixes bug #80019.
483 2006-10-13 Atsushi Enomoto <atsushi@ximian.com>
485 * DiagnosticsConfigurationHandler.cs : be more skeptic on
486 broken configuration file.
488 2006-09-28 Andrew Skiba <andrews@mainsoft.com>
490 * DefaultTraceListener.cs: TARGET_JVM
492 2006-09-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
494 * Process.cs: fix operation number to be 8. The other one was working
495 because the default is to wait for input on the file descriptor.
497 2006-09-05 Gert Driesen <drieseng@users.sourceforge.net>
499 * Win32EventLog.cs: Removed workarounds for bug #79152 and bug #79117
500 now that these have been fixed. Release unmanaged memory that was
501 allocated for replacement strings.
503 2006-08-27 Gert Driesen <drieseng@users.sourceforge.net>
505 * NullEventLog.cs: Added dummy GetLogNames implementation.
506 * EventLogImpl.cs: Moved GetEventLogs implementation to base class.
507 Added abstract GetLogNames method. Added ValidateCustomerLogName
508 method which should be called by eventlog providers when creating a
509 new log to ensure the significant part of the log name is unique, does
510 not match any of the special log names and does not match an exist event
512 * Win32EventLog.cs: Validate customer log name when creating new log.
513 Moved GetEventLogs implementation to base class. Added GetLogNames
515 * LocalFileEventLog.cs: Merged CreateLogStore into CreateEventSource.
516 Validate customer log name when creating new log. Moved GetEventLogs
517 implementation to base class. Added GetLogNames method.
519 2006-08-26 Gert Driesen <drieseng@users.sourceforge.net>
521 * Win32EventLog.cs: Fixed error messages. Use RegisterEventSource
522 pinvoke when opening eventlog for writing entries.
524 2006-08-26 Gert Driesen <drieseng@users.sourceforge.net>
526 * Win32EventLog.cs: Added and documented workarounds for bug #79117
529 2006-08-25 Gert Driesen <drieseng@users.sourceforge.net>
531 * LocalFileEventLog.cs: When event log store does not exist, then we
532 do not need to perform a case-insensitive lookup of the log name.
534 2006-08-20 Gert Driesen <drieseng@users.sourceforge.net>
536 * EventLog.cs: Removed namespace import.
537 * EventInstance.cs: Added range checks and check whether specified
538 entry type is defined.
540 2006-08-20 Gert Driesen <drieseng@users.sourceforge.net>
542 * EventLogEntry.cs: Added InstanceId property (2.0 only). Moved
543 Obsolete attribute to correct property.
544 * EventSourceCreationData.cs: Updated copyright. For internal ctor,
545 set log name to "Application" if value is null or zero-length string.
546 * EventLogImpl.cs: EventImpl now acts as base class for event log
548 * NullEventLog.cs: Modified to implement new abstract methods of base
549 class. Removed factory class.
550 * EventLog.cs: EventLog implementation that delegates just about
551 everything to individual eventlog providers. To specify the event log
552 implementation to use, the MONO_EVENTLOG_TYPE environment variable can
553 be used. Possible values are:
554 - win32 : read/write entries using the native win32 eventlog
555 - local[:path] : read/write entries as files to a local directory
556 - null : silently ignore all entries
557 The default is "null" on unix (and versions of Windows before NT,
558 meaning Windows 98, ...), and "win32" on Windows NT (and higher).
559 When "the local" implementation is used, the directory in which to
560 store the event logs, event sources and entries can be specified as
561 part of MONO_EVENTLOG_TYPE environment variable using the syntax
562 "local:<path>" (eg. local:/home/myuser/mono/eventlog).
563 * LocalFileEventLog.cs: Event log implementation which uses a local
564 file store. The directory to use for persistence can be specified
565 as part of the MONO_EVENTLOG_TYPE environment variable (see above).
566 If that directory is not explicitly set, then the following directory
567 will be used for storing eventlog entries:
568 - windows : %APPDATA%\mono\eventlog
569 - unix : /var/lib/mono/eventlog
570 On unix, the directory permission for individual eventlog log
571 directories will be set to 777 (with +t bit) allowing everyone to
572 read and write eventlog entries while only allowing entries to be
573 deleted by the user(s) that created them.
574 Format of log files was modified to allow it contain all necessary
575 information for an event log entry.
576 * Win32EventLog.cs: Event log implementation for Windows NT and
577 higher which uses the Win32 native event log for reading/writing
578 eventlog entries, and which uses the registry to store event log and
579 event source registration information.
580 * EventLogEntryCollection.cs: Delegate implementation to event log
581 implementation. Use lazy init for enumerating entries. Cache current
584 2006-08-14 Atsushi Enomoto <atsushi@ximian.com>
586 * LocalFileEventLog.cs : change lengthy environment variable name.
587 MONO_LOCAL_EVENTLOG_PATH -> MONO_EVENTLOG_PATH.
589 2006-08-14 Atsushi Enomoto <atsushi@ximian.com>
591 * EventLogImpl.cs, EventLogEntryCollection.cs, EventLog.cs :
592 some rework to support actual event log implementations.
593 * NullEventLog.cs, LocalFileEventLog.cs :
594 new files. The former (default) implementation does nothing for
595 any event log features. The latter implements local file based
598 2006-08-14 Atsushi Enomoto <atsushi@ximian.com>
600 * UnixEventLog.cs, EventLogEntry.cs, EventSourceCreationData.cs,
601 EventLogImpl.cs, Win32EventLog.cs, EventLogEntryCollection.cs,
603 Reverted previous two changes that does not work at all.
605 2006-08-11 Gert Driesen <drieseng@users.sourceforge.net>
607 * EventLog.cs: For now, Use null implementation.
609 2006-08-11 Gert Driesen <drieseng@users.sourceforge.net>
611 * EventLogEntry.cs: Added InstanceId property (2.0 only). Moved
612 Obsolete attribute to correct property.
613 * EventSourceCreationData.cs: Updated copyright. For internal ctor,
614 set log name to "Application" if value is null or zero-length string.
615 * EventLogImpl.cs: EventImpl now acts as base class for event log
616 implemenations. Added NullEventLog implementation, which is not used
618 * EventLog.cs: EventLog implementation that uses registry for
619 keeping track of logs and sources to match .NET (and Windows). When
620 running on Windows NT (and higher), event entries are written to
621 the native win32 event log. Reading event entries is not yet working
622 for Windows. On linux, we use a local file store (based on patch by
624 * UnixEventLog.cs: Event log implementation for linux which uses a
626 * Win32EventLog.cs: Event log implementation for Windows NT and
627 higher which uses the Win32 native event log.
628 * EventLogEntryCollection.cs: Delegate implementation to event log
629 implemenation. Use lazy init for enumerating entries.
631 2006-08-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
633 * Process.cs: reset the 'start' time if we wait for stdout reading to
636 2006-08-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
638 * Process.cs: add support for 2.0 asynchronous reads on stdout and
641 2006-08-09 Gert Driesen <drieseng@users.sourceforge.net>
643 * EventSourceCreationData.cs: Marked ctor internal, and removed ctor.
644 Throw ArgumentOutOfRangeException if negative value for CategoryCount
647 2006-08-09 Gert Driesen <drieseng@users.sourceforge.net>
649 * EventInstance.cs: Added 2.0 class.
650 * EventSourceCreationData.cs: Added 2.0 class.
651 * OverflowAction.cs: Added 2.0 enum.
653 2006-07-31 Sebastien Pouliot <sebastien@ximian.com>
655 * EventLogEntry.cs: Add a linkdemand for unrestricted on class.
656 * EventLogTraceListener.cs: Add a linkdemand for unrestricted on class
657 * FileVersionInfo.cs: Add a linkdemand for unrestricted on class. Add
658 an imperative demand for FileIOPermission.Read on GetVersionInfo
659 method. Change ToString method to use a StringBuilder.
660 * PerformanceCounterCategory.cs: Add a linkdemand for unrestricted on
662 * PerformanceCounterManager.cs: Add a linkdemand for unrestricted on
663 class. Add [Obsolete] for NET_2_0 profile.
664 * Process.cs: Add a linkdemand and an inheritancedemand for
665 unrestricted on class.
666 * ProcessStartInfo.cs: Add a linkdemand for unrestricted on class.
668 2006-07-16 Andrew Skiba <andrews@mainsoft.com>
670 * Process.cs: throw FileNotFoundException earlier; give more
673 2006-05-16 Dick Porter <dick@ximian.com>
675 * Process.cs: Dispose the handle from a destructor too
677 2006-04-04 Atsushi Enomoto <atsushi@ximian.com>
680 Zoltan was quicker to add it, here I put my implementation ;-)
682 Added some missing long members (not implemented anyways).
683 * DataReceivedEventHandler.cs DataReceivedEventArgs.cs :
686 2006-04-01 Zoltan Varga <vargaz@gmail.com>
688 * Stopwatch.cs: New file.
690 2006-03-31 Zoltan Varga <vargaz@gmail.com>
692 * Debug.cs: Add net 2.0 Print methods.
694 2006-03-03 Dick Porter <dick@ximian.com>
696 * Process.cs: Close redirected pipes on errors. Fixes bug 77514.
698 2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
700 * ConsoleTraceListener.cs: New 2.0 class
702 2005-11-17 Dick Porter <dick@ximian.com>
704 * Process.cs: Split Start_common into Start_shell and
705 Start_noshell, which call ShellExecuteEx and CreateProcess
706 respectively. Fixes bug 76670.
708 2005-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
710 * Process.cs: deal with the fact that someone can enable raising events
711 and/or registed a Exited delegate before and *after* Start is called for
712 the process. Only queue the exit callback in the threadpool when it's
713 possible and requested. Fixes bug #76129.
715 2005-08-09 Gert Driesen <drieseng@users.sourceforge.net>
717 * EventLog.cs: Fixed Designer attribute to match MS.NET.
718 * ICollectData.cs: Added marshalling attribute to match MS.NET.
719 * PerformanceCounter.cs: Fixed Designer attribute to match MS.NET.
720 * Process.cs: Fixed Designer attribute to match MS.NET, modified
721 * ProcessModule.cs: Fixed Designer attribute to match MS.NET.
722 * ProcessThread.cs: Fixed Designer attribute to match MS.NET.
723 DesignerSerializationVisibility on StartInfo to match MS.NET, changed
724 Category attribute on Exited event to match MS.NET.
726 2005-06-09 Gert Driesen <drieseng@users.sourceforge.net>
728 * TraceImpl.cs: Adjust internal indentlevel and indentsize before
729 passing on to listeners. Fixes some test failures.
731 2005-06-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
733 * DefaultTraceListener.cs: s/MONO_TRACE/MONO_TRACE_LISTENER/. The
734 runtime uses MONO_TRACE too...
736 2005-05-31 Sebastien Pouliot <sebastien@ximian.com>
738 * PerformanceCounterPermissionEntry.cs: Added more 2.0 validations for
739 machine names and PerformanceCounterPermissionAccess.
741 2005-02-22 Jonathan Pryor <jonpryor@vt.edu>
743 * TraceImpl.cs: More Thread-safety fixes. I have to lock on
744 Listeners.SyncRoot as we're traversing the collection and can't let the
745 collection change from underneath us while we're iterating over it
746 (alternately, we could clone the collection and iterate over the clone
747 without having locking issues -- assuming we had a lock-free clone --
748 but this would kill the GC). Fixes 69964. Only define lock_ if we're
749 using the lock-free initialization routine; it's not used otherwise.
751 2005-01-18 Jonathan Pryor <jonpryor@vt.edu>
753 * DiagnosticsConfigurationHandler.cs (DiagnosticsConfiguration):
754 Use a lock-free algorithm for creating the settings information.
755 * TraceImpl.cs (InitOnce): Use a lock-free algorithm for creating the
756 listeners collection and initializing the world.
758 2005-01-18 Jonathan Pryor <jonpryor@vt.edu>
760 * DiagnosticsConfigurationHandler.cs (DiagnosticsConfiguration): Don't
761 read the .config file from the static ctor (again), as if it fails we'll
762 get a TypeLoadException -- bad! Instead, lazy-read the .config file.
763 * DiagnosticsConfigurationHandler.cs (DiagnosticsConfigurationHandler):
764 Require that the /switch/add/@value attribute contains only numeric values.
765 * TraceImpl.cs: Don't initialize everything in the static ctor, as if it
766 fails (due to an invalid .confg file) we get a TypeLoadException, while
767 .NET generates a ConfigurationException. Instead, initialize everything
768 the first time the Listeners property is accessed, which allows the static
769 ctor to run without chance of failure, avoiding the TypeLoadException.
770 * TraceListenerCollection.cs: This should be thread-safe, as it's accessible
771 from a static member of TraceImpl (available through the public Debug and
773 * Switch.cs: Leave the original switch value alone. If it isn't valid
774 (i.e. numeric), the DiagnosticsConfigurationHandler will catch it.
776 2005-01-17 Jonathan Pryor <jonpryor@vt.edu>
778 * DiagnosticsConfigurationHandler.cs: The /switch/add/@value attribute
779 isn't optional under .NET 1.1, so make sure it exists.
781 2005-01-13 Jonathan Pryor <jonpryor@vt.edu>
783 * DiagnosticsConfigurationHandler.cs: Make DiagnosticsConfiguration.Settings
784 thread-safe (double-checked locking isn't thread safe on .NET without
785 using a volatile variable, and setting the variable in the static
786 constructor is easier anyway).
787 * Switch.cs (GetConfigFileSetting): If the setting is non-numeric, set the
788 attribute value to the string "0". This is apparently what .NET 1.1 does,
789 and allows the SwitchTest NUnit test to work w/o failures.
791 2004-12-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
793 * Process.cs: always pass the same arguments to the runtime.
795 2004-09-11 Sebastien Pouliot <sebastien@ximian.com>
797 * EventLogPermission.cs: Completed implementation.
798 * EventLogPermissionAccess.cs: Fixed enum values.
799 * EventLogPermissionEntry.cs: Added validation for machine names.
800 * EventLogPermissionEntryCollection.cs: Added synchronization
801 of entries with the base permission class.
802 * PerformanceCounterPermission.cs: Completed implementation.
803 * PerformanceCounterPermissionAccess.cs: Fixed enum values.
804 * PerformanceCounterPermissionEntry.cs: Added validations for machine
806 * PerformanceCounterPermissionEntryCollection.cs: Added synchronization
807 of entries with the base permission class.
809 2004-09-10 Sebastien Pouliot <sebastien@ximian.com>
811 * EventLogPermission.cs: Fixed initialization (TagNames and
812 PermissionAccessType).
813 * EventLogPermissionAccess.cs: Added new enums for NET_2_0 and added
814 [Obsolete] to some existing elements.
815 * EventLogPermissionAttribute.cs: Added missing validation to property
816 MachineName. Fixed changes for NET_2_0.
817 * PerformanceCounterPermission.cs: Fixed initialization (TagNames and
818 PermissionAccessType).
819 * PerformanceCounterPermissionAccess.cs: Added new enums for NET_2_0
820 and added [Obsolete] to some existing elements.
821 * PerformanceCounterPermissionAttribute.cs: Added missing validations
822 to properties (Path, MachineName). Fixed changes for NET_2_0.
824 2004-09-07 Dick Porter <dick@ximian.com>
826 * Process.cs: Throw documented exceptions when getting stdin,
827 stdout or stderr and they haven't been redirected. Check that
828 CreatePipe didn't fail, throw exceptions if it did. Close
829 redirected streams when the process is disposed, rather than rely
830 on the GC disposing them later. Makes timeline much happier,
831 because it could run out of file descriptors between GC
834 2004-09-06 Dick Porter <dick@ximian.com>
836 * Process.cs: Make Dispose() actually dispose things.
838 2004-06-24 Atsushi Enomoto <atsushi@ximian.com>
840 * Process.cs : quick fix for UseShellExecute=false on windows. See
843 2004-06-17 Lluis Sanchez Gual <lluis@ximian.com>
845 * Process.cs: Added missing check in HasExited property.
847 2004-05-20 Gert Driesen (drieseng@users.sourceforge.net)
849 * EventLogPermissionAttribute.cs:
850 * PerformanceCounterPermissionAttribute.cs: adjust AllowMultiple
851 and Inherited to match .NET
853 2004-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
855 * Process.cs: separate the command and the arguments when calling
858 2004-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
860 * Process.cs: redirecting I/O is not permitted if UseShellExecute is
861 true. Also throw if FileName is null.
863 2004-04-06 Lluis Sanchez Gual <lluis@ximian.com>
865 * DiagnosticsConfigurationHandler.cs: If initializeData is provided,
866 use the constructor that only takes one string as parameter to
867 construct the listener. The name is set using the Name property, not the
870 * TextWriterTraceListener.cs: In Write*, do nothing if no writer was
873 2004-03-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
875 * Process.cs: use the ISynchronizeInvoke object to invoke the event.
876 Implemented Close, CloseMainWindow and Kill.
878 2004-03-23 Ben Maurer <bmaurer@users.sourceforge.net>
880 * Switch.cs: Don't throw when there is no switches section.
882 2004-03-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
884 * Process.cs: support EnableRaisingEvents + Exited event.
886 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
888 * Process.cs: patch by Gert Driesen that fixes WaitForExit when the
889 timeout is int.MaxValue.
891 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
893 * Process.cs: added environment variables setting support and also
894 send useShellExecute to the runtime.
896 * ProcessStartInfo.cs: support EnvironmentVariables. MS uses
897 StringDictionary, which turns keys into lowercase. We don't do that.
899 2004-02-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
901 * Process.cs: ExitCode and ExitTime check that the process is finished.
903 2003-12-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
905 * Process.cs: if there's an error when starting the process, the 'pid'
906 field contains the GetLastError code. Use that for the Win32Exception.
908 2003-12-06 Martin Baulig <martin@ximian.com>
910 * DefaultTraceListener: Don't use `where' in variable names.
912 2003-11-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
914 * ICollectData.cs: Fixed signature
916 2003-11-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
918 * ICollectData.cs: Added missing attribute
920 2003-07-27 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
922 * SRDescriptionAttribute.cs: Moved to System directory
924 2003-07-21 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
926 * EventLog.cs: Implementation handling
927 * EventLogImpl.cs: Added, contains an platform independent empty implementation
930 2003-07-18 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
932 * AlphabeticalEnumConverter.cs: Added
933 * EventLogEntry.cs: Implemented
934 * EventLogPermissionEntryCollection.cs: Fixed signature and implementation of indexer
935 * EventLogTraceListener.cs: Fixed signature
936 * PerformanceCounter.cs: Added missing attribute
937 * PerformanceCounterType.cs: Added missing attribute
938 * SRDescriptionAttribute.cs: Added and implemented
940 2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
942 * CounterCreationData.cs:
945 * PerformanceCounter.cs:
948 * ProcessStartInfo.cs:
949 * ProcessThread.cs: Reworked attributes based on the new Consts scheme
951 2003-07-14 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
953 * PerformanceCounterCategory.cs: Fixed signatures
955 2003-07-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
957 * PerformanceCounter.cs: Implemented or implementation added
959 2003-07-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
961 * DiagnosticsConfigurationHandler.cs: Removed a never used variable
962 * EventLog.cs: Small update to prevent a warning
963 * EventLogPermission.cs: Implemented or implementation added
964 * EventLogPermissionAttribute.cs: Implemented or implementation added
965 * EventLogPermissionEntry.cs: Implemented or implementation added
966 * EventLogPermissionEntryCollection.cs: Implemented or implementation added
967 * EventLogTraceListener.cs: Implemented or implementation added
968 * PerformanceCounterManager.cs: Implemented or implementation added
969 * PerformanceCounterInstaller.cs: Made internal
970 * PerformanceCounterCategory.cs: Implemented few members
971 * PerformanceCounterPermission.cs: Implemented or implementation added
972 * PerformanceCounterPermissionAttribute.cs: Implemented or implementation added
973 * PerformanceCounterPermissionEntry.cs: Implemented or implementation added
974 * PerformanceCounterPermissionEntryCollection.cs: Implemented or implementation added
976 2003-07-07 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
978 * EventLog.cs: Removed unneccesary attribute according to corecompare
979 * EventLogEntry.cs: Removed unneccesary attribute according to corecompare
980 * Process.cs: Removed unneccesary attributes according to corecompare, added attribute
981 * ProcessModule.cs: Removed unneccesary attribute according to corecompare
982 * ProcessStartInfo.cs: Removed unneccesary attribute according to corecompare
983 * ProcessThread.cs: Removed unneccesary attribute according to corecompare, fixed signature
985 2003-07-05 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
987 * InstanceDataCollectionCollection.cs: Corrected wrong signature
988 * EventLog.cs: Missing attributes added, redirected some class members
989 * EventLogEntry.cs: Missing attributes added
990 * EventLogInstaller.cs: Made internal
992 2003-07-02 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
994 * CounterCreationData.cs: Added missing attributes
995 * CounterSample.cs: Implemented missing rest, fixed signature
996 * CounterSampleCalculator.cs: Added private constructor, redirected function
997 * Process.cs: Added attributes, added event mechanism
998 * ProcessModule.cs: Added missing attributes
999 * ProcessModuleCollection.cs: Redone using the already inherited-from ArrayList. Simplifies this a LOT
1000 * ProcessStartInfo.cs: Added missing attributes, moved internal fields to the begining of the file, restyling
1001 * ProcessThread.cs: Added missing attributes, added pseudo constructor
1002 * ProcessThreadCollection.cs: Implemented
1003 * PerformanceCounterPermission.cs: Fixed typo in class name
1004 * PerformanceCounterPermissionAccess.cs: Added attributes, fixed wrong member
1006 2003-03-19 Dick Porter <dick@ximian.com>
1008 * Process.cs: Implement HasExited, fixes bug 39267
1010 2003-03-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1012 * Process.cs: throw an exception when the executable cannot be found.
1014 2002-12-20 Jonathan Pryor <jonpryor@vt.edu>
1015 * DiagnosticsConfigurationHandler.cs:
1016 - Don't assume that optional attributes are always present
1017 - <assert/> can't have any child nodes
1018 - Change in semantics: if the attribute isn't present,
1019 GetAttribute() returns null, not "". This allows us to
1020 differentiate between an attribute not being present and an
1021 attribute with an empty value.
1022 - Translate exceptions if a TraceListener type is invalid
1024 2002-12-19 Jonathan Pryor <jonpryor@vt.edu>
1025 * TraceListenerCollection.cs: IndentLevel and IndentSize shouldn't be
1026 hardcoded; they should be set to whatever TraceImpl is using (which
1027 in turn may have been set by the .config file, so we should get the
1028 user-specified values in added listeners).
1029 * TraceListener.cs: Make sure that indents are initially written. This
1030 allows code that uses Trace.Indent() before a Trace.WriteLine() to be
1032 * TraceImpl.cs: provide a static constructor to explicitly specify the
1033 ordering of initialization, in particular the ordering of
1034 TraceImpl.Listeners and the reading of the .config file (by
1035 accessing DiagnosticsConfiguration.Settings). This (hopefully)
1036 ensures that the Listeners collection is initialized before the
1037 .config file is read in, as the DiagnosticsConfigurationHandler will
1038 directly modify the listeners collection.
1039 The DiagnosticsConfigurationHandler assumes this so that it can
1040 <add/> and <remove/> trace listeners and set the logfile for the
1041 DefaultTraceListener.
1044 2002-12-18 Jonathan Pryor <jonpryor@vt.edu>
1045 * BooleanSwitch.cs: Complete re-write. It works now.
1046 * DefaultTraceListener.cs:
1047 - Use `const' strings, so I don't worry about copy/paste errors
1048 - Give `AssertUiEnabled' an actual backing member
1049 * DiagnosticsConfigurationHandler.cs: To avoid race conditions, let the
1050 configuration handler set .config-specified properties on
1051 DefaultTraceListener (AssertUiEnabled, LogFileName) and TraceImpl
1052 (AutoFlush, IndentSize).
1053 * Switch.cs: Near complete re-write. Actually works, and is (should be)
1054 comformant with .NET behavior. Changed member names because they
1055 were confusing me. (Yes, that doesn't say much about my memory.)
1056 * TextWriterTraceListener.cs: Append text to already existing files,
1057 don't overwrite them.
1059 - Added private destructor, to ensure no instances are created.
1060 - Move members declarations to be closer to each other.
1061 * TraceSwitch.cs: Complete re-write. It works now.
1063 2002-12-17 Jonathan Pryor <jonpryor@vt.edu>
1064 * DiagnosticsConfigurationHandler.cs: Implement so that .config files
1065 support <system.diagnostics> sections.
1067 2002-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1069 * DefaultTraceListener.cs: now OutputDebugStringW is called from an
1070 internal call (update your runtime!). No more warnings in linux.
1072 2002-10-31 Dick Porter <dick@ximian.com>
1074 * Process.cs: MonoIO methods now have an error parameter
1076 2002-10-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1078 * DefaultTraceListener.cs: changed OutputDebugString to
1079 OutputDebugStringW (no more warnings under windows). Also a few style
1082 2002-10-23 Dick Porter <dick@ximian.com>
1084 * Process.cs: Redirected standard input needs to have AutoFlush set
1086 2002-09-27 Dick Porter <dick@ximian.com>
1088 * Process.cs: Implemented {get_,set_}{Min,Max}WorkingSet,
1089 ProcessName, GetProcessById, GetProcesses, GetProcessesByName.
1090 Pass the working directory to Start. Pass the program and args in
1091 one string to be used with the second arg of CreateProcess, so it
1092 will search the path.
1094 2002-09-19 Nick Drochak <ndrochak@gol.com>
1096 * TraceImpl.cs: Remove debug prints
1098 2002-09-19 Nick Drochak <ndrochak@gol.com>
1100 * TraceListenerCollection.cs: Set Indet level and size to default
1101 values. The values from TraceImpl might have been changed.
1103 2002-08-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1106 * TextWriterTraceListener.cs: IDisposable fixes.
1108 2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1110 * Process.cs: class status based fixes.
1112 2002-07-20 Dick Porter <dick@ximian.com>
1114 * Process.cs: Implement file handle redirection
1116 2002-07-13 Jonathan Pryor <jonpryor@vt.edu>
1117 * CounterCreationData.cs: Implemented
1118 * CounterCreationDataCollection.cs: Implemented
1119 * CounterSample.cs: Stubbed Out
1120 * CounterSampleCalculator.cs: Stubbed Out
1121 * InstanceData.cs: Implemented
1122 * InstanceDataCollection.cs: Implemented
1123 * InstanceDataCollectionCollection.cs: Implemented
1124 * MonitoringDescriptionAttribute.cs: Implemented
1125 * PerformanceCounter.cs: Stubbed Out
1126 * PerformanceCounterCategory.cs: Stubbed Out
1127 * PerformanceCounterInstaller.cs: Stubbed Out
1128 * PerformanceCounterManager.cs: Stubbed Out
1129 * PerformanceCounterPermission.cs: Stubbed Out
1130 * PerformanceCounterPermissionAccess.cs: Implemented
1131 * PerformanceCounterPermissionAttribute.cs: Stubbed Out
1132 * PerformanceCounterPermissionEntry.cs: Stubbed Out
1133 * PerformanceCounterPermissionEntryCollection.cs: Implemented
1134 * PerformanceCounterType.cs: Implemented
1137 2002-06-25 Dick Porter <dick@ximian.com>
1139 * Process.cs: Process forking and waiting, and some support functions
1141 * ProcessStartInfo.cs: Implemented the bits needed for basic
1144 * ProcessModule.cs: Implemented
1146 * ProcessModuleCollection.cs: Mostly implemented
1148 * FileVersionInfo.cs: Implemented
1150 2002-06-16 Jonathan Pryor <jonpryor@vt.edu>
1151 * ICollectData.cs: Implemented
1152 * TraceImpl.cs: Setting IndentLevel, IndentSize should change the
1153 corresponding properties on all current TraceListeners.
1154 Also, to answer the FIXME message: Yes, the properties in TraceListener
1155 need to be [ThreadStatic] as well.
1156 * TraceListenerCollection.cs: When adding a TraceListener, the TraceListener
1157 should have its properties set to the current TraceImpl property values.
1158 * TraceListener.cs: Make indentSize, lndentLevel [ThreadStatic].
1160 2002-06-09 Jonathan Pryor <jonpryor@vt.edu>
1161 * EntryWrittenEventArgs.cs: Implemented
1162 * EntryWrittenEventHandler.cs: Implemented
1163 * EventLog.cs: Stubbed out
1164 * EventLogEntry.cs: Stubbed out
1165 * EventLogEntryCOllection.cs: Implemented.
1166 * EventLogEntryType.cs: Implemented
1167 * EventLogInstaller.cs: Stubbed out
1168 * EventLogPermission.cs: Stubbed out
1169 * EventLogPermissionAccess.cs: Implemented
1170 * EventLogPermissionAttribute.cs: Stubbed out
1171 * EventLogPermissionEntry.cs: Stubbed out
1172 * EventLogPermissionEntryCollection.cs: Stubbed out
1173 * EventLogTraceListener.cs: Stubbed out
1175 2002-05-29 Jonathan Pryor <jonpryor@vt.edu>
1176 * DefaultTraceListener.cs: Implemented MONO_TRACE support
1178 2002-05-27 Jonathan Pryor <jonpryor@vt.edu>
1179 * Moved public API documentation for the following files to the
1180 /mcs/docs/apidocs/xml/en/System.Diagnostics directory:
1182 - DefaultTraceListener.cs
1183 - DiagnosticsConfigurationHandler.cs
1185 - TextWriterTraceListener.cs
1189 - TraceListenerCollection.cs
1192 2002-04-10 Jonathan Pryor <jonpryor@vt.edu>
1194 * TraceListenerCollection.cs: Corrected indexer property to provide the
1195 correct return value and implement the IList indexer property correctly.
1197 2002-04-07 Jonathan Pryor <jonpryor@vt.edu>
1199 * TraceListener.cs: Fix stack overflow bug
1200 * DefaultTraceListener.cs: Implement log file support
1202 2002-04-04 Dick Porter <dick@ximian.com>
1204 * ThreadWaitReason.cs:
1206 * ThreadPriorityLevel.cs:
1207 * ProcessWindowStyle.cs:
1208 * ProcessThreadCollection.cs
1210 * ProcessStartInfo.cs:
1211 * ProcessModuleCollection.cs: Stub out more classes needed for Process
1213 2002-03-31 Dick Porter <dick@ximian.com>
1216 * ProcessPriorityClass.cs:
1218 * FileVersionInfo.cs: Stub out classes needed for Process
1220 2002-03-08 Jonathan Pryor <jonpryor@vt.edu>
1222 * Debug.cs: Clean up (lots of code can be shared with Trace.cs, which
1223 is why TraceImpl.cs is introduced), "DEBUG" conditional support
1224 * TraceListener.cs: Proper implementation of Dispose pattern;
1225 implementatino of non-abstract methods in terms of abstract methods
1226 * TraceListenerCollection.cs: check 'object' types before adding
1227 * TextWriterTraceListener.cs: properly implement Dispose pattern;
1228 handle NeedIndent and WriteIndent
1229 * Trace.cs: new file; provides Trace functionality, "TRACE" conditional
1231 * DefaultTraceListener.cs: new file; the default trace listener
1233 2002-01-17 Miguel de Icaza <miguel@ximian.com>
1234 * TraceListenerCollection.cs: Remove Warnings.
1236 2002-01-06 Ravi Pratap <ravi@ximian.com>
1237 * Switch.cs, TraceListenerCollection.cs : Decorate incomplete bits
1238 with the MonoTODO attribute.
1240 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
1241 * Added Debug.cs to the build.
1243 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
1244 * Added preliminary TraceListenerCollection.cs to the build.
1246 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
1247 * Added TraceListener.cs, TextWriterTraceListener.cs, and
1248 DefaultTraceListener.cs to the build and moved them into the
1251 2002-01-04 John R. Hicks <angryjohn69@nc.rr.com>
1252 * Added DiagnosticsConfigurationHandler.cs to the build.
1254 2001-09-09 Nick Drochak <ndrochak@gol.com>
1255 * BooleanSwitch.cs: Make this class use it's parent class's features. Namely, use SwitchSetting
1256 so that we can get OnSwitchSettingChanged() to fire for free.
1258 2001-09-09 Nick Drochak <ndrochak@gol.com>
1259 * ChangeLog: added this file
1260 * Switch.cs: call OnSwitchSettingChanged() when the switch setting is, yes you gessed it, changed.