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