New upstream version 5.0.5

parent 5dc9cc93
......@@ -7,7 +7,10 @@ Copyright (c) 1995, Pascal Andre
Further modifications copyright (c) 1997-2008 by D'Arcy J.M. Cain
(darcy@PyGreSQL.org)
Further modifications copyright (c) 2009-2016 by the PyGreSQL team.
Further modifications copyright (c) 2009-2018 by the PyGreSQL team.
PyGreSQL is released under the PostgreSQL License, a liberal Open Source
license, similar to the BSD or MIT licenses:
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose, without fee, and without a written agreement
......
Metadata-Version: 1.1
Name: PyGreSQL
Version: 5.0.4
Version: 5.0.5
Summary: Python PostgreSQL Interfaces
Home-page: http://www.pygresql.org
Author: D'Arcy J. M. Cain
Author-email: darcy@PyGreSQL.org
License: Python
License: PostgreSQL
Download-URL: http://www.pygresql.org/download/
Description: PyGreSQL is an open-source Python module that interfaces to a
PostgreSQL database. It embeds the PostgreSQL query library to allow
......@@ -14,7 +14,7 @@ Keywords: pygresql postgresql database api dbapi
Platform: any
Classifier: Development Status :: 6 - Mature
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Python Software Foundation License
Classifier: License :: OSI Approved :: The PostgreSQL License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: C
Classifier: Programming Language :: Python
......@@ -25,6 +25,7 @@ Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: SQL
Classifier: Topic :: Database
Classifier: Topic :: Database :: Front-Ends
......
Metadata-Version: 1.1
Name: PyGreSQL
Version: 5.0.4
Version: 5.0.5
Summary: Python PostgreSQL Interfaces
Home-page: http://www.pygresql.org
Author: D'Arcy J. M. Cain
Author-email: darcy@PyGreSQL.org
License: Python
License: PostgreSQL
Download-URL: http://www.pygresql.org/download/
Description: PyGreSQL is an open-source Python module that interfaces to a
PostgreSQL database. It embeds the PostgreSQL query library to allow
......@@ -14,7 +14,7 @@ Keywords: pygresql postgresql database api dbapi
Platform: any
Classifier: Development Status :: 6 - Mature
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Python Software Foundation License
Classifier: License :: OSI Approved :: The PostgreSQL License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: C
Classifier: Programming Language :: Python
......@@ -25,6 +25,7 @@ Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: SQL
Classifier: Topic :: Database
Classifier: Topic :: Database :: Front-Ends
......
......@@ -63,12 +63,14 @@ docs/_build/html/_sources/contents/postgres/syscat.rst.txt
docs/_build/html/_sources/download/index.rst.txt
docs/_build/html/_static/ajax-loader.gif
docs/_build/html/_static/basic.css
docs/_build/html/_static/cloud.base.js
docs/_build/html/_static/cloud.css
docs/_build/html/_static/cloud.js
docs/_build/html/_static/comment-bright.png
docs/_build/html/_static/comment-close.png
docs/_build/html/_static/comment.png
docs/_build/html/_static/doctools.js
docs/_build/html/_static/documentation_options.js
docs/_build/html/_static/down-pressed.png
docs/_build/html/_static/down.png
docs/_build/html/_static/favicon.ico
......@@ -80,7 +82,7 @@ docs/_build/html/_static/icon-note.png
docs/_build/html/_static/icon-seealso.png
docs/_build/html/_static/icon-todo.png
docs/_build/html/_static/icon-warning.png
docs/_build/html/_static/jquery-3.1.0.js
docs/_build/html/_static/jquery-3.2.1.js
docs/_build/html/_static/jquery.cookie.js
docs/_build/html/_static/jquery.js
docs/_build/html/_static/minus.png
......
......@@ -3,12 +3,12 @@ PyGreSQL Announcements
======================
---------------------------------
Release of PyGreSQL version 5.0.4
Release of PyGreSQL version 5.0.5
---------------------------------
Release 5.0.4 of PyGreSQL.
Release 5.0.5 of PyGreSQL.
It is available at: http://pygresql.org/files/PyGreSQL-5.0.4.tar.gz.
It is available at: http://pygresql.org/files/PyGreSQL-5.0.5.tar.gz.
If you are running NetBSD, look in the packages directory under databases.
There is also a package in the FreeBSD ports collection.
......@@ -24,9 +24,9 @@ This version has been built and unit tested on:
- FreeBSD
- openSUSE
- Ubuntu
- Windows 7 with both MinGW and Visual Studio
- PostgreSQL 9.0 to 9.6 32 and 64bit
- Python 2.6, 2.7, 3.3, 3.4, 3.5, 3.6 32 and 64bit
- Windows 7 and 10 with both MinGW and Visual Studio
- PostgreSQL 9.0 to 9.6 and 10 (32 and 64bit)
- Python 2.6, 2.7 and 3.3 to 3.6 (32 and 64bit)
| D'Arcy J.M. Cain
| darcy@PyGreSQL.org
ChangeLog
=========
Version 5.0.4 (2017-07-23)
Version 5.0.5 (2018-04-25)
------------------------------
- This version officially supports the new PostgreSQL 10.
- The memory for the string with the number of rows affected by a classic pg
module query() was already freed (bug report and fix by Peifeng Qiu).
Version 5.0.4 (2017-07-23)
--------------------------
- This version officially supports the new Python 3.6 and PostgreSQL 9.6.
- query_formatted() can now be used without parameters.
- The automatic renaming of columns that are invalid as field names of
......
......@@ -11,7 +11,7 @@ are on Windows, make sure that the directory with libpq.dll is in your
``PATH`` environment variable.
The current version of PyGreSQL has been tested with Python versions
2.6, 2.7, 3.3 to 3.6 and PostGreSQL version 9.0 to 9.6.
2.6, 2.7 and 3.3 to 3.6, and PostGreSQL versions 9.0 to 9.6 and 10.
PyGreSQL will be installed as three modules, a dynamic module called
_pg.pyd, and two pure Python wrapper modules called pg.py and pgdb.py.
......
......@@ -363,8 +363,8 @@ With PostgreSQL we can easily calculate that these two circles overlap::
True
However, calculating the intersection points between the two circles using the
``#`` operator does not work (at least not as of PostgreSQL version 9.6).
So let' resort to SymPy to find out. To ease importing circles from
``#`` operator does not work (at least not as of PostgreSQL version 10).
So let's resort to SymPy to find out. To ease importing circles from
PostgreSQL to SymPy, we create and register the following typecast function::
>>> from sympy import Point, Circle
......
......@@ -55,7 +55,7 @@ rowcount -- number of rows of the result
:meth:`Cursor.execute` or :meth:`Cursor.executemany` call produced
(for DQL statements like SELECT) or affected (for DML statements like
UPDATE or INSERT). It is also set by the :meth:`Cursor.copy_from` and
:meth':`Cursor.copy_to` methods. The attribute is -1 in case no such
:meth:`Cursor.copy_to` methods. The attribute is -1 in case no such
method call has been performed on the cursor or the rowcount of the
last operation cannot be determined by the interface.
......
......@@ -10,7 +10,7 @@ Copyright (c) 1995, Pascal Andre
Further modifications copyright (c) 1997-2008 by D'Arcy J.M. Cain
(darcy@PyGreSQL.org)
Further modifications copyright (c) 2009-2016 by the PyGreSQL team.
Further modifications copyright (c) 2009-2018 by the PyGreSQL team.
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose, without fee, and without a written agreement
......
......@@ -4,7 +4,7 @@
*
* Sphinx stylesheet -- basic theme.
*
* :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :copyright: Copyright 2007-2018 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
......@@ -49,7 +49,7 @@ div.sphinxsidebarwrapper {
div.sphinxsidebar {
float: left;
width: 0px;
width: 2.5in;
margin-left: -100%;
font-size: 90%;
word-wrap: break-word;
......@@ -82,9 +82,21 @@ div.sphinxsidebar input {
}
div.sphinxsidebar #searchbox input[type="text"] {
width: 170px;
float: left;
width: 80%;
padding: 0.25em;
box-sizing: border-box;
}
div.sphinxsidebar #searchbox input[type="submit"] {
float: left;
width: 20%;
border-left: none;
padding: 0.25em;
box-sizing: border-box;
}
img {
border: 0;
max-width: 100%;
......@@ -199,6 +211,11 @@ table.modindextable td {
/* -- general body styles --------------------------------------------------- */
div.body {
min-width: 450px;
max-width: 800px;
}
div.body p, div.body dd, div.body li, div.body blockquote {
-moz-hyphens: auto;
-ms-hyphens: auto;
......@@ -332,6 +349,11 @@ table.docutils {
border-collapse: collapse;
}
table.align-center {
margin-left: auto;
margin-right: auto;
}
table caption span.caption-number {
font-style: italic;
}
......@@ -445,10 +467,14 @@ dd {
margin-left: 30px;
}
dt:target, .highlighted {
dt:target, span.highlighted {
background-color: #fbe54e;
}
rect.highlighted {
fill: #fbe54e;
}
dl.glossary dt {
font-weight: bold;
font-size: 1.1em;
......
/* ~~~~~~~~~~~~~~
* cloud.base.js
*~~~~~~~~~~~~~~
*
* Base JS utils needed by cloud js instrumentation.
* Split out so they can be used by theme-independant extensions (e.g. auto_redirect)
*
* This initializes a "window.CSP.utils" object
*
* :copyright: Copyright 2017 by Assurance Technologies
* :license: BSD
*/
// begin encapsulation
(function (window, $, _) {
/*==========================================================================
* internal helpers
*==========================================================================*/
var location = document.location,
// hosturl is url to root of host, without trailing '/'
// NOTE: regex allows netloc segment to be empty, to support 'file:///' urls
hosturl = location.href.match(/^[a-z0-9]+:(?:\/\/)?(?:[^@/]*@)?[^/]*/)[0],
docpath = location.pathname,
sphinx = window.DOCUMENTATION_OPTIONS;
/*==========================================================================
* utils
*==========================================================================*/
var utils = {
/*==========================================================================
* url helpers
*==========================================================================*/
// helper to generate an absolute url path from a relative one.
// absolute paths passed through unchanged.
// paths treated as relative to <base>,
// if base is omitted, uses directory of current document.
abspath: function (path, base) {
var parts = path.split("/"),
stack = [];
if (parts[0]) {
// if path is relative, put base on stack
stack = (base || location.pathname).split("/");
// remove blank from leading '/'
if (!stack[0]) {
stack.shift();
}
// discard filename & blank from trailing '/'
if (stack.length && !(base && stack[stack.length - 1])) {
stack.pop();
}
}
for (var i = 0; i < parts.length; ++i) {
if (parts[i] && parts[i] != '.') {
if (parts[i] == '..') {
stack.pop();
} else {
stack.push(parts[i]);
}
}
}
return "/" + stack.join("/");
},
// return subpath of url, if it starts with base ("" or non-empty string)
// returns undefined if url doesn't start with base.
// base url search params & fragments are ignored.
getSubUrl: function(url, base){
base = base.replace(/(?:\/|[#?].*)$/, '');
if(url.startsWith(base)) {
var suffix = url.slice(base.length);
if(suffix == '' || suffix.match(/^[/#?]/)){ return suffix; }
}
return;
},
// helper to normalize urls for comparison
// * strips current document's scheme, host, & path from local document links (just fragment will be left)
// * strips current document's scheme & host from internal urls (just path + fragment will be left)
// * makes all internal url paths absolute
// * external urls returned unchanged.
shortenUrl: function(url) {
if (!url){
return "";
} else if (url.indexOf(hosturl) == 0) {
// absolute path to same host
url = url.substr(hosturl.length) || '/';
} else if (url[0] == '.') {
// relative path
url = utils.abspath(url);
} else if (!url.match(/^[/#?]|[a-z0-9]+:/)) {
// not abs path, or fragment, or query, or uri:// --
// another page in current dir
url = utils.abspath('./' + url);
}
if (url.indexOf(docpath) == 0) {
// strip current doc's url; only thing left will be e.g. #anchor
url = url.substr(docpath.length);
}
if (url == "#" || url == "#top") {
// normalize to empty string
url = "";
}
return url;
},
// url w/ query params & hash stripped
baseUrl: function(url){
return utils.shortenUrl(url).replace(/[#?].*$/, '');
}
};
/*==========================================================================
* misc es5 polyfills
*==========================================================================*/
var StrProto = String.prototype;
if (!StrProto.startsWith) {
StrProto.startsWith = function(search, pos){
return this.substr(pos || 0, search.length) === search;
};
}
/*==========================================================================
* jquery patches
*==========================================================================*/
// custom helper to toggle visibility
$.fn.toggleVis = function (state){
if(state) { this.show(); } else { this.hide(); }
return this;
};
/*==========================================================================
* initialize namespace
*==========================================================================*/
window.CST = window.CloudSphinxTheme = {
// url to root of host, without trailing "/"
hosturl: hosturl,
// path to root of document dir, without trailing "/" or index.html
rootpath: sphinx && utils.abspath(sphinx.URL_ROOT || ""),
utils: utils
};
/*==========================================================================
* eof
*==========================================================================*/
// end encapsulation
// NOTE: sphinx provides underscore.js as $u
}(window, jQuery, $u));
This diff is collapsed.
This diff is collapsed.
......@@ -4,7 +4,7 @@
*
* Sphinx JavaScript utilities for all documentation.
*
* :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :copyright: Copyright 2007-2018 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
......@@ -45,7 +45,7 @@ jQuery.urlencode = encodeURIComponent;
* it will always return arrays of strings for the value parts.
*/
jQuery.getQueryParameters = function(s) {
if (typeof s == 'undefined')
if (typeof s === 'undefined')
s = document.location.search;
var parts = s.substr(s.indexOf('?') + 1).split('&');
var result = {};
......@@ -66,29 +66,53 @@ jQuery.getQueryParameters = function(s) {
* span elements with the given class name.
*/
jQuery.fn.highlightText = function(text, className) {
function highlight(node) {
if (node.nodeType == 3) {
function highlight(node, addItems) {
if (node.nodeType === 3) {
var val = node.nodeValue;
var pos = val.toLowerCase().indexOf(text);
if (pos >= 0 && !jQuery(node.parentNode).hasClass(className)) {
var span = document.createElement("span");
span.className = className;
var span;
var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg");
if (isInSVG) {
span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
} else {
span = document.createElement("span");
span.className = className;
}
span.appendChild(document.createTextNode(val.substr(pos, text.length)));
node.parentNode.insertBefore(span, node.parentNode.insertBefore(
document.createTextNode(val.substr(pos + text.length)),
node.nextSibling));
node.nodeValue = val.substr(0, pos);
if (isInSVG) {
var bbox = span.getBBox();
var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
rect.x.baseVal.value = bbox.x;
rect.y.baseVal.value = bbox.y;
rect.width.baseVal.value = bbox.width;
rect.height.baseVal.value = bbox.height;
rect.setAttribute('class', className);
var parentOfText = node.parentNode.parentNode;
addItems.push({
"parent": node.parentNode,
"target": rect});
}
}
}
else if (!jQuery(node).is("button, select, textarea")) {
jQuery.each(node.childNodes, function() {
highlight(this);
highlight(this, addItems);
});
}
}
return this.each(function() {
highlight(this);
var addItems = [];
var result = this.each(function() {
highlight(this, addItems);
});
for (var i = 0; i < addItems.length; ++i) {
jQuery(addItems[i].parent).before(addItems[i].target);
}
return result;
};
/*
......@@ -131,21 +155,21 @@ var Documentation = {
* i18n support
*/
TRANSLATIONS : {},
PLURAL_EXPR : function(n) { return n == 1 ? 0 : 1; },
PLURAL_EXPR : function(n) { return n === 1 ? 0 : 1; },
LOCALE : 'unknown',
// gettext and ngettext don't access this so that the functions
// can safely bound to a different name (_ = Documentation.gettext)
gettext : function(string) {
var translated = Documentation.TRANSLATIONS[string];
if (typeof translated == 'undefined')
if (typeof translated === 'undefined')
return string;
return (typeof translated == 'string') ? translated : translated[0];
return (typeof translated === 'string') ? translated : translated[0];
},
ngettext : function(singular, plural, n) {
var translated = Documentation.TRANSLATIONS[singular];
if (typeof translated == 'undefined')
if (typeof translated === 'undefined')
return (n == 1) ? singular : plural;
return translated[Documentation.PLURALEXPR(n)];
},
......@@ -180,7 +204,7 @@ var Documentation = {
* see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075
*/
fixFirefoxAnchorBug : function() {
if (document.location.hash)
if (document.location.hash && $.browser.mozilla)
window.setTimeout(function() {
document.location.href += '';
}, 10);
......@@ -216,7 +240,7 @@ var Documentation = {
var src = $(this).attr('src');
var idnum = $(this).attr('id').substr(7);
$('tr.cg-' + idnum).toggle();
if (src.substr(-9) == 'minus.png')
if (src.substr(-9) === 'minus.png')
$(this).attr('src', src.substr(0, src.length-9) + 'plus.png');
else
$(this).attr('src', src.substr(0, src.length-8) + 'minus.png');
......@@ -248,7 +272,7 @@ var Documentation = {
var path = document.location.pathname;
var parts = path.split(/\//);
$.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() {
if (this == '..')
if (this === '..')
parts.pop();
});
var url = parts.join('/');
......
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
VERSION: '5.0.5',
LANGUAGE: 'None',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt'
};
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -4,7 +4,7 @@
*
* Sphinx JavaScript utilities for the full-text search.
*
* :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :copyright: Copyright 2007-2018 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
......@@ -540,6 +540,9 @@ var Search = {
});
} else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) {
var suffix = DOCUMENTATION_OPTIONS.SOURCELINK_SUFFIX;
if (suffix === undefined) {
suffix = '.txt';
}
$.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + '_sources/' + item[5] + (item[5].slice(-suffix.length) === suffix ? '' : suffix),
dataType: "text",
complete: function(jqxhr, textstatus) {
......
......@@ -4,7 +4,7 @@
*
* sphinx.websupport utilities for all documentation.
*
* :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS.
* :copyright: Copyright 2007-2018 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
......@@ -301,7 +301,7 @@
li.hide();
// Determine where in the parents children list to insert this comment.
for(i=0; i < siblings.length; i++) {
for(var i=0; i < siblings.length; i++) {
if (comp(comment, siblings[i]) <= 0) {
$('#cd' + siblings[i].id)
.parent()
......
......@@ -6,26 +6,19 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PyGreSQL Announcements &#8212; PyGreSQL 5.0 documentation</title>
<link rel="stylesheet" href="_static/cloud.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="_static/pygresql.css" type="text/css" />
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Noticia+Text|Open+Sans|Droid+Sans+Mono" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
VERSION: '5.0.4',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/documentation_options.js"></script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/jquery.cookie.js"></script>
<script type="text/javascript" src="_static/cloud.base.js"></script>
<script type="text/javascript" src="_static/cloud.js"></script>
<link rel="shortcut icon" href="_static/favicon.ico"/>
<link rel="index" title="Index" href="genindex.html" />
......@@ -34,8 +27,7 @@
<link rel="next" title="Download information" href="download/index.html" />
<link rel="prev" title="Copyright notice" href="copyright.html" />
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>
</head><body>
<div class="pageheader related" role="navigation" aria-label="related navigation">
<ul>
<li><a href="index.html">Home</a></li>
......@@ -61,10 +53,10 @@
<div class="section" id="pygresql-announcements">
<h1>PyGreSQL Announcements<a class="headerlink" href="#pygresql-announcements" title="Permalink to this headline"></a></h1>
<div class="section" id="release-of-pygresql-version-5-0-4">
<h2>Release of PyGreSQL version 5.0.4<a class="headerlink" href="#release-of-pygresql-version-5-0-4" title="Permalink to this headline"></a></h2>
<p>Release 5.0.4 of PyGreSQL.</p>
<p>It is available at: <a class="reference external" href="http://pygresql.org/files/PyGreSQL-5.0.4.tar.gz">http://pygresql.org/files/PyGreSQL-5.0.4.tar.gz</a>.</p>
<div class="section" id="release-of-pygresql-version-5-0-5">
<h2>Release of PyGreSQL version 5.0.5<a class="headerlink" href="#release-of-pygresql-version-5-0-5" title="Permalink to this headline"></a></h2>
<p>Release 5.0.5 of PyGreSQL.</p>
<p>It is available at: <a class="reference external" href="http://pygresql.org/files/PyGreSQL-5.0.5.tar.gz">http://pygresql.org/files/PyGreSQL-5.0.5.tar.gz</a>.</p>
<p>If you are running NetBSD, look in the packages directory under databases.
There is also a package in the FreeBSD ports collection.</p>
<p>Please refer to <a class="reference external" href="changelog.html">changelog.txt</a>
......@@ -78,9 +70,9 @@ for general information.</p>
<li>FreeBSD</li>
<li>openSUSE</li>
<li>Ubuntu</li>
<li>Windows 7 with both MinGW and Visual Studio</li>
<li>PostgreSQL 9.0 to 9.6 32 and 64bit</li>
<li>Python 2.6, 2.7, 3.3, 3.4, 3.5, 3.6 32 and 64bit</li>
<li>Windows 7 and 10 with both MinGW and Visual Studio</li>
<li>PostgreSQL 9.0 to 9.6 and 10 (32 and 64bit)</li>
<li>Python 2.6, 2.7 and 3.3 to 3.6 (32 and 64bit)</li>
</ul>
</dd>
</dl>
......@@ -99,11 +91,11 @@ for general information.</p>
<div class="sphinxsidebarwrapper">
<p class="logo"><a href="contents/index.html" title="contents/index">
<img class="logo" src="_static/pygresql.png" alt="Logo"/>
</a></p><div class="sphinxlocaltoc">
</a></p><div class="sphinx-toc sphinxlocaltoc">
<h3><a href="index.html">Page contents</a></h3>
<ul>
<li><a class="reference internal" href="#">PyGreSQL Announcements</a><ul>
<li><a class="reference internal" href="#release-of-pygresql-version-5-0-4">Release of PyGreSQL version 5.0.4</a></li>
<li><a class="reference internal" href="#release-of-pygresql-version-5-0-5">Release of PyGreSQL version 5.0.5</a></li>
</ul>
</li>
</ul>
......@@ -128,21 +120,40 @@ for general information.</p>
</div>
<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="search.html" method="get">
<div><input type="text" name="q" /></div>
<div><input type="submit" value="Go" /></div>
<input type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="sidebar-toggle-group no-js">