External Projects PostgreSQL is a complex software project, and managing the project is difficult. We have found that many enhancements to PostgreSQL can be more efficiently developed separately from the core project. To help our community with the development of their external projects, we have created PgFoundry, a website that provides hosting for PostgreSQL-related projects that are maintained outside the core PostgreSQL distribution. PgFoundry is built using the GForge software project and is similar to SourceForge.net in its feature set, providing mailing lists, forums, bug tracking, CVS, and web hosting. If you have a PostgreSQL-related open source project that you would like to have hosted at PgFoundy, please feel free to create a new project. Client Interfaces interfaces externally maintained There are only two client interfaces included in the base PostgreSQL distribution: libpq is included because it is the primary C language interface, and because many other client interfaces are built on top of it. ecpg is included because it depends on the server-side SQL grammar, and is therefore sensitive to changes in PostgreSQL itself. All other language interfaces are external projects and are distributed separately. includes a list of some of these projects. Note that some of these packages might not be released under the same license as PostgreSQL. For more information on each language interface, including licensing terms, refer to its website and documentation. Externally Maintained Client Interfaces</> <tgroup cols="4"> <thead> <row> <entry>Name</entry> <entry>Language</entry> <entry>Comments</entry> <entry>Website</entry> </row> </thead> <tbody> <row> <entry>DBD::Pg</entry> <entry>Perl</entry> <entry>Perl DBI driver</entry> <entry><ulink url="http://search.cpan.org/dist/DBD-Pg/">http://search.cpan.org/dist/DBD-Pg/</ulink></entry> </row> <row> <entry>JDBC</entry> <entry>JDBC</entry> <entry>Type 4 JDBC driver</entry> <entry><ulink url="http://jdbc.postgresql.org/">http://jdbc.postgresql.org/</ulink></entry> </row> <row> <entry>libpqxx</entry> <entry>C++</entry> <entry>New-style C++ interface</entry> <entry><ulink url="http://pqxx.org/">http://pqxx.org/</ulink></entry> </row> <row> <entry>Npgsql</entry> <entry>.NET</entry> <entry>.NET data provider</entry> <entry><ulink url="http://npgsql.projects.postgresql.org/">http://npgsql.projects.postgresql.org/</ulink></entry> </row> <row> <entry>ODBCng</entry> <entry>ODBC</entry> <entry>An alternative ODBC driver</entry> <entry><ulink url="http://projects.commandprompt.com/public/odbcng/">http://projects.commandprompt.com/public/odbcng/</ulink></entry> </row> <row> <entry>pgtclng</entry> <entry>Tcl</entry> <entry></entry> <entry><ulink url="http://pgfoundry.org/projects/pgtclng/">http://pgfoundry.org/projects/pgtclng/</ulink></entry> </row> <row> <entry>psqlODBC</entry> <entry>ODBC</entry> <entry>The most commonly-used ODBC driver</entry> <entry><ulink url="http://psqlodbc.projects.postgresql.org/">http://psqlodbc.projects.postgresql.org/</ulink></entry> </row> <row> <entry>psycopg</entry> <entry>Python</entry> <entry>DB API 2.0-compliant</entry> <entry><ulink url="http://www.initd.org/">http://www.initd.org/</ulink></entry> </row> </tbody> </tgroup> </table> </sect1> <sect1 id="external-pl"> <title>Procedural Languages procedural language externally maintained PostgreSQL includes several procedural languages with the base distribution: PL/PgSQL, PL/Tcl, PL/Perl, and PL/Python. In addition, there are a number of procedural languages that are developed and maintained outside the core PostgreSQL distribution. lists some of these packages. Note that some of these projects might not be released under the same license as PostgreSQL. For more information on each procedural language, including licensing information, refer to its website and documentation.
Externally Maintained Procedural Languages Name Language Website PL/Java Java http://pljava.projects.postgresql.org/ PL/PHP PHP http://www.commandprompt.com/community/plphp/ PL/Py Python http://python.projects.postgresql.org/ PL/R R http://www.joeconway.com/plr/ PL/Ruby Ruby http://raa.ruby-lang.org/project/pl-ruby/ PL/Scheme Scheme http://plscheme.projects.postgresql.org/ PL/sh Unix shell http://plsh.projects.postgresql.org/
Extensions extensions PostgreSQL is designed to be easily extensible. For this reason, extensions loaded into the database can function just like features that are packaged with the database. The contrib/ directory shipped with the source code contains a large number of extensions. The README file in that directory contains a summary. They include conversion tools, full-text indexing, XML tools, and additional data types and indexing methods. Other extensions are developed independently, like PostGIS. Even PostgreSQL replication solutions are developed externally. For example, Slony-I is a popular master/slave replication solution that is developed independently from the core project. There are several administration tools available for PostgreSQL. The most popular is pgAdmin III, and there are several commercially available ones as well.