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