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