On Tue, May 08, 2007 at 11:06:14AM -0400, Barry Warsaw wrote:
I'm not so sure. I feel very uncomfortable making /any/ non-bug-fix
changes to 2.1, perhaps even limiting them to critical bug fixes that
address security or reliability issues. Better (IMO) to fairly
quickly get a conservative 2.2 out sooner, along the lines I
described in an earlier message.
I have an idea for a proposed conservative approach for 2.1:
Add two mm_cfg settings: CSS_FILES and JS_FILES, while are lists (alternatively, whitespace-separated strings):
CSS_FILES = ['/css/mailman.css', '/css/custom.css'] JS_FILES = ['/js/switcher.js', '/js/foo.js']
Make generated HTML pages contain <link rel=stylesheet> for each of the CSS files, and <script src='<js file>'> for each JS file.
Wrap the body of Mailman-generated pages in <div id="mailman">...</div>.
That's it.
This lets people apply CSS and JS customizations to all of Mailman's pages, and the #mailman lets them include MM-specific CSS directives without breaking their existing CSS. JS files are included because people might use them for style switching. Mailman still wouldn't use any JS itself.
Possibly we could apply the portion of the patch that generates tags like <br /> instead of <br>, but since we wouldn't be adding a DOCTYPE to the pages, it wouldn't have much effect. Doing <br /> would make life easier for people including MM-generated HTML within an XHTML page, but I doubt very many people do that.
For 2.2, add:
Restructure HTML to use semantic markup and CSS instead of tables.
Add a DOCTYPE to the HTML output and check for validity. Hand-written HTML in list configs. might break validity; IMHO that shouldn't be our problem to fix. We might choose HTML 4.01 validity to avoid imposing XHTML correctness on such hand-written text.
If the MM developers are OK with taking out the WEB_*_COLOR config settings, remove them with no concern for compatibility.
Install a static mailman.css file.
Or we can do the conservative approach for 2.2 and the larger rewrite for 3.0.
--amk