pgsql: Reduce the need for frontend programs to include "postgres.h" by

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Reduce the need for frontend programs to include "postgres.h" by
Date: 2008-03-27 03:57:35
Message-ID: 20080327035735.17F917558E7@cvs.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Reduce the need for frontend programs to include "postgres.h" by refactoring
inclusions in src/include/catalog/*.h files. The main idea here is to push
function declarations for src/backend/catalog/*.c files into separate headers,
rather than sticking them into the corresponding catalog definition file as
has been done in the past. This commit only carries out that idea fully for
pg_proc, pg_type and pg_conversion, but that's enough for the moment ---
if pg_list.h ever becomes unsafe for frontend code to include, we'll need
to work a bit more.

Zdenek Kotala

Modified Files:
--------------
pgsql/src/backend/catalog:
dependency.c (r1.70 -> r1.71)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/dependency.c?r1=1.70&r2=1.71)
heap.c (r1.331 -> r1.332)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/heap.c?r1=1.331&r2=1.332)
namespace.c (r1.104 -> r1.105)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/namespace.c?r1=1.104&r2=1.105)
pg_aggregate.c (r1.91 -> r1.92)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_aggregate.c?r1=1.91&r2=1.92)
pg_conversion.c (r1.41 -> r1.42)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_conversion.c?r1=1.41&r2=1.42)
pg_proc.c (r1.150 -> r1.151)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_proc.c?r1=1.150&r2=1.151)
pg_type.c (r1.117 -> r1.118)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_type.c?r1=1.117&r2=1.118)
pgsql/src/backend/commands:
conversioncmds.c (r1.32 -> r1.33)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/conversioncmds.c?r1=1.32&r2=1.33)
functioncmds.c (r1.90 -> r1.91)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/functioncmds.c?r1=1.90&r2=1.91)
proclang.c (r1.76 -> r1.77)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/proclang.c?r1=1.76&r2=1.77)
tablecmds.c (r1.247 -> r1.248)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/tablecmds.c?r1=1.247&r2=1.248)
typecmds.c (r1.116 -> r1.117)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/typecmds.c?r1=1.116&r2=1.117)
pgsql/src/backend/parser:
keywords.c (r1.194 -> r1.195)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/keywords.c?r1=1.194&r2=1.195)
pgsql/src/backend/utils/hash:
pg_crc.c (r1.18 -> r1.19)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/hash/pg_crc.c?r1=1.18&r2=1.19)
pgsql/src/bin/pg_config:
pg_config.c (r1.27 -> r1.28)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/pg_config/pg_config.c?r1=1.27&r2=1.28)
pgsql/src/bin/pg_controldata:
pg_controldata.c (r1.37 -> r1.38)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/pg_controldata/pg_controldata.c?r1=1.37&r2=1.38)
pgsql/src/bin/pg_dump:
common.c (r1.102 -> r1.103)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/pg_dump/common.c?r1=1.102&r2=1.103)
pg_dump.c (r1.484 -> r1.485)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/pg_dump/pg_dump.c?r1=1.484&r2=1.485)
pgsql/src/bin/psql:
print.c (r1.96 -> r1.97)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/psql/print.c?r1=1.96&r2=1.97)
pgsql/src/include/catalog:
pg_aggregate.h (r1.65 -> r1.66)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_aggregate.h?r1=1.65&r2=1.66)
pg_am.h (r1.53 -> r1.54)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_am.h?r1=1.53&r2=1.54)
pg_amop.h (r1.84 -> r1.85)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_amop.h?r1=1.84&r2=1.85)
pg_amproc.h (r1.70 -> r1.71)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_amproc.h?r1=1.70&r2=1.71)
pg_attrdef.h (r1.22 -> r1.23)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_attrdef.h?r1=1.22&r2=1.23)
pg_attribute.h (r1.134 -> r1.135)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_attribute.h?r1=1.134&r2=1.135)
pg_auth_members.h (r1.4 -> r1.5)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_auth_members.h?r1=1.4&r2=1.5)
pg_authid.h (r1.7 -> r1.8)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_authid.h?r1=1.7&r2=1.8)
pg_autovacuum.h (r1.8 -> r1.9)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_autovacuum.h?r1=1.8&r2=1.9)
pg_cast.h (r1.38 -> r1.39)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_cast.h?r1=1.38&r2=1.39)
pg_class.h (r1.104 -> r1.105)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_class.h?r1=1.104&r2=1.105)
pg_constraint.h (r1.27 -> r1.28)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_constraint.h?r1=1.27&r2=1.28)
pg_conversion.h (r1.20 -> r1.21)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_conversion.h?r1=1.20&r2=1.21)
pg_database.h (r1.46 -> r1.47)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_database.h?r1=1.46&r2=1.47)
pg_depend.h (r1.9 -> r1.10)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_depend.h?r1=1.9&r2=1.10)
pg_description.h (r1.26 -> r1.27)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_description.h?r1=1.26&r2=1.27)
pg_enum.h (r1.3 -> r1.4)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_enum.h?r1=1.3&r2=1.4)
pg_index.h (r1.45 -> r1.46)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_index.h?r1=1.45&r2=1.46)
pg_inherits.h (r1.24 -> r1.25)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_inherits.h?r1=1.24&r2=1.25)
pg_language.h (r1.32 -> r1.33)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_language.h?r1=1.32&r2=1.33)
pg_largeobject.h (r1.22 -> r1.23)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_largeobject.h?r1=1.22&r2=1.23)
pg_listener.h (r1.23 -> r1.24)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_listener.h?r1=1.23&r2=1.24)
pg_namespace.h (r1.23 -> r1.24)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_namespace.h?r1=1.23&r2=1.24)
pg_opclass.h (r1.79 -> r1.80)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_opclass.h?r1=1.79&r2=1.80)
pg_operator.h (r1.157 -> r1.158)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_operator.h?r1=1.157&r2=1.158)
pg_opfamily.h (r1.7 -> r1.8)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_opfamily.h?r1=1.7&r2=1.8)
pg_pltemplate.h (r1.5 -> r1.6)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_pltemplate.h?r1=1.5&r2=1.6)
pg_proc.h (r1.484 -> r1.485)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_proc.h?r1=1.484&r2=1.485)
pg_rewrite.h (r1.29 -> r1.30)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_rewrite.h?r1=1.29&r2=1.30)
pg_shdepend.h (r1.6 -> r1.7)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_shdepend.h?r1=1.6&r2=1.7)
pg_shdescription.h (r1.5 -> r1.6)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_shdescription.h?r1=1.5&r2=1.6)
pg_statistic.h (r1.34 -> r1.35)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_statistic.h?r1=1.34&r2=1.35)
pg_tablespace.h (r1.10 -> r1.11)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_tablespace.h?r1=1.10&r2=1.11)
pg_trigger.h (r1.30 -> r1.31)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_trigger.h?r1=1.30&r2=1.31)
pg_ts_config.h (r1.3 -> r1.4)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_ts_config.h?r1=1.3&r2=1.4)
pg_ts_config_map.h (r1.3 -> r1.4)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_ts_config_map.h?r1=1.3&r2=1.4)
pg_ts_dict.h (r1.3 -> r1.4)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_ts_dict.h?r1=1.3&r2=1.4)
pg_ts_parser.h (r1.3 -> r1.4)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_ts_parser.h?r1=1.3&r2=1.4)
pg_ts_template.h (r1.4 -> r1.5)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_ts_template.h?r1=1.4&r2=1.5)
pg_type.h (r1.192 -> r1.193)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_type.h?r1=1.192&r2=1.193)
pgsql/src/include/commands:
sequence.h (r1.39 -> r1.40)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/commands/sequence.h?r1=1.39&r2=1.40)
pgsql/src/include:
pg_config_manual.h (r1.29 -> r1.30)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/pg_config_manual.h?r1=1.29&r2=1.30)
postgres.h (r1.88 -> r1.89)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/postgres.h?r1=1.88&r2=1.89)
pgsql/src/pl/plpgsql/src:
pl_comp.c (r1.122 -> r1.123)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_comp.c?r1=1.122&r2=1.123)

Added Files:
-----------
pgsql/src/include/catalog:
genbki.h (r1.1)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/genbki.h?rev=1.1&content-type=text/x-cvsweb-markup)
pg_conversion_fn.h (r1.1)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_conversion_fn.h?rev=1.1&content-type=text/x-cvsweb-markup)
pg_proc_fn.h (r1.1)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_proc_fn.h?rev=1.1&content-type=text/x-cvsweb-markup)
pg_type_fn.h (r1.1)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_type_fn.h?rev=1.1&content-type=text/x-cvsweb-markup)

Browse pgsql-committers by date

  From Date Subject
Next Message Michael Meskes 2008-03-27 07:56:02 pgsql: - Moved from PQsetdbLogin to PQconnectDB.
Previous Message User Sriggs 2008-03-26 23:32:28 snapclone - pg_snapclone: Imported Sources