merge r67228-r67235, r67237, r67251 and r67256-67259 to trunk (they are
[mono.git] / mcs / class / System.Web / System.Web.Configuration_2.0 / ChangeLog
1 2006-11-05  Vladimir Krasnov  <vladimirk@mainsoft.com>
2
3         * ProfileGroupSettings.cs, ProfileGroupSettingsCollection.cs
4         ProfilePropertySettingsCollection.cs, ProfileSection.cs
5         RootProfilePropertySettingsCollection.cs: refactoring and fix of
6         <group> element
7
8 2006-10-18  Marek Habersack  <grendello@gmail.com>
9
10         * WebConfigurationManager.cs: implement support for extra
11         assemblies to be referenced when compiling a page.
12
13 2006-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
14
15         * WebConfigurationManager.cs: add null checks. Patch by Marek Habersack
16         that fixes bug #79283.
17
18 2006-09-06  Konstantin Triger  <kostat@mainsoft.com>
19
20         * WebConfigurationHost.cs: do not recourse as this will be done by
21                 Configuration object.
22
23 2006-08-08  Vladimir Krasnov  <vladimirk@mainsoft.com>
24
25         * WebConfigurationManager.cs: added configSystem property under 
26         TARGET_JVM part
27         * WebConfigurationHost.cs: fixed GetStreamName and OpenStreamForRead
28         for TARGET_JVM
29         * CompilationSection.cs: BuildProviders property removed from
30         TARGET_JVM
31         * SystemWebSectionGroup.cs: Compilation property removed from
32         TARGET_JVM
33
34 2006-06-26  Atsushi Enomoto  <atsushi@ximian.com>
35
36         * NullableStringValidator.cs : new internal class that is almost
37           identical to StringValidator but allows null value.
38         * PropertyHelper.cs : use new NullableStringValidator.
39         * NamespaceCollection.cs : in NamespaceInfo "" is not allowed.
40
41 2006-06-08  Chris Toshok  <toshok@ximian.com>
42
43         * WebConfigurationHost.cs (InitForConfiguration): i know this is
44         going to bite me in the ass, but guard against configPath being ==
45         to "/", since this will result in an infinite loop.
46         (MapPath): fix a NRE.
47
48 2006-05-18  Atsushi Enomoto  <atsushi@ximian.com>
49
50         * WebConfigurationManager.cs: recent sys.config.dll changes on
51           ConfigurationManager.GetSection() which should call
52           GetRuntimeObject() should also apply here. Fixed monodoc web.
53
54 2006-05-10  Andrew Skiba <andrews@mainsoft.com>
55
56         * HttpHandlerAction.cs: keep the internal exception
57
58 2006-05-08  Chris Toshok  <toshok@ximian.com>
59
60         * WebConfigurationManager.cs (GetBasePath): fix bug where
61         path.Length was 0 when we got to the last while loop (and indexed
62         -1 into an array.)  Thanks Marek for the fix.
63
64 2006-05-04  Chris Toshok  <toshok@ximian.com>
65
66         [ Fixes bug #78256 ]
67         
68         * WebConfigurationHost.cs (GetConfigType): add a MonoTODO about
69         how we should use the build provider machinery to get types.
70         (MapPath): add rudimentary mapping in the case where we don't have
71         a request, basically handle the case where the url begins with (or
72         is) HttpRuntime.AppDomainAppVirtualPath.
73
74         * WebConfigurationManager.cs (GetSection): if we don't have a
75         valid request, open the web configuration corresponding to
76         HttpRuntime.AppDomainAppVirtualPath.
77         (GetBasePath): comment this a little, and make it work in the case
78         where we don't have an HttpRequest.
79
80 2006-04-27  Chris Toshok  <toshok@ximian.com>
81
82         * AuthorizationRuleCollection.cs (ThrowOnDuplicate): for the time
83         being introduce a overridden property MS doesn't make use of.
84         This needs readdressing, but it should get people making use of
85         <authorization> rules working again.
86
87 2006-04-25  Chris Toshok  <toshok@ximian.com>
88
89         * AuthorizationRule.cs (Reset): finally figure out what this
90         method is supposed to do.  Assign our Action property based on
91         parentElement's.
92
93 2006-04-25  Chris Toshok  <toshok@ximian.com>
94
95         * WebConfigurationHost.cs (InitForConfiguration): actually, use
96         HttpRuntime.AppDomainAppVirtualPath on gonzalo's recommendation.
97         It's never null, and its use cleans things up a bit.
98
99 2006-04-25  Chris Toshok  <toshok@ximian.com>
100
101         * WebConfigurationHost.cs (InitForConfiguration): stop going up
102         the virtual hierarchy once we reach the application's base virtual
103         path.
104
105 2006-04-24  Chris Toshok  <toshok@ximian.com>
106
107         * AuthorizationSection.cs (IsValidUser): fix a problem that
108         surfaced when converting from the 1.1 to 2.0 config classes.  Only
109         check for verb match if there are actually verbs to match against.
110
111 2006-04-11  Chris Toshok  <toshok@ximian.com>
112
113         * ExpressionBuilderCollection.cs (CreateNewElement): call argless
114         ctor.
115
116         * ExpressionBuilder.cs: add internal argumentless ctor for use by
117         the collection type.
118
119 2006-03-24  Chris Toshok  <toshok@ximian.com>
120
121         * WebConfigurationManager.cs (GetConfig): add a fallback case for
122         configuration sections that don't subclass from
123         ConfigurationSection.
124
125 2006-03-24  Chris Toshok  <toshok@ximian.com>
126
127         * WebConfigurationHost.cs: fix bug where OpenWebConfiguration
128         ("/") would result in 2 configurations for that toplevel path to
129         be opened.
130
131 2006-03-08  Chris Toshok  <toshok@ximian.com>
132
133         * ProvidersHelper.cs: implement this static class properly.
134
135         * SiteMapSection.cs (ProvidersInternal): add internal property to
136         get the actual SiteMapProviderCollection from here.
137
138 2006-02-28  Chris Toshok  <toshok@ximian.com>
139
140         * BuildProviderAppliesTo.cs, PagesToCountAction.cs: nuke.
141
142 2006-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
143
144         * Compiler.cs:
145         * CompilerCollection.cs: removed compatibility code.
146
147         * BuildProviderCollection.cs: add GetProviderForExtension().
148
149 2006-02-02  Chris Toshok  <toshok@ximian.com>
150
151         * WebConfigurationManager.cs (GetSection(string,string)):
152         implement.
153
154 2006-02-01  Atsushi Enomoto  <atsushi@ximian.com>
155
156         * TrustLevelCollection.cs, CodeSubDirectoriesCollection.cs,
157           CustomErrorCollection.cs, CompilerCollection.cs,
158           HttpHandlerActionCollection.cs,
159           FormsAuthenticationUserCollection.cs,
160           AuthorizationRuleCollection.cs, TagPrefixCollection.cs :
161           CollectionType is public.
162
163 2006-02-01  Chris Toshok  <toshok@ximian.com>
164
165         * WebConfigurationManager.cs: In the normal case, get the current
166         request's web.config, not the application's.  If there is no
167         current request, get the application's.
168         (GetWebApplicationConfiguration): use Request.ApplicationPath, not
169         Request.PhysicalApplicationPath.  OpenWebConfiguration takes
170         virtual paths.
171
172         * HttpConfigurationSystem.cs: GetWebApplicationSection =>
173         GetSection.
174
175 2006-02-01  Chris Toshok  <toshok@ximian.com>
176
177         * CompilerCollection.cs: CONFIGURATION_2_0 => NET_2_0
178
179         * Compiler.cs: same.
180
181 2006-02-01  Chris Toshok  <toshok@ximian.com>
182
183         * HttpConfigurationSystem.cs: SupportsUserConfig == true.  let's
184         use this to determine if ConfigurationManager.AppSettings should
185         be read-only or not.
186
187 2006-01-31  Chris Toshok  <toshok@ximian.com>
188
189         * WebConfigurationManager.cs: err, why did i ifdef stuff NET_2_0
190         inside of an ifdef NET_2_0?
191
192 2006-01-30  Chris Toshok  <toshok@ximian.com>
193
194         * WebConfigurationManager.cs: lots of little changes.  hopefully
195         this doesn't break anyone.  it fixes all the nunit problems
196         gonzalo was having.
197
198         * WebConfigurationHost.cs (GetStreamName): in the MachineWebPath
199         case, handle the case where we have a WebConfigurationFileMap.
200         (MapPath): this is likely wrong, but in the case where we don't
201         have a file map or current HttpContext, just return the path.
202
203 2006-01-29  Chris Toshok  <toshok@ximian.com>
204
205         * HttpModulesSection.cs (LoadModules): I'm not sure we want to
206         solve this problem in this way, but the 1.x code forces
207         DefaultAuthenticationModule to be in the list of modules..
208         Without this fix (or something else) HttpContext.User is null when
209         it shouldn't be.
210
211 2006-01-26  Chris Toshok  <toshok@ximian.com>
212
213         * HttpConfigurationSystem.cs: new class that gets sections from
214         web.config files.
215
216         * WebConfigurationManager.cs: change a lot of the
217         NotImplementedExceptions to NotSupportedExceptions.
218         (AppSettings): implement by just returning
219         ConfigurationManager.AppSettings (note this is broken because
220         ConfigurationManager.AppSettings are read-only, but it works for
221         reading.)
222         (ConnectionStrings): same (and probably broken in the same way..)
223         (Init): replace the 2.0 IInternalConfigSystem with our
224         HttpConfigurationSystem.
225
226         * WebConfigurationHost.cs: add a comment about how things are
227         likely to work in the face of IRemoteWebConfigurationHostServer.
228         (CreateConfigurationContext): return a WebContext instance.
229
230 2006-01-25  Chris Toshok  <toshok@ximian.com>
231
232         * AuthorizationSection.cs (IsValidUser): instead of a blanket
233         false for a null user, just set the username to "" and short
234         circuit out the check for roles.
235
236 2006-01-25  Chris Toshok  <toshok@ximian.com>
237
238         * AuthorizationRule.cs (CheckUser): handle * and ?, and use
239         String.Compare instead of ==.
240         (CheckVerb): use String.Compare instead of ==.
241
242         * AuthorizationSection.cs (IsValidUser): return false for a null
243         user.
244
245 2006-01-22  Chris Toshok  <toshok@ximian.com>
246
247         * GlobalizationSection.cs (VerifyData): quiet mcs.
248
249 2006-01-18  Chris Toshok  <toshok@ximian.com>
250
251         * SystemWebSectionGroup.cs: wrap System.Web.Services references in
252         WEBSERVICES_DEP.
253
254 2006-01-16  Chris Toshok  <toshok@ximian.com>
255
256         * WebConfigurationManager.cs: implement a IConfigurationSystem for
257         use with WebConfigurationManager.
258         (GetSection): try to load the section
259         using GetWebApplicationSection before calling into
260         ConfigurationManager.GetSection.
261         (GetWebApplicationConfiguration): move common code to here.
262         (GetWebApplicationSection): use GetWebApplicationConfiguration.
263         (AppSettings): implement.
264
265         * WebConfigurationHost.cs (GetWebConfigFileName): add
266         "Web.Config", and move to an array/loop implementation.  maybe we
267         should scan the directory and check ToLower() instead of
268         explicitly enumerating?
269
270 2006-01-10  Chris Toshok  <toshok@ximian.com>
271
272         * SystemWebSectionGroup.cs (HostingEnvironment): enable this property.
273         (ProcessModel): add the ConfigurationPropertyAttribute.
274
275 2006-01-10  Chris Toshok  <toshok@ximian.com>
276
277         * PagesSection.cs (.cctor): fix the default value for the
278         enableSessionState attribute - it's not a bool, but a
279         PagesEnableSessionState enum.
280
281 2006-01-10  Chris Toshok  <toshok@ximian.com>
282
283         * MachineKeySection.cs (ValidationKeyBytes, DecryptionKeyBytes,
284         DecryptionKey192Bits): if the keys are null, generate them.  Fixes
285         Page.EnableViewStateMac support.
286
287 2006-01-09  Chris Toshok  <toshok@ximian.com>
288
289         * RoleManagerSection.cs, SqlCacheDepencendySection.cs,
290         SessionStateSection.cs, TraceSection.cs, SecurityPolicySection.cs,
291         PagesSection.cs, RulesSettings.cs, UrlMappingSection.cs: fix
292         dumper output.
293
294 2006-01-09  Chris Toshok  <toshok@ximian.com>
295
296         * ExpressionBuilderCollection.cs (.cctor): no need to create a
297         collection property here.  we're already in the collection.
298
299         * CompilationSection.cs: fix typo.
300
301 2006-01-04  Chris Toshok  <toshok@ximian.com>
302
303         * MachineKeySection.cs: bring over some more internal methods from
304         MachineKeyConfig, and call Set{Decryption,Validation}Key from
305         their respective property setters.
306
307 2006-01-03  Chris Toshok  <toshok@ximian.com>
308
309         * AuthorizationSection.cs (IsValidUser): add analogous method from
310         AuthorizationConfig.cs.
311
312         * AuthorizationRule.cs: add predicates for Verb, User, and Role
313         analogous to what existed in AuthorizationConfig.cs.
314
315 2005-12-11  Chris Toshok  <toshok@ximian.com>
316
317         * WebConfigurationManager.cs (OpenMachineConfiguration): just call
318         ConfigurationManager.OpenMachineConfiguration.
319         (OpenWebConfiguration): remove the "IntPtr userToken" version and
320         add a "string userName" version to clean up corcompare output.
321         Modify all the overloads to pass null instead of IntPtr.Zero.
322         (GetWebApplicationSection): if we're not running in a web
323         application, use the machine configuration.
324
325 2005-12-06  Chris Toshok  <toshok@ximian.com>
326
327         * CodeSubDirectory.cs (DirectoryName): don't use an private field,
328         but base[directoyNameProp].
329
330         * AuthorizationRuleCollection.cs (Add): use BaseAdd (rule, false),
331         so we can insert duplicates.
332         (GetKey): nuke.
333         (GetElementKey): MS for some reason just uses the action for the
334         key, ToString()'ed.
335         (Remove): pass the correct key.
336
337         * ProfileGroupSettings.cs (GetHashCode): implement.
338
339         * GlobalizationSection.cs (GetEncoding): for the utf-8 case, just
340         use Encoding.UTF8.
341
342         * AssemblyCollection.cs (Add): use BaseAdd (info, false) so we can
343         insert duplicates.
344
345         * CacheSection.cs (.cctor): make privateByteLimit's default 0L so
346         we don't get a invalid cast exception later on.
347
348         * AuthorizationRule.cs (VerifyData): split out the verification
349         foo from PreSerialize.
350         (PostDeserialize): so we can call it from here.
351         (PreSerialize): and here.
352
353 2005-12-05  Chris Toshok  <toshok@ximian.com>
354
355         * AuthorizationRuleCollection.cs (GetKey): split out the logic for
356         creating a key from a rule here.
357         (GetElementKey): use it here.
358         (Remove): and here.
359
360 2005-12-04  Chris Toshok  <toshok@ximian.com>
361
362         * UrlMapping.cs: add an internal argument-less ctor.
363
364         * UrlMappingCollection.cs (CreateNewElement): use argument-less
365         ctor.
366         (GetKey): implement.
367         (AllKeys): implement.
368
369         * TrustLevel.cs: add an internal argument-less ctor.
370         
371         * TrustLevelCollection.cs (Set): implement.
372         (CreateNewElement): use argument-less ctor.
373         (IsElementName): implement.
374         (ElementName): implement.
375         (set_Item (int index)): use Set.
376         (ThrowOnDuplicate): implement.
377         
378         * TagPrefixInfo.cs: add internal argument-less ctor.
379
380         * TagPrefixCollection.cs (CreateNewElement): call argument-less
381         ctor.
382         (CollectionType): add text to TODO.
383         (ElementName): implement.
384         
385         * SqlCacheDependencyDatabaseCollection.cs (Set): implement.
386         (AllKeys): implement.
387
388         * RuleSettings.cs: add internal argument-less ctor.
389
390         * RuleSettingsCollection.cs (Contains): implement.
391         (CreateNewElement): use argument-less ctor.
392         (IndexOf): implement.
393         (Insert): implement.
394
395         * RootProfilePropertySettingsCollection.cs (IsModified): chain up
396         to base.IsModified for now.
397         (Reset): chain up to base.Reset for now.
398         (ResetModified): chain up to base.ResetModified for now.
399
400         * ProfileSettings.cs: add internal argument-less ctor.
401
402         * ProfileSettingsCollection.cs (Contains): implement.
403         (CreateNewElement): use argument-less ctor.
404         (IndexOf): implement.
405         (Insert): implement.
406         
407         * ProfilePropertySettingsCollection.cs (IndexOf): implement.
408         (Set): implement.
409         (AllKeys): implement.
410         
411         * ProfileGroupSettings.cs: add internal argument-less ctor.
412
413         * ProfileGroupSettingsCollection.cs (CreateNewElement): use
414         parameter-less ctor.
415         (GetKey): implement.
416         (ResetModified): for now call base.ResetModified.
417         (Set): implement.
418         (AllKeys): implement.
419         
420         * OutputCacheProfile.cs: add internal argument-less ctor.
421
422         * OutputCacheProfileCollection.cs (CreateNewElement): use
423         parameter-less ctor.
424         (Set): implement.
425         (AllKeys): implement.
426
427         * HttpModuleActionCollection.cs (Add): remove MonoTODO.
428         (CreateNewElement): same.
429         
430         * HttpHandlerActionCollection.cs (GetElementKey): build up the key
431         from both the path and the verb.
432         (Remove): same.
433
434         * FormsAuthenticationUserCollection.cs (Set): implement.
435         (AllKeys): implement.
436
437         * EventMappingSettings.cs: add an internal argument-less ctor.
438
439         * EventMappingSettingsCollection.cs (Contains): implement.
440         (CreateNewElement): use argument-less ctor.
441         (IndexOf): implement.
442         (Insert): implement.
443
444         * CompilerCollection.cs (GetKey): implement.
445         (AllKeys): implement.
446
447         * ClientTargetCollection.cs (GetKey): implement.
448         (AllKeys): implement.
449
450         * AuthorizationRuleCollection.cs (Set): implement.
451         (ElementName): add some text to the MonoTODO.
452         (set_Item (int index)): use Set.
453
454 2005-12-04  Chris Toshok  <toshok@ximian.com>
455
456         * CustomError.cs: add an internal argument-less ctor for use by
457         the collection.
458
459         * CustomErrorCollection.cs: implement all the MonoTODO's.
460
461 2005-12-02  Chris Toshok  <toshok@ximian.com>
462
463         * GlobalizationSection.cs (VerifyData): split out the stuff that
464         used to live in PreSerialize here.
465         (PreSerialize): call VerifyData here.
466         (PostDeserialize): and here.
467         
468 2005-12-01  Chris Toshok  <toshok@ximian.com>
469
470         * GlobalizationSection.cs (PreSerialize): add checks for Culture
471         and UICulture properties.
472
473 2005-12-01  Chris Toshok  <toshok@ximian.com>
474
475         * AuthorizationRule.cs (..ctor): provide default values for
476         roles/users/verbs here.  Not sure if we should do this in the ctor
477         or if the System.Configuration infrastructure should.. time will
478         tell.
479         (PreSerialize): throw if Roles.Count and Users.Count == 0.
480         (SerializeElement): write out the element here.  don't chain up to
481         the base class since that has differing behavior than what we
482         want.
483
484 2005-11-30  Chris Toshok  <toshok@ximian.com>
485
486         * CompilerCollection.cs: ugly hack to fix the
487         2.0-without-config-2.0 case.  wrap this file in #if
488         CONFIGURATION_2_0 as well as #if NET_2_0.
489         
490         * Compiler.cs: same.
491
492 2005-11-28  Chris Toshok  <toshok@ximian.com>
493
494         * SessionStateSection.cs (CookieLess): correct the compat function
495         implementation.
496
497 2005-11-28  Chris Toshok  <toshok@ximian.com>
498
499         * GlobalizationSection.cs (GetEncoding): if the encoding name is
500         null, default to utf-8 before we hit the try block, so we don't
501         throw and generate a spurious warning.
502
503         * SessionStateSection.cs: The Cookieless handling needs a custom
504         parser, it appears, as the converter is a StringConverter, not a
505         GenericEnumConverter.
506         (ParseCookieMode): the parser.
507
508 2005-11-28  Chris Toshok  <toshok@ximian.com>
509
510         * PagesSection.cs (GetInstance): nuke.
511
512         * CompilationSection.cs (GetInstance): nuke.
513
514 2005-11-28  Chris Toshok  <toshok@ximian.com>
515
516         * HttpHandlerAction.cs: add some c&p code from the 1.1 config
517         stuff to look for matching handlers.
518         (..ctor): add parameterless ctor.
519         
520         * HttpHandlerActionCollection.cs: clean up formatting.
521         (CreateNewElement): call the parameter-less ctor for
522         HttpHandlerAction.
523
524         * HttpHandlersSection.cs (..ctor): add a ConfigurationProperty for
525         the default collection.
526         (get_Handlers): implement.
527         (LocateHandler): copy over (and massage) some 1.1 config code.
528
529         * MachineKeySection.cs: move some code over from the 1.1 config
530         code to deal with autogeneration of keys, as well as converting
531         from the string rep to the byte[] rep.
532
533 2005-11-28  Chris Toshok  <toshok@ximian.com>
534
535         * HttpModuleActionCollection.cs (CreateNewElement): use the new
536         HttpModuleAction ctor.
537
538         * HttpModuleAction.cs: add internal ctor with no parameters, for
539         use in HttpModuleActionCollection.
540
541 2005-11-28  Chris Toshok  <toshok@ximian.com>
542
543         * GlobalizationSection.cs (..cctor): the encoding
544         ConfigurationProperties are of type "string", even though the
545         properties themselves are of type Encoding.  we do conversions
546         manually in the setter/getters.  gross.  Add code (mostly c&p +
547         massaged from GlobalizationConfigurationHandler) for this and also
548         to handle the culture gettes.
549
550 2005-11-26  Chris Toshok  <toshok@ximian.com>
551
552         * AuthorizationRuleCollection.cs (GetElementKey): implement this.
553
554         * ProfilePropertyNameValidator.cs: make this internal, and add a
555         blurb about how MS doesn't do the testing you'd expect them to.
556
557 2005-11-25  Chris Toshok  <toshok@ximian.com>
558
559         * AuthorizationRuleCollection.cs (CreateNewElement): remove
560         MonoTODO.
561
562         * CompilationSection.cs (GetRuntimeObject): add comment to TODO.
563
564         * ProfileGroupSettings.cs: reformat some things.
565
566         * FormsAuthenticationUser.cs (Name): remove MonoTODO.
567
568         * WebPartsSection.cs (GetRuntimeObject): change TODO comment.
569
570         * ProfilePropertySettings.cs: add internal argument-less ctor.
571
572         * IdentitySection.cs (GetRuntimeObject): return this.
573
574         * ProfilePropertySettingsCollection.cs: implement much of the
575         TODO's.
576         
577         * WebControlsSection.cs (GetRuntimeObject): implement.
578
579         * SqlCacheDependencyDatabaseCollection.cs (GetElementKey):
580         implement.
581         (GetKey): implement.
582
583 2005-11-24  Chris Toshok  <toshok@ximian.com>
584
585         * AssemblyInfo.cs: move this here from System.Web.Configuration,
586         and fix up the properties.
587
588         * SystemWebSectionGroup.cs: enable most of the sections (2
589         remaining to be enabled.)
590
591 2005-11-24  Chris Toshok  <toshok@ximian.com>
592
593         * ProcessModelSection.cs, SqlCacheDependencySection.cs,
594         SessionStateSection.cs, PassportAuthentication.cs,
595         FormsAuthenticationConfiguration.cs,
596         SqlCacheDependencyDatabase.cs, HttpModuleAction.cs,
597         BufferModeSettings.cs, TagPrefixInfo.cs (..cctor): init
598         elementProperty.
599         (ValidateElement): new static validator callback.
600         (ElementProperty): enable this, return elementProperty.
601         
602 2005-11-23  Chris Toshok  <toshok@ximian.com>
603
604         * ProfilePropertyNameValidator.cs: new implementation.
605         
606         * ProfilePropertySettings.cs, ProfileGroupSettings.cs,
607         ClientTargetSection.cs, ClientTargetSection.cs,
608         BufferModeSettings.cs, HttpModulesSection.cs,
609         WebPartsPersonalization.cs, TransformerInfo.cs, TrustLevel.cs,
610         NamespaceInfo.cs, SqlCacheDependencyDatabase.cs,
611         AuthenticationSection.cs, RuleSettings.cs,
612         FormsAuthenticationUser.cs, WebPartsSection.cs, BuildProvider.cs,
613         WebPartsPersonalizationAuthorization.cs, Compiler.cs,
614         ExpressionBuilder.cs, OutputCacheProfile.cs,
615         FormsAuthenticationCredentials.cs, XhtmlConformanceSection.cs,
616         OutputCacheSettingsSection.cs, CustomError.cs, TraceSection.cs,
617         ExpressionBuilderCollection.cs, ProfileSettings.cs,
618         SessionStateSection.cs, HealthMonitoringSection.cs,
619         FormsAuthenticationConfiguration.cs, HttpRuntimeSection.cs,
620         SessionPageStateSection.cs, TrustSection.cs,
621         AnonymousIdentificationSection.cs, WebControlsSection.cs,
622         ClientTarget.cs, TagMapInfo.cs, AuthorizationSection.cs,
623         ProcessModelSection.cs, RoleManagerSection.cs,
624         MembershipSection.cs, CustomErrorsSection.cs (..cctor): fix
625         validator/converters.
626         
627         * MachineKeySection.cs (..cctor): fix validators/converters.
628         (Validation): enable the Converter.
629         
630         * CodeSubDirectory.cs (..cctor): fix validator/converters.
631         (DirectoryName): add note about missing validator decoration.
632         
633         * HttpModuleAction.cs (..cctor): init properties.
634         (Properties): return properties.
635         
636         * CompilationSection.cs (..cctor): fix validator/converters.
637         (GetInstance): add in this pre-2.0 interface for the time being,
638         hopefully it'll make it easier to migrate later on.
639         
640         * HttpHandlerActionCollection.cs (..cctor): init properties.
641         (Properties): return properties.
642
643         * PagesSection.cs (..cctor): fix validator/converters.
644         (GetInstance): add in this pre-2.0 interface for the time being,
645         hopefully it'll make it easier to migrate later on.
646         
647         * HttpHandlersSection.cs (..cctor): init properties.
648         (Properties): return properties.
649         
650         * EventMappingSettings.cs (..cctor): fix validator/converters.
651         (Name): add note about missing validator decoration.
652         
653         * HttpHandlerAction.cs (..cctor): fix validator/converters.
654         (PAth, Type, Verb): add note about missing validator decoration.
655
656         * NamespaceCollection.cs (..cctor): fix properties.
657
658         * ProfilePropertySettingsCollection.cs (..cctor): init properties.
659         (..ctor): don't throw NIE.
660         (Properties): return properties.
661
662         * HttpModuleActionCollection.cs (..cctor): init properties.
663         (Properties): return properties.
664
665         * CacheSection.cs (..cctor): fix validators/converters.
666         (PrivateBytesPollTime): add note about missing validator
667         decoration.
668
669         * AuthorizationRule.cs (..cctor): fix validators/converters.
670         (Roles, Users, Verbs): enable the TypeConverter decorations.
671         
672         * UrlMapping.cs (ValidateUrl): static method for use as a
673         validation callback.  unimplemented as yet.
674         (..cctor): fix validators/converters.
675         (MappedUrl): add note about missing validator decoration.
676         
677         * PropertyHelper.cs: static utility class which contains
678         references to validators and converters for use in static
679         constructors (building the Properties arrays).
680
681 2005-11-23  Chris Toshok  <toshok@ximian.com>
682
683         * MachineKeyValidationConverter.cs: new converter (and a pretty
684         silly one, considering all it seems to do is convert "TripleDES"
685         to "3DES").
686
687         * HostingEnvironmentSection.cs (.cctor): use
688         PositiveTimeSpanValidator like MS does.
689
690 2005-11-18  Chris Toshok  <toshok@ximian.com>
691
692         * HostingEnvironmentSection.cs (.cctor): add validators.
693
694         * CompilationSection.cs (.cctor): fix defaultvalue of
695         urlLinePragmas.
696
697 2005-11-18  Chris Toshok  <toshok@ximian.com>
698
699         * SystemWebSectionGroup.cs: enable a whole slew of properties.
700
701         * RegexWorker.cs: stub this out.
702
703         * HttpCapabilitiesBase.cs: remove GetClrVersions since it's in one
704         of the other partial files.
705
706         * CompilationSection.cs: fix this up.
707
708         * PagesSection.cs: fix some types and add a comment to
709         DeserializeSection.
710
711         * CompilerCollection.cs (Add): new internal method.
712
713         * ProvidersHelper.cs: put the using System.Configuration.Provider
714         inside the NET_2_0 block.
715
716         * CacheSection.cs: add validators.
717
718 2005-11-14  Chris Toshok  <toshok@ximian.com>
719
720         * BufferModeSettings.cs: add validators/converters to the
721         programmatic property list.
722         
723         * BuildProvider.cs: add validators/converters to the programmatic
724         property list, and add an internal ctor with no args.
725
726         * Compiler.cs: wrap the code i hacked from the 1.1 stuff with a
727         #region.
728
729         * BuildProviderCollection.cs (CreateNewElement): use the internal
730         BuildProvider ctor to get around validation.
731
732         * AssemblyCollection.cs: same.
733
734 2005-11-14  Chris Toshok  <toshok@ximian.com>
735
736         * TagPrefixCollection.cs (Remove): pass the key to BaseRemove.
737         (set_Item (int index)): implement.
738         
739         * TagPrefixInfo.cs (Equals): implement.
740         (GetHashCode): implement.
741
742         * AuthorizationRuleCollection.cs (CreateNewElement(string)):
743         implement propertly.
744         (IndexOf): implement.
745         (IsElementName): implement.
746         (ElementName): implement.
747         (Item (int index)): implement.
748         
749         * FormsAuthenticationUserCollection.cs (set_Item (int index)): implement.
750
751         * UrlMappingCollection.cs (set_Item (int index)): implement.
752
753         * OutputCacheProfileCollection.cs (set_Item (int index)): implement.
754
755         * TransformerInfo.cs (Equals): implement.
756         (GetHashCode): implement.
757
758         * NamespaceInfo.cs (Equals): implement.
759         (GetHashCode): implement.
760         
761         * ProfileSettingsCollection.cs (set_Item (int index)): implement.
762
763         * TransformerInfoCollection.cs (set_Item (int index)): implement.
764
765         * HttpHandlerActionCollection.cs (set_Item (int index)): implement.
766
767         * BufferModesCollection.cs (set_Item (int index)): implement.
768
769         * BuildProvider.cs: use the base[fooProp] pattern instead of
770         instance fields.
771
772         * ProfileGroupSettingsCollection.cs: implement most of this class.
773
774         * RuleSettingsCollection.cs (set_Item (int index)): implement.
775
776         * ClientTargetCollection.cs (set_Item (int index)): implement.
777
778         * AssemblyCollection.cs (set_Item (int index)): implement.
779
780         * BuildProviderCollection.cs (set_Item (int index)): reformat.
781
782         * CustomError.cs (Equals): implement.
783         (GetHashCode): implement.
784
785         * ExpressionBuilderCollection.cs (set_Item (int index)): reformat.
786
787         * PassportAuthentication.cs (RedirectUrl): express consternation
788         in comment form.
789
790         * NamespaceCollection.cs (set_Item (int index)): implement.
791
792         * RootProfilePropertySettingsCollection.cs (SerializeElement): add
793         comment.
794
795         * ProfilePropertySettingsCollection.cs (set_Item (int index)):
796         implement.
797
798         * CustomErrorCollection.cs (set_Item (int index)): implement.
799
800         * HttpModuleActionCollection.cs (set_Item (int index)): implement.
801
802         * CodeSubDirectoriesCollection.cs (set_Item (int index)):
803         implement.
804
805         * CustomErrorsSection.cs (DeserializeSection): include call to
806         base.DeserializeSection, and add MonoTODO.
807
808         * EventMappingSettingsCollection.cs (set_Item (int index)):
809         implement.
810
811         * AuthorizationRule.cs (Equals): implement.
812         (GetHashCode): implement.
813         (SerializeElement): add comment.
814
815         * TagMapCollection.cs (Remove): pass the key to BaseRemove.
816         (set_Item (int index)): implement.
817         
818         * TagMapInfo.cs (Equals): implement.
819         (GetHashCode): implement.
820         (SerializeElement): add call to base.SerializeElement.
821
822         * TrustLevelCollection.cs (Remove): pass the key to BaseRemove.
823         (GetElementKey): implement.
824
825         * SqlCacheDependencyDatabase.cs (set_Item (int index)): implement.
826
827         * WebContext.cs: new implementation.
828
829 2005-11-13  Chris Toshok  <toshok@ximian.com>
830
831         * AnonymousIdentificationSection.cs: rework this class a bit to
832         fit in with the rest of S.W.C.  Add validators to the
833         ConfigurationProperty ctor calls, a pattern which will need to be
834         replicated across the entire assembly, it appears (uggggh).
835
836 2005-11-13  Chris Toshok  <toshok@ximian.com>
837
838         * AuthorizationRuleCollection.cs: fix ConfigurationCollection
839         attribute.
840
841         * TransformerInfo.cs: fix corcompare.
842
843         * SqlCacheDependencyDatabase.cs: mark ctor internal to fix
844         corcompare.
845
846         * AuthenticationSection.cs: add missing Reset stub.
847
848         * ProfileSettingsCollection.cs: use the more succint ctor.
849
850         * FormsAuthenticationUser.cs: enable the TypeConverter on "name".
851
852         * GlobalizationSection.cs: fix up corcompare.
853
854         * WebPartsSection.cs: fix up corcompare.
855
856         * ProfileGroupSettingsCollection.cs: add missing
857         ConfigurationCollection attribute.
858
859         * ExpressionBuilder.cs: implement.
860
861         * FormsAuthenticationCredentials.cs: fix up corcompare.
862
863         * AssemblyCollection.cs: implement Properties.
864
865         * SiteMapSection.cs: implement Properties.
866
867         * ExpressionBuilderCollection.cs: fix up corcompare.
868
869         * ProfileSettings.cs: add missing ctor.
870
871         * PassportAuthentication.cs: new implementation.
872
873         * SqlCacheDependencySection.cs: fix up corcompare.
874
875         * ProfilePropertySettingsCollection.cs: fix up corcompare.
876
877         * HttpModuleActionCollection.cs: fix up corcompare.
878
879         * EventMappingSettingsCollection.cs: fix up corcompare.
880
881         * AuthorizationRule.cs: fix up corcompare.
882
883         * WebControlsSection.cs: fix up corcompare.
884
885         * AuthorizationSection.cs: fix up corcompare.
886
887         * MembershipSection.cs: clean this up, implement Properties, fix
888         up corcompare, etc.
889
890 2005-11-13  Chris Toshok  <toshok@ximian.com>
891
892         * UrlMapping.cs, CustomErrorCollection.cs, CustomError.cs,
893         HostingEnvironmentSection.cs, TrustLevel.cs,
894         HttpCookiesSection.cs, UrlMappingsSection.cs,
895         UrlMappingCollection.cs, LowerCaseStringConverter.cs,
896         RoleManagerSection.cs, ProcessModelSection.cs,
897         TrustLevelCollection.cs, ClientTarget.cs, CustomErrorsSection.cs,
898         MachineKeySection.cs, SessionPageStateSection.cs,
899         SessionStateSection.cs, ProvidersHelper.cs,
900         ClientTargetCollection.cs, SecurityPolicySection.cs,
901         HttpCapabilitiesBase.cs, ClientTargetSection.cs: Another large
902         swath.
903
904
905 2005-11-12  Chris Toshok  <toshok@ximian.com>
906
907         * AuthorizationRuleCollection.cs, AuthorizationRule.cs,
908         AuthorizationSection.cs, BufferModesCollection.cs,
909         BufferModeSettings.cs, CacheSection.cs, CompilerCollection.cs,
910         Compiler.cs, DeploymentSection.cs,
911         EventMappingSettingsCollection.cs, EventMappingSettings.cs,
912         GlobalizationSection.cs, HealthMonitoringSection.cs,
913         IdentitySection.cs, OutputCacheProfileCollection.cs,
914         OutputCacheProfile.cs, OutputCacheSection.cs,
915         OutputCacheSettingsSection.cs, ProfileSettingsCollection.cs,
916         ProfileSettings.cs, RuleSettingsCollection.cs, RuleSettings.cs,
917         SqlCacheDependencyDatabaseCollection.cs,
918         SqlCacheDependencyDatabase.cs, SqlCacheDependencySection.cs,
919         SystemWebCachingSectionGroup.cs, TraceSection.cs,
920         TransformerInfoCollection.cs, TransformerInfo.cs, TrustSection.cs,
921         WebControlsSection.cs, WebPartsPersonalizationAuthorization.cs,
922         WebPartsPersonalization.cs, WebPartsSection.cs,
923         XhtmlConformanceSection.cs: a whole slew of new classes.  the
924         fruits of tons of c&p and ibuprofen.
925
926
927 2005-11-09  Chris Toshok  <toshok@ximian.com>
928
929         * PagesSection.cs, AuthenticationSection.cs, BuildProvider.cs,
930         BuildProviderCollection.cs, HttpHandlerActionCollection.cs,
931         HttpModulesSection.cs, HttpModuleAction.cs,
932         HttpModuleActionCollection.cs, AnonymousIdentificationSection.cs,
933         CodeSubDirectory.cs, CodeSubDirectoriesCollection.cs,
934         SystemWebSectionGroup.cs, SiteMapSection.cs,
935         WebConfigurationManager.cs: flesh out the implementation.
936
937         * TagMap*.cs, TagPrefix*.cs: new implementation.
938
939         * FormsAuthentication*.cs: new implementation.
940
941         * Profile*.cs: new implementation.
942
943         * Namespace*.cs: new implementation.
944
945         * HttpRuntimeSection.cs: new implementation.
946