On Thu, Oct 23, 2025 at 11:51 PM Michael Paquier <[email protected]> wrote:
> $subject has been mentioned by Jacob (in CC.) on Discord, and it does
> not seem like somebody took the time to propose a patch.

Ah, sorry, I put part of my first attempt at it over in [1]. But I
realize that's not very visible, nor does it address
003_ldap_connection_param_lookup.

I'm carrying a local diff that switches 003_ldap_ over to qq{} style.
Attached in case you like it, but your patch LGTM too.

> That would be up to the buildfarm to act as final judge, but any
> objections in attempting to get rid of these like in the attached?
> I would try first HEAD to be sure, then follow with an optional
> backpatch.

Sounds like a plan.

Thanks!
--Jacob

[1] 
https://postgr.es/m/CAOYmi%2BkYKPXCfiAF3xAu%2BcHYSLYEc4OC9Wsh2nebwWboNbkpeQ%40mail.gmail.com
commit aba4fc95f1a68674ce5c7c2c57e59073708bcfe3
Author: Jacob Champion <[email protected]>
Date:   Mon Oct 13 11:47:08 2025

    WIP: simplify LDAP test newlines too

diff --git a/src/test/ldap/t/003_ldap_connection_param_lookup.pl 
b/src/test/ldap/t/003_ldap_connection_param_lookup.pl
index 8c1e1caf992..abcb6d22a8b 100644
--- a/src/test/ldap/t/003_ldap_connection_param_lookup.pl
+++ b/src/test/ldap/t/003_ldap_connection_param_lookup.pl
@@ -44,31 +44,21 @@ $ldap->ldapadd_file('authdata.ldif');
 $ldap->ldapsetpw('uid=test1,dc=example,dc=net', 'secret1');
 $ldap->ldapsetpw('uid=test2,dc=example,dc=net', 'secret2');
 
-# Windows vs non-Windows: CRLF vs LF for the file's newline, relying on
-# the fact that libpq uses fgets() when reading the lines of a service file.
-my $newline = $windows_os ? "\r\n" : "\n";
-
 my $td = PostgreSQL::Test::Utils::tempdir;
 
 # create ldap file based on postgres connection info
 my $ldif_valid = "$td/connection_params.ldif";
-append_to_file($ldif_valid, "version:1");
-append_to_file($ldif_valid, $newline);
-append_to_file($ldif_valid, "dn:cn=mydatabase,dc=example,dc=net");
-append_to_file($ldif_valid, $newline);
-append_to_file($ldif_valid, "changetype:add");
-append_to_file($ldif_valid, $newline);
-append_to_file($ldif_valid, "objectclass:top");
-append_to_file($ldif_valid, $newline);
-append_to_file($ldif_valid, "objectclass:device");
-append_to_file($ldif_valid, $newline);
-append_to_file($ldif_valid, "cn:mydatabase");
-append_to_file($ldif_valid, $newline);
-append_to_file($ldif_valid, "description:host=");
-append_to_file($ldif_valid, $node->host);
-append_to_file($ldif_valid, $newline);
-append_to_file($ldif_valid, "description:port=");
-append_to_file($ldif_valid, $node->port);
+append_to_file(
+       $ldif_valid, qq{
+version:1
+dn:cn=mydatabase,dc=example,dc=net
+changetype:add
+objectclass:top
+objectclass:device
+cn:mydatabase
+description:host=} . $node->host . qq{
+description:port=} . $node->port . qq{
+});
 
 $ldap->ldapadd_file($ldif_valid);
 
@@ -86,12 +76,11 @@ note "setting up PostgreSQL instance";
 # File that includes a valid service name, that uses a decomposed
 # connection string for its contents, split on spaces.
 my $srvfile_valid = "$td/pg_service_valid.conf";
-append_to_file($srvfile_valid, "[my_srv]");
-append_to_file($srvfile_valid, $newline);
-append_to_file($srvfile_valid, "ldap://localhost:";);
-append_to_file($srvfile_valid, $ldap_port);
-append_to_file($srvfile_valid,
-       "/dc=example,dc=net?description?one?(cn=mydatabase)");
+append_to_file(
+       $srvfile_valid, qq{
+[my_srv]
+ldap://localhost:$ldap_port/dc=example,dc=net?description?one?(cn=mydatabase)
+});
 
 # File defined with no contents, used as default value for
 # PGSERVICEFILE, so that no lookup is attempted in the user's home

Reply via email to