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