summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2015-09-20 13:52:02 +0200
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2015-09-20 13:55:54 +0200
commit03df40696c5876510f7331d3437c5fdc4791399e (patch)
tree5cefbcc2b9f67d6cac415ff6a3ac09f6f537739f
parentc90ab5f80a4906adaeccdc6ac2daf010b6da5e73 (diff)
downloadgnutls-03df40696c5876510f7331d3437c5fdc4791399e.tar.gz
Added abi-tracker files
-rw-r--r--Makefile1
-rw-r--r--abi-tracker.html1159
-rw-r--r--css/changelog.css18
-rw-r--r--css/common.css28
-rw-r--r--css/headers_diff.css32
-rw-r--r--css/report.css63
-rw-r--r--download.html11
-rw-r--r--download.wml11
8 files changed, 1313 insertions, 10 deletions
diff --git a/Makefile b/Makefile
index 801b845f04..83a3acbb67 100644
--- a/Makefile
+++ b/Makefile
@@ -19,6 +19,7 @@ OUTPUT=index.html contrib.html devel.html support.html \
all: $(OUTPUT) news.atom
@for i in news-entries/*.xml;do X=0; if ! test -e $$i.tweet;then X=1;fi;done;if test "$$X" = "1";then echo "There are unsubmitted news. Use 'make tweet'.";fi
+ cd gnutls-abi-tracker && perl ../../abi-tracker/abi-tracker.pl gnutls.json && cp timeline/gnutls/index.html ../abi-tracker.html && sed -i 's|../../css|css|g' ../abi-tracker.html
# cvs commit -m "Generated." .
.PHONY: clean manual/index.html tweet stats security.html
diff --git a/abi-tracker.html b/abi-tracker.html
new file mode 100644
index 0000000000..8bed096726
--- /dev/null
+++ b/abi-tracker.html
@@ -0,0 +1,1159 @@
+<!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" xml:lang="en" lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="keywords" content="gnutls, ABI, API, compatibility, report" />
+ <meta name="description" content="API/ABI compatibility analysis reports for gnutls" />
+ <link rel="stylesheet" type="text/css" href="css/common.css" />
+ <link rel="stylesheet" type="text/css" href="css/report.css" />
+
+
+ <title>
+ GnuTLS: API/ABI changes timeline
+ </title>
+
+ </head>
+<body>
+<table cellpadding='0' cellspacing='0'><tr><td align='center'><h1 class='tool'><a title='Home: ABI tracker for GnuTLS' href='../../timeline/gnutls/index.html' class='tool'>ABI<br/>Tracker</a></h1></td><td width='30px;'></td><td><h1>(GnuTLS)</h1></td></tr></table><hr/>
+<br/>
+<br/>
+<h1>API/ABI changes timeline</h1>
+<br/><br/><table cellpadding='3' class='summary'>
+<tr>
+<th>Version</th>
+<th>Date</th>
+<th title='If all objects in the package have the same SONAME'>Soname</th>
+<th>Change<br/>Log</th>
+<th>Backward<br/>Compatibility</th>
+<th>Added<br/>Symbols</th>
+<th>Removed<br/>Symbols</th>
+<th>Headers<br/>Diff</th>
+<th>Package<br/>Diff</th>
+</tr>
+<tr><td>3.4.5</td>
+<td>2015-09-12</td>
+<td>28/30</td>
+<td><a href='../../changelog/gnutls/3.4.5/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.4.4.1/3.4.5/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.4.4.1/3.4.5/diff.html'>1</a></td>
+<td><a href='../../package_diff/gnutls/3.4.4.1/3.4.5/report.html'>0.1%</a></td>
+</tr>
+<tr><td>3.4.4.1</td>
+<td>2015-08-10</td>
+<td>28/30</td>
+<td><a href='../../changelog/gnutls/3.4.4.1/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.4.3/3.4.4.1/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.4.3/3.4.4.1/report.html'>3 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.4.3/3.4.4.1/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.4.3</td>
+<td>2015-07-12</td>
+<td>28/30</td>
+<td><a href='../../changelog/gnutls/3.4.3/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.4.2/3.4.3/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.4.2/3.4.3/report.html'>10 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.4.2/3.4.3/diff.html'>3</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.4.2</td>
+<td>2015-06-16</td>
+<td>28/30</td>
+<td><a href='../../changelog/gnutls/3.4.2/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.4.1/3.4.2/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.4.1/3.4.2/report.html'>14 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.4.1/3.4.2/diff.html'>5</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.4.1</td>
+<td>2015-05-03</td>
+<td>28/30</td>
+<td><a href='../../changelog/gnutls/3.4.1/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.4.0/3.4.1/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.4.0/3.4.1/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.4.0/3.4.1/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.4.0</td>
+<td>2015-04-08</td>
+<td>28/30</td>
+<td><a href='../../changelog/gnutls/3.4.0/log.html'>changelog</a></td>
+<td class='incompatible'><a href='../../objects_report/gnutls/3.3.18/3.4.0/report.html'>10.52%</a><br/>
+<br/>
+<span class='note'><span class='incompatible'>changed SONAME</span><br/><span class='incompatible'>removed 1 object</span></span>
+</td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.3.18/3.4.0/report.html'>948 new</a></td>
+<td class='removed'><a class='num' href='../../objects_report/gnutls/3.3.18/3.4.0/report.html'>934 removed</a></td>
+<td><a href='../../headers_diff/gnutls/3.3.18/3.4.0/diff.html'>9</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.18</td>
+<td>2015-09-12</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.18/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.17.1/3.3.18/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.17.1/3.3.18/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.17.1</td>
+<td>2015-08-10</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.17.1/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.16/3.3.17.1/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.16/3.3.17.1/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.16</td>
+<td>2015-07-12</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.16/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.15/3.3.16/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.15/3.3.16/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.15</td>
+<td>2015-05-03</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.15/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.14/3.3.15/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.14/3.3.15/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.14</td>
+<td>2015-03-30</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.14/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.13/3.3.14/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.13/3.3.14/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.13</td>
+<td>2015-02-26</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.13/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.12/3.3.13/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.12/3.3.13/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.12</td>
+<td>2015-01-17</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.12/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.11/3.3.12/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.11/3.3.12/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.11</td>
+<td>2014-12-11</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.11/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.10/3.3.11/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.10/3.3.11/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.10</td>
+<td>2014-11-10</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.10/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.9/3.3.10/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.9/3.3.10/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.9</td>
+<td>2014-10-13</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.9/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.8/3.3.9/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.8/3.3.9/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.8</td>
+<td>2014-09-18</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.8/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.6/3.3.8/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.3.6/3.3.8/report.html'>6 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.6/3.3.8/diff.html'>6</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.6</td>
+<td>2014-07-23</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.6/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.5/3.3.6/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.3.5/3.3.6/report.html'>2 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.5/3.3.6/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.5</td>
+<td>2014-06-26</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.5/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.4/3.3.5/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.3.4/3.3.5/report.html'>5 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.4/3.3.5/diff.html'>3</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.4</td>
+<td>2014-05-31</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.4/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.3/3.3.4/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.3/3.3.4/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.3</td>
+<td>2014-05-30</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.3/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.2/3.3.3/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.3.2/3.3.3/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.2/3.3.3/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.2</td>
+<td>2014-05-06</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.2/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.1/3.3.2/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.1/3.3.2/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.1</td>
+<td>2014-04-19</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.1/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.3.0/3.3.1/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.3.0/3.3.1/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.3.0</td>
+<td>2014-04-10</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.3.0/log.html'>changelog</a></td>
+<td class='incompatible'><a href='../../objects_report/gnutls/3.2.21/3.3.0/report.html'>75%</a><br/>
+<br/>
+<span class='note'><span class='incompatible'>removed 1 object</span></span>
+</td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.2.21/3.3.0/report.html'>83 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.21/3.3.0/diff.html'>6</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.21</td>
+<td>2014-12-11</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.21/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.20/3.2.21/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.20/3.2.21/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.20</td>
+<td>2014-11-10</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.20/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.19/3.2.20/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.19/3.2.20/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.19</td>
+<td>2014-10-13</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.19/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.18/3.2.19/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.18/3.2.19/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.18</td>
+<td>2014-09-18</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.18/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.17/3.2.18/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.17/3.2.18/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.17</td>
+<td>2014-08-24</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.17/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.16/3.2.17/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.16/3.2.17/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.16</td>
+<td>2014-07-23</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.16/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.15/3.2.16/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.15/3.2.16/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.15</td>
+<td>2014-05-30</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.15/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.14/3.2.15/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.14/3.2.15/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.14</td>
+<td>2014-05-06</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.14/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.13/3.2.14/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.13/3.2.14/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.13</td>
+<td>2014-04-07</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.13/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.12.1/3.2.13/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.12.1/3.2.13/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.12.1</td>
+<td>2014-03-04</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.12.1/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.12/3.2.12.1/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.2.12/3.2.12.1/report.html'>25 new</a></td>
+<td class='ok'>0</td>
+<td>0</td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.12</td>
+<td>2014-03-03</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.12/log.html'>changelog</a></td>
+<td class='warning'><a href='../../objects_report/gnutls/3.2.11/3.2.12/report.html'>97.91%</a></td>
+<td class='ok'>0</td>
+<td class='removed'><a class='num' href='../../objects_report/gnutls/3.2.11/3.2.12/report.html'>25 removed</a></td>
+<td><a href='../../headers_diff/gnutls/3.2.11/3.2.12/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.11</td>
+<td>2014-02-13</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.11/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.10/3.2.11/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.10/3.2.11/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.10</td>
+<td>2014-01-31</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.10/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.9/3.2.10/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.2.9/3.2.10/report.html'>11 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.9/3.2.10/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.9</td>
+<td>2014-01-24</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.9/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.8.1/3.2.9/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.8.1/3.2.9/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.8.1</td>
+<td>2013-12-21</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.8.1/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.8/3.2.8.1/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td>0</td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.8</td>
+<td>2013-12-20</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.8/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.7/3.2.8/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.2.7/3.2.8/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.7/3.2.8/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.7</td>
+<td>2013-11-23</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.7/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.6/3.2.7/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.2.6/3.2.7/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.6/3.2.7/diff.html'>14</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.6</td>
+<td>2013-10-31</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.6/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.5/3.2.6/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.5/3.2.6/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.5</td>
+<td>2013-10-23</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.5/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.4/3.2.5/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.4/3.2.5/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.4</td>
+<td>2013-08-31</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.4/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.3/3.2.4/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.2.3/3.2.4/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.3/3.2.4/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.3</td>
+<td>2013-07-30</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.3/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.2/3.2.3/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.2.2/3.2.3/report.html'>3 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.2/3.2.3/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.2</td>
+<td>2013-07-14</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.2/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.1/3.2.2/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.2.1/3.2.2/report.html'>8 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.1/3.2.2/diff.html'>3</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.1</td>
+<td>2013-06-01</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.1/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.2.0/3.2.1/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.2.0/3.2.1/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.2.0/3.2.1/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.2.0</td>
+<td>2013-05-10</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.2.0/log.html'>changelog</a></td>
+<td class='warning'><a href='../../objects_report/gnutls/3.1.25/3.2.0/report.html'>99.33%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.25/3.2.0/report.html'>4 new</a></td>
+<td class='removed'><a class='num' href='../../objects_report/gnutls/3.1.25/3.2.0/report.html'>9 removed</a></td>
+<td><a href='../../headers_diff/gnutls/3.1.25/3.2.0/diff.html'>4</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.25</td>
+<td>2014-05-30</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.25/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.24/3.1.25/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.24/3.1.25/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.24</td>
+<td>2014-05-06</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.24/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.23/3.1.24/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.23/3.1.24/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.23</td>
+<td>2014-04-07</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.23/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.22/3.1.23/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.22/3.1.23/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.22</td>
+<td>2014-03-03</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.22/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.21/3.1.22/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.21/3.1.22/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.21</td>
+<td>2014-02-13</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.21/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.20/3.1.21/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.20/3.1.21/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.20</td>
+<td>2014-01-31</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.20/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.19/3.1.20/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.19/3.1.20/report.html'>8 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.19/3.1.20/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.19</td>
+<td>2014-01-24</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.19/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.18/3.1.19/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.18/3.1.19/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.18</td>
+<td>2013-12-20</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.18/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.17/3.1.18/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.17/3.1.18/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.17</td>
+<td>2013-11-23</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.17/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.16/3.1.17/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.16/3.1.17/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.16</td>
+<td>2013-10-31</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.16/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.15/3.1.16/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.15/3.1.16/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.15</td>
+<td>2013-10-23</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.15/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.14/3.1.15/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.14/3.1.15/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.14</td>
+<td>2013-08-31</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.14/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.13/3.1.14/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.13/3.1.14/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.13/3.1.14/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.13</td>
+<td>2013-07-13</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.13/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.12/3.1.13/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.12/3.1.13/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.12</td>
+<td>2013-06-01</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.12/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.11/3.1.12/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.11/3.1.12/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.11</td>
+<td>2013-05-10</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.11/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.10/3.1.11/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.10/3.1.11/report.html'>3 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.10/3.1.11/diff.html'>4</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.10</td>
+<td>2013-03-22</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.10/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.9.1/3.1.10/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.9.1/3.1.10/report.html'>10 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.9.1/3.1.10/diff.html'>5</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.9.1</td>
+<td>2013-02-27</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.9.1/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.9/3.1.9.1/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td>0</td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.9</td>
+<td>2013-02-27</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.9/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.8/3.1.9/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.8/3.1.9/report.html'>5 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.8/3.1.9/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.8</td>
+<td>2013-02-10</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.8/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.7/3.1.8/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.7/3.1.8/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.7</td>
+<td>2013-02-04</td>
+<td>0/27/28</td>
+<td><a href='../../changelog/gnutls/3.1.7/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.6/3.1.7/report.html'>100%</a><br/>
+<br/>
+<span class='note'><span class='added'>added 1 object</span></span>
+</td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.6/3.1.7/report.html'>9 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.6/3.1.7/diff.html'>11</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.6</td>
+<td>2013-01-02</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.1.6/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.5/3.1.6/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.5/3.1.6/report.html'>9 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.5/3.1.6/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.5</td>
+<td>2012-11-24</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.1.5/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.4/3.1.5/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.4/3.1.5/report.html'>4 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.4/3.1.5/diff.html'>4</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.4</td>
+<td>2012-11-10</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.1.4/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.3/3.1.4/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.3/3.1.4/report.html'>13 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.3/3.1.4/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.3</td>
+<td>2012-10-12</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.1.3/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.2/3.1.3/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.2/3.1.3/report.html'>20 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.2/3.1.3/diff.html'>7</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.2</td>
+<td>2012-09-26</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.1.2/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.1/3.1.2/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.1/3.1.2/report.html'>7 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.1/3.1.2/diff.html'>5</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.1</td>
+<td>2012-09-02</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.1.1/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.1.0/3.1.1/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.1.0/3.1.1/report.html'>3 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.1.0/3.1.1/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.1.0</td>
+<td>2012-08-16</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.1.0/log.html'>changelog</a></td>
+<td class='warning'><a href='../../objects_report/gnutls/3.0.32/3.1.0/report.html'>99.93%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.32/3.1.0/report.html'>21 new</a></td>
+<td class='removed'><a class='num' href='../../objects_report/gnutls/3.0.32/3.1.0/report.html'>1 removed</a></td>
+<td><a href='../../headers_diff/gnutls/3.0.32/3.1.0/diff.html'>8</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.32</td>
+<td>2013-08-31</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.32/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.30/3.0.32/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.30/3.0.32/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.30</td>
+<td>2013-06-01</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.30/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.29/3.0.30/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.29/3.0.30/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.29</td>
+<td>2013-03-22</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.29/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.26/3.0.29/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.26/3.0.29/diff.html'>4</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.26</td>
+<td>2012-11-09</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.26/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.22/3.0.26/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.22/3.0.26/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.22/3.0.26/diff.html'>4</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.22</td>
+<td>2012-08-04</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.22/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.21/3.0.22/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.21/3.0.22/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.21</td>
+<td>2012-07-03</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.21/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.20/3.0.21/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.20/3.0.21/report.html'>2 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.20/3.0.21/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.20</td>
+<td>2012-06-05</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.20/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.19/3.0.20/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.19/3.0.20/report.html'>3 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.19/3.0.20/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.19</td>
+<td>2012-04-22</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.19/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.18/3.0.19/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.18/3.0.19/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.18</td>
+<td>2012-04-02</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.18/log.html'>changelog</a></td>
+<td class='warning'><a href='../../objects_report/gnutls/3.0.17/3.0.18/report.html'>99.93%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.17/3.0.18/report.html'>5 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.17/3.0.18/diff.html'>4</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.17</td>
+<td>2012-03-17</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.17/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.15/3.0.17/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.15/3.0.17/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.15/3.0.17/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.15</td>
+<td>2012-03-02</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.15/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.14/3.0.15/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.14/3.0.15/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.14</td>
+<td>2012-02-24</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.14/log.html'>changelog</a></td>
+<td class='incompatible'><a href='../../objects_report/gnutls/3.0.13/3.0.14/report.html'>75%</a><br/>
+<br/>
+<span class='note'><span class='incompatible'>removed 1 object</span></span>
+</td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.13/3.0.14/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.13</td>
+<td>2012-02-18</td>
+<td>25/27/28</td>
+<td><a href='../../changelog/gnutls/3.0.13/log.html'>changelog</a></td>
+<td class='warning'><a href='../../objects_report/gnutls/3.0.12/3.0.13/report.html'>99.74%</a><br/>
+<br/>
+<span class='note'><span class='added'>added 1 object</span></span>
+</td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.12/3.0.13/report.html'>17 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.12/3.0.13/diff.html'>7</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.12</td>
+<td>2012-01-20</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.12/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.11/3.0.12/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.11/3.0.12/report.html'>35 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.11/3.0.12/diff.html'>11</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.11</td>
+<td>2012-01-06</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.11/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.10/3.0.11/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.10/3.0.11/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.10</td>
+<td>2012-01-04</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.10/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.9/3.0.10/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.9/3.0.10/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.9/3.0.10/diff.html'>4</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.9</td>
+<td>2011-12-14</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.9/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.8/3.0.9/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.8/3.0.9/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.8/3.0.9/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.8</td>
+<td>2011-11-12</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.8/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.7/3.0.8/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.7/3.0.8/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.7/3.0.8/diff.html'>3</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.7</td>
+<td>2011-11-08</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.7/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.6/3.0.7/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.6/3.0.7/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.6</td>
+<td>2011-11-08</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.6/log.html'>changelog</a></td>
+<td class='warning'><a href='../../objects_report/gnutls/3.0.5/3.0.6/report.html'>99.85%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.5/3.0.6/report.html'>4 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.5/3.0.6/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.5</td>
+<td>2011-10-27</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.5/log.html'>changelog</a></td>
+<td class='incompatible'><a href='../../objects_report/gnutls/3.0.4/3.0.5/report.html'>75%</a><br/>
+<br/>
+<span class='note'><span class='incompatible'>removed 1 object</span></span>
+</td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.4/3.0.5/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.4</td>
+<td>2011-10-15</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.4/log.html'>changelog</a></td>
+<td class='warning'><a href='../../objects_report/gnutls/3.0.3/3.0.4/report.html'>99.91%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.3/3.0.4/report.html'>3 new</a></td>
+<td class='removed'><a class='num' href='../../objects_report/gnutls/3.0.3/3.0.4/report.html'>1 removed</a></td>
+<td><a href='../../headers_diff/gnutls/3.0.3/3.0.4/diff.html'>4</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.3</td>
+<td>2011-09-19</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.3/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.2/3.0.3/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.2/3.0.3/report.html'>2 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.2/3.0.3/diff.html'>9</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.2</td>
+<td>2011-09-01</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.2/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/3.0.1/3.0.2/report.html'>100%</a></td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/3.0.1/3.0.2/report.html'>1 new</a></td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/3.0.1/3.0.2/diff.html'>3</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>3.0.1</td>
+<td>2011-08-21</td>
+<td>27/28</td>
+<td><a href='../../changelog/gnutls/3.0.1/log.html'>changelog</a></td>
+<td class='warning'><a href='../../objects_report/gnutls/2.12.23/3.0.1/report.html'>94.68%</a><br/>
+<br/>
+<span class='note'><span class='incompatible'>changed SONAME</span></span>
+</td>
+<td class='added'><a class='num' href='../../objects_report/gnutls/2.12.23/3.0.1/report.html'>43 new</a></td>
+<td class='removed'><a class='num' href='../../objects_report/gnutls/2.12.23/3.0.1/report.html'>52 removed</a></td>
+<td><a href='../../headers_diff/gnutls/2.12.23/3.0.1/diff.html'>10</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.23</td>
+<td>2013-02-04</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.23/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/2.12.22/2.12.23/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/2.12.22/2.12.23/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.22</td>
+<td>2013-01-06</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.22/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/2.12.19/2.12.22/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/2.12.19/2.12.22/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.19</td>
+<td>2012-05-05</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.19/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/2.12.18/2.12.19/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/2.12.18/2.12.19/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.18</td>
+<td>2012-03-16</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.18/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/2.12.17/2.12.18/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/2.12.17/2.12.18/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.17</td>
+<td>2012-03-02</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.17/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/2.12.16/2.12.17/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/2.12.16/2.12.17/diff.html'>2</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.16</td>
+<td>2012-01-07</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.16/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/2.12.15/2.12.16/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/2.12.15/2.12.16/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.15</td>
+<td>2012-01-07</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.15/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/2.12.14/2.12.15/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/2.12.14/2.12.15/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.14</td>
+<td>2011-11-08</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.14/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/2.12.13/2.12.14/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/2.12.13/2.12.14/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.13</td>
+<td>2011-11-08</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.13/log.html'>changelog</a></td>
+<td class='ok'><a href='../../objects_report/gnutls/2.12.12/2.12.13/report.html'>100%</a></td>
+<td class='ok'>0</td>
+<td class='ok'>0</td>
+<td><a href='../../headers_diff/gnutls/2.12.12/2.12.13/diff.html'>1</a></td>
+<td>N/A</td>
+</tr>
+<tr><td>2.12.12</td>
+<td>2011-10-20</td>
+<td>26/27</td>
+<td><a href='../../changelog/gnutls/2.12.12/log.html'>changelog</a></td>
+<td>N/A</td>
+<td>N/A</td>
+<td>N/A</td>
+<td>N/A</td>
+<td>N/A</td>
+</tr>
+</table><br/>Maintained by <a href='http://www.gnutls.org/'>Nikos Mavrogiannopoulos</a>. Last updated on Sun Sep 20 13:55:47 2015.<br/>
+<br/>
+<hr/>
+<div align='right'><a class='home' title="Andrey Ponomarenko's ABI laboratory" href='http://abi-laboratory.pro/'>abi-laboratory.pro</a></div>
+<br/>
+</body></html> \ No newline at end of file
diff --git a/css/changelog.css b/css/changelog.css
new file mode 100644
index 0000000000..bd724dfaa9
--- /dev/null
+++ b/css/changelog.css
@@ -0,0 +1,18 @@
+.changelog {
+ cursor:text;
+ /*margin-top:7px;*/
+ font-family:Monaco, Consolas, 'DejaVu Sans Mono', 'Droid Sans Mono', Monospace;
+ font-size:14px;
+ padding:10px;
+ border:1px solid #333333; /* #e0e8e5 */
+ color:#333333;
+ background-color:#eff3f2;
+ word-wrap:break-word;
+ max-width:640px;
+ display: inline-block;
+ text-align:left;
+}
+
+.wrap {
+ white-space:pre-wrap;
+} \ No newline at end of file
diff --git a/css/common.css b/css/common.css
new file mode 100644
index 0000000000..877785e62d
--- /dev/null
+++ b/css/common.css
@@ -0,0 +1,28 @@
+body {
+ padding-left:15px;
+ padding:5px;
+ background-color:White;
+ color:Black;
+}
+
+h1 {
+ font-size:1.7em;
+ margin:0px;
+ padding:0px;
+}
+
+hr {
+ color:Black;
+ background-color:Black;
+ height:1px;
+ border:0;
+}
+
+.tool {
+ font-size:1.55em;
+}
+
+a.tool {
+ text-decoration:none;
+ color:Black;
+}
diff --git a/css/headers_diff.css b/css/headers_diff.css
new file mode 100644
index 0000000000..c776feb43e
--- /dev/null
+++ b/css/headers_diff.css
@@ -0,0 +1,32 @@
+.diff_tbl tr { }
+.diff_tbl td {
+ white-space: pre;
+ font-family: "DejaVu Sans Mono", "Droid Sans Mono", Monaco, Monospace;
+ vertical-align: top;
+ font-size: 14px;
+}
+
+.diff_tbl th {
+ font-size: 16px;
+}
+
+.small { font-size: 0.6em; font-style: italic; font-family: Verdana, Helvetica, sans-serif; }
+.left { background-color: #EEE; }
+.right { background-color: #FFF; }
+.diff { background-color: #CCF; }
+.lblock { background-color: #BFB; }
+.rblock { background-color: #FF8; }
+.insert { background-color: #8FF; }
+.delete { background-color: #ACF; }
+.void { background-color: #FFB; }
+.cont { background-color: #EEE; }
+.linebr { background-color: #AAA; }
+.lineno { color: red; background-color: #FFF; font-size: 0.7em; text-align: right; padding: 0 2px; }
+.elipsis{ background-color: #AAA; }
+.left .cont { background-color: #DDD; }
+.right .cont { background-color: #EEE; }
+.lblock .cont { background-color: #9D9; }
+.rblock .cont { background-color: #DD6; }
+.insert .cont { background-color: #0DD; }
+.delete .cont { background-color: #8AD; }
+.stats, .stats td, .stats th { background-color: #EEE; padding: 2px 0; }
diff --git a/css/report.css b/css/report.css
new file mode 100644
index 0000000000..7a96884d8f
--- /dev/null
+++ b/css/report.css
@@ -0,0 +1,63 @@
+table.summary {
+ font-family:"DejaVu Sans Mono", "Monaco", monospace;
+ font-size:0.94em;
+}
+
+table.summary {
+ border-collapse:collapse;
+}
+table.summary tr, table.summary td, table.summary th
+{
+ border:1px solid #777777;
+ border-collapse:collapse;
+ padding:0.2em;
+ padding-left:7px;
+ padding-right:7px;
+ text-align:center;
+}
+table.summary th {
+ background:#f2f2f2;
+ white-space:nowrap;
+}
+
+table.summary td {
+ padding-top:20px;
+ padding-bottom:20px;
+}
+
+a.home {
+ font-size:1.2em;
+ text-decoration:none;
+}
+
+a.num {
+ color:#000000;
+ text-decoration:none;
+}
+a.num:hover {
+ text-decoration:underline;
+}
+
+a.info {
+ text-decoration:none;
+}
+
+.note {
+ font-size:0.82em;
+}
+
+.ok {
+ background-color:#CCFFCC;
+}
+.warning {
+ background-color:#F4F4AF;
+}
+.incompatible, .removed {
+ background-color:#FFCCCC;
+}
+.added {
+ background-color:#C6DEFF;
+}
+table.summary td.object {
+ text-align:left;
+} \ No newline at end of file
diff --git a/download.html b/download.html
index 2ad2cbab4e..97ff728056 100644
--- a/download.html
+++ b/download.html
@@ -76,6 +76,12 @@
<p>
<div align="center">
<h1>Releases of GnuTLS</h1>
+<p>
+Our goal is to deliver a stable API and ABI for the library, but on certain
+occasions we have decided to break the ABI in order to deprecate old APIs and avoid clutter.
+For that we maintain an <a href="abi-tracker.html">ABI tracker page for gnutls</a> which lists
+the amount of API and ABI changes per release.
+</p>
<table class="news" border="0" cellspacing="1" width="80%" summary="">
<tr>
<th>Version</th>
@@ -83,11 +89,6 @@
<th>Status</th>
</tr>
<tr>
- <td>2.12.x</td>
- <td>2.4.0</td>
- <td>Unsupported since January 2014.</td>
- </tr>
- <tr>
<td>3.3.x</td>
<td>3.0.0</td>
<td>Current stable release.</td>
diff --git a/download.wml b/download.wml
index e843acfaa7..7eabb10949 100644
--- a/download.wml
+++ b/download.wml
@@ -29,6 +29,12 @@
<center>
<h1>Releases of GnuTLS</h1>
+<p>
+Our goal is to deliver a stable API and ABI for the library, but on certain
+occasions we have decided to break the ABI in order to deprecate old APIs and avoid clutter.
+For that we maintain an <a href="abi-tracker.html">ABI tracker page for gnutls</a> which lists
+the amount of API and ABI changes per release.
+</p>
<table class="news" border=0 cellspacing=1 width=80%>
<tr>
@@ -37,11 +43,6 @@
<th>Status</th>
</tr>
<tr>
- <td>2.12.x</td>
- <td>2.4.0</td>
- <td>Unsupported since January 2014.</td>
- </tr>
- <tr>
<td>3.3.x</td>
<td>3.0.0</td>
<td>Current stable release.</td>