* Monodoc/provider.cs: Revert; Don't check for Tree.Nodes == null, as it
[mono.git] / mcs / tools / monodoc / ChangeLog
1 2009-02-26  Jonathan Pryor  <jonpryor@vt.edu>
2
3         * Monodoc/provider.cs: Revert; Don't check for Tree.Nodes == null, as it
4           happens in numerous places.  Instead, take a page out of the "I
5           never should have invented `null'" book, and ensure that Tree.Nodes
6           can never be null.  This fixes the "HelpSource has 0 items" issue
7           and several other related ones.
8
9 2009-02-26  Jonathan Pryor  <jonpryor@vt.edu>
10
11         * Monodoc/provider.cs: It's possible for a HelpSource to have 0
12           elements (which can be done by e.g. running `mdoc assemble' on an 
13           empty directory), in which case HelpSource.Tree.Nodes will be null.
14           Make sure that we don't get a NullReferenceException.
15           Patch thanks to Theerud Lawtrakul.  Fixes #443699.
16
17 2009-02-25  Jonathan Pryor  <jonpryor@vt.edu>
18
19         * Makefile: 
20           - s/TEST_FILES/MAN_TEST_FILES/g: $(TEST_FILES) is used by the normal
21             build process, so the local definition is lost (and thus ignored).
22             Result: Test/* isn't actually copied.  Oops.  Changing to
23             MAN_TEST_FILES allows things to be copied.
24           - Fix the filenames within $(MAN_TEST_FILES) so `make dist-local'
25             works without error.
26           - Fixes #479753.
27
28 2009-02-09  Jonathan Pryor  <jonpryor@vt.edu>
29
30         * Makefile: Don't include mono-ecma-css.js as a resource.
31         * Monodoc/ecma-provider.cs: Insert helper.js, not mono-ecma-css.js.
32         * Monodoc/provider.cs: Surround the contents of `helper.js' with a
33           <script/> block so that valid HTMl is generated.
34         * Resources/helper.js: Remove <script/> block, so that `helper.js' is an
35           actual JavaScript file, not an SGML file w/ JavaScript content.
36         * Resources/mono-ecma-css.js: Remove; use Resources/helper.js instead.
37
38 2009-01-05  Jonathan Pryor  <jonpryor@vt.edu>
39
40         * Makefile: Fix $(the_lib) dependencies so that monodoc.dll is rebuilt
41           when one of Resources/* is modified.
42         * Resources/mdoc-html-utils.xsl: Rework the Requirements block so that
43           it doesn't require //AssemblyInfo or //AssemblyVersion.  This allows
44           `mdoc update -fno-assembly-versions ...`-produced XML to still
45           produce HTML with a Requirements section (skipping the Assembly
46           Versions block but generating the Namespace and Assembly blocks).
47           Change the behavior of //since generation so that instead of
48           printing out a note before the method summary, a Since block is added
49           to the Requirements section, and the Since block contains the
50           //since/@version text.  All this to make Mike Kestner happier. :-)
51
52 2008-10-29  Jonathan Pryor  <jonpryor@vt.edu>
53
54         * Monodoc/xhtml-provider.cs: Use HelpSource.Message(), not 
55           Console.WriteLine().
56
57 2008-10-28  Jonathan Pryor  <jonpryor@vt.edu>
58
59         * Monodoc/provider.cs: Add HelpSource.InlineCss and
60           HelpSource.InlineJavaScript virtual properties, so that the help
61           source can provide specific CSS and JavaScript to be included into
62           the generated HTML document.  This is used by the ASP.NET front-end,
63           as it needs to insert the CSS & JavaScript separately (as it also
64           inserts its own CSS & JavaScript).
65         * Monodoc/ecma-provider.cs, Monodoc/ecmaspec-provider.cs,
66           Monodoc/error-provider.cs: Override InlineCss & InlineJavaScript, as
67           appropriate.
68
69 2008-10-24  Jonathan Pryor  <jonpryor@vt.edu>
70
71         * Monodoc/addins-provider.cs, Monodoc/ecma-provider.cs,
72           Monodoc/ecmaspec-provider.cs, Monodoc/error-provider.cs,
73           Monodoc/man-provider.cs, Monodoc/monohb-provider.cs,
74           Monodoc/provider.cs: Remove Console.WriteLine() spew; helps cleanup
75           `make` output in mcs/docs (from `mdoc assemble`, which indirectly
76           invokes most of the *-provider files).  We solve this problem by
77           providing a TraceLevel-based message system, so that messages are
78           only generated if they are less than or equal to the requested
79           output level (thus skipping the more verbose "every file" messages
80           from ecma-provider.cs & error-provider.cs).
81         * provider.cs: Change Node.CompareTo() to use a "natural sorting"
82           algorithm -- this allows the C# Language Specification nodes to
83           continue being displayed in the correct order.
84
85 2008-10-21  Jonathan Pryor  <jonpryor@vt.edu>
86
87         * Monodoc/provider.cs: 
88           - Fix Node.Sort() so that it doesn't NRE if nodes == null.
89           - Fix Node.CompareTo() so that it can sort Nodes that haven't been
90             loaded yet.
91           - Add "libraries" as an alias for "root", so that .source files can
92             refer to the parent "libraries" (which would allow us to change
93             the location of "libraries" in the future, should we want to).
94           - If a /monodoc/source/@path refers to a nonexistant node, then
95             insert the contents under Various instead of ignoring it.
96           - Sort the top-level nodes.
97           - Sort the `parent` node after inserting children under it.  This
98             allows multiple different .source files to insert nodes under the
99             same parent node and still have the child nodes sorted as most
100             mortals would expect.
101           - Support a //node/@parent attribute, which allows for creating
102             nodes underneath the specified parent node.  This allows multiple
103             different .source files to contribute to the tree and depend upon
104             each other.  Thus, instead of having a single monodoc.xml file
105             that needs to know the entire tree in advance, the entire tree can
106             be spread across multiple .source files and filled at runtime.
107
108 2008-10-18  Jonathan Pryor  <jonpryor@vt.edu>
109
110         * Makefile $(LIBRARY_PACKAGE): Set to `monodoc`, as we historically
111           have had a monodoc package (and thus should preserve it).
112
113 2008-10-17  Jonathan Pryor  <jonpryor@vt.edu>
114
115         * Makefile: Distribute monodoc.dll.config.in.
116
117 2008-10-17  Jonathan Pryor  <jonpryor@vt.edu>
118
119         * Makefile: Generate a monodoc.dll.config (installed by gacutil), so
120           that monodoc.dll can find the documentation sources.
121
122 2008-10-16  Jonathan Pryor  <jonpryor@vt.edu>
123
124         * Mono.Documentation/ManifestResourceResolver.cs, 
125           Mono.Documentation/XmlDocUtils.cs: Make types public so that they
126           can be used from ../mdoc/mdoc.exe.
127
128 2008-10-16  Jonathan Pryor  <jonpryor@vt.edu>
129
130         * Makefile: Update $(thisdir).
131
132 2008-10-16  Jonathan Pryor  <jonpryor@vt.edu>
133
134         * Assmbly/AssemblyInfo.cs: Change location of mono.snk (since the 
135           monodoc directory was moved from mcs/class to mcs/tools).
136
137 2008-10-16  Jonathan Pryor  <jonpryor@vt.edu>
138
139         * Makefile: Improve `make clean` support.
140
141 2008-10-16  Jonathan Pryor  <jonpryor@vt.edu>
142
143         * Makefile: Add EXTRA_DISTFILES; monodoc.dll should depend upon
144           Makefile (in case the /resource: lines change); shorten the .gif
145           resource names.
146
147 2008-10-16  Jonathan Pryor  <jonpryor@vt.edu>
148
149         * Test (svn:ignore): Ignore generated files.
150         * Makefile: Add tests for man-provider.
151
152 2008-10-16  Jonathan Pryor  <jonpryor@vt.edu>
153
154         * ChangeLog: Added/Started.
155         * Makefile: Added; build monodoc.dll.
156