Coder Social home page Coder Social logo

diazo's Introduction

https://travis-ci.org/plone/diazo.svg?branch=master

Diazo - We Write XSLT, So You Don't Have To

Diazo allows you to apply a theme contained in a static HTML web page to a dynamic website created using any server-side technology. With Diazo, you can take an HTML wireframe created by a web designer and turn it into a theme for your favourite CMS, redesign the user interface of a legacy web application without even having access to the original source code, or build a unified user experience across multiple disparate systems, all in a matter of hours, not weeks.

When using Diazo, you will work with syntax and concepts familiar from working with HTML and CSS. And by allowing you seamlessly integrate XSLT into your rule files, Diazo makes common cases simple and complex requirements possible.

For detailed documentation, please see diazo.org.

diazo's People

Contributors

ale-rt avatar bloodbare avatar chris2fr avatar datakurre avatar davidjb avatar davisagli avatar djay avatar ebrehault avatar ericof avatar esteele avatar garbas avatar gforcada avatar gotcha avatar huubbouma avatar jensens avatar jonstahl avatar krissik avatar lentinj avatar loechel avatar lrowe avatar marciomazza avatar mauritsvanrees avatar miohtama avatar mitchellrj avatar optilude avatar pbauer avatar petschki avatar seocam avatar simahawk avatar tisto avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

diazo's Issues

Add convenience css:theme="" for same id in content

This suggestion follows the DRY mindset. The idea is that a rule like this:

<replace
    css:content-children="#global_statusmessage"
    css:theme-children="#global_statusmessage"
    />

Could be written like this:

<replace css:content-children="#global_statusmessage" css:theme-children="" />

This is inspired in empty if-content="" syntax.

More cases:

<replace css:content-children="#global_statusmessage" css:theme="" />

Which translates to:

    <replace
        css:content-children="#global_statusmessage"
        css:theme="#global_statusmessage"
        />

And also:

<replace css:content="" css:theme="#global_statusmessage" />

Meaning:

<replace
    css:content="#global_statusmessage"
    css:theme="#global_statusmessage"
    />

While we'll be by no means enforcing anything, this has the added benefit of encouraging the best practice of renaming theme elements with the same IDs/classes as their contents' counterparts, which increases understandability of the transformations happening and thus maintainability.

Going further we could also allow one of the attributes to be omitted.

Risks:

  • Making code more cryptic (that's only if you didn't read the docs, same for if-content, I guess)
  • Forgetting to write a selector/attribute leads to unexpected behavior (idem)

Transformation fails on themes with HTML 5 data-* attributes

I'm trying to use a theme that has the following tag:

<div id="browserid-info" style="display: none;" data-user-email="[email protected]" data-request-args="{}">
File "xslt.pxi", line 596, in lxml.etree.XSLT.__call__ (src/lxml/lxml.etree.c:141082)
XSLTApplyError: Internal error: Failed to evaluate the AVT of attribute 'data-request-args'.

I've tried to use html5lib and subclass etree.HTMLParser and htm5parser.HTMLParser creating an HTML parser that supports HTML5 and also can be passed as argument to etree.parse. The parser actually worked but it didn't fix my bug since the problem is happening during transformation and not parsing. Here is where the problem happens:

output_html = transform(content_doc, **params)

Are there any params that could help me here?

Unfortunately stripping data-* attributes is not an option for me.

Newlines stripped with recent versions of libxml2/libxslt

The Plone coredev tests fail because newlines are being stripped on my laptop
running Ubuntu Saucy and @davisagli's laptop as well but pass on Plone's
Jenkins server. I downgraded my version of libxml2 to 2.8 and my version of
libxslt to 1.1.26, the versions used on Plone's Jenkins server and in Ubuntu
Quantal and confirmed that the tests then pass locally on my laptop.

Here are the failures when running under Ubuntu's Saucy libxml2 version 2.9 and
libxslt version 1.1.28:

Running zope.testing.testrunner.layer.UnitTests tests:
  Set up zope.testing.testrunner.layer.UnitTests in 0.000 seconds.
--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/indent-off/output.html

+++ now

@@ -1,3 +1 @@

-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><body><div id="target"><p>From the content</p></div></body></html>
-
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><body><div id="target"><p>From the content</p></div></body></html>


Failure in test testAll (diazo.tests.tests.Test-indent-off)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-all-attributes-theme-conditional-5/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha" dir="rtl">a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div id="alpha" dir="rtl">a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-all-attributes-theme-conditional-5)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-attribute-theme-conditional-2/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha">a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div id="alpha">a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-attribute-theme-conditional-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace-theme-children/output.html

+++ now

@@ -1,18 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha">
-      <p id="one">one</p>
-    </div>
-    <div id="beta">
-      <p id="two">two</p>
-    </div>
-    <div id="delta">
-      <p id="three">
-        <span>three</span>
-      </p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="alpha"><p id="one">one</p></div><div id="beta"><p id="two">two</p></div><div id="delta"><p id="three"><span>three</span></p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace-theme-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/conditional-rules-1/output.html

+++ now

@@ -1,16 +1,10 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Theming with portlets</title>
-  </head>
-  <body>
-    <div id="aaa">AAA</div>
-    <div id="portlet-wrapper"><h2 id="portlets-title">Portlets</h2>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>Theming with portlets</title>
+    </head>
+    <body><div id="aaa">AAA</div><div id="portlet-wrapper"><h2 id="portlets-title">Portlets</h2>
             <div id="portlets"><div class="portlet" id="portletA">Portlet A</div><div class="portlet" id="portletB">Portlet B</div></div>
-        <a id="manage-portlets-link" href="manage-portlets">Manage Portlets</a></div>
-    <div id="bbb">BBB</div>
-    <div id="footer" class="footer-with-portlets">Footer with portlets</div>
-  </body>
+        <a id="manage-portlets-link" href="manage-portlets">Manage Portlets</a></div><div id="bbb">BBB</div><div id="footer" class="footer-with-portlets">Footer with portlets</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-conditional-rules-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/copy-xsl/output.html

+++ now

@@ -1,9 +1,8 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title id="something">Site : Page title</title>
-  </head>
-  <body></body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title id="something">Site : Page title</title>
+    </head>
+    <body></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-copy-xsl)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/absolute-prefix-ie-conditional-comments/output.html

+++ now

@@ -3,7 +3,7 @@

   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <title>Absolute prefix</title>
-<!--[if lte IE 6]>
+    <!--[if lte IE 6]>
     <style type="text/css">
       @import "/abs/foo.css";      
       @import url("/abs/foo.css");
@@ -13,21 +13,21 @@

       @import url('http://site.com/foo.css');
     </style>
     <![endif]-->
-<!--[if IE]>
+    <!--[if IE]>
     <link rel="stylesheet" href="/abs/foo.css" />
     <link rel="stylesheet" href="/abs/foo.css" />
     <link rel="stylesheet" href="/foo.css" />
     <link rel="stylesheet" href="/foo.css" />
     <link rel="stylesheet" href="http://site.com/foo.css" />
     <![endif]-->
-<!--[if lte IE 6]>
+    <!--[if lte IE 6]>
     <script type="text/javascript" src="/abs/foo.js"></script>
     <script type="text/javascript" src="/abs/foo.js"></script>
     <script type="text/javascript" src="/foo.js"></script>
     <script type="text/javascript" src="/foo.js"></script>
     <script type="text/javascript" src="http://site.com/foo.js"></script>
     <![endif]-->
-<!--
+    <!--
         <script type="text/javascript" src="not-this.js"></script>
     -->
   </head>


Failure in test testAll (diazo.tests.tests.Test-absolute-prefix-ie-conditional-comments)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/multi-theme-2/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>This is theme 2</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>This is theme 2</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-multi-theme-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/modify-theme/output.html

+++ now

@@ -1,14 +1,14 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Theme title</title>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>Theme title</title>
+    
         <style type="text/css">
             /* From the rules */
             body > h1 { color: red; }
         </style>
     </head>
-  <body>
-    <div>
+    <body><div>

         <div id="from-rules">From the rules</div>
         <!-- A comment from the rules -->
@@ -21,7 +21,6 @@

             <dt>One</dt><dd>1</dd><dt>Two</dt><dd>2</dd>
         </dl>

