Create contrib/bool_plperl to provide a bool transform for PL/Perl[U].
authorTom Lane <[email protected]>
Fri, 6 Mar 2020 22:11:23 +0000 (17:11 -0500)
committerTom Lane <[email protected]>
Fri, 6 Mar 2020 22:11:23 +0000 (17:11 -0500)
commit36058a3c55d2c42a513a53da8140b07cf0893afb
treeef9dbb478d1b64d2b500e7ccf82d4b3d02076e34
parenta6525588b7c21fd8539e9a43ec9c5c245ed1cc91
Create contrib/bool_plperl to provide a bool transform for PL/Perl[U].

plperl's default handling of bool arguments or results is not terribly
satisfactory, since Perl doesn't consider the string 'f' to be false.
Ideally we'd just fix that, but the backwards-compatibility hazard
would be substantial.  Instead, build a TRANSFORM module that can
be optionally applied to provide saner semantics.

Perhaps usefully, this is also about the minimum possible skeletal
example of a plperl transform module; so it might be a better starting
point for user-written transform modules than hstore_plperl or
jsonb_plperl.

Ivan Panchenko

Discussion: https://postgr.es/m/1583013317.881182688@f390.i.mail.ru
14 files changed:
contrib/Makefile
contrib/bool_plperl/.gitignore [new file with mode: 0644]
contrib/bool_plperl/Makefile [new file with mode: 0644]
contrib/bool_plperl/bool_plperl--1.0.sql [new file with mode: 0644]
contrib/bool_plperl/bool_plperl.c [new file with mode: 0644]
contrib/bool_plperl/bool_plperl.control [new file with mode: 0644]
contrib/bool_plperl/bool_plperlu--1.0.sql [new file with mode: 0644]
contrib/bool_plperl/bool_plperlu.control [new file with mode: 0644]
contrib/bool_plperl/expected/bool_plperl.out [new file with mode: 0644]
contrib/bool_plperl/expected/bool_plperlu.out [new file with mode: 0644]
contrib/bool_plperl/sql/bool_plperl.sql [new file with mode: 0644]
contrib/bool_plperl/sql/bool_plperlu.sql [new file with mode: 0644]
doc/src/sgml/plperl.sgml
src/tools/msvc/Mkvcbuild.pm