Jeff Davis <pgsql(at)j-davis(dot)com> writes:
> My commit adds a line using the s/// operator.
Oh, independently of the empty-pattern problem: what you added is
+# Numeric major version of old cluster, ignoring "devel" suffix.
+# Needed for testing upgrades from development version to itself.
+my $old_major_version = int($oldnode->pg_version =~ s/devel//rg);
Surely this will break the moment we enter beta. Rather than
trying to fix that directly, what we should be doing is realizing
that you've reinvented -- badly -- the facilities provided by
the PostgreSQL::Version package. The code you changed,
if ($oldnode->pg_version >= 15 && $ENV{with_icu} eq 'yes')
was perfectly correct as it stood, because pg_version is a
PostgreSQL::Version object. Why did you feel a need to
editorialize on that?
regards, tom lane