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