ChangeLog 30 KB

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