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