-      </div>
-  </body>
+      </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-modify-theme)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-merge-multiple-if-true/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body class="bar foo one" dir="rtl" title="Body here">
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body class="bar foo one" dir="rtl" title="Body here"><h1>Title</h1><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-merge-multiple-if-true)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/if-path-3/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-if-path-3)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/if-path-5/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-if-path-5)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-multi-attributes-theme/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div class="foo">a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div class="foo">a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-multi-attributes-theme)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-if-merge/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p id="one">one</p>
-    <div id="beta"></div>
-  </body>
+<body><h1>Title</h1><p id="one">one</p><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-if-merge)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-all-attributes-theme-conditional-3/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha">a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div id="alpha">a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-all-attributes-theme-conditional-3)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/absolute-prefix/output.html

+++ now

@@ -22,19 +22,6 @@

     <script type="text/javascript" src="/foo.js"></script>
     <script type="text/javascript" src="http://site.com/foo.js"></script>
   </head>
-  <body>
-    <img src="/abs/foo.jpg" />
-    <img src="/abs/foo.jpg" />
-    <img src="/foo.jpg" />
-    <img src="/foo.jpg" />
-    <img src="http://site.com/foo.jpg" />
-    <input type="submit" src="/abs/foo.jpg" />
-    <input type="submit" src="/abs/foo.jpg" />
-    <input type="submit" src="/foo.jpg" />
-    <input type="submit" src="/foo.jpg" />
-    <input type="submit" src="http://site.com/foo.jpg" />
-    <a href="/abs/foo.html">Link</a>
-    <a href="#foo">Anchor</a>
-  </body>
+  <body><img src="/abs/foo.jpg" /><img src="/abs/foo.jpg" /><img src="/foo.jpg" /><img src="/foo.jpg" /><img src="http://site.com/foo.jpg" /><input type="submit" src="/abs/foo.jpg" /><input type="submit" src="/abs/foo.jpg" /><input type="submit" src="/foo.jpg" /><input type="submit" src="/foo.jpg" /><input type="submit" src="http://site.com/foo.jpg" /><a href="/abs/foo.html">Link</a><a href="#foo">Anchor</a></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-absolute-prefix)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-multi-attribute/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body class="foo" dir="rtl" title="Body here" id="thebody">
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body class="foo" dir="rtl" title="Body here" id="thebody"><h1>Title</h1><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-multi-attribute)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-all-attributes-theme-conditional-2/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div dir="rtl" id="alpha">a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div dir="rtl" id="alpha">a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-all-attributes-theme-conditional-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/ssiwait/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>theme</h1>
-<!--#include  virtual="extra.html?;filter_xpath=//*[@id%20=%20'something']" wait="yes"-->
-<!--#include  virtual="fragment.html" wait="yes"-->
-  </body>
+    <body><h1>theme</h1><!--#include  virtual="extra.html?;filter_xpath=//*[@id%20=%20'something']" wait="yes"--><!--#include  virtual="fragment.html" wait="yes"--></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-ssiwait)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/comments/output.html

+++ now

@@ -1,15 +1,13 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title id="first">Ninth Theme Page Title</title>
-    <script id="second" src="second.js" type="text/javascript"></script>
-    <link id="third" rel="stylesheet" href="third.css" />
-<!--[if lte IE 6]>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title id="first">Ninth Theme Page Title</title>
+        <script id="second" src="second.js" type="text/javascript"></script>
+        <link id="third" rel="stylesheet" href="third.css" />
+   <!--[if lte IE 6]>
        <script type="text/javascript" src="ie-only.js"></script>
    <![endif]-->
-    <link id="fourth" rel="stylesheet" href="fourth.css" />
-  </head>
-  <body></body>
+    <link id="fourth" rel="stylesheet" href="fourth.css" /></head>
+    <body></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-comments)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/if-path-4/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-if-path-4)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/absolute-prefix-disabled/output.html

+++ now

@@ -22,18 +22,6 @@

     <script type="text/javascript" src="/foo.js"></script>
     <script type="text/javascript" src="http://site.com/foo.js"></script>
   </head>
-  <body>
-    <img src="foo.jpg" />
-    <img src="./foo.jpg" />
-    <img src="../foo.jpg" />
-    <img src="/foo.jpg" />
-    <img src="http://site.com/foo.jpg" />
-    <input type="submit" src="foo.jpg" />
-    <input type="submit" src="./foo.jpg" />
-    <input type="submit" src="../foo.jpg" />
-    <input type="submit" src="/foo.jpg" />
-    <input type="submit" src="http://site.com/foo.jpg" />
-    <a href="foo.html">Link</a>
-  </body>
+  <body><img src="foo.jpg" /><img src="./foo.jpg" /><img src="../foo.jpg" /><img src="/foo.jpg" /><img src="http://site.com/foo.jpg" /><input type="submit" src="foo.jpg" /><input type="submit" src="./foo.jpg" /><input type="submit" src="../foo.jpg" /><input type="submit" src="/foo.jpg" /><input type="submit" src="http://site.com/foo.jpg" /><a href="foo.html">Link</a></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-absolute-prefix-disabled)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-if/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p id="one">one</p>
-    <div id="beta"></div>
-  </body>
+<body><h1>Title</h1><p id="one">one</p><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-if)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-attribute-content/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p>one</p>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><p>one</p><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-attribute-content)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/update-namespace-3/output.html

+++ now

@@ -1,14 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>theme</h1>
-    <div id="main"> Blah
+    <body><h1>theme</h1><div id="main"> Blah
             <div id="core" class="content">content</div>
-        </div>
-    <h2>theme</h2>
-    <div id="portlets">
+        </div><h2>theme</h2><div id="portlets">
             <div id="portlet-wrapper"><div id="portlet" class="content">portlet</div></div>
-        </div>
-  </body>
+        </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-update-namespace-3)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-before-both-children/output.html

+++ now

@@ -1,12 +1,10 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div>
+  <body><div>
       <h1>Title</h1>
       <div id="alpha">onetext</div>
       <div id="beta">two<span>b</span></div>
       <div id="delta"><span>three</span><span>d</span></div>
-    </div>
-  </body>
+    </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-before-both-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/drop-theme-children/output.html

+++ now

@@ -1,7 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div id="pagecontent"></div>
-  </body>
+  <body><div id="pagecontent"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-drop-theme-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-attribute-theme-conditional-1/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div>a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div>a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-attribute-theme-conditional-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-before/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p id="one">one</p>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body><h1>Title</h1><p id="one">one</p><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-before)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/style-script-quoting-2/output.html

+++ now

@@ -1,14 +1,13 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Theme Title</title>
-    <script type="text/javascript">
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>Theme Title</title>
+        <script type="text/javascript">
             <!--
             var x = '<div>';
             //-->
         </script>
-    <script type="text/javascript">
+        <script type="text/javascript">
             // <![CDATA[
             var y = '<div>';
             // ]]>
@@ -17,15 +16,11 @@

         <!--
         var a = '<div>';
         //-->
-    </script>
-    <script type="text/javascript">
+    </script><script type="text/javascript">
         // <![CDATA[
         var b = '<div>';
         // ]]>
-    </script>
-  </head>
-  <body>
-    <h1>Title</h1>
-  </body>
+    </script></head>
+    <body><h1>Title</h1></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-style-script-quoting-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace-content-children/output.html

+++ now

@@ -1,12 +1,10 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div>
+<body><div>
     <h1>Title</h1>
     one
     two
     <span>three</span>
-  </div>
-  </body>
+  </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace-content-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-all-attributes-content/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p>one</p>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><p>one</p><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-all-attributes-content)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/drop-content-comment/output.html

+++ now

@@ -1,8 +1,8 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Content</title>
-  </head>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>Content</title>
+        
+    </head>
 </html>



Failure in test testAll (diazo.tests.tests.Test-drop-content-comment)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-all-attributes-theme-conditional-4/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha">a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div id="alpha">a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-all-attributes-theme-conditional-4)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-attribute-not-exists/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body class="bar" dir="rtl" title="Body here" id="thebody">
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body class="bar" dir="rtl" title="Body here" id="thebody"><h1>Title</h1><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-attribute-not-exists)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-merge-separator/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha-one"></div>
-    <div id="beta"></div>
-  </body>
+<body><h1>Title</h1><div id="alpha-one"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-merge-separator)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-if-custom-param/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p id="one">one</p>
-    <div id="beta"></div>
-    <p id="two">two</p>
-  </body>
+<body><h1>Title</h1><p id="one">one</p><div id="beta"></div><p id="two">two</p></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-if-custom-param)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/allow-curly-brackets/output.html

