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