1 2010-02-16 Carlos Alberto Cortez <calberto.cortez@gmail.com>
3 * CustomizableLocalFileSettingsProvider.cs: When saving the
4 properties, ignore the properties marked with
5 ApplicationScopedSettingAttribute, as they are not serialized in .net
6 by FileSettingsProvider (the default class used to save the config,
7 and the one using the class we are modifying).
10 2010-02-12 Carlos Alberto Cortez <calberto.cortez@gmail.com>
12 * CustomizableLocalFileSettingsProvider.cs: The name of the child
13 class of Settings should be 'normalized' by replacing the chars that
14 are invalid in a xml element name with their corresponding hexadecimal
15 values. This is specially visible when using classes container in
19 2009-08-31 Gonzalo Paniagua Javier <gonzalo@novell.com>
21 * CustomizableFileSettingsProvider.cs: reset the property value
22 instead of using the DefaultValue.
23 * SettingsPropertyValue.cs: new Reset() method.
24 * ApplicationSettingsBase.cs: Reset happens in Reload().
25 Patch by Andrew Kurochka that fixes bug #532180.
27 2009-06-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
29 * IriParsingElement.cs:
31 * IdnElement.cs: new files that parse <uri> and subelements.
33 2009-06-05 Marek Safar <marek.safar@gmail.com>
35 * DictionarySectionHandler.cs, NameValueSectionHandler.cs,
36 NameValueFileSectionHandler.cs, SingleTagSectionHandler.cs,
37 IConfigurationSectionHandler.cs, IgnoreSectionHandler.cs: Always
38 build IConfigurationSectionHandler.
40 2009-05-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
42 * CustomizableFileSettingsProvider.cs: make sure 'values' is
43 initialized in Reset(). Fixes bug #436592.
45 2009-04-03 Marek Habersack <mhabersack@novell.com>
47 * CustomizableFileSettingsProvider.cs: added a way for System.Web
48 to specify path to the current Web.config. Fixes bug #491531
50 2008-11-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
52 * ConfigHelper.cs: allow xmlns attribute.
54 2008-11-15 Gert Driesen <drieseng@users.sourceforge.net>
56 * SettingsPropertyValue.cs: Do not return null for zero-length String
59 2008-11-11 Atsushi Enomoto <atsushi@xiiman.com>
62 * SettingValueElement.cs : do not write value element twice.
63 * CustomizableFileSettingsProvider.cs : create "value" element
64 instead of a document fragment so that the output from
65 SettingValueElement could become consistent.
66 Null binary value caused crash. Set appropriate
67 SerializedValue for each serialization type.
68 * SettingsPropertyValue.cs : output only when the value is
71 2008-11-05 Atsushi Enomoto <atsushi@xiiman.com>
73 * SettingValueElement.cs, CustomizableFileSettingsProvider.cs :
74 revert previous regressive change.
76 2008-11-05 Atsushi Enomoto <atsushi@xiiman.com>
78 * SettingValueElement.cs, CustomizableFileSettingsProvider.cs :
79 Fixed bug #439943. Xml deserialization for complex content was
82 2008-10-05 Gert Driesen <drieseng@users.sourceforge.net>
84 * CustomizableFileSettingsProvider.cs (LoadPropertyValue): Do not
85 hide ArgumentException.
87 2008-10-04 Gonzalo Paniagua Javier <gonzalo@novell.com>
89 * CustomizableFileSettingsProvider.cs: when reading application or
90 user settings, only read those settings appropriate for the context.
91 This avoids duplicate key errors when 2 different groups have a key
93 * ApplicationSettingsBase.cs: the context is a hashtable with several
94 values set upon creation: SettingsKey, GroupName and
99 2008-10-04 Gonzalo Paniagua Javier <gonzalo@novell.com>
101 * ApplicationSettingsBase.cs: honor the IsSynchronized value in the
102 Context, Properties, PropertyValues and Providers. All of them might
103 initialize an instance field for the class. Hopefully this fixes some
106 2008-10-04 Gonzalo Paniagua Javier <gonzalo@novell.com>
108 * ApplicationSettingsBase.cs: honor the IsSynchronized value in the
111 2008-09-15 Raja R Harinath <harinath@hurrynot.org>
113 * ConfigXmlDocument.cs (Load): Fix build break in 1.1 profile.
114 Open code the 'using' with try/finally/Close.
116 2008-09-14 Gert Driesen <drieseng@users.sourceforge.net>
118 * ConfigXmlDocument.cs: Dispose XmlTextReader in Load (String).
120 2008-09-01 Ivan N. Zlatev <contact@i-nz.net>
122 * SettingsPropertyValue.cs: Explicitly use the Invariant culture
123 instead of the current.
126 2008-08-05 Ivan N. Zlatev <contact@i-nz.net>
128 * ApplicationSettingsBase.cs: If there is no explicit
129 SettingsSerializeAs attribute to specify the format, distinguish
130 between plain string and XML by checking if the TypeConverter for the
131 property type supports string conversions. If it doesn't then we are
135 2008-06-26 Gert Driesen <drieseng@users.sourceforge.net>
137 * ConfigXmlDocument.cs: Implement IConfigErrorInfo on all Node classes.
139 2008-06-25 Gert Driesen <drieseng@users.sourceforge.net>
141 * ConfigurationExceptionTest.cs: Removed local bareMessage field, and
142 use base.Message instead. Fixed default cor to invoke String ctor of
143 SystemException. Fixed Message property to only add filename if not
144 null or zero-length string, and only add line if not zero.
145 * DictionarySectionHandler.cs: Fixed line endings.
146 * IgnoreSectionHandler.cs: Fixed line endings.
148 2008-03-21 Atsushi Enomoto <atsushi@ximian.com>
150 * CustomizableFileSettingsProvider.cs : fix possible NRE for
151 SettingsContext.Current.
153 2008-03-21 Atsushi Enomoto <atsushi@ximian.com>
155 * CustomizableFileSettingsProvider.cs : some hash calculation
156 improvements by the author.
157 2008-03-14 Atsushi Enomoto <atsushi@ximian.com>
159 * CustomizableFileSettingsProvider.cs : cosmetic header fix
160 requested by the author.
162 2008-01-12 Sebastien Pouliot <sebastien@ximian.com>
164 * SettingsPropertyValue.cs: Fix typo. Found using Gendarme.
166 2007-11-21 Atsushi Enomoto <atsushi@ximian.com>
168 * CustomizableFileSettingsProvider.cs : when a property is found
169 only in the config file and not in the corresponding config type,
170 do not raise NRE but just add it as a simple property value.
173 2007-11-13 Atsushi Enomoto <atsushi@ximian.com>
175 * ConfigXmlDocument.cs : corcompare cleanup.
177 2007-11-06 Atsushi Enomoto <atsushi@ximian.com>
179 * CustomizableFileSettingsProvider.cs : Type.Namespace can be null.
180 MSDN documentation is kind of wrong here.
182 2007-10-31 Arina Itkes <arinai@mainsoft.com>
184 * CustomizableFileSettingsProvider.cs, LocalFileSettingsProvider.cs:
185 Return flow to the state before revision 80469
186 for compilation with defined TARGET_JVM flag.
188 2007-06-21 Atsushi Enomoto <atsushi@ximian.com>
190 * SettingValueElement.cs : implement Reset().
191 * CustomizableFileSettingsProvider.cs : fixed company name getter
192 and product name getter.
193 LoadPropertyValue() should expect null ValueXml.
194 * LocalFileSettingsProvider.cs : time to switch. With a bit of
195 directory name difference, it should work.
197 2007-06-13 Atsushi Enomoto <atsushi@ximian.com>
199 * CustomizableLocalFileSettingsProvider.cs :
200 - added extern alias to avoid reference and I could enable
202 - Copied default user config path stuff (Company/Product/Version)
203 from MWF Application.cs.
204 - SaveProperties() and SavePropertiesNoRoaming() are unified, and
205 mostly rewritten to create userSettings, set value correctly, etc.
206 - GetPropertyValues() should collect default values as well.
208 It is not enabled yet, as Configuration.Save() seems to do wrong
209 and could overwrite application exe.config.
211 2007-06-13 Atsushi Enomoto <atsushi@ximian.com>
213 * SettingsContext.cs : add internal CurrentSettings property to
214 make current ApplicationSettingsBase accessible.
215 * ApplicationSettingsBase.cs : use above.
216 * SettingValueElement.cs : implement SerializeToXmlElement().
218 2007-06-12 Vladimir Krasnov <vladimirk@mainsoft.com>
220 * SettingValueElement.cs: fixed stub Properties property for
221 System.Configuration fixes
223 2007-06-04 Atsushi Enomoto <atsushi@ximian.com>
225 * CustomizableLocalFileSettingsProvider.cs : contribution for
226 LocalFileSettingsProvider implementation, by Noriaki Okimoto
227 (seara@ojk.sppd.ne.jp), modified by myself to fit for System.dll.
228 Origin of code license assignment at
229 http://ojk.sppd.ne.jp/ojkblog/?date=20070603#p01.
230 * LocalFileSettingsProvider.cs : rewriting to use above.
232 Due to some kind of compiler issue it is not enabled yet.
234 2007-05-30 Atsushi Enomoto <atsushi@ximian.com>
236 * ApplicationSettingsBase.cs : removed garbage debugging stuff.
238 2007-05-30 Atsushi Enomoto <atsushi@ximian.com>
240 * ConfigXmlDocument.cs : added explicit interface implementations.
241 * ApplicationSettingsBase.cs : split deeply-nested get_Properties()
242 into itself and a method. Treat default LocalFileSettingsProvider
243 as a (valid) settings provider. Removed a fixme (only public
244 members should be available).
245 * SettingsBase.cs : check lock state in Save().
246 * SettingsProviderCollection.cs : remove bogus table field which
247 conflicts with the table in base ProviderCollection class.
249 2007-05-30 Atsushi Enomoto <atsushi@ximian.com>
251 * SettingsBase.cs : property values are filled only when each
252 property is accessed. It should not use virtual providers,
253 properties or context internally since they could be overriden.
254 * SettingsPropertyValue.cs : to serialize value as string, use
255 TypeConverter as well (as deserialization).
256 * SettingsProviderCollection.cs : (Add) null arg check.
258 2007-05-28 Atsushi Enomoto <atsushi@ximian.com>
260 * SettingElementCollection.cs : fix build, cyclic build mess.
262 2007-05-28 Atsushi Enomoto <atsushi@ximian.com>
264 * SettingElement.cs : fix default value (null->"").
265 * SettingElementCollection.cs : implemented all.
267 2007-05-28 Atsushi Enomoto <atsushi@ximian.com>
269 * SettingsProviderAttribute.cs :
270 Return assembly qualified name. Check null args.
271 * ConfigXmlDocument.cs : it implements IConfigErrorInfo.
273 2007-03-15 Vladimir Krasnov <vladimirk@mainsoft.com>
275 * SettingsPropertyValue.cs: fixed binary deserealization that may be
276 present as base64 string
278 2007-03-03 Gert Driesen <drieseng@users.sourceforge.net>
280 * ConfigurationSettings.cs: On 2.0 profile, use ConfigurationManager
281 to retrieve config section. Fixes bug #81020.
283 2007-01-22 Miguel de Icaza <miguel@novell.com>
285 * SettingsBase.cs: Removed a NotImplementedException, it provides
286 a default Save implementation.
288 2007-01-14 Vladimir Krasnov <vladimirk@mainsoft.com>
290 * SettingsPropertyValue.cs: fixed IsDirty Property
292 2007-01-08 Vladimir Krasnov <vladimirk@mainsoft.com>
294 * SettingsPropertyValue.cs: fixed PropertyValue, default value of
295 SettingsProperty should be desirialized or created
297 2007-01-03 Tor Lillqvist <tml@novell.com>
299 * ConfigurationSettings.cs: First try loading a bundled
300 machine.config file, then try loading one from the file
303 2006-12-31 Vladimir Krasnov <vladimirk@mainsoft.com>
305 * SettingsPropertyValue.cs: fixed PropertyValue property, added
306 default value convertation to property type
308 2006-12-12 Vladimir Krasnov <vladimirk@mainsoft.com>
310 * SettingsBase.cs: implemented Item property
312 2006-11-09 Sebastien Pouliot <sebastien@ximian.com>
314 * ApplicationSettingsBase.cs: Add special case when dealing with
315 StringCollection in the Properties property.
317 2006-11-05 Vladimir Krasnov <vladimirk@mainsoft.com>
319 * SettingsPropertyValue.cs: fixed PropertyValue property when it
320 should be deserialized.
322 2006-10-13 Atsushi Enomoto <atsushi@ximian.com>
324 * ConfigurationSettings.cs :
325 Handle <section> inside <section> as expected.
326 Fixed some ReadSections() consumers that it does _not_ consume
327 the surrounding EndElement. For now all issues I found are gone.
329 2006-10-13 Atsushi Enomoto <atsushi@ximian.com>
331 * ConfigurationSettings.cs : another MoveToNextElement() elimination.
332 When there is another section group after "system.drawing"
333 section in the existing machine.config, it borked as if there were
334 no "system.diagnostics" section.
336 It is still buggy; prepended sectionGroup still causes the above.
338 2006-10-13 Atsushi Enomoto <atsushi@ximian.com>
340 * ConfigurationSettings.cs : when there is no content in
341 sectionGroup, all the following contents were incorrectly read
342 as the empty group's subsection.
344 2006-09-28 Andrew Skiba <andrews@mainsoft.com>
346 * ConfigurationSettings.cs: add support for requirePermission
349 2006-09-28 Andrew Skiba <andrews@mainsoft.com>
351 * ConfigurationSettings.cs: TARGET_JVM
353 2006-08-23 Konstantin Triger <kostat@mainsoft.com>
355 * ConfigurationSettings.cs: remove CONFIGURATION_2_0 #if since NET_2_0
358 2006-07-31 Sebastien Pouliot <sebastien@ximian.com>
360 * ConfigurationSettings.cs: Assert FileIOPermission when loading a
362 * ConfigXmlDocument.cs: Add an imperative demand for PathDiscovery on
363 all (many classes) Filename properties. Ensure we're not using the
364 property (but the member) inside the class itself.
366 2006-06-29 Atsushi Enomoto <atsushi@ximian.com>
368 * ApplicationSettingsBase.cs : When we use default value, convert it
369 to proper type. Fixed bug #78654. Patch by Gareth Pearce.
371 2006-05-30 Gert Driesen <drieseng@users.sourceforge.net>
373 * ConfigurationException.cs: BareMessage, Filename and Line properties
374 are only virtual on 2.0 profile.
375 * ConfigurationSettings.cs: Marked GetConfig (string) obsolete on
378 2006-05-17 Atsushi Enomoto <atsushi@ximian.com>
380 * SettingsPropertyCollection.cs : implemented some synchronization
381 releated members. Actually it can never be synchronized by itself.
382 * SettingsBase.cs : Synchronized() just returns the same instance,
383 marking it as IsSynchronized = true. Fixed bug #78430.
385 2006-05-12 Atsushi Enomoto <atsushi@ximian.com>
387 * ConfigurationSettings.cs : another System.Orgy insanity.
389 2006-05-12 Atsushi Enomoto <atsushi@ximian.com>
391 * ConfigurationSettings.cs : ok, now I correctly understand the
392 problem. Since appSettings section handlers are different between
393 1.x and 2.0 AppSettings property implementation should also be
394 different. It should really fix bug #78372.
396 2006-05-10 Atsushi Enomoto <atsushi@ximian.com>
398 * ConfigurationSettings.cs : use ConfigurationManager.GetConfig()
399 in its GetConfig(). No need to change AppSettings and
400 Default.GetConfig() behavior here.
402 2006-05-05 Chris Toshok <toshok@ximian.com>
404 * LocalFileSettingsProvider.cs (IsUserSetting): more
405 CONFIGURATION_DEP crap.
407 2006-05-05 Chris Toshok <toshok@ximian.com>
409 * ApplicationSettingsBase.cs (CacheValuesByProvider): emit
410 SettingsLoaded after we load the property values.
411 (set_Item[string]): fill in settingClass in the
412 SettingChangingEventArgs properly.
413 (get_Properties): don't depend on setting_attrs[0] being either
414 UserScoped- or ApplicationScopedSettingAttribute. Also, call
415 Initialize on any providers we create here.
417 * LocalFileSettingsProvider.cs (GetPropertyValues): add a naive
418 implementation, leave a MonoTODO.
419 (Initialize): fill in name properly, and deal with null values.
421 2006-04-28 Atsushi Enomoto <atsushi@ximian.com>
423 * NoSettingsVersionUpgradeAttribute.cs
424 SettingsDescriptionAttribute.cs
425 SettingsGroupDescriptionAttribute.cs
426 SettingsGroupNameAttribute.cs
427 SettingsManageability.cs
428 SettingsManageabilityAttribute.cs
430 SpecialSettingAttribute.cs : new files.
431 * ConfigurationException.cs
432 SettingsPropertyCollection.cs : minor API compat fixes.
434 2006-04-27 Atsushi Enomoto <atsushi@ximian.com>
436 * SettingElement.cs : more circular dependency fix.
438 2006-04-27 Atsushi Enomoto <atsushi@ximian.com>
440 * SettingValueElement.cs,
441 SettingElement.cs : circular dependency hell fix.
443 2006-04-27 Atsushi Enomoto <atsushi@ximian.com>
445 * ClientSettingsSection.cs : new (implemented) file.
446 * SettingValueElement.cs : implemented.
447 SettingElement.cs : implemented.
448 SettingElementCollection.cs : implemented except for Add(),
449 Clear(), Get() and Remove().
451 A test will be soon added as part of bug #77957 test with
452 DefaultCollection support in sys.configuration.
454 2006-04-26 Atsushi Enomoto <atsushi@ximian.com>
456 * ApplicationSettingsGroup.cs : added missing type. This is part of
459 2006-03-11 Miguel de Icaza <miguel@novell.com>
461 * ConfigurationSettings.cs (ChangeConfigurationSettings): Make
462 internal to avoid warnings. This routine is called from
463 System.Web with MethodInfo.Invoke.
465 2006-02-01 Atsushi Enomoto <atsushi@ximian.com>
467 * SettingElementCollection.cs : CollectionType is protected.
469 2006-01-16 Chris Toshok <toshok@ximian.com>
471 * ConfigurationSettings.cs (AppSettings): move back to a 1.x
472 strategy in the 2.0 case. That is, don't hardcode the reference
473 to ConfigurationManager.AppSettings (yet). Eventually we can move
474 back to this code, once ConfigurationManager supports reading
475 web.config for settings.
477 2006-01-03 Chris Toshok <toshok@ximian.com>
479 * ConfigurationSettings.cs (GetConfig): be nice to people using
480 old 1.x style section handlers with the new 2.0 config stuff. If
481 we're about to return null or IgnoreSection, try to load it using
482 the 1.x api. If that works, return that object.
484 2006-01-02 Chris Toshok <toshok@ximian.com>
486 * LocalFileSettingsProvider.cs: use the PrebuiltSystem extern
487 alias to make sure we use the right type for NameValueCollection.
488 (Initialize): enable (under the CONFIGURATION_2_0 ifdef).
490 * ConfigurationSettings.cs: use the PrebuiltSystem extern alias to
491 make sure we use the right type for NameValueCollection.
492 (AppSettings): provide an implementation for the NET_2_0 &&
493 CONFIGURATION_2_0 case.
495 (ReadSectionGroup): allow a type attribute in the NET_2_0 &&
496 CONFIGURATION_2_0 case.
498 * AppSettingsReader.cs: use the PrebuiltSystem extern alias to
499 make sure we use the right type for NameValueCollection.
501 2005-11-28 Chris Toshok <toshok@ximian.com>
503 * SettingValueElement.cs: wrap a few more things in
506 2005-11-09 Chris Toshok <toshok@ximian.com>
508 * ConfigurationSettings.cs (AppSettings): remove the #if NET_2_0
510 (ReadSectionGroup): allow the "type" atrribute so we don't break
511 when reading a 2.0 config file using the 1.0 stuff.
513 2005-11-04 Chris Toshok <toshok@ximian.com>
515 * SettingsProvider.cs, SettingsPropertyValueCollection.cs,
516 SettingValueElement.cs, SettingElement.cs,
517 SettingsPropertyValue.cs, ApplicationSettingsBase.cs,
518 SettingsPropertyCollection.cs, SettingsProviderCollection.cs,
519 SettingElementCollection.cs: Add XML_DEPS and CONFIGURATION_DEPS
520 to get this to bootstrap compile. What a pain.
522 2005-11-04 Chris Toshok <toshok@ximian.com>
524 * ApplicationSettingsBase.cs: remove unnecessary using.
526 * SettingValueElement.cs: add XML_DEP's.
528 2005-11-03 Chris Toshok <toshok@ximian.com>
530 * ConfigurationSettings.cs: add ObsoleteAttribute's.
532 * ConfigurationException.cs: add ObsoleteAttribute's.
534 * IConfigurationSystem.cs: add ComVisibleAttribute.
536 * ApplicationSettingsBase.cs: new stubs, with a broken/naive
539 * SettingElementCollection.cs, IPersistComponentSettings.cs,
540 SettingElement.cs, LocalFileSettingsProvider.cs,
541 SettingValueElement.cs: new stubs.
543 * SettingAttribute.cs: fix typo.
545 2005-09-22 Chris Toshok <toshok@ximian.com>
547 * SettingsPropertyWrongTypeException.cs: new exception.
549 2005-09-20 Chris Toshok <toshok@ximian.com>
551 * SettingsPropertyValue.cs
552 (SettingsPropertyValue.set_PropertyValue): set needPropertyValue =
553 false here so we don't pull in the default value in the getter.
555 * SettingsProviderCollection.cs: new implementation.
557 * SettingsPropertyValueCollection.cs
558 (SettingsPropertyValueCollection..ctor): init items.
559 (Add): add an internal method that takes a
560 SettingsPropertyValueCollection.
562 2005-09-20 Chris Toshok <toshok@ximian.com>
564 * SettingsSavingEventHandler.cs: new delegate.
566 * SettingChangingEvent{Handler,Args}.cs: new delegate and args
568 * SettingsLoaded{Handler,Args}.cs: new delegate and args
570 * SettingsProviderAttribute.cs, SettingSerializeAsAttribute.cs,
571 UserScopedSettingAttribute.cs, DefaultSettingValueAttribute.cs,
572 ApplicationScopedSettingAttribute.cs, SettingAttribute: new
575 2005-09-20 Chris Toshok <toshok@ximian.com>
577 * SettingChangingEventArgs.cs: new implementation.
579 * SettingsPropertyIsReadOnlyException.cs: new exception.
581 * SettingsPropertyNotFoundException.cs: new exception.
583 * ISettingsProviderService.cs: new interface.
585 * IApplicationSettingsProvider.cs: new interface.
587 * SettingsPropertyValueCollection.cs: new implementation.
589 * SettingsPropertyCollection.cs: new implementation.
591 * SettingsBase.cs: implement the obvious bits (getters,
594 * SettingsPropertyValue.cs: make this work for the tests.
595 Disgusting class here. dis-gus-ting.
597 2005-09-19 Chris Toshok <toshok@ximian.com>
599 * System.Configuration/SettingsProvider.cs,
600 System.Configuration/SettingsPropertyValueCollection.cs,
601 System.Configuration/SettingsPropertyCollection.cs,
602 System.Configuration/SettingsProviderCollection.cs,
603 System.Configuration/SettingsBase.cs,
604 System.Configuration/SettingsSerializeAs.cs,
605 System.Configuration/SettingsPropertyValue.cs,
606 System.Configuration/SettingsProperty.cs,
607 System.Configuration/SettingsContext.cs,
608 System.Configuration/SettingsAttributeDictionary.cs: new files.
610 2005-07-05 Raja R Harinath <rharinath@novell.com>
612 * ConfigurationSettings.cs (ConnectionStrings): Change XML_DEP
613 guard to CONFIGURATION_DEP.
615 2005-06-15 Lluis Sanchez Gual <lluis@novell.com>
617 * ProviderBase.cs: Moved here from System.Configuration.dll.
619 2005-06-14 Lluis Sanchez Gual <lluis@novell.com>
621 * AppSettingsSection.cs, ConfigInfo.cs, Configuration.cs
622 ConfigurationAllowDefinition.cs, ConfigurationElement.cs
623 ConfigurationElementCollection.cs, ConfigurationElementCollectionType.cs
624 ConfigurationLocation.cs, ConfigurationLocationCollection.cs
625 ConfigurationProperty.cs, ConfigurationPropertyAttribute.cs
626 ConfigurationPropertyCollection.cs, ConfigurationPropertyFlags.cs
627 ConfigurationSection.cs, ConfigurationSectionCollection.cs
628 ConfigurationSectionGroup.cs, ConfigurationSectionGroupCollection.cs
629 ConfigurationUpdateMode.cs, ConfigurationUserLevel.cs
630 ConfigurationValidationAttribute.cs, ConnectionStringsSection.cs
631 ConnectionStringSettingsCollection.cs, ConnectionStringSettings.cs
632 IntegerConfigurationProperty.cs, NonEmptyStringConfigurationProperty.cs
633 NonEmptyStringFlags.cs, PathLevel.cs, ProtectedConfigurationProvider.cs
634 ProviderBase.cs, ProviderSettings.cs, ProviderSettingsCollection.cs
635 RuntimeOnlySection.cs, SectionInfo.cs, SectionGroupInfo.cs
636 TimeSpanConfigurationProperty.cs, TimeSpanPropertyFlags.cs
637 TimeSpanSerializedFormat.cs:
639 Moved to the new System.Configuration assembly.
642 2005-03-23 Jackson Harper <jackson@ximian.com>
644 * ApplicationSettingsBase.cs: We need this stub to do some 2.0
647 2005-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
649 * Configuration.cs: a few MonoTODOs less.
651 2005-03-02 Sureshkumar T <tsureshkumar@novell.com>
653 * ConfigurationSettings.cs: Implemented ConnectionStrings
656 2005-02-22 Sureshkumar T <tsureshkumar@novell.com>
658 * ConnectionStringsSection.cs: Implemented all methods.
661 * ConnectionStringSettings.cs: Configuration object for a
662 connection string element.
663 * ConnectionStringSettingsCollection.cs: Collection of
664 ConnectionStringSettings objects.
666 2005-02-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
668 * Configuration.cs: (.ctor) don't fail if the file to load does not
670 (GetExeConfiguration): use caller assembly location if the path is null
671 and check that the exe file exists.
672 Removed if XML_DEP, as there's one at the top of the file.
674 2004-11-18 Geoff Norton <gnorton@customerdna.com>
676 * ProviderSettingsCollection.cs: Add XML_DEP because this inherits
677 ConfigurationElementCollection which has XML_DEP. Fixes bootstrap
679 2004-11-18 Lluis Sanchez Gual <lluis@novell.com>
681 * ProviderSettings.cs, ProviderSettingsCollection.cs: Mostly implemented.
682 * Configuration.cs: Implemented GetSection() and GetSectionGroup().
683 * AppSettingsSection.cs: Better null check in Reset().
685 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
687 * TimeSpanConfigurationProperty.cs, TimeSpanPropertyFlags.cs,
688 TimeSpanSerializedFormat.cs: Implemented.
690 2004-11-09 Duncan Mak <duncan@ximian.com>
692 * NonEmptyStringConfigurationProperty.cs: Add XML_DEP, this should
695 2004-11-09 Lluis Sanchez Gual <lluis@novell.com>
697 * ConfigurationElement.cs: Implemented Equals and GetHashCode.
698 Only reflect properties from type's members if the type does not
700 * ConfigurationElementCollection.cs: Implemented Equals and GetHashCode.
702 * ConfigurationProperty.cs: It is not a subclass of ConfigurationElement.
703 * NonEmptyStringConfigurationProperty.cs, NonEmptyStringFlags.cs:
706 2004-11-09 Lluis Sanchez Gual <lluis@novell.com>
708 * AppSettingsSection.cs: Mostly implemented (missing support for
710 * ConfigHelper.cs: GetNameValueCollection now returns a
711 ConfigNameValueCollection instance which is a NameValueCollection with a
713 * ConfigInfo.cs: Added XPath property.
714 * Configuration.cs: Implemented AppSettings property. Set the Path property
715 of sections and groups.
716 * ConfigurationElement.cs: Support key serialization. Properly reset
718 * ConfigurationElementCollection.cs: Initial implementation.
719 * ConfigurationSection.cs: Impemented Path and GetRuntimeObject.
720 * ConfigurationSectionGroup.cs: Implemented Path.
721 * SectionGroupInfo.cs: Little fix.
723 2004-11-05 Lluis Sanchez Gual <lluis@novell.com>
725 * Configuration.cs: Minor fixes.
726 * ConfigurationElement.cs: Added support for the different update modes.
727 * SectionGroupInfo.cs: Support loading the same configuration section
728 from different files.
729 * SectionInfo.cs: Properly write back configuration data for which a
730 section object has not been created.
732 2004-11-04 Lluis Sanchez Gual <lluis@novell.com>
734 * AppSettingsSection.cs, ConfigurationPropertyCollection.cs,
735 ConfigurationValidationAttribute.cs, ConnectionStringsSection.cs,
736 ProtectedConfigurationProvider.cs, ProviderBase.cs
737 RuntimeOnlySection.cs: Fixed formatting and added missing TODOs.
739 2004-11-04 Lluis Sanchez Gual <lluis@novell.com>
741 * Configuration.cs, ConfigurationElement.cs, ConfigurationLocation.cs,
742 ConfigurationLocationCollection.cs, ConfigurationProperty.cs,
743 ConfigurationPropertyAttribute.cs, ConfigurationSection.cs,
744 ConfigurationSectionCollection.cs, ConfigurationSectionGroup.cs,
745 ConfigurationSectionGroupCollection.cs,IntegerConfigurationProperty.cs,
746 RuntimeOnlySection.cs: Initial implementation.
747 * ConfigurationAllowDefinition.cs: Removed XML_DEP ifdef
748 * ConfigurationException.cs: format fix.
749 * ConfigInfo.cs, SectionInfo.cs, SectionGroupInfo.cs: New support
752 2004-09-10 Tim Coleman <tim@timcoleman.com>
753 * ConfigurationElementCollection.cs ConfigurationElementCollectionType.cs:
755 * ConfigurationElement.cs:
756 Fix function declaration
759 2004-08-16 Duncan Mak <duncan@ximian.com>
761 * ConfigurationElement.cs (InitializeDefault): Made virtual.
763 * AppSettingsSection.cs:
765 * ConfigurationLocation.cs:
766 * ConfigurationLocationCollection.cs:
767 * ConfigurationSection.cs:
768 * ConfigurationSectionCollection.cs:
769 * ConfigurationSectionGroup.cs:
770 * ConfigurationSectionGroupCollection.cs:
771 * ConnectionStringsSection.cs: Added stubs and bits of implementation.
773 Other than ConfigurationElementCollection and
774 ConnectionStringsSectionCollection, we now have the basic skeleton
775 for implementing the configuration system in the
776 System.Configuration namespace.
778 2004-08-11 Duncan Mak <duncan@ximian.com>
780 * ProtectedConfigurationProvider.cs: Use XML_DEP.
782 2004-08-11 Duncan Mak <duncan@ximian.com>
784 * ProtectedConfigurationProvider.cs:
785 * ProviderBase.cs: Implemented.
787 * ConfigurationPropertyAttribute.cs: Implemented attribute.
789 * ConfigurationAllowDefinition.cs:
790 * ConfigurationUserLevel.cs:
791 * PathLevel.cs: Added enumerations.
793 2004-08-07 Atsushi Enomoto <atsushi@ximian.com>
795 * ConfigurationElement.cs,
796 ConfigurationProperty.cs,
797 ConfigurationPropertyCollection.cs,
798 ConfigurationValidationAttribute.cs : use XML_DEP.
800 2004-08-06 Duncan Mak <duncan@ximian.com>
802 * ConfigurationElement.cs: Added stubs.
804 * ConfigurationProperty.cs:
805 * ConfigurationPropertyCollection.cs:
806 * ConfigurationValidationAttribute.cs: Added.
808 * ConfigurationPropertyFlags.cs:
809 * ConfigurationUpdateMode.cs: Added 2.0 enumerations.
811 2004-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
813 * ConfigurationSettings.cs: allow empty <configSections>.
815 2004-05-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
817 * ConfigurationSettings.cs: don't ask me why, but the .cctor
818 initialization of 'instance' field does no longer work.
820 2004-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
822 * ConfigXmlDocument.cs: removed method that was supposed to be internal.
824 * ConfigurationSettings.cs: instead of calling the overload that doesn't
825 exist in MS, use what we have when loading an external file.
827 2004-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
829 * ConfigXmlDocument.cs: fixed overloaded Load and added a new one that
832 * ConfigurationSettings.cs: use the new Load in ConfigXmlDocument when
835 * NameValueFileSectionHandler.cs: don't fails if the path for the 'file'
836 attribute doesn't have a directory.
840 2004-03-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
842 * ConfigurationSettings.cs: removed FileWatcherCache. See bug #53445.
844 2003-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
846 * ConfigurationSettings.cs: initialize config in
847 ChangeConfigurationSettings if it has not been done yet. Patch by
848 George Kodinov gkodinov@openlinksw.co.uk). Fixes bug #51643.
850 2003-12-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
852 * ConfigurationSettings.cs: handle allowdefinition and allowlocation,
853 added locks, don't reopen the file for every new section to be read,
854 but keep them as strings and build the section handlers with that.
855 Also allow changing the configuration system (used from System.Web).
857 2003-11-17 Ben Maurer <bmaurer@users.sourceforge.net>
859 * ConfigurationSettings.cs: make the *Mark objects static
860 because they need to be comparable across instances.
861 (ReadSectionGroup): You can add an element to a group declared
862 in the parent config files (MS.net's QuickStarts do this).
864 2003-11-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
866 * ConfigurationSettings.cs: don't handle null or non-existent file in
869 2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
871 * ConfigurationSettings.cs: really make the cache work.
873 2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
875 * ConfigurationSettings.cs: pass the file name we're reading as the
878 2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
880 * ConfigurationSettings.cs: patch by Eric Lindvall (eric@5stops.com)
881 that improves performance by not reading the file more than once.
883 2003-07-15 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
885 * ConfigurationSettings.cs: Removed unused exception variable, fixes
888 2003-06-16 Lluis Sanchez Gual <lluis@ximian.com>
890 * ConfigurationSettings.cs: Avoid chicken-egg problem when reading
891 machine.config. Cannot use an uri to read mechine.config because web
892 request module handelrs are defined in machine.config.
894 2003-03-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
896 * AppSettingsReader.cs: fixed bug #38755.
898 2002-12-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
900 * ConfigXmlDocument.cs: don't jump over the first element.
901 * ConfigurationSettings.cs: pass doc.DocumentElement instead of doc.
903 This used to work until i tried to access one attribute of the first
904 element and realized that the element was not the expected!
905 This change does not affect the configuration handlers that only use
906 ChildNodes property on the XmlNode they get as argument.
908 2002-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
910 * ConfigurationSettings.cs: removed type loading hack no longer needed.
912 2002-12-14 Jonathan Pryor <jonpryor@vt.edu>
914 * ConfigurationSettings.cs: Allow configuration sections to be removed.
916 2002-11-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
918 * ConfigurationSettings.cs: use AppDomainSetup to get the configuration
919 file name for the AppDomain.
921 2002-10-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
923 * ConfigHelper.cs: NameValueCollection.Add is now fixed.
925 2002-10-14 Martin Baulig <martin@gnome.org>
927 * ConfigurationSettings.cs (DefaultConfig.GetAppConfigPath):
928 Append ".config" to the filename, not ".exe.config" since the
929 filename already has a ".exe" suffix.
931 2002-10-14 Martin Baulig <martin@gnome.org>
933 * ConfigurationSettings.cs (DefaultConfig.GetAppConfigPath): Use
934 Assembly.Location, not Assembly.FullName to get its filename.
936 2002-10-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
938 * ConfigHelper.cs: workaround for a bug in NameValueCollection.
939 * ConfigurationSettings.cs: load sections when the parent holds a
940 handler for it. Now overriding appSettings values in the app config
941 file works (first <remove..> and then <add...).
943 2002-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
946 * NameValueFileSectionHandler.cs: check that Attributes is not null.
948 2002-10-09 Miguel de Icaza <miguel@ximian.com>
950 * NameValueFileSectionHandler.cs: For now if a section is not
951 present, return null. Do not know what the real fix is. Gonzalo
952 will have to look at this, but the debugger was crashing as
953 appSettings in the machine.config does not exist, but GetConfig
954 returns a non-null value when looking it up when you do a
955 GetDocumentForSection ("appSettings").
957 2002-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
959 * ConfigurationSettings.cs: use get_machine_config_path internal call.
961 2002-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
963 * ConfigXmlDocument.cs: move the reader for the section to the first
966 * ConfigurationSettings.cs: fixed hierarchical search for a handler.
968 2002-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
970 * ConfigurationSettings.cs: reimplemented. It is now able to deliver
971 sections to their handlers for processing.
973 2002-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
975 * ConfigHelper.cs: New file. Contains some
976 helper functions for getting key-value collections from the config file.
978 * ConfigXmlDocument.cs: wrapper around xml elements to provide line
979 number and file name info.
980 * IConfigXmlNode.cs: used in ConfigXmlDocument and
981 ConfigurationException.
983 * ConfigurationException.cs: get file name and line
984 number from the wrapped XmlNode. Display this info in Message.
986 * NameValueFileSectionHandler.cs: new handler.
987 * DictionarySectionHandler.cs:
988 * NameValueSectionHandler.cs: modified to use the helper methods in
991 2002-10-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
993 * AppSettingsReader.cs: New file.
994 * IConfigurationSystem.cs: New file.
996 * IgnoreSectionHandler.cs:
997 * NameValueSectionHandler.cs:
998 * SingleTagSectionHandler.cs: little fixes.
1000 2002-09-03 Martin Baulig <martin@gnome.org>
1002 * ConfigurationSettings.cs (ConfigurationSettings.GetConfig): Use the
1003 correct configuration filename, fixed the TODO.
1004 (GetSectionHanderType): Renamed to GetSectionHandlerType.
1006 * NameValueSectionHandler.cs (NameValueSectionHandler.Create): Allow
1007 whitespaces in the configuration file.
1009 2002-01-31 Duncan Mak <duncan@ximian.com>
1011 * ConfigurationException.cs: Rewrote most of the file and added
1014 2002-01-06 Ravi Pratap <ravi@ximian.com>
1016 * ConfigurationSettings.cs, IgnoreSectionHandler.cs : MonoTODO decoration
1018 * SingleTagSectionHandler.cs, DictionarySectionHandler.cs,
1019 NameValueSectionHandler.cs : Ditto.
1021 2001-08-28 Christopher Podurgiel <cpodurgiel@msn.com>
1022 * IConfigurationSectionHandler.cs: Added reference to System.Xml.
1024 * SingleTagSectionHandler.cs: Added Implementation of Create() method.
1026 * NameValueSectionHandler.cs: Added Implementation of Create() method.
1028 * ConfigurationException.cs: Now returns proper message rather than "System Exception".
1030 2001-08-26 Christopher Podurgiel <cpodurgiel@msn.com>
1032 * ConfigurationSettings.cs: No longer references the
1033 NameValueSectionHandler directly. Instead it uses
1034 System.Reflection to call the Create() method for the appropriate
1035 SectionHandler as defined in the .config file.