+++ now

@@ -1,11 +1,8 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title id="something" data-json="{ diazo: 'test' }">
-      <title>A Deeper Look At diazo</title>
-    </title>
-  </head>
-  <body></body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title id="something" data-json="{ diazo: 'test' }"><title>A Deeper Look At diazo</title></title>
+    </head>
+    <body></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-allow-curly-brackets)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-all-attributes-theme/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div>a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div>a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-all-attributes-theme)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/replace-after/output.html

+++ now

@@ -1,13 +1,8 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Replace and after</title>
-  </head>
-  <body>
-    <h2>Smaller Title</h2>
-    <p> content </p>
-    <div id="footer">Footer</div>
-  </body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>Replace and after</title>
+    </head>
+    <body><h2>Smaller Title</h2><p> content </p><div id="footer">Footer</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-replace-after)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace-content-conditional-2/output.html

+++ now

@@ -1,15 +1,11 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="breadcrumbs">
+<body><h1>Title</h1><div id="breadcrumbs">
           <span id="you-are-here">You are here</span>
           <span class="crumb">foo</span>
           <span class="crumb">bar</span>
-      </div>
-    <div id="source-content">
+      </div><div id="source-content">
             <p>foo</p>
-      </div>
-  </body>
+      </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace-content-conditional-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/ssi/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>theme</h1>
-<!--#include  virtual="extra.html?;filter_xpath=//*[@id%20=%20'something']"-->
-<!--#include  virtual="fragment.html"-->
-  </body>
+    <body><h1>theme</h1><!--#include  virtual="extra.html?;filter_xpath=//*[@id%20=%20'something']"--><!--#include  virtual="fragment.html"--></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-ssi)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/if-path-7/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-if-path-7)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/multi-theme-variable-1/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>This is theme 1</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>This is theme 1</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-multi-theme-variable-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/style-script-quoting-1/output.html

+++ now

@@ -1,28 +1,20 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Theme Title</title>
-    <style type="text/css">
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>Theme Title</title>
+        <style type="text/css">
             /* From the theme */
             body > h1 { color: red; }
         </style>
-    <script type="text/javascript">
+        <script type="text/javascript">
             var x = '<div>';
         </script>
     <style type="text/css">
         /* From the content */
         div > p { color: blue; } 
-    </style>
-  </head>
-  <body>
-    <h1>Title</h1>
-    <div id="content">
-      <p>Some text</p>
-    </div>
-    <script type="text/javascript">
+    </style></head>
+    <body><h1>Title</h1><div id="content"><p>Some text</p></div><script type="text/javascript">
             var y = '<span>';
-        </script>
-  </body>
+        </script></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-style-script-quoting-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace-content/output.html

+++ now

@@ -1,15 +1,11 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="breadcrumbs">
+<body><h1>Title</h1><div id="breadcrumbs">
           <span id="prompt">Location:</span>
           <span class="crumb">foo</span>
           <span class="crumb">bar</span>
-      </div>
-    <div id="source-content">
+      </div><div id="source-content">
             <p>foo</p>
-      </div>
-  </body>
+      </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace-content)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-after/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <p id="one">one</p>
-    <div id="beta"></div>
-  </body>
+<body><h1>Title</h1><div id="alpha"></div><p id="one">one</p><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-after)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-all-attributes-theme-conditional-1/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div>a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div>a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-all-attributes-theme-conditional-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-after-theme-children/output.html

+++ now

@@ -1,18 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha">text<p id="one">one</p></div>
-    <div id="beta">
-      <span>b</span>
-      <p id="two">two</p>
-    </div>
-    <div id="delta">
-      <span>d</span>
-      <p id="three">
-        <span>three</span>
-      </p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="alpha">text<p id="one">one</p></div><div id="beta"><span>b</span><p id="two">two</p></div><div id="delta"><span>d</span><p id="three"><span>three</span></p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-after-theme-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-before-content-children/output.html

+++ now

@@ -1,12 +1,10 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div>
+  <body><div>
       <h1>Title</h1>
       one<div id="alpha">text</div>
       two<div id="beta"><span>b</span></div>
       <span>three</span><div id="delta"><span>d</span></div>
-    </div>
-  </body>
+    </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-before-content-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-if-not/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <p id="two">two</p>
-  </body>
+<body><h1>Title</h1><div id="alpha"></div><p id="two">two</p></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-if-not)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-and-replace-messages/output.html

+++ now

@@ -1,13 +1,8 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div class="message">top message</div>
-    <div class="message">inside message</div>
-    <div id="source-content">
+<body><h1>Title</h1><div class="message">top message</div><div class="message">inside message</div><div id="source-content">

             <p>foo</p>
-      </div>
-  </body>
+      </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-and-replace-messages)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/drop-content/output.html

+++ now

@@ -1,14 +1,8 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Second Theme Page Title</title>
-  </head>
-  <body>
-    <div id="pagecontent">
-      <h1>A Deeper Look....at...diazo</h1>
-      <p>And some content.</p>
-    </div>
-  </body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>Second Theme Page Title</title>
+    </head>
+    <body><div id="pagecontent"><h1>A Deeper Look....at...diazo</h1><p>And some content.</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-drop-content)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/path-param-1/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-path-param-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-if-not-content/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <p id="two">two</p>
-  </body>
+<body><h1>Title</h1><div id="alpha"></div><p id="two">two</p></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-if-not-content)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/if-path-1/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-if-path-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace-content-conditional-1/output.html

+++ now

@@ -1,15 +1,11 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="breadcrumbs">
+<body><h1>Title</h1><div id="breadcrumbs">
           <span id="prompt">Location:</span>
           <span class="crumb">foo</span>
           <span class="crumb">bar</span>
-      </div>
-    <div id="source-content">
+      </div><div id="source-content">
             <p>foo</p>
-      </div>
-  </body>
+      </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace-content-conditional-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-if-path/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p id="one">one</p>
-    <div id="beta"></div>
-  </body>
+<body><h1>Title</h1><p id="one">one</p><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-if-path)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/conditional-rules-2/output.html

+++ now

@@ -1,9 +1,8 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Theming with portlets</title>
-  </head>
-  <body></body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>Theming with portlets</title>
+    </head>
+    <body></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-conditional-rules-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/replace/output.html

+++ now

@@ -1,9 +1,8 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>A Deeper Look At diazo</title>
-  </head>
-  <body></body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>A Deeper Look At diazo</title>
+    </head>
+    <body></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-replace)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-all-attributes-conditional-2/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body class="bar" dir="rtl" title="Body here">
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body class="bar" dir="rtl" title="Body here"><h1>Title</h1><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-all-attributes-conditional-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/if-path-6/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-if-path-6)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/copy/output.html

+++ now

@@ -1,11 +1,8 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title id="something">
-      <title>A Deeper Look At diazo</title>
-    </title>
-  </head>
-  <body></body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title id="something"><title>A Deeper Look At diazo</title></title>
+    </head>
+    <body></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-copy)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-all-attributes-conditional-3/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body class="foo" dir="ltr" title="Body here" id="thebody">
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body class="foo" dir="ltr" title="Body here" id="thebody"><h1>Title</h1><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-all-attributes-conditional-3)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/append/output.html

+++ now

@@ -1,12 +1,10 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title id="first">Second Theme Page Title</title>
-    <script id="second" src="second.js" type="text/javascript"></script>
-    <link id="third" rel="stylesheet" href="third.css" />
-    <link id="fourth" rel="stylesheet" href="fourth.css" />
-  </head>
-  <body></body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title id="first">Second Theme Page Title</title>
+        <script id="second" src="second.js" type="text/javascript"></script>
+        <link id="third" rel="stylesheet" href="third.css" />
+    <link id="fourth" rel="stylesheet" href="fourth.css" /></head>
+    <body></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-append)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/if-path-2/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-if-path-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/multi-theme-5/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>This is theme 2</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>This is theme 2</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-multi-theme-5)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace-content-content-children/output.html

