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