Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1js28I-0005Nm-GF for pljava-dev@arkaria.postgresql.org; Sun, 05 Jul 2020 10:44:26 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1js28H-0003dw-BJ for pljava-dev@arkaria.postgresql.org; Sun, 05 Jul 2020 10:44:25 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1js28H-0003do-3n for pljava-dev@lists.postgresql.org; Sun, 05 Jul 2020 10:44:25 +0000 Received: from mail-ed1-x535.google.com ([2a00:1450:4864:20::535]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1js28E-0000We-PY for pljava-dev@lists.postgresql.org; Sun, 05 Jul 2020 10:44:24 +0000 Received: by mail-ed1-x535.google.com with SMTP id e22so32021195edq.8 for ; Sun, 05 Jul 2020 03:44:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=hqPEgYyBWevP4oTG8A0RbAPGnvxCXDUUUuyycxK+s7I=; b=Of76/flvSJ9K4065xLl0nrj5pYCB8pw+zh34yPe3oNNTv+y9u2EPM78F58D7FrvGPl c0hzfqxS/noaI3IElaCgpWaZ69HJRndXHO0NQriGH6VX6qmrPcGahEhxlz9cLVWHMB9U CjCt2c4NrrQ21wB2vXUesyFnHhkGdRixBnDzyHYo5saBAWEuCWcgPwLsorphX7NjgAJh slcpcJPg7BSJfVcRN4K2JS/Jur2Q9XbdVI/dLrtbgjAN2/iA7FZT22c/n5WEW+5m4CkT 1BaIweil1QQihLtG0qUcN+W7GtTa3j8ZarQuR949HBygIMeYX8QiREmGoALUScMSrYcB GlNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=hqPEgYyBWevP4oTG8A0RbAPGnvxCXDUUUuyycxK+s7I=; b=p95crC0r3NUw6tGdvbVub9fZlx/ERtWDY+52fhR7lauzM53v63msGjIuZiRI0Hlw1i EH8KlCBLK3/NmklNNvV49vbUO4sbfGb9hpaWYZ7/0K6IoN4W39qTjSjThj84/4JJG5Jw zphbnFI67Y7NFOl88AlE2V/DvemUVaOAaKQz7wgk/v8eeEmNXc5edOlEilT2L1lmvbVj DBA+rOu0W4fsiryxaO988Nw9EqUqQFXOQkWPBKiztEqULJ4BJyEqy3uggNPxA6kz+HyQ BtEO5MoopJmSYxd7S7hccUILjZe9r6vqWKRGw6P2KDDA4ADj42ChQl3KNw/+Ct+VK14M 0JLA== X-Gm-Message-State: AOAM5303+poNiXpOYHmGp452GuMh1R68pRSkd2je/5X19ftfe2ZHjpiO YT5pHhp3ACY/I4Z0jbjdAcIWPL+m7FLZRjBu4+vsTJPA X-Google-Smtp-Source: ABdhPJwUDnsT7ddfoVq4jxVXeV0NmmpsS/nKARFtI4TOq8bvByxHD0lcfpFqKuNJZtSleZ1IsoLOaIDTm/rhckBXqnQ= X-Received: by 2002:a05:6402:1a54:: with SMTP id bf20mr49239101edb.69.1593945859764; Sun, 05 Jul 2020 03:44:19 -0700 (PDT) MIME-Version: 1.0 References: <5EF7B265.3060907@anastigmatix.net> <5EFA6C22.8060006@anastigmatix.net> <5EFC18D9.3090108@anastigmatix.net> <5EFD41B1.30009@anastigmatix.net> <5EFE0A4D.8060402@anastigmatix.net> <5F0125BC.5000609@anastigmatix.net> <5F0172D7.3000708@anastigmatix.net> In-Reply-To: <5F0172D7.3000708@anastigmatix.net> From: Kartik Ohri Date: Sun, 5 Jul 2020 16:14:08 +0530 Message-ID: Subject: Re: PL/Java new build plugin To: Chapman Flack Cc: pljava-dev@lists.postgresql.org Content-Type: multipart/alternative; boundary="000000000000c3358705a9af70d5" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --000000000000c3358705a9af70d5 Content-Type: text/plain; charset="UTF-8" > > DOTALL is the long name of one of those flags (s); the other one (i) is > CASE_INSENSITIVE. Am I missing where they are being set? I saw I had not committed the change. I'll fix it in the next commit. > Oh, I think I see where that probably is. For some reason, while the > 'replacement' string in the underlying java.util.regex methods uses > $1, $2, etc., to refer to captured groups, just to keep things interesting > the 'replace' attribute in an ant containsregex element uses \1, \2 > instead. I bet if you ran the output through od or the like, you would see > that the two empty boxes are the byte values 001 and 002, which are what \1 > and \2 in a Java string literal represent. > Thanks. This fixed the issue. > Have you written out the assumptions that must be true of pg_config's > output, for parsing it into the separate properties to be reliable? > The only assumption I make is that pg_config prints each variable separated by the system's file separator. I have deleted the ant-run code generating the pgsql.properties file and read the pgxs.properties file generated by PL/Java PGXS plugin. I have set up the branch with CI and have observed that this is working for Linux and macOS but failing for Windows. I will try to debug why this fails for Windows. --000000000000c3358705a9af70d5 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
DOTALL is the long name of one of those flags (s); the o= ther one (i) is
CASE_INSENSITIVE. Am I missing where they are being set?
= =C2=A0I saw I had not committed=C2=A0the change. I'll fix it in the nex= t commit.
Oh, I think I see where that probably is. For some reason, while the
'replacement' string in the underlying java.util.regex methods uses=
$1, $2, etc., to refer to captured groups, just to keep things interesting<= br> the 'replace' attribute in an ant containsregex element uses \1, \2=
instead. I bet if you ran the output through od or the like, you would see<= br> that the two empty boxes are the byte values 001 and 002, which are what \1=
and \2 in a Java string literal represent.
=C2=A0Thank= s. This fixed the issue.
Have you written out the assumptions that must be true of pg_config= 9;s
output, for parsing it into the separate properties to be reliable?
=C2=A0The only assumption I make is that pg_config prints eac= h variable separated by the system's file separator.=C2=A0
I have deleted the ant-run code generating the pgsql.propertie= s file and read the pgxs.properties file generated by PL/Java PGXS plugin. = I have set up the branch with CI and have observed that this is working for= Linux and macOS but failing for Windows. I will try to debug why this fail= s for Windows.
--000000000000c3358705a9af70d5--