* Resources/overview.xsl, Resources/stylesheet.xsl: Remove the 'ext'
[mono.git] / mcs / tools / mdoc / ChangeLog
1 2009-11-23  Jonathan Pryor <jpryor@novell.com>
2
3         * Resources/overview.xsl, Resources/stylesheet.xsl: Remove the 'ext'
4           and 'language' global <xsl:param>'s, as they cause "variable 'foo' 
5           was duplicated within the same scope" errors under .NET.
6
7 2009-11-23  Jonathan Pryor <jpryor@novell.com>
8
9         * Mono.Documentation/monodocer.cs: ".NET support": ensure that we
10           always get Unix line endings so that we can update documentation
11           under both Mono & .NET w/o continually changing the file due to
12           line-ending differences.
13
14 2009-11-06  Jonathan Pryor <jpryor@novell.com>
15
16         * Mono.Documentation/monodocer.cs: When deleting the ExtensionMethods
17           element, remove it from the correct parent XML node.  Fixes #553144.
18
19 2009-09-19  Jonathan Pryor <jpryor@novell.com>
20
21         * Mono.Documentation/monodocs2html.cs: Add --with-profile=PROFILE
22           option, which just provides a simple mapping between profile names
23           like net_3_5 to the versions used in that profile.
24
25 2009-09-19  Jonathan Pryor <jpryor@novell.com>
26
27         * Mono.Documentation/monodocs2html.cs: By request of Edd Dumbill, add
28           --with-version=VERSION option.  This will generate HTML
29           documentation for ONLY those types/members which exist within
30           VERSION.  This makes it easy to generate HTML that will show e.g.
31           only MonoTouch docs (and not the full class library docs).
32         * Makefile: Add test for 'mdoc export-html --with-version=VERSION'.
33           Somewhat brain-dead, as it only checks for added types (and not
34           added members), but better than nothing...
35
36 2009-09-09  Jonathan Pryor <jpryor@novell.com>
37
38         * Mono.Documentation/monodocs2html.cs: Fix behavior when multiple
39           source directories are provided, e.g. 'mdoc export-html -o o a b c'
40           with docs located in directories a, b, and c.  Previously this would
41           be equivalent to running aginst a, b, and c separately, resulting in
42           o/index.html being continually overwritten (and thus not showing ALL
43           available types).
44         * Resources/stylesheet.xsl: Make $Index a parameter (as monodocs2html
45           will create an in-memory index containing all types from all
46           specified directories), and various changes to cope with $Index no
47           longer being a file.  Better support files in the global namespace.
48         * Test/html.expected/NoNamespace.html: Fix assembly link.
49
50 2009-08-12  Jonathan Pryor <jpryor@novell.com>
51
52         * Test/DocTest-v1.cs: Add a comment which uses <format/>, to test html
53           escaping behavior.
54         * Resources/monodoc-ecma.xsd: Permit <format/> in various elements.
55         * Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
56           Test/html.expected/Mono.DocTest/DocAttribute.html,
57           Test/msxdoc-expected.importslashdoc.xml: Flush.
58
59 2009-08-12  Jonathan Pryor <jpryor@novell.com>
60
61         * Makefile: Add ../monodoc/Resources/mdoc-html-format.xsl as a resource.
62
63 2009-08-06  Jonathan Pryor <jpryor@novell.com>
64
65         * mdoc.exe.sources: Add ../../build/common/Consts.cs to the build.
66         * Mono.Documentation/mdoc.cs: mdoc version is Consts.MonoVersion, not
67           some hard-coded, perpetually out-of-date version.
68
69 2009-08-02  Jonathan Pryor <jpryor@novell.com>
70
71         * Mono.Documentation/monodocer.cs: Sometimes <AssemblyVersion/> is
72           found twice when it's actually present only once (!).  Attempt to
73           work around this by usinq LINQ instead of a foreach (which oddly
74           works...).
75
76 2009-07-31  Jonathan Pryor <jpryor@novell.com>
77
78         * Mono.Documentation/monodocer.cs: Record attributes that are placed
79           on property get/set and event add/remove accessors.
80         * Test/DocTest-v1.cs: Add attributes to some accessors.
81         * Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
82           Test/en.expected.since/Mono.DocTest/Widget.xml,
83           Test/en.expected/Mono.DocTest/Widget.xml,
84           Test/html.expected/Mono.DocTest/Widget.html,
85           Test/msxdoc-expected.importslashdoc.xml: Flush.
86
87 2009-06-23  Jonathan Pryor <jpryor@novell.com>
88
89         * Mono.Documentation/monodocer.cs: Don't generate an exception when an
90           enumeration contains multiple names with the same value.
91           Fixes #515030.
92         * Test/DocTest-v1.cs: Add test for #515030.
93         * Test/en.expected/Mono.DocTest/Color.xml,
94           Test/en.expected.since/Mono.DocTest/Color.xml,
95           Test/html.expected/Mono.DocTest/Color.html,
96           Test/msxdoc-expected.importslashdoc.xml,
97           Test/en.expected.importslashdoc/Mono.DocTest/Color.xml: Flush.
98
99 2009-04-18  Jonathan Pryor <jpryor@novell.com>
100
101         * Mono.Documentation/webdoc.cs: Change -o semantics to be a directory
102           prefix, e.g. `mdoc export-html-webdoc -o cache.new foo.tree` will
103           output files into `cache.new/foo` instead of directly into
104           `cache.new`.  This makes it easier to specify more than one
105           .tree/.zip file on the command line.
106
107 2009-04-16  Jonathan Pryor <jpryor@novell.com>
108
109         * Mono.Documentation/monodocs2slashdoc.cs: Code refactor; use
110           EcmaDoc.GetCref() to generate //member/@name values.
111         * Mono.Documentation/dump.cs: Add -f=FORMAT support, so that we can
112           load an appropriate HelpSource (if supplied) so that an appropriate
113           Node.PublicUrl can be displayed in the output.
114
115 2009-04-15  Jonathan Pryor <jpryor@novell.com>
116
117         * Mono.Documentation/webdoc.cs: Remove console debug spew.  If you run
118           with `mdoc -v`, each URL will be printed as it's processed.
119
120 2009-04-15  Jonathan Pryor <jpryor@novell.com>
121
122         * Mono.Documentation/webdoc.cs: When extracting files from the .zip
123           file, ensure that the output file is closed.  Properly pre-render
124           ecma namespace documentation.
125
126 2009-04-15  Jonathan Pryor <jpryor@novell.com>
127
128         * Makefile: Add reference to ICSharpCode.SharpZipLib.dll.
129         * mdoc.exe.sources: Add Mono.Rocks/ObjectRocks.cs,
130           Mono.Rocks/StreamRocks.cs.
131         * Mono.Documentation/webdoc.cs: Refactor into smaller methods.  Extract 
132           ZIP file contents in addition to generating HTML output.  Use
133           monodoc helper methods to determine cache directory.
134         * Mono.Documentation/ObjectRocks.cs: Rename to
135           Mono.Rocks/ObjectRocks.cs.
136         * Mono.Rocks/ObjectRocks.cs: Add Check.Destination().
137         * Mono.Rocks/StreamRocks.cs: Added; extension methods for Streams.
138
139 2009-04-15  Jonathan Pryor <jpryor@novell.com>
140
141         * Mono.Documentation/webdoc.cs: The timestamp logic was wrong it the
142           output directory didn't exist.  Fix.
143
144 2009-04-15  Jonathan Pryor <jpryor@novell.com>
145
146         * Mono.Documentation/webdoc.cs: Do as make(1) does: if the
147           target directory already exists and is newer than the source files, 
148           don't regenerate output.  (Greatly speeds things up if nothing has
149           changed.)  Add a --force-update option to disable this behavior.
150
151 2009-04-15  Jonathan Pryor <jpryor@novell.com>
152
153         * Mono.Documentation/webdoc.cs: Change the default -o value to
154           include a "cache" intermediate directory.  This makes it easier to
155           kill the entire cache at once.
156
157 2009-04-15  Jonathan Pryor <jpryor@novell.com>
158
159         * Mono.Documentation/webdoc.cs: Provide nice default -o value.
160
161 2009-04-15  Jonathan Pryor <jpryor@novell.com>
162
163         * Mono.Documentation/webdoc.cs: Load documentation through a
164           HelpSource, not through the RootTree, as URLs of the form
165           "ecma:0#AvoidExtensionMethodOnSystemObjectRule/" use the number (0
166           in this case) as a HelpSource-relative identifier.  Result: you get
167           the wrong documentation if you go through RootTree.
168
169 2009-04-15  Jonathan Pryor <jpryor@novell.com>
170
171         * Makefile: Add reference to System.Web.dll, for HttpUtility.
172         * mdoc.exe.sources: Add ObjectRocks.cs, webdoc.cs to the build.
173         * Mono.Documentation/mdoc.cs: Add export-html-webdoc command, which
174           "pre-renders" HTML for use by the webdoc ASP.NET renderer.
175         * Mono.Documentation/webdoc.cs: Added; MDocExportWebdocHtml
176           implementation; attempts to pre-render HTML based on .tree/.zip
177           file contents.
178         * Mono.Documentation/ObjectRocks.cs: Added; extension methods for tree
179           traversal (from Mono.Rocks).  For use in webdoc.cs.
180
181 2009-04-09  Jonathan Pryor <jpryor@novell.com>
182
183         * Mono.Documentation/monodocer.cs: Using a single IAssemblyResolver is
184           an improvement, but doesn't fix all problems.  In particular, some
185           assemblies will depend upon other assemblies to load (e.g. 3rd party
186           assemblies) but these dependent assemblies shouldn't be documented.
187           Add support for -r:ASSEMBLY and -L:DIRECTORY arguments to allow the
188           user to manually add to the assembly search path so that assemblies
189           can be found.  Assemblies added via -r will NOT be documented.
190
191 2009-04-08  Jonathan Pryor <jpryor@novell.com>
192
193         * Mono.Documentation/monodocer.cs: Use a single IAssemblyResolver
194           shared amongst all AssemblyDefinitions to resolve assembly/type
195           references with Cecil.  Otherwise, if we have deeply nested
196           directories with cross-directory assembly dependencies, then Cecil
197           won't find the necessary assemblies (e.g. b/bin/Debug/b.dll has a
198           type which inherits from a/bin/Debug/a.dll -- here, we'll have two
199           separate AssemblyDefinitions, and when b.dll's AssemblyDefinition
200           tries to resolve types from a.dll, it fails).
201           See: http://lists.ximian.com/pipermail/mono-devel-list/2009-April/031646.html
202
203 2009-03-29  Jonathan Pryor <jpryor@novell.com>
204
205         * Mono.Documentation/exceptions.cs: Add
206           ExceptionLocations.AddedMember, used for --exceptions=added support.
207         * Mono.Documentation/monodocer.cs: Add --exceptions=added, which will 
208           only add <exception/> elements for newly added elements.  This is
209           useful for updating documentation for established projects which
210           already have <exception/> corrections (e.g. *removal* of
211           <exception/> elements because the exceptions weren't actually
212           possible), so only new members should have <exception/> created.
213
214 2009-03-20  Jonathan Pryor <jpryor@novell.com>
215
216         * Mono.Documentation/monodocs2html.cs: Perform the timestamp check for
217           the top-level and namespace-level index files.
218
219 2009-03-21  Jonathan Pryor <jpryor@novell.com>
220
221         * Mono.Documentation/monodocer.cs: Be nice to make,
222           mdoc-export-html, and other apps that use file timetamps: if the 
223           file contents haven't changed after the update, don't replace the
224           "original" file.  This preserves file timestamps, thus allowing
225           other apps to behave nicely (e.g. mdoc-export-html won't update all
226           documentation after running mdoc-update, as the files won't change
227           unless something has *actually* changed).
228
229 2009-03-20  Jonathan Pryor <jpryor@novell.com>
230
231         * Mono.Documentation/monodocs2html.cs: Do as make(1) does: if the
232           target file already exists and is newer than the source file, don't
233           regenerate it.  (Greatly speeds things up if only a few .xml files
234           changed.)  Add a --force-update option to disable this behavior.
235
236 2009-02-26  Jonathan Pryor <jpryor@novell.com>
237
238         * Mono.Documentation/assembler.cs: When processing an empty directory,
239           it's possible for HelpSource.Tree to be null; avoid an NRE.
240
241 2009-02-17  Jonathan Pryor <jpryor@novell.com>
242
243         * Test/DocTest-v1.cs: Add test for #475814.
244         * Mono.Documentation/exceptions.cs, Mono.Documentation/monodocer.cs:
245           Use the new Mono.Cecil .Resolve() methods instead of (erroneously)
246           duplicating their functionality with the .GetDefinition() methods.
247           ExceptionLookup.this[IMemberReference] checks for multi-dimensional
248           arrays, as MD arrays are "special" (Cecil can't resolve them, as
249           they're internal to the runtime with no specific associated IL).
250           Fixes #475814.
251
252 2009-02-17  Jonathan Pryor <jpryor@novell.com>
253
254         * Mono.Documentation/monodocer.cs: Check that the cref attribute is
255           non-null before trying to use it when importing slashdoc sources.
256           Fixes #475852.
257         * Test/DocTest-v1.cs: Add an <exception/> doc comment with an invalid
258           attribute value for testing.
259
260 2009-02-17  Jonathan Pryor <jpryor@novell.com>
261
262         * Mono.Documentation/mdoc.cs: Set Environment.ExitCode=1 if an
263           exception occurs, so that calling code can determine that an error
264           occurred w/o resorting to parsing stderr.  Fixes #475746.
265
266 2009-02-16  Jonathan Pryor <jpryor@novell.com>
267
268         * Mono.Documentation/monodocer.cs: Support C#4 variant generics, e.g.
269           `delegate TRet Func<in TArg, out TRet>(TArg a)'.  Alas, this
270           required making MemberFormatter explicitly stateful, so any thoughts
271           of using instances w/o locking are now out the window...  (Not that
272           threads are currently used, but they're planned to be used...)
273           TODO: Add a test to Test/DocTest-v1.cs.  This wasn't done as the
274           current gmcs support doesn't like intermixing variance with generic
275           parameter attributes, and I don't want to introduce a new delegate
276           type (and the ~6 new files that would imply) just for this feature.
277
278 2009-02-10  Jonathan Pryor <jpryor@novell.com>
279
280         * Mono.Documentation/monodocer.cs: Cleanup: turn static data into
281           instance data (for future Threading changes, as only static data
282           will be tracked for thread-safety); use MDocCommand.Message() and
283           MDocCommand.Error() for message reporting; remove warnings.
284
285 2009-01-05  Jonathan Pryor <jpryor@novell.com>
286
287         * Makefile: Fix $(PROGRAM) dependencies so that mdoc.exe is rebuilt
288           when one of the dependent ../monodoc/Resources/* files is changed.
289
290 2009-01-05  Jonathan Pryor <jpryor@novell.com>
291
292         * Mono.Documentation/mdoc.cs: `mdoc' (no arguments) shouldn't print an
293           index out of range error.  Fix.
294         * Mono.Documentation/monodocer.cs: Rename -fno-member-assembly-info to
295           -fno-assembly-versions, which prevents generation of //AssemblyVersion
296           elements.  This suffers the same warning as -fno-member-assembly-info,
297           so don't use unless you can guarantee that no members will 
298           ever be removed from your public API. :-)
299           Clean up -f handling so that -f:no-assembly-versions will work as
300           expected.
301
302 2009-01-05  Jonathan Pryor <jpryor@novell.com>
303
304         * Mono.Documentation/monodocer.cs: Add -fno-member-assembly-info,
305           which remove /Type/Members/Member/AssemblyInfo elements.
306           Requested by Mike Kestner.
307           Warning: this option will break automatic version tracking, so if a
308           member is present in e.g. v1.0 and is removed in e.g. v2.0, 
309           the //Member element will be removed entirely when updating the
310           documentation against the 2.0 assembly.  Use with care.
311
312 2008-12-06  Jonathan Pryor <jpryor@novell.com>
313
314         * Mono.Documentation/monodocer.cs: Remove "exception" from DocsNodeOrder
315           so that <exception/> elements aren't grouped together.  This causes
316           `make doc-update` to result in ~0 changes in ../../class/corlib.
317           Change the sorting of --exceptions-generated <exception/> nodes so
318           that namespaces are taken into consideration, thus "properly"
319           grouping types by namespaces, as I'd usually expect...
320
321 2008-12-05  Jonathan Pryor <jpryor@novell.com>
322
323         * Mono.Documentation/monodocer.cs, Mono.Documentation/monodocs2html.cs: 
324           Reorder parameters to be in sorted order, so `mdoc help COMMAND` 
325           parameters are sorted.
326         * Mono.Documentation/monodocer.cs: Remove try/catch in
327           MDocUpdater.Run(MDocUpdaterOptions), so that any generated exceptions
328           will be handled within mdoc itself (thus allowing the normal 
329           "See `mdoc help' for more information." message).  Improve some
330           error messages so they're more useful.
331
332 2008-12-04  Jonathan Pryor <jpryor@novell.com>
333
334         * Makefile: Specify --exceptions=all in mdoc-update invocations.
335         * exceptions.cs: Add support for documenting a *subset* of all
336           possible exceptions.  Subsets include: the member itself, the member
337           and methods it calls that are in the same assembly, and all possible
338           methods across all assemblies.
339         * monodocer.cs: Allow --exceptions to take a SOURCES argument, to
340           control which location sources will be searched for exceptions.
341
342 2008-12-02  Jonathan Pryor <jpryor@novell.com>
343
344         * Makefile: Add --exceptions to `mdoc update` invocations to test
345           <exception/> generation.
346         * mdoc.exe.sources: Add Mono.Documentation/exceptions.cs to the build.
347         * Mono.Documentation/exceptions.cs: Added; searches through the
348           callgraph of an IMemberReference, recording which exception types
349           are created (and where they're created from).
350         * Mono.Documentation/monodocer.cs: Generate <exception/> elements.
351         * Test/DocTest-v1.cs: Modify some methods so that exceptions are
352           emitted (thus testing <exception/> generation).
353         * Test/DocTest-v2.patch: Update (so patch(1) doesn't complain).
354         * Test/en.expected.importecmadoc/System/Array.xml,
355           Test/en.expected.importecmadoc/System/Environment.xml,
356           Test/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
357           Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
358           Test/en.expected.importslashdoc/Mono.DocTest/DocValueType.xml,
359           Test/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
360           Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
361           Test/en.expected.importslashdoc/System/Array.xml,
362           Test/en.expected.importslashdoc/System/Environment.xml,
363           Test/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
364           Test/en.expected.since/Mono.DocTest/DocAttribute.xml,
365           Test/en.expected.since/Mono.DocTest/DocValueType.xml,
366           Test/en.expected.since/Mono.DocTest/UseLists.xml,
367           Test/en.expected.since/Mono.DocTest/Widget.xml,
368           Test/en.expected.since/System/Array.xml,
369           Test/en.expected.since/System/Environment.xml,
370           Test/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
371           Test/en.expected/Mono.DocTest/DocAttribute.xml,
372           Test/en.expected/Mono.DocTest/DocValueType.xml,
373           Test/en.expected/Mono.DocTest/UseLists.xml,
374           Test/en.expected/Mono.DocTest/Widget.xml,
375           Test/en.expected/System/Array.xml,
376           Test/en.expected/System/Environment.xml,
377           Test/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
378           Test/html.expected/Mono.DocTest/DocAttribute.html,
379           Test/html.expected/Mono.DocTest/DocValueType.html,
380           Test/html.expected/Mono.DocTest/UseLists.html,
381           Test/html.expected/Mono.DocTest/Widget.html,
382           Test/html.expected/System/Array.html,
383           Test/html.expected/System/Environment.html,
384           Test/msxdoc-expected.importslashdoc.xml: Flush; adds <exception/>
385           elements (and/or HTML-rendered output of <exception/> elements).
386
387 2008-11-19  Jonathan Pryor <jpryor@novell.com>
388
389         * Mono.Documentation/monodocer.cs: Add the assembly's directory to
390           Cecil's BaseAssemblyResolver search list so that assemblies in the
391           same directory as the assembly we're processing can be found.
392           Allows mono-tools/gendarme to be built with a Cecil-using mdoc.
393
394 2008-11-15  Jonathan Pryor <jpryor@novell.com>
395
396         * Mono.Documentation/monodocer.cs: Properties on interfaces shouldn't
397           have `abstract' on them.
398         * Test/DocTest-v1.cs: Add a property to an interface to check above.
399         * Test/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml,
400           Test/en.expected.since/Mono.DocTest/Widget+IMenuItem.xml,
401           Test/en.expected/Mono.DocTest/Widget+IMenuItem.xml,
402           Test/html.expected/Mono.DocTest/Widget+IMenuItem.html,
403           Test/msxdoc-expected.importslashdoc.xml: Flush.
404
405 2008-11-15  Jonathan Pryor <jpryor@novell.com>
406
407         * Mono.Documentation/monodocer.cs: Fix regressions found from 
408           `make doc-update` in corlib:
409           - Ensure that custom attributes are sorted (they weren't before,
410             resulting in spurious differences between Reflection & Cecil
411             output).
412           - CecilExtensions.GetMethod() should return null if the method can't
413             be found.
414           - DocUtils.IsDelegate() should ensure that the delegate type isn't
415             abstract (otherwise it dies on System.MulticastDelegate, which is
416             an abstract type lacking an "Invoke" method).
417           - Properly count generic argument counts for nested types (fixes IOE
418             from S.C.G.Dictionary`2.KeyCollection.Enumerator).
419         * Test/DocTest-v1.cs: Add doubly-nested class under a generic class to
420           simulate S.C.G.Dictionary`2.KeyCollection.Enumerator behavior.
421         * Test/en.expected.importslashdoc/index.xml,
422           Test/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1+NestedCollection+Enumerator.xml,
423           Test/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1+NestedCollection.xml,
424           Test/en.expected.since/index.xml,
425           Test/en.expected.since/Mono.DocTest.Generic/GenericBase`1+NestedCollection+Enumerator.xml,
426           Test/en.expected.since/Mono.DocTest.Generic/GenericBase`1+NestedCollection.xml,
427           Test/en.expected/index.xml,
428           Test/en.expected/Mono.DocTest.Generic/GenericBase`1+NestedCollection+Enumerator.xml,
429           Test/en.expected/Mono.DocTest.Generic/GenericBase`1+NestedCollection.xml,
430           Test/html.expected/index.html,
431           Test/html.expected/Mono.DocTest.Generic/GenericBase`1+NestedCollection+Enumerator.html,
432           Test/html.expected/Mono.DocTest.Generic/GenericBase`1+NestedCollection.html,
433           Test/html.expected/Mono.DocTest.Generic/index.html,
434           Test/msxdoc-expected.importslashdoc.xml: Flush (new types/changes
435           from DocTest-v1.cs changes).
436
437
438 2008-11-14  Jb Evain  <jbevain@novell.com>
439
440         * Makefile: Use Mono.Cecil from class/lib/net_1_1, not net_2_0.
441
442 2008-11-14  Jonathan Pryor <jpryor@novell.com>
443
444         * Makefile: Don't build monodocer1.exe, and add Mono.Cecil.dll to the 
445           list of assembly references for mdoc.exe.
446         * Mono.Documentation/monodocer.cs: Migrate from System.Reflection to
447           Mono.Cecil.  This was done for two reasons:
448           1. mscorlib.dll: Reflection can load only one mscorlib.dll into an
449              AppDomain, which must be the same mscorlib.dll as the runtime
450              version.  Thus, in order to run monodocer on mscorlib.dll v1.1,
451              monodocer must be a .NET 1.1 application, and to document
452              mscorlib.dll v2.0, monodocer must be a .net 2.0 app.
453           1.a I don't think it's feasable to drop support for 
454              mscorlib.dll v1.1.
455           1.b This has been previously handled (so far) with conditional 
456              compilation, but the conditional compilation is painful to
457              maintain, and prevents use of LINQ in ongoing development.
458           1.c .NET 4.0 will be coming out "soon" (within 2 years?), and it's
459              possible that mono will maintain the same limitation, thus
460              necessitating having *three* different monodocer programs to
461              document mscorlib.dll for v1.1, v2.0, and v4.0.  Yech.
462           2. Future directions: It would be nice to parse method/property IL
463              bodies to determine which exceptions can be generated, thus
464              generating <exception cref="..."/> stubs.  Even with empty stubs,
465              I belive this would be useful within e.g. MonoDevelop to know
466              which exceptions a method is able to generate.
467              This cannot be done (at present) with System.Reflection, and
468              would require Mono.Cecil.
469           Downsides: mdoc now depends upon Mono.Cecil, which is API-unstable.
470           This will likely also complicate execution under .NET, as Mono.Cecil
471           would need to be XCOPY deployed into mdoc.exe's directory.
472         * Test/DocTest-v1.cs: Add additional tests for Custom Attribute
473           generation.
474         * Test/en.expected.importslashdoc/Mono.DocTest.Generic/Func`2.xml,
475           Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
476           Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
477           Test/en.expected.importslashdoc/Mono.DocTest/Widget+Direction.xml,
478           Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
479           Test/en.expected.since/Mono.DocTest.Generic/Func`2.xml,
480           Test/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
481           Test/en.expected.since/Mono.DocTest/DocAttribute.xml,
482           Test/en.expected.since/Mono.DocTest/Widget+Direction.xml,
483           Test/en.expected.since/Mono.DocTest/Widget.xml,
484           Test/en.expected/Mono.DocTest.Generic/Func`2.xml,
485           Test/en.expected/Mono.DocTest.Generic/MyList`2.xml,
486           Test/en.expected/Mono.DocTest/DocAttribute.xml,
487           Test/en.expected/Mono.DocTest/Widget+Direction.xml,
488           Test/en.expected/Mono.DocTest/Widget.xml,
489           Test/html.expected/Mono.DocTest.Generic/Func`2.html,
490           Test/html.expected/Mono.DocTest.Generic/MyList`2.html,
491           Test/html.expected/Mono.DocTest/DocAttribute.html,
492           Test/html.expected/Mono.DocTest/Widget+Direction.html,
493           Test/html.expected/Mono.DocTest/Widget.html,
494           Test/msxdoc-expected.importslashdoc.xml: Flush -- updated output due
495           to new custom attributes, better implemented interface detection --
496           care of the Mono.Cecil migration -- etc.
497
498 2008-11-13  Jonathan Pryor <jpryor@novell.com>
499
500         * Test/html.expected/**: Update 
501           //meta[@http-equiv='Content-Type']/@content attribute value (changed
502           due to yesterday's defaulttemplate.xsl fix).
503
504 2008-11-12  Jonathan Pryor <jpryor@novell.com>
505
506         * Resources/defaulttemplate.xsl: Update /html/head/meta/@content value
507           so that IE7 properly recognizes the file as UTF-8 encoded.
508           Fixes #444009.
509
510 2008-10-27  Jonathan Pryor <jpryor@novell.com>
511
512         * Makefile: Fix build error caused by filenames containing '`'.
513
514 2008-10-27  Jonathan Pryor <jpryor@novell.com>
515
516         * Mono.Documentation/mdoc.cs: TraceLevel.Error messages should go to
517           Console.Error, as per Unix convention.
518         * Makefile: cehck-mdoc-validate* needs to also capture standard error.
519
520 2008-10-27  Jonathan Pryor <jpryor@novell.com>
521
522         * Mono.Documentation/validate.cs: Remove warnings
523         * Test/validate.check.monodocer, Test/validate.check.monodocer.since:
524           Don't generate output if no errors are found.
525         * Test/validate.check.monodocer.importslashdoc: Prefix error messages
526           with "mdoc:", as per Unix convention.
527
528 2008-10-24  Jonathan Pryor <jpryor@novell.com>
529
530         * Makefile: Fixup mdoc.exe dependencies so that it's rebuilt if the
531           resources or monodoc.dll change.  Add tests for mdoc-validate.
532         * Mono.Documentation/assembler.cs, Mono.Documentation/mdoc.cs,
533           Mono.Documentation/monodocer.cs, Mono.Documentation/monodocs2html.cs,
534           Mono.Documentation/monodocs2slashdoc.cs,
535           Mono.Documentation/validate.cs: 
536           - Major rearchitecture; instead of having the option parsing 
537             centralized within mdoc.cs, keep option parsing within the relevant 
538             files/types.
539           - Introduce the MDocCommand abstract class to serve as the base class 
540             -- primarily done to introduce the new Message() and Error() 
541             methods, in which Message() will only show the message if the 
542             current message level is >= the message's level (thus minimizing 
543             console spew); see ../monodoc for more details.
544           - Add `-v' ("verbose") top-level argument to allow setting/adding 
545             levels, so that `mdoc -v -v assemble ...` will show *all*
546             assemble-associated messages (which can be quite voluminous).
547           - Remove compiler warnings, when able.
548         * Mono.Documentation/XhtmlWriter.cs: Remove warning about unused
549           variable.
550         * Resources/monodoc-ecma.xsd: Extend the XSD to support more
551           elements/attributes on various elements -- e.g. mdoc-update looks
552           for a //code/@src attribute, which wasn't defined in the XSD.  Oops.
553         * Test/validate.check.monodocer.importslashdoc: Flush (due to above
554           XSD changes).
555
556 2008-10-22  Jonathan Pryor <jpryor@novell.com>
557
558         * Makefile: Correct path names.
559         * Mono.Documentation/monodocer.cs: Better support nested types.
560         * Test/DocTest-v1.cs: Add 4 levels of nested types.
561         * Test/en.expected.importslashdoc/index.xml,
562           Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
563           Test/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass+Double+Triple+Quadruple.xml,
564           Test/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass+Double+Triple.xml,
565           Test/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass+Double.xml,
566           Test/en.expected.since/index.xml,
567           Test/en.expected.since/Mono.DocTest/Widget.xml,
568           Test/en.expected.since/Mono.DocTest/Widget+NestedClass+Double+Triple+Quadruple.xml,
569           Test/en.expected.since/Mono.DocTest/Widget+NestedClass+Double+Triple.xml,
570           Test/en.expected.since/Mono.DocTest/Widget+NestedClass+Double.xml,
571           Test/en.expected/index.xml,
572           Test/en.expected/Mono.DocTest/Widget.xml,
573           Test/en.expected/Mono.DocTest/Widget+NestedClass+Double+Triple+Quadruple.xml,
574           Test/en.expected/Mono.DocTest/Widget+NestedClass+Double+Triple.xml,
575           Test/en.expected/Mono.DocTest/Widget+NestedClass+Double.xml,
576           Test/html.expected/index.html,
577           Test/html.expected/Mono.DocTest/index.html,
578           Test/html.expected/Mono.DocTest/Widget.html,
579           Test/html.expected/Mono.DocTest/Widget+NestedClass+Double+Triple+Quadruple.html,
580           Test/html.expected/Mono.DocTest/Widget+NestedClass+Double+Triple.html,
581           Test/html.expected/Mono.DocTest/Widget+NestedClass+Double.html,
582           Test/msxdoc-expected.importslashdoc.xml: Flush.
583
584 2008-10-17  Jonathan Pryor <jpryor@novell.com>
585
586         * Makefile: Reference the monodoc.dll from the net_1_1 profile, as 
587           that's the only one that will get built.
588
589 2008-10-17  Jonathan Pryor <jpryor@novell.com>
590
591         * Makefile: Fix $(EXTRA_DISTFILES) so that `make distcheck` doesn't
592           fail on mdoc anymore...
593
594 2008-10-18  Raja R Harinath  <harinath@hurrynot.org>
595
596         * Makefile (MCS1): Use 'class/lib/net_1_1', not 'class/lib/1.0'.
597
598 2008-10-17  Jonathan Pryor <jpryor@novell.com>
599
600         * Mono.Documentation/monodocer.cs: -overrides & -pretty should default 
601           to true.  (Not a major change, as mdoc.exe already did this, so it
602           really only impacts monodocer1.exe, which is internal...)
603
604 2008-10-17  Jonathan Pryor <jpryor@novell.com>
605
606         * Mono.Documentation/monodocer.cs: Only provide a Main() method and
607           use Mono.GetOptions when targeting .NET 1.0 (i.e. monodocer1.exe).
608
609 2008-10-16  Jonathan Pryor <jpryor@novell.com>
610
611 Migration from monodoc/tools to mcs/tools/mdoc...
612
613         * . (svn:ignore), Test (svn:ignore): Ignore generated files.
614         * assembler.cs, mdoc.cs, monodocer.cs, monodocs2html.cs,
615           monodocs2slashdoc.cs, normalize.cs, validate.cs, XhtmlWriter.cs:
616           Move to Mono.Documentation.
617         * defaulttemplate.xsl, overview.xsl, stylesheet.xsl: Moved to
618           Resources.
619         * DocTest: Moved to Test.
620         * DocTest-v1.cs, DocTest-v2.patch, TestEcmaDocs.xml: Moved to Test.
621         * mdoc.exe.sources: Added; mcs include file to build mdoc.exe.
622         * Makefile: Added; build mdoc.exe, monodocer1.exe, and unit tests for
623           mdoc.exe
624         * Mono.Documentation/assembler.cs, Mono.Documentation/normalize.cs,
625           Mono.Documentation/mdoc.cs, Mono.Documentation/monodocs2slashdoc.cs,
626           Mono.Documentation/monodocs2html.cs, Mono.Documentation/validate.cs:
627           Modify command line handling to remove Mono.GetOptions dependency.
628         * Test/DocTest-v1.cs: Update //code/@src attribute due to changed paths.
629         * Test/msxdoc-expected.importslashdoc.xml,
630         * Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml: Flush 
631           due to above DocTest-v1.cs change.
632
633 2008-10-16  Jonathan Pryor <jpryor@novell.com>
634
635         * monodocer.cs: Fixup sorting of explicitly-implement generic members.  
636           This keeps members from "bouncing around" in random orders when
637           updating documentation...
638         * DocTest-v1.cs: Explicitly implement some generic interface members on
639           MyList<A,B> to provoke the bug fixed above.
640           Dictionary<K,V>.ValueCollection in mscorlib was the original
641           example.
642         * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
643           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
644           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
645           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
646           DocTest/msxdoc-expected.importslashdoc.xml: Flush.
647
648 2008-10-15  Jonathan Pryor <jpryor@novell.com>
649
650         * monodocer.cs: Ignore some attributes, because they're ~meaningless
651           for documentation purposes (e.g. who cares if we need attributes to
652           represent decimal constants, or that a method shouldn't be stepped
653           into with the debugger, or...).
654         * DocTest/en.expected/index.xml,
655         * DocTest/en.expected/Mono.DocTest/Widget.xml,
656         * DocTest/en.expected/Mono.DocTest.Generic/Extensions.xml,
657         * DocTest/en.expected.since/index.xml,
658         * DocTest/en.expected.since/Mono.DocTest/Widget.xml,
659         * DocTest/en.expected.since/Mono.DocTest.Generic/Extensions.xml,
660         * DocTest/html.expected/Mono.DocTest/Widget.html,
661         * DocTest/html.expected/Mono.DocTest.Generic/Extensions.html,
662         * DocTest/en.expected.importslashdoc/index.xml,
663         * DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
664         * DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml:
665           Flush.
666
667 2008-10-05  Jonathan Pryor <jpryor@novell.com>
668
669         * monodocer.cs: When sorting <Member/> elements elements, take generic
670           type parameters into account, so that methods with the same number
671           of type parameters are sorted together, instead of strewn across the
672           file according to the full //Member/@MemberName comparison.
673         * DocTest/**: Flush (and wtf is with the [DebuggerHidden] appearance?).
674
675 2008-09-19  Jonathan Pryor <jpryor@novell.com>
676
677         * DocTest-v1.cs: Add a member with a "deeply nested" generic parameter
678           list, so test the mdoc-html-utils.xsl fix.
679         * DocTest/msxdoc-expected.importslashdoc.xml,
680           DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
681           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
682           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
683           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Flush.
684
685 2008-09-16  Jonathan Pryor <jpryor@novell.com>
686
687         * monodocer.cs: FieldInfo.GetValue() may throw, particularly if getting 
688           the value of a public+static+readonly field, and the constructor for 
689           the type of said field throws an exception (though DocTest-v1.cs has
690           a similar scenario).  This is bad, as it prevents monodocer from
691           completing its work.  Found by Dan Morgan.
692         * DocTest-v1.cs: Create a `public static readonly` field that will
693           generate an exception from the class constructor.
694         * DocTest/en.expected/Mono.DocTest/Widget.xml,
695           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
696           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
697           DocTest/html.expected/Mono.DocTest/Widget.html,
698           DocTest/msxdoc-expected.importslashdoc.xml: Flush.
699
700 2008-09-16  Jonathan Pryor <jpryor@novell.com>
701
702         * monodocer.cs: Allow #region/#endregion parsing to cope with blank lines.
703
704 2008-09-15  Jonathan Pryor <jpryor@novell.com>
705
706         * monodocer.cs: Strip off leading whitespace up to the indent level that
707           #region was found.  This allows controlling how much leading whitespace is
708           preserved within the documentation (as too much whitespace will cause the
709           code to be indented significantly when rendered to e.g. html).
710         * DocTest-v1.cs: Indent the #region, to test the above.
711         * DocTest/msxdoc-expected.importslashdoc.xml,
712           DocTest/html.expected/Mono.DocTest/DocAttribute.html,
713           DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml:
714           Flush.
715
716 2008-09-15  Jonathan Pryor <jpryor@novell.com>
717
718         * monodocer.cs: Allow //code/@src to include an anchor, in which the 
719           anchor specifies a #region to include, instead of including the
720           entire document.  This is currently limited to C# code.  For example,
721           `<code lang="C#" src="foo.cs#Text"/>` would look insert all text
722           between `#region Text` and `#endregion` within foo.cs.
723         * DocTest-v1.cs: Add a #region, <code/> block to test the above.
724         * DocTest/msxdoc-expected.importslashdoc.xml,
725           DocTest/html.expected/Mono.DocTest/DocAttribute.html,
726           DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml:
727           Flush.
728
729 2008-09-11  Jonathan Pryor <jpryor@novell.com>
730
731         * stylesheet.xsl: Post-process $cref so that we can use "nice" 
732           //see/@cref strings that can actually refer to the right member.
733           For example, `<see cref="P:Foo.Bar{T}.Baz"/>` is needed to get a
734           nicely rendered "Foo.Bar<T>.Baz" link text, but previously it
735           wouldn't link to anything -- you'd need 
736           `<see cref="P:Foo.Bar`1.Baz"/>` to get a functioning link for HTML
737           output.  This now works.
738
739 2008-09-04  Jonathan Pryor <jpryor@novell.com>
740
741         * monodocer.cs: You can't use FieldInfo.GetValue() on generic types.
742         * DocTestv1.cs: Add checks for static fields on generic types.
743         * DocTest/**: Flush.
744
745 2008-09-04  Jonathan Pryor <jpryor@novell.com>
746
747         * monodocer.cs: Clear out existing <value/> elements when import XML
748           documentation which also contains a <value/> element.  (This keeps us from
749           getting multiple duplicate <value/> elements every time we update while
750           importing.)
751
752 2008-08-31  Jonathan Pryor <jpryor@novell.com>
753
754         * DocTest-v1.cs: Update XML doc comment to mention correct cref.
755         * monodocer.cs: Further fixup XML documentation import and import the actual
756           *contents* of the <exception/> element (oops).  Add support for importing
757           XML documentation for explicitly implemented interface members (CSC-style,
758           not gmcs-style).
759
760 2008-08-27  Jonathan Pryor <jpryor@novell.com>
761
762         * monodocer.cs: Fixup XML documentation import to be more consistent with
763           ECMA XML import.  In particular, this fixes <exception/> import so that
764           the same element isn't imported multiple times, leading to duplicate
765           <exception/> elements the more often monodocer is run.
766         * DocTest/msxdoc-expected.importslashdoc.xml,
767           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml: Flush.
768           Changes order of imported XML to reflect the original element order.
769
770 2008-08-11  Jonathan Pryor <jpryor@novell.com>
771
772         * monodocer.cs: Build fix (gmcs doesn't like using-alias-directives to
773           private nested types anymore).
774
775 2008-05-06  Wade Berrier  <wberrier@novell.com>
776
777         * Makefile.am: Add Options.cs to EXTRA_DIST
778
779 2008-04-22  Jonathan Pryor <jpryor@novell.com>
780
781         * DocTest/en.expected/Mono.DocTest.Generic/Func`2.xml,
782           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Func`2.xml,
783           DocTest/en.expected.since/Mono.DocTest.Generic/Func`2.xml,
784           DocTest/html.expected/Mono.DocTest.Generic/Func`2.html: Flush: n377596 
785           got fixed, so we can now retrieve custom attributes on all generic type
786           parameters.
787
788 2008-04-15  Jonathan Pryor <jpryor@novell.com>
789
790         * . (svn:ignore): ignore generated files.
791         * Makefile.am: Add XmlDocUtils.cs to the build.  Add unit tests for
792           monodocs2slashdoc; other monodocs2slashdoc changes.
793         * mdoc.cs: Update the arguments accepted by monodocs2slashdoc.
794         * monodocs2slashdoc.cs: Move DocUtils class into ../engine/XmlDocUtils.cs.
795           Add support for a -o parameter which contains all output (if specified).
796         * monodocer.cs:
797           - Add special support for extension methods -- index.xml now contains an
798             /Overview/ExtensionMethods element which contains ExtensionMethod
799             elements for all extension methods within all assemblies processed.
800           - The <ExtensionMethod/> element contains a subset of the <Member/> of the
801             actual extension method (and thus will contain a useful subset of the
802             documentation the source <Member/> contains), along with a <Targets/>
803             element describing all types the extension method applies to.
804           - Consequently, if you edit the documentation of your extension method,
805             you need to re-run monodocer to get the newly written documentation
806             inserted into index.xml.
807           - //Parameter/@RefType is "overloaded" to contain the "this" modifier of
808             extension methods (as this was easiest within mdoc-html-utils.xsl).
809           - Within CSharpMemberFormatter, insert generic type constraints for 
810             methods.  (Previously constraints were only done on types due to an
811             oversight.)
812         * monodocs2html.cs: Before rendering documentation via the XSLT, insert any
813           extension methods applicable to the type so that the extension methods
814           will be displayed.
815         * DocTest-v1.cs: Add a class providing extension methods.
816         * stylesheet.xsl: Extension methods shouldn't be documented within the type,
817           just declared (and linked to the actual type's documentation).
818         * DocTest/msxdoc-expected.importslashdoc.xml: Added; expected output for
819           monodocs2slashdoc unit test.
820         * DocTest/en.expected/index.xml, 
821           DocTest/en.expected/Mono.DocTest/UseLists.xml, 
822           DocTest/en.expected/Mono.DocTest.Generic/Extensions.xml, 
823           DocTest/en.expected/Mono.DocTest.Generic/Func`2.xml, 
824           DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml, 
825           DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml, 
826           DocTest/en.expected.since/index.xml, 
827           DocTest/en.expected.since/Mono.DocTest/UseLists.xml, 
828           DocTest/en.expected.since/Mono.DocTest.Generic/Extensions.xml, 
829           DocTest/en.expected.since/Mono.DocTest.Generic/Func`2.xml, 
830           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml, 
831           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml, 
832           DocTest/en.expected.importslashdoc/index.xml, 
833           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml, 
834           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml, 
835           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Func`2.xml, 
836           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml, 
837           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml, 
838           DocTest/html.expected/index.html, 
839           DocTest/html.expected/NoNamespace.html, 
840           DocTest/html.expected/Mono.DocTest/DocAttribute.html, 
841           DocTest/html.expected/Mono.DocTest/DocValueType.html, 
842           DocTest/html.expected/Mono.DocTest/IProcess.html, 
843           DocTest/html.expected/Mono.DocTest/UseLists.html, 
844           DocTest/html.expected/Mono.DocTest/Widget.html, 
845           DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html, 
846           DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html, 
847           DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html, 
848           DocTest/html.expected/Mono.DocTest.Generic/index.html, 
849           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html, 
850           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.html, 
851           DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html, 
852           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html, 
853           DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html, 
854           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html, 
855           DocTest/html.expected/System/Array.html: Flush; also contains additional
856           <Attributes/> elements on generic type parameters due to a mono fix.
857
858 2008-04-09  Jonathan Pryor <jpryor@novell.com>
859
860         * DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html: Fix the
861           System.EventHandler link.
862
863 2008-04-08  Jonathan Pryor <jpryor@novell.com>
864
865         * DocTest-v1.cs: Add more attributes, generic constraints to further test
866           monodocer.
867         * Makefile.am: Add check-md-html-dir target to help with testing
868           monodocs2html w/o re-generating the DocTest/en.actual directory.
869         * monodocer.cs: Lots of changes:
870           - Format change: /Type/TypeParameters/TypeParameter doesn't store the type 
871             parameter name as it's value (e.g.  <TypeParameter>A</TypeParameter>), 
872             but instead stores the name as an attribute (e.g. 
873             <TypeParameter Name="A" />).  This was done as Generic Arguments can
874             contain both constraints and attributes which were previously
875             unrecorded. 
876           - Record constraints under a //TypeParameter/Constraints element, and 
877             attributes under a //TypeParameter/Attributes element.
878           - Generic arguments for methods are now recorded in a
879             /Type/Members/Member/TypeParameters element, with the same schema as
880             type-level arguments.
881           - Properly insert the [return:...] attributes on delegates.
882           - Modify CSharpFullMemberFormatter to generate generic argument
883             constraints on type and member signatures.
884           - Note: attributes are currently not inserted due to n#322399.
885         * stylesheet.xsl: Properly escape generic type names so that all anchors
886           are modeled after ECMA-334 CREFs, e.g. T:Foo.Bar`1, not T:Foo.Bar<T>.
887         * DocTest/en.expected/index.xml,
888           DocTest/en.expected/Mono.DocTest/UseLists.xml,
889           DocTest/en.expected/Mono.DocTest/Widget.xml,
890           DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
891           DocTest/en.expected/Mono.DocTest.Generic/Func`2.xml,
892           DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
893           DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
894           DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
895           DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
896           DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
897           DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
898           DocTest/en.expected/System/Action`1.xml,
899           DocTest/en.expected/System/Array.xml,
900           DocTest/en.expected.since/index.xml,
901           DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
902           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
903           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
904           DocTest/en.expected.since/Mono.DocTest.Generic/Func`2.xml,
905           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
906           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
907           DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
908           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
909           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
910           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
911           DocTest/en.expected.since/System/Action`1.xml,
912           DocTest/en.expected.since/System/Array.xml,
913           DocTest/en.expected.importecmadoc/System/Action`1.xml,
914           DocTest/en.expected.importecmadoc/System/Array.xml,
915           DocTest/en.expected.importslashdoc/System/Array.xml,
916           DocTest/en.expected.importslashdoc/System/Action`1.xml,
917           DocTest/en.expected.importslashdoc/index.xml,
918           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
919           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
920           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
921           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
922           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
923           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Func`2.xml,
924           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
925           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
926           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
927           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
928           DocTest/html.expected/index.html,
929           DocTest/html.expected/Mono.DocTest/Widget.html,
930           DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
931           DocTest/html.expected/Mono.DocTest/UseLists.html,
932           DocTest/html.expected/Mono.DocTest.Generic/index.html,
933           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
934           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.html,
935           DocTest/html.expected/Mono.DocTest.Generic/Func`2.html,
936           DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
937           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
938           DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
939           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
940           DocTest/html.expected/System/Action`1.html,
941           DocTest/html.expected/System/Array.html: Flush.
942
943 2008-04-04  Jonathan Pryor <jpryor@novell.com>
944
945         * DocTest-v1.cs: Add nested generic type for testing.
946         * DocTest/en.expected/index.xml,
947           DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
948           DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
949           DocTest/en.expected.importslashdoc/index.xml,
950           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
951           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
952           DocTest/en.expected.since/index.xml,
953           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
954           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
955           DocTest/html.expected/index.html,
956           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.html,
957           DocTest/html.expected/Mono.DocTest.Generic/index.html,
958           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html: Flush.
959
960 2008-03-31  Jonathan Pryor <jpryor@novell.com>
961
962         * DocTest-v1.cs: Add a member returning an IEnumerator<int[]> to test n375291.
963         * DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
964           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
965           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
966           DocTest/html.expected/Mono.DocTest/Widget.html,
967           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html: Flush.
968
969 2008-03-26  Jonathan Pryor <jpryor@novell.com>
970
971         * DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Flush due to 
972           ../engine/mdoc-html-utils.xsl changes with migration of explicitly
973           implemented interface members to a separate section.
974
975 2008-03-26  Jonathan Pryor <jpryor@novell.com>
976
977         * DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
978           DocTest/html.expected/Mono.DocTest/UseLists.html: Flush due to
979           ../engine/mdoc-html-utils.xsl changes with s/System.Collections.Generic//.
980
981
982 2008-03-26  Jonathan Pryor <jpryor@novell.com>
983
984         * Makefile.am: Import docs for System.Action<T>.
985         * DocTest-v1.cs: Add System.Action<T> to test generic type importing.
986         * monodocer.cs: Misc. fixes:
987           - Properly lookup generic types when importing ECMA docs, so that e.g.
988             System.Collections.Generic.List<T> docs can be imported.
989           - Fix member duplicate checking so that we don't get an exception due to
990             seenmembers.Add(sig, "") for duplicate sigs.
991           - Fix UpdateParameters() to handle updating <param/> nodes on delegates.
992         * TestEcmaDocs.xml: Add docs for System.Action<T>.
993         * DocTest/en.expected/index.xml, DocTest/en.expected/System/Action`1.xml,
994           DocTest/en.expected.importecmadoc/System/Action`1.xml,
995           DocTest/en.expected.importslashdoc/index.xml,
996           DocTest/en.expected.importslashdoc/System/Action`1.xml,
997           DocTest/en.expected.since/index.xml,
998           DocTest/en.expected.since/System/Action`1.xml,
999           DocTest/html.expected/index.html, DocTest/html.expected/System/index.html,
1000           DocTest/html.expected/System/Action`1.html: Flush.
1001
1002 2008-03-25  Jonathan Pryor <jpryor@novell.com>
1003
1004         * stylesheet.xsl: Implement CreateEditLink() for mdoc-html-utils.xsl.
1005
1006 2008-03-24  Jonathan Pryor <jpryor@novell.com>
1007
1008         * stylesheet.xsl: Implement CreateExpandedToggle() for
1009           mdoc-sections-css.xsl.
1010
1011 2008-03-24  Jonathan Pryor <jpryor@novell.com>
1012
1013         * DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Flush due to
1014           changes in ID string generation in ../engine/mdoc-html-utils.xsl.
1015
1016 2008-03-17  Jonathan Pryor <jpryor@novell.com>
1017
1018         * monodocer.cs: Modify index.xml so that there's a //Type/@Kind attribute.
1019           This allows mkestner's doc engine to display the tree view (e.g. "Foo
1020           Class") w/o loading the underlying Foo.xml file, improving start time.
1021         * DocTest/en.expected/index.xml, DocTest/en.expected.since/index.xml,
1022           DocTest/en.expected.importslashdoc/index.xml: Flush.
1023
1024 2008-03-15  Jonathan Pryor <jpryor@novell.com>
1025
1026         * monodocs2html.cs: Fix DumpTemplate() -- sending the output through an
1027           intermediate XmlDocument seems to "corrupt" the file, such that any user
1028           of the dumped file will get errors such as "Could not resolve named
1029           template create-default-style."
1030
1031 2008-03-15  Jonathan Pryor <jpryor@novell.com>
1032
1033         * defaulttemplate.xsl: Cleanup (add/remove CSS properties, etc.).
1034         * Makefile.am: monodocs2html needs to pull in resources from ../engine.
1035         * monodocs2html.cs: Use ManifestResourceResolver so that .xsl files embedded
1036           within the monodocs2html.exe assembly can refer to each other; use
1037           XhtmlWriter so that certain XHTML elements are "closed", e.g. <br/>
1038           instead of <br></br>.
1039         * XhtmlWriter.cs: Added; XmlWriter subclass which generates nicer XHTML.
1040         * stylesheet.xsl: *Major* refactor to share XSLT code with ../engine.
1041         * DocTest/html.expected/index.html, DocTest/html.expected/NoNamespace.html,
1042           DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
1043           DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
1044           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1045           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1046           DocTest/html.expected/Mono.DocTest.Generic/index.html,
1047           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
1048           DocTest/html.expected/Mono.DocTest/Color.html,
1049           DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
1050           DocTest/html.expected/Mono.DocTest/Widget.html,
1051           DocTest/html.expected/Mono.DocTest/Widget+Del.html,
1052           DocTest/html.expected/Mono.DocTest/DocValueType.html,
1053           DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
1054           DocTest/html.expected/Mono.DocTest/IProcess.html,
1055           DocTest/html.expected/Mono.DocTest/index.html,
1056           DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
1057           DocTest/html.expected/Mono.DocTest/DocAttribute.html,
1058           DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
1059           DocTest/html.expected/Mono.DocTest/UseLists.html,
1060           DocTest/html.expected/System/Environment+SpecialFolder.html,
1061           DocTest/html.expected/System/Array.html,
1062           DocTest/html.expected/System/Environment.html,
1063           DocTest/html.expected/System/index.html,
1064           DocTest/html.expected/System/AsyncCallback.html: Flush.
1065
1066 2008-03-07  Jonathan Pryor <jpryor@novell.com>
1067
1068         * mdoc.cs: Rename export-slashdoc command to export-msxdoc.  Add a space
1069           between the `usage:' and command description to ease reading.
1070
1071 2008-03-07  Jonathan Pryor <jpryor@novell.com>
1072
1073         * monodocs2slashdoc.cs: Update to cope with .NET 2.0 generics.
1074         * DocTest-v1.cs: Fix CREF comments.
1075         * DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml, 
1076           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1077           DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
1078           DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html: Flush
1079           due to above CREF changes.
1080
1081 2008-03-06  Joshua Tauberer <jit@occams.info>
1082
1083         * monodocer.cs: Use Path.Combine in a few places.
1084
1085 2008-03-03  Jonathan Pryor <jpryor@novell.com>
1086
1087         * Makefile.am: Test the new -import: monodocer option.
1088         * mdoc.cs: Make --import take only one parameter, the file to import.
1089         * monodocer.cs: Add a new -import option which auto-detects the XML format
1090           so that mdoc (and the user) doesn't need to care about file formats.
1091         * Options.cs: Flush (fixes "<>" error when parsing 2-value "i|import").
1092
1093 2008-02-29  Jonathan Pryor <jpryor@novell.com>
1094
1095         * Makefile.am: Use mcs1 to build monodocer1.exe (as mcs now targets the 2.0
1096           profile by default).
1097
1098 2008-02-29  Jonathan Pryor <jpryor@novell.com>
1099
1100         * Makefile.am: Corrections to pass distcheck.
1101
1102 2008-02-27  Jonathan Pryor <jpryor@novell.com>
1103
1104         * mdoc.cs: `mdoc assemble` should default to the "ecma" format, as that's
1105           what most of the other mdoc tools produce & consume.
1106
1107 2008-02-26  Jonathan Pryor <jpryor@novell.com>
1108
1109         * mdoc.cs: Allow multiple formats to be specified on the `mdoc assemble`
1110           command line; directories use the last specified format.  This allows more
1111           than one format to be specified at once, e.g.
1112           `mdoc assemble -o foo --format=ecma A B --format=error C D`.
1113         * Options.cs: Update to permit the above "argument run" parsing behavior.
1114
1115 2008-02-24  Jonathan Pryor <jpryor@novell.com>
1116
1117         * mdoc.cs: Remove array index out of bound exception in ExportHtml; remove
1118           debug messages.
1119         * defaulttemplate.xsl: s/<tab>/  /; add create-default-collection-title,
1120           create-default-title, create-default-summary, create-default-signature,
1121           create-default-remarks, create-default-members named templates (for use by
1122           importing XSLT files).
1123         * DocTest/html.expected/**/*.html: Flush (whitespace changes).
1124
1125 2008-02-21  Jonathan Pryor <jpryor@novell.com>
1126
1127         * Makefile.am: Add mdoc.exe to the build.
1128         * monodocer.cs: Place into the Mono.Documentation namespace; 
1129           rename Stub to Updater.
1130         * monodocs2slashdoc.cs: Place into the Mono.Documentation namespace; allow
1131           it to convert multiple directories.
1132         * mdoc.cs: Added; a unifying front-end to the various monodoc-related
1133           utilities such as monodocer, monodocs2html, mdassembler, etc.
1134         * Options.cs: An option parser; DO NOT EDIT; instead, see NDesk.Options at
1135           http://www.ndesk.org/Options.
1136
1137 2008-02-19  Jonathan Pryor <jpryor@novell.com>
1138
1139         * defaulttemplate.xsl: Insert id attributes so that an "index" can be added;
1140           Add a small "index" to the top of the page to simplify navigation -- 
1141           useful when there are lots of docs that make the "Members" section 
1142           difficult to otherwise find.  Add a http-equiv Content-Type, so that the 
1143           charset is set to UTF-8.
1144         * stylesheet.xsl: Don't use generate-id(), as the result includes the full
1145           path of the input file, which breaks unit tests if run on a different
1146           machine (and everyone runs the unit tests, right?).  Add id attributes so
1147           that defaulttemplate.xsl can create an index.
1148         * DocTest/html.expected/System/Environment+SpecialFolder.html,
1149           DocTest/html.expected/System/Array.html,
1150           DocTest/html.expected/System/Environment.html,
1151           DocTest/html.expected/System/index.html,
1152           DocTest/html.expected/System/AsyncCallback.html,
1153           DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
1154           DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
1155           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1156           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1157           DocTest/html.expected/Mono.DocTest.Generic/index.html,
1158           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
1159           DocTest/html.expected/index.html,
1160           DocTest/html.expected/Mono.DocTest/Color.html,
1161           DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
1162           DocTest/html.expected/Mono.DocTest/Widget.html,
1163           DocTest/html.expected/Mono.DocTest/Widget+Del.html,
1164           DocTest/html.expected/Mono.DocTest/DocValueType.html,
1165           DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
1166           DocTest/html.expected/Mono.DocTest/IProcess.html,
1167           DocTest/html.expected/Mono.DocTest/index.html,
1168           DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
1169           DocTest/html.expected/Mono.DocTest/DocAttribute.html,
1170           DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
1171           DocTest/html.expected/Mono.DocTest/UseLists.html,
1172           DocTest/html.expected/NoNamespace.html: Flush.
1173
1174 2008-02-15  Jonathan Pryor <jpryor@novell.com>
1175
1176         * defaulttemplate.xsl: Move the <style/> and (new) <script/> into named
1177           templates so that this file can be <xsl:import/>d and the named templates
1178           invoked without clobbering the importing document; add toggle_display()
1179           JavaScript function for some bling.  Modify CSS so things look nicer.
1180         * stylesheet.xsl: Make monodocs2html output not suck (as badly):
1181           - Allow *all* headers to also act as show/hide toggles, so that e.g.
1182             Remarks, Examples, Parameters, etc. can be hidden.
1183           - Move the summary information above the member prototype (consistent 
1184             with MSDN, and I think it looks nicer).
1185           - Provide an `id' attribute for enumeration members, so that 
1186             <see cref="F:..." /> will work reasonably.
1187           - Allow the <pre/> blocks to use the `prettyprint.js' file (used by
1188             monologue for syntax coloring) -- requires setting the <pre/> class to
1189             e.g. code-csharp for C# coloring.
1190         * DocTest/html.expected/System/Environment+SpecialFolder.html,
1191           DocTest/html.expected/System/Array.html,
1192           DocTest/html.expected/System/Environment.html,
1193           DocTest/html.expected/System/index.html,
1194           DocTest/html.expected/System/AsyncCallback.html,
1195           DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
1196           DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
1197           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1198           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1199           DocTest/html.expected/Mono.DocTest.Generic/index.html,
1200           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
1201           DocTest/html.expected/index.html,
1202           DocTest/html.expected/Mono.DocTest/Color.html,
1203           DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
1204           DocTest/html.expected/Mono.DocTest/Widget.html,
1205           DocTest/html.expected/Mono.DocTest/Widget+Del.html,
1206           DocTest/html.expected/Mono.DocTest/DocValueType.html,
1207           DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
1208           DocTest/html.expected/Mono.DocTest/IProcess.html,
1209           DocTest/html.expected/Mono.DocTest/index.html,
1210           DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
1211           DocTest/html.expected/Mono.DocTest/DocAttribute.html,
1212           DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
1213           DocTest/html.expected/Mono.DocTest/UseLists.html,
1214           DocTest/html.expected/NoNamespace.html: Flush (lots of HTML changes due to
1215           defaulttemplate.xsl and stylesheet.xsl changes).
1216
1217 2008-02-14  Jonathan Pryor <jpryor@novell.com>
1218
1219         * stylesheet.xsl: Support <typeparamref/>.
1220
1221 2008-02-13  Jonathan Pryor <jpryor@novell.com>
1222
1223         * DocTest-v1.cs: Add/fix doc comments; add a
1224           Widget(Converter<string,string>) constructor for testing.
1225         * stylesheet.xsl: Fix display issues:
1226           - Generic types should have GetTypeDisplayName() on their constituent
1227             parts, so System.Converter<System.String,System.String>
1228             gets converted into the nicer Converter<string, string>.
1229           - Generic types within method argument lists should be supported.
1230           - Permit constructor references to contain arguments, so that 
1231             "C:My.Full.Type(Type1,Type2)" actually works.
1232           - Fix remote type references so 
1233             <see cref="M:System.Collections.Generic.List{System.Int32}.Remove(`0)"/>
1234             properly reference the remote uri 
1235             System.Collections.Generic.List`1.Remove(`0).
1236         * DocTest/en.expected/Mono.DocTest/Widget.xml,
1237           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
1238           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
1239           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1240           DocTest/html.expected/System/Array.html,
1241           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1242           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1243           DocTest/html.expected/Mono.DocTest/Widget.html,
1244           DocTest/html.expected/Mono.DocTest/UseLists.html: Flush.
1245
1246 2008-02-08  Jonathan Pryor <jpryor@novell.com>
1247
1248         * stylesheet.xsl: Allow use of both <see cref="GenericType{A}" /> and 
1249           <see cref="GenericType&lt;A&gt;" /> to be consistent wrt each other.
1250           - Canonicalize generic types within link targets so that {} is used, as 
1251             1. this is what the */@id code generates, so such links will actually 
1252                work (as opposed to <>-using links, which will fail), and 
1253             2. the {} links are shorter and easier to read due to less markup.
1254           - Canonicalize generic types within link text to use <>, so e.g. 
1255             <see cref="System.Action{`0}" /> is displayed as System.Action<`0>.
1256             This also allows output to be consistent, no matter what the see/@cref
1257             text uses.
1258           - When creating links to go-mono.com, ensure that generic type names are 
1259             of the form Type`N, not Type{...}, as go-mono.com doesn't generate 
1260             useful output for the latter form of URL.
1261         * DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Flush.
1262
1263 2008-01-06  Jonathan Pryor <jpryor@novell.com>
1264
1265         * monodocer.cs: Yet another "if you remove a node while traversing its
1266           containing list, you skip elements" bug (in this case, if you had extra
1267           <param/> elements for non-existant parameters, only the first extra
1268           <param/> was removed, and the others were skipped).  Modify the messge
1269           displayed for undeletable <param/> nodes to provide more contextual 
1270           information.
1271
1272 2008-01-05  Jonathan Pryor <jpryor@novell.com>
1273
1274         * monodocer.cs: 
1275           - Fix duplicate and removed member checking/handling, so that duplicate 
1276             and removed members are properly warned about/removed (depending 
1277             on MemberDocsHaveUserContent()).  
1278           - Member sorting should take the return type into consideration, as I've 
1279             seen some ../class/** members which change the return type between 
1280             v1.0 and v2.0, causing the order of these members to "float" (as they 
1281             previously had the same sort order).
1282
1283 2008-01-03  Jonathan Pryor <jpryor@novell.com>
1284
1285         * monodocer.cs: XmlNodeList doesn't appear to support removing nodes while
1286           you're traversing the list.  (It doesn't complain, but it doesn't iterate
1287           over all the nodes either if you do so.)  Don't do that.
1288
1289 2008-01-02  Jonathan Pryor <jpryor@novell.com>
1290
1291         * monodocer.cs: Don't generate files that contain characters that are
1292           invalid on Win32 platforms.  These are frequently compiler-generated
1293           types, e.g. '<>c__CompilerGenerated2+<>c__CompilerGenerated13', but are
1294           occasionally public when they shouldn't be.  Fix the
1295           UpdateAssemblyVersions() logic to return true IFF there are > 0
1296           <AssemblyVersion/> elements.
1297
1298 2008-01-02  Jonathan Pryor <jpryor@novell.com>
1299
1300         * DocTest-v1.cs: Add a type to the root namespace.
1301         * monodocer.cs: Permit types to exist in the root namespace.  This is needed
1302           to properly document ../class/Npgsql, though I have no idea how `monodoc'
1303           will actually display these types...
1304         * overview.xsl: Support types within the root namespace.
1305         * DocTest/en.expected/index.xml, DocTest/en.expected.since/index.xml, 
1306           DocTest/en.expected.importslashdoc/index.xml, 
1307           DocTest/html.expected/System/index.html, 
1308           DocTest/html.expected/Mono.DocTest.Generic/index.html, 
1309           DocTest/html.expected/index.html, 
1310           DocTest/html.expected/Mono.DocTest/index.html: Flush.
1311         * DocTest/en.expected/NoNamespace.xml, 
1312           DocTest/en.expected/ns-.xml, 
1313           DocTest/en.expected.importslashdoc/NoNamespace.xml, 
1314           DocTest/en.expected.importslashdoc/ns-.xml, 
1315           DocTest/en.expected.since/NoNamespace.xml, 
1316           DocTest/en.expected.since/ns-.xml, 
1317           DocTest/html.expected/NoNamespace.html: Added.
1318
1319 2008-01-02  Jonathan Pryor <jpryor@novell.com>
1320
1321         * monodocer.cs: 
1322           - Write namespace files as 'ns-<Namespace>.xml', not '<Namespace>.xml', as 
1323             the previous behavior would break monodoc checkout on Win32 (due to dir 
1324             class/System.Security/en/System.Security.Cryptography.Xml vs. file
1325             class/System.Security/en/System.Security.Cryptography.xml).
1326           - This will rename existing <Namespace>.xml to ns-<Namespace>.xml
1327             automatically.
1328           - gmcs/mcs changed Reflection names (again); cope.
1329         * DocTest/en.expected/System.xml, 
1330           DocTest/en.expected/Mono.DocTest.Generic.xml, 
1331           DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml, 
1332           DocTest/en.expected/Mono.DocTest.xml, DocTest/en.expected.since/System.xml, 
1333           DocTest/en.expected.since/Mono.DocTest.Generic.xml, 
1334           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml, 
1335           DocTest/en.expected.since/Mono.DocTest.xml, 
1336           DocTest/en.expected.importslashdoc/System.xml, 
1337           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic.xml, 
1338           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml, 
1339           DocTest/en.expected.importslashdoc/Mono.DocTest.xml: Rename to have a
1340           'ns-' prefix.
1341         * Makefile.am: Remove obsolete targets; add -show_exceptions to tests so we
1342           get more information on errors.
1343         * overview.xsl: Use the 'ns-' prefixed namespace documentation files.
1344
1345 2007-12-19  Jonathan Pryor <jpryor@novell.com>
1346
1347         * monodocer.cs: PropertyInfo.GetValue() may throw (in particular, within
1348           System.Data when trying to read ToolboxItemAttribute which references an
1349           assembly not present within the GAC).  Workaround this.
1350
1351 2007-12-19  Jonathan Pryor <jpryor@novell.com>
1352
1353         * monodocer.cs: Add a -show_exceptions argument to provide full stack traces
1354           when an error occurs (helps with debugging).  Allow VersionComparer to
1355           work on "slightly" malformed Version strings like 1.0.x.x, which some
1356           existing documentation uses.
1357
1358 2007-12-18  Jonathan Pryor <jpryor@novell.com>
1359
1360         * monodocer.cs: Don't append ';' to property declarations.
1361         * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1362           DocTest/en.expected/Mono.DocTest/Widget.xml,
1363           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1364           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1365           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
1366           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml: Flush.
1367
1368 2007-12-18  Jonathan Pryor <jpryor@novell.com>
1369
1370         * monodocer.cs: Insert [return:] custom attributes within <ReturnValue/>.
1371         * DocTest-v1.cs: Add custom attributes to various members for testing.
1372         * DocTest/en.expected/Mono.DocTest/Widget.xml,
1373           DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
1374           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1375           DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
1376           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
1377           DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
1378           DocTest/html.expected/Mono.DocTest/Widget.html,
1379           DocTest/html.expected/Mono.DocTest/DocAttribute.html: Flush.
1380
1381 2007-12-17  Jonathan Pryor <jpryor@novell.com>
1382
1383         * monodocer.cs: Document protected events.
1384         * DocTest-v1.cs: Change the visibility of various members so we can better
1385           test the monodocs2html output.
1386         * stylesheet.xsl: Fix the `protected' check so that public members aren't
1387           displayed under the Protected [MemberType] section.
1388         * DocTest/en.expected/Mono.DocTest/Widget.xml,
1389           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1390           DocTest/html.expected/Mono.DocTest/Widget.html,
1391           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml: Flush.
1392
1393 2007-12-13  Jonathan Pryor  <jonpryor@vt.edu>
1394
1395         * monodocer.cs: Er, *really* sort the <AssemblyVersion/> entries.
1396
1397 2007-12-12  Jonathan Pryor  <jonpryor@vt.edu>
1398
1399         * monodocer.cs: Sort the <AssemblyVersion/> entries so that when rendering
1400           them within monodoc we show versions in increasing order.
1401
1402 2007-12-11  Jonathan Pryor  <jonpryor@vt.edu>
1403
1404         * monodocer.cs: Don't use File.OpenWrite(), as that doesn't truncate the
1405           file (resulting in invalid XML errors if the new file is smaller than the
1406           previous file).  Add a local OpenWrite() to ensure that UTF8 is used
1407           everywhere.
1408
1409 2007-12-11  Jonathan Pryor  <jonpryor@vt.edu>
1410
1411         * monodocer.cs: Generate a per-member <AssemblyInfo/> element, not an
1412           <AssemblyVersions/> element.  This makes it easeier to write the XSLT 
1413           used in the docbrowser to generate the Requirements section.
1414         * stylesheet.xsl: Use <AssemblyInfo/>, not <AssemblyVersions/>.
1415         * DocTest/en.expected/System/Environment.xml,
1416           DocTest/en.expected/System/AsyncCallback.xml,
1417           DocTest/en.expected/System/Environment+SpecialFolder.xml,
1418           DocTest/en.expected/System/Array.xml,
1419           DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
1420           DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1421           DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
1422           DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
1423           DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1424           DocTest/en.expected/Mono.DocTest/Widget.xml,
1425           DocTest/en.expected/Mono.DocTest/Widget+Del.xml,
1426           DocTest/en.expected/Mono.DocTest/DocValueType.xml,
1427           DocTest/en.expected/Mono.DocTest/IProcess.xml,
1428           DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
1429           DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
1430           DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
1431           DocTest/en.expected/Mono.DocTest/UseLists.xml,
1432           DocTest/en.expected/Mono.DocTest/Widget+IMenuItem.xml,
1433           DocTest/en.expected/Mono.DocTest/Color.xml,
1434           DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
1435           DocTest/en.expected.since/System/Environment.xml,
1436           DocTest/en.expected.since/System/AsyncCallback.xml,
1437           DocTest/en.expected.since/System/Environment+SpecialFolder.xml,
1438           DocTest/en.expected.since/System/Array.xml,
1439           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
1440           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1441           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
1442           DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
1443           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1444           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1445           DocTest/en.expected.since/Mono.DocTest/AddedType.xml,
1446           DocTest/en.expected.since/Mono.DocTest/Widget+Del.xml,
1447           DocTest/en.expected.since/Mono.DocTest/DocValueType.xml,
1448           DocTest/en.expected.since/Mono.DocTest/IProcess.xml,
1449           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass.xml,
1450           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
1451           DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
1452           DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
1453           DocTest/en.expected.since/Mono.DocTest/Widget+IMenuItem.xml,
1454           DocTest/en.expected.since/Mono.DocTest/Color.xml,
1455           DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
1456           DocTest/en.expected.importecmadoc/System/Environment.xml,
1457           DocTest/en.expected.importecmadoc/System/AsyncCallback.xml,
1458           DocTest/en.expected.importecmadoc/System/Array.xml,
1459           DocTest/en.expected.importslashdoc/System/Environment.xml,
1460           DocTest/en.expected.importslashdoc/System/AsyncCallback.xml,
1461           DocTest/en.expected.importslashdoc/System/Environment+SpecialFolder.xml,
1462           DocTest/en.expected.importslashdoc/System/Array.xml,
1463           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
1464           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
1465           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
1466           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
1467           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1468           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Del.xml,
1469           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
1470           DocTest/en.expected.importslashdoc/Mono.DocTest/DocValueType.xml,
1471           DocTest/en.expected.importslashdoc/Mono.DocTest/IProcess.xml,
1472           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass.xml,
1473           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
1474           DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
1475           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
1476           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml,
1477           DocTest/en.expected.importslashdoc/Mono.DocTest/Color.xml,
1478           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Direction.xml:
1479           Flush; s/AssemblyVersion/AssemblyInfo/g.
1480
1481 2007-12-10  Jonathan Pryor  <jonpryor@vt.edu>
1482
1483         * DocTest-v2.patch: Remove some members so that we can see some
1484           <AssemblyVersions/> differences in the XML output.
1485         * monodocer.cs: Add a <AssemblyVersions/> element under every type and member
1486           to better track versioning information.  The XML documentation now becomes
1487           a "version database" of sorts, in which each member lists which assembly
1488           versions it exists in.  This permits tracking which members were added or
1489           removed over time with greater fidelity than <since/>.  This also removes
1490           the need for -ignore_extra_docs, which is maintained (for compatibility)
1491           but ignored.
1492         * DocTest-v1.cs: Have differing visibility on a property to ensure it works
1493           properly.
1494         * stylesheet.xsl: Print out the per-member <AssemblyVersions/> element.
1495         * DocTest/en.expected/System/Environment.xml,
1496           DocTest/en.expected/System/AsyncCallback.xml,
1497           DocTest/en.expected/System/Environment+SpecialFolder.xml,
1498           DocTest/en.expected/System/Array.xml,
1499           DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
1500           DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1501           DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
1502           DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
1503           DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1504           DocTest/en.expected/Mono.DocTest/Widget.xml,
1505           DocTest/en.expected/Mono.DocTest/Widget+Del.xml,
1506           DocTest/en.expected/Mono.DocTest/DocValueType.xml,
1507           DocTest/en.expected/Mono.DocTest/IProcess.xml,
1508           DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
1509           DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
1510           DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
1511           DocTest/en.expected/Mono.DocTest/UseLists.xml,
1512           DocTest/en.expected/Mono.DocTest/Widget+IMenuItem.xml,
1513           DocTest/en.expected/Mono.DocTest/Color.xml,
1514           DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
1515           DocTest/en.expected.since/System/Environment.xml,
1516           DocTest/en.expected.since/System/AsyncCallback.xml,
1517           DocTest/en.expected.since/System/Environment+SpecialFolder.xml,
1518           DocTest/en.expected.since/System/Array.xml,
1519           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
1520           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1521           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
1522           DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
1523           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1524           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1525           DocTest/en.expected.since/Mono.DocTest/AddedType.xml,
1526           DocTest/en.expected.since/Mono.DocTest/Widget+Del.xml,
1527           DocTest/en.expected.since/Mono.DocTest/DocValueType.xml,
1528           DocTest/en.expected.since/Mono.DocTest/IProcess.xml,
1529           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass.xml,
1530           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
1531           DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
1532           DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
1533           DocTest/en.expected.since/Mono.DocTest/Widget+IMenuItem.xml,
1534           DocTest/en.expected.since/Mono.DocTest/Color.xml,
1535           DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
1536           DocTest/html.expected/System/Array.html,
1537           DocTest/html.expected/System/Environment.html,
1538           DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
1539           DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
1540           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1541           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1542           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
1543           DocTest/html.expected/Mono.DocTest/Widget.html,
1544           DocTest/html.expected/Mono.DocTest/DocValueType.html,
1545           DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
1546           DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
1547           DocTest/html.expected/Mono.DocTest/DocAttribute.html,
1548           DocTest/html.expected/Mono.DocTest/UseLists.html,
1549           DocTest/en.expected.importecmadoc/System/Environment.xml,
1550           DocTest/en.expected.importecmadoc/System/AsyncCallback.xml,
1551           DocTest/en.expected.importecmadoc/System/Array.xml,
1552           DocTest/en.expected.importslashdoc/System/Environment.xml,
1553           DocTest/en.expected.importslashdoc/System/AsyncCallback.xml,
1554           DocTest/en.expected.importslashdoc/System/Environment+SpecialFolder.xml,
1555           DocTest/en.expected.importslashdoc/System/Array.xml,
1556           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
1557           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
1558           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
1559           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
1560           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1561           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Del.xml,
1562           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
1563           DocTest/en.expected.importslashdoc/Mono.DocTest/DocValueType.xml,
1564           DocTest/en.expected.importslashdoc/Mono.DocTest/IProcess.xml,
1565           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass.xml,
1566           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
1567           DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
1568           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
1569           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml,
1570           DocTest/en.expected.importslashdoc/Mono.DocTest/Color.xml,
1571           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Direction.xml:
1572           Flush, inserting <AssemblyVersion/> elements as necessary.
1573
1574 2007-10-28  Jonathan Pryor  <jonpryor@vt.edu>
1575
1576         * DocTest-v1.cs: Correct doc comment.
1577         * DocTest/html.expected/System/Environment.html,
1578           DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
1579           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1580           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1581           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
1582           DocTest/html.expected/Mono.DocTest/UseLists.html,
1583           DocTest/en.expected.importslashdoc/System/Environment.xml,
1584           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
1585           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
1586           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
1587           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
1588           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml: mcs and gmcs 
1589           got many bug fixes with /doc support, changing many things that depend on 
1590           /doc output.
1591
1592 2007-09-27  Raja R Harinath  <rharinath@novell.com>
1593
1594         * Makefile.am (DocTest.dll-v1, DocTest.dll-v2): Pick source from $srcdir.
1595
1596 2007-07-19  Jonathan Pryor  <jonpryor@vt.edu>
1597
1598         * monodocer.cs: Always fully consume <Docs/> children.  If we have e.g.
1599           <Docs><param name="foo"><see cref="T:Bar"/></param></Docs>, but there is
1600           no existing parameter "foo", we would previously process the nested
1601           <see/> node and append it to the <Docs/> child nodes.
1602
1603 2007-07-18  Jonathan Pryor  <jonpryor@vt.edu>
1604
1605         * monodocer.cs: Change OrderDocsNodes() so that it uses
1606           XmlNode.InsertAfter() instead of XmlNode.InsertBefore().  The result is
1607           mostly the same (i.e. no regression test changes), but if you have a
1608           non-ordered node between other nodes this will force the non-ordered node
1609           to the *end* of the <Docs/> children, not the start.  For example, given
1610           the input <Docs><summary/><exception/><remarks/></Docs/>, we used to get
1611           <Docs><exception/><summary/><remarks/></Docs>, while we now get
1612           <Docs><summary/><remarks/><exception/></Docs>.
1613
1614 2007-07-17  Jonathan Pryor  <jonpryor@vt.edu>
1615
1616         * monodocer.cs: Insert the type's <Docs/> node before <Members/>.  This is
1617           consistent with ECMA documentation ordering, and makes more sense (when
1618           editing the file you can edit the Type documentation before member
1619           documentation, instead of after all members as was the case before).
1620         * DocTest/en.expected/System/Environment.xml,
1621           DocTest/en.expected/System/Environment+SpecialFolder.xml,
1622           DocTest/en.expected/System/Array.xml,
1623           DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
1624           DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1625           DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
1626           DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
1627           DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1628           DocTest/en.expected/Mono.DocTest/Widget.xml,
1629           DocTest/en.expected/Mono.DocTest/DocValueType.xml,
1630           DocTest/en.expected/Mono.DocTest/IProcess.xml,
1631           DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
1632           DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
1633           DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
1634           DocTest/en.expected/Mono.DocTest/UseLists.xml,
1635           DocTest/en.expected/Mono.DocTest/Widget+IMenuItem.xml,
1636           DocTest/en.expected/Mono.DocTest/Color.xml,
1637           DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
1638           DocTest/en.expected.since/System/Environment.xml,
1639           DocTest/en.expected.since/System/Environment+SpecialFolder.xml,
1640           DocTest/en.expected.since/System/Array.xml,
1641           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
1642           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1643           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
1644           DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
1645           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1646           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1647           DocTest/en.expected.since/Mono.DocTest/AddedType.xml,
1648           DocTest/en.expected.since/Mono.DocTest/DocValueType.xml,
1649           DocTest/en.expected.since/Mono.DocTest/IProcess.xml,
1650           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass.xml,
1651           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
1652           DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
1653           DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
1654           DocTest/en.expected.since/Mono.DocTest/Widget+IMenuItem.xml,
1655           DocTest/en.expected.since/Mono.DocTest/Color.xml,
1656           DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
1657           DocTest/en.expected.importecmadoc/System/Environment.xml,
1658           DocTest/en.expected.importecmadoc/System/Array.xml,
1659           DocTest/en.expected.importslashdoc/System/Environment.xml,
1660           DocTest/en.expected.importslashdoc/System/Environment+SpecialFolder.xml,
1661           DocTest/en.expected.importslashdoc/System/Array.xml,
1662           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
1663           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
1664           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
1665           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
1666           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1667           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
1668           DocTest/en.expected.importslashdoc/Mono.DocTest/DocValueType.xml,
1669           DocTest/en.expected.importslashdoc/Mono.DocTest/IProcess.xml,
1670           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass.xml,
1671           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
1672           DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
1673           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
1674           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml,
1675           DocTest/en.expected.importslashdoc/Mono.DocTest/Color.xml,
1676           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Direction.xml:
1677           Update so that <Docs/> comes before <Members/>, not after.
1678
1679 2007-07-14  Jonathan Pryor  <jonpryor@vt.edu>
1680
1681         * monodocer.cs: If a <Type/> had an empty <Members/> element, we'd start
1682           reading the <Member/> elements from the *next* <Type/>; oops.
1683         * DocTest-v1.cs: Add System.AsyncCallback, which is a delegate and thus had
1684           an empty <Members/> element.
1685         * Makefile.am: Also import docs for System.AsyncCallback.
1686         * overview.xsl: Update $max-types so that adding System.AsyncCallback
1687           doesn't trigger the alternate behavior, creating a larger diff than
1688           necessary.
1689         * TestEcmaDocs.xml: Add docs for System.AsyncCallback.
1690         * DocTest/en.expected/System/AsyncCallback.xml,
1691           DocTest/en.expected/index.xml, 
1692           DocTest/en.expected.since/System/AsyncCallback.xml
1693           DocTest/en.expected.since/index.xml,
1694           DocTest/html.expected/System/AsyncCallback.html
1695           DocTest/html.expected/System/index.html, DocTest/html.expected/index.html,
1696           DocTest/en.expected.importecmadoc/System/AsyncCallback.xml,
1697           DocTest/en.expected.importslashdoc/System/AsyncCallback.xml,
1698           DocTest/en.expected.importslashdoc/index.xml: Added; expected imported 
1699           documentation for System.AsyncCallback.
1700
1701 2007-07-14  Jonathan Pryor  <jonpryor@vt.edu>
1702
1703         * monodocer.cs: Remove the "While Importing ECMA  <Docs/> chidren, found
1704           node..." error by ensuring that we're at the start of an actual
1705           non-whitespace element before hitting the switch statement.
1706
1707 2007-07-14  Jonathan Pryor  <jonpryor@vt.edu>
1708
1709         * monodocer.cs: Don't call DoUpdateType() with non-public types.  This
1710           allows `monodocer -importecmadoc` to fully run and import mscorlib.dll.
1711
1712 2007-07-14  Jonathan Pryor  <jonpryor@vt.edu>
1713
1714         * monodocer.cs: Ensure that getting a MemberInfo based on the documentation
1715           that the MemberInfo was actually found...  (Allows a full mscorlib.dll
1716           import to run for > 15s before dying.)
1717
1718 2007-07-04  Jonathan Pryor  <jonpryor@vt.edu>
1719
1720         * monodocer.cs: Use XmlReader instead of XPathDocument to process the ECMA
1721           documentation import.  This cuts down a -type:System.Array import from
1722           ~10-12s to ~7-8s (not great, but better).  "Fix" the ordering of <Docs/>
1723           child elements so that importing ECMA/slashdoc documentation doesn't 
1724           change the normal ordering.
1725         * DocTest/en.expected.importecmadoc/System/Array.xml,
1726           DocTest/en.expected.importecmadoc/System/Environment.xml: Alter order of
1727           <Docs/> elements to match the normally generated order.
1728
1729 2007-06-20  Jonathan Pryor  <jonpryor@vt.edu>
1730
1731         * monodocer.cs: Sort /Type/Members/Member elements so that the order is not
1732           dependent upon Reflection order.
1733         * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1734           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1735           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
1736           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1737           DocTest/en.expected.importecmadoc/System/Array.xml,
1738           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml:
1739           Flush (sort <Member/> elements).
1740
1741 2007-06-19  Jonathan Pryor  <jonpryor@vt.edu>
1742
1743         * monodocer.cs: Sort <Namespace/> and <Type/> elements by their Name
1744           attribute.  This helps keep diff's smaller, as the generated order won't
1745           be dependent upon Reflection order.
1746         * DocTest/en.expected/index.xml, DocTest/en.expected.since/index.xml,
1747           DocTest/en.expected.importslashdoc/index.xml: Flush (sort namespaces and
1748           types alphabetically).
1749
1750 2007-06-19  Jonathan Pryor  <jonpryor@vt.edu>
1751
1752         * monodocer.cs: Cleanup Console output.
1753           - Use Console.Error for error messages, not status messages.
1754           - Error should be prefixed by "monodocer" (follows Unix conventions).
1755           - Don't print "Updating..." followed by "New Type..." for the same type.
1756           - Use __monodocer-seen__ sentinal for imported nodes so that we don't try
1757             to lookup the corresponding member later in GetDocumentationMembers().
1758
1759 2007-06-19  Jonathan Pryor  <jonpryor@vt.edu>
1760
1761         * monodocer.cs: Lots 'o fixes/improvements.
1762           - Allow multiple -type parameters to be specified.  
1763           - Remove type member enumeration from UpdateTypes() -- use DoUpdateType2().
1764           - Iterate over assembly types in Ecma Documentation order (so that we read
1765             the Ecma docs sequentially, not randomly).  
1766           - Allow -type to *create* new documentation files.
1767           - Remove unused methods.
1768         * Makefile.am: Add check-monodocer-importecmadoc,
1769           check-monodocer-importecmadoc-update targets (unit tests for
1770           -importecmadoc).
1771         * TestEcmaDocs.xml: Added; ECMA Documentation input file for use with
1772           -importecmadoc tests.
1773         * DocTest-v1.cs: Add System.Array to help test -importecmadoc behavior.
1774         * DocTest/en.expected/index.xml, DocTest/en.expected.since/index.xml,
1775           DocTest/html.expected/System/index.html, DocTest/html.expected/index.html,
1776           DocTest/en.expected.importslashdoc/index.xml: Flush (add System.Array to
1777           index files).
1778         * DocTest/en.expected/System/Array.xml, 
1779           DocTest/en.expected.since/System/Array.xml,
1780           DocTest/html.expected/System/Array.html,
1781           DocTest/en.expected.importecmadoc/System/Environment.xml,
1782           DocTest/en.expected.importecmadoc/System/Array.xml,
1783           DocTest/en.expected.importslashdoc/System/Array.xml: Added; expected
1784           output for System.Array type for various tests.
1785
1786 2007-06-18  Wade Berrier  <wberrier@novell.com>
1787
1788         * monodocer.cs: Move assembly information up top because having it at the bottom
1789         fails to compile with mcs from trunk.
1790
1791 2007-06-14  Jonathan Pryor  <jonpryor@vt.edu>
1792
1793         * monodocer.cs: Use XPathDocument instead of XmlDocument to process the ECMA
1794           documentation import.  This cuts down a -type:System.Array import from
1795           ~15-20s to ~10-12s (not great, bug better).  Fix importing of <exception/>
1796           elements -- previously we would skip them if the mono docs lacked them.
1797
1798 2007-06-12  Jonathan Pryor  <jonpryor@vt.edu>
1799
1800         * monodocer.cs: The previous fix was buggy -- if the type parameters were
1801           renamed (ConvertAll<T,U> in ECMA, ConvertAll<TInput,TOutput> in Mono),
1802           then the existing element wouldn't be found, but the MemberInfo would.
1803           Result: duplicate XML elements (BOTH ConvertAll<T,U> AND 
1804           ConvertAll<TInput,TOutput>), one of which is wrong, which clearly isn't
1805           desirable.  If the Mono XML element can't be found, try looking it up
1806           based on the MemberInfo found from the ECMA docs to avoid duplication.
1807
1808 2007-06-11  Jonathan Pryor  <jonpryor@vt.edu>
1809
1810         * monodocer.cs: Add support for renaming of template parameters (useful
1811           because ECMA 335 refers to Array.ConvertAll<T,U> while Mono/.NET have
1812           Array.ConvertAll<TInput,TOutput>).  Not terribly intelligent, but smart
1813           enough that all but two System.Array members can now be imported (a
1814           private constructor, and a member with an incorrectly documented parameter
1815           type, neither of which I plan on supporting).  Cleanup some of the 
1816           `#if NET_1_0` blocks by using `using' aliases -- alas, requires moving the
1817           [assembly:...] attributes; see bugzilla #81855.
1818
1819 2007-06-11  Jonathan Pryor  <jonpryor@vt.edu>
1820
1821         * monodocer.cs: Add support for explicity-implemented interface members.
1822           Minor cleanup.  Replace catch(NotSupportedException){} blocks.
1823         * Makefile.am (clean): Cleanup monodocer.exe* files.
1824         * DocTest-v1.cs: Add IFoo<T>, explicitly implement some interfaces on
1825           MyList<A,B> to test explicitly-implemented member support.
1826         * DocTest/en.expected/index.xml,
1827           DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1828           DocTest/en.expected.since/index.xml,
1829           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1830           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1831           DocTest/html.expected/Mono.DocTest.Generic/index.html,
1832           DocTest/html.expected/index.html,
1833           DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
1834           DocTest/en.expected.importslashdoc/index.xml,
1835           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
1836           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml:
1837           Update.
1838         * DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
1839           DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
1840           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
1841           DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html: Added.
1842
1843 2007-05-29  Jonathan Pryor  <jonpryor@vt.edu>
1844
1845         * monodocer.cs: Invert ECMA documentation importing -- instead of iterating
1846           over the monodoc XML and importing ECMA docs as encountered (randomly), 
1847           iterate over the ECMA docs in-order and access the monodoc types randomly.
1848           This significantly improves access as the ECMA docs are ~7.2MB in size,
1849           while the monodoc XML types 10's-100's of KB (randomly accessing a 7.2 MB
1850           XML document == BAD; randomly accessing a several hundred KB document is
1851           better).  This cuts down a -type:System.Array import from ~4 minutes to
1852           < ~20s.  Alas, it appears to miss a few members as well, so it's not done.
1853
1854 2007-05-19  Jonathan Pryor  <jonpryor@vt.edu>
1855
1856         * monodocer.cs: Create diff(1)-friendly output for -importecmadocs.
1857           Previously, we'd remove <summary/>, <remarks/>, etc., and re-add them at
1858           the end of the <Docs/> node, which results in major changes for diff(1),
1859           so instead we replace the contents of existing elements when appropriate.
1860           Remove '\r' from the imported document (also to remove diff(1)-reported
1861           changes as the line endings would change).
1862
1863 2007-05-17  Jonathan Pryor  <jonpryor@vt.edu>
1864
1865         * monodocer.cs: Add -importecmadoc flag, which will import
1866           documentation found within an ECMA documetation file (e.g. the
1867           CLILibraryTypes.xml from the ECMA-335 standard).
1868           WARNING: import is currently SLOW.
1869
1870 2007-05-17  Jonathan Pryor  <jonpryor@vt.edu>
1871
1872         * monodocer.cs: Refactor MakeDocNode() so that there's only one
1873           version, not three overloads, and use a (new) DocsNodeInfo type to
1874           pass information to the new MakeDocNode() method.  This doesn't
1875           change anything per-se, but it'll make it easier to pass new
1876           parameters to MakeDocNode() without making the rediculously long
1877           parameter list even longer...
1878
1879 2007-05-12  Joshua Tauberer  <jit@occams.info>
1880
1881         * overview.xsl: Always sort type names, since when updating
1882           docs monodocer can make the list in index.xml out of order.
1883         * monodocer.cs: When deleting duplicate member entries, delay
1884           deletion until after loop is finished.
1885         * Makefile.am, DocTest-v1.cs, DocTest/en.expected.importslashdoc,
1886           DocTest/html.expected: Revise monodocs2html tests to use
1887           the /doc file so we can test those tags too. And changed two
1888           <c> tags to <see cref=/>.
1889         * stylesheet.xsl, DocTest/html.expected: Fix see-links to methods,
1890           which didn't recognize '(' as delimiting type from args, and
1891           display nice type names for arguments.
1892
1893 2007-03-15  Lluis Sanchez Gual  <lluis@novell.com>
1894
1895         * monodocer.cs: When deleting a member, don't remove it from the
1896           parent xml element until all members are checked, since doing
1897           it breaks the loop.
1898           Properly import internal protected members.
1899
1900 2006-12-29  Jonathan Pryor  <jonpryor@vt.edu>
1901
1902         * Makefile.am: Add check-monodocer-ignore_extra_docs-update,
1903           check-doc-tools-update, and check-update targets.
1904         * monodocer.cs: Fix generation of attribute parameters, as e.g.
1905           `AttributeUsage.Class|Struct' doesn't look right; it should 
1906           instead be `AttributeUsage.Class | AttributeUsage.Struct'.
1907         * DocTest-v1.cs: Add new public Attribute with an AttributeUsage for tests.
1908         * DocTest/en.expected/index.xml, 
1909           DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
1910           DocTest/en.expected.importslashdoc/index.xml,
1911           DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
1912           DocTest/en.expected.since/index.xml,
1913           DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
1914           DocTest/html.expected/index.html,
1915           DocTest/html.expected/Mono.DocTest/index.html,
1916           DocTest/html.expected/Mono.DocTest/DocAttribute.html: Added; update
1917           expected output for new tests.
1918
1919 2006-12-29  Jonathan Pryor  <jonpryor@vt.edu>
1920
1921         * monodocer.cs: Fix C# type name generation for nested types in the System
1922           namespace.  Remove TypeCastException when dealing with custom attributes.
1923         * DocTest-v1.cs: Add System.Environment type for testing System handling.
1924         * DocTest/en.expected/index.xml, DocTest/en.expected/System.xml,
1925           DocTest/en.expected/System/Environment.xml,
1926           DocTest/en.expected/System/Environment+SpecialFolder.xml,
1927           DocTest/en.expected.since/index.xml, DocTest/en.expected.since/System.xml,
1928           DocTest/en.expected.since/System/Environment+SpecialFolder.xml,
1929           DocTest/en.expected.since/System/Environment.xml,
1930           DocTest/en.expected.importslashdoc/index.xml, 
1931           DocTest/en.expected.importslashdoc/System.xml,
1932           DocTest/en.expected.importslashdoc/System/Environment.xml,
1933           DocTest/en.expected.importslashdoc/System/Environment+SpecialFolder.xml,
1934           DocTest/html.expected/index.html, DocTest/html.expected/System/index.html, 
1935           DocTest/html.expected/System/Environment.html,
1936           DocTest/html.expected/System/Environment+SpecialFolder.html:
1937           Added; update expected output for new tests.
1938
1939 2006-12-29  Jonathan Pryor  <jonpryor@vt.edu>
1940
1941         * monodocer.cs: `abstract sealed' classes are actually `static' classes.
1942
1943 2006-12-27  Jonathan Pryor  <jonpryor@vt.edu>
1944
1945         * monodocer.cs: Re-order the attributes in <Type/> elements so that the
1946           ordering is (somewhat) well defined.  This helps with `diff' output in
1947           ../class, as it prevents "false positives" when the attributes are
1948           re-ordered.  Fix CSharpFullMemberFormatter.GetTypeDeclaration() so that
1949           when handling C# builtin types (e.g. System.Byte) it uses the real name in
1950           the declaration instead of the C# keyword (`class byte' is wrong).
1951
1952 2006-12-26  Jonathan Pryor  <jonpryor@vt.edu>
1953
1954         * Makefile.am: Add check-monodocer-ignore_extra_docs test.
1955         * monodocer.cs: Fix -ignore_extra_docs.  Previously, it would just ignore
1956           "missing" types, but it would still remove "missing" members.
1957
1958 2006-12-26  Jonathan Pryor  <jonpryor@vt.edu>
1959
1960         * monodocer.cs: Don't insert internal attributes into the documentation.
1961         * DocTest-v1.cs: Add test for use of an internal attribute.
1962
1963 2006-12-21  Jonathan Pryor  <jonpryor@vt.edu>
1964
1965         * monodocer.cs: Don't include full namespace for System.* types.  *Do*
1966           include the full namespace for nested System types, e.g.
1967           System.Collections.IEnumerable.  This is what is currently in
1968           ../class/corlib/en, and making this change results in a smaller diff.
1969         * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1970           DocTest/en.expected/Mono.DocTest/UseLists.xml,
1971           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1972           DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
1973           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml, 
1974           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml:
1975           Update unit tests for above monodocer.cs change.
1976
1977 2006-12-21  Jonathan Pryor  <jonpryor@vt.edu>
1978
1979         * monodocer.cs: Don't include full namespace for System.* types.  This is
1980           what ECMA-335 CLILibraryTypes.xml does for C# declarations -- no
1981           namespaces within e.g. inheritance lists or parameter lists for the System
1982           namespace and namespaces nested within System.
1983           Remove unnecessary console output.
1984         * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1985           DocTest/en.expected/Mono.DocTest/UseLists.xml,
1986           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1987           DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
1988           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml, 
1989           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml:
1990           Update unit tests for above monodocer.cs change.
1991
1992 2006-12-21  Jonathan Pryor  <jonpryor@vt.edu>
1993
1994         * monodocer.cs: Make sure that the types we document are *really* public.
1995           For some reason public nested types of internal types are returned by
1996           Assembly.GetTypes(), e.g. ``internal class A { public class B {} }''
1997           These types shouldn't be documented.
1998         * DocTest-v1.cs: Add test case for above.
1999
2000 2006-12-21  Jonathan Pryor  <jonpryor@vt.edu>
2001
2002         * monodocer.cs: Add -ignore_extra_docs flag; when set, it will not rename
2003           .xml files for types not found to .xml.remove.  This is useful in ../class
2004           when we're processing assemblies multiple times for the 1.0 & 2.0
2005           profiles, as when processing the 1.0 profile we'll be "missing" the 2.0
2006           types, and we don't want those to be renamed.
2007
2008 2006-12-21  Jonathan Pryor  <jonpryor@vt.edu>
2009
2010         * Makefile.am: Add a monodocer1.exe target, which is a version of monodocer
2011           which runs under the 1.0 runtime.  This is necessary so that we can still
2012           generate/update docs for mscorlib.dll 1.0 (as only one mscorlib.dll can
2013           ever be loaded into a process).
2014         * monodocer.cs: Split out the .NET 2.0 functionality so that it can be built
2015           for both 1.0 and 2.0 runtimes.  1.0 support is controlled by the
2016           NET_1_0 define.
2017
2018 2006-12-20  Jonathan Pryor  <jonpryor@vt.edu>
2019
2020         * monodocer.cs: Don't try too hard in UpdateParameters().  Previously, if a
2021           the number of parameters a method accepted changed from > 1 to 1, the
2022           "easy" <param/> handling would (inadvertently?) change all <param/>s to have
2023           the @name of the method's single parameter -- so if you _had_ parameters
2024           A, B, and C but the method now only has D, then A, B, and C would all have
2025           their @name attribute changed to D.  Odd, but possibly acceptable...
2026           ...until we try to make sure that the <param/>s are in the right order, in
2027           which case we'll record the index of D as 0 (it's the 1st parameter), but
2028           find a parameter with a different index (the old B & C), causing us to
2029           reinsert the parameter to make sure it's in the proper order.  This 
2030           results in an infinite loop within System.Xml -- see Bugzilla #80331.
2031           It's safer to just ignore the extra parameters.
2032
2033 2006-12-07  Jonathan Pryor  <jonpryor@vt.edu>
2034
2035         * DocTest-v1.patch: Add an operator returning a generic parameter (triggers
2036           error fixed in monodocer.cs).
2037         * DocTest-v2.patch: Update (due to changes in DocTest-v1.cs).
2038         * monodocer.cs: CSharpFullMemberFormatter.AppendVisibility() needs to accept null 
2039           MethodBases (when called from GetEventDeclaration() and e.GetAddMethod()
2040           returns null); fix SlashDocMemberFormatter.GetMethodDeclaration() so that
2041           generic types can be the return value of methods.  These changes allow
2042           generation of documentation on Mono's 2.0 mscorlib.dll.
2043         * stylesheet.xsl: Use GetParameterType() to emit the return type of
2044           explicit/implicit operators, as they can be/use generic arguments.
2045         * DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
2046           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
2047           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Del.xml,
2048           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
2049           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html:
2050           Flush to match current output.
2051
2052 2006-11-22  Jonathan Pryor  <jonpryor@vt.edu>
2053
2054         * monodocer.cs: Don't generate documentation/prototypes for non-public 
2055           property get/set accessors.  Patch from Ivan N. Zlatev.
2056
2057 2006-11-01  Jonathan Pryor  <jonpryor@vt.edu>
2058
2059         * monodocer.cs: When importing -importslashdoc documentation, convert
2060           <seealso/> elements into <altmember/> elements (as the former is the
2061           recommended element within ECMA-334, while the latter is the actual
2062           element used for our ECMA documentation).
2063         * DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml: Flush.
2064
2065 2006-10-27  Jonathan Pryor  <jonpryor@vt.edu>
2066
2067         * stylesheet.xsl: Generate more correct string id's for "id" attribute 
2068           values, so that string ids match the output of CSC.EXE 2.0.  Changes:
2069           append ``N instead of `N for generic methods, and use the correct 0-based
2070           type parameter index, not a 1-based index.
2071         * DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
2072           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
2073           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
2074           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
2075           DocTest/html.expected/Mono.DocTest/UseLists.html: Flush.
2076
2077 2006-10-24  Jonathan Pryor  <jonpryor@vt.edu>
2078
2079         * DocTest-v1.cs: Add /doc comments (for use with `make
2080           check-monodocer-importslashdoc`).
2081         * DocTest-v2.patch: Update (due to changes in DocTest-v1.cs).
2082         * Makefile.am: Add check-monodocer-importslashdoc,
2083           check-monodocer-importslashdoc-update targets.
2084         * monodocer.cs: Fix -importslashdoc.  Massively refactor generation of
2085           strings from MemberInfos (Type, MethodInfo, etc.) so that commonalities
2086           between DocType, C#, and /doc string IDs can be shared and easily
2087           customized (as opposed to dealing with the > 100 line FillDocTypeName()
2088           method, which was already too complex).
2089         * DocTest/en.expected.importslashdoc/index.xml,
2090           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic.xml,
2091           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
2092           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
2093           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
2094           DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
2095           DocTest/en.expected.importslashdoc/Mono.DocTest.xml,
2096           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
2097           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Del.xml, 
2098           DocTest/en.expected.importslashdoc/Mono.DocTest/DocValueType.xml,
2099           DocTest/en.expected.importslashdoc/Mono.DocTest/IProcess.xml,
2100           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass.xml,
2101           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
2102           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml,
2103           DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
2104           DocTest/en.expected.importslashdoc/Mono.DocTest/Color.xml,
2105           DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Direction.xml:
2106           Added; expected output for `make check-monodocer-importslashdoc'.
2107
2108 2006-10-19  Jonathan Pryor  <jonpryor@vt.edu>
2109
2110         * Makefile.am: Change check-monodocer target to add a `monodocer -namespace'
2111           check, as `-namespace' would use a bad filename generation algorithm.
2112         * monodocer.cs: Don't use Type.Name (or equivalent) to generate filenames,
2113           but use GetTypeFileName(), so that Foo<T> only tries to open the file
2114           Foo`1, instead of the file Foo<T> which (1) is wrong, we never generate
2115           filenames like that, and (2) fails horribly on Win32 (as '<' and '>' are
2116           invalid path characters).
2117
2118 2006-10-19  Jonathan Pryor  <jonpryor@vt.edu>
2119
2120         * monodocer.cs: Sort member ordering so that when the order of members
2121           returned by Type.GetMembers() changes (as it did between 1.1.17 and
2122           1.1.18) the order of the documentation members won't change (leading to
2123           "errors" in the regression tests).
2124         * DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
2125           DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
2126           DocTest/en.expected/Mono.DocTest/Widget.xml,
2127           DocTest/en.expected/Mono.DocTest/DocValueType.xml,
2128           DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
2129           DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
2130           DocTest/en.expected/Mono.DocTest/UseLists.xml,
2131           DocTest/en.expected/Mono.DocTest/Color.xml,
2132           DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
2133           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
2134           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
2135           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
2136           DocTest/en.expected.since/Mono.DocTest/DocValueType.xml,
2137           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass.xml,
2138           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
2139           DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
2140           DocTest/en.expected.since/Mono.DocTest/Color.xml,
2141           DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
2142           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
2143           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
2144           DocTest/html.expected/Mono.DocTest/Color.html,
2145           DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
2146           DocTest/html.expected/Mono.DocTest/Widget.html,
2147           DocTest/html.expected/Mono.DocTest/DocValueType.html,
2148           DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
2149           DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
2150           DocTest/html.expected/Mono.DocTest/UseLists.html: Flush.  Since monodocer
2151           generates a different member ordering, *everything* gets a different
2152           ordering.  <sigh>
2153
2154 2006-10-12  Jonathan Pryor  <jonpryor@vt.edu>
2155
2156         * monodocer.cs: Add support for inserting Docs/since element.  This element
2157           is *only* inserted for NEW type/members, never updated, and is only 
2158           inserted if the -since:SINCE command-line argument is provided.
2159         * DocTest.cs: Renamed to DocTest-v1.cs.
2160         * Makefile.am: Add DocTest.dll-v1, DocTest.dll-v2, check-monodocer-since,
2161           check-monodocer-since-update, check targets.
2162         * DocTest-v2.patch: Patch file applied to DocTest-v1.cs to get DocTest.dll
2163           version 2.0.0.0.
2164         * DocTest/en.expected.since/index.xml,
2165           DocTest/en.expected.since/Mono.DocTest.xml,
2166           DocTest/en.expected.since/Mono.DocTest/AddedType.xml,
2167           DocTest/en.expected.since/Mono.DocTest/Color.xml,
2168           DocTest/en.expected.since/Mono.DocTest/DocValueType.xml,
2169           DocTest/en.expected.since/Mono.DocTest/IProcess.xml,
2170           DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
2171           DocTest/en.expected.since/Mono.DocTest/Widget.xml,
2172           DocTest/en.expected.since/Mono.DocTest/Widget+Del.xml,
2173           DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
2174           DocTest/en.expected.since/Mono.DocTest/Widget+IMenuItem.xml,
2175           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass.xml,
2176           DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
2177           DocTest/en.expected.since/Mono.DocTest.Generic.xml,
2178           DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
2179           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
2180           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
2181           DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml: Added; 
2182           expected output for DocTest.dll v2.0.0.0.
2183
2184 2006-10-11  Jonathan Pryor  <jonpryor@vt.edu>
2185
2186         * stylesheet.xsl: Add /Members/Docs node in GetInheritedMembers() so that
2187           GetLinkId() sees typeparam elements for type replacement in parameters for 
2188           members of base types.  Make sure that "simple" type arguments are 
2189           replaced, e.g. T --> `1.
2190           TODO: figure out type replacements for nested types.
2191         * DocTest/html.expected/Mono.DocTest/UseLists.html, 
2192           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
2193           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
2194           DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
2195           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Change link id's
2196           and targets for proper type replacements within parameters.
2197
2198 2006-10-10  Joshua Tauberer  <jit@occams.info>
2199
2200         * monodocer.cs: Fixed a bug in WriteElement that would put
2201           nodes in the wrong place if some node in the path already
2202           existed.
2203           - To prevent TypeParameters from always being put at the
2204           end on an update, don't delete that node in an update, just
2205           clear it.
2206           - Update the DisplayName attribute in index.xml on doc updates.
2207         * DocTest/*: Updated for the DisplayName fix, and also put
2208           into a pristine state (I had committed them as an update,
2209           which put the TypeParameters block at the end of the files.)
2210
2211 2006-10-09  Joshua Tauberer  <jit@occams.info>
2212
2213         * monodocer.cs: Update a type's name attributes during an update
2214           because generic argument names may change even if filename
2215           hasn't.
2216           - Added a Type/TypeParameters section which includes type
2217           parameters that come from the declaring type, for nested types.
2218           - When inheriting from a generic type, added a BaseTypeArguments
2219           section which maps type parameters on the base type's type
2220           definition to types instantiating those parameters.  i.e.:
2221             class X<T> { }
2222             class Y<U> : X<U> { }
2223           Y gets a mapping in its BaseType node from T to U.
2224         * stylesheet.xsl: Don't attempt to link to a generic type
2225           parameter, just display it in italics.  And when displaying
2226           inherited members, try to replace generic type parameters
2227           in the base type with the types that have instantiated them
2228           in this type.
2229         * The DocTests are updated to show off these things.
2230
2231 2006-10-08  Joshua Tauberer  <jit@occams.info>
2232
2233         * monodocer.cs: Track which members have been seen in the XML file
2234           not by putting MemberInfos into a hashtable, which seems to
2235           not always work right, but instead by their (string) signature.
2236           - Get custom attribute data with the new 2.0 CustomAttributeData
2237           classes, so that we can reconstruct what the constructor actually
2238           looked like.
2239           - Hide System.Runtime.InteropServices.Out attributes since it is
2240           fake and already in the RefType XML attribute.
2241           - Structs weren't getting their interfaces listed in their C# type
2242           signatures.
2243         * monodocs2html.cs: Don't override the default XSLT URI resolver anymore.
2244         * stylesheet.xsl: Get the index.xml document at the start while we're
2245           sure we have the right base path (the XML document being transformed).
2246           - Display inherited members in a type's member list when the base type
2247           is documented in the same monodocer document set.
2248           - Make sure there's a space between a method's parameters and return
2249           value type in the member list.
2250         * DocTest: Updated to test these things.
2251
2252 2006-10-06  Jonathan Pryor  <jonpryor@vt.edu>
2253
2254         * overview.xsl: When generating a Namespace/index.html file, we should
2255           insert the namespace remarks as well.  (This *should* have been done, but
2256           the remarks selection was relative to '.', not to the provided $ns. :-(
2257         * DocTest/html.expected/Mono.DocTest.Generic/index.html,
2258           DocTest/html.expected/Mono.DocTest/index.html: Flush.
2259
2260 2006-10-06  Jonathan Pryor  <jonpryor@vt.edu>
2261
2262         * Makefile.am: Fix -update targets so they don't delete .svn/*.
2263         * monodocer.cs: Don't key off of DisplayName to insert new <Type> elements,
2264           as this will result in updating all existing documentation (rather silly).
2265           Key off of Name instead, and only create a DisplayName attribute if it
2266           differs from Name.
2267         * DocTest/en.expected/index.xml: Update to latest monodocer output.
2268         * monodocs2html.cs: If DisplayName doesn't exist, fall back to 
2269           Name ("legacy" behavior, now made current due to change in monodocer.cs).
2270         * stylesheet.xsl: For "Name [Generic ] [MemberType]" descriptions, make the
2271           2nd space part of "Generic".  Otherwise we get double spaces for
2272           non-generic members, e.g. "Name  [MemberType]".
2273         * overview.xsl: Fallback to @Name if @DisplayName doesn't exist.
2274         * DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
2275           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
2276           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
2277           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
2278           DocTest/html.expected/Mono.DocTest/Widget.html,
2279           DocTest/html.expected/Mono.DocTest/DocValueType.html,
2280           DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
2281           DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
2282           DocTest/html.expected/Mono.DocTest/UseLists.html: Update to latest
2283           monodocs2html output.
2284
2285 2006-10-06  Jonathan Pryor  <jonpryor@vt.edu>
2286
2287         * Makefile.am: Build with gmcs; add `-debug' to compile lines; add
2288           DocTest.dll, check-monodocer, check-monodocer-update, check-monodocs2html/
2289           check-monodocs2html-update targets for unit tests.
2290         * monodocer.cs: Major overhaul for Generics support.  Documentation
2291           generated follows the pattern used in CLILibraryTypes.xml from ECMA-335.
2292           - Remove some warnings about unused variables.
2293           - Don't assume that Type.FullName is always what we want, but instead
2294             build a C# typename from the Type information.  This is needed to nicely
2295             deal with generics, as the FullName for Foo<int> would be
2296             Foo[[System.Int32, mscorlib]], while we really want Foo<int>.
2297           - For index.xml files, insert a File attribute, as the Type name won't
2298             match the filename for generic types (Foo<T> is the file Foo`1.xml).
2299           - For GetMember(), remove generic parameters before using Type.GetMember()
2300             with the member name.
2301           - Code refactoring so that <param/> and <typeparam/> generation & updating
2302             is consistent.
2303           - Properly use `this' for method name on indexers.
2304         * monodocs2html.cs: Add Generics support -- use the @File attribute instead
2305           of assuming that @Name contains the proper filename.
2306         * defaulttemplate.xsl: Use <h1> instead of <div>; add CSS for
2307           `.InnerSignatureTable tr' and `.TypePermissionTable tr'.
2308         * overview.xsl: If there are fewer than $max-types (20) types in the
2309           assembly, show them all in the top-level index.html, no matter how many
2310           namespaces are present.  Otherwise, provide links to the
2311           Namespace/index.html files, so that things don't suddenly look different
2312           as soon as you go from 1 namespace to > 1 namespaces in an assembly.
2313           Use <h2/> instead of <div/>.
2314         * stylesheet.xsl: Major overhaul for Generics support, some re-indentation.
2315           - Use <h2/>...<h4/> instead of <div/>
2316           - Allow output to validate against XHTML.
2317           - Don't use generate-id(), but instead generate member ID's manually so
2318             that we can properly refer to them from outside the current page.
2319           - Add support for <see cref=""/> translation to non-types --
2320             constructors, methods, properties, fields, events.  These can refer to
2321             members from a different file, since generate-id() is no longer used.
2322                 - Update the mono-docs site so links to System.* types work.
2323                 - Add support for additional Mono.* namespaces on the mono-docs site.
2324           - Properly display C# indexers ("type this [params]", not 
2325             "type Item [params]").
2326           - Generate documentation for <typeparam/> elements.
2327         * DocTest.cs: Added; Source for DocTest.dll, used by unit tests.
2328         * DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
2329           DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
2330           DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
2331           DocTest/html.expected/Mono.DocTest/DocValueType.html,
2332           DocTest/html.expected/Mono.DocTest/IProcess.html,
2333           DocTest/html.expected/Mono.DocTest/index.html,
2334           DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
2335           DocTest/html.expected/Mono.DocTest/Color.html,
2336           DocTest/html.expected/Mono.DocTest/Widget+Del.html,
2337           DocTest/html.expected/Mono.DocTest/UseLists.html,
2338           DocTest/html.expected/Mono.DocTest/Widget.html,
2339           DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
2340           DocTest/html.expected/Mono.DocTest.Generic/index.html,
2341           DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
2342           DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
2343           DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
2344           DocTest/html.expected/index.html,
2345           DocTest/en.expected/Mono.DocTest.Generic.xml,
2346           DocTest/en.expected/Mono.DocTest/Widget+IMenuItem.xml,
2347           DocTest/en.expected/Mono.DocTest/IProcess.xml,
2348           DocTest/en.expected/Mono.DocTest/Widget.xml,
2349           DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
2350           DocTest/en.expected/Mono.DocTest/DocValueType.xml,
2351           DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
2352           DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
2353           DocTest/en.expected/Mono.DocTest/Widget+Del.xml,
2354           DocTest/en.expected/Mono.DocTest/UseLists.xml,
2355           DocTest/en.expected/Mono.DocTest/Color.xml,
2356           DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
2357           DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
2358           DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
2359           DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
2360           DocTest/en.expected/index.xml, DocTest/en.expected/Mono.DocTest.xml:
2361           Added.  Expected output for monodocer (en.expected) and 
2362           monodocs2html (html.expected).
2363
2364 2006-04-01  Joshua Tauberer  <tauberer@for.net>
2365
2366         * monodocs2html.cs: Skip files that are missing.
2367
2368 2006-03-09  Joshua Tauberer  <tauberer@for.net>
2369
2370         * monodocer.cs: Reverted all of the Cecil changes.  Ah well.
2371
2372 2006-03-04  Joshua Tauberer  <tauberer@for.net>
2373
2374         * monodocer.cs: Using Cecil now!  (Some Cecil fixes
2375           need to be committed.)
2376
2377 2006-03-03  Joshua Tauberer  <tauberer@for.net>
2378
2379         * monodocer.cs: Don't change up whitespace unless user says so.
2380           That makes it hard to see differences against svn.
2381
2382 2006-01-12  Jonathan Pryor  <jonpryor@vt.edu>
2383
2384         * bsd-man-to-ecma.pl, bsd-man-to-exception.pl: Added; scripts to help
2385           convert BSD man pages into ECMA XML formats.  Run `perldoc PROGRAM` for
2386           program documentation.
2387         * Makefile.am: Add bsd-man-to-ecma.pl and bsd-man-to-exception.pl to
2388           EXTRA_DIST.
2389
2390 2005-08-11  Dan Winship  <danw@novell.com>
2391
2392         * monodocer.cs: Don't preserve whitespace when reading the old
2393         doc, and don't add any whitespace when creating the new doc. Just
2394         let the XmlTextWriter handle indentation and it will all just
2395         work.
2396
2397 2005-08-03  Atsushi Enomoto  <atsushi@ximian.com>
2398
2399         * monodocer.cs : update name attribute in paramref elements in sync
2400           with that of param element.
2401
2402 2005-07-09  Joshua Tauberer <tauberer@for.net>
2403
2404         From Rodolfo Campero <rodolfo.campero@gmail.com>
2405         (more or less):
2406         * monodocs2slashdoc.cs: Updated for changes in
2407         index.xml for documenting multiple assemblies.
2408         This app now writes out XML files for each assembly
2409         as well as NamespaceSummaries.xml to the working
2410         directory.
2411
2412 2005-06-12  Joshua Tauberer  <tauberer@for.net>
2413
2414         * monodocer.cs: Added --importslashdoc option to
2415           import the contents of /doc-generated xml docs
2416           into the generated files.
2417
2418 2005-06-09  Joshua Tauberer  <tauberer@for.net>
2419
2420         * monodocer.cs : When documenting a single assembly,
2421           default the Title in index.xml to the name of the
2422           assembly.
2423
2424 2005-06-04  Eric Butler  <eric@extremeboredom.net>
2425
2426         (copied from ChangeLog in parent directory)
2427     * monodocer.cs
2428                 - Now exits with an exit code of 1 in the event of an error
2429                 - Added '-name' command line argument
2430                 - Use above argument for <Title> element
2431
2432 2005-06-01  Joshua Tauberer <tauberer@for.net>
2433
2434         * monodocer.cs : Old index.xml files need to have new nodes
2435           created for multiple assemblies, and the old Assembly and
2436           Attributes nodes removed.  Added a Title element for 2html.
2437           
2438         * overview.xsl : Revised monodocs2html to use the Title
2439           element in index.xml for page titles, rather than the
2440           assembly name, which isn't available anymore since there
2441           may be more than one assembly.
2442
2443 2005-05-23  Mike Kestner <mkestner@novell.com>
2444
2445         * monodocer.cs : add multiple assembly updating. 
2446
2447 2005-05-09  Joshua Tauberer <tauberer@for.net>
2448
2449         * Thanks for pushing me to use a ChangeLog.
2450         * Disallow documenting types in the root namespace (type.Namespace ==
2451           null).
2452         * When a <code> tag has a 'src' attribute, monodocer will replace
2453           the contents of the element with the text in the indicated file.
2454           the path is relative to the path given as the --path option.
2455         * Properties that have different access modifiers on their accessors
2456           are now given signatures that reflect that.  (But Monodoc doesn't
2457           recognize this properly.  A format change is needed.)
2458         * monodocs2html: Create the destination directory if it doesn't exist.
2459
2460 2005-01-29  Jonathan Pryor <jonpryor@vt.edu>
2461
2462         * ChangeLog: Added
2463         * monodocer.cs (GetTypeFileName): Add check for type.Namespace == null.
2464           Fixes NullReferenceException when trying to update Mono.Posix.dll.
2465