2008-10-21 Marek Habersack <mhabersack@novell.com>
[mono.git] / mcs / class / System.Web / System.Web.Configuration_2.0 / ChangeLog
1 2008-10-21  Marek Habersack  <mhabersack@novell.com>
2
3         * CapabilitiesChecksum.cs: implement Hex and MapToHex more efficiently.
4
5 2008-10-09  Marek Habersack  <mhabersack@novell.com>
6
7         * MonoSettingsSection.cs: added - a section for mono-specific
8         settings.
9
10 2008-10-01  Marek Habersack  <mhabersack@novell.com>
11
12         * CapabilitiesResult.cs: added support for the "browsers"
13         capability - a collection of matching browser ids.
14
15         * nBrowser/Node.cs: store matching browser ids in the capabilities
16         collection (to support IsBrowser correctly)
17
18 2008-07-25  Dean Brettle <dean@brettle.com>
19
20         * nBrowser/Node.cs nBrowser/Build.cs nBrowser/Identification.cs: Fixed race
21         condition in Node.Process() by removing mutating functions from Identification
22         and     changing Node.Process() and Node.BrowserIdentification() to maintain
23         state in a List<Match> instead of a List<Identification>.
24         
25         * nBrowser/Node.cs: Fixed race condition associated with lookup of adapter
26         types.
27         
28         * nBrowser/Node.cs: Removed duplicate call to Node.BrowserIdentification() from
29         Node.Process().
30
31         * nBrowser/Node.cs: Removed duplicate call to Result.AddAdaper() from Node.Process().
32         
33         * nBrowser/Node.cs: Fixed bug where capabilities containing literal $ or % were
34         dropped.
35
36         * nBrowser/Node.cs: Fixed bug where capabilities with multiple $ substitutions only
37         had one applied.
38
39 2008-06-30  Zoltan Varga  <vargaz@gmail.com>
40
41         * CapabilitiesResult.cs: Make the RandomRoboBotKeywords array static and compute it
42         only once.
43
44 2008-06-30  Marek Habersack  <mhabersack@novell.com>
45
46         * CompilationSection.cs: hush the warnings
47
48 2008-06-26  Zoltan Varga  <vargaz@gmail.com>
49
50         * nBrowser/Node.cs nBrowser/Result.cs: Avoid looking up adapter types names for
51         every request in every assembly.
52
53 2008-05-22  Marek Habersack  <mhabersack@novell.com>
54
55         * WebConfigurationHost.cs: changed CreateDeprecatedConfigContext
56         to return a new HttpContext object. This is part of a fix for bug 
57         #325128. Patch contributed by James Fitzsimons <james.fitzsimons@gmail.com>,
58         thanks!
59
60 2008-05-07  Marek Habersack  <mhabersack@novell.com>
61
62         * RoleManagerSection.cs: use type converter when creating the
63         cookieTimeout property in the static constructor. Fixes bug
64         #387526. Patch fromIvan Hamilton <ivan@chimerical.com.au>, thanks! 
65
66 2008-03-23  Dean Brettle <dean@brettle.com>
67
68         * CapabilitiesBuild.cs (Process), ICapabilitiesProcess.cs (Process),
69         nBrowser/Build.cs (Process): Added initialCapabilities argument to 
70         facilitate using browscap.ini capabilities.
71         
72         * CapabilitiesResult.cs (ctor), nBrowserResult.cs (ctor): Change 
73         items arg to IDictionary to     facilitate using browscap.ini capabilities.
74         
75         * nBrowser/Node.cs (Reset): Removed code which checked prohibited 
76         non-alphanumerics in id attributes because .NET is not that strict.
77         
78         * nBrowser/Node.cs (MergeFrom): Fixed NullReferenceExceptions that
79         occurred when the source or destination node did not have any
80         capabilities or adapters.
81         
82         * nBrowser/Result.cs (AddAdapter): Fixed to allow types in other
83         assemblies.
84
85 2008-03-09  Dean Brettle <dean@brettle.com> 
86
87         * nBrowser/Result.cs, nBrowser/NodeTypes.cs, nBrowser/Identification.cs,
88         nBrowser/File.cs, nBrowser/Build.cs, nBrowser/Node.cs, 
89         nBrowser/Exception.cs: added.  The code under nBrowser handles *.browser
90         files.  It is based on Owen "Ocean" Brady's code, with the following 
91         changes and improvements.  Replaced Result.Adapter 
92         property with AdapterTypeMap property which maps control Type to adapter
93         Type.  Added Result.MarkupTextWriter property.  Added overrides for
94         Result.GetAdapters and Result.GetTagWriter to return MarkupTextWriter
95         and AdapterTypeMap, resp.  Changed tree building algorithm to not
96         depend on nodes with id="Default" and to inject defaultBrowser nodes
97         as parents of regular nodes with the same ids.  Changed Node.cs to use
98         Item instead of Add when adding a capability or sample header, so that
99         values get replaced instead of appended.  Added support for reference 
100         nodes (ie. nodes with refID="someID").
101                 
102         * CapabilitiesResult.cs: load RandomRoboBotKeywords.txt resource
103         using the correct name.
104         
105         * RandomRoboBotKeywords.txt: added 
106
107         * HttpCapabilitiesBase.cs (CreateHtmlWriter, Adapters): Added
108         support for *.browsers.  Adapters property calls internal virtual
109         GetAdapters() method which is overrided in nBrowser.Result 
110         returned by nBrowser code.  CreateHtmlWriter uses type specified
111         by TagWriter property.
112         
113 2008-03-03  Vladimir Krasnov  <vladimirk@mainsoft.com>
114
115         * ProvidersHelper.cs: fixed thread safety issue in InstantiateProvider
116
117 2008-03-01  Marek Habersack  <mhabersack@novell.com>
118
119         * WebConfigurationManager.cs: SettingsMappingManager has been
120         moved to Mono.Web.dll
121
122 2008-02-28  Marek Habersack  <mhabersack@novell.com>
123
124         * HttpHandlerAction.cs: ignore case when matching handler
125         paths. Fixes bug #364995
126
127 2008-02-26  Marek Habersack  <mhabersack@novell.com>
128
129         * BuildProviderCollection.cs: be case-insensitive when looking for
130         the extension match.
131
132 2008-02-25  Marek Habersack  <mhabersack@novell.com>
133
134         * WebConfigurationManager.cs: hashtable can contain a key with a
135         null value, avoid adding duplicate keys in such cases.
136
137 2008-02-18  Vladimir Krasnov  <vladimirk@mainsoft.com>
138
139         * WebConfigurationManager.cs: performance improvement, cached
140         GetSection method
141
142 2008-02-07  Vladimir Krasnov  <vladimirk@mainsoft.com>
143
144         * GlobalizationSection.cs: fixed GetSanitizedCulture, performance
145         optimization
146
147 2008-02-05  Marek Habersack  <mhabersack@novell.com>
148
149         * CompilerCollection.cs: Get (string language) should not use
150         BaseGet as our collection is keyed on a list of language names
151         (e.g. "cs;csharp") and passing a single language won't match in
152         BaseGet correctly. Use the overriden indexer instead.
153         Initialize the base class with the case-insensitive
154         comparer. Fixes bug #357824.
155
156 2008-01-27  Daniel Nauck <dna@mono-project.de>
157
158         * HttpHandlerAction.cs: fixed the internal method PathMatches ()
159         removed wrong caching of FileMatchingInfo classes with request specific
160         informations. Now we check against the current request path and cache
161         the result in a dictionary.
162         Also check correctly against all possible paths from the HttpHandler.
163                 
164
165 2007-12-27  Marek Habersack  <mhabersack@novell.com>
166
167         * ProfileGroupSettingsCollection.cs: added an internal method to
168         add/overwrite new group settings. Used from
169         RootProfilePropertySettingsCollection.
170
171         * ProfileGroupSettings.cs: added the missing "name" property to
172         the properties collection.
173         Marked the propertySettingsProp property as the default
174         collection.
175         Added internal deserialization method, used from
176         RootProfilePropertySettingsCollection to support the 'group'
177         element.
178
179         * ProfileSection.cs: defaultProviderProp typo - the name of the
180         provider should be "AspNetSqlProfileProvider"
181
182         * RootProfilePropertySettingsCollection.cs: added
183         OnDeseerializeUnrecognizedElement to support the profile 'group'
184         element.
185         Added a missing Unmerge method.
186
187 2007-12-11  Vladimir Krasnov  <vladimirk@mainsoft.com>
188
189         * SiteMapSection.cs: fixed ProvidersInternal property to be thread safe
190
191 2007-12-08  Marek Habersack  <mhabersack@novell.com>
192
193         * WebConfigurationManager.cs: GetSection now runs each section
194         through a mapper (if any is defined for the section) before
195         returning it to the caller.
196
197 2007-11-23  Marek Habersack  <mhabersack@novell.com>
198
199         * TagPrefixCollection.cs: changed the collection type to
200         BasicMap.
201
202         * ProfileSection.cs: added missing Properties property, added a
203         static constructor to create property descriptors. Use property
204         descriptors in property accessors.
205
206         * ProfileGroupSettingsCollection.cs: added missing attribute to
207         the class, removed CollectionType method, added missing IsModified
208         and ResetModified methods, added missing Properties property.
209
210         * ProfileGroupSettings.cs: added missing Properties property,
211         adjusted the set of custom attributes of the PropertySettings
212         property.
213
214         * ProcessModelSection.cs: change the default value of the CpuMask
215         property.
216
217         * OutputCacheSection.cs: added the EnableKernelCacheForVaryByStar
218         property.
219
220         * OutputCacheProfile.cs: added the VaryByContentEncoding property.
221
222         * FormsAuthenticationConfiguration.cs: corrected defaults for the
223         Timeout property.
224
225         * ExpressionBuilder.cs: corrected defaults for the
226         ExpressionPrefix and Type properties.
227
228         * CustomErrorsSection.cs: added two missing overrides -
229         DeserializeSection and Reset.
230
231         * ClientTargetSection.cs: added the missing Properties property.
232         Added static constructor to create the property collection.
233
234         * CustomErrorCollection.cs: removed the ThrowOnDuplicate
235         property.
236
237         * CacheSection.cs: corrected defaults for the
238         PercentagePhysicalMemoryUsedLimit property.
239
240         * ClientTargetCollection.cs: added missing Properties property.
241
242         * IConfigMapPathFactory.cs: added
243
244         * IConfigMapPath.cs: added
245
246         * RoleManagerSection.cs: added a static constructor, a collection
247         of properties, the missing Properties property.
248
249 2007-11-22  Marek Habersack  <mhabersack@novell.com>
250
251         * RoleManagerSection.cs: CookieTimeout property custom attributes
252         changed to match MS.NET's ones.
253
254         * AuthorizationRuleCollection.cs: removed the ThrowOnDuplicate
255         property - it's not found in the MS.NET version of the class.
256
257 2007-11-06  Marek Habersack  <mhabersack@novell.com>
258
259         * MachineKeySectionUtils.cs: make sure keys are autogenerated when
260         necessary.
261
262 2007-11-02  Marek Habersack  <mhabersack@novell.com>
263
264         * HttpHandlerActionCollection.cs: clear http handler cache in
265         HttpApplication if the collection is modified.
266
267 2007-11-01  Marek Habersack  <mhabersack@novell.com>
268
269         * MachineKeySection.cs: moved all the internal static methods and
270         properties to MachineKeySectionUtils.cs
271
272         * MachineKeySectionUtils.cs: added. This file is included in the
273         System.Web.Extensions compilation.
274         The old properties from MachineKeySection.cs became methods.
275
276 2007-10-24  Marek Habersack  <mhabersack@novell.com>
277
278         * HttpHandlerAction.cs: exact path matching must be done on the
279         original string in PathMatches, not on the sliced one. Fixes bug
280         #335669.
281
282 2007-10-17  Marek Habersack  <mhabersack@novell.com>
283
284         * WebConfigurationHost.cs: if running outside hosted environment,
285         read only the assemblyname.config configuration file instead of
286         web.config. Fixes bug #332425
287
288 2007-10-15  Marek Habersack  <mhabersack@novell.com>
289
290         * ProvidersHelper.cs: use HttpApplication.LoadType instead of
291         Type.GetType.
292
293         * HttpModulesSection.cs: use HttpApplication.LoadType when loading
294         modules, to include both the bin/ directory and the top-level
295         assemblies in search. Fixes bug #333686.
296
297 2007-08-30  Marek Habersack  <mhabersack@novell.com>
298
299         * MachineKeySection.cs: retrieve the keys from the registry before
300         falling back to the old method. Fixes bug #76606
301
302 2007-08-23  Marek Habersack  <mhabersack@novell.com>
303
304         * ProvidersHelper.cs: HttpApplication.LoadTypeFromPrivateBin
305         renamed to LoadTypeFromBin.
306
307 2007-08-21  Marek Habersack  <mhabersack@novell.com>
308
309         * ProvidersHelper.cs: use HttpApplication.LoadTypeFromPrivateBin
310         to get the provider settings type.
311
312 2007-08-10  Gert Driesen  <drieseng@users.sourceforge.net>
313
314         * PagesEnableSessionState.cs: Marked internal on 1.0 profile.
315
316 2007-07-16  Vladimir Krasnov  <vladimirk@mainsoft.com>
317
318         * ProfileGroupSettingsCollection.cs: added ResetInternal internal
319         method
320         * RootProfilePropertySettingsCollection.cs: added Reset method
321         override to reset GroupSettings collection
322
323 2007-06-24  Vladimir Krasnov  <vladimirk@mainsoft.com>
324
325         * HttpHandlerAction.cs: fixed SplitPaths property to be thread safe
326
327 2007-06-12  Vladimir Krasnov  <vladimirk@mainsoft.com>
328
329         * CompilationSection.cs: TARGET_JVM on not supported features
330         * HttpModulesSection.cs: ctor should be static
331
332 2007-06-03  Adar Wesley <adarw@mainsoft.com>
333
334         * ProfilePropertySettingsCollection.cs: added missing method 
335         OnDeserializeUnrecognizedElement.
336
337 2007-05-30  Marek Habersack  <mhabersack@novell.com>
338
339         * WebConfigurationManager.cs: if errors happen when opening the
340         configuration file, mark the manager as unsafe to prevent further
341         usage and avoid error loops.
342
343 2007-05-17  Igor Zelmanovich <igorz@mainsoft.com>
344
345         * WebConfigurationHost.cs: for TARGET_J2EE only:
346         prevent NullRefference Exception.
347
348 2007-05-15  Igor Zelmanovich <igorz@mainsoft.com>
349
350         * WebConfigurationManager.cs: 
351         make configurations hashtable case-insensitive.
352         * WebConfigurationHost.cs: for TARGET_J2EE only:
353         GetStreamName returns file path in right case, that make it works 
354         on case-sensitive file system.
355
356 2007-05-15  Marek Habersack  <mhabersack@novell.com>
357
358         * BuildProviderCollection.cs: refactoring - use
359         HttpApplication.LoadType to actually look up the type.
360
361         * HttpHandlerAction.cs: as above
362
363         * WebConfigurationHost.cs: refactoring - moved the LoadType to
364         HttpApplication to share the code between 1.1 and 2.0 profiles.
365
366 2007-05-14  Marek Habersack  <mhabersack@novell.com>
367
368         * UrlMappingCollection.cs: implemented the Item (string) indexer.
369
370         * UrlMapping.cs: implemented the URL validation callback body
371         (doesn't work at the moment).
372
373 2007-05-14  Igor Zelmanovich <igorz@mainsoft.com>
374
375         * WebConfigurationManager.cs: 
376         make configurations synchronized.
377         added new internal method RemoveConfigurationFromCache.
378
379 2007-05-07  Marek Habersack  <mhabersack@novell.com>
380
381         * PagesSection.cs: buffering is on by default.
382
383 2007-04-24  Marek Habersack  <mhabersack@novell.com>
384
385         * WebConfigurationHost.cs: wrap MapPath calls in try/catch,
386         because bad URLs can cause it to throw exceptions. If such
387         exception is caught, throw a HttpException for Bad Request (400).
388         Look for types in the top-level assemblies (App_Code and
389         friends).
390
391         * WebConfigurationManager.cs: added two internal methods for safe
392         retrieval of config sections.
393
394 2007-04-19  Marek Habersack  <mhabersack@novell.com>
395
396         * HttpHandlerAction.cs: look up types in all the toplevel
397         assemblies. Fixes bug #80897.
398
399 2007-04-17  Atsushi Enomoto  <atsushi@ximian.com>
400
401         * ProcessModelSection.cs : cpuMask default value should be int,
402           not uint.
403
404 2007-04-06  Marek Habersack  <mhabersack@novell.com>
405
406         * CustomErrorsSection.cs: make the customErrors section work.
407
408         * PagesSection.cs: provide appropriate default value for the
409         asyncTimeout setting.
410
411 2007-03-24  Marek Habersack  <mhabersack@novell.com>
412
413         * WebConfigurationHost.cs: allow MachineToApplication definition
414         for config paths that equal the domain virtual app directory.
415
416 2007-03-22  Adar Wesley <adarw@mainsoft.com>
417
418         * HttpCapabilitiesBase.cs: implemented all capabilities.  Capabilities
419         still throw if there is no value in browscaps.ini and the property is called.
420
421 2007-03-21  Vladimir Krasnov  <vladimirk@mainsoft.com>
422
423         * WebConfigurationManager.cs: fixed OpenWebConfiguration, should not
424         lock when checking if configuration is already open
425
426 2007-03-15  Vladimir Krasnov  <vladimirk@mainsoft.com>
427
428         * WebConfigurationManager.cs: fixed OpenWebConfiguration, removed 
429         GetBasePath call and locations search, since this not affects
430         configuration initialization, but improves performance
431
432 2007-03-12  Marek Habersack  <mhabersack@novell.com>
433
434         * ProvidersHelper.cs: support loading custom providers from
435         App_Code assemblies. Fixes bug #81071.
436         Also set eol-style to native.
437
438 2007-03-08  Gert Driesen  <drieseng@users.souceforge.net>
439
440         * PagesSection.cs: Revert part of Adar's patch that regresses
441         bug #80913.
442
443 2007-03-06  Adar Wesley <adarw@mainsoft.com>
444
445         * PagesSection.cs: improve Enum parsing and strongly typed default values.
446
447 2007-02-20  Marek Habersack  <grendello@gmail.com>
448
449         * Patch from Gert Driesen  <drieseng@users.sourceforge.net>
450         * PagesSection.cs: Process value of EnableSessionState attribute
451         case-sensitive, and perform check in getter. Fix for bug #80913.
452         * PageParser.cs: Added note on difference in behaviour between page
453         level attribute and configuration attribute for enableSessionState.
454         * PagesConfiguration.cs: Fixed compiler warning.
455
456 2007-02-22  Marek Habersack  <grendello@gmail.com>
457
458         * CompilerCollection.cs: Optimize language lookup a bit.
459
460 2007-02-05  Konstantin Triger <kostat@mainsoft.com>
461
462         * TagPrefixCollection.cs: Fix element key creation.
463
464 2007-02-04  Konstantin Triger <kostat@mainsoft.com>
465
466         * NamespaceInfo.cs, HttpModuleAction.cs, RoleManagerSection.cs:
467                 fix the default value.
468
469 2007-02-02  Marek Habersack  <grendello@gmail.com>
470
471         * TagPrefixCollection.cs: Add the CollectionType parameter.
472         Get rid of unnecessary interface references in the class declaration.
473         GetElementKey should return Source which should be unique, unlike TagPrefix.
474
475 2007-01-04  Konstantin Triger <kostat@mainsoft.com>
476
477         * ProfileSection.cs: Ensure enabled = true by default; cleanup.
478
479 2006-12-27  Vladimir Krasnov  <vladimirk@mainsoft.com>
480
481         * CustomErrorCollection.cs: fixed ThrowOnDuplicate to false as in .net
482
483 2006-12-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
484
485         * GlobalizationSection.cs: make encodings actually work for the 2.0
486         profile.
487
488 2006-12-21  Marek Habersack  <grendello@gmail.com>
489
490         * TagMapInfo.cs: Add an internal default constructor for use from
491         TagMapCollection.
492
493         * TagMapCollection.cs: Don't call the string,string constructor of
494         TagMapInfo - the class disallows empty strings as values of its
495         properties.
496
497 2006-12-21  Vladimir Krasnov  <vladimirk@mainsoft.com>
498
499         * RoleManagerSection.cs: refactored using attributes
500
501 2006-12-20  Marek Habersack  <grendello@gmail.com>
502
503         * ProfilePropertyNameValidator.cs: added a few checks.
504
505 2006-12-18  Vladimir Krasnov  <vladimirk@mainsoft.com>
506
507         * WebConfigurationManager.cs: fixed GetSection to execute
508         GetRuntimeObject, refactored GetSection and GetWebApplicationSection
509
510 2006-12-17  Vladimir Krasnov  <vladimirk@mainsoft.com>
511
512         * HttpHandlerAction.cs: fixed 'verb' config property
513
514 2006-12-07  Igor Zelmanovich  <igorz@mainsoft.com>
515
516         * ProvidersHelper.cs: fixed: load assembles from /bin
517
518 2006-11-22  Miguel de Icaza  <miguel@novell.com>
519
520         * SessionStateSection.cs: Do not call Enum.Parse with a null
521         argument, prevents an exception from being thrown.
522
523 2006-11-20  Marek Habersack  <grendello@gmail.com>
524
525         * GlobalizationSection.cs: Added support for "auto" cultures and
526         the "auto:DEFAULT_CULTURE" cultures.
527
528 2006-11-13  Konstantin Triger  <kostat@mainsoft.com>
529
530         * WebConfigurationHost.cs: use Type.GetType for loading full qualified types.
531
532 2006-11-05  Vladimir Krasnov  <vladimirk@mainsoft.com>
533
534         * ProfileGroupSettings.cs, ProfileGroupSettingsCollection.cs
535         ProfilePropertySettingsCollection.cs, ProfileSection.cs
536         RootProfilePropertySettingsCollection.cs: refactoring and fix of
537         <group> element
538
539 2006-10-18  Marek Habersack  <grendello@gmail.com>
540
541         * WebConfigurationManager.cs: implement support for extra
542         assemblies to be referenced when compiling a page.
543
544 2006-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
545
546         * WebConfigurationManager.cs: add null checks. Patch by Marek Habersack
547         that fixes bug #79283.
548
549 2006-09-06  Konstantin Triger  <kostat@mainsoft.com>
550
551         * WebConfigurationHost.cs: do not recourse as this will be done by
552                 Configuration object.
553
554 2006-08-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
555
556         * WebConfigurationManager.cs: added configSystem property under 
557         TARGET_JVM part
558         * WebConfigurationHost.cs: fixed GetStreamName and OpenStreamForRead
559         for TARGET_JVM
560         * CompilationSection.cs: BuildProviders property removed from
561         TARGET_JVM
562         * SystemWebSectionGroup.cs: Compilation property removed from
563         TARGET_JVM
564
565 2006-06-26  Atsushi Enomoto  <atsushi@ximian.com>
566
567         * NullableStringValidator.cs : new internal class that is almost
568           identical to StringValidator but allows null value.
569         * PropertyHelper.cs : use new NullableStringValidator.
570         * NamespaceCollection.cs : in NamespaceInfo "" is not allowed.
571
572 2006-06-08  Chris Toshok  <toshok@ximian.com>
573
574         * WebConfigurationHost.cs (InitForConfiguration): i know this is
575         going to bite me in the ass, but guard against configPath being ==
576         to "/", since this will result in an infinite loop.
577         (MapPath): fix a NRE.
578
579 2006-05-18  Atsushi Enomoto  <atsushi@ximian.com>
580
581         * WebConfigurationManager.cs: recent sys.config.dll changes on
582           ConfigurationManager.GetSection() which should call
583           GetRuntimeObject() should also apply here. Fixed monodoc web.
584
585 2006-05-10  Andrew Skiba <andrews@mainsoft.com>
586
587         * HttpHandlerAction.cs: keep the internal exception
588
589 2006-05-08  Chris Toshok  <toshok@ximian.com>
590
591         * WebConfigurationManager.cs (GetBasePath): fix bug where
592         path.Length was 0 when we got to the last while loop (and indexed
593         -1 into an array.)  Thanks Marek for the fix.
594
595 2006-05-04  Chris Toshok  <toshok@ximian.com>
596
597         [ Fixes bug #78256 ]
598         
599         * WebConfigurationHost.cs (GetConfigType): add a MonoTODO about
600         how we should use the build provider machinery to get types.
601         (MapPath): add rudimentary mapping in the case where we don't have
602         a request, basically handle the case where the url begins with (or
603         is) HttpRuntime.AppDomainAppVirtualPath.
604
605         * WebConfigurationManager.cs (GetSection): if we don't have a
606         valid request, open the web configuration corresponding to
607         HttpRuntime.AppDomainAppVirtualPath.
608         (GetBasePath): comment this a little, and make it work in the case
609         where we don't have an HttpRequest.
610
611 2006-04-27  Chris Toshok  <toshok@ximian.com>
612
613         * AuthorizationRuleCollection.cs (ThrowOnDuplicate): for the time
614         being introduce a overridden property MS doesn't make use of.
615         This needs readdressing, but it should get people making use of
616         <authorization> rules working again.
617
618 2006-04-25  Chris Toshok  <toshok@ximian.com>
619
620         * AuthorizationRule.cs (Reset): finally figure out what this
621         method is supposed to do.  Assign our Action property based on
622         parentElement's.
623
624 2006-04-25  Chris Toshok  <toshok@ximian.com>
625
626         * WebConfigurationHost.cs (InitForConfiguration): actually, use
627         HttpRuntime.AppDomainAppVirtualPath on gonzalo's recommendation.
628         It's never null, and its use cleans things up a bit.
629
630 2006-04-25  Chris Toshok  <toshok@ximian.com>
631
632         * WebConfigurationHost.cs (InitForConfiguration): stop going up
633         the virtual hierarchy once we reach the application's base virtual
634         path.
635
636 2006-04-24  Chris Toshok  <toshok@ximian.com>
637
638         * AuthorizationSection.cs (IsValidUser): fix a problem that
639         surfaced when converting from the 1.1 to 2.0 config classes.  Only
640         check for verb match if there are actually verbs to match against.
641
642 2006-04-11  Chris Toshok  <toshok@ximian.com>
643
644         * ExpressionBuilderCollection.cs (CreateNewElement): call argless
645         ctor.
646
647         * ExpressionBuilder.cs: add internal argumentless ctor for use by
648         the collection type.
649
650 2006-03-24  Chris Toshok  <toshok@ximian.com>
651
652         * WebConfigurationManager.cs (GetConfig): add a fallback case for
653         configuration sections that don't subclass from
654         ConfigurationSection.
655
656 2006-03-24  Chris Toshok  <toshok@ximian.com>
657
658         * WebConfigurationHost.cs: fix bug where OpenWebConfiguration
659         ("/") would result in 2 configurations for that toplevel path to
660         be opened.
661
662 2006-03-08  Chris Toshok  <toshok@ximian.com>
663
664         * ProvidersHelper.cs: implement this static class properly.
665
666         * SiteMapSection.cs (ProvidersInternal): add internal property to
667         get the actual SiteMapProviderCollection from here.
668
669 2006-02-28  Chris Toshok  <toshok@ximian.com>
670
671         * BuildProviderAppliesTo.cs, PagesToCountAction.cs: nuke.
672
673 2006-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
674
675         * Compiler.cs:
676         * CompilerCollection.cs: removed compatibility code.
677
678         * BuildProviderCollection.cs: add GetProviderForExtension().
679
680 2006-02-02  Chris Toshok  <toshok@ximian.com>
681
682         * WebConfigurationManager.cs (GetSection(string,string)):
683         implement.
684
685 2006-02-01  Atsushi Enomoto  <atsushi@ximian.com>
686
687         * TrustLevelCollection.cs, CodeSubDirectoriesCollection.cs,
688           CustomErrorCollection.cs, CompilerCollection.cs,
689           HttpHandlerActionCollection.cs,
690           FormsAuthenticationUserCollection.cs,
691           AuthorizationRuleCollection.cs, TagPrefixCollection.cs :
692           CollectionType is public.
693
694 2006-02-01  Chris Toshok  <toshok@ximian.com>
695
696         * WebConfigurationManager.cs: In the normal case, get the current
697         request's web.config, not the application's.  If there is no
698         current request, get the application's.
699         (GetWebApplicationConfiguration): use Request.ApplicationPath, not
700         Request.PhysicalApplicationPath.  OpenWebConfiguration takes
701         virtual paths.
702
703         * HttpConfigurationSystem.cs: GetWebApplicationSection =>
704         GetSection.
705
706 2006-02-01  Chris Toshok  <toshok@ximian.com>
707
708         * CompilerCollection.cs: CONFIGURATION_2_0 => NET_2_0
709
710         * Compiler.cs: same.
711
712 2006-02-01  Chris Toshok  <toshok@ximian.com>
713
714         * HttpConfigurationSystem.cs: SupportsUserConfig == true.  let's
715         use this to determine if ConfigurationManager.AppSettings should
716         be read-only or not.
717
718 2006-01-31  Chris Toshok  <toshok@ximian.com>
719
720         * WebConfigurationManager.cs: err, why did i ifdef stuff NET_2_0
721         inside of an ifdef NET_2_0?
722
723 2006-01-30  Chris Toshok  <toshok@ximian.com>
724
725         * WebConfigurationManager.cs: lots of little changes.  hopefully
726         this doesn't break anyone.  it fixes all the nunit problems
727         gonzalo was having.
728
729         * WebConfigurationHost.cs (GetStreamName): in the MachineWebPath
730         case, handle the case where we have a WebConfigurationFileMap.
731         (MapPath): this is likely wrong, but in the case where we don't
732         have a file map or current HttpContext, just return the path.
733
734 2006-01-29  Chris Toshok  <toshok@ximian.com>
735
736         * HttpModulesSection.cs (LoadModules): I'm not sure we want to
737         solve this problem in this way, but the 1.x code forces
738         DefaultAuthenticationModule to be in the list of modules..
739         Without this fix (or something else) HttpContext.User is null when
740         it shouldn't be.
741
742 2006-01-26  Chris Toshok  <toshok@ximian.com>
743
744         * HttpConfigurationSystem.cs: new class that gets sections from
745         web.config files.
746
747         * WebConfigurationManager.cs: change a lot of the
748         NotImplementedExceptions to NotSupportedExceptions.
749         (AppSettings): implement by just returning
750         ConfigurationManager.AppSettings (note this is broken because
751         ConfigurationManager.AppSettings are read-only, but it works for
752         reading.)
753         (ConnectionStrings): same (and probably broken in the same way..)
754         (Init): replace the 2.0 IInternalConfigSystem with our
755         HttpConfigurationSystem.
756
757         * WebConfigurationHost.cs: add a comment about how things are
758         likely to work in the face of IRemoteWebConfigurationHostServer.
759         (CreateConfigurationContext): return a WebContext instance.
760
761 2006-01-25  Chris Toshok  <toshok@ximian.com>
762
763         * AuthorizationSection.cs (IsValidUser): instead of a blanket
764         false for a null user, just set the username to "" and short
765         circuit out the check for roles.
766
767 2006-01-25  Chris Toshok  <toshok@ximian.com>
768
769         * AuthorizationRule.cs (CheckUser): handle * and ?, and use
770         String.Compare instead of ==.
771         (CheckVerb): use String.Compare instead of ==.
772
773         * AuthorizationSection.cs (IsValidUser): return false for a null
774         user.
775
776 2006-01-22  Chris Toshok  <toshok@ximian.com>
777
778         * GlobalizationSection.cs (VerifyData): quiet mcs.
779
780 2006-01-18  Chris Toshok  <toshok@ximian.com>
781
782         * SystemWebSectionGroup.cs: wrap System.Web.Services references in
783         WEBSERVICES_DEP.
784
785 2006-01-16  Chris Toshok  <toshok@ximian.com>
786
787         * WebConfigurationManager.cs: implement a IConfigurationSystem for
788         use with WebConfigurationManager.
789         (GetSection): try to load the section
790         using GetWebApplicationSection before calling into
791         ConfigurationManager.GetSection.
792         (GetWebApplicationConfiguration): move common code to here.
793         (GetWebApplicationSection): use GetWebApplicationConfiguration.
794         (AppSettings): implement.
795
796         * WebConfigurationHost.cs (GetWebConfigFileName): add
797         "Web.Config", and move to an array/loop implementation.  maybe we
798         should scan the directory and check ToLower() instead of
799         explicitly enumerating?
800
801 2006-01-10  Chris Toshok  <toshok@ximian.com>
802
803         * SystemWebSectionGroup.cs (HostingEnvironment): enable this property.
804         (ProcessModel): add the ConfigurationPropertyAttribute.
805
806 2006-01-10  Chris Toshok  <toshok@ximian.com>
807
808         * PagesSection.cs (.cctor): fix the default value for the
809         enableSessionState attribute - it's not a bool, but a
810         PagesEnableSessionState enum.
811
812 2006-01-10  Chris Toshok  <toshok@ximian.com>
813
814         * MachineKeySection.cs (ValidationKeyBytes, DecryptionKeyBytes,
815         DecryptionKey192Bits): if the keys are null, generate them.  Fixes
816         Page.EnableViewStateMac support.
817
818 2006-01-09  Chris Toshok  <toshok@ximian.com>
819
820         * RoleManagerSection.cs, SqlCacheDepencendySection.cs,
821         SessionStateSection.cs, TraceSection.cs, SecurityPolicySection.cs,
822         PagesSection.cs, RulesSettings.cs, UrlMappingSection.cs: fix
823         dumper output.
824
825 2006-01-09  Chris Toshok  <toshok@ximian.com>
826
827         * ExpressionBuilderCollection.cs (.cctor): no need to create a
828         collection property here.  we're already in the collection.
829
830         * CompilationSection.cs: fix typo.
831
832 2006-01-04  Chris Toshok  <toshok@ximian.com>
833
834         * MachineKeySection.cs: bring over some more internal methods from
835         MachineKeyConfig, and call Set{Decryption,Validation}Key from
836         their respective property setters.
837
838 2006-01-03  Chris Toshok  <toshok@ximian.com>
839
840         * AuthorizationSection.cs (IsValidUser): add analogous method from
841         AuthorizationConfig.cs.
842
843         * AuthorizationRule.cs: add predicates for Verb, User, and Role
844         analogous to what existed in AuthorizationConfig.cs.
845
846 2005-12-11  Chris Toshok  <toshok@ximian.com>
847
848         * WebConfigurationManager.cs (OpenMachineConfiguration): just call
849         ConfigurationManager.OpenMachineConfiguration.
850         (OpenWebConfiguration): remove the "IntPtr userToken" version and
851         add a "string userName" version to clean up corcompare output.
852         Modify all the overloads to pass null instead of IntPtr.Zero.
853         (GetWebApplicationSection): if we're not running in a web
854         application, use the machine configuration.
855
856 2005-12-06  Chris Toshok  <toshok@ximian.com>
857
858         * CodeSubDirectory.cs (DirectoryName): don't use an private field,
859         but base[directoyNameProp].
860
861         * AuthorizationRuleCollection.cs (Add): use BaseAdd (rule, false),
862         so we can insert duplicates.
863         (GetKey): nuke.
864         (GetElementKey): MS for some reason just uses the action for the
865         key, ToString()'ed.
866         (Remove): pass the correct key.
867
868         * ProfileGroupSettings.cs (GetHashCode): implement.
869
870         * GlobalizationSection.cs (GetEncoding): for the utf-8 case, just
871         use Encoding.UTF8.
872
873         * AssemblyCollection.cs (Add): use BaseAdd (info, false) so we can
874         insert duplicates.
875
876         * CacheSection.cs (.cctor): make privateByteLimit's default 0L so
877         we don't get a invalid cast exception later on.
878
879         * AuthorizationRule.cs (VerifyData): split out the verification
880         foo from PreSerialize.
881         (PostDeserialize): so we can call it from here.
882         (PreSerialize): and here.
883
884 2005-12-05  Chris Toshok  <toshok@ximian.com>
885
886         * AuthorizationRuleCollection.cs (GetKey): split out the logic for
887         creating a key from a rule here.
888         (GetElementKey): use it here.
889         (Remove): and here.
890
891 2005-12-04  Chris Toshok  <toshok@ximian.com>
892
893         * UrlMapping.cs: add an internal argument-less ctor.
894
895         * UrlMappingCollection.cs (CreateNewElement): use argument-less
896         ctor.
897         (GetKey): implement.
898         (AllKeys): implement.
899
900         * TrustLevel.cs: add an internal argument-less ctor.
901         
902         * TrustLevelCollection.cs (Set): implement.
903         (CreateNewElement): use argument-less ctor.
904         (IsElementName): implement.
905         (ElementName): implement.
906         (set_Item (int index)): use Set.
907         (ThrowOnDuplicate): implement.
908         
909         * TagPrefixInfo.cs: add internal argument-less ctor.
910
911         * TagPrefixCollection.cs (CreateNewElement): call argument-less
912         ctor.
913         (CollectionType): add text to TODO.
914         (ElementName): implement.
915         
916         * SqlCacheDependencyDatabaseCollection.cs (Set): implement.
917         (AllKeys): implement.
918
919         * RuleSettings.cs: add internal argument-less ctor.
920
921         * RuleSettingsCollection.cs (Contains): implement.
922         (CreateNewElement): use argument-less ctor.
923         (IndexOf): implement.
924         (Insert): implement.
925
926         * RootProfilePropertySettingsCollection.cs (IsModified): chain up
927         to base.IsModified for now.
928         (Reset): chain up to base.Reset for now.
929         (ResetModified): chain up to base.ResetModified for now.
930
931         * ProfileSettings.cs: add internal argument-less ctor.
932
933         * ProfileSettingsCollection.cs (Contains): implement.
934         (CreateNewElement): use argument-less ctor.
935         (IndexOf): implement.
936         (Insert): implement.
937         
938         * ProfilePropertySettingsCollection.cs (IndexOf): implement.
939         (Set): implement.
940         (AllKeys): implement.
941         
942         * ProfileGroupSettings.cs: add internal argument-less ctor.
943
944         * ProfileGroupSettingsCollection.cs (CreateNewElement): use
945         parameter-less ctor.
946         (GetKey): implement.
947         (ResetModified): for now call base.ResetModified.
948         (Set): implement.
949         (AllKeys): implement.
950         
951         * OutputCacheProfile.cs: add internal argument-less ctor.
952
953         * OutputCacheProfileCollection.cs (CreateNewElement): use
954         parameter-less ctor.
955         (Set): implement.
956         (AllKeys): implement.
957
958         * HttpModuleActionCollection.cs (Add): remove MonoTODO.
959         (CreateNewElement): same.
960         
961         * HttpHandlerActionCollection.cs (GetElementKey): build up the key
962         from both the path and the verb.
963         (Remove): same.
964
965         * FormsAuthenticationUserCollection.cs (Set): implement.
966         (AllKeys): implement.
967
968         * EventMappingSettings.cs: add an internal argument-less ctor.
969
970         * EventMappingSettingsCollection.cs (Contains): implement.
971         (CreateNewElement): use argument-less ctor.
972         (IndexOf): implement.
973         (Insert): implement.
974
975         * CompilerCollection.cs (GetKey): implement.
976         (AllKeys): implement.
977
978         * ClientTargetCollection.cs (GetKey): implement.
979         (AllKeys): implement.
980
981         * AuthorizationRuleCollection.cs (Set): implement.
982         (ElementName): add some text to the MonoTODO.
983         (set_Item (int index)): use Set.
984
985 2005-12-04  Chris Toshok  <toshok@ximian.com>
986
987         * CustomError.cs: add an internal argument-less ctor for use by
988         the collection.
989
990         * CustomErrorCollection.cs: implement all the MonoTODO's.
991
992 2005-12-02  Chris Toshok  <toshok@ximian.com>
993
994         * GlobalizationSection.cs (VerifyData): split out the stuff that
995         used to live in PreSerialize here.
996         (PreSerialize): call VerifyData here.
997         (PostDeserialize): and here.
998         
999 2005-12-01  Chris Toshok  <toshok@ximian.com>
1000
1001         * GlobalizationSection.cs (PreSerialize): add checks for Culture
1002         and UICulture properties.
1003
1004 2005-12-01  Chris Toshok  <toshok@ximian.com>
1005
1006         * AuthorizationRule.cs (..ctor): provide default values for
1007         roles/users/verbs here.  Not sure if we should do this in the ctor
1008         or if the System.Configuration infrastructure should.. time will
1009         tell.
1010         (PreSerialize): throw if Roles.Count and Users.Count == 0.
1011         (SerializeElement): write out the element here.  don't chain up to
1012         the base class since that has differing behavior than what we
1013         want.
1014
1015 2005-11-30  Chris Toshok  <toshok@ximian.com>
1016
1017         * CompilerCollection.cs: ugly hack to fix the
1018         2.0-without-config-2.0 case.  wrap this file in #if
1019         CONFIGURATION_2_0 as well as #if NET_2_0.
1020         
1021         * Compiler.cs: same.
1022
1023 2005-11-28  Chris Toshok  <toshok@ximian.com>
1024
1025         * SessionStateSection.cs (CookieLess): correct the compat function
1026         implementation.
1027
1028 2005-11-28  Chris Toshok  <toshok@ximian.com>
1029
1030         * GlobalizationSection.cs (GetEncoding): if the encoding name is
1031         null, default to utf-8 before we hit the try block, so we don't
1032         throw and generate a spurious warning.
1033
1034         * SessionStateSection.cs: The Cookieless handling needs a custom
1035         parser, it appears, as the converter is a StringConverter, not a
1036         GenericEnumConverter.
1037         (ParseCookieMode): the parser.
1038
1039 2005-11-28  Chris Toshok  <toshok@ximian.com>
1040
1041         * PagesSection.cs (GetInstance): nuke.
1042
1043         * CompilationSection.cs (GetInstance): nuke.
1044
1045 2005-11-28  Chris Toshok  <toshok@ximian.com>
1046
1047         * HttpHandlerAction.cs: add some c&p code from the 1.1 config
1048         stuff to look for matching handlers.
1049         (..ctor): add parameterless ctor.
1050         
1051         * HttpHandlerActionCollection.cs: clean up formatting.
1052         (CreateNewElement): call the parameter-less ctor for
1053         HttpHandlerAction.
1054
1055         * HttpHandlersSection.cs (..ctor): add a ConfigurationProperty for
1056         the default collection.
1057         (get_Handlers): implement.
1058         (LocateHandler): copy over (and massage) some 1.1 config code.
1059
1060         * MachineKeySection.cs: move some code over from the 1.1 config
1061         code to deal with autogeneration of keys, as well as converting
1062         from the string rep to the byte[] rep.
1063
1064 2005-11-28  Chris Toshok  <toshok@ximian.com>
1065
1066         * HttpModuleActionCollection.cs (CreateNewElement): use the new
1067         HttpModuleAction ctor.
1068
1069         * HttpModuleAction.cs: add internal ctor with no parameters, for
1070         use in HttpModuleActionCollection.
1071
1072 2005-11-28  Chris Toshok  <toshok@ximian.com>
1073
1074         * GlobalizationSection.cs (..cctor): the encoding
1075         ConfigurationProperties are of type "string", even though the
1076         properties themselves are of type Encoding.  we do conversions
1077         manually in the setter/getters.  gross.  Add code (mostly c&p +
1078         massaged from GlobalizationConfigurationHandler) for this and also
1079         to handle the culture gettes.
1080
1081 2005-11-26  Chris Toshok  <toshok@ximian.com>
1082
1083         * AuthorizationRuleCollection.cs (GetElementKey): implement this.
1084
1085         * ProfilePropertyNameValidator.cs: make this internal, and add a
1086         blurb about how MS doesn't do the testing you'd expect them to.
1087
1088 2005-11-25  Chris Toshok  <toshok@ximian.com>
1089
1090         * AuthorizationRuleCollection.cs (CreateNewElement): remove
1091         MonoTODO.
1092
1093         * CompilationSection.cs (GetRuntimeObject): add comment to TODO.
1094
1095         * ProfileGroupSettings.cs: reformat some things.
1096
1097         * FormsAuthenticationUser.cs (Name): remove MonoTODO.
1098
1099         * WebPartsSection.cs (GetRuntimeObject): change TODO comment.
1100
1101         * ProfilePropertySettings.cs: add internal argument-less ctor.
1102
1103         * IdentitySection.cs (GetRuntimeObject): return this.
1104
1105         * ProfilePropertySettingsCollection.cs: implement much of the
1106         TODO's.
1107         
1108         * WebControlsSection.cs (GetRuntimeObject): implement.
1109
1110         * SqlCacheDependencyDatabaseCollection.cs (GetElementKey):
1111         implement.
1112         (GetKey): implement.
1113
1114 2005-11-24  Chris Toshok  <toshok@ximian.com>
1115
1116         * AssemblyInfo.cs: move this here from System.Web.Configuration,
1117         and fix up the properties.
1118
1119         * SystemWebSectionGroup.cs: enable most of the sections (2
1120         remaining to be enabled.)
1121
1122 2005-11-24  Chris Toshok  <toshok@ximian.com>
1123
1124         * ProcessModelSection.cs, SqlCacheDependencySection.cs,
1125         SessionStateSection.cs, PassportAuthentication.cs,
1126         FormsAuthenticationConfiguration.cs,
1127         SqlCacheDependencyDatabase.cs, HttpModuleAction.cs,
1128         BufferModeSettings.cs, TagPrefixInfo.cs (..cctor): init
1129         elementProperty.
1130         (ValidateElement): new static validator callback.
1131         (ElementProperty): enable this, return elementProperty.
1132         
1133 2005-11-23  Chris Toshok  <toshok@ximian.com>
1134
1135         * ProfilePropertyNameValidator.cs: new implementation.
1136         
1137         * ProfilePropertySettings.cs, ProfileGroupSettings.cs,
1138         ClientTargetSection.cs, ClientTargetSection.cs,
1139         BufferModeSettings.cs, HttpModulesSection.cs,
1140         WebPartsPersonalization.cs, TransformerInfo.cs, TrustLevel.cs,
1141         NamespaceInfo.cs, SqlCacheDependencyDatabase.cs,
1142         AuthenticationSection.cs, RuleSettings.cs,
1143         FormsAuthenticationUser.cs, WebPartsSection.cs, BuildProvider.cs,
1144         WebPartsPersonalizationAuthorization.cs, Compiler.cs,
1145         ExpressionBuilder.cs, OutputCacheProfile.cs,
1146         FormsAuthenticationCredentials.cs, XhtmlConformanceSection.cs,
1147         OutputCacheSettingsSection.cs, CustomError.cs, TraceSection.cs,
1148         ExpressionBuilderCollection.cs, ProfileSettings.cs,
1149         SessionStateSection.cs, HealthMonitoringSection.cs,
1150         FormsAuthenticationConfiguration.cs, HttpRuntimeSection.cs,
1151         SessionPageStateSection.cs, TrustSection.cs,
1152         AnonymousIdentificationSection.cs, WebControlsSection.cs,
1153         ClientTarget.cs, TagMapInfo.cs, AuthorizationSection.cs,
1154         ProcessModelSection.cs, RoleManagerSection.cs,
1155         MembershipSection.cs, CustomErrorsSection.cs (..cctor): fix
1156         validator/converters.
1157         
1158         * MachineKeySection.cs (..cctor): fix validators/converters.
1159         (Validation): enable the Converter.
1160         
1161         * CodeSubDirectory.cs (..cctor): fix validator/converters.
1162         (DirectoryName): add note about missing validator decoration.
1163         
1164         * HttpModuleAction.cs (..cctor): init properties.
1165         (Properties): return properties.
1166         
1167         * CompilationSection.cs (..cctor): fix validator/converters.
1168         (GetInstance): add in this pre-2.0 interface for the time being,
1169         hopefully it'll make it easier to migrate later on.
1170         
1171         * HttpHandlerActionCollection.cs (..cctor): init properties.
1172         (Properties): return properties.
1173
1174         * PagesSection.cs (..cctor): fix validator/converters.
1175         (GetInstance): add in this pre-2.0 interface for the time being,
1176         hopefully it'll make it easier to migrate later on.
1177         
1178         * HttpHandlersSection.cs (..cctor): init properties.
1179         (Properties): return properties.
1180         
1181         * EventMappingSettings.cs (..cctor): fix validator/converters.
1182         (Name): add note about missing validator decoration.
1183         
1184         * HttpHandlerAction.cs (..cctor): fix validator/converters.
1185         (PAth, Type, Verb): add note about missing validator decoration.
1186
1187         * NamespaceCollection.cs (..cctor): fix properties.
1188
1189         * ProfilePropertySettingsCollection.cs (..cctor): init properties.
1190         (..ctor): don't throw NIE.
1191         (Properties): return properties.
1192
1193         * HttpModuleActionCollection.cs (..cctor): init properties.
1194         (Properties): return properties.
1195
1196         * CacheSection.cs (..cctor): fix validators/converters.
1197         (PrivateBytesPollTime): add note about missing validator
1198         decoration.
1199
1200         * AuthorizationRule.cs (..cctor): fix validators/converters.
1201         (Roles, Users, Verbs): enable the TypeConverter decorations.
1202         
1203         * UrlMapping.cs (ValidateUrl): static method for use as a
1204         validation callback.  unimplemented as yet.
1205         (..cctor): fix validators/converters.
1206         (MappedUrl): add note about missing validator decoration.
1207         
1208         * PropertyHelper.cs: static utility class which contains
1209         references to validators and converters for use in static
1210         constructors (building the Properties arrays).
1211
1212 2005-11-23  Chris Toshok  <toshok@ximian.com>
1213
1214         * MachineKeyValidationConverter.cs: new converter (and a pretty
1215         silly one, considering all it seems to do is convert "TripleDES"
1216         to "3DES").
1217
1218         * HostingEnvironmentSection.cs (.cctor): use
1219         PositiveTimeSpanValidator like MS does.
1220
1221 2005-11-18  Chris Toshok  <toshok@ximian.com>
1222
1223         * HostingEnvironmentSection.cs (.cctor): add validators.
1224
1225         * CompilationSection.cs (.cctor): fix defaultvalue of
1226         urlLinePragmas.
1227
1228 2005-11-18  Chris Toshok  <toshok@ximian.com>
1229
1230         * SystemWebSectionGroup.cs: enable a whole slew of properties.
1231
1232         * RegexWorker.cs: stub this out.
1233
1234         * HttpCapabilitiesBase.cs: remove GetClrVersions since it's in one
1235         of the other partial files.
1236
1237         * CompilationSection.cs: fix this up.
1238
1239         * PagesSection.cs: fix some types and add a comment to
1240         DeserializeSection.
1241
1242         * CompilerCollection.cs (Add): new internal method.
1243
1244         * ProvidersHelper.cs: put the using System.Configuration.Provider
1245         inside the NET_2_0 block.
1246
1247         * CacheSection.cs: add validators.
1248
1249 2005-11-14  Chris Toshok  <toshok@ximian.com>
1250
1251         * BufferModeSettings.cs: add validators/converters to the
1252         programmatic property list.
1253         
1254         * BuildProvider.cs: add validators/converters to the programmatic
1255         property list, and add an internal ctor with no args.
1256
1257         * Compiler.cs: wrap the code i hacked from the 1.1 stuff with a
1258         #region.
1259
1260         * BuildProviderCollection.cs (CreateNewElement): use the internal
1261         BuildProvider ctor to get around validation.
1262
1263         * AssemblyCollection.cs: same.
1264
1265 2005-11-14  Chris Toshok  <toshok@ximian.com>
1266
1267         * TagPrefixCollection.cs (Remove): pass the key to BaseRemove.
1268         (set_Item (int index)): implement.
1269         
1270         * TagPrefixInfo.cs (Equals): implement.
1271         (GetHashCode): implement.
1272
1273         * AuthorizationRuleCollection.cs (CreateNewElement(string)):
1274         implement propertly.
1275         (IndexOf): implement.
1276         (IsElementName): implement.
1277         (ElementName): implement.
1278         (Item (int index)): implement.
1279         
1280         * FormsAuthenticationUserCollection.cs (set_Item (int index)): implement.
1281
1282         * UrlMappingCollection.cs (set_Item (int index)): implement.
1283
1284         * OutputCacheProfileCollection.cs (set_Item (int index)): implement.
1285
1286         * TransformerInfo.cs (Equals): implement.
1287         (GetHashCode): implement.
1288
1289         * NamespaceInfo.cs (Equals): implement.
1290         (GetHashCode): implement.
1291         
1292         * ProfileSettingsCollection.cs (set_Item (int index)): implement.
1293
1294         * TransformerInfoCollection.cs (set_Item (int index)): implement.
1295
1296         * HttpHandlerActionCollection.cs (set_Item (int index)): implement.
1297
1298         * BufferModesCollection.cs (set_Item (int index)): implement.
1299
1300         * BuildProvider.cs: use the base[fooProp] pattern instead of
1301         instance fields.
1302
1303         * ProfileGroupSettingsCollection.cs: implement most of this class.
1304
1305         * RuleSettingsCollection.cs (set_Item (int index)): implement.
1306
1307         * ClientTargetCollection.cs (set_Item (int index)): implement.
1308
1309         * AssemblyCollection.cs (set_Item (int index)): implement.
1310
1311         * BuildProviderCollection.cs (set_Item (int index)): reformat.
1312
1313         * CustomError.cs (Equals): implement.
1314         (GetHashCode): implement.
1315
1316         * ExpressionBuilderCollection.cs (set_Item (int index)): reformat.
1317
1318         * PassportAuthentication.cs (RedirectUrl): express consternation
1319         in comment form.
1320
1321         * NamespaceCollection.cs (set_Item (int index)): implement.
1322
1323         * RootProfilePropertySettingsCollection.cs (SerializeElement): add
1324         comment.
1325
1326         * ProfilePropertySettingsCollection.cs (set_Item (int index)):
1327         implement.
1328
1329         * CustomErrorCollection.cs (set_Item (int index)): implement.
1330
1331         * HttpModuleActionCollection.cs (set_Item (int index)): implement.
1332
1333         * CodeSubDirectoriesCollection.cs (set_Item (int index)):
1334         implement.
1335
1336         * CustomErrorsSection.cs (DeserializeSection): include call to
1337         base.DeserializeSection, and add MonoTODO.
1338
1339         * EventMappingSettingsCollection.cs (set_Item (int index)):
1340         implement.
1341
1342         * AuthorizationRule.cs (Equals): implement.
1343         (GetHashCode): implement.
1344         (SerializeElement): add comment.
1345
1346         * TagMapCollection.cs (Remove): pass the key to BaseRemove.
1347         (set_Item (int index)): implement.
1348         
1349         * TagMapInfo.cs (Equals): implement.
1350         (GetHashCode): implement.
1351         (SerializeElement): add call to base.SerializeElement.
1352
1353         * TrustLevelCollection.cs (Remove): pass the key to BaseRemove.
1354         (GetElementKey): implement.
1355
1356         * SqlCacheDependencyDatabase.cs (set_Item (int index)): implement.
1357
1358         * WebContext.cs: new implementation.
1359
1360 2005-11-13  Chris Toshok  <toshok@ximian.com>
1361
1362         * AnonymousIdentificationSection.cs: rework this class a bit to
1363         fit in with the rest of S.W.C.  Add validators to the
1364         ConfigurationProperty ctor calls, a pattern which will need to be
1365         replicated across the entire assembly, it appears (uggggh).
1366
1367 2005-11-13  Chris Toshok  <toshok@ximian.com>
1368
1369         * AuthorizationRuleCollection.cs: fix ConfigurationCollection
1370         attribute.
1371
1372         * TransformerInfo.cs: fix corcompare.
1373
1374         * SqlCacheDependencyDatabase.cs: mark ctor internal to fix
1375         corcompare.
1376
1377         * AuthenticationSection.cs: add missing Reset stub.
1378
1379         * ProfileSettingsCollection.cs: use the more succint ctor.
1380
1381         * FormsAuthenticationUser.cs: enable the TypeConverter on "name".
1382
1383         * GlobalizationSection.cs: fix up corcompare.
1384
1385         * WebPartsSection.cs: fix up corcompare.
1386
1387         * ProfileGroupSettingsCollection.cs: add missing
1388         ConfigurationCollection attribute.
1389
1390         * ExpressionBuilder.cs: implement.
1391
1392         * FormsAuthenticationCredentials.cs: fix up corcompare.
1393
1394         * AssemblyCollection.cs: implement Properties.
1395
1396         * SiteMapSection.cs: implement Properties.
1397
1398         * ExpressionBuilderCollection.cs: fix up corcompare.
1399
1400         * ProfileSettings.cs: add missing ctor.
1401
1402         * PassportAuthentication.cs: new implementation.
1403
1404         * SqlCacheDependencySection.cs: fix up corcompare.
1405
1406         * ProfilePropertySettingsCollection.cs: fix up corcompare.
1407
1408         * HttpModuleActionCollection.cs: fix up corcompare.
1409
1410         * EventMappingSettingsCollection.cs: fix up corcompare.
1411
1412         * AuthorizationRule.cs: fix up corcompare.
1413
1414         * WebControlsSection.cs: fix up corcompare.
1415
1416         * AuthorizationSection.cs: fix up corcompare.
1417
1418         * MembershipSection.cs: clean this up, implement Properties, fix
1419         up corcompare, etc.
1420
1421 2005-11-13  Chris Toshok  <toshok@ximian.com>
1422
1423         * UrlMapping.cs, CustomErrorCollection.cs, CustomError.cs,
1424         HostingEnvironmentSection.cs, TrustLevel.cs,
1425         HttpCookiesSection.cs, UrlMappingsSection.cs,
1426         UrlMappingCollection.cs, LowerCaseStringConverter.cs,
1427         RoleManagerSection.cs, ProcessModelSection.cs,
1428         TrustLevelCollection.cs, ClientTarget.cs, CustomErrorsSection.cs,
1429         MachineKeySection.cs, SessionPageStateSection.cs,
1430         SessionStateSection.cs, ProvidersHelper.cs,
1431         ClientTargetCollection.cs, SecurityPolicySection.cs,
1432         HttpCapabilitiesBase.cs, ClientTargetSection.cs: Another large
1433         swath.
1434
1435
1436 2005-11-12  Chris Toshok  <toshok@ximian.com>
1437
1438         * AuthorizationRuleCollection.cs, AuthorizationRule.cs,
1439         AuthorizationSection.cs, BufferModesCollection.cs,
1440         BufferModeSettings.cs, CacheSection.cs, CompilerCollection.cs,
1441         Compiler.cs, DeploymentSection.cs,
1442         EventMappingSettingsCollection.cs, EventMappingSettings.cs,
1443         GlobalizationSection.cs, HealthMonitoringSection.cs,
1444         IdentitySection.cs, OutputCacheProfileCollection.cs,
1445         OutputCacheProfile.cs, OutputCacheSection.cs,
1446         OutputCacheSettingsSection.cs, ProfileSettingsCollection.cs,
1447         ProfileSettings.cs, RuleSettingsCollection.cs, RuleSettings.cs,
1448         SqlCacheDependencyDatabaseCollection.cs,
1449         SqlCacheDependencyDatabase.cs, SqlCacheDependencySection.cs,
1450         SystemWebCachingSectionGroup.cs, TraceSection.cs,
1451         TransformerInfoCollection.cs, TransformerInfo.cs, TrustSection.cs,
1452         WebControlsSection.cs, WebPartsPersonalizationAuthorization.cs,
1453         WebPartsPersonalization.cs, WebPartsSection.cs,
1454         XhtmlConformanceSection.cs: a whole slew of new classes.  the
1455         fruits of tons of c&p and ibuprofen.
1456
1457
1458 2005-11-09  Chris Toshok  <toshok@ximian.com>
1459
1460         * PagesSection.cs, AuthenticationSection.cs, BuildProvider.cs,
1461         BuildProviderCollection.cs, HttpHandlerActionCollection.cs,
1462         HttpModulesSection.cs, HttpModuleAction.cs,
1463         HttpModuleActionCollection.cs, AnonymousIdentificationSection.cs,
1464         CodeSubDirectory.cs, CodeSubDirectoriesCollection.cs,
1465         SystemWebSectionGroup.cs, SiteMapSection.cs,
1466         WebConfigurationManager.cs: flesh out the implementation.
1467
1468         * TagMap*.cs, TagPrefix*.cs: new implementation.
1469
1470         * FormsAuthentication*.cs: new implementation.
1471
1472         * Profile*.cs: new implementation.
1473
1474         * Namespace*.cs: new implementation.
1475
1476         * HttpRuntimeSection.cs: new implementation.
1477