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