1 2010-02-12 Marek Habersack <mhabersack@novell.com>
3 * WebConfigurationHost.cs: implemented {Encrypt,Decrypt}Section
5 2010-01-20 Marek Habersack <mhabersack@novell.com>
7 * OutputCacheSection.cs: implemented the Providers and
8 DefaultProviderName 4.0 properties.
10 2010-01-09 Marek Habersack <mhabersack@novell.com>
12 * WebConfigurationManager.cs: GetSection properly handles looking
13 up and caching of <location> instances. Part of fix for bug
16 * WebConfigurationHost.cs: GetConfigPathFromLocationSubPath
17 calculatesthe path relative to the current config file path. Part
18 of fix for bug #568441
20 2009-12-02 Marek Habersack <mhabersack@novell.com>
22 * CompilationSection.cs: added two properties -
23 OptimizeCompilations (3.5+) and TargetFramework (4.0+)
25 2009-11-19 Marek Habersack <mhabersack@novell.com>
27 * WebConfigurationHost.cs: IsDefinitionAllowed now normalizes the
28 passed configuration path, so that MachineToApplication sections
30 * WebConfigurationManager.cs: use an rw lock to protect access to
31 sectionCache. This is now necessary as the save handler clears the
34 2009-11-10 Marek Habersack <mhabersack@novell.com>
36 * WebConfigurationManager.cs: path passed to OpenWebConfiguration
37 from GetSection does not come from FindWebConfig.
39 2009-11-09 Marek Habersack <mhabersack@novell.com>
41 * WebConfigurationManager.cs: there's no need to cache sections by
42 _file_ path - using section name and web.config path is more than
43 enough and it reduces the number of cache entries
44 considerably. Fixes bug #550730
46 2009-10-07 Marek Habersack <mhabersack@novell.com>
48 * WebConfigurationManager.cs: GetSection doesn't perform string +
49 char + string concatenation to generate section cache key (by
50 Gonzalo Paniagua Javier) which gives an enormous performance boost
51 (processing time for mojoportal's default.aspx went down from
52 2.65s to 107ms on average). The key generation is performed
53 without any kind of string operation right now (except for
54 GetHashCode on 3 strings).
55 GetSectionCacheKey is called only once and sectionCache became a
58 2009-08-20 Marek Habersack <mhabersack@novell.com>
60 * WebConfigurationManager.cs: GetSection does not use
61 FindWebConfig to get the virtual path to open configuration for -
62 doing so would make the configuration system ignore <location>
63 sections. Fixes bug #482181
65 2009-07-23 Gonzalo Paniagua Javier <gonzalo@novell.com>
67 * WebConfigurationManager.cs: avoid possible infinite loop when the
68 path starts with ~ and 1 file check.
70 2009-07-15 Marek Habersack <mhabersack@novell.com>
72 * WebConfigurationManager.cs: another approach to suppressing
73 application reloads after the app writes to its root web.config
74 file. Leaving the previous code in place to get more
75 protection. It's a kludge, but it's the best option to avoid
76 all the races caused by System.Configuration+FileSystemWatcher
77 without rewriting large parts of System.Configuration (and
78 System.Web.Configuration). Fixes bug #522017
80 2009-07-14 Marek Habersack <mhabersack@novell.com>
82 * WebConfigurationManager.cs: added support for suppressing
83 application reload when the main config file is written to from
86 * WebConfigurationHost.cs: added minimal implementation of
87 WriteCompleted, which checks if there's need to suppress
90 2009-07-13 Marek Habersack <mhabersack@novell.com>
92 * ProvidersHelper.cs: InstantiateProvider doesn't have to
93 explicitly look for types in App_Code assemblies - this is done in
94 HttpApplication.LoadType.
96 2009-07-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
98 * WebConfigurationHost.cs: null means MachineToApplication.
99 * WebConfigurationManager.cs: when caching configuration and sections,
100 use the configuration file directory instead of the incoming request
103 2009-06-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
105 * HttpHandlerAction.cs: fix path matching when the pattern has more
108 2009-06-05 Marek Habersack <mhabersack@novell.com>
110 * WebConfigurationManager.cs: OpenWebConfiguration caches
111 configurations with a key generated from all the parameters passed
112 to it, not just from path.
113 Added internal GetSection method which takes HttpContext as its
114 third parameter - used in calling OpenWebConfiguration.
115 FindWebConfig is no longer used in GetSection - it breaks handling
116 of <location> elements in config files. Fixes bug #510302
118 2009-06-03 Marek Habersack <mhabersack@novell.com>
120 * MonoSettingsSection.cs: added new property,
121 verificationCompatibility, which serves the same purpose as the
122 registry key described in http://support.microsoft.com/kb/932552
123 (when set to 1 it turns off virtual path validity
124 verification). Fixes bug #509163
126 2009-05-14 Marek Habersack <mhabersack@novell.com>
128 * HttpHandlersSection.cs: if we're matching a default handler,
131 2009-04-03 Marek Habersack <mhabersack@novell.com>
133 * WebConfigurationManager.cs: added code in the static constructor
134 to enable retrieving application settings via
135 ApplicationSettingsBase from within asp.net applications. Fixes
138 * ApplicationSettingsConfigurationFileMap.cs: added.
140 2009-03-12 Dean Brettle <dean@brettle.com>
142 * nBrowser/Build.cs: made Browser() method thread-safe and moved the
143 actual tree creation to a private InitializeTree() method for clarity.
145 2009-03-01 Marek Habersack <mhabersack@novell.com>
147 * WebConfigurationManager.cs: optimized GetWebApplicationSection a
150 2009-02-28 Marek Habersack <mhabersack@novell.com>
152 * WebConfigurationManager.cs: make sure no nrex happens in
153 GetSectionCacheKey ()
155 2009-02-26 Gonzalo Paniagua Javier <gonzalo@novell.com>
157 * WebConfigurationManager.cs: generate a hash from the string hsah
158 codes instead of concatenating them.
160 2009-01-27 Marek Habersack <mhabersack@novell.com>
162 * HttpHandlerAction.cs: removed the matches cache, it doesn't
163 improve matters here in 99% of the cases.
164 Regexps are no longer used to match handler paths, SearchPattern
167 2009-01-26 Marek Habersack <mhabersack@novell.com>
169 * WebConfigurationHost.cs: when an attempt to map a fake virtual
170 path is made, MapPath returns the aplication physical root
171 directory. Fixes bug #463950
173 2008-01-09 Dean Brettle <dean@brettle.com>
175 * nBrowser/Node.cs: Fixed compatibility bug where <identification> sections were required
178 2009-01-09 Marek Habersack <mhabersack@novell.com>
180 * WebConfigurationManager.cs: do not normalize the path in
181 FindWebConfig when getting the virtual directory.
183 2009-01-08 Marek Habersack <mhabersack@novell.com>
185 * WebConfigurationManager.cs: improve performance of
188 2009-01-07 Marek Habersack <mhabersack@novell.com>
190 * HttpModulesSection.cs: allow for modules with non-public
191 constructors. Fises bug #463971
193 * HttpHandlerAction.cs: allow for handlers with non-public
194 constructors. Fixes bug #463971
196 2008-12-24 Marek Habersack <mhabersack@novell.com>
198 * WebConfigurationManager.cs: A better version of the previous
199 GetSection fix. Right now the method searches for directories
200 containing web.config and uses them, if found, to open the web
201 configuration. If no web.config is found, web configuration is
202 opened for the root application directory.
204 * WebConfigurationHost.cs: made GetWebConfigFileName internal
205 static, so that code can be reused from WebConfigurationManager.
207 2008-12-23 Marek Habersack <mhabersack@novell.com>
209 * WebConfigurationManager.cs: GetSection should call
210 OpenWebConfiguration using the actual directory path, not a file
211 path. If it fails to do so, System.Configuration may treat the
212 top-level Web.config file as a child one which, in turn, in
213 certain circumstances will lead to duplicate keys inserted in
216 2008-12-16 Marek Habersack <mhabersack@novell.com>
218 * WebConfigurationHost.cs: IsDefinitionAllowed should treat
219 configPath == "~" as the root application path.
221 2008-12-12 Owen Brady <Ocean@owenbrady.net>
223 * nBrowser/File.cs, nBrowser/Identification.cs, nBrowser/Node.cs, nBrowser/NodeTypes.cs,
224 nBrowser/Result.cs, nBrowser/Build.cs, nBrowser/Exception.cs, CapabilitiesBuild.cs,
225 CapabilitiesResult.cs: Updated Copyright information to include updated contact information.
227 * nBrowser/Build.cs: Removed LoadDefaultEmbeddedResource function, the embeded resource
228 it is referring too was never included in Mono. And was designed for a free standing
229 browser identification libary.
231 * nBrowser/Exception.cs: Removed Compile Attributes and related comments which were left
232 in from the original free standing browser libary.
234 * CapabilitiesBuild.cs: Removed Header Checksum related coding since it is not required
235 for the Mono implementation.
237 * CapabilitiesResult.cs: Updated Copyright information to include updated contact information.
238 Removed functions which were designed to make use of features of a embeded browser file which
239 is not present in Mono.
241 * CapabilitiesChecksum.cs, RandomRoboBotKeywords.txt: Deleted
242 2008-10-21 Marek Habersack <mhabersack@novell.com>
244 * CapabilitiesChecksum.cs: implement Hex and MapToHex more efficiently.
246 2008-10-09 Marek Habersack <mhabersack@novell.com>
248 * MonoSettingsSection.cs: added - a section for mono-specific
251 2008-10-01 Marek Habersack <mhabersack@novell.com>
253 * CapabilitiesResult.cs: added support for the "browsers"
254 capability - a collection of matching browser ids.
256 * nBrowser/Node.cs: store matching browser ids in the capabilities
257 collection (to support IsBrowser correctly)
259 2008-07-25 Dean Brettle <dean@brettle.com>
261 * nBrowser/Node.cs nBrowser/Build.cs nBrowser/Identification.cs: Fixed race
262 condition in Node.Process() by removing mutating functions from Identification
263 and changing Node.Process() and Node.BrowserIdentification() to maintain
264 state in a List<Match> instead of a List<Identification>.
266 * nBrowser/Node.cs: Fixed race condition associated with lookup of adapter
269 * nBrowser/Node.cs: Removed duplicate call to Node.BrowserIdentification() from
272 * nBrowser/Node.cs: Removed duplicate call to Result.AddAdaper() from Node.Process().
274 * nBrowser/Node.cs: Fixed bug where capabilities containing literal $ or % were
277 * nBrowser/Node.cs: Fixed bug where capabilities with multiple $ substitutions only
280 2008-06-30 Zoltan Varga <vargaz@gmail.com>
282 * CapabilitiesResult.cs: Make the RandomRoboBotKeywords array static and compute it
285 2008-06-30 Marek Habersack <mhabersack@novell.com>
287 * CompilationSection.cs: hush the warnings
289 2008-06-26 Zoltan Varga <vargaz@gmail.com>
291 * nBrowser/Node.cs nBrowser/Result.cs: Avoid looking up adapter types names for
292 every request in every assembly.
294 2008-05-22 Marek Habersack <mhabersack@novell.com>
296 * WebConfigurationHost.cs: changed CreateDeprecatedConfigContext
297 to return a new HttpContext object. This is part of a fix for bug
298 #325128. Patch contributed by James Fitzsimons <james.fitzsimons@gmail.com>,
301 2008-05-07 Marek Habersack <mhabersack@novell.com>
303 * RoleManagerSection.cs: use type converter when creating the
304 cookieTimeout property in the static constructor. Fixes bug
305 #387526. Patch fromIvan Hamilton <ivan@chimerical.com.au>, thanks!
307 2008-03-23 Dean Brettle <dean@brettle.com>
309 * CapabilitiesBuild.cs (Process), ICapabilitiesProcess.cs (Process),
310 nBrowser/Build.cs (Process): Added initialCapabilities argument to
311 facilitate using browscap.ini capabilities.
313 * CapabilitiesResult.cs (ctor), nBrowserResult.cs (ctor): Change
314 items arg to IDictionary to facilitate using browscap.ini capabilities.
316 * nBrowser/Node.cs (Reset): Removed code which checked prohibited
317 non-alphanumerics in id attributes because .NET is not that strict.
319 * nBrowser/Node.cs (MergeFrom): Fixed NullReferenceExceptions that
320 occurred when the source or destination node did not have any
321 capabilities or adapters.
323 * nBrowser/Result.cs (AddAdapter): Fixed to allow types in other
326 2008-03-09 Dean Brettle <dean@brettle.com>
328 * nBrowser/Result.cs, nBrowser/NodeTypes.cs, nBrowser/Identification.cs,
329 nBrowser/File.cs, nBrowser/Build.cs, nBrowser/Node.cs,
330 nBrowser/Exception.cs: added. The code under nBrowser handles *.browser
331 files. It is based on Owen "Ocean" Brady's code, with the following
332 changes and improvements. Replaced Result.Adapter
333 property with AdapterTypeMap property which maps control Type to adapter
334 Type. Added Result.MarkupTextWriter property. Added overrides for
335 Result.GetAdapters and Result.GetTagWriter to return MarkupTextWriter
336 and AdapterTypeMap, resp. Changed tree building algorithm to not
337 depend on nodes with id="Default" and to inject defaultBrowser nodes
338 as parents of regular nodes with the same ids. Changed Node.cs to use
339 Item instead of Add when adding a capability or sample header, so that
340 values get replaced instead of appended. Added support for reference
341 nodes (ie. nodes with refID="someID").
343 * CapabilitiesResult.cs: load RandomRoboBotKeywords.txt resource
344 using the correct name.
346 * RandomRoboBotKeywords.txt: added
348 * HttpCapabilitiesBase.cs (CreateHtmlWriter, Adapters): Added
349 support for *.browsers. Adapters property calls internal virtual
350 GetAdapters() method which is overrided in nBrowser.Result
351 returned by nBrowser code. CreateHtmlWriter uses type specified
352 by TagWriter property.
354 2008-03-03 Vladimir Krasnov <vladimirk@mainsoft.com>
356 * ProvidersHelper.cs: fixed thread safety issue in InstantiateProvider
358 2008-03-01 Marek Habersack <mhabersack@novell.com>
360 * WebConfigurationManager.cs: SettingsMappingManager has been
361 moved to Mono.Web.dll
363 2008-02-28 Marek Habersack <mhabersack@novell.com>
365 * HttpHandlerAction.cs: ignore case when matching handler
366 paths. Fixes bug #364995
368 2008-02-26 Marek Habersack <mhabersack@novell.com>
370 * BuildProviderCollection.cs: be case-insensitive when looking for
373 2008-02-25 Marek Habersack <mhabersack@novell.com>
375 * WebConfigurationManager.cs: hashtable can contain a key with a
376 null value, avoid adding duplicate keys in such cases.
378 2008-02-18 Vladimir Krasnov <vladimirk@mainsoft.com>
380 * WebConfigurationManager.cs: performance improvement, cached
383 2008-02-07 Vladimir Krasnov <vladimirk@mainsoft.com>
385 * GlobalizationSection.cs: fixed GetSanitizedCulture, performance
388 2008-02-05 Marek Habersack <mhabersack@novell.com>
390 * CompilerCollection.cs: Get (string language) should not use
391 BaseGet as our collection is keyed on a list of language names
392 (e.g. "cs;csharp") and passing a single language won't match in
393 BaseGet correctly. Use the overriden indexer instead.
394 Initialize the base class with the case-insensitive
395 comparer. Fixes bug #357824.
397 2008-01-27 Daniel Nauck <dna@mono-project.de>
399 * HttpHandlerAction.cs: fixed the internal method PathMatches ()
400 removed wrong caching of FileMatchingInfo classes with request specific
401 informations. Now we check against the current request path and cache
402 the result in a dictionary.
403 Also check correctly against all possible paths from the HttpHandler.
406 2007-12-27 Marek Habersack <mhabersack@novell.com>
408 * ProfileGroupSettingsCollection.cs: added an internal method to
409 add/overwrite new group settings. Used from
410 RootProfilePropertySettingsCollection.
412 * ProfileGroupSettings.cs: added the missing "name" property to
413 the properties collection.
414 Marked the propertySettingsProp property as the default
416 Added internal deserialization method, used from
417 RootProfilePropertySettingsCollection to support the 'group'
420 * ProfileSection.cs: defaultProviderProp typo - the name of the
421 provider should be "AspNetSqlProfileProvider"
423 * RootProfilePropertySettingsCollection.cs: added
424 OnDeseerializeUnrecognizedElement to support the profile 'group'
426 Added a missing Unmerge method.
428 2007-12-11 Vladimir Krasnov <vladimirk@mainsoft.com>
430 * SiteMapSection.cs: fixed ProvidersInternal property to be thread safe
432 2007-12-08 Marek Habersack <mhabersack@novell.com>
434 * WebConfigurationManager.cs: GetSection now runs each section
435 through a mapper (if any is defined for the section) before
436 returning it to the caller.
438 2007-11-23 Marek Habersack <mhabersack@novell.com>
440 * TagPrefixCollection.cs: changed the collection type to
443 * ProfileSection.cs: added missing Properties property, added a
444 static constructor to create property descriptors. Use property
445 descriptors in property accessors.
447 * ProfileGroupSettingsCollection.cs: added missing attribute to
448 the class, removed CollectionType method, added missing IsModified
449 and ResetModified methods, added missing Properties property.
451 * ProfileGroupSettings.cs: added missing Properties property,
452 adjusted the set of custom attributes of the PropertySettings
455 * ProcessModelSection.cs: change the default value of the CpuMask
458 * OutputCacheSection.cs: added the EnableKernelCacheForVaryByStar
461 * OutputCacheProfile.cs: added the VaryByContentEncoding property.
463 * FormsAuthenticationConfiguration.cs: corrected defaults for the
466 * ExpressionBuilder.cs: corrected defaults for the
467 ExpressionPrefix and Type properties.
469 * CustomErrorsSection.cs: added two missing overrides -
470 DeserializeSection and Reset.
472 * ClientTargetSection.cs: added the missing Properties property.
473 Added static constructor to create the property collection.
475 * CustomErrorCollection.cs: removed the ThrowOnDuplicate
478 * CacheSection.cs: corrected defaults for the
479 PercentagePhysicalMemoryUsedLimit property.
481 * ClientTargetCollection.cs: added missing Properties property.
483 * IConfigMapPathFactory.cs: added
485 * IConfigMapPath.cs: added
487 * RoleManagerSection.cs: added a static constructor, a collection
488 of properties, the missing Properties property.
490 2007-11-22 Marek Habersack <mhabersack@novell.com>
492 * RoleManagerSection.cs: CookieTimeout property custom attributes
493 changed to match MS.NET's ones.
495 * AuthorizationRuleCollection.cs: removed the ThrowOnDuplicate
496 property - it's not found in the MS.NET version of the class.
498 2007-11-06 Marek Habersack <mhabersack@novell.com>
500 * MachineKeySectionUtils.cs: make sure keys are autogenerated when
503 2007-11-02 Marek Habersack <mhabersack@novell.com>
505 * HttpHandlerActionCollection.cs: clear http handler cache in
506 HttpApplication if the collection is modified.
508 2007-11-01 Marek Habersack <mhabersack@novell.com>
510 * MachineKeySection.cs: moved all the internal static methods and
511 properties to MachineKeySectionUtils.cs
513 * MachineKeySectionUtils.cs: added. This file is included in the
514 System.Web.Extensions compilation.
515 The old properties from MachineKeySection.cs became methods.
517 2007-10-24 Marek Habersack <mhabersack@novell.com>
519 * HttpHandlerAction.cs: exact path matching must be done on the
520 original string in PathMatches, not on the sliced one. Fixes bug
523 2007-10-17 Marek Habersack <mhabersack@novell.com>
525 * WebConfigurationHost.cs: if running outside hosted environment,
526 read only the assemblyname.config configuration file instead of
527 web.config. Fixes bug #332425
529 2007-10-15 Marek Habersack <mhabersack@novell.com>
531 * ProvidersHelper.cs: use HttpApplication.LoadType instead of
534 * HttpModulesSection.cs: use HttpApplication.LoadType when loading
535 modules, to include both the bin/ directory and the top-level
536 assemblies in search. Fixes bug #333686.
538 2007-08-30 Marek Habersack <mhabersack@novell.com>
540 * MachineKeySection.cs: retrieve the keys from the registry before
541 falling back to the old method. Fixes bug #76606
543 2007-08-23 Marek Habersack <mhabersack@novell.com>
545 * ProvidersHelper.cs: HttpApplication.LoadTypeFromPrivateBin
546 renamed to LoadTypeFromBin.
548 2007-08-21 Marek Habersack <mhabersack@novell.com>
550 * ProvidersHelper.cs: use HttpApplication.LoadTypeFromPrivateBin
551 to get the provider settings type.
553 2007-08-10 Gert Driesen <drieseng@users.sourceforge.net>
555 * PagesEnableSessionState.cs: Marked internal on 1.0 profile.
557 2007-07-16 Vladimir Krasnov <vladimirk@mainsoft.com>
559 * ProfileGroupSettingsCollection.cs: added ResetInternal internal
561 * RootProfilePropertySettingsCollection.cs: added Reset method
562 override to reset GroupSettings collection
564 2007-06-24 Vladimir Krasnov <vladimirk@mainsoft.com>
566 * HttpHandlerAction.cs: fixed SplitPaths property to be thread safe
568 2007-06-12 Vladimir Krasnov <vladimirk@mainsoft.com>
570 * CompilationSection.cs: TARGET_JVM on not supported features
571 * HttpModulesSection.cs: ctor should be static
573 2007-06-03 Adar Wesley <adarw@mainsoft.com>
575 * ProfilePropertySettingsCollection.cs: added missing method
576 OnDeserializeUnrecognizedElement.
578 2007-05-30 Marek Habersack <mhabersack@novell.com>
580 * WebConfigurationManager.cs: if errors happen when opening the
581 configuration file, mark the manager as unsafe to prevent further
582 usage and avoid error loops.
584 2007-05-17 Igor Zelmanovich <igorz@mainsoft.com>
586 * WebConfigurationHost.cs: for TARGET_J2EE only:
587 prevent NullRefference Exception.
589 2007-05-15 Igor Zelmanovich <igorz@mainsoft.com>
591 * WebConfigurationManager.cs:
592 make configurations hashtable case-insensitive.
593 * WebConfigurationHost.cs: for TARGET_J2EE only:
594 GetStreamName returns file path in right case, that make it works
595 on case-sensitive file system.
597 2007-05-15 Marek Habersack <mhabersack@novell.com>
599 * BuildProviderCollection.cs: refactoring - use
600 HttpApplication.LoadType to actually look up the type.
602 * HttpHandlerAction.cs: as above
604 * WebConfigurationHost.cs: refactoring - moved the LoadType to
605 HttpApplication to share the code between 1.1 and 2.0 profiles.
607 2007-05-14 Marek Habersack <mhabersack@novell.com>
609 * UrlMappingCollection.cs: implemented the Item (string) indexer.
611 * UrlMapping.cs: implemented the URL validation callback body
612 (doesn't work at the moment).
614 2007-05-14 Igor Zelmanovich <igorz@mainsoft.com>
616 * WebConfigurationManager.cs:
617 make configurations synchronized.
618 added new internal method RemoveConfigurationFromCache.
620 2007-05-07 Marek Habersack <mhabersack@novell.com>
622 * PagesSection.cs: buffering is on by default.
624 2007-04-24 Marek Habersack <mhabersack@novell.com>
626 * WebConfigurationHost.cs: wrap MapPath calls in try/catch,
627 because bad URLs can cause it to throw exceptions. If such
628 exception is caught, throw a HttpException for Bad Request (400).
629 Look for types in the top-level assemblies (App_Code and
632 * WebConfigurationManager.cs: added two internal methods for safe
633 retrieval of config sections.
635 2007-04-19 Marek Habersack <mhabersack@novell.com>
637 * HttpHandlerAction.cs: look up types in all the toplevel
638 assemblies. Fixes bug #80897.
640 2007-04-17 Atsushi Enomoto <atsushi@ximian.com>
642 * ProcessModelSection.cs : cpuMask default value should be int,
645 2007-04-06 Marek Habersack <mhabersack@novell.com>
647 * CustomErrorsSection.cs: make the customErrors section work.
649 * PagesSection.cs: provide appropriate default value for the
650 asyncTimeout setting.
652 2007-03-24 Marek Habersack <mhabersack@novell.com>
654 * WebConfigurationHost.cs: allow MachineToApplication definition
655 for config paths that equal the domain virtual app directory.
657 2007-03-22 Adar Wesley <adarw@mainsoft.com>
659 * HttpCapabilitiesBase.cs: implemented all capabilities. Capabilities
660 still throw if there is no value in browscaps.ini and the property is called.
662 2007-03-21 Vladimir Krasnov <vladimirk@mainsoft.com>
664 * WebConfigurationManager.cs: fixed OpenWebConfiguration, should not
665 lock when checking if configuration is already open
667 2007-03-15 Vladimir Krasnov <vladimirk@mainsoft.com>
669 * WebConfigurationManager.cs: fixed OpenWebConfiguration, removed
670 GetBasePath call and locations search, since this not affects
671 configuration initialization, but improves performance
673 2007-03-12 Marek Habersack <mhabersack@novell.com>
675 * ProvidersHelper.cs: support loading custom providers from
676 App_Code assemblies. Fixes bug #81071.
677 Also set eol-style to native.
679 2007-03-08 Gert Driesen <drieseng@users.souceforge.net>
681 * PagesSection.cs: Revert part of Adar's patch that regresses
684 2007-03-06 Adar Wesley <adarw@mainsoft.com>
686 * PagesSection.cs: improve Enum parsing and strongly typed default values.
688 2007-02-20 Marek Habersack <grendello@gmail.com>
690 * Patch from Gert Driesen <drieseng@users.sourceforge.net>
691 * PagesSection.cs: Process value of EnableSessionState attribute
692 case-sensitive, and perform check in getter. Fix for bug #80913.
693 * PageParser.cs: Added note on difference in behaviour between page
694 level attribute and configuration attribute for enableSessionState.
695 * PagesConfiguration.cs: Fixed compiler warning.
697 2007-02-22 Marek Habersack <grendello@gmail.com>
699 * CompilerCollection.cs: Optimize language lookup a bit.
701 2007-02-05 Konstantin Triger <kostat@mainsoft.com>
703 * TagPrefixCollection.cs: Fix element key creation.
705 2007-02-04 Konstantin Triger <kostat@mainsoft.com>
707 * NamespaceInfo.cs, HttpModuleAction.cs, RoleManagerSection.cs:
708 fix the default value.
710 2007-02-02 Marek Habersack <grendello@gmail.com>
712 * TagPrefixCollection.cs: Add the CollectionType parameter.
713 Get rid of unnecessary interface references in the class declaration.
714 GetElementKey should return Source which should be unique, unlike TagPrefix.
716 2007-01-04 Konstantin Triger <kostat@mainsoft.com>
718 * ProfileSection.cs: Ensure enabled = true by default; cleanup.
720 2006-12-27 Vladimir Krasnov <vladimirk@mainsoft.com>
722 * CustomErrorCollection.cs: fixed ThrowOnDuplicate to false as in .net
724 2006-12-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
726 * GlobalizationSection.cs: make encodings actually work for the 2.0
729 2006-12-21 Marek Habersack <grendello@gmail.com>
731 * TagMapInfo.cs: Add an internal default constructor for use from
734 * TagMapCollection.cs: Don't call the string,string constructor of
735 TagMapInfo - the class disallows empty strings as values of its
738 2006-12-21 Vladimir Krasnov <vladimirk@mainsoft.com>
740 * RoleManagerSection.cs: refactored using attributes
742 2006-12-20 Marek Habersack <grendello@gmail.com>
744 * ProfilePropertyNameValidator.cs: added a few checks.
746 2006-12-18 Vladimir Krasnov <vladimirk@mainsoft.com>
748 * WebConfigurationManager.cs: fixed GetSection to execute
749 GetRuntimeObject, refactored GetSection and GetWebApplicationSection
751 2006-12-17 Vladimir Krasnov <vladimirk@mainsoft.com>
753 * HttpHandlerAction.cs: fixed 'verb' config property
755 2006-12-07 Igor Zelmanovich <igorz@mainsoft.com>
757 * ProvidersHelper.cs: fixed: load assembles from /bin
759 2006-11-22 Miguel de Icaza <miguel@novell.com>
761 * SessionStateSection.cs: Do not call Enum.Parse with a null
762 argument, prevents an exception from being thrown.
764 2006-11-20 Marek Habersack <grendello@gmail.com>
766 * GlobalizationSection.cs: Added support for "auto" cultures and
767 the "auto:DEFAULT_CULTURE" cultures.
769 2006-11-13 Konstantin Triger <kostat@mainsoft.com>
771 * WebConfigurationHost.cs: use Type.GetType for loading full qualified types.
773 2006-11-05 Vladimir Krasnov <vladimirk@mainsoft.com>
775 * ProfileGroupSettings.cs, ProfileGroupSettingsCollection.cs
776 ProfilePropertySettingsCollection.cs, ProfileSection.cs
777 RootProfilePropertySettingsCollection.cs: refactoring and fix of
780 2006-10-18 Marek Habersack <grendello@gmail.com>
782 * WebConfigurationManager.cs: implement support for extra
783 assemblies to be referenced when compiling a page.
785 2006-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
787 * WebConfigurationManager.cs: add null checks. Patch by Marek Habersack
788 that fixes bug #79283.
790 2006-09-06 Konstantin Triger <kostat@mainsoft.com>
792 * WebConfigurationHost.cs: do not recourse as this will be done by
793 Configuration object.
795 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
797 * WebConfigurationManager.cs: added configSystem property under
799 * WebConfigurationHost.cs: fixed GetStreamName and OpenStreamForRead
801 * CompilationSection.cs: BuildProviders property removed from
803 * SystemWebSectionGroup.cs: Compilation property removed from
806 2006-06-26 Atsushi Enomoto <atsushi@ximian.com>
808 * NullableStringValidator.cs : new internal class that is almost
809 identical to StringValidator but allows null value.
810 * PropertyHelper.cs : use new NullableStringValidator.
811 * NamespaceCollection.cs : in NamespaceInfo "" is not allowed.
813 2006-06-08 Chris Toshok <toshok@ximian.com>
815 * WebConfigurationHost.cs (InitForConfiguration): i know this is
816 going to bite me in the ass, but guard against configPath being ==
817 to "/", since this will result in an infinite loop.
818 (MapPath): fix a NRE.
820 2006-05-18 Atsushi Enomoto <atsushi@ximian.com>
822 * WebConfigurationManager.cs: recent sys.config.dll changes on
823 ConfigurationManager.GetSection() which should call
824 GetRuntimeObject() should also apply here. Fixed monodoc web.
826 2006-05-10 Andrew Skiba <andrews@mainsoft.com>
828 * HttpHandlerAction.cs: keep the internal exception
830 2006-05-08 Chris Toshok <toshok@ximian.com>
832 * WebConfigurationManager.cs (GetBasePath): fix bug where
833 path.Length was 0 when we got to the last while loop (and indexed
834 -1 into an array.) Thanks Marek for the fix.
836 2006-05-04 Chris Toshok <toshok@ximian.com>
840 * WebConfigurationHost.cs (GetConfigType): add a MonoTODO about
841 how we should use the build provider machinery to get types.
842 (MapPath): add rudimentary mapping in the case where we don't have
843 a request, basically handle the case where the url begins with (or
844 is) HttpRuntime.AppDomainAppVirtualPath.
846 * WebConfigurationManager.cs (GetSection): if we don't have a
847 valid request, open the web configuration corresponding to
848 HttpRuntime.AppDomainAppVirtualPath.
849 (GetBasePath): comment this a little, and make it work in the case
850 where we don't have an HttpRequest.
852 2006-04-27 Chris Toshok <toshok@ximian.com>
854 * AuthorizationRuleCollection.cs (ThrowOnDuplicate): for the time
855 being introduce a overridden property MS doesn't make use of.
856 This needs readdressing, but it should get people making use of
857 <authorization> rules working again.
859 2006-04-25 Chris Toshok <toshok@ximian.com>
861 * AuthorizationRule.cs (Reset): finally figure out what this
862 method is supposed to do. Assign our Action property based on
865 2006-04-25 Chris Toshok <toshok@ximian.com>
867 * WebConfigurationHost.cs (InitForConfiguration): actually, use
868 HttpRuntime.AppDomainAppVirtualPath on gonzalo's recommendation.
869 It's never null, and its use cleans things up a bit.
871 2006-04-25 Chris Toshok <toshok@ximian.com>
873 * WebConfigurationHost.cs (InitForConfiguration): stop going up
874 the virtual hierarchy once we reach the application's base virtual
877 2006-04-24 Chris Toshok <toshok@ximian.com>
879 * AuthorizationSection.cs (IsValidUser): fix a problem that
880 surfaced when converting from the 1.1 to 2.0 config classes. Only
881 check for verb match if there are actually verbs to match against.
883 2006-04-11 Chris Toshok <toshok@ximian.com>
885 * ExpressionBuilderCollection.cs (CreateNewElement): call argless
888 * ExpressionBuilder.cs: add internal argumentless ctor for use by
891 2006-03-24 Chris Toshok <toshok@ximian.com>
893 * WebConfigurationManager.cs (GetConfig): add a fallback case for
894 configuration sections that don't subclass from
895 ConfigurationSection.
897 2006-03-24 Chris Toshok <toshok@ximian.com>
899 * WebConfigurationHost.cs: fix bug where OpenWebConfiguration
900 ("/") would result in 2 configurations for that toplevel path to
903 2006-03-08 Chris Toshok <toshok@ximian.com>
905 * ProvidersHelper.cs: implement this static class properly.
907 * SiteMapSection.cs (ProvidersInternal): add internal property to
908 get the actual SiteMapProviderCollection from here.
910 2006-02-28 Chris Toshok <toshok@ximian.com>
912 * BuildProviderAppliesTo.cs, PagesToCountAction.cs: nuke.
914 2006-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
917 * CompilerCollection.cs: removed compatibility code.
919 * BuildProviderCollection.cs: add GetProviderForExtension().
921 2006-02-02 Chris Toshok <toshok@ximian.com>
923 * WebConfigurationManager.cs (GetSection(string,string)):
926 2006-02-01 Atsushi Enomoto <atsushi@ximian.com>
928 * TrustLevelCollection.cs, CodeSubDirectoriesCollection.cs,
929 CustomErrorCollection.cs, CompilerCollection.cs,
930 HttpHandlerActionCollection.cs,
931 FormsAuthenticationUserCollection.cs,
932 AuthorizationRuleCollection.cs, TagPrefixCollection.cs :
933 CollectionType is public.
935 2006-02-01 Chris Toshok <toshok@ximian.com>
937 * WebConfigurationManager.cs: In the normal case, get the current
938 request's web.config, not the application's. If there is no
939 current request, get the application's.
940 (GetWebApplicationConfiguration): use Request.ApplicationPath, not
941 Request.PhysicalApplicationPath. OpenWebConfiguration takes
944 * HttpConfigurationSystem.cs: GetWebApplicationSection =>
947 2006-02-01 Chris Toshok <toshok@ximian.com>
949 * CompilerCollection.cs: CONFIGURATION_2_0 => NET_2_0
953 2006-02-01 Chris Toshok <toshok@ximian.com>
955 * HttpConfigurationSystem.cs: SupportsUserConfig == true. let's
956 use this to determine if ConfigurationManager.AppSettings should
959 2006-01-31 Chris Toshok <toshok@ximian.com>
961 * WebConfigurationManager.cs: err, why did i ifdef stuff NET_2_0
962 inside of an ifdef NET_2_0?
964 2006-01-30 Chris Toshok <toshok@ximian.com>
966 * WebConfigurationManager.cs: lots of little changes. hopefully
967 this doesn't break anyone. it fixes all the nunit problems
970 * WebConfigurationHost.cs (GetStreamName): in the MachineWebPath
971 case, handle the case where we have a WebConfigurationFileMap.
972 (MapPath): this is likely wrong, but in the case where we don't
973 have a file map or current HttpContext, just return the path.
975 2006-01-29 Chris Toshok <toshok@ximian.com>
977 * HttpModulesSection.cs (LoadModules): I'm not sure we want to
978 solve this problem in this way, but the 1.x code forces
979 DefaultAuthenticationModule to be in the list of modules..
980 Without this fix (or something else) HttpContext.User is null when
983 2006-01-26 Chris Toshok <toshok@ximian.com>
985 * HttpConfigurationSystem.cs: new class that gets sections from
988 * WebConfigurationManager.cs: change a lot of the
989 NotImplementedExceptions to NotSupportedExceptions.
990 (AppSettings): implement by just returning
991 ConfigurationManager.AppSettings (note this is broken because
992 ConfigurationManager.AppSettings are read-only, but it works for
994 (ConnectionStrings): same (and probably broken in the same way..)
995 (Init): replace the 2.0 IInternalConfigSystem with our
996 HttpConfigurationSystem.
998 * WebConfigurationHost.cs: add a comment about how things are
999 likely to work in the face of IRemoteWebConfigurationHostServer.
1000 (CreateConfigurationContext): return a WebContext instance.
1002 2006-01-25 Chris Toshok <toshok@ximian.com>
1004 * AuthorizationSection.cs (IsValidUser): instead of a blanket
1005 false for a null user, just set the username to "" and short
1006 circuit out the check for roles.
1008 2006-01-25 Chris Toshok <toshok@ximian.com>
1010 * AuthorizationRule.cs (CheckUser): handle * and ?, and use
1011 String.Compare instead of ==.
1012 (CheckVerb): use String.Compare instead of ==.
1014 * AuthorizationSection.cs (IsValidUser): return false for a null
1017 2006-01-22 Chris Toshok <toshok@ximian.com>
1019 * GlobalizationSection.cs (VerifyData): quiet mcs.
1021 2006-01-18 Chris Toshok <toshok@ximian.com>
1023 * SystemWebSectionGroup.cs: wrap System.Web.Services references in
1026 2006-01-16 Chris Toshok <toshok@ximian.com>
1028 * WebConfigurationManager.cs: implement a IConfigurationSystem for
1029 use with WebConfigurationManager.
1030 (GetSection): try to load the section
1031 using GetWebApplicationSection before calling into
1032 ConfigurationManager.GetSection.
1033 (GetWebApplicationConfiguration): move common code to here.
1034 (GetWebApplicationSection): use GetWebApplicationConfiguration.
1035 (AppSettings): implement.
1037 * WebConfigurationHost.cs (GetWebConfigFileName): add
1038 "Web.Config", and move to an array/loop implementation. maybe we
1039 should scan the directory and check ToLower() instead of
1040 explicitly enumerating?
1042 2006-01-10 Chris Toshok <toshok@ximian.com>
1044 * SystemWebSectionGroup.cs (HostingEnvironment): enable this property.
1045 (ProcessModel): add the ConfigurationPropertyAttribute.
1047 2006-01-10 Chris Toshok <toshok@ximian.com>
1049 * PagesSection.cs (.cctor): fix the default value for the
1050 enableSessionState attribute - it's not a bool, but a
1051 PagesEnableSessionState enum.
1053 2006-01-10 Chris Toshok <toshok@ximian.com>
1055 * MachineKeySection.cs (ValidationKeyBytes, DecryptionKeyBytes,
1056 DecryptionKey192Bits): if the keys are null, generate them. Fixes
1057 Page.EnableViewStateMac support.
1059 2006-01-09 Chris Toshok <toshok@ximian.com>
1061 * RoleManagerSection.cs, SqlCacheDepencendySection.cs,
1062 SessionStateSection.cs, TraceSection.cs, SecurityPolicySection.cs,
1063 PagesSection.cs, RulesSettings.cs, UrlMappingSection.cs: fix
1066 2006-01-09 Chris Toshok <toshok@ximian.com>
1068 * ExpressionBuilderCollection.cs (.cctor): no need to create a
1069 collection property here. we're already in the collection.
1071 * CompilationSection.cs: fix typo.
1073 2006-01-04 Chris Toshok <toshok@ximian.com>
1075 * MachineKeySection.cs: bring over some more internal methods from
1076 MachineKeyConfig, and call Set{Decryption,Validation}Key from
1077 their respective property setters.
1079 2006-01-03 Chris Toshok <toshok@ximian.com>
1081 * AuthorizationSection.cs (IsValidUser): add analogous method from
1082 AuthorizationConfig.cs.
1084 * AuthorizationRule.cs: add predicates for Verb, User, and Role
1085 analogous to what existed in AuthorizationConfig.cs.
1087 2005-12-11 Chris Toshok <toshok@ximian.com>
1089 * WebConfigurationManager.cs (OpenMachineConfiguration): just call
1090 ConfigurationManager.OpenMachineConfiguration.
1091 (OpenWebConfiguration): remove the "IntPtr userToken" version and
1092 add a "string userName" version to clean up corcompare output.
1093 Modify all the overloads to pass null instead of IntPtr.Zero.
1094 (GetWebApplicationSection): if we're not running in a web
1095 application, use the machine configuration.
1097 2005-12-06 Chris Toshok <toshok@ximian.com>
1099 * CodeSubDirectory.cs (DirectoryName): don't use an private field,
1100 but base[directoyNameProp].
1102 * AuthorizationRuleCollection.cs (Add): use BaseAdd (rule, false),
1103 so we can insert duplicates.
1105 (GetElementKey): MS for some reason just uses the action for the
1107 (Remove): pass the correct key.
1109 * ProfileGroupSettings.cs (GetHashCode): implement.
1111 * GlobalizationSection.cs (GetEncoding): for the utf-8 case, just
1114 * AssemblyCollection.cs (Add): use BaseAdd (info, false) so we can
1117 * CacheSection.cs (.cctor): make privateByteLimit's default 0L so
1118 we don't get a invalid cast exception later on.
1120 * AuthorizationRule.cs (VerifyData): split out the verification
1121 foo from PreSerialize.
1122 (PostDeserialize): so we can call it from here.
1123 (PreSerialize): and here.
1125 2005-12-05 Chris Toshok <toshok@ximian.com>
1127 * AuthorizationRuleCollection.cs (GetKey): split out the logic for
1128 creating a key from a rule here.
1129 (GetElementKey): use it here.
1132 2005-12-04 Chris Toshok <toshok@ximian.com>
1134 * UrlMapping.cs: add an internal argument-less ctor.
1136 * UrlMappingCollection.cs (CreateNewElement): use argument-less
1138 (GetKey): implement.
1139 (AllKeys): implement.
1141 * TrustLevel.cs: add an internal argument-less ctor.
1143 * TrustLevelCollection.cs (Set): implement.
1144 (CreateNewElement): use argument-less ctor.
1145 (IsElementName): implement.
1146 (ElementName): implement.
1147 (set_Item (int index)): use Set.
1148 (ThrowOnDuplicate): implement.
1150 * TagPrefixInfo.cs: add internal argument-less ctor.
1152 * TagPrefixCollection.cs (CreateNewElement): call argument-less
1154 (CollectionType): add text to TODO.
1155 (ElementName): implement.
1157 * SqlCacheDependencyDatabaseCollection.cs (Set): implement.
1158 (AllKeys): implement.
1160 * RuleSettings.cs: add internal argument-less ctor.
1162 * RuleSettingsCollection.cs (Contains): implement.
1163 (CreateNewElement): use argument-less ctor.
1164 (IndexOf): implement.
1165 (Insert): implement.
1167 * RootProfilePropertySettingsCollection.cs (IsModified): chain up
1168 to base.IsModified for now.
1169 (Reset): chain up to base.Reset for now.
1170 (ResetModified): chain up to base.ResetModified for now.
1172 * ProfileSettings.cs: add internal argument-less ctor.
1174 * ProfileSettingsCollection.cs (Contains): implement.
1175 (CreateNewElement): use argument-less ctor.
1176 (IndexOf): implement.
1177 (Insert): implement.
1179 * ProfilePropertySettingsCollection.cs (IndexOf): implement.
1181 (AllKeys): implement.
1183 * ProfileGroupSettings.cs: add internal argument-less ctor.
1185 * ProfileGroupSettingsCollection.cs (CreateNewElement): use
1186 parameter-less ctor.
1187 (GetKey): implement.
1188 (ResetModified): for now call base.ResetModified.
1190 (AllKeys): implement.
1192 * OutputCacheProfile.cs: add internal argument-less ctor.
1194 * OutputCacheProfileCollection.cs (CreateNewElement): use
1195 parameter-less ctor.
1197 (AllKeys): implement.
1199 * HttpModuleActionCollection.cs (Add): remove MonoTODO.
1200 (CreateNewElement): same.
1202 * HttpHandlerActionCollection.cs (GetElementKey): build up the key
1203 from both the path and the verb.
1206 * FormsAuthenticationUserCollection.cs (Set): implement.
1207 (AllKeys): implement.
1209 * EventMappingSettings.cs: add an internal argument-less ctor.
1211 * EventMappingSettingsCollection.cs (Contains): implement.
1212 (CreateNewElement): use argument-less ctor.
1213 (IndexOf): implement.
1214 (Insert): implement.
1216 * CompilerCollection.cs (GetKey): implement.
1217 (AllKeys): implement.
1219 * ClientTargetCollection.cs (GetKey): implement.
1220 (AllKeys): implement.
1222 * AuthorizationRuleCollection.cs (Set): implement.
1223 (ElementName): add some text to the MonoTODO.
1224 (set_Item (int index)): use Set.
1226 2005-12-04 Chris Toshok <toshok@ximian.com>
1228 * CustomError.cs: add an internal argument-less ctor for use by
1231 * CustomErrorCollection.cs: implement all the MonoTODO's.
1233 2005-12-02 Chris Toshok <toshok@ximian.com>
1235 * GlobalizationSection.cs (VerifyData): split out the stuff that
1236 used to live in PreSerialize here.
1237 (PreSerialize): call VerifyData here.
1238 (PostDeserialize): and here.
1240 2005-12-01 Chris Toshok <toshok@ximian.com>
1242 * GlobalizationSection.cs (PreSerialize): add checks for Culture
1243 and UICulture properties.
1245 2005-12-01 Chris Toshok <toshok@ximian.com>
1247 * AuthorizationRule.cs (..ctor): provide default values for
1248 roles/users/verbs here. Not sure if we should do this in the ctor
1249 or if the System.Configuration infrastructure should.. time will
1251 (PreSerialize): throw if Roles.Count and Users.Count == 0.
1252 (SerializeElement): write out the element here. don't chain up to
1253 the base class since that has differing behavior than what we
1256 2005-11-30 Chris Toshok <toshok@ximian.com>
1258 * CompilerCollection.cs: ugly hack to fix the
1259 2.0-without-config-2.0 case. wrap this file in #if
1260 CONFIGURATION_2_0 as well as #if NET_2_0.
1262 * Compiler.cs: same.
1264 2005-11-28 Chris Toshok <toshok@ximian.com>
1266 * SessionStateSection.cs (CookieLess): correct the compat function
1269 2005-11-28 Chris Toshok <toshok@ximian.com>
1271 * GlobalizationSection.cs (GetEncoding): if the encoding name is
1272 null, default to utf-8 before we hit the try block, so we don't
1273 throw and generate a spurious warning.
1275 * SessionStateSection.cs: The Cookieless handling needs a custom
1276 parser, it appears, as the converter is a StringConverter, not a
1277 GenericEnumConverter.
1278 (ParseCookieMode): the parser.
1280 2005-11-28 Chris Toshok <toshok@ximian.com>
1282 * PagesSection.cs (GetInstance): nuke.
1284 * CompilationSection.cs (GetInstance): nuke.
1286 2005-11-28 Chris Toshok <toshok@ximian.com>
1288 * HttpHandlerAction.cs: add some c&p code from the 1.1 config
1289 stuff to look for matching handlers.
1290 (..ctor): add parameterless ctor.
1292 * HttpHandlerActionCollection.cs: clean up formatting.
1293 (CreateNewElement): call the parameter-less ctor for
1296 * HttpHandlersSection.cs (..ctor): add a ConfigurationProperty for
1297 the default collection.
1298 (get_Handlers): implement.
1299 (LocateHandler): copy over (and massage) some 1.1 config code.
1301 * MachineKeySection.cs: move some code over from the 1.1 config
1302 code to deal with autogeneration of keys, as well as converting
1303 from the string rep to the byte[] rep.
1305 2005-11-28 Chris Toshok <toshok@ximian.com>
1307 * HttpModuleActionCollection.cs (CreateNewElement): use the new
1308 HttpModuleAction ctor.
1310 * HttpModuleAction.cs: add internal ctor with no parameters, for
1311 use in HttpModuleActionCollection.
1313 2005-11-28 Chris Toshok <toshok@ximian.com>
1315 * GlobalizationSection.cs (..cctor): the encoding
1316 ConfigurationProperties are of type "string", even though the
1317 properties themselves are of type Encoding. we do conversions
1318 manually in the setter/getters. gross. Add code (mostly c&p +
1319 massaged from GlobalizationConfigurationHandler) for this and also
1320 to handle the culture gettes.
1322 2005-11-26 Chris Toshok <toshok@ximian.com>
1324 * AuthorizationRuleCollection.cs (GetElementKey): implement this.
1326 * ProfilePropertyNameValidator.cs: make this internal, and add a
1327 blurb about how MS doesn't do the testing you'd expect them to.
1329 2005-11-25 Chris Toshok <toshok@ximian.com>
1331 * AuthorizationRuleCollection.cs (CreateNewElement): remove
1334 * CompilationSection.cs (GetRuntimeObject): add comment to TODO.
1336 * ProfileGroupSettings.cs: reformat some things.
1338 * FormsAuthenticationUser.cs (Name): remove MonoTODO.
1340 * WebPartsSection.cs (GetRuntimeObject): change TODO comment.
1342 * ProfilePropertySettings.cs: add internal argument-less ctor.
1344 * IdentitySection.cs (GetRuntimeObject): return this.
1346 * ProfilePropertySettingsCollection.cs: implement much of the
1349 * WebControlsSection.cs (GetRuntimeObject): implement.
1351 * SqlCacheDependencyDatabaseCollection.cs (GetElementKey):
1353 (GetKey): implement.
1355 2005-11-24 Chris Toshok <toshok@ximian.com>
1357 * AssemblyInfo.cs: move this here from System.Web.Configuration,
1358 and fix up the properties.
1360 * SystemWebSectionGroup.cs: enable most of the sections (2
1361 remaining to be enabled.)
1363 2005-11-24 Chris Toshok <toshok@ximian.com>
1365 * ProcessModelSection.cs, SqlCacheDependencySection.cs,
1366 SessionStateSection.cs, PassportAuthentication.cs,
1367 FormsAuthenticationConfiguration.cs,
1368 SqlCacheDependencyDatabase.cs, HttpModuleAction.cs,
1369 BufferModeSettings.cs, TagPrefixInfo.cs (..cctor): init
1371 (ValidateElement): new static validator callback.
1372 (ElementProperty): enable this, return elementProperty.
1374 2005-11-23 Chris Toshok <toshok@ximian.com>
1376 * ProfilePropertyNameValidator.cs: new implementation.
1378 * ProfilePropertySettings.cs, ProfileGroupSettings.cs,
1379 ClientTargetSection.cs, ClientTargetSection.cs,
1380 BufferModeSettings.cs, HttpModulesSection.cs,
1381 WebPartsPersonalization.cs, TransformerInfo.cs, TrustLevel.cs,
1382 NamespaceInfo.cs, SqlCacheDependencyDatabase.cs,
1383 AuthenticationSection.cs, RuleSettings.cs,
1384 FormsAuthenticationUser.cs, WebPartsSection.cs, BuildProvider.cs,
1385 WebPartsPersonalizationAuthorization.cs, Compiler.cs,
1386 ExpressionBuilder.cs, OutputCacheProfile.cs,
1387 FormsAuthenticationCredentials.cs, XhtmlConformanceSection.cs,
1388 OutputCacheSettingsSection.cs, CustomError.cs, TraceSection.cs,
1389 ExpressionBuilderCollection.cs, ProfileSettings.cs,
1390 SessionStateSection.cs, HealthMonitoringSection.cs,
1391 FormsAuthenticationConfiguration.cs, HttpRuntimeSection.cs,
1392 SessionPageStateSection.cs, TrustSection.cs,
1393 AnonymousIdentificationSection.cs, WebControlsSection.cs,
1394 ClientTarget.cs, TagMapInfo.cs, AuthorizationSection.cs,
1395 ProcessModelSection.cs, RoleManagerSection.cs,
1396 MembershipSection.cs, CustomErrorsSection.cs (..cctor): fix
1397 validator/converters.
1399 * MachineKeySection.cs (..cctor): fix validators/converters.
1400 (Validation): enable the Converter.
1402 * CodeSubDirectory.cs (..cctor): fix validator/converters.
1403 (DirectoryName): add note about missing validator decoration.
1405 * HttpModuleAction.cs (..cctor): init properties.
1406 (Properties): return properties.
1408 * CompilationSection.cs (..cctor): fix validator/converters.
1409 (GetInstance): add in this pre-2.0 interface for the time being,
1410 hopefully it'll make it easier to migrate later on.
1412 * HttpHandlerActionCollection.cs (..cctor): init properties.
1413 (Properties): return properties.
1415 * PagesSection.cs (..cctor): fix validator/converters.
1416 (GetInstance): add in this pre-2.0 interface for the time being,
1417 hopefully it'll make it easier to migrate later on.
1419 * HttpHandlersSection.cs (..cctor): init properties.
1420 (Properties): return properties.
1422 * EventMappingSettings.cs (..cctor): fix validator/converters.
1423 (Name): add note about missing validator decoration.
1425 * HttpHandlerAction.cs (..cctor): fix validator/converters.
1426 (PAth, Type, Verb): add note about missing validator decoration.
1428 * NamespaceCollection.cs (..cctor): fix properties.
1430 * ProfilePropertySettingsCollection.cs (..cctor): init properties.
1431 (..ctor): don't throw NIE.
1432 (Properties): return properties.
1434 * HttpModuleActionCollection.cs (..cctor): init properties.
1435 (Properties): return properties.
1437 * CacheSection.cs (..cctor): fix validators/converters.
1438 (PrivateBytesPollTime): add note about missing validator
1441 * AuthorizationRule.cs (..cctor): fix validators/converters.
1442 (Roles, Users, Verbs): enable the TypeConverter decorations.
1444 * UrlMapping.cs (ValidateUrl): static method for use as a
1445 validation callback. unimplemented as yet.
1446 (..cctor): fix validators/converters.
1447 (MappedUrl): add note about missing validator decoration.
1449 * PropertyHelper.cs: static utility class which contains
1450 references to validators and converters for use in static
1451 constructors (building the Properties arrays).
1453 2005-11-23 Chris Toshok <toshok@ximian.com>
1455 * MachineKeyValidationConverter.cs: new converter (and a pretty
1456 silly one, considering all it seems to do is convert "TripleDES"
1459 * HostingEnvironmentSection.cs (.cctor): use
1460 PositiveTimeSpanValidator like MS does.
1462 2005-11-18 Chris Toshok <toshok@ximian.com>
1464 * HostingEnvironmentSection.cs (.cctor): add validators.
1466 * CompilationSection.cs (.cctor): fix defaultvalue of
1469 2005-11-18 Chris Toshok <toshok@ximian.com>
1471 * SystemWebSectionGroup.cs: enable a whole slew of properties.
1473 * RegexWorker.cs: stub this out.
1475 * HttpCapabilitiesBase.cs: remove GetClrVersions since it's in one
1476 of the other partial files.
1478 * CompilationSection.cs: fix this up.
1480 * PagesSection.cs: fix some types and add a comment to
1483 * CompilerCollection.cs (Add): new internal method.
1485 * ProvidersHelper.cs: put the using System.Configuration.Provider
1486 inside the NET_2_0 block.
1488 * CacheSection.cs: add validators.
1490 2005-11-14 Chris Toshok <toshok@ximian.com>
1492 * BufferModeSettings.cs: add validators/converters to the
1493 programmatic property list.
1495 * BuildProvider.cs: add validators/converters to the programmatic
1496 property list, and add an internal ctor with no args.
1498 * Compiler.cs: wrap the code i hacked from the 1.1 stuff with a
1501 * BuildProviderCollection.cs (CreateNewElement): use the internal
1502 BuildProvider ctor to get around validation.
1504 * AssemblyCollection.cs: same.
1506 2005-11-14 Chris Toshok <toshok@ximian.com>
1508 * TagPrefixCollection.cs (Remove): pass the key to BaseRemove.
1509 (set_Item (int index)): implement.
1511 * TagPrefixInfo.cs (Equals): implement.
1512 (GetHashCode): implement.
1514 * AuthorizationRuleCollection.cs (CreateNewElement(string)):
1515 implement propertly.
1516 (IndexOf): implement.
1517 (IsElementName): implement.
1518 (ElementName): implement.
1519 (Item (int index)): implement.
1521 * FormsAuthenticationUserCollection.cs (set_Item (int index)): implement.
1523 * UrlMappingCollection.cs (set_Item (int index)): implement.
1525 * OutputCacheProfileCollection.cs (set_Item (int index)): implement.
1527 * TransformerInfo.cs (Equals): implement.
1528 (GetHashCode): implement.
1530 * NamespaceInfo.cs (Equals): implement.
1531 (GetHashCode): implement.
1533 * ProfileSettingsCollection.cs (set_Item (int index)): implement.
1535 * TransformerInfoCollection.cs (set_Item (int index)): implement.
1537 * HttpHandlerActionCollection.cs (set_Item (int index)): implement.
1539 * BufferModesCollection.cs (set_Item (int index)): implement.
1541 * BuildProvider.cs: use the base[fooProp] pattern instead of
1544 * ProfileGroupSettingsCollection.cs: implement most of this class.
1546 * RuleSettingsCollection.cs (set_Item (int index)): implement.
1548 * ClientTargetCollection.cs (set_Item (int index)): implement.
1550 * AssemblyCollection.cs (set_Item (int index)): implement.
1552 * BuildProviderCollection.cs (set_Item (int index)): reformat.
1554 * CustomError.cs (Equals): implement.
1555 (GetHashCode): implement.
1557 * ExpressionBuilderCollection.cs (set_Item (int index)): reformat.
1559 * PassportAuthentication.cs (RedirectUrl): express consternation
1562 * NamespaceCollection.cs (set_Item (int index)): implement.
1564 * RootProfilePropertySettingsCollection.cs (SerializeElement): add
1567 * ProfilePropertySettingsCollection.cs (set_Item (int index)):
1570 * CustomErrorCollection.cs (set_Item (int index)): implement.
1572 * HttpModuleActionCollection.cs (set_Item (int index)): implement.
1574 * CodeSubDirectoriesCollection.cs (set_Item (int index)):
1577 * CustomErrorsSection.cs (DeserializeSection): include call to
1578 base.DeserializeSection, and add MonoTODO.
1580 * EventMappingSettingsCollection.cs (set_Item (int index)):
1583 * AuthorizationRule.cs (Equals): implement.
1584 (GetHashCode): implement.
1585 (SerializeElement): add comment.
1587 * TagMapCollection.cs (Remove): pass the key to BaseRemove.
1588 (set_Item (int index)): implement.
1590 * TagMapInfo.cs (Equals): implement.
1591 (GetHashCode): implement.
1592 (SerializeElement): add call to base.SerializeElement.
1594 * TrustLevelCollection.cs (Remove): pass the key to BaseRemove.
1595 (GetElementKey): implement.
1597 * SqlCacheDependencyDatabase.cs (set_Item (int index)): implement.
1599 * WebContext.cs: new implementation.
1601 2005-11-13 Chris Toshok <toshok@ximian.com>
1603 * AnonymousIdentificationSection.cs: rework this class a bit to
1604 fit in with the rest of S.W.C. Add validators to the
1605 ConfigurationProperty ctor calls, a pattern which will need to be
1606 replicated across the entire assembly, it appears (uggggh).
1608 2005-11-13 Chris Toshok <toshok@ximian.com>
1610 * AuthorizationRuleCollection.cs: fix ConfigurationCollection
1613 * TransformerInfo.cs: fix corcompare.
1615 * SqlCacheDependencyDatabase.cs: mark ctor internal to fix
1618 * AuthenticationSection.cs: add missing Reset stub.
1620 * ProfileSettingsCollection.cs: use the more succint ctor.
1622 * FormsAuthenticationUser.cs: enable the TypeConverter on "name".
1624 * GlobalizationSection.cs: fix up corcompare.
1626 * WebPartsSection.cs: fix up corcompare.
1628 * ProfileGroupSettingsCollection.cs: add missing
1629 ConfigurationCollection attribute.
1631 * ExpressionBuilder.cs: implement.
1633 * FormsAuthenticationCredentials.cs: fix up corcompare.
1635 * AssemblyCollection.cs: implement Properties.
1637 * SiteMapSection.cs: implement Properties.
1639 * ExpressionBuilderCollection.cs: fix up corcompare.
1641 * ProfileSettings.cs: add missing ctor.
1643 * PassportAuthentication.cs: new implementation.
1645 * SqlCacheDependencySection.cs: fix up corcompare.
1647 * ProfilePropertySettingsCollection.cs: fix up corcompare.
1649 * HttpModuleActionCollection.cs: fix up corcompare.
1651 * EventMappingSettingsCollection.cs: fix up corcompare.
1653 * AuthorizationRule.cs: fix up corcompare.
1655 * WebControlsSection.cs: fix up corcompare.
1657 * AuthorizationSection.cs: fix up corcompare.
1659 * MembershipSection.cs: clean this up, implement Properties, fix
1662 2005-11-13 Chris Toshok <toshok@ximian.com>
1664 * UrlMapping.cs, CustomErrorCollection.cs, CustomError.cs,
1665 HostingEnvironmentSection.cs, TrustLevel.cs,
1666 HttpCookiesSection.cs, UrlMappingsSection.cs,
1667 UrlMappingCollection.cs, LowerCaseStringConverter.cs,
1668 RoleManagerSection.cs, ProcessModelSection.cs,
1669 TrustLevelCollection.cs, ClientTarget.cs, CustomErrorsSection.cs,
1670 MachineKeySection.cs, SessionPageStateSection.cs,
1671 SessionStateSection.cs, ProvidersHelper.cs,
1672 ClientTargetCollection.cs, SecurityPolicySection.cs,
1673 HttpCapabilitiesBase.cs, ClientTargetSection.cs: Another large
1677 2005-11-12 Chris Toshok <toshok@ximian.com>
1679 * AuthorizationRuleCollection.cs, AuthorizationRule.cs,
1680 AuthorizationSection.cs, BufferModesCollection.cs,
1681 BufferModeSettings.cs, CacheSection.cs, CompilerCollection.cs,
1682 Compiler.cs, DeploymentSection.cs,
1683 EventMappingSettingsCollection.cs, EventMappingSettings.cs,
1684 GlobalizationSection.cs, HealthMonitoringSection.cs,
1685 IdentitySection.cs, OutputCacheProfileCollection.cs,
1686 OutputCacheProfile.cs, OutputCacheSection.cs,
1687 OutputCacheSettingsSection.cs, ProfileSettingsCollection.cs,
1688 ProfileSettings.cs, RuleSettingsCollection.cs, RuleSettings.cs,
1689 SqlCacheDependencyDatabaseCollection.cs,
1690 SqlCacheDependencyDatabase.cs, SqlCacheDependencySection.cs,
1691 SystemWebCachingSectionGroup.cs, TraceSection.cs,
1692 TransformerInfoCollection.cs, TransformerInfo.cs, TrustSection.cs,
1693 WebControlsSection.cs, WebPartsPersonalizationAuthorization.cs,
1694 WebPartsPersonalization.cs, WebPartsSection.cs,
1695 XhtmlConformanceSection.cs: a whole slew of new classes. the
1696 fruits of tons of c&p and ibuprofen.
1699 2005-11-09 Chris Toshok <toshok@ximian.com>
1701 * PagesSection.cs, AuthenticationSection.cs, BuildProvider.cs,
1702 BuildProviderCollection.cs, HttpHandlerActionCollection.cs,
1703 HttpModulesSection.cs, HttpModuleAction.cs,
1704 HttpModuleActionCollection.cs, AnonymousIdentificationSection.cs,
1705 CodeSubDirectory.cs, CodeSubDirectoriesCollection.cs,
1706 SystemWebSectionGroup.cs, SiteMapSection.cs,
1707 WebConfigurationManager.cs: flesh out the implementation.
1709 * TagMap*.cs, TagPrefix*.cs: new implementation.
1711 * FormsAuthentication*.cs: new implementation.
1713 * Profile*.cs: new implementation.
1715 * Namespace*.cs: new implementation.
1717 * HttpRuntimeSection.cs: new implementation.