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