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