+++ now

@@ -1,15 +1,11 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="breadcrumbs">
+<body><h1>Title</h1><div id="breadcrumbs">
           <span id="you-are-here">Location:</span>
           <span class="crumb">foo</span>
           <span class="crumb">bar</span>
-      </div>
-    <div id="source-content">
+      </div><div id="source-content">
             <p>foo</p>
-      </div>
-  </body>
+      </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace-content-content-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-strip-if-theme/output.html

+++ now

@@ -1,5 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body><h1>Title</h1>alpha<div id="beta">beta</div></body>
+<body><h1>Title</h1>alpha<div id="beta">beta</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-strip-if-theme)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-strip-if-content/output.html

+++ now

@@ -1,5 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body><h1>Title</h1>one<p id="two">two</p></body>
+<body><h1>Title</h1>one<p id="two">two</p></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-strip-if-content)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace-content-content-children-conditional-2/output.html

+++ now

@@ -1,15 +1,11 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="breadcrumbs">
+<body><h1>Title</h1><div id="breadcrumbs">
           <span id="you-are-here"><b>You</b> are <b>here</b></span>
           <span class="crumb">foo</span>
           <span class="crumb">bar</span>
-      </div>
-    <div id="source-content">
+      </div><div id="source-content">
             <p>foo</p>
-      </div>
-  </body>
+      </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace-content-content-children-conditional-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/prepend-append/output.html

+++ now

@@ -1,13 +1,10 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <link id="veryfirst" rel="stylesheet" href="veryfirst.css" />
-    <title id="first">Second Theme Page Title</title>
-    <script id="second" src="second.js" type="text/javascript"></script>
-    <link id="third" rel="stylesheet" href="third.css" />
-    <link id="last" rel="stylesheet" href="last.css" />
-  </head>
-  <body></body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link id="veryfirst" rel="stylesheet" href="veryfirst.css" />
+        <title id="first">Second Theme Page Title</title>
+        <script id="second" src="second.js" type="text/javascript"></script>
+        <link id="third" rel="stylesheet" href="third.css" />
+    <link id="last" rel="stylesheet" href="last.css" /></head>
+    <body></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-prepend-append)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-and-replace-portlets/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div class="portlet" id="navigation">Navigation</div>
-    <div class="portlet" id="help">Help</div>
-  </body>
+<body><h1>Title</h1><div class="portlet" id="navigation">Navigation</div><div class="portlet" id="help">Help</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-and-replace-portlets)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/css-xpath-child-selectors/output.html

+++ now

@@ -1,22 +1,16 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Pseudo classes and complex selectors</title>
-  </head>
-  <body>
-    <div>
-      <div class="replace">Someting very great from last content's DIV</div>
-    </div>
-    <div>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>Pseudo classes and complex selectors</title>
+    </head>
+    <body><div><div class="replace">Someting very great from last content's DIV</div></div><div>
             <span>Third Marker</span>
-            <ul><li>first</li>
+            <ul>
+                <li>first</li>
                 <li>second</li>
                 <li><span class="replace">new item from content</span></li>
                 <li>fourth</li>
-            </ul></div>
-    <div>Third Marker</div>
-    <div>Fourth marker</div>
-  </body>
+            </ul>
+        </div><div>Third Marker</div><div>Fourth marker</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-css-xpath-child-selectors)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-before-theme-children/output.html

+++ now

@@ -1,18 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha"><p id="one">one</p>text</div>
-    <div id="beta">
-      <p id="two">two</p>
-      <span>b</span>
-    </div>
-    <div id="delta">
-      <p id="three">
-        <span>three</span>
-      </p>
-      <span>d</span>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="alpha"><p id="one">one</p>text</div><div id="beta"><p id="two">two</p><span>b</span></div><div id="delta"><p id="three"><span>three</span></p><span>d</span></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-before-theme-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-if-content/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p id="one">one</p>
-    <div id="beta"></div>
-  </body>
+<body><h1>Title</h1><p id="one">one</p><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-if-content)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-all-attributes-multiple-rules-unconditional/output.html

+++ now

@@ -1,11 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div id="thebody" class="foo" dir="ltr" title="Content div here">
+  <body><div id="thebody" class="foo" dir="ltr" title="Content div here">
       <h1>Title</h1>
       <div id="alpha"></div>
       <div id="beta"></div>
-    </div>
-  </body>
+    </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-all-attributes-multiple-rules-unconditional)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/entities/output.html

+++ now

@@ -1,14 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <p>The theme is parsed as HTML so entities like   and — are understood.</p>
-    <p>The content is parsed as HTML so entities like   and — are understood.</p>
-    <p>The rules are parsed as XML, this means that:</p>
-    <ul>
+    <body><p>The theme is parsed as HTML so entities like   and — are understood.</p><p>The content is parsed as HTML so entities like   and — are understood.</p><p>The rules are parsed as XML, this means that:</p><ul>
             <li>The predefined XML entities are always available: ", &amp;, ', &lt;, &gt;.</li>
             <li>Other entities must be explicitly declared in the doctype, as they are here for   and —.</li>
             <li><a href="http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references">More on character entity references</a></li>
-        </ul>
-  </body>
+        </ul></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-entities)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/conditional-content-rules-with-variable/output.html

+++ now

@@ -1,7 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <p>This compiles</p>
-  </body>
+  <body><p>This compiles</p></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-conditional-content-rules-with-variable)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/conditional-drop-in-append-1/output.html

+++ now

@@ -1,14 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>theme</h1>
-    <div id="primary">
-      <p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit
+    <body><h1>theme</h1><div id="primary"><p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit
             esse molestie consequat, vel illum dolore eu feugiat nulla
             facilisis at vero eros et accumsan et iusto odio dignissim qui
             blandit praesent luptatum zzril delenit augue duis dolore te
-            feugait nulla facilisi.</p>
-    </div>
-  </body>
+            feugait nulla facilisi.</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-conditional-drop-in-append-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/multi-theme-1/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>This is theme 1</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>This is theme 1</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-multi-theme-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/comments-outside-root-tag/output.html

+++ now

@@ -5,8 +5,7 @@

 <!--[if gt IE 8]><!-->
 <html xmlns="http://www.w3.org/1999/xhtml" class="no-js" lang="en" xml:lang="en">
 <!--<![endif]-->
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+  <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <title>A Deeper Look At diazo</title>
   </head>
   <body></body>


Failure in test testAll (diazo.tests.tests.Test-comments-outside-root-tag)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-multi-attributes-content/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p class="foo">one</p>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><p class="foo">one</p><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-multi-attributes-content)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/document-includes/output.html

+++ now

@@ -1,33 +1,20 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>External includes</title>
-  </head>
-  <body>
-    <div id="external1">
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>External includes</title>
+    </head>
+    <body><div id="external1">
             ONE
-        </div>
-    <div id="external2">
+        </div><div id="external2">
             TWO
-        </div>
-    <div id="external3">
+        </div><div id="external3">
             THREE
-        </div>
-    <div id="marker2">
-      <div id="external4">
+        </div><div id="marker2"><div id="external4">
             FOUR
-        </div>
-      <div id="external5">
+        </div><div id="external5">
             FIVE
-        </div>
-      <div id="external6">
+        </div><div id="external6">
             SIX
-        </div>
-    </div>
-    <h2>Smaller Title</h2>
-    <p> content </p>
-    <div id="footer">Footer</div>
-  </body>
+        </div></div><h2>Smaller Title</h2><p> content </p><div id="footer">Footer</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-document-includes)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-all-attributes-multiple-rules-conditional-1/output.html

+++ now

@@ -1,11 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div id="thebody" class="bar" dir="ltr" title="Theme here">
+  <body><div id="thebody" class="bar" dir="ltr" title="Theme here">
       <h1>Title</h1>
       <div id="alpha"></div>
       <div id="beta"></div>
-    </div>
-  </body>
+    </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-all-attributes-multiple-rules-conditional-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/empty-xmlns/output.html

+++ now

