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