Re: pgsql: Replace pgindent shell script with Perl script. Update perltidy

Started by Tom Lanealmost 14 years ago5 messagescomitters
Jump to latest
#1Tom Lane
tgl@sss.pgh.pa.us

I wrote:

This version of pgindent is just about completely broken, so far as my
possibly-a-bit-hoary Perl (5.8.7) is concerned. I think it could be
made more portable without too much effort, but I am wondering what the
heck "\h" is supposed to mean in a regex?

After a bit of research I found that \h is a relatively recent
abbreviation for "[ \t]". After making that substitution, and getting
rid of the rather gratuitous use of module Readonly, the script seems
to work OK in a stock Perl 5.8.7 installation.

I'm not sure if we have any project policy for minimum required Perl
version, but I've not found that any of our other Perl scripts don't
work with 5.8. Should I commit these changes, or are you going to
tell me I need a newer Perl? And if the latter, what is our minimum
supported version going to be?

regards, tom lane

#2Andrew Dunstan
andrew@dunslane.net
In reply to: Tom Lane (#1)
Re: pgsql: Replace pgindent shell script with Perl script. Update perltidy

On 08/04/2012 03:40 PM, Tom Lane wrote:

I wrote:

This version of pgindent is just about completely broken, so far as my
possibly-a-bit-hoary Perl (5.8.7) is concerned. I think it could be
made more portable without too much effort, but I am wondering what the
heck "\h" is supposed to mean in a regex?

After a bit of research I found that \h is a relatively recent
abbreviation for "[ \t]". After making that substitution, and getting
rid of the rather gratuitous use of module Readonly, the script seems
to work OK in a stock Perl 5.8.7 installation.

I'm not sure if we have any project policy for minimum required Perl
version, but I've not found that any of our other Perl scripts don't
work with 5.8. Should I commit these changes, or are you going to
tell me I need a newer Perl? And if the latter, what is our minimum
supported version going to be?

Well, It's at least in 5.10.1 which dates from 3 years ago. I suspect
it's probably in 5.10.0 which dates from about 5 years ago. I guess this
is the danger of developing on modern systems :-) How old is the
compiler you use for everyday work?

If we keep it we should add a "require 5.10.1;" to the script.

But I don't have a great objection to replacing "\h" with "[ \t]" if
that's the preferred fix.

cheers

andrew

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Andrew Dunstan (#2)

Andrew Dunstan <andrew@dunslane.net> writes:

On 08/04/2012 03:40 PM, Tom Lane wrote:

I'm not sure if we have any project policy for minimum required Perl
version, but I've not found that any of our other Perl scripts don't
work with 5.8.

Well, It's at least in 5.10.1 which dates from 3 years ago. I suspect
it's probably in 5.10.0 which dates from about 5 years ago. I guess this
is the danger of developing on modern systems :-) How old is the
compiler you use for everyday work?

I intentionally use oldest-supported-versions of tools on my HPPA box,
to keep us honest on that front. It's running gcc 2.95.3, since you
asked, but that's not too relevant to the immediate question: what do
we consider our oldest supported version of Perl? If we decide it's
not 5.8, I'll reinstall that ... but allowing \h seems a pretty lame
excuse for ratcheting up a whole major release series.

regards, tom lane

#4Andrew Dunstan
andrew@dunslane.net
In reply to: Tom Lane (#3)
Re: pgsql: Replace pgindent shell script with Perl script. Update perltidy

On 08/04/2012 05:55 PM, Tom Lane wrote:

Andrew Dunstan <andrew@dunslane.net> writes:

On 08/04/2012 03:40 PM, Tom Lane wrote:

I'm not sure if we have any project policy for minimum required Perl
version, but I've not found that any of our other Perl scripts don't
work with 5.8.

Well, It's at least in 5.10.1 which dates from 3 years ago. I suspect
it's probably in 5.10.0 which dates from about 5 years ago. I guess this
is the danger of developing on modern systems :-) How old is the
compiler you use for everyday work?

I intentionally use oldest-supported-versions of tools on my HPPA box,
to keep us honest on that front. It's running gcc 2.95.3, since you
asked, but that's not too relevant to the immediate question: what do
we consider our oldest supported version of Perl? If we decide it's
not 5.8, I'll reinstall that ... but allowing \h seems a pretty lame
excuse for ratcheting up a whole major release series.

Sure. I think 5.8.x should be fine. 5.8.1 looks like our minimum to
build plperl:

./pl/plperl/plc_perlboot.pl:use 5.008001;

cheers

andrew

#5Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#3)
Re: pgsql: Replace pgindent shell script with Perl script. Update perltidy

On Sat, Aug 4, 2012 at 05:55:51PM -0400, Tom Lane wrote:

Andrew Dunstan <andrew@dunslane.net> writes:

On 08/04/2012 03:40 PM, Tom Lane wrote:

I'm not sure if we have any project policy for minimum required Perl
version, but I've not found that any of our other Perl scripts don't
work with 5.8.

Well, It's at least in 5.10.1 which dates from 3 years ago. I suspect
it's probably in 5.10.0 which dates from about 5 years ago. I guess this
is the danger of developing on modern systems :-) How old is the
compiler you use for everyday work?

I intentionally use oldest-supported-versions of tools on my HPPA box,
to keep us honest on that front. It's running gcc 2.95.3, since you
asked, but that's not too relevant to the immediate question: what do
we consider our oldest supported version of Perl? If we decide it's
not 5.8, I'll reinstall that ... but allowing \h seems a pretty lame
excuse for ratcheting up a whole major release series.

Tom, please make whatever changes you wish so it works for you. There
is no reason pgindent should cause a newer Perl to be required.

--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ It's impossible for everything to be true. +