@@ -1,15 +1,12 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>A Deeper Look At diazo</title>
-  </head>
-  <body>
-    <div id="wrapper" class="foo">
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        <title>A Deeper Look At diazo</title>
+    </head>
+    <body><div id="wrapper" class="foo">
             <div id="content">
                 <p>boo bar baz</p>
             </div>
-        </div>
-  </body>
+        </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-empty-xmlns)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED



Error in test testAll (diazo.tests.tests.Test-esi)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 120, in testAll
    processor = etree.XSLT(ct)
  File "xslt.pxi", line 404, in lxml.etree.XSLT.__init__ (src/lxml/lxml.etree.c:123027)
XSLTParseError: xsl:attribute: The attribute name 'xmlns' is not allowed.

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/update-namespace-2/output.html

+++ now

@@ -1,14 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>theme</h1>
-    <div id="main"> Blah
+    <body><h1>theme</h1><div id="main"> Blah
             <div id="core" class="content">content</div>
-        </div>
-    <h2>theme</h2>
-    <div id="portlets">
+        </div><h2>theme</h2><div id="portlets">
             <div id="portlet-wrapper"><div id="portlet" class="content">portlet</div></div>
-        </div>
-  </body>
+        </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-update-namespace-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/drop-theme-comment/output.html

+++ now

@@ -1,7 +1,7 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-</head>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+        
+    </head>
 </html>



Failure in test testAll (diazo.tests.tests.Test-drop-theme-comment)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-strip-content/output.html

+++ now

@@ -1,5 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body><h1>Title</h1>one<div id="beta"></div></body>
+<body><h1>Title</h1>one<div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-strip-content)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-after-both-children/output.html

+++ now

@@ -1,13 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha">textone</div>
-    <div id="beta"><span>b</span>two</div>
-    <div id="delta">
-      <span>d</span>
-      <span>three</span>
-    </div>
-  </body>
+<body><h1>Title</h1><div id="alpha">textone</div><div id="beta"><span>b</span>two</div><div id="delta"><span>d</span><span>three</span></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-after-both-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace-content-content-children-conditional-1/output.html

+++ now

@@ -1,15 +1,11 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="breadcrumbs">
+<body><h1>Title</h1><div id="breadcrumbs">
           <span id="you-are-here">Location:</span>
           <span class="crumb">foo</span>
           <span class="crumb">bar</span>
-      </div>
-    <div id="source-content">
+      </div><div id="source-content">
             <p>foo</p>
-      </div>
-  </body>
+      </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace-content-content-children-conditional-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-drop-attribute-theme/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div>a</div>
-    <div id="beta">b</div>
-  </body>
+<body><h1>Title</h1><div>a</div><div id="beta">b</div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-drop-attribute-theme)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-all-attributes-conditional-1/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body class="foo" dir="ltr" title="Body here" id="thebody">
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body class="foo" dir="ltr" title="Body here" id="thebody"><h1>Title</h1><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-all-attributes-conditional-1)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-strip-theme/output.html

+++ now

@@ -1,6 +1,6 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body><h1>Title</h1>
+<body><h1>Title</h1>
   alpha
   <div id="beta">beta</div></body>
 </html>


Failure in test testAll (diazo.tests.tests.Test-v1-strip-theme)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-if-not-path/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <p id="two">two</p>
-  </body>
+<body><h1>Title</h1><div id="alpha"></div><p id="two">two</p></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-if-not-path)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/if-path-8/output.html

+++ now

@@ -1,8 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content"></div>
-  </body>
+<body><h1>Title</h1><div id="content"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-if-path-8)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-after-content-children/output.html

+++ now

@@ -1,12 +1,10 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div>
+<body><div>
     <h1>Title</h1>
     <div id="alpha">text</div>one
     <div id="beta"><span>b</span></div>two
     <div id="delta"><span>d</span></div><span>three</span>
-  </div>
-  </body>
+  </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-after-content-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-merge/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body class="bar foo" dir="rtl" title="Body here">
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body class="bar foo" dir="rtl" title="Body here"><h1>Title</h1><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-merge)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/conditional-drop-in-append-2/output.html

+++ now

@@ -1,16 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>theme</h1>
-    <div id="primary">
-      <h1 class="title">Test Header</h1>
-      <div id="byline">test by-line info</div>
-      <p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit
+    <body><h1>theme</h1><div id="primary"><h1 class="title">Test Header</h1><div id="byline">test by-line info</div><p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit
             esse molestie consequat, vel illum dolore eu feugiat nulla
             facilisis at vero eros et accumsan et iusto odio dignissim qui
             blandit praesent luptatum zzril delenit augue duis dolore te
-            feugait nulla facilisi.</p>
-    </div>
-  </body>
+            feugait nulla facilisi.</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-conditional-drop-in-append-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/prepend/output.html

+++ now

@@ -1,12 +1,10 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <link id="fourth" rel="stylesheet" href="fourth.css" />
-    <title id="first">Second Theme Page Title</title>
-    <script id="second" src="second.js" type="text/javascript"></script>
-    <link id="third" rel="stylesheet" href="third.css" />
-  </head>
-  <body></body>
+    <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link id="fourth" rel="stylesheet" href="fourth.css" />
+        <title id="first">Second Theme Page Title</title>
+        <script id="second" src="second.js" type="text/javascript"></script>
+        <link id="third" rel="stylesheet" href="third.css" />
+    </head>
+    <body></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-prepend)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-merge-multiple/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body class="bar foo one" dir="rtl" title="Body here">
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body class="bar foo one" dir="rtl" title="Body here"><h1>Title</h1><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-merge-multiple)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p id="one">one</p>
-    <div id="beta"></div>
-  </body>
+<body><h1>Title</h1><p id="one">one</p><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-notheme-nomatch/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <p id="one">one</p>
-    <div id="beta"></div>
-  </body>
+<body><h1>Title</h1><p id="one">one</p><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-notheme-nomatch)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/multi-theme-4/output.html

+++ now

@@ -1,10 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>This is theme 1</h1>
-    <div id="content">
-      <p>content</p>
-    </div>
-  </body>
+<body><h1>This is theme 1</h1><div id="content"><p>content</p></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-multi-theme-4)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-all-attributes/output.html

+++ now

@@ -1,11 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div id="thebody" class="foo" dir="ltr" title="Body here">
+  <body><div id="thebody" class="foo" dir="ltr" title="Body here">
       <h1>Title</h1>
       <div id="alpha"></div>
       <div id="beta"></div>
-    </div>
-  </body>
+    </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-all-attributes)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-attribute-exists/output.html

+++ now

@@ -1,9 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body class="foo" dir="rtl" title="Body here">
-    <h1>Title</h1>
-    <div id="alpha"></div>
-    <div id="beta"></div>
-  </body>
+<body class="foo" dir="rtl" title="Body here"><h1>Title</h1><div id="alpha"></div><div id="beta"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-attribute-exists)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/path-param-2/output.html

+++ now

@@ -1,8 +1,5 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <h1>Title</h1>
-    <div id="content"></div>
-  </body>
+<body><h1>Title</h1><div id="content"></div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-path-param-2)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-copy-all-attributes-href/output.html

+++ now

@@ -1,11 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div id="thebody" class="foo" dir="ltr" title="Body here">
+  <body><div id="thebody" class="foo" dir="ltr" title="Body here">
       <h1>Title</h1>
       <div id="alpha"></div>
       <div id="beta"></div>
-    </div>
-  </body>
+    </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-copy-all-attributes-href)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

--- /opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/v1-replace-both-children/output.html

+++ now

@@ -1,12 +1,10 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div>
+  <body><div>
       <h1>Title</h1>
       <div id="alpha">one</div>
       <div id="beta">two</div>
       <div id="delta"><span>three</span></div>
-    </div>
-  </body>
+    </div></body>
 </html>



Failure in test testAll (diazo.tests.tests.Test-v1-replace-both-children)
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/opt/src/eggs/diazo-1.0.5-py2.7.egg/diazo/tests/tests.py", line 167, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

  Ran 180 tests with 109 failures and 1 errors in 1.043 seconds.
Tearing down left over layers:
  Tear down zope.testing.testrunner.layer.UnitTests in 0.000 seconds.

Regression in <replace>

Between Diazo v 1.0.6 and v 1.2.1 (which ship with Plone 4.3.6 and Plone 5.0, respectively), something broke in the way <replace> works.
The simplest test case I can think of to reproduce this issue is this: <replace content="//a/text()" />.

