Yorick Peterse
f5370c35d2
Release 2.7
2016-09-27 11:54:27 +02:00
Yorick Peterse
b8fd8670df
Release 2.6
2016-09-10 02:50:02 +02:00
Yorick Peterse
dd554f31e7
Release 2.5
2016-09-06 22:30:50 +02:00
Yorick Peterse
e58a41f711
Release 2.4
2016-09-04 21:16:11 +02:00
Yorick Peterse
dd138981f6
Generate XML without relying on recursion
...
While using recursion is an easy way of generating XML it can lead to
the call stack overflowing when serialising documents with lots of
nested nodes.
Generally there are two ways of working around this:
1. Use an explicit stack (e.g. an array or a queue of sorts) instead of
relying on the call stack.
2. Use an algorithm that doesn't use a stack at all (e.g. Morris
traversal).
This commit introduces the XML::Generator class which can serialize
documents back to XML without using a stack at all. This class takes
advantage of XML nodes having access to not only their child nodes, but
also their siblings and their parents.
All XML serialisation logic now resides in the XML::Generator class. In
turn the various "to_xml" methods just use this class and serialize
everything starting at "self".
2016-09-04 19:19:00 +02:00
Yorick Peterse
de85784097
Release 2.3
2016-07-13 22:44:42 +02:00
Yorick Peterse
dead5b4f51
Release 2.2
2016-02-23 22:36:15 +01:00
Yorick Peterse
83d0759998
Release 2.1
2016-02-09 20:17:54 +01:00
Yorick Peterse
fd1570870e
Release 2.0.0
2015-12-26 20:46:24 +01:00
Yorick Peterse
5b2dfdbb09
Fixed Markdown headings in the changelog
2015-09-17 01:14:00 +02:00
Yorick Peterse
0fd6fd8645
Release 1.3.1
2015-09-07 14:11:00 +02:00
Yorick Peterse
4c79468091
Release 1.3.0
2015-09-06 19:20:45 +02:00
Yorick Peterse
791085302e
Prepare changelog for 1.3.0
2015-09-04 16:46:33 +02:00
Yorick Peterse
399403c290
Release 1.2.3
2015-08-19 12:09:14 +02:00
Yorick Peterse
0977be81bb
Release 1.2.2
2015-08-14 14:49:26 +02:00
Yorick Peterse
5d0e8c99af
Release 1.2.1
2015-07-01 00:24:07 +02:00
Yorick Peterse
8990a62224
Release 1.2.0
2015-06-30 10:58:05 +02:00
Yorick Peterse
6c8f9704b3
Prepare CHANGELOG for the upcoming 1.1.1 release
2015-06-29 19:01:18 +02:00
Yorick Peterse
aa1a6ca308
Fixed CHANGELOG date for 1.1.0
2015-06-29 16:52:27 +02:00
Yorick Peterse
dccf7a7e06
Release 1.1.0
2015-06-29 16:45:21 +02:00
Yorick Peterse
fcd5573422
Updated changelog for Node#replace
2015-06-17 21:48:40 +02:00
Yorick Peterse
b701a9bdd4
Release 1.0.3
2015-06-16 11:13:06 +02:00
Yorick Peterse
5951a6f187
Release 1.0.2
2015-06-03 06:53:31 +02:00
Yorick Peterse
04948eb211
Release 1.0.1
2015-05-21 11:42:06 +02:00
Yorick Peterse
4cb6d7cdb6
Updated changelog date for 1.0
2015-05-20 22:46:05 +02:00
Yorick Peterse
c4f3d9e0fa
Updated changelog regarding HTML5 support
2015-05-19 23:45:28 +02:00
Yorick Peterse
3e337faa1d
Added license change to the 1.0 changelog
2015-05-16 00:13:13 +02:00
Yorick Peterse
7d9604fd93
Added 1e0b7f to the 1.0 changelog
2015-05-12 00:44:51 +02:00
Yorick Peterse
99608ec159
Prepared changelog for 1.0
2015-05-11 11:28:05 +02:00
Yorick Peterse
84e1bfc955
Release 0.3.4
2015-04-19 22:19:02 +02:00
Yorick Peterse
611beb78c7
Release 0.3.3
2015-04-18 20:49:40 +02:00
Yorick Peterse
a08829add5
Release 0.3.2
2015-04-15 11:38:09 +02:00
Yorick Peterse
421e6e910b
Release 0.3.1
2015-04-08 14:58:53 +02:00
Yorick Peterse
3f6aa04e91
Release 0.3.0
2015-04-03 21:11:15 +02:00
Yorick Peterse
9621fe1fc8
Moved changelog to the root directory.
2015-03-21 01:22:59 +01:00