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