Using diazocompiler I compared the xslt produced by the two versions.

1.0.6

The output of the rule results in all <a> elements being stripped of their content, though the element and its attributes are untouched. For example, <a>home</a> becomes <a></a>.

    <!--RULE: <diazo:replace content="//a/text()" xml:id="r25"/>-->
    <xsl:template match="//a/text()"/>
1.2.1

In Plone 5 all <a> elements have their content duplicated, i.e. <a>home</a> becomes <a>homehome</a>.

<xsl:template match="//a/text()">
    <xsl:apply-templates select="." mode="before-content"/>
    <xsl:apply-templates select="." mode="replace-content"/>
    <xsl:apply-templates select="." mode="after-content"/>
</xsl:template>

<xsl:template match="//a/text()" mode="replace-content"/>

(By the way, note how the comment explaining where these transforms originated from is gone in diazocompiler's output for most rules.)
I'm not sure what the before-content, after-content, replace-content are supposed to do, but it seems they are at the root of the problem.

The reason why I stumbled onto this issue is because I was looking for a way to wrap the content of an element with another element, e.g. <a>home</a> ---> <a><span>home</span></a>. I was not able to do it with plain Diazo rules, but had to revert to straight xsl, which is a shame:

  <xsl:template
    match="//ul[@id='portal-globalnav']/li/a">
    <a>
      <xsl:apply-templates select="./@*"/>
      <span>
        <xsl:value-of select="." />
      </span>
    </a>
  </xsl:template>

whitespace stripped from between inline elements

If you have two inline html elements one after another Diazo will strip the whitespace from between them.
E.g.

<img src="/bah"/> <span>Foo</span> 

after passing through Diazo the space is stripped, there will be no space between the image and 'Foo'.

This occurs everywhere in Plone's interface when using custom content types, e.g. the add new menu in the edit bar, the folder contents view, the related content browser overlays.

This of course is not just restricted to use of custom content types it is anywhere in your templates that you use multiple sibling inline html elements.

screen shot 2013-11-11 at 12 35 52

screen shot 2013-11-11 at 12 35 24

Update docs

would it be possible to update the docs ?

/docs/quickstart.rst is still referencing to paster. Can that changed to bobtemplates.plone ? Otherwise our docs are not consistent.

Diazo strips xmlns elements

I have a Theme where I want to have ESI declared in the Theme, not via the Rules.

Diazo seams to strip the xmlns namespace tags on elements so that it did not work:

Theme:

<esi:remove >
    <div>...</div>
</esi:remove> 

got translated to:

<remove>
    <div>...</div>
</remove>

same on

<esi:include src="/path" / > --> <include src="/path" />

I guess this will also apply to other XMLNS additions of HTML

How to replace only text in theme

I have a theme with links that have a text and an image:

<a id="alink" href="#">
    A Text
    <svg role="presentation" width="24" height="24"><use xlink:href="img/icons.svg#arrow-right"/></svg>
</a>

Now I want to just change the text "A Text", the svg-image should not be touched.

I have tried

<replace theme="//*[@id='alink']/text()">
    FOO
</replace>

but this does not work. And this replaces the svg too:

<replace theme-children="//*[@id='alink']">
     FOO
</replace>

Is there a way to replace only the text of the link - without modifying the theme?

docs.diazo.org/en/latest/quickstart.html wrong example address (automatic forward)

The quickstart instruction doesn't work with the address used.
http://diazo.org/ is forwarding automatically to http://docs.diazo.org/en/latest/index.html

Therefore a replacement is never happening. It works though if you use the forwarded address. Please change the address to one wich is not forwarding. This would be a big help for any new user.

--- cut ---
[app:content]
use = egg:Paste#proxy
address = http://diazo.org/

xmlns namespace disappears

Hi all,

I have a theme that has xmlns and xmlns:xlink namespace declaration

<!doctype html>
<html class="start index" lang="de"
      xmlns="http://www.w3.org/1999/xhtml"
      xmlns:xlink="http://www.w3.org/1999/xlink"
      >
<head>
...

If I look at the html source code in my browser there is xmlns="http://www.w3.org/1999/xhtml" missing:

<!DOCTYPE html>
<html xmlns:xlink="http://www.w3.org/1999/xlink" class="start index" lang="de" xml:lang="de">
<head>
...

If I remove xmlns:xlink="http://www.w3.org/1999/xlink" from the theme the html in browser looks like that:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="de">
  <head>
...

I would expect both namespace declarations on the output html. Do I miss something?

Associativity of conditionals and multiple comma-separated selectors

This rule:

<drop
      css:if-not-content="body.frontend"
      css:content='head link[data-bundle="plone-legacy"], head script[data-bundle="plone-legacy"]' />

seems to be applied like this (simplifying a bit for clarity):

drop link OR (script IF NOT body.frontend)

instead of:

drop (link OR script) IF NOT body.frontend

I'm not sure if it's because of the square bracket selectors in the css:content. Probably not, because any attribute selection would result in square brackets in the match expression.

The diazocompiler output:

<!--RULE: <diazo:drop css:if-not-content="body.frontend" 
css:content="head link[data-bundle="plone-legacy"], 
head script[data-bundle="plone-legacy"]" 
xml:id="r1" if-not-content="//body[@class and contains(concat(' ', 
normalize-space(@class), ' '), ' frontend ')]" content="//head//link[@data-bundle = 
'plone-legacy'] | //head//script[@data-bundle = 'plone-legacy']" 
condition="not(//body[@class and contains(concat(' ', normalize-space(
@class), ' '), ' frontend ')])" merged-condition="not(//body[@class and 
contains(concat(' ', normalize-space(@class), ' '), ' frontend ')])"/>-->

<xsl:template match="//head//link[@data-bundle = 'plone-legacy'] | 
//head//script[@data-bundle = 'plone-legacy'][not(//body[@class and 
contains(concat(' ', normalize-space(@class), ' '), ' frontend ')])]">
</xsl:template>

By contrast, if I split the above drop rule into two, one for link and one for script, it works, and the output is:

<!--RULE: <diazo:drop css:if-not-content="body.frontend" 
css:content="head link[data-bundle="plone-legacy"]" 
xml:id="r1" if-not-content="//body[@class and contains(concat(' ', 
normalize-space(@class), ' '), ' frontend ')]" 
content="//head//link[@data-bundle = 'plone-legacy']" 
condition="not(//body[@class and contains(concat(' ', 
normalize-space(@class), ' '), ' frontend ')])" 
merged-condition="not(//body[@class and contains(concat(' ', 
normalize-space(@class), ' '), ' frontend ')])"/>-->

<xsl:template match="//head//link[@data-bundle = 
'plone-legacy'][not(//body[@class and contains(concat(' ', 
normalize-space(@class), ' '), ' frontend ')])]">
</xsl:template>

<!--RULE: <diazo:drop css:if-not-content="body.frontend" 
css:content="head script[data-bundle="plone-legacy"]"
xml:id="r2" if-not-content="//body[@class and contains(concat(' ', 
normalize-space(@class), ' '), ' frontend ')]" 
content="//head//script[@data-bundle = 'plone-legacy']" 
condition="not(//body[@class and contains(concat(' ', 
normalize-space(@class), ' '), ' frontend ')])" 
merged-condition="not(//body[@class and contains(concat(' ', 
normalize-space(@class), ' '), ' frontend ')])"/>-->

<xsl:template match="//head//script[@data-bundle = 
'plone-legacy'][not(//body[@class and contains(concat(' ', 
normalize-space(@class), ' '), ' frontend ')])]">
</xsl:template>

remote resource resulotion with read_network == false

Using diazo with Paste as a WSGI server and proxy, it seems that the rules and theme resources are being requested from the origin content server -- on every request -- regardless of the fact that read_network = false in the config.

With some request tracing/debugging it seems that lxml is performing the requests. I managed to get the expected behavior by setting the file protocol prefix on the rules target:

- rules = %(here)s/rules.xml
+ rules = file://%(here)s/rules.xml

I don't know if this started because of a change in lxml or if I have always mistakenly left off the file:// prefix. So I am not sure if this is a bug in anything really. I suppose it is at least a bug in the documentation.

