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