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