1 2008-10-16 Jonathan Pryor <jpryor@novell.com>
3 Migration from monodoc/tools to mcs/tools/mdoc...
5 * . (svn:ignore), Test (svn:ignore): Ignore generated files.
6 * assembler.cs, mdoc.cs, monodocer.cs, monodocs2html.cs,
7 monodocs2slashdoc.cs, normalize.cs, validate.cs, XhtmlWriter.cs:
8 Move to Mono.Documentation.
9 * defaulttemplate.xsl, overview.xsl, stylesheet.xsl: Moved to
11 * DocTest: Moved to Test.
12 * DocTest-v1.cs, DocTest-v2.patch, TestEcmaDocs.xml: Moved to Test.
13 * mdoc.exe.sources: Added; mcs include file to build mdoc.exe.
14 * Makefile: Added; build mdoc.exe, monodocer1.exe, and unit tests for
16 * Mono.Documentation/assembler.cs, Mono.Documentation/normalize.cs,
17 Mono.Documentation/mdoc.cs, Mono.Documentation/monodocs2slashdoc.cs,
18 Mono.Documentation/monodocs2html.cs, Mono.Documentation/validate.cs:
19 Modify command line handling to remove Mono.GetOptions dependency.
20 * Test/DocTest-v1.cs: Update //code/@src attribute due to changed paths.
21 * Test/msxdoc-expected.importslashdoc.xml,
22 * Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml: Flush
23 due to above DocTest-v1.cs change.
25 2008-10-16 Jonathan Pryor <jpryor@novell.com>
27 * monodocer.cs: Fixup sorting of explicitly-implement generic members.
28 This keeps members from "bouncing around" in random orders when
29 updating documentation...
30 * DocTest-v1.cs: Explicitly implement some generic interface members on
31 MyList<A,B> to provoke the bug fixed above.
32 Dictionary<K,V>.ValueCollection in mscorlib was the original
34 * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
35 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
36 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
37 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
38 DocTest/msxdoc-expected.importslashdoc.xml: Flush.
40 2008-10-15 Jonathan Pryor <jpryor@novell.com>
42 * monodocer.cs: Ignore some attributes, because they're ~meaningless
43 for documentation purposes (e.g. who cares if we need attributes to
44 represent decimal constants, or that a method shouldn't be stepped
45 into with the debugger, or...).
46 * DocTest/en.expected/index.xml,
47 * DocTest/en.expected/Mono.DocTest/Widget.xml,
48 * DocTest/en.expected/Mono.DocTest.Generic/Extensions.xml,
49 * DocTest/en.expected.since/index.xml,
50 * DocTest/en.expected.since/Mono.DocTest/Widget.xml,
51 * DocTest/en.expected.since/Mono.DocTest.Generic/Extensions.xml,
52 * DocTest/html.expected/Mono.DocTest/Widget.html,
53 * DocTest/html.expected/Mono.DocTest.Generic/Extensions.html,
54 * DocTest/en.expected.importslashdoc/index.xml,
55 * DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
56 * DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml:
59 2008-10-05 Jonathan Pryor <jpryor@novell.com>
61 * monodocer.cs: When sorting <Member/> elements elements, take generic
62 type parameters into account, so that methods with the same number
63 of type parameters are sorted together, instead of strewn across the
64 file according to the full //Member/@MemberName comparison.
65 * DocTest/**: Flush (and wtf is with the [DebuggerHidden] appearance?).
67 2008-09-19 Jonathan Pryor <jpryor@novell.com>
69 * DocTest-v1.cs: Add a member with a "deeply nested" generic parameter
70 list, so test the mdoc-html-utils.xsl fix.
71 * DocTest/msxdoc-expected.importslashdoc.xml,
72 DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
73 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
74 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
75 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Flush.
77 2008-09-16 Jonathan Pryor <jpryor@novell.com>
79 * monodocer.cs: FieldInfo.GetValue() may throw, particularly if getting
80 the value of a public+static+readonly field, and the constructor for
81 the type of said field throws an exception (though DocTest-v1.cs has
82 a similar scenario). This is bad, as it prevents monodocer from
83 completing its work. Found by Dan Morgan.
84 * DocTest-v1.cs: Create a `public static readonly` field that will
85 generate an exception from the class constructor.
86 * DocTest/en.expected/Mono.DocTest/Widget.xml,
87 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
88 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
89 DocTest/html.expected/Mono.DocTest/Widget.html,
90 DocTest/msxdoc-expected.importslashdoc.xml: Flush.
92 2008-09-16 Jonathan Pryor <jpryor@novell.com>
94 * monodocer.cs: Allow #region/#endregion parsing to cope with blank lines.
96 2008-09-15 Jonathan Pryor <jpryor@novell.com>
98 * monodocer.cs: Strip off leading whitespace up to the indent level that
99 #region was found. This allows controlling how much leading whitespace is
100 preserved within the documentation (as too much whitespace will cause the
101 code to be indented significantly when rendered to e.g. html).
102 * DocTest-v1.cs: Indent the #region, to test the above.
103 * DocTest/msxdoc-expected.importslashdoc.xml,
104 DocTest/html.expected/Mono.DocTest/DocAttribute.html,
105 DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml:
108 2008-09-15 Jonathan Pryor <jpryor@novell.com>
110 * monodocer.cs: Allow //code/@src to include an anchor, in which the
111 anchor specifies a #region to include, instead of including the
112 entire document. This is currently limited to C# code. For example,
113 `<code lang="C#" src="foo.cs#Text"/>` would look insert all text
114 between `#region Text` and `#endregion` within foo.cs.
115 * DocTest-v1.cs: Add a #region, <code/> block to test the above.
116 * DocTest/msxdoc-expected.importslashdoc.xml,
117 DocTest/html.expected/Mono.DocTest/DocAttribute.html,
118 DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml:
121 2008-09-11 Jonathan Pryor <jpryor@novell.com>
123 * stylesheet.xsl: Post-process $cref so that we can use "nice"
124 //see/@cref strings that can actually refer to the right member.
125 For example, `<see cref="P:Foo.Bar{T}.Baz"/>` is needed to get a
126 nicely rendered "Foo.Bar<T>.Baz" link text, but previously it
127 wouldn't link to anything -- you'd need
128 `<see cref="P:Foo.Bar`1.Baz"/>` to get a functioning link for HTML
129 output. This now works.
131 2008-09-04 Jonathan Pryor <jpryor@novell.com>
133 * monodocer.cs: You can't use FieldInfo.GetValue() on generic types.
134 * DocTestv1.cs: Add checks for static fields on generic types.
137 2008-09-04 Jonathan Pryor <jpryor@novell.com>
139 * monodocer.cs: Clear out existing <value/> elements when import XML
140 documentation which also contains a <value/> element. (This keeps us from
141 getting multiple duplicate <value/> elements every time we update while
144 2008-08-31 Jonathan Pryor <jpryor@novell.com>
146 * DocTest-v1.cs: Update XML doc comment to mention correct cref.
147 * monodocer.cs: Further fixup XML documentation import and import the actual
148 *contents* of the <exception/> element (oops). Add support for importing
149 XML documentation for explicitly implemented interface members (CSC-style,
152 2008-08-27 Jonathan Pryor <jpryor@novell.com>
154 * monodocer.cs: Fixup XML documentation import to be more consistent with
155 ECMA XML import. In particular, this fixes <exception/> import so that
156 the same element isn't imported multiple times, leading to duplicate
157 <exception/> elements the more often monodocer is run.
158 * DocTest/msxdoc-expected.importslashdoc.xml,
159 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml: Flush.
160 Changes order of imported XML to reflect the original element order.
162 2008-08-11 Jonathan Pryor <jpryor@novell.com>
164 * monodocer.cs: Build fix (gmcs doesn't like using-alias-directives to
165 private nested types anymore).
167 2008-05-06 Wade Berrier <wberrier@novell.com>
169 * Makefile.am: Add Options.cs to EXTRA_DIST
171 2008-04-22 Jonathan Pryor <jpryor@novell.com>
173 * DocTest/en.expected/Mono.DocTest.Generic/Func`2.xml,
174 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Func`2.xml,
175 DocTest/en.expected.since/Mono.DocTest.Generic/Func`2.xml,
176 DocTest/html.expected/Mono.DocTest.Generic/Func`2.html: Flush: n377596
177 got fixed, so we can now retrieve custom attributes on all generic type
180 2008-04-15 Jonathan Pryor <jpryor@novell.com>
182 * . (svn:ignore): ignore generated files.
183 * Makefile.am: Add XmlDocUtils.cs to the build. Add unit tests for
184 monodocs2slashdoc; other monodocs2slashdoc changes.
185 * mdoc.cs: Update the arguments accepted by monodocs2slashdoc.
186 * monodocs2slashdoc.cs: Move DocUtils class into ../engine/XmlDocUtils.cs.
187 Add support for a -o parameter which contains all output (if specified).
189 - Add special support for extension methods -- index.xml now contains an
190 /Overview/ExtensionMethods element which contains ExtensionMethod
191 elements for all extension methods within all assemblies processed.
192 - The <ExtensionMethod/> element contains a subset of the <Member/> of the
193 actual extension method (and thus will contain a useful subset of the
194 documentation the source <Member/> contains), along with a <Targets/>
195 element describing all types the extension method applies to.
196 - Consequently, if you edit the documentation of your extension method,
197 you need to re-run monodocer to get the newly written documentation
198 inserted into index.xml.
199 - //Parameter/@RefType is "overloaded" to contain the "this" modifier of
200 extension methods (as this was easiest within mdoc-html-utils.xsl).
201 - Within CSharpMemberFormatter, insert generic type constraints for
202 methods. (Previously constraints were only done on types due to an
204 * monodocs2html.cs: Before rendering documentation via the XSLT, insert any
205 extension methods applicable to the type so that the extension methods
207 * DocTest-v1.cs: Add a class providing extension methods.
208 * stylesheet.xsl: Extension methods shouldn't be documented within the type,
209 just declared (and linked to the actual type's documentation).
210 * DocTest/msxdoc-expected.importslashdoc.xml: Added; expected output for
211 monodocs2slashdoc unit test.
212 * DocTest/en.expected/index.xml,
213 DocTest/en.expected/Mono.DocTest/UseLists.xml,
214 DocTest/en.expected/Mono.DocTest.Generic/Extensions.xml,
215 DocTest/en.expected/Mono.DocTest.Generic/Func`2.xml,
216 DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
217 DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
218 DocTest/en.expected.since/index.xml,
219 DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
220 DocTest/en.expected.since/Mono.DocTest.Generic/Extensions.xml,
221 DocTest/en.expected.since/Mono.DocTest.Generic/Func`2.xml,
222 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
223 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
224 DocTest/en.expected.importslashdoc/index.xml,
225 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
226 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml,
227 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Func`2.xml,
228 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
229 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
230 DocTest/html.expected/index.html,
231 DocTest/html.expected/NoNamespace.html,
232 DocTest/html.expected/Mono.DocTest/DocAttribute.html,
233 DocTest/html.expected/Mono.DocTest/DocValueType.html,
234 DocTest/html.expected/Mono.DocTest/IProcess.html,
235 DocTest/html.expected/Mono.DocTest/UseLists.html,
236 DocTest/html.expected/Mono.DocTest/Widget.html,
237 DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
238 DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
239 DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
240 DocTest/html.expected/Mono.DocTest.Generic/index.html,
241 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
242 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.html,
243 DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
244 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
245 DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
246 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
247 DocTest/html.expected/System/Array.html: Flush; also contains additional
248 <Attributes/> elements on generic type parameters due to a mono fix.
250 2008-04-09 Jonathan Pryor <jpryor@novell.com>
252 * DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html: Fix the
253 System.EventHandler link.
255 2008-04-08 Jonathan Pryor <jpryor@novell.com>
257 * DocTest-v1.cs: Add more attributes, generic constraints to further test
259 * Makefile.am: Add check-md-html-dir target to help with testing
260 monodocs2html w/o re-generating the DocTest/en.actual directory.
261 * monodocer.cs: Lots of changes:
262 - Format change: /Type/TypeParameters/TypeParameter doesn't store the type
263 parameter name as it's value (e.g. <TypeParameter>A</TypeParameter>),
264 but instead stores the name as an attribute (e.g.
265 <TypeParameter Name="A" />). This was done as Generic Arguments can
266 contain both constraints and attributes which were previously
268 - Record constraints under a //TypeParameter/Constraints element, and
269 attributes under a //TypeParameter/Attributes element.
270 - Generic arguments for methods are now recorded in a
271 /Type/Members/Member/TypeParameters element, with the same schema as
272 type-level arguments.
273 - Properly insert the [return:...] attributes on delegates.
274 - Modify CSharpFullMemberFormatter to generate generic argument
275 constraints on type and member signatures.
276 - Note: attributes are currently not inserted due to n#322399.
277 * stylesheet.xsl: Properly escape generic type names so that all anchors
278 are modeled after ECMA-334 CREFs, e.g. T:Foo.Bar`1, not T:Foo.Bar<T>.
279 * DocTest/en.expected/index.xml,
280 DocTest/en.expected/Mono.DocTest/UseLists.xml,
281 DocTest/en.expected/Mono.DocTest/Widget.xml,
282 DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
283 DocTest/en.expected/Mono.DocTest.Generic/Func`2.xml,
284 DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
285 DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
286 DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
287 DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
288 DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
289 DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
290 DocTest/en.expected/System/Action`1.xml,
291 DocTest/en.expected/System/Array.xml,
292 DocTest/en.expected.since/index.xml,
293 DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
294 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
295 DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
296 DocTest/en.expected.since/Mono.DocTest.Generic/Func`2.xml,
297 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
298 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
299 DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
300 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
301 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
302 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
303 DocTest/en.expected.since/System/Action`1.xml,
304 DocTest/en.expected.since/System/Array.xml,
305 DocTest/en.expected.importecmadoc/System/Action`1.xml,
306 DocTest/en.expected.importecmadoc/System/Array.xml,
307 DocTest/en.expected.importslashdoc/System/Array.xml,
308 DocTest/en.expected.importslashdoc/System/Action`1.xml,
309 DocTest/en.expected.importslashdoc/index.xml,
310 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
311 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
312 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
313 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
314 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
315 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/Func`2.xml,
316 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
317 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
318 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
319 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
320 DocTest/html.expected/index.html,
321 DocTest/html.expected/Mono.DocTest/Widget.html,
322 DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
323 DocTest/html.expected/Mono.DocTest/UseLists.html,
324 DocTest/html.expected/Mono.DocTest.Generic/index.html,
325 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
326 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.html,
327 DocTest/html.expected/Mono.DocTest.Generic/Func`2.html,
328 DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
329 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
330 DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
331 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
332 DocTest/html.expected/System/Action`1.html,
333 DocTest/html.expected/System/Array.html: Flush.
335 2008-04-04 Jonathan Pryor <jpryor@novell.com>
337 * DocTest-v1.cs: Add nested generic type for testing.
338 * DocTest/en.expected/index.xml,
339 DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
340 DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
341 DocTest/en.expected.importslashdoc/index.xml,
342 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
343 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
344 DocTest/en.expected.since/index.xml,
345 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.xml,
346 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
347 DocTest/html.expected/index.html,
348 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1+FooEventArgs.html,
349 DocTest/html.expected/Mono.DocTest.Generic/index.html,
350 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html: Flush.
352 2008-03-31 Jonathan Pryor <jpryor@novell.com>
354 * DocTest-v1.cs: Add a member returning an IEnumerator<int[]> to test n375291.
355 * DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
356 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
357 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
358 DocTest/html.expected/Mono.DocTest/Widget.html,
359 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html: Flush.
361 2008-03-26 Jonathan Pryor <jpryor@novell.com>
363 * DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Flush due to
364 ../engine/mdoc-html-utils.xsl changes with migration of explicitly
365 implemented interface members to a separate section.
367 2008-03-26 Jonathan Pryor <jpryor@novell.com>
369 * DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
370 DocTest/html.expected/Mono.DocTest/UseLists.html: Flush due to
371 ../engine/mdoc-html-utils.xsl changes with s/System.Collections.Generic//.
374 2008-03-26 Jonathan Pryor <jpryor@novell.com>
376 * Makefile.am: Import docs for System.Action<T>.
377 * DocTest-v1.cs: Add System.Action<T> to test generic type importing.
378 * monodocer.cs: Misc. fixes:
379 - Properly lookup generic types when importing ECMA docs, so that e.g.
380 System.Collections.Generic.List<T> docs can be imported.
381 - Fix member duplicate checking so that we don't get an exception due to
382 seenmembers.Add(sig, "") for duplicate sigs.
383 - Fix UpdateParameters() to handle updating <param/> nodes on delegates.
384 * TestEcmaDocs.xml: Add docs for System.Action<T>.
385 * DocTest/en.expected/index.xml, DocTest/en.expected/System/Action`1.xml,
386 DocTest/en.expected.importecmadoc/System/Action`1.xml,
387 DocTest/en.expected.importslashdoc/index.xml,
388 DocTest/en.expected.importslashdoc/System/Action`1.xml,
389 DocTest/en.expected.since/index.xml,
390 DocTest/en.expected.since/System/Action`1.xml,
391 DocTest/html.expected/index.html, DocTest/html.expected/System/index.html,
392 DocTest/html.expected/System/Action`1.html: Flush.
394 2008-03-25 Jonathan Pryor <jpryor@novell.com>
396 * stylesheet.xsl: Implement CreateEditLink() for mdoc-html-utils.xsl.
398 2008-03-24 Jonathan Pryor <jpryor@novell.com>
400 * stylesheet.xsl: Implement CreateExpandedToggle() for
401 mdoc-sections-css.xsl.
403 2008-03-24 Jonathan Pryor <jpryor@novell.com>
405 * DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Flush due to
406 changes in ID string generation in ../engine/mdoc-html-utils.xsl.
408 2008-03-17 Jonathan Pryor <jpryor@novell.com>
410 * monodocer.cs: Modify index.xml so that there's a //Type/@Kind attribute.
411 This allows mkestner's doc engine to display the tree view (e.g. "Foo
412 Class") w/o loading the underlying Foo.xml file, improving start time.
413 * DocTest/en.expected/index.xml, DocTest/en.expected.since/index.xml,
414 DocTest/en.expected.importslashdoc/index.xml: Flush.
416 2008-03-15 Jonathan Pryor <jpryor@novell.com>
418 * monodocs2html.cs: Fix DumpTemplate() -- sending the output through an
419 intermediate XmlDocument seems to "corrupt" the file, such that any user
420 of the dumped file will get errors such as "Could not resolve named
421 template create-default-style."
423 2008-03-15 Jonathan Pryor <jpryor@novell.com>
425 * defaulttemplate.xsl: Cleanup (add/remove CSS properties, etc.).
426 * Makefile.am: monodocs2html needs to pull in resources from ../engine.
427 * monodocs2html.cs: Use ManifestResourceResolver so that .xsl files embedded
428 within the monodocs2html.exe assembly can refer to each other; use
429 XhtmlWriter so that certain XHTML elements are "closed", e.g. <br/>
430 instead of <br></br>.
431 * XhtmlWriter.cs: Added; XmlWriter subclass which generates nicer XHTML.
432 * stylesheet.xsl: *Major* refactor to share XSLT code with ../engine.
433 * DocTest/html.expected/index.html, DocTest/html.expected/NoNamespace.html,
434 DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
435 DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
436 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
437 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
438 DocTest/html.expected/Mono.DocTest.Generic/index.html,
439 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
440 DocTest/html.expected/Mono.DocTest/Color.html,
441 DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
442 DocTest/html.expected/Mono.DocTest/Widget.html,
443 DocTest/html.expected/Mono.DocTest/Widget+Del.html,
444 DocTest/html.expected/Mono.DocTest/DocValueType.html,
445 DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
446 DocTest/html.expected/Mono.DocTest/IProcess.html,
447 DocTest/html.expected/Mono.DocTest/index.html,
448 DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
449 DocTest/html.expected/Mono.DocTest/DocAttribute.html,
450 DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
451 DocTest/html.expected/Mono.DocTest/UseLists.html,
452 DocTest/html.expected/System/Environment+SpecialFolder.html,
453 DocTest/html.expected/System/Array.html,
454 DocTest/html.expected/System/Environment.html,
455 DocTest/html.expected/System/index.html,
456 DocTest/html.expected/System/AsyncCallback.html: Flush.
458 2008-03-07 Jonathan Pryor <jpryor@novell.com>
460 * mdoc.cs: Rename export-slashdoc command to export-msxdoc. Add a space
461 between the `usage:' and command description to ease reading.
463 2008-03-07 Jonathan Pryor <jpryor@novell.com>
465 * monodocs2slashdoc.cs: Update to cope with .NET 2.0 generics.
466 * DocTest-v1.cs: Fix CREF comments.
467 * DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
468 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
469 DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
470 DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html: Flush
471 due to above CREF changes.
473 2008-03-06 Joshua Tauberer <jit@occams.info>
475 * monodocer.cs: Use Path.Combine in a few places.
477 2008-03-03 Jonathan Pryor <jpryor@novell.com>
479 * Makefile.am: Test the new -import: monodocer option.
480 * mdoc.cs: Make --import take only one parameter, the file to import.
481 * monodocer.cs: Add a new -import option which auto-detects the XML format
482 so that mdoc (and the user) doesn't need to care about file formats.
483 * Options.cs: Flush (fixes "<>" error when parsing 2-value "i|import").
485 2008-02-29 Jonathan Pryor <jpryor@novell.com>
487 * Makefile.am: Use mcs1 to build monodocer1.exe (as mcs now targets the 2.0
490 2008-02-29 Jonathan Pryor <jpryor@novell.com>
492 * Makefile.am: Corrections to pass distcheck.
494 2008-02-27 Jonathan Pryor <jpryor@novell.com>
496 * mdoc.cs: `mdoc assemble` should default to the "ecma" format, as that's
497 what most of the other mdoc tools produce & consume.
499 2008-02-26 Jonathan Pryor <jpryor@novell.com>
501 * mdoc.cs: Allow multiple formats to be specified on the `mdoc assemble`
502 command line; directories use the last specified format. This allows more
503 than one format to be specified at once, e.g.
504 `mdoc assemble -o foo --format=ecma A B --format=error C D`.
505 * Options.cs: Update to permit the above "argument run" parsing behavior.
507 2008-02-24 Jonathan Pryor <jpryor@novell.com>
509 * mdoc.cs: Remove array index out of bound exception in ExportHtml; remove
511 * defaulttemplate.xsl: s/<tab>/ /; add create-default-collection-title,
512 create-default-title, create-default-summary, create-default-signature,
513 create-default-remarks, create-default-members named templates (for use by
514 importing XSLT files).
515 * DocTest/html.expected/**/*.html: Flush (whitespace changes).
517 2008-02-21 Jonathan Pryor <jpryor@novell.com>
519 * Makefile.am: Add mdoc.exe to the build.
520 * monodocer.cs: Place into the Mono.Documentation namespace;
521 rename Stub to Updater.
522 * monodocs2slashdoc.cs: Place into the Mono.Documentation namespace; allow
523 it to convert multiple directories.
524 * mdoc.cs: Added; a unifying front-end to the various monodoc-related
525 utilities such as monodocer, monodocs2html, mdassembler, etc.
526 * Options.cs: An option parser; DO NOT EDIT; instead, see NDesk.Options at
527 http://www.ndesk.org/Options.
529 2008-02-19 Jonathan Pryor <jpryor@novell.com>
531 * defaulttemplate.xsl: Insert id attributes so that an "index" can be added;
532 Add a small "index" to the top of the page to simplify navigation --
533 useful when there are lots of docs that make the "Members" section
534 difficult to otherwise find. Add a http-equiv Content-Type, so that the
535 charset is set to UTF-8.
536 * stylesheet.xsl: Don't use generate-id(), as the result includes the full
537 path of the input file, which breaks unit tests if run on a different
538 machine (and everyone runs the unit tests, right?). Add id attributes so
539 that defaulttemplate.xsl can create an index.
540 * DocTest/html.expected/System/Environment+SpecialFolder.html,
541 DocTest/html.expected/System/Array.html,
542 DocTest/html.expected/System/Environment.html,
543 DocTest/html.expected/System/index.html,
544 DocTest/html.expected/System/AsyncCallback.html,
545 DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
546 DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
547 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
548 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
549 DocTest/html.expected/Mono.DocTest.Generic/index.html,
550 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
551 DocTest/html.expected/index.html,
552 DocTest/html.expected/Mono.DocTest/Color.html,
553 DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
554 DocTest/html.expected/Mono.DocTest/Widget.html,
555 DocTest/html.expected/Mono.DocTest/Widget+Del.html,
556 DocTest/html.expected/Mono.DocTest/DocValueType.html,
557 DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
558 DocTest/html.expected/Mono.DocTest/IProcess.html,
559 DocTest/html.expected/Mono.DocTest/index.html,
560 DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
561 DocTest/html.expected/Mono.DocTest/DocAttribute.html,
562 DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
563 DocTest/html.expected/Mono.DocTest/UseLists.html,
564 DocTest/html.expected/NoNamespace.html: Flush.
566 2008-02-15 Jonathan Pryor <jpryor@novell.com>
568 * defaulttemplate.xsl: Move the <style/> and (new) <script/> into named
569 templates so that this file can be <xsl:import/>d and the named templates
570 invoked without clobbering the importing document; add toggle_display()
571 JavaScript function for some bling. Modify CSS so things look nicer.
572 * stylesheet.xsl: Make monodocs2html output not suck (as badly):
573 - Allow *all* headers to also act as show/hide toggles, so that e.g.
574 Remarks, Examples, Parameters, etc. can be hidden.
575 - Move the summary information above the member prototype (consistent
576 with MSDN, and I think it looks nicer).
577 - Provide an `id' attribute for enumeration members, so that
578 <see cref="F:..." /> will work reasonably.
579 - Allow the <pre/> blocks to use the `prettyprint.js' file (used by
580 monologue for syntax coloring) -- requires setting the <pre/> class to
581 e.g. code-csharp for C# coloring.
582 * DocTest/html.expected/System/Environment+SpecialFolder.html,
583 DocTest/html.expected/System/Array.html,
584 DocTest/html.expected/System/Environment.html,
585 DocTest/html.expected/System/index.html,
586 DocTest/html.expected/System/AsyncCallback.html,
587 DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
588 DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
589 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
590 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
591 DocTest/html.expected/Mono.DocTest.Generic/index.html,
592 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
593 DocTest/html.expected/index.html,
594 DocTest/html.expected/Mono.DocTest/Color.html,
595 DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
596 DocTest/html.expected/Mono.DocTest/Widget.html,
597 DocTest/html.expected/Mono.DocTest/Widget+Del.html,
598 DocTest/html.expected/Mono.DocTest/DocValueType.html,
599 DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
600 DocTest/html.expected/Mono.DocTest/IProcess.html,
601 DocTest/html.expected/Mono.DocTest/index.html,
602 DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
603 DocTest/html.expected/Mono.DocTest/DocAttribute.html,
604 DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
605 DocTest/html.expected/Mono.DocTest/UseLists.html,
606 DocTest/html.expected/NoNamespace.html: Flush (lots of HTML changes due to
607 defaulttemplate.xsl and stylesheet.xsl changes).
609 2008-02-14 Jonathan Pryor <jpryor@novell.com>
611 * stylesheet.xsl: Support <typeparamref/>.
613 2008-02-13 Jonathan Pryor <jpryor@novell.com>
615 * DocTest-v1.cs: Add/fix doc comments; add a
616 Widget(Converter<string,string>) constructor for testing.
617 * stylesheet.xsl: Fix display issues:
618 - Generic types should have GetTypeDisplayName() on their constituent
619 parts, so System.Converter<System.String,System.String>
620 gets converted into the nicer Converter<string, string>.
621 - Generic types within method argument lists should be supported.
622 - Permit constructor references to contain arguments, so that
623 "C:My.Full.Type(Type1,Type2)" actually works.
624 - Fix remote type references so
625 <see cref="M:System.Collections.Generic.List{System.Int32}.Remove(`0)"/>
626 properly reference the remote uri
627 System.Collections.Generic.List`1.Remove(`0).
628 * DocTest/en.expected/Mono.DocTest/Widget.xml,
629 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
630 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
631 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
632 DocTest/html.expected/System/Array.html,
633 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
634 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
635 DocTest/html.expected/Mono.DocTest/Widget.html,
636 DocTest/html.expected/Mono.DocTest/UseLists.html: Flush.
638 2008-02-08 Jonathan Pryor <jpryor@novell.com>
640 * stylesheet.xsl: Allow use of both <see cref="GenericType{A}" /> and
641 <see cref="GenericType<A>" /> to be consistent wrt each other.
642 - Canonicalize generic types within link targets so that {} is used, as
643 1. this is what the */@id code generates, so such links will actually
644 work (as opposed to <>-using links, which will fail), and
645 2. the {} links are shorter and easier to read due to less markup.
646 - Canonicalize generic types within link text to use <>, so e.g.
647 <see cref="System.Action{`0}" /> is displayed as System.Action<`0>.
648 This also allows output to be consistent, no matter what the see/@cref
650 - When creating links to go-mono.com, ensure that generic type names are
651 of the form Type`N, not Type{...}, as go-mono.com doesn't generate
652 useful output for the latter form of URL.
653 * DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Flush.
655 2008-01-06 Jonathan Pryor <jpryor@novell.com>
657 * monodocer.cs: Yet another "if you remove a node while traversing its
658 containing list, you skip elements" bug (in this case, if you had extra
659 <param/> elements for non-existant parameters, only the first extra
660 <param/> was removed, and the others were skipped). Modify the messge
661 displayed for undeletable <param/> nodes to provide more contextual
664 2008-01-05 Jonathan Pryor <jpryor@novell.com>
667 - Fix duplicate and removed member checking/handling, so that duplicate
668 and removed members are properly warned about/removed (depending
669 on MemberDocsHaveUserContent()).
670 - Member sorting should take the return type into consideration, as I've
671 seen some ../class/** members which change the return type between
672 v1.0 and v2.0, causing the order of these members to "float" (as they
673 previously had the same sort order).
675 2008-01-03 Jonathan Pryor <jpryor@novell.com>
677 * monodocer.cs: XmlNodeList doesn't appear to support removing nodes while
678 you're traversing the list. (It doesn't complain, but it doesn't iterate
679 over all the nodes either if you do so.) Don't do that.
681 2008-01-02 Jonathan Pryor <jpryor@novell.com>
683 * monodocer.cs: Don't generate files that contain characters that are
684 invalid on Win32 platforms. These are frequently compiler-generated
685 types, e.g. '<>c__CompilerGenerated2+<>c__CompilerGenerated13', but are
686 occasionally public when they shouldn't be. Fix the
687 UpdateAssemblyVersions() logic to return true IFF there are > 0
688 <AssemblyVersion/> elements.
690 2008-01-02 Jonathan Pryor <jpryor@novell.com>
692 * DocTest-v1.cs: Add a type to the root namespace.
693 * monodocer.cs: Permit types to exist in the root namespace. This is needed
694 to properly document ../class/Npgsql, though I have no idea how `monodoc'
695 will actually display these types...
696 * overview.xsl: Support types within the root namespace.
697 * DocTest/en.expected/index.xml, DocTest/en.expected.since/index.xml,
698 DocTest/en.expected.importslashdoc/index.xml,
699 DocTest/html.expected/System/index.html,
700 DocTest/html.expected/Mono.DocTest.Generic/index.html,
701 DocTest/html.expected/index.html,
702 DocTest/html.expected/Mono.DocTest/index.html: Flush.
703 * DocTest/en.expected/NoNamespace.xml,
704 DocTest/en.expected/ns-.xml,
705 DocTest/en.expected.importslashdoc/NoNamespace.xml,
706 DocTest/en.expected.importslashdoc/ns-.xml,
707 DocTest/en.expected.since/NoNamespace.xml,
708 DocTest/en.expected.since/ns-.xml,
709 DocTest/html.expected/NoNamespace.html: Added.
711 2008-01-02 Jonathan Pryor <jpryor@novell.com>
714 - Write namespace files as 'ns-<Namespace>.xml', not '<Namespace>.xml', as
715 the previous behavior would break monodoc checkout on Win32 (due to dir
716 class/System.Security/en/System.Security.Cryptography.Xml vs. file
717 class/System.Security/en/System.Security.Cryptography.xml).
718 - This will rename existing <Namespace>.xml to ns-<Namespace>.xml
720 - gmcs/mcs changed Reflection names (again); cope.
721 * DocTest/en.expected/System.xml,
722 DocTest/en.expected/Mono.DocTest.Generic.xml,
723 DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
724 DocTest/en.expected/Mono.DocTest.xml, DocTest/en.expected.since/System.xml,
725 DocTest/en.expected.since/Mono.DocTest.Generic.xml,
726 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
727 DocTest/en.expected.since/Mono.DocTest.xml,
728 DocTest/en.expected.importslashdoc/System.xml,
729 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic.xml,
730 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
731 DocTest/en.expected.importslashdoc/Mono.DocTest.xml: Rename to have a
733 * Makefile.am: Remove obsolete targets; add -show_exceptions to tests so we
734 get more information on errors.
735 * overview.xsl: Use the 'ns-' prefixed namespace documentation files.
737 2007-12-19 Jonathan Pryor <jpryor@novell.com>
739 * monodocer.cs: PropertyInfo.GetValue() may throw (in particular, within
740 System.Data when trying to read ToolboxItemAttribute which references an
741 assembly not present within the GAC). Workaround this.
743 2007-12-19 Jonathan Pryor <jpryor@novell.com>
745 * monodocer.cs: Add a -show_exceptions argument to provide full stack traces
746 when an error occurs (helps with debugging). Allow VersionComparer to
747 work on "slightly" malformed Version strings like 1.0.x.x, which some
748 existing documentation uses.
750 2007-12-18 Jonathan Pryor <jpryor@novell.com>
752 * monodocer.cs: Don't append ';' to property declarations.
753 * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
754 DocTest/en.expected/Mono.DocTest/Widget.xml,
755 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
756 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
757 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
758 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml: Flush.
760 2007-12-18 Jonathan Pryor <jpryor@novell.com>
762 * monodocer.cs: Insert [return:] custom attributes within <ReturnValue/>.
763 * DocTest-v1.cs: Add custom attributes to various members for testing.
764 * DocTest/en.expected/Mono.DocTest/Widget.xml,
765 DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
766 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
767 DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
768 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
769 DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
770 DocTest/html.expected/Mono.DocTest/Widget.html,
771 DocTest/html.expected/Mono.DocTest/DocAttribute.html: Flush.
773 2007-12-17 Jonathan Pryor <jpryor@novell.com>
775 * monodocer.cs: Document protected events.
776 * DocTest-v1.cs: Change the visibility of various members so we can better
777 test the monodocs2html output.
778 * stylesheet.xsl: Fix the `protected' check so that public members aren't
779 displayed under the Protected [MemberType] section.
780 * DocTest/en.expected/Mono.DocTest/Widget.xml,
781 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
782 DocTest/html.expected/Mono.DocTest/Widget.html,
783 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml: Flush.
785 2007-12-13 Jonathan Pryor <jonpryor@vt.edu>
787 * monodocer.cs: Er, *really* sort the <AssemblyVersion/> entries.
789 2007-12-12 Jonathan Pryor <jonpryor@vt.edu>
791 * monodocer.cs: Sort the <AssemblyVersion/> entries so that when rendering
792 them within monodoc we show versions in increasing order.
794 2007-12-11 Jonathan Pryor <jonpryor@vt.edu>
796 * monodocer.cs: Don't use File.OpenWrite(), as that doesn't truncate the
797 file (resulting in invalid XML errors if the new file is smaller than the
798 previous file). Add a local OpenWrite() to ensure that UTF8 is used
801 2007-12-11 Jonathan Pryor <jonpryor@vt.edu>
803 * monodocer.cs: Generate a per-member <AssemblyInfo/> element, not an
804 <AssemblyVersions/> element. This makes it easeier to write the XSLT
805 used in the docbrowser to generate the Requirements section.
806 * stylesheet.xsl: Use <AssemblyInfo/>, not <AssemblyVersions/>.
807 * DocTest/en.expected/System/Environment.xml,
808 DocTest/en.expected/System/AsyncCallback.xml,
809 DocTest/en.expected/System/Environment+SpecialFolder.xml,
810 DocTest/en.expected/System/Array.xml,
811 DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
812 DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
813 DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
814 DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
815 DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
816 DocTest/en.expected/Mono.DocTest/Widget.xml,
817 DocTest/en.expected/Mono.DocTest/Widget+Del.xml,
818 DocTest/en.expected/Mono.DocTest/DocValueType.xml,
819 DocTest/en.expected/Mono.DocTest/IProcess.xml,
820 DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
821 DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
822 DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
823 DocTest/en.expected/Mono.DocTest/UseLists.xml,
824 DocTest/en.expected/Mono.DocTest/Widget+IMenuItem.xml,
825 DocTest/en.expected/Mono.DocTest/Color.xml,
826 DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
827 DocTest/en.expected.since/System/Environment.xml,
828 DocTest/en.expected.since/System/AsyncCallback.xml,
829 DocTest/en.expected.since/System/Environment+SpecialFolder.xml,
830 DocTest/en.expected.since/System/Array.xml,
831 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
832 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
833 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
834 DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
835 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
836 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
837 DocTest/en.expected.since/Mono.DocTest/AddedType.xml,
838 DocTest/en.expected.since/Mono.DocTest/Widget+Del.xml,
839 DocTest/en.expected.since/Mono.DocTest/DocValueType.xml,
840 DocTest/en.expected.since/Mono.DocTest/IProcess.xml,
841 DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass.xml,
842 DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
843 DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
844 DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
845 DocTest/en.expected.since/Mono.DocTest/Widget+IMenuItem.xml,
846 DocTest/en.expected.since/Mono.DocTest/Color.xml,
847 DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
848 DocTest/en.expected.importecmadoc/System/Environment.xml,
849 DocTest/en.expected.importecmadoc/System/AsyncCallback.xml,
850 DocTest/en.expected.importecmadoc/System/Array.xml,
851 DocTest/en.expected.importslashdoc/System/Environment.xml,
852 DocTest/en.expected.importslashdoc/System/AsyncCallback.xml,
853 DocTest/en.expected.importslashdoc/System/Environment+SpecialFolder.xml,
854 DocTest/en.expected.importslashdoc/System/Array.xml,
855 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
856 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
857 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
858 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
859 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
860 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Del.xml,
861 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
862 DocTest/en.expected.importslashdoc/Mono.DocTest/DocValueType.xml,
863 DocTest/en.expected.importslashdoc/Mono.DocTest/IProcess.xml,
864 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass.xml,
865 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
866 DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
867 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
868 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml,
869 DocTest/en.expected.importslashdoc/Mono.DocTest/Color.xml,
870 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Direction.xml:
871 Flush; s/AssemblyVersion/AssemblyInfo/g.
873 2007-12-10 Jonathan Pryor <jonpryor@vt.edu>
875 * DocTest-v2.patch: Remove some members so that we can see some
876 <AssemblyVersions/> differences in the XML output.
877 * monodocer.cs: Add a <AssemblyVersions/> element under every type and member
878 to better track versioning information. The XML documentation now becomes
879 a "version database" of sorts, in which each member lists which assembly
880 versions it exists in. This permits tracking which members were added or
881 removed over time with greater fidelity than <since/>. This also removes
882 the need for -ignore_extra_docs, which is maintained (for compatibility)
884 * DocTest-v1.cs: Have differing visibility on a property to ensure it works
886 * stylesheet.xsl: Print out the per-member <AssemblyVersions/> element.
887 * DocTest/en.expected/System/Environment.xml,
888 DocTest/en.expected/System/AsyncCallback.xml,
889 DocTest/en.expected/System/Environment+SpecialFolder.xml,
890 DocTest/en.expected/System/Array.xml,
891 DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
892 DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
893 DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
894 DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
895 DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
896 DocTest/en.expected/Mono.DocTest/Widget.xml,
897 DocTest/en.expected/Mono.DocTest/Widget+Del.xml,
898 DocTest/en.expected/Mono.DocTest/DocValueType.xml,
899 DocTest/en.expected/Mono.DocTest/IProcess.xml,
900 DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
901 DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
902 DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
903 DocTest/en.expected/Mono.DocTest/UseLists.xml,
904 DocTest/en.expected/Mono.DocTest/Widget+IMenuItem.xml,
905 DocTest/en.expected/Mono.DocTest/Color.xml,
906 DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
907 DocTest/en.expected.since/System/Environment.xml,
908 DocTest/en.expected.since/System/AsyncCallback.xml,
909 DocTest/en.expected.since/System/Environment+SpecialFolder.xml,
910 DocTest/en.expected.since/System/Array.xml,
911 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
912 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
913 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
914 DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
915 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
916 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
917 DocTest/en.expected.since/Mono.DocTest/AddedType.xml,
918 DocTest/en.expected.since/Mono.DocTest/Widget+Del.xml,
919 DocTest/en.expected.since/Mono.DocTest/DocValueType.xml,
920 DocTest/en.expected.since/Mono.DocTest/IProcess.xml,
921 DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass.xml,
922 DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
923 DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
924 DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
925 DocTest/en.expected.since/Mono.DocTest/Widget+IMenuItem.xml,
926 DocTest/en.expected.since/Mono.DocTest/Color.xml,
927 DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
928 DocTest/html.expected/System/Array.html,
929 DocTest/html.expected/System/Environment.html,
930 DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
931 DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
932 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
933 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
934 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
935 DocTest/html.expected/Mono.DocTest/Widget.html,
936 DocTest/html.expected/Mono.DocTest/DocValueType.html,
937 DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
938 DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
939 DocTest/html.expected/Mono.DocTest/DocAttribute.html,
940 DocTest/html.expected/Mono.DocTest/UseLists.html,
941 DocTest/en.expected.importecmadoc/System/Environment.xml,
942 DocTest/en.expected.importecmadoc/System/AsyncCallback.xml,
943 DocTest/en.expected.importecmadoc/System/Array.xml,
944 DocTest/en.expected.importslashdoc/System/Environment.xml,
945 DocTest/en.expected.importslashdoc/System/AsyncCallback.xml,
946 DocTest/en.expected.importslashdoc/System/Environment+SpecialFolder.xml,
947 DocTest/en.expected.importslashdoc/System/Array.xml,
948 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
949 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
950 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
951 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
952 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
953 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Del.xml,
954 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
955 DocTest/en.expected.importslashdoc/Mono.DocTest/DocValueType.xml,
956 DocTest/en.expected.importslashdoc/Mono.DocTest/IProcess.xml,
957 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass.xml,
958 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
959 DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
960 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
961 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml,
962 DocTest/en.expected.importslashdoc/Mono.DocTest/Color.xml,
963 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Direction.xml:
964 Flush, inserting <AssemblyVersion/> elements as necessary.
966 2007-10-28 Jonathan Pryor <jonpryor@vt.edu>
968 * DocTest-v1.cs: Correct doc comment.
969 * DocTest/html.expected/System/Environment.html,
970 DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html,
971 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
972 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
973 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
974 DocTest/html.expected/Mono.DocTest/UseLists.html,
975 DocTest/en.expected.importslashdoc/System/Environment.xml,
976 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
977 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
978 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
979 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
980 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml: mcs and gmcs
981 got many bug fixes with /doc support, changing many things that depend on
984 2007-09-27 Raja R Harinath <rharinath@novell.com>
986 * Makefile.am (DocTest.dll-v1, DocTest.dll-v2): Pick source from $srcdir.
988 2007-07-19 Jonathan Pryor <jonpryor@vt.edu>
990 * monodocer.cs: Always fully consume <Docs/> children. If we have e.g.
991 <Docs><param name="foo"><see cref="T:Bar"/></param></Docs>, but there is
992 no existing parameter "foo", we would previously process the nested
993 <see/> node and append it to the <Docs/> child nodes.
995 2007-07-18 Jonathan Pryor <jonpryor@vt.edu>
997 * monodocer.cs: Change OrderDocsNodes() so that it uses
998 XmlNode.InsertAfter() instead of XmlNode.InsertBefore(). The result is
999 mostly the same (i.e. no regression test changes), but if you have a
1000 non-ordered node between other nodes this will force the non-ordered node
1001 to the *end* of the <Docs/> children, not the start. For example, given
1002 the input <Docs><summary/><exception/><remarks/></Docs/>, we used to get
1003 <Docs><exception/><summary/><remarks/></Docs>, while we now get
1004 <Docs><summary/><remarks/><exception/></Docs>.
1006 2007-07-17 Jonathan Pryor <jonpryor@vt.edu>
1008 * monodocer.cs: Insert the type's <Docs/> node before <Members/>. This is
1009 consistent with ECMA documentation ordering, and makes more sense (when
1010 editing the file you can edit the Type documentation before member
1011 documentation, instead of after all members as was the case before).
1012 * DocTest/en.expected/System/Environment.xml,
1013 DocTest/en.expected/System/Environment+SpecialFolder.xml,
1014 DocTest/en.expected/System/Array.xml,
1015 DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
1016 DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1017 DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
1018 DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
1019 DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1020 DocTest/en.expected/Mono.DocTest/Widget.xml,
1021 DocTest/en.expected/Mono.DocTest/DocValueType.xml,
1022 DocTest/en.expected/Mono.DocTest/IProcess.xml,
1023 DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
1024 DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
1025 DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
1026 DocTest/en.expected/Mono.DocTest/UseLists.xml,
1027 DocTest/en.expected/Mono.DocTest/Widget+IMenuItem.xml,
1028 DocTest/en.expected/Mono.DocTest/Color.xml,
1029 DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
1030 DocTest/en.expected.since/System/Environment.xml,
1031 DocTest/en.expected.since/System/Environment+SpecialFolder.xml,
1032 DocTest/en.expected.since/System/Array.xml,
1033 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
1034 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1035 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
1036 DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
1037 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1038 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1039 DocTest/en.expected.since/Mono.DocTest/AddedType.xml,
1040 DocTest/en.expected.since/Mono.DocTest/DocValueType.xml,
1041 DocTest/en.expected.since/Mono.DocTest/IProcess.xml,
1042 DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass.xml,
1043 DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
1044 DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
1045 DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
1046 DocTest/en.expected.since/Mono.DocTest/Widget+IMenuItem.xml,
1047 DocTest/en.expected.since/Mono.DocTest/Color.xml,
1048 DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
1049 DocTest/en.expected.importecmadoc/System/Environment.xml,
1050 DocTest/en.expected.importecmadoc/System/Array.xml,
1051 DocTest/en.expected.importslashdoc/System/Environment.xml,
1052 DocTest/en.expected.importslashdoc/System/Environment+SpecialFolder.xml,
1053 DocTest/en.expected.importslashdoc/System/Array.xml,
1054 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
1055 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
1056 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
1057 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
1058 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1059 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
1060 DocTest/en.expected.importslashdoc/Mono.DocTest/DocValueType.xml,
1061 DocTest/en.expected.importslashdoc/Mono.DocTest/IProcess.xml,
1062 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass.xml,
1063 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
1064 DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
1065 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
1066 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml,
1067 DocTest/en.expected.importslashdoc/Mono.DocTest/Color.xml,
1068 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Direction.xml:
1069 Update so that <Docs/> comes before <Members/>, not after.
1071 2007-07-14 Jonathan Pryor <jonpryor@vt.edu>
1073 * monodocer.cs: If a <Type/> had an empty <Members/> element, we'd start
1074 reading the <Member/> elements from the *next* <Type/>; oops.
1075 * DocTest-v1.cs: Add System.AsyncCallback, which is a delegate and thus had
1076 an empty <Members/> element.
1077 * Makefile.am: Also import docs for System.AsyncCallback.
1078 * overview.xsl: Update $max-types so that adding System.AsyncCallback
1079 doesn't trigger the alternate behavior, creating a larger diff than
1081 * TestEcmaDocs.xml: Add docs for System.AsyncCallback.
1082 * DocTest/en.expected/System/AsyncCallback.xml,
1083 DocTest/en.expected/index.xml,
1084 DocTest/en.expected.since/System/AsyncCallback.xml
1085 DocTest/en.expected.since/index.xml,
1086 DocTest/html.expected/System/AsyncCallback.html
1087 DocTest/html.expected/System/index.html, DocTest/html.expected/index.html,
1088 DocTest/en.expected.importecmadoc/System/AsyncCallback.xml,
1089 DocTest/en.expected.importslashdoc/System/AsyncCallback.xml,
1090 DocTest/en.expected.importslashdoc/index.xml: Added; expected imported
1091 documentation for System.AsyncCallback.
1093 2007-07-14 Jonathan Pryor <jonpryor@vt.edu>
1095 * monodocer.cs: Remove the "While Importing ECMA <Docs/> chidren, found
1096 node..." error by ensuring that we're at the start of an actual
1097 non-whitespace element before hitting the switch statement.
1099 2007-07-14 Jonathan Pryor <jonpryor@vt.edu>
1101 * monodocer.cs: Don't call DoUpdateType() with non-public types. This
1102 allows `monodocer -importecmadoc` to fully run and import mscorlib.dll.
1104 2007-07-14 Jonathan Pryor <jonpryor@vt.edu>
1106 * monodocer.cs: Ensure that getting a MemberInfo based on the documentation
1107 that the MemberInfo was actually found... (Allows a full mscorlib.dll
1108 import to run for > 15s before dying.)
1110 2007-07-04 Jonathan Pryor <jonpryor@vt.edu>
1112 * monodocer.cs: Use XmlReader instead of XPathDocument to process the ECMA
1113 documentation import. This cuts down a -type:System.Array import from
1114 ~10-12s to ~7-8s (not great, but better). "Fix" the ordering of <Docs/>
1115 child elements so that importing ECMA/slashdoc documentation doesn't
1116 change the normal ordering.
1117 * DocTest/en.expected.importecmadoc/System/Array.xml,
1118 DocTest/en.expected.importecmadoc/System/Environment.xml: Alter order of
1119 <Docs/> elements to match the normally generated order.
1121 2007-06-20 Jonathan Pryor <jonpryor@vt.edu>
1123 * monodocer.cs: Sort /Type/Members/Member elements so that the order is not
1124 dependent upon Reflection order.
1125 * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1126 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1127 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
1128 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1129 DocTest/en.expected.importecmadoc/System/Array.xml,
1130 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml:
1131 Flush (sort <Member/> elements).
1133 2007-06-19 Jonathan Pryor <jonpryor@vt.edu>
1135 * monodocer.cs: Sort <Namespace/> and <Type/> elements by their Name
1136 attribute. This helps keep diff's smaller, as the generated order won't
1137 be dependent upon Reflection order.
1138 * DocTest/en.expected/index.xml, DocTest/en.expected.since/index.xml,
1139 DocTest/en.expected.importslashdoc/index.xml: Flush (sort namespaces and
1140 types alphabetically).
1142 2007-06-19 Jonathan Pryor <jonpryor@vt.edu>
1144 * monodocer.cs: Cleanup Console output.
1145 - Use Console.Error for error messages, not status messages.
1146 - Error should be prefixed by "monodocer" (follows Unix conventions).
1147 - Don't print "Updating..." followed by "New Type..." for the same type.
1148 - Use __monodocer-seen__ sentinal for imported nodes so that we don't try
1149 to lookup the corresponding member later in GetDocumentationMembers().
1151 2007-06-19 Jonathan Pryor <jonpryor@vt.edu>
1153 * monodocer.cs: Lots 'o fixes/improvements.
1154 - Allow multiple -type parameters to be specified.
1155 - Remove type member enumeration from UpdateTypes() -- use DoUpdateType2().
1156 - Iterate over assembly types in Ecma Documentation order (so that we read
1157 the Ecma docs sequentially, not randomly).
1158 - Allow -type to *create* new documentation files.
1159 - Remove unused methods.
1160 * Makefile.am: Add check-monodocer-importecmadoc,
1161 check-monodocer-importecmadoc-update targets (unit tests for
1163 * TestEcmaDocs.xml: Added; ECMA Documentation input file for use with
1164 -importecmadoc tests.
1165 * DocTest-v1.cs: Add System.Array to help test -importecmadoc behavior.
1166 * DocTest/en.expected/index.xml, DocTest/en.expected.since/index.xml,
1167 DocTest/html.expected/System/index.html, DocTest/html.expected/index.html,
1168 DocTest/en.expected.importslashdoc/index.xml: Flush (add System.Array to
1170 * DocTest/en.expected/System/Array.xml,
1171 DocTest/en.expected.since/System/Array.xml,
1172 DocTest/html.expected/System/Array.html,
1173 DocTest/en.expected.importecmadoc/System/Environment.xml,
1174 DocTest/en.expected.importecmadoc/System/Array.xml,
1175 DocTest/en.expected.importslashdoc/System/Array.xml: Added; expected
1176 output for System.Array type for various tests.
1178 2007-06-18 Wade Berrier <wberrier@novell.com>
1180 * monodocer.cs: Move assembly information up top because having it at the bottom
1181 fails to compile with mcs from trunk.
1183 2007-06-14 Jonathan Pryor <jonpryor@vt.edu>
1185 * monodocer.cs: Use XPathDocument instead of XmlDocument to process the ECMA
1186 documentation import. This cuts down a -type:System.Array import from
1187 ~15-20s to ~10-12s (not great, bug better). Fix importing of <exception/>
1188 elements -- previously we would skip them if the mono docs lacked them.
1190 2007-06-12 Jonathan Pryor <jonpryor@vt.edu>
1192 * monodocer.cs: The previous fix was buggy -- if the type parameters were
1193 renamed (ConvertAll<T,U> in ECMA, ConvertAll<TInput,TOutput> in Mono),
1194 then the existing element wouldn't be found, but the MemberInfo would.
1195 Result: duplicate XML elements (BOTH ConvertAll<T,U> AND
1196 ConvertAll<TInput,TOutput>), one of which is wrong, which clearly isn't
1197 desirable. If the Mono XML element can't be found, try looking it up
1198 based on the MemberInfo found from the ECMA docs to avoid duplication.
1200 2007-06-11 Jonathan Pryor <jonpryor@vt.edu>
1202 * monodocer.cs: Add support for renaming of template parameters (useful
1203 because ECMA 335 refers to Array.ConvertAll<T,U> while Mono/.NET have
1204 Array.ConvertAll<TInput,TOutput>). Not terribly intelligent, but smart
1205 enough that all but two System.Array members can now be imported (a
1206 private constructor, and a member with an incorrectly documented parameter
1207 type, neither of which I plan on supporting). Cleanup some of the
1208 `#if NET_1_0` blocks by using `using' aliases -- alas, requires moving the
1209 [assembly:...] attributes; see bugzilla #81855.
1211 2007-06-11 Jonathan Pryor <jonpryor@vt.edu>
1213 * monodocer.cs: Add support for explicity-implemented interface members.
1214 Minor cleanup. Replace catch(NotSupportedException){} blocks.
1215 * Makefile.am (clean): Cleanup monodocer.exe* files.
1216 * DocTest-v1.cs: Add IFoo<T>, explicitly implement some interfaces on
1217 MyList<A,B> to test explicitly-implemented member support.
1218 * DocTest/en.expected/index.xml,
1219 DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1220 DocTest/en.expected.since/index.xml,
1221 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1222 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1223 DocTest/html.expected/Mono.DocTest.Generic/index.html,
1224 DocTest/html.expected/index.html,
1225 DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
1226 DocTest/en.expected.importslashdoc/index.xml,
1227 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
1228 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml:
1230 * DocTest/en.expected/Mono.DocTest.Generic/IFoo`1.xml,
1231 DocTest/en.expected.since/Mono.DocTest.Generic/IFoo`1.xml,
1232 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/IFoo`1.xml,
1233 DocTest/html.expected/Mono.DocTest.Generic/IFoo`1.html: Added.
1235 2007-05-29 Jonathan Pryor <jonpryor@vt.edu>
1237 * monodocer.cs: Invert ECMA documentation importing -- instead of iterating
1238 over the monodoc XML and importing ECMA docs as encountered (randomly),
1239 iterate over the ECMA docs in-order and access the monodoc types randomly.
1240 This significantly improves access as the ECMA docs are ~7.2MB in size,
1241 while the monodoc XML types 10's-100's of KB (randomly accessing a 7.2 MB
1242 XML document == BAD; randomly accessing a several hundred KB document is
1243 better). This cuts down a -type:System.Array import from ~4 minutes to
1244 < ~20s. Alas, it appears to miss a few members as well, so it's not done.
1246 2007-05-19 Jonathan Pryor <jonpryor@vt.edu>
1248 * monodocer.cs: Create diff(1)-friendly output for -importecmadocs.
1249 Previously, we'd remove <summary/>, <remarks/>, etc., and re-add them at
1250 the end of the <Docs/> node, which results in major changes for diff(1),
1251 so instead we replace the contents of existing elements when appropriate.
1252 Remove '\r' from the imported document (also to remove diff(1)-reported
1253 changes as the line endings would change).
1255 2007-05-17 Jonathan Pryor <jonpryor@vt.edu>
1257 * monodocer.cs: Add -importecmadoc flag, which will import
1258 documentation found within an ECMA documetation file (e.g. the
1259 CLILibraryTypes.xml from the ECMA-335 standard).
1260 WARNING: import is currently SLOW.
1262 2007-05-17 Jonathan Pryor <jonpryor@vt.edu>
1264 * monodocer.cs: Refactor MakeDocNode() so that there's only one
1265 version, not three overloads, and use a (new) DocsNodeInfo type to
1266 pass information to the new MakeDocNode() method. This doesn't
1267 change anything per-se, but it'll make it easier to pass new
1268 parameters to MakeDocNode() without making the rediculously long
1269 parameter list even longer...
1271 2007-05-12 Joshua Tauberer <jit@occams.info>
1273 * overview.xsl: Always sort type names, since when updating
1274 docs monodocer can make the list in index.xml out of order.
1275 * monodocer.cs: When deleting duplicate member entries, delay
1276 deletion until after loop is finished.
1277 * Makefile.am, DocTest-v1.cs, DocTest/en.expected.importslashdoc,
1278 DocTest/html.expected: Revise monodocs2html tests to use
1279 the /doc file so we can test those tags too. And changed two
1280 <c> tags to <see cref=/>.
1281 * stylesheet.xsl, DocTest/html.expected: Fix see-links to methods,
1282 which didn't recognize '(' as delimiting type from args, and
1283 display nice type names for arguments.
1285 2007-03-15 Lluis Sanchez Gual <lluis@novell.com>
1287 * monodocer.cs: When deleting a member, don't remove it from the
1288 parent xml element until all members are checked, since doing
1290 Properly import internal protected members.
1292 2006-12-29 Jonathan Pryor <jonpryor@vt.edu>
1294 * Makefile.am: Add check-monodocer-ignore_extra_docs-update,
1295 check-doc-tools-update, and check-update targets.
1296 * monodocer.cs: Fix generation of attribute parameters, as e.g.
1297 `AttributeUsage.Class|Struct' doesn't look right; it should
1298 instead be `AttributeUsage.Class | AttributeUsage.Struct'.
1299 * DocTest-v1.cs: Add new public Attribute with an AttributeUsage for tests.
1300 * DocTest/en.expected/index.xml,
1301 DocTest/en.expected/Mono.DocTest/DocAttribute.xml,
1302 DocTest/en.expected.importslashdoc/index.xml,
1303 DocTest/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml,
1304 DocTest/en.expected.since/index.xml,
1305 DocTest/en.expected.since/Mono.DocTest/DocAttribute.xml,
1306 DocTest/html.expected/index.html,
1307 DocTest/html.expected/Mono.DocTest/index.html,
1308 DocTest/html.expected/Mono.DocTest/DocAttribute.html: Added; update
1309 expected output for new tests.
1311 2006-12-29 Jonathan Pryor <jonpryor@vt.edu>
1313 * monodocer.cs: Fix C# type name generation for nested types in the System
1314 namespace. Remove TypeCastException when dealing with custom attributes.
1315 * DocTest-v1.cs: Add System.Environment type for testing System handling.
1316 * DocTest/en.expected/index.xml, DocTest/en.expected/System.xml,
1317 DocTest/en.expected/System/Environment.xml,
1318 DocTest/en.expected/System/Environment+SpecialFolder.xml,
1319 DocTest/en.expected.since/index.xml, DocTest/en.expected.since/System.xml,
1320 DocTest/en.expected.since/System/Environment+SpecialFolder.xml,
1321 DocTest/en.expected.since/System/Environment.xml,
1322 DocTest/en.expected.importslashdoc/index.xml,
1323 DocTest/en.expected.importslashdoc/System.xml,
1324 DocTest/en.expected.importslashdoc/System/Environment.xml,
1325 DocTest/en.expected.importslashdoc/System/Environment+SpecialFolder.xml,
1326 DocTest/html.expected/index.html, DocTest/html.expected/System/index.html,
1327 DocTest/html.expected/System/Environment.html,
1328 DocTest/html.expected/System/Environment+SpecialFolder.html:
1329 Added; update expected output for new tests.
1331 2006-12-29 Jonathan Pryor <jonpryor@vt.edu>
1333 * monodocer.cs: `abstract sealed' classes are actually `static' classes.
1335 2006-12-27 Jonathan Pryor <jonpryor@vt.edu>
1337 * monodocer.cs: Re-order the attributes in <Type/> elements so that the
1338 ordering is (somewhat) well defined. This helps with `diff' output in
1339 ../class, as it prevents "false positives" when the attributes are
1340 re-ordered. Fix CSharpFullMemberFormatter.GetTypeDeclaration() so that
1341 when handling C# builtin types (e.g. System.Byte) it uses the real name in
1342 the declaration instead of the C# keyword (`class byte' is wrong).
1344 2006-12-26 Jonathan Pryor <jonpryor@vt.edu>
1346 * Makefile.am: Add check-monodocer-ignore_extra_docs test.
1347 * monodocer.cs: Fix -ignore_extra_docs. Previously, it would just ignore
1348 "missing" types, but it would still remove "missing" members.
1350 2006-12-26 Jonathan Pryor <jonpryor@vt.edu>
1352 * monodocer.cs: Don't insert internal attributes into the documentation.
1353 * DocTest-v1.cs: Add test for use of an internal attribute.
1355 2006-12-21 Jonathan Pryor <jonpryor@vt.edu>
1357 * monodocer.cs: Don't include full namespace for System.* types. *Do*
1358 include the full namespace for nested System types, e.g.
1359 System.Collections.IEnumerable. This is what is currently in
1360 ../class/corlib/en, and making this change results in a smaller diff.
1361 * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1362 DocTest/en.expected/Mono.DocTest/UseLists.xml,
1363 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1364 DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
1365 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
1366 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml:
1367 Update unit tests for above monodocer.cs change.
1369 2006-12-21 Jonathan Pryor <jonpryor@vt.edu>
1371 * monodocer.cs: Don't include full namespace for System.* types. This is
1372 what ECMA-335 CLILibraryTypes.xml does for C# declarations -- no
1373 namespaces within e.g. inheritance lists or parameter lists for the System
1374 namespace and namespaces nested within System.
1375 Remove unnecessary console output.
1376 * DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1377 DocTest/en.expected/Mono.DocTest/UseLists.xml,
1378 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1379 DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
1380 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
1381 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml:
1382 Update unit tests for above monodocer.cs change.
1384 2006-12-21 Jonathan Pryor <jonpryor@vt.edu>
1386 * monodocer.cs: Make sure that the types we document are *really* public.
1387 For some reason public nested types of internal types are returned by
1388 Assembly.GetTypes(), e.g. ``internal class A { public class B {} }''
1389 These types shouldn't be documented.
1390 * DocTest-v1.cs: Add test case for above.
1392 2006-12-21 Jonathan Pryor <jonpryor@vt.edu>
1394 * monodocer.cs: Add -ignore_extra_docs flag; when set, it will not rename
1395 .xml files for types not found to .xml.remove. This is useful in ../class
1396 when we're processing assemblies multiple times for the 1.0 & 2.0
1397 profiles, as when processing the 1.0 profile we'll be "missing" the 2.0
1398 types, and we don't want those to be renamed.
1400 2006-12-21 Jonathan Pryor <jonpryor@vt.edu>
1402 * Makefile.am: Add a monodocer1.exe target, which is a version of monodocer
1403 which runs under the 1.0 runtime. This is necessary so that we can still
1404 generate/update docs for mscorlib.dll 1.0 (as only one mscorlib.dll can
1405 ever be loaded into a process).
1406 * monodocer.cs: Split out the .NET 2.0 functionality so that it can be built
1407 for both 1.0 and 2.0 runtimes. 1.0 support is controlled by the
1410 2006-12-20 Jonathan Pryor <jonpryor@vt.edu>
1412 * monodocer.cs: Don't try too hard in UpdateParameters(). Previously, if a
1413 the number of parameters a method accepted changed from > 1 to 1, the
1414 "easy" <param/> handling would (inadvertently?) change all <param/>s to have
1415 the @name of the method's single parameter -- so if you _had_ parameters
1416 A, B, and C but the method now only has D, then A, B, and C would all have
1417 their @name attribute changed to D. Odd, but possibly acceptable...
1418 ...until we try to make sure that the <param/>s are in the right order, in
1419 which case we'll record the index of D as 0 (it's the 1st parameter), but
1420 find a parameter with a different index (the old B & C), causing us to
1421 reinsert the parameter to make sure it's in the proper order. This
1422 results in an infinite loop within System.Xml -- see Bugzilla #80331.
1423 It's safer to just ignore the extra parameters.
1425 2006-12-07 Jonathan Pryor <jonpryor@vt.edu>
1427 * DocTest-v1.patch: Add an operator returning a generic parameter (triggers
1428 error fixed in monodocer.cs).
1429 * DocTest-v2.patch: Update (due to changes in DocTest-v1.cs).
1430 * monodocer.cs: CSharpFullMemberFormatter.AppendVisibility() needs to accept null
1431 MethodBases (when called from GetEventDeclaration() and e.GetAddMethod()
1432 returns null); fix SlashDocMemberFormatter.GetMethodDeclaration() so that
1433 generic types can be the return value of methods. These changes allow
1434 generation of documentation on Mono's 2.0 mscorlib.dll.
1435 * stylesheet.xsl: Use GetParameterType() to emit the return type of
1436 explicit/implicit operators, as they can be/use generic arguments.
1437 * DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
1438 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
1439 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Del.xml,
1440 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
1441 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html:
1442 Flush to match current output.
1444 2006-11-22 Jonathan Pryor <jonpryor@vt.edu>
1446 * monodocer.cs: Don't generate documentation/prototypes for non-public
1447 property get/set accessors. Patch from Ivan N. Zlatev.
1449 2006-11-01 Jonathan Pryor <jonpryor@vt.edu>
1451 * monodocer.cs: When importing -importslashdoc documentation, convert
1452 <seealso/> elements into <altmember/> elements (as the former is the
1453 recommended element within ECMA-334, while the latter is the actual
1454 element used for our ECMA documentation).
1455 * DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml: Flush.
1457 2006-10-27 Jonathan Pryor <jonpryor@vt.edu>
1459 * stylesheet.xsl: Generate more correct string id's for "id" attribute
1460 values, so that string ids match the output of CSC.EXE 2.0. Changes:
1461 append ``N instead of `N for generic methods, and use the correct 0-based
1462 type parameter index, not a 1-based index.
1463 * DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
1464 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1465 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1466 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
1467 DocTest/html.expected/Mono.DocTest/UseLists.html: Flush.
1469 2006-10-24 Jonathan Pryor <jonpryor@vt.edu>
1471 * DocTest-v1.cs: Add /doc comments (for use with `make
1472 check-monodocer-importslashdoc`).
1473 * DocTest-v2.patch: Update (due to changes in DocTest-v1.cs).
1474 * Makefile.am: Add check-monodocer-importslashdoc,
1475 check-monodocer-importslashdoc-update targets.
1476 * monodocer.cs: Fix -importslashdoc. Massively refactor generation of
1477 strings from MemberInfos (Type, MethodInfo, etc.) so that commonalities
1478 between DocType, C#, and /doc string IDs can be shared and easily
1479 customized (as opposed to dealing with the > 100 line FillDocTypeName()
1480 method, which was already too complex).
1481 * DocTest/en.expected.importslashdoc/index.xml,
1482 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic.xml,
1483 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1.xml,
1484 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`2.xml,
1485 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/GenericBase`1.xml,
1486 DocTest/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1487 DocTest/en.expected.importslashdoc/Mono.DocTest.xml,
1488 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget.xml,
1489 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Del.xml,
1490 DocTest/en.expected.importslashdoc/Mono.DocTest/DocValueType.xml,
1491 DocTest/en.expected.importslashdoc/Mono.DocTest/IProcess.xml,
1492 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass.xml,
1493 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+NestedClass`1.xml,
1494 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+IMenuItem.xml,
1495 DocTest/en.expected.importslashdoc/Mono.DocTest/UseLists.xml,
1496 DocTest/en.expected.importslashdoc/Mono.DocTest/Color.xml,
1497 DocTest/en.expected.importslashdoc/Mono.DocTest/Widget+Direction.xml:
1498 Added; expected output for `make check-monodocer-importslashdoc'.
1500 2006-10-19 Jonathan Pryor <jonpryor@vt.edu>
1502 * Makefile.am: Change check-monodocer target to add a `monodocer -namespace'
1503 check, as `-namespace' would use a bad filename generation algorithm.
1504 * monodocer.cs: Don't use Type.Name (or equivalent) to generate filenames,
1505 but use GetTypeFileName(), so that Foo<T> only tries to open the file
1506 Foo`1, instead of the file Foo<T> which (1) is wrong, we never generate
1507 filenames like that, and (2) fails horribly on Win32 (as '<' and '>' are
1508 invalid path characters).
1510 2006-10-19 Jonathan Pryor <jonpryor@vt.edu>
1512 * monodocer.cs: Sort member ordering so that when the order of members
1513 returned by Type.GetMembers() changes (as it did between 1.1.17 and
1514 1.1.18) the order of the documentation members won't change (leading to
1515 "errors" in the regression tests).
1516 * DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
1517 DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1518 DocTest/en.expected/Mono.DocTest/Widget.xml,
1519 DocTest/en.expected/Mono.DocTest/DocValueType.xml,
1520 DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
1521 DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
1522 DocTest/en.expected/Mono.DocTest/UseLists.xml,
1523 DocTest/en.expected/Mono.DocTest/Color.xml,
1524 DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
1525 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
1526 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml,
1527 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1528 DocTest/en.expected.since/Mono.DocTest/DocValueType.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/UseLists.xml,
1532 DocTest/en.expected.since/Mono.DocTest/Color.xml,
1533 DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
1534 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1535 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1536 DocTest/html.expected/Mono.DocTest/Color.html,
1537 DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
1538 DocTest/html.expected/Mono.DocTest/Widget.html,
1539 DocTest/html.expected/Mono.DocTest/DocValueType.html,
1540 DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
1541 DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
1542 DocTest/html.expected/Mono.DocTest/UseLists.html: Flush. Since monodocer
1543 generates a different member ordering, *everything* gets a different
1546 2006-10-12 Jonathan Pryor <jonpryor@vt.edu>
1548 * monodocer.cs: Add support for inserting Docs/since element. This element
1549 is *only* inserted for NEW type/members, never updated, and is only
1550 inserted if the -since:SINCE command-line argument is provided.
1551 * DocTest.cs: Renamed to DocTest-v1.cs.
1552 * Makefile.am: Add DocTest.dll-v1, DocTest.dll-v2, check-monodocer-since,
1553 check-monodocer-since-update, check targets.
1554 * DocTest-v2.patch: Patch file applied to DocTest-v1.cs to get DocTest.dll
1556 * DocTest/en.expected.since/index.xml,
1557 DocTest/en.expected.since/Mono.DocTest.xml,
1558 DocTest/en.expected.since/Mono.DocTest/AddedType.xml,
1559 DocTest/en.expected.since/Mono.DocTest/Color.xml,
1560 DocTest/en.expected.since/Mono.DocTest/DocValueType.xml,
1561 DocTest/en.expected.since/Mono.DocTest/IProcess.xml,
1562 DocTest/en.expected.since/Mono.DocTest/UseLists.xml,
1563 DocTest/en.expected.since/Mono.DocTest/Widget.xml,
1564 DocTest/en.expected.since/Mono.DocTest/Widget+Del.xml,
1565 DocTest/en.expected.since/Mono.DocTest/Widget+Direction.xml,
1566 DocTest/en.expected.since/Mono.DocTest/Widget+IMenuItem.xml,
1567 DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass.xml,
1568 DocTest/en.expected.since/Mono.DocTest/Widget+NestedClass`1.xml,
1569 DocTest/en.expected.since/Mono.DocTest.Generic.xml,
1570 DocTest/en.expected.since/Mono.DocTest.Generic/GenericBase`1.xml,
1571 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1.xml,
1572 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1573 DocTest/en.expected.since/Mono.DocTest.Generic/MyList`2.xml: Added;
1574 expected output for DocTest.dll v2.0.0.0.
1576 2006-10-11 Jonathan Pryor <jonpryor@vt.edu>
1578 * stylesheet.xsl: Add /Members/Docs node in GetInheritedMembers() so that
1579 GetLinkId() sees typeparam elements for type replacement in parameters for
1580 members of base types. Make sure that "simple" type arguments are
1581 replaced, e.g. T --> `1.
1582 TODO: figure out type replacements for nested types.
1583 * DocTest/html.expected/Mono.DocTest/UseLists.html,
1584 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
1585 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1586 DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
1587 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html: Change link id's
1588 and targets for proper type replacements within parameters.
1590 2006-10-10 Joshua Tauberer <jit@occams.info>
1592 * monodocer.cs: Fixed a bug in WriteElement that would put
1593 nodes in the wrong place if some node in the path already
1595 - To prevent TypeParameters from always being put at the
1596 end on an update, don't delete that node in an update, just
1598 - Update the DisplayName attribute in index.xml on doc updates.
1599 * DocTest/*: Updated for the DisplayName fix, and also put
1600 into a pristine state (I had committed them as an update,
1601 which put the TypeParameters block at the end of the files.)
1603 2006-10-09 Joshua Tauberer <jit@occams.info>
1605 * monodocer.cs: Update a type's name attributes during an update
1606 because generic argument names may change even if filename
1608 - Added a Type/TypeParameters section which includes type
1609 parameters that come from the declaring type, for nested types.
1610 - When inheriting from a generic type, added a BaseTypeArguments
1611 section which maps type parameters on the base type's type
1612 definition to types instantiating those parameters. i.e.:
1614 class Y<U> : X<U> { }
1615 Y gets a mapping in its BaseType node from T to U.
1616 * stylesheet.xsl: Don't attempt to link to a generic type
1617 parameter, just display it in italics. And when displaying
1618 inherited members, try to replace generic type parameters
1619 in the base type with the types that have instantiated them
1621 * The DocTests are updated to show off these things.
1623 2006-10-08 Joshua Tauberer <jit@occams.info>
1625 * monodocer.cs: Track which members have been seen in the XML file
1626 not by putting MemberInfos into a hashtable, which seems to
1627 not always work right, but instead by their (string) signature.
1628 - Get custom attribute data with the new 2.0 CustomAttributeData
1629 classes, so that we can reconstruct what the constructor actually
1631 - Hide System.Runtime.InteropServices.Out attributes since it is
1632 fake and already in the RefType XML attribute.
1633 - Structs weren't getting their interfaces listed in their C# type
1635 * monodocs2html.cs: Don't override the default XSLT URI resolver anymore.
1636 * stylesheet.xsl: Get the index.xml document at the start while we're
1637 sure we have the right base path (the XML document being transformed).
1638 - Display inherited members in a type's member list when the base type
1639 is documented in the same monodocer document set.
1640 - Make sure there's a space between a method's parameters and return
1641 value type in the member list.
1642 * DocTest: Updated to test these things.
1644 2006-10-06 Jonathan Pryor <jonpryor@vt.edu>
1646 * overview.xsl: When generating a Namespace/index.html file, we should
1647 insert the namespace remarks as well. (This *should* have been done, but
1648 the remarks selection was relative to '.', not to the provided $ns. :-(
1649 * DocTest/html.expected/Mono.DocTest.Generic/index.html,
1650 DocTest/html.expected/Mono.DocTest/index.html: Flush.
1652 2006-10-06 Jonathan Pryor <jonpryor@vt.edu>
1654 * Makefile.am: Fix -update targets so they don't delete .svn/*.
1655 * monodocer.cs: Don't key off of DisplayName to insert new <Type> elements,
1656 as this will result in updating all existing documentation (rather silly).
1657 Key off of Name instead, and only create a DisplayName attribute if it
1659 * DocTest/en.expected/index.xml: Update to latest monodocer output.
1660 * monodocs2html.cs: If DisplayName doesn't exist, fall back to
1661 Name ("legacy" behavior, now made current due to change in monodocer.cs).
1662 * stylesheet.xsl: For "Name [Generic ] [MemberType]" descriptions, make the
1663 2nd space part of "Generic". Otherwise we get double spaces for
1664 non-generic members, e.g. "Name [MemberType]".
1665 * overview.xsl: Fallback to @Name if @DisplayName doesn't exist.
1666 * DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
1667 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1668 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1669 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
1670 DocTest/html.expected/Mono.DocTest/Widget.html,
1671 DocTest/html.expected/Mono.DocTest/DocValueType.html,
1672 DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
1673 DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
1674 DocTest/html.expected/Mono.DocTest/UseLists.html: Update to latest
1675 monodocs2html output.
1677 2006-10-06 Jonathan Pryor <jonpryor@vt.edu>
1679 * Makefile.am: Build with gmcs; add `-debug' to compile lines; add
1680 DocTest.dll, check-monodocer, check-monodocer-update, check-monodocs2html/
1681 check-monodocs2html-update targets for unit tests.
1682 * monodocer.cs: Major overhaul for Generics support. Documentation
1683 generated follows the pattern used in CLILibraryTypes.xml from ECMA-335.
1684 - Remove some warnings about unused variables.
1685 - Don't assume that Type.FullName is always what we want, but instead
1686 build a C# typename from the Type information. This is needed to nicely
1687 deal with generics, as the FullName for Foo<int> would be
1688 Foo[[System.Int32, mscorlib]], while we really want Foo<int>.
1689 - For index.xml files, insert a File attribute, as the Type name won't
1690 match the filename for generic types (Foo<T> is the file Foo`1.xml).
1691 - For GetMember(), remove generic parameters before using Type.GetMember()
1692 with the member name.
1693 - Code refactoring so that <param/> and <typeparam/> generation & updating
1695 - Properly use `this' for method name on indexers.
1696 * monodocs2html.cs: Add Generics support -- use the @File attribute instead
1697 of assuming that @Name contains the proper filename.
1698 * defaulttemplate.xsl: Use <h1> instead of <div>; add CSS for
1699 `.InnerSignatureTable tr' and `.TypePermissionTable tr'.
1700 * overview.xsl: If there are fewer than $max-types (20) types in the
1701 assembly, show them all in the top-level index.html, no matter how many
1702 namespaces are present. Otherwise, provide links to the
1703 Namespace/index.html files, so that things don't suddenly look different
1704 as soon as you go from 1 namespace to > 1 namespaces in an assembly.
1705 Use <h2/> instead of <div/>.
1706 * stylesheet.xsl: Major overhaul for Generics support, some re-indentation.
1707 - Use <h2/>...<h4/> instead of <div/>
1708 - Allow output to validate against XHTML.
1709 - Don't use generate-id(), but instead generate member ID's manually so
1710 that we can properly refer to them from outside the current page.
1711 - Add support for <see cref=""/> translation to non-types --
1712 constructors, methods, properties, fields, events. These can refer to
1713 members from a different file, since generate-id() is no longer used.
1714 - Update the mono-docs site so links to System.* types work.
1715 - Add support for additional Mono.* namespaces on the mono-docs site.
1716 - Properly display C# indexers ("type this [params]", not
1717 "type Item [params]").
1718 - Generate documentation for <typeparam/> elements.
1719 * DocTest.cs: Added; Source for DocTest.dll, used by unit tests.
1720 * DocTest/html.expected/Mono.DocTest/Widget+NestedClass.html,
1721 DocTest/html.expected/Mono.DocTest/Widget+NestedClass`1.html,
1722 DocTest/html.expected/Mono.DocTest/Widget+IMenuItem.html,
1723 DocTest/html.expected/Mono.DocTest/DocValueType.html,
1724 DocTest/html.expected/Mono.DocTest/IProcess.html,
1725 DocTest/html.expected/Mono.DocTest/index.html,
1726 DocTest/html.expected/Mono.DocTest/Widget+Direction.html,
1727 DocTest/html.expected/Mono.DocTest/Color.html,
1728 DocTest/html.expected/Mono.DocTest/Widget+Del.html,
1729 DocTest/html.expected/Mono.DocTest/UseLists.html,
1730 DocTest/html.expected/Mono.DocTest/Widget.html,
1731 DocTest/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html,
1732 DocTest/html.expected/Mono.DocTest.Generic/index.html,
1733 DocTest/html.expected/Mono.DocTest.Generic/MyList`1.html,
1734 DocTest/html.expected/Mono.DocTest.Generic/MyList`2.html,
1735 DocTest/html.expected/Mono.DocTest.Generic/GenericBase`1.html,
1736 DocTest/html.expected/index.html,
1737 DocTest/en.expected/Mono.DocTest.Generic.xml,
1738 DocTest/en.expected/Mono.DocTest/Widget+IMenuItem.xml,
1739 DocTest/en.expected/Mono.DocTest/IProcess.xml,
1740 DocTest/en.expected/Mono.DocTest/Widget.xml,
1741 DocTest/en.expected/Mono.DocTest/Widget+NestedClass`1.xml,
1742 DocTest/en.expected/Mono.DocTest/DocValueType.xml,
1743 DocTest/en.expected/Mono.DocTest/Widget+Direction.xml,
1744 DocTest/en.expected/Mono.DocTest/Widget+NestedClass.xml,
1745 DocTest/en.expected/Mono.DocTest/Widget+Del.xml,
1746 DocTest/en.expected/Mono.DocTest/UseLists.xml,
1747 DocTest/en.expected/Mono.DocTest/Color.xml,
1748 DocTest/en.expected/Mono.DocTest.Generic/GenericBase`1.xml,
1749 DocTest/en.expected/Mono.DocTest.Generic/MyList`1.xml,
1750 DocTest/en.expected/Mono.DocTest.Generic/MyList`2.xml,
1751 DocTest/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml,
1752 DocTest/en.expected/index.xml, DocTest/en.expected/Mono.DocTest.xml:
1753 Added. Expected output for monodocer (en.expected) and
1754 monodocs2html (html.expected).
1756 2006-04-01 Joshua Tauberer <tauberer@for.net>
1758 * monodocs2html.cs: Skip files that are missing.
1760 2006-03-09 Joshua Tauberer <tauberer@for.net>
1762 * monodocer.cs: Reverted all of the Cecil changes. Ah well.
1764 2006-03-04 Joshua Tauberer <tauberer@for.net>
1766 * monodocer.cs: Using Cecil now! (Some Cecil fixes
1767 need to be committed.)
1769 2006-03-03 Joshua Tauberer <tauberer@for.net>
1771 * monodocer.cs: Don't change up whitespace unless user says so.
1772 That makes it hard to see differences against svn.
1774 2006-01-12 Jonathan Pryor <jonpryor@vt.edu>
1776 * bsd-man-to-ecma.pl, bsd-man-to-exception.pl: Added; scripts to help
1777 convert BSD man pages into ECMA XML formats. Run `perldoc PROGRAM` for
1778 program documentation.
1779 * Makefile.am: Add bsd-man-to-ecma.pl and bsd-man-to-exception.pl to
1782 2005-08-11 Dan Winship <danw@novell.com>
1784 * monodocer.cs: Don't preserve whitespace when reading the old
1785 doc, and don't add any whitespace when creating the new doc. Just
1786 let the XmlTextWriter handle indentation and it will all just
1789 2005-08-03 Atsushi Enomoto <atsushi@ximian.com>
1791 * monodocer.cs : update name attribute in paramref elements in sync
1792 with that of param element.
1794 2005-07-09 Joshua Tauberer <tauberer@for.net>
1796 From Rodolfo Campero <rodolfo.campero@gmail.com>
1798 * monodocs2slashdoc.cs: Updated for changes in
1799 index.xml for documenting multiple assemblies.
1800 This app now writes out XML files for each assembly
1801 as well as NamespaceSummaries.xml to the working
1804 2005-06-12 Joshua Tauberer <tauberer@for.net>
1806 * monodocer.cs: Added --importslashdoc option to
1807 import the contents of /doc-generated xml docs
1808 into the generated files.
1810 2005-06-09 Joshua Tauberer <tauberer@for.net>
1812 * monodocer.cs : When documenting a single assembly,
1813 default the Title in index.xml to the name of the
1816 2005-06-04 Eric Butler <eric@extremeboredom.net>
1818 (copied from ChangeLog in parent directory)
1820 - Now exits with an exit code of 1 in the event of an error
1821 - Added '-name' command line argument
1822 - Use above argument for <Title> element
1824 2005-06-01 Joshua Tauberer <tauberer@for.net>
1826 * monodocer.cs : Old index.xml files need to have new nodes
1827 created for multiple assemblies, and the old Assembly and
1828 Attributes nodes removed. Added a Title element for 2html.
1830 * overview.xsl : Revised monodocs2html to use the Title
1831 element in index.xml for page titles, rather than the
1832 assembly name, which isn't available anymore since there
1833 may be more than one assembly.
1835 2005-05-23 Mike Kestner <mkestner@novell.com>
1837 * monodocer.cs : add multiple assembly updating.
1839 2005-05-09 Joshua Tauberer <tauberer@for.net>
1841 * Thanks for pushing me to use a ChangeLog.
1842 * Disallow documenting types in the root namespace (type.Namespace ==
1844 * When a <code> tag has a 'src' attribute, monodocer will replace
1845 the contents of the element with the text in the indicated file.
1846 the path is relative to the path given as the --path option.
1847 * Properties that have different access modifiers on their accessors
1848 are now given signatures that reflect that. (But Monodoc doesn't
1849 recognize this properly. A format change is needed.)
1850 * monodocs2html: Create the destination directory if it doesn't exist.
1852 2005-01-29 Jonathan Pryor <jonpryor@vt.edu>
1855 * monodocer.cs (GetTypeFileName): Add check for type.Namespace == null.
1856 Fixes NullReferenceException when trying to update Mono.Posix.dll.