PageSourceSearch

https://www.psycopg.org/articles/

html psycopg.org collected 2026-10-01 09:13:34 UTC 39,884 bytes, 819 lines download raw bytes

1<!doctype html>
2<html lang="en">
3  <head>
4    <meta charset="utf-8" />
5    <meta name="viewport" content="width=device-width, initial-scale=1" />
6    <title>Psycopg - PostgreSQL adapter for Python</title>
7    <meta
8      name="description"
9      content="Psycopg is the most popular PostgreSQL adapter for the Python programming language."
10    />
11    <link rel="icon" type="image/png" href="/img/logo.png" />
12    <link rel="apple-touch-icon" href="/img/apple-touch-icon.png" />
13    <link rel="manifest" href="/manifest.json" />
14    <link rel="preconnect" href="https://fonts.googleapis.com" />
15    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
16    <link href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;800;900&display=swap" rel="stylesheet" />
17    <link rel="stylesheet" href="/css/style.css" />
18    <link rel="stylesheet" href="/css/syntax.css?h=3b162580">
19  </head>
20  <body>
21    <!-- ── Navigation ─────────────────────────────────────────────── -->
22    <header class="site-header">
23      <nav class="nav">
24        <a href="/" class="nav__logo" aria-label="psycopg home">
25          <img src="/img/logo.png" alt="" width="48" height="48" />
26          <span>psycopg</span>
27        </a>
28        <button class="nav__toggle" aria-label="Toggle menu" aria-expanded="false">
29          <span></span><span></span><span></span>
30        </button>
31        <ul class="nav__links" role="list">
32          <li><a href="/">home</a></li>
33          <li><a href="/#sponsors">sponsors</a></li>
34          <li><a href="/#features">features</a></li>
35          <li><a href="/#development">development</a></li>
36          <li><a href="/#articles">articles</a></li>
37          <li><a href="/#maintainers">maintainers</a></li>
38          <li><a href="/#contact">contact</a></li>
39        </ul>
40        <div class="nav__mirror" aria-hidden="true">
41          <span class="nav__logo">
42            <img src="/img/logo.png" alt="" width="48" height="48" />
43            <span>psycopg</span>
44          </span>
45        </div>
46      </nav>
47    </header>
48
49    <div class="">
50      <main class="page">
51<div class="articles-page">
52  <h1 class="articles-page__heading"><span class="text-accent">latest</span> articles</h1>
53  <div class="articles-page__list" id="blog-articles">
54    
55    <article class="post-row">
56      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/psycopg3/">psycopg3</a><a class="post-tag" href="/articles/tag/development/">development</a><a class="post-tag" href="/articles/tag/recipe/">recipe</a></div>
57      <h2 class="post-row__title">
58        <a href="/articles/2026/08/12/server-side-cursors/">Row-by-row streaming with server-side cursors</a>
59      </h2>
60      <div class="post-row__byline">
61        <span class="post-row__author">Daniele Varrazzo</span>
62        <time class="post-row__date" datetime="2026-08-12">12 Aug 2026</time>
63      </div>
64    </article>
65    
66    <article class="post-row">
67      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/psycopg3/">psycopg3</a><a class="post-tag" href="/articles/tag/development/">development</a><a class="post-tag" href="/articles/tag/recipe/">recipe</a></div>
68      <h2 class="post-row__title">
69        <a href="/articles/2026/06/24/pydantic-fastapi/">Integrating Psycopg with FastAPI and Pydantic</a>
70      </h2>
71      <div class="post-row__byline">
72        <span class="post-row__author">Daniele Varrazzo</span>
73        <time class="post-row__date" datetime="2026-06-24">24 Jun 2026</time>
74      </div>
75    </article>
76    
77    <article class="post-row">
78      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
79      <h2 class="post-row__title">
80        <a href="/articles/2025/12/01/psycopg-33-released/">Psycopg 3.3 released</a>
81      </h2>
82      <div class="post-row__byline">
83        <span class="post-row__author">Daniele Varrazzo</span>
84        <time class="post-row__date" datetime="2025-12-01">01 Dec 2025</time>
85      </div>
86    </article>
87    
88    <article class="post-row">
89      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/psycopg3/">psycopg3</a><a class="post-tag" href="/articles/tag/development/">development</a></div>
90      <h2 class="post-row__title">
91        <a href="/articles/2024/09/23/async-to-sync/">Automatic async to sync code conversion</a>
92      </h2>
93      <div class="post-row__byline">
94        <span class="post-row__author">Daniele Varrazzo</span>
95        <time class="post-row__date" datetime="2024-09-23">23 Sep 2024</time>
96      </div>
97    </article>
98    
99    <article class="post-row">
100      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
101      <h2 class="post-row__title">
102        <a href="/articles/2024/06/30/psycopg-32-released/">Psycopg 3.2 released</a>
103      </h2>
104      <div class="post-row__byline">
105        <span class="post-row__author">Daniele Varrazzo</span>
106        <time class="post-row__date" datetime="2024-06-30">30 Jun 2024</time>
107      </div>
108    </article>
109    
110    <article class="post-row">
111      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/psycopg3/">psycopg3</a><a class="post-tag" href="/articles/tag/development/">development</a></div>
112      <h2 class="post-row__title">
113        <a href="/articles/2024/05/08/psycopg3-pipeline-mode/">Pipeline mode in Psycopg</a>
114      </h2>
115      <div class="post-row__byline">
116        <span class="post-row__author">Denis Laxalde</span>
117        <time class="post-row__date" datetime="2024-05-08">08 May 2024</time>
118      </div>
119    </article>
120    
121    <article class="post-row">
122      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
123      <h2 class="post-row__title">
124        <a href="/articles/2022/08/30/psycopg-31-released/">Psycopg 3.1 released</a>
125      </h2>
126      <div class="post-row__byline">
127        <span class="post-row__author">Daniele Varrazzo</span>
128        <time class="post-row__date" datetime="2022-08-30">30 Aug 2022</time>
129      </div>
130    </article>
131    
132    <article class="post-row">
133      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
134      <h2 class="post-row__title">
135        <a href="/articles/2021/10/13/psycopg-30-released/">Psycopg 3.0 released</a>
136      </h2>
137      <div class="post-row__byline">
138        <span class="post-row__author">Daniele Varrazzo</span>
139        <time class="post-row__date" datetime="2021-10-13">13 Oct 2021</time>
140      </div>
141    </article>
142    
143    <article class="post-row">
144      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
145      <h2 class="post-row__title">
146        <a href="/articles/2021/08/30/psycopg-30-beta1-released/">Psycopg 3.0 beta 1 released!</a>
147      </h2>
148      <div class="post-row__byline">
149        <span class="post-row__author">Daniele Varrazzo</span>
150        <time class="post-row__date" datetime="2021-08-30">30 Aug 2021</time>
151      </div>
152    </article>
153    
154    <article class="post-row">
155      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/psycopg3/">psycopg3</a><a class="post-tag" href="/articles/tag/development/">development</a><a class="post-tag" href="/articles/tag/recipe/">recipe</a></div>
156      <h2 class="post-row__title">
157        <a href="/articles/2021/08/02/psycopg3-django-driver/">Building a Django driver for Psycopg 3</a>
158      </h2>
159      <div class="post-row__byline">
160        <span class="post-row__author">Daniele Varrazzo</span>
161        <time class="post-row__date" datetime="2021-08-02">02 Aug 2021</time>
162      </div>
163    </article>
164    
165    <article class="post-row">
166      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
167      <h2 class="post-row__title">
168        <a href="/articles/2021/06/16/psycopg-29-released/">Psycopg 2.9 released</a>
169      </h2>
170      <div class="post-row__byline">
171        <span class="post-row__author">Daniele Varrazzo</span>
172        <time class="post-row__date" datetime="2021-06-16">16 Jun 2021</time>
173      </div>
174    </article>
175    
176    <article class="post-row">
177      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/psycopg3/">psycopg3</a><a class="post-tag" href="/articles/tag/development/">development</a></div>
178      <h2 class="post-row__title">
179        <a href="/articles/2021/01/17/pool-design/">Designing a connection pool for psycopg3</a>
180      </h2>
181      <div class="post-row__byline">
182        <span class="post-row__author">Daniele Varrazzo</span>
183        <time class="post-row__date" datetime="2021-01-17">17 Jan 2021</time>
184      </div>
185    </article>
186    
187    <article class="post-row">
188      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/psycopg3/">psycopg3</a><a class="post-tag" href="/articles/tag/development/">development</a><a class="post-tag" href="/articles/tag/news/">news</a></div>
189      <h2 class="post-row__title">
190        <a href="/articles/2020/11/24/psycopg3-adaptation/">The psycopg3 adaptation system</a>
191      </h2>
192      <div class="post-row__byline">
193        <span class="post-row__author">Daniele Varrazzo</span>
194        <time class="post-row__date" datetime="2020-11-24">24 Nov 2020</time>
195      </div>
196    </article>
197    
198    <article class="post-row">
199      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/psycopg3/">psycopg3</a><a class="post-tag" href="/articles/tag/development/">development</a><a class="post-tag" href="/articles/tag/news/">news</a></div>
200      <h2 class="post-row__title">
201        <a href="/articles/2020/11/15/psycopg3-copy/">The new COPY support in psycopg3</a>
202      </h2>
203      <div class="post-row__byline">
204        <span class="post-row__author">Daniele Varrazzo</span>
205        <time class="post-row__date" datetime="2020-11-15">15 Nov 2020</time>
206      </div>
207    </article>
208    
209    <article class="post-row">
210      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
211      <h2 class="post-row__title">
212        <a href="/articles/2020/09/06/psycopg-286-released/">Psycopg 2.8.6 released</a>
213      </h2>
214      <div class="post-row__byline">
215        <span class="post-row__author">Daniele Varrazzo</span>
216        <time class="post-row__date" datetime="2020-09-06">06 Sep 2020</time>
217      </div>
218    </article>
219    
220    <article class="post-row">
221      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
222      <h2 class="post-row__title">
223        <a href="/articles/2020/04/06/psycopg-285-released/">Psycopg 2.8.5 released</a>
224      </h2>
225      <div class="post-row__byline">
226        <span class="post-row__author">Daniele Varrazzo</span>
227        <time class="post-row__date" datetime="2020-04-06">06 Apr 2020</time>
228      </div>
229    </article>
230    
231    <article class="post-row">
232      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
233      <h2 class="post-row__title">
234        <a href="/articles/2019/10/20/psycopg-284-released/">Psycopg 2.8.4 released</a>
235      </h2>
236      <div class="post-row__byline">
237        <span class="post-row__author">Daniele Varrazzo</span>
238        <time class="post-row__date" datetime="2019-10-20">20 Oct 2019</time>
239      </div>
240    </article>
241    
242    <article class="post-row">
243      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
244      <h2 class="post-row__title">
245        <a href="/articles/2019/06/14/psycopg-283-released/">Psycopg 2.8.3 released</a>
246      </h2>
247      <div class="post-row__byline">
248        <span class="post-row__author">Daniele Varrazzo</span>
249        <time class="post-row__date" datetime="2019-06-14">14 Jun 2019</time>
250      </div>
251    </article>
252    
253    <article class="post-row">
254      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
255      <h2 class="post-row__title">
256        <a href="/articles/2019/04/14/psycopg-281-282-released/">Psycopg 2.8.1, 2.8.2 released</a>
257      </h2>
258      <div class="post-row__byline">
259        <span class="post-row__author">Daniele Varrazzo</span>
260        <time class="post-row__date" datetime="2019-04-14">14 Apr 2019</time>
261      </div>
262    </article>
263    
264    <article class="post-row">
265      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
266      <h2 class="post-row__title">
267        <a href="/articles/2019/04/04/psycopg-28-released/">Psycopg 2.8 released</a>
268      </h2>
269      <div class="post-row__byline">
270        <span class="post-row__author">Daniele Varrazzo</span>
271        <time class="post-row__date" datetime="2019-04-04">04 Apr 2019</time>
272      </div>
273    </article>
274    
275    <article class="post-row">
276      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
277      <h2 class="post-row__title">
278        <a href="/articles/2018/06/17/psycopg-275-released/">Psycopg 2.7.5 released</a>
279      </h2>
280      <div class="post-row__byline">
281        <span class="post-row__author">Daniele Varrazzo</span>
282        <time class="post-row__date" datetime="2018-06-17">17 Jun 2018</time>
283      </div>
284    </article>
285    
286    <article class="post-row">
287      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
288      <h2 class="post-row__title">
289        <a href="/articles/2018/02/08/psycopg-274-released/">Psycopg 2.7.4 released</a>
290      </h2>
291      <div class="post-row__byline">
292        <span class="post-row__author">Daniele Varrazzo</span>
293        <time class="post-row__date" datetime="2018-02-08">08 Feb 2018</time>
294      </div>
295    </article>
296    
297    <article class="post-row">
298      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
299      <h2 class="post-row__title">
300        <a href="/articles/2017/10/24/psycopg-2732-released/">Psycopg 2.7.3.2 released</a>
301      </h2>
302      <div class="post-row__byline">
303        <span class="post-row__author">Daniele Varrazzo</span>
304        <time class="post-row__date" datetime="2017-10-24">24 Oct 2017</time>
305      </div>
306    </article>
307    
308    <article class="post-row">
309      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
310      <h2 class="post-row__title">
311        <a href="/articles/2017/08/26/psycopg-2731-released/">Psycopg 2.7.3.1 released</a>
312      </h2>
313      <div class="post-row__byline">
314        <span class="post-row__author">Daniele Varrazzo</span>
315        <time class="post-row__date" datetime="2017-08-26">26 Aug 2017</time>
316      </div>
317    </article>
318    
319    <article class="post-row">
320      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
321      <h2 class="post-row__title">
322        <a href="/articles/2017/07/24/psycopg-273-released/">Psycopg 2.7.3 released</a>
323      </h2>
324      <div class="post-row__byline">
325        <span class="post-row__author">Daniele Varrazzo</span>
326        <time class="post-row__date" datetime="2017-07-24">24 Jul 2017</time>
327      </div>
328    </article>
329    
330    <article class="post-row">
331      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
332      <h2 class="post-row__title">
333        <a href="/articles/2017/07/22/psycopg-272-released/">Psycopg 2.7.2 released</a>
334      </h2>
335      <div class="post-row__byline">
336        <span class="post-row__author">Daniele Varrazzo</span>
337        <time class="post-row__date" datetime="2017-07-22">22 Jul 2017</time>
338      </div>
339    </article>
340    
341    <article class="post-row">
342      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
343      <h2 class="post-row__title">
344        <a href="/articles/2017/03/13/psycopg-271-released/">Psycopg 2.7.1 released</a>
345      </h2>
346      <div class="post-row__byline">
347        <span class="post-row__author">Daniele Varrazzo</span>
348        <time class="post-row__date" datetime="2017-03-13">13 Mar 2017</time>
349      </div>
350    </article>
351    
352    <article class="post-row">
353      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
354      <h2 class="post-row__title">
355        <a href="/articles/2017/03/01/psycopg-27-released/">Psycopg 2.7 released</a>
356      </h2>
357      <div class="post-row__byline">
358        <span class="post-row__author">Daniele Varrazzo</span>
359        <time class="post-row__date" datetime="2017-03-01">01 Mar 2017</time>
360      </div>
361    </article>
362    
363    <article class="post-row">
364      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
365      <h2 class="post-row__title">
366        <a href="/articles/2017/02/17/psycopg-27-beta-2-released/">Psycopg 2.7 beta 2 released</a>
367      </h2>
368      <div class="post-row__byline">
369        <span class="post-row__author">Daniele Varrazzo</span>
370        <time class="post-row__date" datetime="2017-02-17">17 Feb 2017</time>
371      </div>
372    </article>
373    
374    <article class="post-row">
375      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
376      <h2 class="post-row__title">
377        <a href="/articles/2016/07/07/psycopg-262-released/">Psycopg 2.6.2 released</a>
378      </h2>
379      <div class="post-row__byline">
380        <span class="post-row__author">Daniele Varrazzo</span>
381        <time class="post-row__date" datetime="2016-07-07">07 Jul 2016</time>
382      </div>
383    </article>
384    
385    <article class="post-row">
386      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
387      <h2 class="post-row__title">
388        <a href="/articles/2015/06/16/psycopg-261-released/">Psycopg 2.6.1 released</a>
389      </h2>
390      <div class="post-row__byline">
391        <span class="post-row__author">Daniele Varrazzo</span>
392        <time class="post-row__date" datetime="2015-06-16">16 Jun 2015</time>
393      </div>
394    </article>
395    
396    <article class="post-row">
397      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
398      <h2 class="post-row__title">
399        <a href="/articles/2015/02/09/psycopg-26-and-255-released/">Psycopg 2.6 and 2.5.5 released</a>
400      </h2>
401      <div class="post-row__byline">
402        <span class="post-row__author">Daniele Varrazzo</span>
403        <time class="post-row__date" datetime="2015-02-09">09 Feb 2015</time>
404      </div>
405    </article>
406    
407    <article class="post-row">
408      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
409      <h2 class="post-row__title">
410        <a href="/articles/2014/08/30/psycopg-254-released/">Psycopg 2.5.4 released</a>
411      </h2>
412      <div class="post-row__byline">
413        <span class="post-row__author">Daniele Varrazzo</span>
414        <time class="post-row__date" datetime="2014-08-30">30 Aug 2014</time>
415      </div>
416    </article>
417    
418    <article class="post-row">
419      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/recipe/">recipe</a></div>
420      <h2 class="post-row__title">
421        <a href="/articles/2014/07/20/cancelling-postgresql-statements-python/">Cancelling PostgreSQL statements from Python</a>
422      </h2>
423      <div class="post-row__byline">
424        <span class="post-row__author">Daniele Varrazzo</span>
425        <time class="post-row__date" datetime="2014-07-20">20 Jul 2014</time>
426      </div>
427    </article>
428    
429    <article class="post-row">
430      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
431      <h2 class="post-row__title">
432        <a href="/articles/2014/05/13/psycopg-253-released/">Psycopg 2.5.3 Released</a>
433      </h2>
434      <div class="post-row__byline">
435        <span class="post-row__author">Daniele Varrazzo</span>
436        <time class="post-row__date" datetime="2014-05-13">13 May 2014</time>
437      </div>
438    </article>
439    
440    <article class="post-row">
441      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
442      <h2 class="post-row__title">
443        <a href="/articles/2014/01/07/psycopg-252-released/">Psycopg 2.5.2 released</a>
444      </h2>
445      <div class="post-row__byline">
446        <span class="post-row__author">Daniele Varrazzo</span>
447        <time class="post-row__date" datetime="2014-01-07">07 Jan 2014</time>
448      </div>
449    </article>
450    
451    <article class="post-row">
452      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
453      <h2 class="post-row__title">
454        <a href="/articles/2013/06/23/psycopg-251-released/">Psycopg 2.5.1 released</a>
455      </h2>
456      <div class="post-row__byline">
457        <span class="post-row__author">Daniele Varrazzo</span>
458        <time class="post-row__date" datetime="2013-06-23">23 Jun 2013</time>
459      </div>
460    </article>
461    
462    <article class="post-row">
463      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
464      <h2 class="post-row__title">
465        <a href="/articles/2013/04/07/psycopg-25-released/">Psycopg 2.5 released</a>
466      </h2>
467      <div class="post-row__byline">
468        <span class="post-row__author">Daniele Varrazzo</span>
469        <time class="post-row__date" datetime="2013-04-07">07 Apr 2013</time>
470      </div>
471    </article>
472    
473    <article class="post-row">
474      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
475      <h2 class="post-row__title">
476        <a href="/articles/2012/12/12/psycopg-246-released/">Psycopg 2.4.6 released</a>
477      </h2>
478      <div class="post-row__byline">
479        <span class="post-row__author">Daniele Varrazzo</span>
480        <time class="post-row__date" datetime="2012-12-12">12 Dec 2012</time>
481      </div>
482    </article>
483    
484    <article class="post-row">
485      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/recipe/">recipe</a></div>
486      <h2 class="post-row__title">
487        <a href="/articles/2012/10/01/prepared-statements-psycopg/">Prepared statements in Psycopg</a>
488      </h2>
489      <div class="post-row__byline">
490        <span class="post-row__author">Daniele Varrazzo</span>
491        <time class="post-row__date" datetime="2012-10-01">01 Oct 2012</time>
492      </div>
493    </article>
494    
495    <article class="post-row">
496      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
497      <h2 class="post-row__title">
498        <a href="/articles/2012/03/29/psycopg-245-released/">Psycopg 2.4.5 released</a>
499      </h2>
500      <div class="post-row__byline">
501        <span class="post-row__author">Daniele Varrazzo</span>
502        <time class="post-row__date" datetime="2012-03-29">29 Mar 2012</time>
503      </div>
504    </article>
505    
506    <article class="post-row">
507      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
508      <h2 class="post-row__title">
509        <a href="/articles/2011/12/19/psycopg-244-released/">Psycopg 2.4.4 released</a>
510      </h2>
511      <div class="post-row__byline">
512        <span class="post-row__author">Daniele Varrazzo</span>
513        <time class="post-row__date" datetime="2011-12-19">19 Dec 2011</time>
514      </div>
515    </article>
516    
517    <article class="post-row">
518      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
519      <h2 class="post-row__title">
520        <a href="/articles/2011/12/12/psycopg-243-released/">Psycopg 2.4.3 released</a>
521      </h2>
522      <div class="post-row__byline">
523        <span class="post-row__author">Daniele Varrazzo</span>
524        <time class="post-row__date" datetime="2011-12-12">12 Dec 2011</time>
525      </div>
526    </article>
527    
528    <article class="post-row">
529      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
530      <h2 class="post-row__title">
531        <a href="/articles/2011/06/12/psycopg-242-released/">Psycopg 2.4.2 released</a>
532      </h2>
533      <div class="post-row__byline">
534        <span class="post-row__author">Daniele Varrazzo</span>
535        <time class="post-row__date" datetime="2011-06-12">12 Jun 2011</time>
536      </div>
537    </article>
538    
539    <article class="post-row">
540      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/windows/">windows</a><a class="post-tag" href="/articles/tag/build/">build</a><a class="post-tag" href="/articles/tag/recipe/">recipe</a></div>
541      <h2 class="post-row__title">
542        <a href="/articles/2011/06/05/psycopg-windows-mingw/">Building Psycopg on Windows using MinGW</a>
543      </h2>
544      <div class="post-row__byline">
545        <span class="post-row__author">Daniele Varrazzo</span>
546        <time class="post-row__date" datetime="2011-06-05">05 Jun 2011</time>
547      </div>
548    </article>
549    
550    <article class="post-row">
551      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
552      <h2 class="post-row__title">
553        <a href="/articles/2011/05/11/psycopg-241-released/">Psycopg 2.4.1 released</a>
554      </h2>
555      <div class="post-row__byline">
556        <span class="post-row__author">Federico Di Gregorio</span>
557        <time class="post-row__date" datetime="2011-05-11">11 May 2011</time>
558      </div>
559    </article>
560    
561    <article class="post-row">
562      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
563      <h2 class="post-row__title">
564        <a href="/articles/2011/02/27/psycopg-24-released/">Psycopg 2.4 released</a>
565      </h2>
566      <div class="post-row__byline">
567        <span class="post-row__author">Federico Di Gregorio</span>
568        <time class="post-row__date" datetime="2011-02-27">27 Feb 2011</time>
569      </div>
570    </article>
571    
572    <article class="post-row">
573      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
574      <h2 class="post-row__title">
575        <a href="/articles/2011/02/06/psycopg-24-beta1-released/">Psycopg 2.4 beta1 released</a>
576      </h2>
577      <div class="post-row__byline">
578        <span class="post-row__author">Federico Di Gregorio</span>
579        <time class="post-row__date" datetime="2011-02-06">06 Feb 2011</time>
580      </div>
581    </article>
582    
583    <article class="post-row">
584      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/python3/">python3</a><a class="post-tag" href="/articles/tag/news/">news</a></div>
585      <h2 class="post-row__title">
586        <a href="/articles/2011/01/24/psycopg2-porting-python-3-report/">psycopg2 porting to Python 3: a report</a>
587      </h2>
588      <div class="post-row__byline">
589        <span class="post-row__author">Daniele Varrazzo</span>
590        <time class="post-row__date" datetime="2011-01-24">24 Jan 2011</time>
591      </div>
592    </article>
593    
594    <article class="post-row">
595      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/mailing list/">mailing list</a></div>
596      <h2 class="post-row__title">
597        <a href="/articles/2011/01/08/new-psycopg-mailing-list-online/">New Psycopg Mailing List Online!</a>
598      </h2>
599      <div class="post-row__byline">
600        <span class="post-row__author">Daniele Varrazzo</span>
601        <time class="post-row__date" datetime="2011-01-08">08 Jan 2011</time>
602      </div>
603    </article>
604    
605    <article class="post-row">
606      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
607      <h2 class="post-row__title">
608        <a href="/articles/2010/12/20/psycopg-232-released/">Psycopg 2.3.2 released</a>
609      </h2>
610      <div class="post-row__byline">
611        <span class="post-row__author">Daniele Varrazzo</span>
612        <time class="post-row__date" datetime="2010-12-20">20 Dec 2010</time>
613      </div>
614    </article>
615    
616    <article class="post-row">
617      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
618      <h2 class="post-row__title">
619        <a href="/articles/2010/12/04/psycopg-231-released/">Psycopg 2.3.1 released</a>
620      </h2>
621      <div class="post-row__byline">
622        <span class="post-row__author">Daniele Varrazzo</span>
623        <time class="post-row__date" datetime="2010-12-04">04 Dec 2010</time>
624      </div>
625    </article>
626    
627    <article class="post-row">
628      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/recipe/">recipe</a><a class="post-tag" href="/articles/tag/async/">async</a><a class="post-tag" href="/articles/tag/eventlet/">eventlet</a><a class="post-tag" href="/articles/tag/notify/">notify</a></div>
629      <h2 class="post-row__title">
630        <a href="/articles/2010/12/01/postgresql-notifications-psycopg2-eventlet/">PostgreSQL notifications with Psycopg2 and Eventlet</a>
631      </h2>
632      <div class="post-row__byline">
633        <span class="post-row__author">Daniele Varrazzo</span>
634        <time class="post-row__date" datetime="2010-12-01">01 Dec 2010</time>
635      </div>
636    </article>
637    
638    <article class="post-row">
639      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
640      <h2 class="post-row__title">
641        <a href="/articles/2010/12/01/psycopg-230-released/">Psycopg 2.3.0 released</a>
642      </h2>
643      <div class="post-row__byline">
644        <span class="post-row__author">Federico Di Gregorio</span>
645        <time class="post-row__date" datetime="2010-12-01">01 Dec 2010</time>
646      </div>
647    </article>
648    
649    <article class="post-row">
650      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/pgday/">pgday</a></div>
651      <h2 class="post-row__title">
652        <a href="/articles/2010/11/12/psycopg-pgday-italy-2010/">Psycopg at PGDay Italy 2010</a>
653      </h2>
654      <div class="post-row__byline">
655        <span class="post-row__author">Daniele Varrazzo</span>
656        <time class="post-row__date" datetime="2010-11-12">12 Nov 2010</time>
657      </div>
658    </article>
659    
660    <article class="post-row">
661      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/recipe/">recipe</a><a class="post-tag" href="/articles/tag/os-x/">os-x</a></div>
662      <h2 class="post-row__title">
663        <a href="/articles/2010/11/11/links-about-building-psycopg-mac-os-x/">Links about building Psycopg on Mac OS X</a>
664      </h2>
665      <div class="post-row__byline">
666        <span class="post-row__author">Daniele Varrazzo</span>
667        <time class="post-row__date" datetime="2010-11-11">11 Nov 2010</time>
668      </div>
669    </article>
670    
671    <article class="post-row">
672      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a><a class="post-tag" href="/articles/tag/beta/">beta</a></div>
673      <h2 class="post-row__title">
674        <a href="/articles/2010/11/06/psycopg-230-beta1-released/">Psycopg 2.3.0-beta1 released</a>
675      </h2>
676      <div class="post-row__byline">
677        <span class="post-row__author">Daniele Varrazzo</span>
678        <time class="post-row__date" datetime="2010-11-06">06 Nov 2010</time>
679      </div>
680    </article>
681    
682    <article class="post-row">
683      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/development/">development</a></div>
684      <h2 class="post-row__title">
685        <a href="/articles/2010/11/02/new-features-upcoming-psycopg-release/">New features in the upcoming Psycopg release</a>
686      </h2>
687      <div class="post-row__byline">
688        <span class="post-row__author">Daniele Varrazzo</span>
689        <time class="post-row__date" datetime="2010-11-02">02 Nov 2010</time>
690      </div>
691    </article>
692    
693    <article class="post-row">
694      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/pgday/">pgday</a><a class="post-tag" href="/articles/tag/news/">news</a></div>
695      <h2 class="post-row__title">
696        <a href="/articles/2010/10/26/psycopg-pgday-europe/">Psycopg at PgDay Europe</a>
697      </h2>
698      <div class="post-row__byline">
699        <span class="post-row__author">Daniele Varrazzo</span>
700        <time class="post-row__date" datetime="2010-10-26">26 Oct 2010</time>
701      </div>
702    </article>
703    
704    <article class="post-row">
705      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/recipe/">recipe</a></div>
706      <h2 class="post-row__title">
707        <a href="/articles/2010/10/22/passing-connections-functions-using-decorator/">
707Passing connections to functions using a decorator</a>
708      </h2>
709      <div class="post-row__byline">
710        <span class="post-row__author">Daniele Varrazzo</span>
711        <time class="post-row__date" datetime="2010-10-22">22 Oct 2010</time>
712      </div>
713    </article>
714    
715    <article class="post-row">
716      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
717      <h2 class="post-row__title">
718        <a href="/articles/2010/07/18/psycopg-222-released/">Psycopg 2.2.2 released</a>
719      </h2>
720      <div class="post-row__byline">
721        <span class="post-row__author">Federico Di Gregorio</span>
722        <time class="post-row__date" datetime="2010-07-18">18 Jul 2010</time>
723      </div>
724    </article>
725    
726    <article class="post-row">
727      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
728      <h2 class="post-row__title">
729        <a href="/articles/2010/05/17/psycopg-221-released/">Psycopg 2.2.1 released</a>
730      </h2>
731      <div class="post-row__byline">
732        <span class="post-row__author">Federico Di Gregorio</span>
733        <time class="post-row__date" datetime="2010-05-17">17 May 2010</time>
734      </div>
735    </article>
736    
737    <article class="post-row">
738      <div class="post-row__tags"><a class="post-tag" href="/articles/tag/news/">news</a><a class="post-tag" href="/articles/tag/release/">release</a></div>
739      <h2 class="post-row__title">
740        <a href="/articles/2010/05/16/psycopg-220-released/">Psycopg 2.2.0 released</a>
741      </h2>
742      <div class="post-row__byline">
743        <span class="post-row__author">Federico Di Gregorio</span>
744        <time class="post-row__date" datetime="2010-05-16">16 May 2010</time>
745      </div>
746    </article>
747    
748  </div>
749  <div class="articles-pagination" id="blog-pagination"></div>
750</div>
751<script>
752(function () {
753  var PER_PAGE = 10;
754  var rows = document.querySelectorAll('#blog-articles .post-row');
755  var total = rows.length;
756  var pages = Math.ceil(total / PER_PAGE);
757  if (pages <= 1) return;
758
759  var current = 1;
760
761  function show(page) {
762    current = page;
763    var start = (page - 1) * PER_PAGE;
764    rows.forEach(function (row, i) {
765      var visible = i >= start && i < start + PER_PAGE;
766      row.style.display = visible ? '' : 'none';
767      row.style.borderTop = (visible && i === start) ? 'none' : '';
768    });
769    render();
770  }
771
772  function render() {
773    var el = document.getElementById('blog-pagination');
774    var prev = current > 1
775      ? '<a href="#" data-page="' + (current - 1) + '" class="pagination__prev"><span class="pag-arrow">&#8592;</span> prev</a>'
776      : '<span class="pagination__prev disabled"><span class="pag-arrow">&#8592;</span> prev</span>';
777    var next = current < pages
778      ? '<a href="#" data-page="' + (current + 1) + '" class="pagination__next">next <span class="pag-arrow">&#8594;</span></a>'
779      : '<span class="pagination__next disabled">next <span class="pag-arrow">&#8594;</span></span>';
780    el.innerHTML = '<div class="pagination">' + prev
781      + '<span class="pagination__info">page ' + current + ' of ' + pages + '</span>'
782      + next + '</div>';
783
784    el.querySelectorAll('[data-page]').forEach(function (a) {
785      a.addEventListener('click', function (e) {
786        e.preventDefault();
787        show(parseInt(this.dataset.page));
788        document.querySelector('.articles-page').scrollIntoView({ behavior: 'smooth' });
789      });
790    });
791  }
792
793  show(1);
794}());
795</script>
795
796
797      </main>
798    </div>
799
800    <!-- ── Footer ─────────────────────────────────────────────────── -->
801    <footer class="site-footer">
802      <div class="site-footer__inner">
803        <p class="site-footer__copy">
804          &copy; The Psycopg Team<br/>
805          Psycopg is free software released under the
806          <a href="https://www.gnu.org/licenses/lgpl-3.0.en.html" rel="noopener">GNU LGPL license</a>.
807        </p>
808        <a href="/" class="site-footer__logo" aria-label="psycopg home">
809          <img src="/img/logo.png" alt="" width="40" height="40" />
810          <span>psycopg</span>
811        </a>
812      </div>
813    </footer>
814
815    
815<script src="/js/main.js" type="module"></script>
815
816  
816<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"fd1fd7e322bb48aaab6414c3a1ead9d8","r":1,"spa":2}' crossorigin="anonymous"></script>
816
817</body>
818</html>
819

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.