1 2009-04-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
3 * ecma-provider.cs: remove 'using'.
4 * provider.cs: if there's a directory with the base name, read the
5 files from there instead of from the .zip file.
7 2009-03-01 Jonathan Pryor <jpryor@novell.com>
9 * Monodoc/ecma-provider.cs: Viewing type members (plural, e.g. the
10 Fields sub-node) would result in a stack overflow within
11 Resources/mdoc-html-utils.xsl:GetInheritedMembers(), because the
12 document() XSLT function was being used to obtain the base type's
13 documentation. It stack overflowed because the XmlUrlResolver was
14 being used, which when given e.g. file:///DocAttribute.xml, would
15 return file:///DocAttribute.xml (which makes sense), but it was
16 non-terminating. (I find this troubling as it should have been
17 trying to resolve e.g. System.Attribute, not DocAttribute; it must
18 be some XmlTransform-fu that was substituting documents.)
19 The fix is for EcmaUncompiledHelpSource to provide an alternate
20 document XmlResolver, one which always returns null from
21 XmlResolver.ResolveUri(), thus preventing endless recursion.
23 2009-03-01 Jonathan Pryor <jpryor@novell.com>
25 * Mono.Documentation/XmlDocUtils.cs: It's possible for the `loader'
26 delegate to return `null' if no further base types are found, so
27 stop processing if we find a null base type.
28 * Monodoc/provider.cs:
29 - Make GetHelpStream() virtual so that EcmaUncompiledHelpSource can
30 override it, as the default zip-based behavior is inappropriate.
31 - Make GetHelpXmlWithChanges() virtual so that
32 EcmaUncompiledHelpSource can override it, as the default zip-based
33 behavior is inappropriate.
34 - When initializing UncompiledHelpSources, set the
35 HelpSource.RootTree property (avoids an NRE from
36 EcmaHelpSource.GetTextFromUrl() when it reads RootTree.HelpSources).
37 * Monodoc/ecma-provider.cs:
38 - Within the XmlDocUtils.AddExtensionMethods() call, don't always
39 prefix the type with "T:", as sometimes the type will already start
40 with "T:", which is the case with EcmaUncompiledHelpSource ids.
41 - Add EcmaUncompiledHelpSource.GetHelpStream() and
42 EcmaUncompiledHelpSource.GetHelpXmlWithChanges(), which Do The
43 Right Thing for the file-based backend.
45 2009-03-01 Jonathan Pryor <jpryor@novell.com>
47 * Monodoc/ecma-provider.cs: For some reason,
48 EcmaHelpSource.GetNamespaceDocument() wasn't being used anymore,
49 which is what EcmaUncompiledHelpSource overrides to permit loading
50 of local files. Result: an exception when trying to view namespaces
51 of local (non-assembled) directories. Oops. "Fixes" 443508.
53 2009-02-26 Jonathan Pryor <jonpryor@vt.edu>
55 * Monodoc/provider.cs: Revert; Don't check for Tree.Nodes == null, as it
56 happens in numerous places. Instead, take a page out of the "I
57 never should have invented `null'" book, and ensure that Tree.Nodes
58 can never be null. This fixes the "HelpSource has 0 items" issue
59 and several other related ones.
61 2009-02-26 Jonathan Pryor <jonpryor@vt.edu>
63 * Monodoc/provider.cs: It's possible for a HelpSource to have 0
64 elements (which can be done by e.g. running `mdoc assemble' on an
65 empty directory), in which case HelpSource.Tree.Nodes will be null.
66 Make sure that we don't get a NullReferenceException.
67 Patch thanks to Theerud Lawtrakul. Fixes #443699.
69 2009-02-25 Jonathan Pryor <jonpryor@vt.edu>
72 - s/TEST_FILES/MAN_TEST_FILES/g: $(TEST_FILES) is used by the normal
73 build process, so the local definition is lost (and thus ignored).
74 Result: Test/* isn't actually copied. Oops. Changing to
75 MAN_TEST_FILES allows things to be copied.
76 - Fix the filenames within $(MAN_TEST_FILES) so `make dist-local'
80 2009-02-09 Jonathan Pryor <jonpryor@vt.edu>
82 * Makefile: Don't include mono-ecma-css.js as a resource.
83 * Monodoc/ecma-provider.cs: Insert helper.js, not mono-ecma-css.js.
84 * Monodoc/provider.cs: Surround the contents of `helper.js' with a
85 <script/> block so that valid HTMl is generated.
86 * Resources/helper.js: Remove <script/> block, so that `helper.js' is an
87 actual JavaScript file, not an SGML file w/ JavaScript content.
88 * Resources/mono-ecma-css.js: Remove; use Resources/helper.js instead.
90 2009-01-05 Jonathan Pryor <jonpryor@vt.edu>
92 * Makefile: Fix $(the_lib) dependencies so that monodoc.dll is rebuilt
93 when one of Resources/* is modified.
94 * Resources/mdoc-html-utils.xsl: Rework the Requirements block so that
95 it doesn't require //AssemblyInfo or //AssemblyVersion. This allows
96 `mdoc update -fno-assembly-versions ...`-produced XML to still
97 produce HTML with a Requirements section (skipping the Assembly
98 Versions block but generating the Namespace and Assembly blocks).
99 Change the behavior of //since generation so that instead of
100 printing out a note before the method summary, a Since block is added
101 to the Requirements section, and the Since block contains the
102 //since/@version text. All this to make Mike Kestner happier. :-)
104 2008-10-29 Jonathan Pryor <jonpryor@vt.edu>
106 * Monodoc/xhtml-provider.cs: Use HelpSource.Message(), not
109 2008-10-28 Jonathan Pryor <jonpryor@vt.edu>
111 * Monodoc/provider.cs: Add HelpSource.InlineCss and
112 HelpSource.InlineJavaScript virtual properties, so that the help
113 source can provide specific CSS and JavaScript to be included into
114 the generated HTML document. This is used by the ASP.NET front-end,
115 as it needs to insert the CSS & JavaScript separately (as it also
116 inserts its own CSS & JavaScript).
117 * Monodoc/ecma-provider.cs, Monodoc/ecmaspec-provider.cs,
118 Monodoc/error-provider.cs: Override InlineCss & InlineJavaScript, as
121 2008-10-24 Jonathan Pryor <jonpryor@vt.edu>
123 * Monodoc/addins-provider.cs, Monodoc/ecma-provider.cs,
124 Monodoc/ecmaspec-provider.cs, Monodoc/error-provider.cs,
125 Monodoc/man-provider.cs, Monodoc/monohb-provider.cs,
126 Monodoc/provider.cs: Remove Console.WriteLine() spew; helps cleanup
127 `make` output in mcs/docs (from `mdoc assemble`, which indirectly
128 invokes most of the *-provider files). We solve this problem by
129 providing a TraceLevel-based message system, so that messages are
130 only generated if they are less than or equal to the requested
131 output level (thus skipping the more verbose "every file" messages
132 from ecma-provider.cs & error-provider.cs).
133 * provider.cs: Change Node.CompareTo() to use a "natural sorting"
134 algorithm -- this allows the C# Language Specification nodes to
135 continue being displayed in the correct order.
137 2008-10-21 Jonathan Pryor <jonpryor@vt.edu>
139 * Monodoc/provider.cs:
140 - Fix Node.Sort() so that it doesn't NRE if nodes == null.
141 - Fix Node.CompareTo() so that it can sort Nodes that haven't been
143 - Add "libraries" as an alias for "root", so that .source files can
144 refer to the parent "libraries" (which would allow us to change
145 the location of "libraries" in the future, should we want to).
146 - If a /monodoc/source/@path refers to a nonexistant node, then
147 insert the contents under Various instead of ignoring it.
148 - Sort the top-level nodes.
149 - Sort the `parent` node after inserting children under it. This
150 allows multiple different .source files to insert nodes under the
151 same parent node and still have the child nodes sorted as most
152 mortals would expect.
153 - Support a //node/@parent attribute, which allows for creating
154 nodes underneath the specified parent node. This allows multiple
155 different .source files to contribute to the tree and depend upon
156 each other. Thus, instead of having a single monodoc.xml file
157 that needs to know the entire tree in advance, the entire tree can
158 be spread across multiple .source files and filled at runtime.
160 2008-10-18 Jonathan Pryor <jonpryor@vt.edu>
162 * Makefile $(LIBRARY_PACKAGE): Set to `monodoc`, as we historically
163 have had a monodoc package (and thus should preserve it).
165 2008-10-17 Jonathan Pryor <jonpryor@vt.edu>
167 * Makefile: Distribute monodoc.dll.config.in.
169 2008-10-17 Jonathan Pryor <jonpryor@vt.edu>
171 * Makefile: Generate a monodoc.dll.config (installed by gacutil), so
172 that monodoc.dll can find the documentation sources.
174 2008-10-16 Jonathan Pryor <jonpryor@vt.edu>
176 * Mono.Documentation/ManifestResourceResolver.cs,
177 Mono.Documentation/XmlDocUtils.cs: Make types public so that they
178 can be used from ../mdoc/mdoc.exe.
180 2008-10-16 Jonathan Pryor <jonpryor@vt.edu>
182 * Makefile: Update $(thisdir).
184 2008-10-16 Jonathan Pryor <jonpryor@vt.edu>
186 * Assmbly/AssemblyInfo.cs: Change location of mono.snk (since the
187 monodoc directory was moved from mcs/class to mcs/tools).
189 2008-10-16 Jonathan Pryor <jonpryor@vt.edu>
191 * Makefile: Improve `make clean` support.
193 2008-10-16 Jonathan Pryor <jonpryor@vt.edu>
195 * Makefile: Add EXTRA_DISTFILES; monodoc.dll should depend upon
196 Makefile (in case the /resource: lines change); shorten the .gif
199 2008-10-16 Jonathan Pryor <jonpryor@vt.edu>
201 * Test (svn:ignore): Ignore generated files.
202 * Makefile: Add tests for man-provider.
204 2008-10-16 Jonathan Pryor <jonpryor@vt.edu>
206 * ChangeLog: Added/Started.
207 * Makefile: Added; build monodoc.dll.