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