Skip to content
Snippets Groups Projects
  1. Mar 22, 2015
  2. Mar 21, 2015
  3. Mar 20, 2015
  4. Mar 19, 2015
  5. Mar 18, 2015
    • Arseny Kapoulkine's avatar
      Do not emit surrounding whitespace for text nodes · 5f996eba
      Arseny Kapoulkine authored
      Previously we omitted extra whitespace for single PCDATA/CDATA children, but in
      mixed content there was extra indentation before/after text nodes.
      
      One of the problems with that is that the text that you saved is not exactly
      the same as the parsing result using default flags (parse_trim_pcdata helps).
      
      Another problem is that parse-format cycles do not have a fixed point for mixed
      content - the result expands indefinitely. Some XML libraries, like Python
      minidom, have the same issue, but this is definitely a problem.
      
      Pretty-printing mixed content is hard. It seems that the only other sensible
      choice is to switch mixed content nodes to raw formatting. In a way the code in
      this change is a weaker version of that - it removes indentation around text
      nodes but still keeps it around element siblings/children.
      
      Thus we can switch to mixed-raw formatting at some point later, which will be
      a superset of the current behavior.
      
      To do this we have to either switch at the first text node (.NET XmlDocument
      does that), or scan the children of each element for a possible text node and
      switch before we output the first child.
      
      The former behavior seems non-intuitive (and a bit broken); unfortunately, the
      latter behavior can cost up to 20% of the output time for trees *without* mixed
      content.
      
      Fixes #13.
      5f996eba
  6. Mar 14, 2015
    • Arseny Kapoulkine's avatar
      tests: Fix truncation test · 51da129b
      Arseny Kapoulkine authored
      data/truncation.xml was corrupted at some point and was not actually valid.
      Fix the file and make the test fail if we can't parse truncation.xml at all.
      51da129b
  7. Mar 13, 2015
  8. Mar 10, 2015
  9. Mar 05, 2015
  10. Mar 04, 2015
    • Arseny Kapoulkine's avatar
      tests: Fix XPath string comparison · 5a848de0
      Arseny Kapoulkine authored
      Also add new tests for translate. These are technically redundant since other
      tests would catch the bug with the fixed comparison, but more tests is better.
      5a848de0
    • Arseny Kapoulkine's avatar
      Fix string length for translate and normalize-space · cb04ab27
      Arseny Kapoulkine authored
      The implementations generated a string with an internal null terminator; this
      went unnoticed since unit test string verification did not perform string
      equality check properly (it compared XPath string result as a C-string, thus
      stopping at the first null terminator).
      
      Fixes #36.
      cb04ab27
  11. Mar 02, 2015
  12. Feb 12, 2015
  13. Jan 24, 2015
  14. Jan 18, 2015
  15. Jan 17, 2015
Loading