The above occured with the following versions:

Paste==1.7.5.1
PasteDeploy==1.5.0
PasteScript==1.7.5
WebOb==1.2.3
argparse==1.2.1
diazo==1.0.3
distribute==0.6.24
experimental.cssselect==0.3
lxml==3.2.1
repoze.xmliter==0.5
wsgiref==0.1.2

make attribute replacement easy (especially for "class" attributes)

every theming framework I know - bootstrap, foundation, tailwind - relies heavily on interchangeable classes to style UI elements.
since plone 6 uses Bootstrap 5, it would be very useful to be able to replace css classes for a theme on the fly using diazo.

diazo promises to keep you away from xsl, but all solutions I found are heavy xsl rules, copies of attribute contents, mind boggling stuff.

eg: if you have this:

<div class="class-a CLASS-B">...</div>

and want that to become this:

<div class="class-a CLASS-C">...</div>

maybe adding params to <drop>|<replace>|<merge>?

a better DX would be awesome!

Script tag placed at end of an HTML document prevents previewing and editing

Im using the CSS framework "Foundation"
The theming editor in Plone seems to have a bug that prevents a page from displaying in the editor and being able to edit its contents if theres a
<script>$(document).foundation();</script> placed before the </body> tag of an HTML document. Which is what Foundation recommends.

When I activate the theme it works as expected and the pages get themed but if I were to go back to the theming editor "Site-Setup > Theming > Modify Theme" and select the HTML document that contains the script I get a spinning icon. This would be fine if I didn't make any mistakes when adding my rules but Id like to be able to go back in and edit via the theming editor.

Im running
Plone 4.3
Diazo 1.1

Ive tried this in Safari, Chrome and FireFox all exhibit the same behavior.
screen shot 2015-01-16 at 1 10 36 pm

thanks,
Brian

Tests of branch 1.1.x fail on coredev 4.3

Plone coredev pins diazo to 1.0.6, but in the sources.cfg it is using branch 1.1.x. When you checkout this branch, buildout fails:

Installing test.
The constraint, 1.0.8, is not consistent with the requirement, 'WebOb>=1.4'.
While:
  Installing test.
Error: Bad constraint 1.0.8 WebOb>=1.4

Okay, so a few version pins are needed:

future = 0.13.1 (was unspecified)
importlib = 1.0.3 (was unspecified)
repoze.xmliter = 0.6 (was 0.5)
WebOb = 1.4.1 (was 1.0.8)

With those pins, buildout succeeds.
But a few diazo tests fail:

$ bin/test -s diazo
Running zope.testrunner.layer.UnitTests tests:
  Set up zope.testrunner.layer.UnitTests in 0.000 seconds.
  Running:
    27/190 (14.2%)--- /Users/maurits/community/plone-coredev/4.3/src/diazo/lib/diazo/tests/entities/output.html 

+++ now 

@@ -1,14 +1,9 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <p>The theme is parsed as HTML so entities like   and — are understood.</p>
-    <p>The content is parsed as HTML so entities like   and — are understood.</p>
-    <p>The rules are parsed as XML, this means that:</p>
-    <ul>
+    <body><p>The theme is parsed as HTML so entities like   and — are understood.</p><p>The content is parsed as HTML so entities like   and — are understood.</p><p>The rules are parsed as XML, this means that:</p><ul>
             <li>The predefined XML entities are always available: ", &amp;, ', &lt;, &gt;.</li>
-            <li>Other entities must be explicitly declared in the doctype, as they are here for   and —.</li>
+            <li>Other entities must be explicitly declared in the doctype, as they are here for   and —.</li>
             <li><a href="http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references">More on character entity references</a></li>
-        </ul>
-  </body>
+        </ul></body>
 </html>



Failure in test testAll (diazo.tests.test_diazo.Test-entities)
Traceback (most recent call last):
  File "/usr/local/pythons/parts/opt/lib/python2.6/unittest.py", line 279, in run
    testMethod()
  File "/Users/maurits/community/plone-coredev/4.3/src/diazo/lib/diazo/tests/test_diazo.py", line 181, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED

    149/190 (78.4%)--- /Users/maurits/community/plone-coredev/4.3/src/diazo/docs/recipes/create-list-from-anchors/output.html 

+++ now 

@@ -1,14 +1,13 @@

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-  <body>
-    <div id="content">
+  <body><div id="content">
     <div class="pagination-centered"><ul class="pagination">
         <li><span class="next">
             <a href="?b_start:int=20">
                 Next
                 20
                 items
-            »
+            »
             </a>
         </span></li>
         [<li><span>1</span></li>]
@@ -23,7 +22,6 @@

             <a href="?b_start:int=680">35</a>
         </span></li>
     </ul></div>
-</div>
-  </body>
+</div></body>
 </html>



Failure in test testAll (diazo.tests.test_diazo.Recipe-create-list-from-anchors)
Traceback (most recent call last):
  File "/usr/local/pythons/parts/opt/lib/python2.6/unittest.py", line 279, in run
    testMethod()
  File "/Users/maurits/community/plone-coredev/4.3/src/diazo/lib/diazo/tests/test_diazo.py", line 181, in testAll
    assert old == new, "output.html has CHANGED"
AssertionError: output.html has CHANGED


  Ran 190 tests with 2 failures, 0 errors, 0 skipped in 1.598 seconds.
Tearing down left over layers:
  Tear down zope.testrunner.layer.UnitTests in 0.000 seconds.

Reverting to 1.1.1 makes the tests pass again, so this is something introduced in 1.1.2.

For now, I will create a 1.0.x branch for good measure.
Well... let me make a pull request with 1.1.x checked out first, so Jenkins can have a go at it, just in case the test failures are only on my laptop.

( I am checking if coredev with checkout of all packages works.)

tox run broken

