fixed IsDirty Property, added tests for IsDirty Property
[mono.git] / mcs / class / System / System.Configuration / ChangeLog
1 2007-01-14  Vladimir Krasnov  <vladimirk@mainsoft.com>
2
3         * SettingsPropertyValue.cs: fixed IsDirty Property
4
5 2007-01-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
6
7         * SettingsPropertyValue.cs: fixed PropertyValue, default value of
8         SettingsProperty should be desirialized or created
9
10 2007-01-03  Tor Lillqvist  <tml@novell.com>
11
12         * ConfigurationSettings.cs: First try loading a bundled
13         machine.config file, then try loading one from the file
14         system. From #80305.
15
16 2006-12-31  Vladimir Krasnov  <vladimirk@mainsoft.com>
17
18         * SettingsPropertyValue.cs: fixed PropertyValue property, added
19         default value convertation to property type
20
21 2006-12-12  Vladimir Krasnov  <vladimirk@mainsoft.com>
22
23         * SettingsBase.cs: implemented Item property
24
25 2006-11-09  Sebastien Pouliot  <sebastien@ximian.com>
26
27         * ApplicationSettingsBase.cs: Add special case when dealing with 
28         StringCollection in the Properties property.
29
30 2006-11-05  Vladimir Krasnov  <vladimirk@mainsoft.com>
31
32         * SettingsPropertyValue.cs: fixed PropertyValue property when it
33         should be deserialized.
34
35 2006-10-13  Atsushi Enomoto  <atsushi@ximian.com>
36
37         * ConfigurationSettings.cs :
38           Handle <section> inside <section> as expected.
39           Fixed some ReadSections() consumers that it does _not_ consume
40           the surrounding EndElement. For now all issues I found are gone.
41
42 2006-10-13  Atsushi Enomoto  <atsushi@ximian.com>
43
44         * ConfigurationSettings.cs : another MoveToNextElement() elimination.
45           When there is another section group after "system.drawing"
46           section in the existing machine.config, it borked as if there were
47           no "system.diagnostics" section.
48
49           It is still buggy; prepended sectionGroup still causes the above.
50
51 2006-10-13  Atsushi Enomoto  <atsushi@ximian.com>
52
53         * ConfigurationSettings.cs : when there is no content in
54           sectionGroup, all the following contents were incorrectly read
55           as the empty group's subsection.
56
57 2006-09-28  Andrew Skiba <andrews@mainsoft.com>
58
59         * ConfigurationSettings.cs: add support for requirePermission
60         attribute.
61
62 2006-09-28  Andrew Skiba <andrews@mainsoft.com>
63
64         * ConfigurationSettings.cs: TARGET_JVM
65
66 2006-08-23  Konstantin Triger <kostat@mainsoft.com>
67
68         * ConfigurationSettings.cs: remove CONFIGURATION_2_0 #if since NET_2_0
69                 implies it.
70
71 2006-07-31  Sebastien Pouliot  <sebastien@ximian.com>
72
73         * ConfigurationSettings.cs: Assert FileIOPermission when loading a 
74         configuration file.
75         * ConfigXmlDocument.cs: Add an imperative demand for PathDiscovery on
76         all (many classes) Filename properties. Ensure we're not using the
77         property (but the member) inside the class itself.
78
79 2006-06-29  Atsushi Enomoto  <atsushi@ximian.com>
80
81         * ApplicationSettingsBase.cs : When we use default value, convert it
82           to proper type. Fixed bug #78654. Patch by Gareth Pearce.
83
84 2006-05-30  Gert Driesen  <drieseng@users.sourceforge.net>
85
86         * ConfigurationException.cs: BareMessage, Filename and Line properties
87         are only virtual on 2.0 profile.
88         * ConfigurationSettings.cs: Marked GetConfig (string) obsolete on
89         2.0 profile.
90
91 2006-05-17  Atsushi Enomoto  <atsushi@ximian.com>
92
93         * SettingsPropertyCollection.cs : implemented some synchronization
94           releated members. Actually it can never be synchronized by itself.
95         * SettingsBase.cs : Synchronized() just returns the same instance,
96           marking it as IsSynchronized = true. Fixed bug #78430.
97
98 2006-05-12  Atsushi Enomoto  <atsushi@ximian.com>
99
100         * ConfigurationSettings.cs : another System.Orgy insanity.
101
102 2006-05-12  Atsushi Enomoto  <atsushi@ximian.com>
103
104         * ConfigurationSettings.cs : ok, now I correctly understand the
105           problem. Since appSettings section handlers are different between
106           1.x and 2.0 AppSettings property implementation should also be
107           different. It should really fix bug #78372.
108
109 2006-05-10  Atsushi Enomoto  <atsushi@ximian.com>
110
111         * ConfigurationSettings.cs : use ConfigurationManager.GetConfig()
112           in its GetConfig(). No need to change AppSettings and
113           Default.GetConfig() behavior here.
114
115 2006-05-05  Chris Toshok  <toshok@ximian.com>
116
117         * LocalFileSettingsProvider.cs (IsUserSetting): more
118         CONFIGURATION_DEP crap.
119
120 2006-05-05  Chris Toshok  <toshok@ximian.com>
121
122         * ApplicationSettingsBase.cs (CacheValuesByProvider): emit
123         SettingsLoaded after we load the property values.
124         (set_Item[string]): fill in settingClass in the
125         SettingChangingEventArgs properly.
126         (get_Properties): don't depend on setting_attrs[0] being either
127         UserScoped- or ApplicationScopedSettingAttribute.  Also, call
128         Initialize on any providers we create here.
129
130         * LocalFileSettingsProvider.cs (GetPropertyValues): add a naive
131         implementation, leave a MonoTODO.
132         (Initialize): fill in name properly, and deal with null values.
133
134 2006-04-28  Atsushi Enomoto  <atsushi@ximian.com>
135
136         * NoSettingsVersionUpgradeAttribute.cs
137           SettingsDescriptionAttribute.cs
138           SettingsGroupDescriptionAttribute.cs
139           SettingsGroupNameAttribute.cs
140           SettingsManageability.cs
141           SettingsManageabilityAttribute.cs
142           SpecialSetting.cs
143           SpecialSettingAttribute.cs : new files.
144         * ConfigurationException.cs
145           SettingsPropertyCollection.cs : minor API compat fixes.
146
147 2006-04-27  Atsushi Enomoto  <atsushi@ximian.com>
148
149         * SettingElement.cs : more circular dependency fix.
150
151 2006-04-27  Atsushi Enomoto  <atsushi@ximian.com>
152
153         * SettingValueElement.cs,
154           SettingElement.cs : circular dependency hell fix.
155
156 2006-04-27  Atsushi Enomoto  <atsushi@ximian.com>
157
158         * ClientSettingsSection.cs : new (implemented) file.
159         * SettingValueElement.cs : implemented.
160           SettingElement.cs : implemented.
161           SettingElementCollection.cs : implemented except for Add(),
162           Clear(), Get() and Remove().
163
164           A test will be soon added as part of bug #77957 test with
165           DefaultCollection support in sys.configuration.
166
167 2006-04-26  Atsushi Enomoto  <atsushi@ximian.com>
168
169         * ApplicationSettingsGroup.cs : added missing type. This is part of
170           fix for bug #77957.
171
172 2006-03-11  Miguel de Icaza  <miguel@novell.com>
173
174         * ConfigurationSettings.cs (ChangeConfigurationSettings): Make
175         internal to avoid warnings.  This routine is called from
176         System.Web with MethodInfo.Invoke.
177
178 2006-02-01  Atsushi Enomoto  <atsushi@ximian.com>
179
180         * SettingElementCollection.cs : CollectionType is protected.
181
182 2006-01-16  Chris Toshok  <toshok@ximian.com>
183
184         * ConfigurationSettings.cs (AppSettings): move back to a 1.x
185         strategy in the 2.0 case.  That is, don't hardcode the reference
186         to ConfigurationManager.AppSettings (yet).  Eventually we can move
187         back to this code, once ConfigurationManager supports reading
188         web.config for settings.
189
190 2006-01-03  Chris Toshok  <toshok@ximian.com>
191
192         * ConfigurationSettings.cs (GetConfig): be nice to people using
193         old 1.x style section handlers with the new 2.0 config stuff.  If
194         we're about to return null or IgnoreSection, try to load it using
195         the 1.x api.  If that works, return that object.
196
197 2006-01-02  Chris Toshok  <toshok@ximian.com>
198
199         * LocalFileSettingsProvider.cs: use the PrebuiltSystem extern
200         alias to make sure we use the right type for NameValueCollection.
201         (Initialize): enable (under the CONFIGURATION_2_0 ifdef).
202
203         * ConfigurationSettings.cs: use the PrebuiltSystem extern alias to
204         make sure we use the right type for NameValueCollection.
205         (AppSettings): provide an implementation for the NET_2_0 &&
206         CONFIGURATION_2_0 case.
207         (GetConfig): same.
208         (ReadSectionGroup): allow a type attribute in the NET_2_0 &&
209         CONFIGURATION_2_0 case.
210
211         * AppSettingsReader.cs: use the PrebuiltSystem extern alias to
212         make sure we use the right type for NameValueCollection.
213
214 2005-11-28  Chris Toshok  <toshok@ximian.com>
215
216         * SettingValueElement.cs: wrap a few more things in
217         CONFIGURATION_DEP.
218
219 2005-11-09  Chris Toshok  <toshok@ximian.com>
220
221         * ConfigurationSettings.cs (AppSettings): remove the #if NET_2_0
222         block breaks this.
223         (ReadSectionGroup): allow the "type" atrribute so we don't break
224         when reading a 2.0 config file using the 1.0 stuff.
225
226 2005-11-04  Chris Toshok  <toshok@ximian.com>
227
228         * SettingsProvider.cs, SettingsPropertyValueCollection.cs,
229         SettingValueElement.cs, SettingElement.cs,
230         SettingsPropertyValue.cs, ApplicationSettingsBase.cs,
231         SettingsPropertyCollection.cs, SettingsProviderCollection.cs,
232         SettingElementCollection.cs: Add XML_DEPS and CONFIGURATION_DEPS
233         to get this to bootstrap compile.  What a pain.
234         
235 2005-11-04  Chris Toshok  <toshok@ximian.com>
236
237         * ApplicationSettingsBase.cs: remove unnecessary using.
238
239         * SettingValueElement.cs: add XML_DEP's.
240
241 2005-11-03  Chris Toshok  <toshok@ximian.com>
242
243         * ConfigurationSettings.cs: add ObsoleteAttribute's.
244
245         * ConfigurationException.cs: add ObsoleteAttribute's.
246
247         * IConfigurationSystem.cs: add ComVisibleAttribute.
248
249         * ApplicationSettingsBase.cs: new stubs, with a broken/naive
250         implementation.
251
252         * SettingElementCollection.cs, IPersistComponentSettings.cs,
253         SettingElement.cs, LocalFileSettingsProvider.cs,
254         SettingValueElement.cs: new stubs.
255
256         * SettingAttribute.cs: fix typo.
257
258 2005-09-22  Chris Toshok  <toshok@ximian.com>
259
260         * SettingsPropertyWrongTypeException.cs: new exception.
261
262 2005-09-20  Chris Toshok  <toshok@ximian.com>
263
264         * SettingsPropertyValue.cs
265         (SettingsPropertyValue.set_PropertyValue): set needPropertyValue =
266         false here so we don't pull in the default value in the getter.
267
268         * SettingsProviderCollection.cs: new implementation.
269
270         * SettingsPropertyValueCollection.cs
271         (SettingsPropertyValueCollection..ctor): init items.
272         (Add): add an internal method that takes a
273         SettingsPropertyValueCollection.
274
275 2005-09-20  Chris Toshok  <toshok@ximian.com>
276
277         * SettingsSavingEventHandler.cs: new delegate.
278         
279         * SettingChangingEvent{Handler,Args}.cs: new delegate and args
280
281         * SettingsLoaded{Handler,Args}.cs: new delegate and args
282
283         * SettingsProviderAttribute.cs, SettingSerializeAsAttribute.cs,
284         UserScopedSettingAttribute.cs, DefaultSettingValueAttribute.cs,
285         ApplicationScopedSettingAttribute.cs, SettingAttribute: new
286         attributes.
287
288 2005-09-20  Chris Toshok  <toshok@ximian.com>
289
290         * SettingChangingEventArgs.cs: new implementation.
291
292         * SettingsPropertyIsReadOnlyException.cs: new exception.
293
294         * SettingsPropertyNotFoundException.cs: new exception.
295
296         * ISettingsProviderService.cs: new interface.
297
298         * IApplicationSettingsProvider.cs: new interface.
299
300         * SettingsPropertyValueCollection.cs: new implementation.
301
302         * SettingsPropertyCollection.cs: new implementation.
303
304         * SettingsBase.cs: implement the obvious bits (getters,
305         basically).
306
307         * SettingsPropertyValue.cs: make this work for the tests.
308         Disgusting class here.  dis-gus-ting.
309
310 2005-09-19  Chris Toshok  <toshok@ximian.com>
311
312         * System.Configuration/SettingsProvider.cs,
313         System.Configuration/SettingsPropertyValueCollection.cs,
314         System.Configuration/SettingsPropertyCollection.cs,
315         System.Configuration/SettingsProviderCollection.cs,
316         System.Configuration/SettingsBase.cs,
317         System.Configuration/SettingsSerializeAs.cs,
318         System.Configuration/SettingsPropertyValue.cs,
319         System.Configuration/SettingsProperty.cs,
320         System.Configuration/SettingsContext.cs,
321         System.Configuration/SettingsAttributeDictionary.cs: new files.
322
323 2005-07-05  Raja R Harinath  <rharinath@novell.com>
324
325         * ConfigurationSettings.cs (ConnectionStrings): Change XML_DEP
326         guard to CONFIGURATION_DEP.
327
328 2005-06-15  Lluis Sanchez Gual <lluis@novell.com>
329
330         * ProviderBase.cs: Moved here from System.Configuration.dll.
331
332 2005-06-14  Lluis Sanchez Gual <lluis@novell.com>
333
334         * AppSettingsSection.cs, ConfigInfo.cs, Configuration.cs
335         ConfigurationAllowDefinition.cs, ConfigurationElement.cs
336         ConfigurationElementCollection.cs, ConfigurationElementCollectionType.cs
337         ConfigurationLocation.cs, ConfigurationLocationCollection.cs
338         ConfigurationProperty.cs, ConfigurationPropertyAttribute.cs
339         ConfigurationPropertyCollection.cs, ConfigurationPropertyFlags.cs
340         ConfigurationSection.cs, ConfigurationSectionCollection.cs
341         ConfigurationSectionGroup.cs, ConfigurationSectionGroupCollection.cs
342         ConfigurationUpdateMode.cs, ConfigurationUserLevel.cs
343         ConfigurationValidationAttribute.cs, ConnectionStringsSection.cs
344         ConnectionStringSettingsCollection.cs, ConnectionStringSettings.cs
345         IntegerConfigurationProperty.cs, NonEmptyStringConfigurationProperty.cs
346         NonEmptyStringFlags.cs, PathLevel.cs, ProtectedConfigurationProvider.cs
347         ProviderBase.cs, ProviderSettings.cs, ProviderSettingsCollection.cs
348         RuntimeOnlySection.cs, SectionInfo.cs, SectionGroupInfo.cs
349         TimeSpanConfigurationProperty.cs, TimeSpanPropertyFlags.cs
350         TimeSpanSerializedFormat.cs:
351
352         Moved to the new System.Configuration assembly.
353
354
355 2005-03-23  Jackson Harper  <jackson@ximian.com>
356
357         * ApplicationSettingsBase.cs: We need this stub to do some 2.0
358         winforms stuff.
359
360 2005-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
361
362         * Configuration.cs: a few MonoTODOs less.
363
364 2005-03-02  Sureshkumar T  <tsureshkumar@novell.com>
365
366         * ConfigurationSettings.cs: Implemented ConnectionStrings
367         property.
368
369 2005-02-22  Sureshkumar T  <tsureshkumar@novell.com>
370
371         * ConnectionStringsSection.cs: Implemented all methods.
372
373         New Files Added:
374         * ConnectionStringSettings.cs: Configuration object for a
375         connection string element.
376         * ConnectionStringSettingsCollection.cs: Collection of
377         ConnectionStringSettings objects.
378
379 2005-02-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
380
381         * Configuration.cs: (.ctor) don't fail if the file to load does not
382         exist.
383         (GetExeConfiguration): use caller assembly location if the path is null
384         and check that the exe file exists.
385         Removed if XML_DEP, as there's one at the top of the file.
386
387 2004-11-18  Geoff Norton <gnorton@customerdna.com>
388
389         * ProviderSettingsCollection.cs: Add XML_DEP because this inherits 
390         ConfigurationElementCollection which has XML_DEP.  Fixes bootstrap
391         
392 2004-11-18  Lluis Sanchez Gual <lluis@novell.com>
393
394         * ProviderSettings.cs, ProviderSettingsCollection.cs: Mostly implemented.
395         * Configuration.cs: Implemented GetSection() and GetSectionGroup().
396         * AppSettingsSection.cs: Better null check in Reset().
397
398 2004-11-15  Lluis Sanchez Gual <lluis@novell.com>
399
400         * TimeSpanConfigurationProperty.cs, TimeSpanPropertyFlags.cs,
401         TimeSpanSerializedFormat.cs: Implemented.
402
403 2004-11-09  Duncan Mak  <duncan@ximian.com>
404
405         * NonEmptyStringConfigurationProperty.cs: Add XML_DEP, this should
406         fix the build.
407
408 2004-11-09  Lluis Sanchez Gual <lluis@novell.com>
409
410         * ConfigurationElement.cs: Implemented Equals and GetHashCode.
411         Only reflect properties from type's members if the type does not
412         override Properties.
413         * ConfigurationElementCollection.cs: Implemented Equals and GetHashCode.
414         Other minor fixes.
415         * ConfigurationProperty.cs: It is not a subclass of ConfigurationElement.
416         * NonEmptyStringConfigurationProperty.cs, NonEmptyStringFlags.cs:
417         Implemented.
418         
419 2004-11-09  Lluis Sanchez Gual <lluis@novell.com>
420
421         * AppSettingsSection.cs: Mostly implemented (missing support for
422         file attribute).
423         * ConfigHelper.cs: GetNameValueCollection now returns a 
424         ConfigNameValueCollection instance which is a NameValueCollection with a
425         modification flag.
426         * ConfigInfo.cs: Added XPath property.
427         * Configuration.cs: Implemented AppSettings property. Set the Path property
428         of sections and groups.
429         * ConfigurationElement.cs: Support key serialization. Properly reset
430         nested elements.
431         * ConfigurationElementCollection.cs: Initial implementation.
432         * ConfigurationSection.cs: Impemented Path and GetRuntimeObject.
433         * ConfigurationSectionGroup.cs: Implemented Path.
434         * SectionGroupInfo.cs: Little fix.
435
436 2004-11-05  Lluis Sanchez Gual <lluis@novell.com>
437
438         * Configuration.cs: Minor fixes.
439         * ConfigurationElement.cs: Added support for the different update modes.
440         * SectionGroupInfo.cs: Support loading the same configuration section
441           from different files.
442         * SectionInfo.cs: Properly write back configuration data for which a
443           section object has not been created.
444
445 2004-11-04  Lluis Sanchez Gual <lluis@novell.com>
446
447         * AppSettingsSection.cs, ConfigurationPropertyCollection.cs,
448           ConfigurationValidationAttribute.cs, ConnectionStringsSection.cs,
449           ProtectedConfigurationProvider.cs, ProviderBase.cs
450           RuntimeOnlySection.cs: Fixed formatting and added missing TODOs.
451
452 2004-11-04  Lluis Sanchez Gual <lluis@novell.com>
453
454         * Configuration.cs, ConfigurationElement.cs, ConfigurationLocation.cs,
455           ConfigurationLocationCollection.cs, ConfigurationProperty.cs,
456           ConfigurationPropertyAttribute.cs, ConfigurationSection.cs,
457           ConfigurationSectionCollection.cs, ConfigurationSectionGroup.cs,
458           ConfigurationSectionGroupCollection.cs,IntegerConfigurationProperty.cs,
459           RuntimeOnlySection.cs: Initial implementation.
460         * ConfigurationAllowDefinition.cs: Removed XML_DEP ifdef
461         * ConfigurationException.cs: format fix.
462         * ConfigInfo.cs, SectionInfo.cs, SectionGroupInfo.cs: New support
463           classes.
464
465 2004-09-10  Tim Coleman <tim@timcoleman.com>
466         * ConfigurationElementCollection.cs ConfigurationElementCollectionType.cs:
467                 New Fx 2.0 stubs
468         * ConfigurationElement.cs:
469                 Fix function declaration
470
471
472 2004-08-16  Duncan Mak  <duncan@ximian.com>     
473
474         * ConfigurationElement.cs (InitializeDefault): Made virtual.
475
476         * AppSettingsSection.cs:
477         * Configuration.cs:
478         * ConfigurationLocation.cs:
479         * ConfigurationLocationCollection.cs:
480         * ConfigurationSection.cs:
481         * ConfigurationSectionCollection.cs:
482         * ConfigurationSectionGroup.cs:
483         * ConfigurationSectionGroupCollection.cs:
484         * ConnectionStringsSection.cs: Added stubs and bits of implementation.
485
486         Other than ConfigurationElementCollection and
487         ConnectionStringsSectionCollection, we now have the basic skeleton
488         for implementing the configuration system in the
489         System.Configuration namespace.
490
491 2004-08-11  Duncan Mak  <duncan@ximian.com>
492
493         * ProtectedConfigurationProvider.cs: Use XML_DEP.
494
495 2004-08-11  Duncan Mak  <duncan@ximian.com>     
496
497         * ProtectedConfigurationProvider.cs:
498         * ProviderBase.cs: Implemented.
499
500         * ConfigurationPropertyAttribute.cs: Implemented attribute.
501
502         * ConfigurationAllowDefinition.cs:
503         * ConfigurationUserLevel.cs:
504         * PathLevel.cs: Added enumerations.
505
506 2004-08-07  Atsushi Enomoto  <atsushi@ximian.com>
507
508         * ConfigurationElement.cs,
509           ConfigurationProperty.cs,
510           ConfigurationPropertyCollection.cs,
511           ConfigurationValidationAttribute.cs : use XML_DEP.
512
513 2004-08-06  Duncan Mak  <duncan@ximian.com>
514
515         * ConfigurationElement.cs: Added stubs.
516
517         * ConfigurationProperty.cs:
518         * ConfigurationPropertyCollection.cs:
519         * ConfigurationValidationAttribute.cs: Added.
520
521         * ConfigurationPropertyFlags.cs: 
522         * ConfigurationUpdateMode.cs: Added 2.0 enumerations.   
523
524 2004-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
525
526         * ConfigurationSettings.cs: allow empty <configSections>.
527
528 2004-05-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
529
530         * ConfigurationSettings.cs: don't ask me why, but the .cctor
531         initialization of 'instance' field does no longer work.
532
533 2004-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
534
535         * ConfigXmlDocument.cs: removed method that was supposed to be internal.
536
537         * ConfigurationSettings.cs: instead of calling the overload that doesn't
538         exist in MS, use what we have when loading an external file.
539
540 2004-04-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
541
542         * ConfigXmlDocument.cs: fixed overloaded Load and added a new one that
543         sets the file name.
544
545         * ConfigurationSettings.cs: use the new Load in ConfigXmlDocument when
546         loading sections.
547
548         * NameValueFileSectionHandler.cs: don't fails if the path for the 'file'
549         attribute doesn't have a directory.
550
551         Closes bug #57244.
552
553 2004-03-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
554
555         * ConfigurationSettings.cs: removed FileWatcherCache. See bug #53445.
556
557 2003-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
558
559         * ConfigurationSettings.cs: initialize config in
560         ChangeConfigurationSettings if it has not been done yet. Patch by
561         George Kodinov gkodinov@openlinksw.co.uk). Fixes bug #51643.
562
563 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
564
565         * ConfigurationSettings.cs: handle allowdefinition and allowlocation,
566         added locks, don't reopen the file for every new section to be read,
567         but keep them as strings and build the section handlers with that.
568         Also allow changing the configuration system (used from System.Web).
569
570 2003-11-17 Ben Maurer  <bmaurer@users.sourceforge.net>
571
572         * ConfigurationSettings.cs: make the *Mark objects static
573         because they need to be comparable across instances.
574         (ReadSectionGroup): You can add an element to a group declared
575         in the parent config files (MS.net's QuickStarts do this).
576
577 2003-11-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
578
579         * ConfigurationSettings.cs: don't handle null or non-existent file in
580         the catch blocks.
581
582 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
583
584         * ConfigurationSettings.cs: really make the cache work.
585
586 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
587
588         * ConfigurationSettings.cs: pass the file name we're reading as the
589         context.
590
591 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
592
593         * ConfigurationSettings.cs: patch by Eric Lindvall (eric@5stops.com)
594         that improves performance by not reading the file more than once.
595
596 2003-07-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
597
598         * ConfigurationSettings.cs: Removed unused exception variable, fixes
599         compiler warning
600
601 2003-06-16  Lluis Sanchez Gual <lluis@ximian.com>
602
603         * ConfigurationSettings.cs: Avoid chicken-egg problem when reading
604         machine.config. Cannot use an uri to read mechine.config because web
605         request module handelrs are defined in machine.config.
606
607 2003-03-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
608
609         * AppSettingsReader.cs: fixed bug #38755.
610
611 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
612
613         * ConfigXmlDocument.cs: don't jump over the first element.
614         * ConfigurationSettings.cs: pass doc.DocumentElement instead of doc.
615
616         This used to work until i tried to access one attribute of the first
617         element and realized that the element was not the expected!
618         This change does not affect the configuration handlers that only use
619         ChildNodes property on the XmlNode they get as argument.
620
621 2002-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
622
623         * ConfigurationSettings.cs: removed type loading hack no longer needed.
624
625 2002-12-14  Jonathan Pryor <jonpryor@vt.edu>
626
627         * ConfigurationSettings.cs: Allow configuration sections to be removed.
628
629 2002-11-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
630
631         * ConfigurationSettings.cs: use AppDomainSetup to get the configuration
632         file name for the AppDomain.
633
634 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
635
636         * ConfigHelper.cs: NameValueCollection.Add is now fixed.
637
638 2002-10-14  Martin Baulig  <martin@gnome.org>
639
640         * ConfigurationSettings.cs (DefaultConfig.GetAppConfigPath):
641         Append ".config" to the filename, not ".exe.config" since the
642         filename already has a ".exe" suffix.
643
644 2002-10-14  Martin Baulig  <martin@gnome.org>
645
646         * ConfigurationSettings.cs (DefaultConfig.GetAppConfigPath): Use
647         Assembly.Location, not Assembly.FullName to get its filename.
648
649 2002-10-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
650
651         * ConfigHelper.cs: workaround for a bug in NameValueCollection.
652         * ConfigurationSettings.cs: load sections when the parent holds a
653         handler for it. Now overriding appSettings values in the app config
654         file works (first <remove..> and then <add...).
655
656 2002-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
657
658         * ConfigHelper.cs:
659         * NameValueFileSectionHandler.cs: check that Attributes is not null.
660
661 2002-10-09  Miguel de Icaza  <miguel@ximian.com>
662
663         * NameValueFileSectionHandler.cs: For now if a section is not
664         present, return null.  Do not know what the real fix is.  Gonzalo
665         will have to look at this, but the debugger was crashing as
666         appSettings in the machine.config does not exist, but GetConfig
667         returns a non-null value when looking it up when you do a
668         GetDocumentForSection ("appSettings").
669
670 2002-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
671
672         * ConfigurationSettings.cs: use get_machine_config_path internal call.
673
674 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
675
676         * ConfigXmlDocument.cs: move the reader for the section to the first
677         element.
678         
679         * ConfigurationSettings.cs: fixed hierarchical search for a handler. 
680
681 2002-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
682
683         * ConfigurationSettings.cs: reimplemented. It is now able to deliver
684         sections to their handlers for processing.
685
686 2002-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
687
688         * ConfigHelper.cs: New file. Contains some
689         helper functions for getting key-value collections from the config file.
690         
691         * ConfigXmlDocument.cs: wrapper around xml elements to provide line
692         number and file name info.
693         * IConfigXmlNode.cs: used in ConfigXmlDocument and
694         ConfigurationException.
695
696         * ConfigurationException.cs: get file name and line
697         number from the wrapped XmlNode. Display this info in Message.
698
699         * NameValueFileSectionHandler.cs: new handler.
700         * DictionarySectionHandler.cs:
701         * NameValueSectionHandler.cs: modified to use the helper methods in
702         ConfigHelper.
703
704 2002-10-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
705
706         * AppSettingsReader.cs: New file.
707         * IConfigurationSystem.cs: New file.
708
709         * IgnoreSectionHandler.cs:
710         * NameValueSectionHandler.cs:
711         * SingleTagSectionHandler.cs: little fixes.
712
713 2002-09-03  Martin Baulig  <martin@gnome.org>
714
715         * ConfigurationSettings.cs (ConfigurationSettings.GetConfig): Use the
716         correct configuration filename, fixed the TODO.
717         (GetSectionHanderType): Renamed to GetSectionHandlerType.
718
719         * NameValueSectionHandler.cs (NameValueSectionHandler.Create): Allow
720         whitespaces in the configuration file.
721
722 2002-01-31  Duncan Mak  <duncan@ximian.com>
723
724         * ConfigurationException.cs: Rewrote most of the file and added
725         serialization bits.
726
727 2002-01-06  Ravi Pratap  <ravi@ximian.com>
728
729         * ConfigurationSettings.cs, IgnoreSectionHandler.cs : MonoTODO decoration
730
731         * SingleTagSectionHandler.cs, DictionarySectionHandler.cs, 
732         NameValueSectionHandler.cs : Ditto.
733
734 2001-08-28  Christopher Podurgiel <cpodurgiel@msn.com>
735         * IConfigurationSectionHandler.cs: Added reference to System.Xml.
736         
737         * SingleTagSectionHandler.cs: Added Implementation of Create() method.
738         
739         * NameValueSectionHandler.cs: Added Implementation of Create() method.
740         
741         * ConfigurationException.cs: Now returns proper message rather than "System Exception".
742
743 2001-08-26  Christopher Podurgiel <cpodurgiel@msn.com>
744
745         * ConfigurationSettings.cs: No longer references the
746         NameValueSectionHandler directly.  Instead it uses
747         System.Reflection to call the Create() method for the appropriate
748         SectionHandler as defined in the .config file.