source: trunk/docs/readme.txt @ 449

Last change on this file since 449 was 449, checked in by darcy, 7 years ago

Start 4.1 release.
Set EOL for Python and PostgreSQL versions.
Update copyrights and dates.

File size: 7.0 KB
Line 
1==========================================
2PyGreSQL - Python interface for PostgreSQL
3==========================================
4
5--------------------
6PyGreSQL version 4.1
7--------------------
8
9.. meta::
10   :description: PyGreSQL - Python interface for PostgreSQL
11   :keywords: PyGreSQL, PostGreSQL, Python
12
13.. contents:: Contents
14
15
16Copyright notice
17================
18
19Written by D'Arcy J.M. Cain (darcy@druid.net)
20
21Based heavily on code written by Pascal Andre (andre@chimay.via.ecp.fr)
22
23Copyright (c) 1995, Pascal Andre
24
25Further modifications copyright (c) 1997-2008 by D'Arcy J.M. Cain
26(darcy@PyGreSQL.org)
27
28Further modifications copyright (c) 2009-2012 by the PyGreSQL team.
29
30Permission to use, copy, modify, and distribute this software and its
31documentation for any purpose, without fee, and without a written agreement
32is hereby granted, provided that the above copyright notice and this
33paragraph and the following two paragraphs appear in all copies or in any
34new file that contains a substantial portion of this file.
35
36IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
37SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS,
38ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE
39AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
40
41THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED
42TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
43PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE
44AUTHOR HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES,
45ENHANCEMENTS, OR MODIFICATIONS.
46
47
48Introduction
49============
50
51**PostgreSQL** is a highly scalable, SQL compliant, open source
52object-relational database management system. With more than 15 years
53of development history, it is quickly becoming the de facto database
54for enterprise level open source solutions.
55Best of all, PostgreSQL's source code is available under the most liberal
56open source license: the BSD license.
57
58**Python** Python is an interpreted, interactive, object-oriented
59programming language. It is often compared to Tcl, Perl, Scheme or Java.
60Python combines remarkable power with very clear syntax. It has modules,
61classes, exceptions, very high level dynamic data types, and dynamic typing.
62There are interfaces to many system calls and libraries, as well as to
63various windowing systems (X11, Motif, Tk, Mac, MFC). New built-in modules
64are easily written in C or C++. Python is also usable as an extension
65language for applications that need a programmable interface.
66The Python implementation is copyrighted but freely usable and distributable,
67even for commercial use.
68
69**PyGreSQL** is a Python module that interfaces to a PostgreSQL database.
70It embeds the PostgreSQL query library to allow easy use of the powerful
71PostgreSQL features from a Python script.
72
73PyGreSQL is developed and tested on a NetBSD system, but it should also
74run on most other platforms where PostgreSQL and Python is running.
75It is based on the PyGres95 code written by Pascal Andre (andre@chimay.via.ecp.fr).
76D'Arcy (darcy@druid.net) renamed it to PyGreSQL starting with
77version 2.0 and serves as the "BDFL" of PyGreSQL.
78
79The current version PyGreSQL 4.1 needs PostgreSQL 8.3 and Python 2.5 or above.
80
81
82Where to get ... ?
83==================
84
85Home sites of the different packages
86------------------------------------
87**Python**:
88  http://www.python.org
89
90**PostgreSQL**:
91  http://www.postgresql.org
92
93**PyGreSQL**:
94  http://www.pygresql.org
95
96Download PyGreSQL here
97----------------------
98The **released version of the source code** is available at
99  * http://pygresql.org/files/PyGreSQL.tgz
100You can also check the latest **pre-release version** at
101  * http://pygresql.org/files/PyGreSQL-beta.tgz
102A **Linux RPM** can be picked up from
103  * http://pygresql.org/files/pygresql.i386.rpm
104A **NetBSD package** is available in their pkgsrc collection
105  * ftp://ftp.netbsd.org/pub/NetBSD/packages/pkgsrc/databases/py-postgresql/README.html
106A **FreeBSD package** is available in their ports collection
107  * http://www.freebsd.org/cgi/cvsweb.cgi/ports/databases/py-PyGreSQL/
108A **Win32 package** for various Python versions is available at
109  * http://pygresql.org/files/PyGreSQL-4.1.win32-py2.5.exe
110  * http://pygresql.org/files/PyGreSQL-4.1.win32-py2.6.exe
111  * http://pygresql.org/files/PyGreSQL-4.1.win32-py2.7.exe
112You can also find PyGreSQL on the **Python Package Index** at
113 * http://pypi.python.org/pypi/PyGreSQL/
114
115
116Distribution files
117==================
118
119========== =
120pgmodule.c the C Python module (_pg)
121pg.py      the "classic" PyGreSQL module
122pgdb.py    DB-SIG DB-API 2.0 compliant API wrapper for PygreSQL
123docs/      documentation directory
124
125           Contains: readme.txt, announce.txt, install.txt,
126           changelog.txt, future.txt, pg.txt and pgdb.txt.
127
128           All text files are in ReST format, so HTML versions
129           can be easily created with buildhtml.py from docutils.
130tutorial/  demos directory
131
132           Contains: basics.py, syscat.py, advanced.py and func.py.
133
134           The samples here have been taken from the
135           PostgreSQL manual and were used for module testing.
136           They demonstrate some PostgreSQL features.
137========== =
138
139
140Installation
141============
142You will find the installing instructions in
143`install.txt <install.html>`_.
144
145
146Information and support
147=======================
148
149For general information
150-----------------------
151**Python**:
152  http://www.python.org
153
154**PostgreSQL**:
155  http://www.postgresql.org
156
157**PyGreSQL**:
158  http://www.pygresql.org
159
160For support
161-----------
162**Python**:
163  see http://www.python.org/community/
164
165**PostgreSQL**:
166  see http://www.postgresql.org/support/
167
168**PyGreSQL**:
169  Contact the PyGreSQL mailing list
170  concerning PyGreSQL 2.0 and up.
171
172  If you would like to proposes changes, please join the
173  PyGreSQL mailing list and send context diffs there.
174
175  See https://mail.vex.net/mailman/listinfo.cgi/pygresql
176  to join the mailing list.
177
178Please note that messages to individual developers will generally not be
179answered directly.  All questions, comments and code changes must be
180submitted to the mailing list for peer review and archiving purposes.
181
182PyGreSQL programming information
183--------------------------------
184You may either choose to use the "classic" PyGreSQL interface
185provided by the `pg` module or else the newer DB-API 2.0
186compliant interface provided by the `pgdb` module.
187
188`DB-API 2.0 <http://www.python.org/dev/peps/pep-0249/>`_
189(Python Database API Specification v2.0)
190is a specification for connecting to databases (not only PostGreSQL)
191from Python that has been developed by the Python DB-SIG in 1999.
192
193The programming information is available in the files
194`pg.txt <pg.html>`_ and `pgdb.txt <pgdb.html>`_.
195
196Note that PyGreSQL is not thread-safe on the connection level. Therefore
197we recommend using `DBUtils <http://www.webwareforpython.org/DBUtils>`
198for multi-threaded environments, which supports both PyGreSQL interfaces.
199
200
201ChangeLog and Future
202====================
203The ChangeLog with past changes is in the file
204`changelog.txt <changelog.html>`_.
205
206A to do list and wish list is in the file
207`future.txt <future.html>`_.
Note: See TracBrowser for help on using the repository browser.