❯ tox -e py38
py38 develop-inst-nodeps: /home/jugmac00/All/output_plone/plone/diazo
ERROR: invocation failed (exit code 2), logfile: /home/jugmac00/All/output_plone/plone/diazo/.tox/py38/log/py38-5.log
============================================================================ log start ============================================================================
Obtaining file:///home/jugmac00/All/output_plone/plone/diazo
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
ERROR: Exception:
Traceback (most recent call last):
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/cli/base_command.py", line 189, in _main
    status = self.run(options, args)
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/cli/req_command.py", line 178, in wrapper
    return func(self, options, args)
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/commands/install.py", line 316, in run
    requirement_set = resolver.resolve(
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 100, in resolve
    r = self.factory.make_requirement_from_install_req(
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 301, in make_requirement_from_install_req
    cand = self._make_candidate_from_link(
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 155, in _make_candidate_from_link
    self._editable_candidate_cache[link] = EditableCandidate(
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 328, in __init__
    super().__init__(
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 144, in __init__
    self.dist = self._prepare()
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 226, in _prepare
    dist = self._prepare_distribution()
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 339, in _prepare_distribution
    return self._factory.preparer.prepare_editable_requirement(self._ireq)
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/operations/prepare.py", line 552, in prepare_editable_requirement
    dist = _get_prepared_distribution(
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/operations/prepare.py", line 66, in _get_prepared_distribution
    abstract_dist.prepare_distribution_metadata(finder, build_isolation)
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/distributions/sdist.py", line 39, in prepare_distribution_metadata
    self._setup_isolation(finder)
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_internal/distributions/sdist.py", line 97, in _setup_isolation
    reqs = backend.get_requires_for_build_wheel()
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_vendor/pep517/wrappers.py", line 177, in get_requires_for_build_wheel
    return self._call_hook('get_requires_for_build_wheel', {
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_vendor/pep517/wrappers.py", line 284, in _call_hook
    raise BackendUnavailable(data.get('traceback', ''))
pip._vendor.pep517.wrappers.BackendUnavailable: Traceback (most recent call last):
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 86, in _build_backend
    obj = import_module(mod_path)
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/tmp/pip-build-env-xwuw10ir/overlay/lib/python3.8/site-packages/setuptools/__init__.py", line 18, in <module>
    from setuptools.dist import Distribution
  File "/home/jugmac00/All/output_plone/plone/diazo/.tox/py38/lib/python3.8/site-packages/_virtualenv.py", line 74, in exec_module
    old(module)
  File "/tmp/pip-build-env-xwuw10ir/overlay/lib/python3.8/site-packages/setuptools/dist.py", line 32, in <module>
    from setuptools import windows_support
  File "/tmp/pip-build-env-xwuw10ir/overlay/lib/python3.8/site-packages/setuptools/windows_support.py", line 2, in <module>
    import ctypes
  File "/usr/lib/python3.8/ctypes/__init__.py", line 7, in <module>
    from _ctypes import Union, Structure, Array
ModuleNotFoundError: No module named '_ctypes'


============================================================================= log end =============================================================================
_____________________________________________________________________________ summary _____________________________________________________________________________
ERROR:   py38: InvocationError for command /home/jugmac00/All/output_plone/plone/diazo/.tox/py38/bin/python -m pip install --no-deps -e '/home/jugmac00/All/output_plone/plone/diazo[test]' (exited with code 2)

I had a look at the documentation about what I need to install additionally, but docs were written for Python 2.6 and I am not sure what I need to install.

I run Ubuntu 18.04.

I noticed the broken tox when tried to run tox for all Zope and Plone repos this weekend, see here https://jugmac00.github.io/blog/testing-the-tox-4-pre-release-at-scale/

source tag (inside picture) is a unary tag but gets rendered with closing tag

The html 5 picture tag uses unary source tags to define different source locations for the image using a source tag. These tags get rendered with a closing tag by diazo. W3C-Validators rank this as markup error.
Tested in Plone 5.0.5 (5015) with Barceloneta based theme and Plone 4.3.10 (4311) with special diazo theme.
Markup example:

<picture>
    <source srcset="...">
    <img src="..." />
</picture>

renders to:

<picture>
    <source srcset="...">
        <img src="..." />
    </source>
</picture>

If there is any way to avoid this using diazo rules, I'd appreciate a hint. Thanks!

Fix a ResourceWarning

On jenkins, while running tests there is this warning being printed:

/diazo/compiler.py:36: ResourceWarning: unclosed file <_io.TextIOWrapper name='diazo/dummy.html' mode='r' encoding='UTF-8'>
  parser=parser,

Whitespace breaks xsl:attribute when Modifying theme on-the-fly

This works:

  <replace css:theme-children="#portal-logo">
    <img alt="Site Logo" class="img-responsive"><xsl:attribute name="src"><xsl:value-of select="$site_logo" /></xsl:attribute></img>
  </replace>

This does not:

  <replace css:theme-children="#portal-logo">
    <img alt="Site Logo" class="img-responsive">
      <xsl:attribute name="src"><xsl:value-of select="$site_logo" /></xsl:attribute>
    </img>
  </replace>

Even this won't work (one single whitespace before xsl:attribute):

  <replace css:theme-children="#portal-logo">
    <img alt="Site Logo" class="img-responsive"> <xsl:attribute name="src"><xsl:value-of select="$site_logo" /></xsl:attribute></img>
  </replace>

Here's the error msg:

_runtime error, element 'attribute' [123:0]
xsl:attribute: Cannot add attributes to an element if children have been already added to the element. [0:0]
_

Using Plone 4.3.

/cc @ebrehault @davisagli @lrowe

diazorun: "TypeError: a bytes-like object is required, not 'str'"

Is this a bug in diazorun? (Diazo 1.4.0)

diazorun --xsl theme.xsl content.html
Traceback (most recent call last):
  File "/usr/bin/diazorun", line 8, in <module>
    sys.exit(main())
  File "/usr/lib/python3.8/site-packages/diazo/run.py", line 157, in main
    out.write(str(output_html))
TypeError: a bytes-like object is required, not 'str'

It works with an -o output.html argument.

Javascript in attribute error

Dears,

This line in the html file is problematic:

<a onclick="try{ return submitacymailingform('optin','formAcymailing29431'); }catch(err){alert('The form could not be submitted '+err);return false;}" />

The whole html file is:

<html><head>
  <title>Template</title>
</head>
<body class="logo-type-gantry main-bg-preset1 headerstyle-dark font-family-pt-sans font-size-is-default menu-type-dropdownmenu layout-mode-responsive col12">
<a onclick="try{ return submitacymailingform('optin','formAcymailing29431'); }catch(err){alert('The form could not be submitted '+err);return false;}" />

</body></html>

Command line and error message is:

bin/diazorun -o var/output.html -r filtered/rules.xml var/tpl.html
Traceback (most recent call last):
File "bin/diazorun", line 9, in
load_entry_point('diazo==1.0.3', 'console_scripts', 'diazorun')()
File "/home/techmetria/Downloads/openwrt/backfire/venv/env/local/lib/python2.7/site-packages/diazo-1.0.3-py2.7.egg/diazo/run.py", line 115, in main
transform = etree.XSLT(output_xslt, access_control=access_control)
File "xslt.pxi", line 406, in lxml.etree.XSLT.init (src/lxml/lxml.etree.c:137089)
lxml.etree.XSLTParseError: Invalid expression

Above I paste some HTML tags and it is not possible to see it. Why? During re-editing I can see the correct html.

ESI test fails with lxml 5 due to namespace changes

In Plone 6.0 and 6.1 we still use lxml 4. When I update to lxml 5.1.0 one Diazo test fails:

Failure in test testAll (diazo.tests.test_diazo.Test-esi.testAll)
Traceback (most recent call last):
  File "/Users/maurits/.pyenv/versions/3.12.2/lib/python3.12/unittest/case.py", line 58, in testPartExecutor
    yield
  File "/Users/maurits/.pyenv/versions/3.12.2/lib/python3.12/unittest/case.py", line 634, in run
    self._callTestMethod(testMethod)
  File "/Users/maurits/.pyenv/versions/3.12.2/lib/python3.12/unittest/case.py", line 589, in _callTestMethod
    if method() is not None:
  File "/Users/maurits/community/plone-coredev/6.1/src/diazo/src/diazo/tests/test_diazo.py", line 241, in testAll
    assert self.themed_content.xpath(
AssertionError: /Users/maurits/community/plone-coredev/6.1/src/diazo/src/diazo/tests/esi/xpaths.txt: /html/body/include

So it fails here while using the files from the esi directory.

Maybe this hint in the tests about switching to "Xpath default namespaces" could help.

The probably relevant part of the lxml changelog under 5.0.0:

With libxml2 2.10.4 and later (as provided by the lxml 5.0 binary wheels), parsing HTML tags with "prefixes" no longer builds a namespace dictionary in nsmap but considers the prefix:name string the actual tag name. With older libxml2 versions, since 2.9.11, the prefix was removed. Before that, the prefix was parsed as XML prefix.
lxml 5.0 does not try to hide this difference but now changes the ElementPath implementation to let element.find("part1:part2") search for the tag part1:part2 in documents parsed as HTML, instead of looking only for part2.

runtime execution of if-statements

diazo is very nice on execution model, but there is one misleading Point on execution of if Statements

example:

<theme href="http://example.org/index.html if="$readNetwork" />

Diazo tries to read the remote source even if the if Statement validates to false. As any conditional this should only be done if the if-statement is true.

Query as to why diazo.XS:TMiddlware.should_transform doesn't allow 401

Hi,

I'm working with an app where I'd like to (re)display the login form on authentication errors, but am unable to set the correct HTTP response and have the form look correct, since diazo.XSLTMiddlware.should_transform returns False for HTTP 401.
Is there a good reason for this, or could a way be provided to override the behaviour?
e.g constructor paramter 'skip_transform_for_http_status=

Thanks!

Can we expose the name of the chosen theme file as a variable?

(moved from plone/plone.app.theming#104)

I'd like to be able to do this

 <!-- Multiple conditions for choosing a theme file --> 
<theme href="leaf.html"
       css:if-content="body.template-pontprennauview"/>

<!-- Manage portlets for covers  -->
<theme href="leaf.html"
       css:if-content="body.portaltype-collective-cover-content.template-manage-portlets"/>

<!-- A 'normal' page or content item -->
<theme href="leaf.html"
       css:if-content="#visual-portal-wrapper"/>

....
<!-- Cover all occasions we use a particular theme file without a complex condition -->
<rules if="$theme == 'leaf.html'">

....
</rules>

Correct me if I'm wrong, but I don't think that's currently possible/easy?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.