Thread: Re: plperl version on the meson setup summary screen
On 2024-10-17 Th 10:02 PM, Zharkov Roman wrote: > Hello, > > Would it be convinient to show the plperl version on the meson setup > summary > screen? Now it displays only 'YES' or 'NO'. This is the expected > behavior of > the meson build system and explains in its source code: > https://github.com/mesonbuild/meson/blob/5f0bd8ff1e7fc43199d4b371fc4625f80baba810/mesonbuild/dependencies/base.py#L311C15-L311C27 > > With the attached patch we can see the "perlversion" in the summary > information table. But without a beautiful console colorize. > Yeah, the lack of version number has mildly annoyed me too, so let's fix it. I haven't found the right secret sauce to make the version number appear colorized, either. Maybe some meson guru can tell us how. > Additionaly, we found out that "perlversion" gets from the perl > "api_versionstring" config variable. When the configure script parses the > "perl -v" output: > >> pgac_perl_version=`$PERL -v 2>/dev/null | sed -n 's/This is >> perl.*v[a-... > > Is this behavior correct? I think it's ok, it should give the same answer AFAIK. Using sed like this to parse the output of 'perl -v' is somewhat hacky, so the meson recipe is arguably an improvement. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Hello, On 2024-11-27 21:50, Andrew Dunstan wrote: > it should give the same answer Sometimes "version" and "api_versionstring" are different. Here are two simple examples from my windows system and from a linux system of one of my colleagues: C:\Temp>perl -MConfig -e "print \"$Config{api_versionstring}\n\"; print \"$Config{version}\n\"" 5.32.0 5.32.1 C:\Temp>perl -v This is perl 5, version 32, subversion 1 (v5.32.1) built for MSWin32-x64-multi-thread perl -MConfig -e 'print "$Config{api_versionstring}\n"; print "$Config{version}\n"' 5.38.0 5.38.2 perl -v This is perl 5, version 38, subversion 2 (v5.38.2) -- Best regards, Roman Zharkov.
Hi, On Fri, 29 Nov 2024 at 08:40, Zharkov Roman <r.zharkov@postgrespro.ru> wrote: > > Hello, > > On 2024-11-27 21:50, Andrew Dunstan wrote: > > it should give the same answer > > Sometimes "version" and "api_versionstring" are different. Here are two > simple examples from my windows system and from a linux system of one of > my colleagues: > > C:\Temp>perl -MConfig -e "print \"$Config{api_versionstring}\n\"; print > \"$Config{version}\n\"" > 5.32.0 > 5.32.1 > C:\Temp>perl -v > This is perl 5, version 32, subversion 1 (v5.32.1) built for > MSWin32-x64-multi-thread > > perl -MConfig -e 'print "$Config{api_versionstring}\n"; print > "$Config{version}\n"' > 5.38.0 > 5.38.2 > perl -v > This is perl 5, version 38, subversion 2 (v5.38.2) It is different for me too: $ perl -MConfig -e 'print "$Config{api_versionstring}\n"; print"$Config{version}\n"' 5.38.0 5.38.2 $ perl -v This is perl 5, version 38, subversion 2 (v5.38.2) On Wed, 27 Nov 2024 at 17:51, Andrew Dunstan <andrew@dunslane.net> wrote: > On 2024-10-17 Th 10:02 PM, Zharkov Roman wrote: > > With the attached patch we can see the "perlversion" in the summary > > information table. But without a beautiful console colorize. > > > Yeah, the lack of version number has mildly annoyed me too, so let's fix > it. I haven't found the right secret sauce to make the version number > appear colorized, either. Maybe some meson guru can tell us how. It seems that we can force ANSI colors: - 'plperl': [perl_dep, perlversion], + 'plperl': [perl_dep, '\033[1;36m@0@\033[0m'.format(perlversion)], But I think this is too hacky. I am not sure if that is the best way or worth it. -- Regards, Nazir Bilal Yavuz Microsoft
On 2024-11-29 Fr 3:26 AM, Nazir Bilal Yavuz wrote: > Hi, > > On Fri, 29 Nov 2024 at 08:40, Zharkov Roman <r.zharkov@postgrespro.ru> wrote: >> Hello, >> >> On 2024-11-27 21:50, Andrew Dunstan wrote: >>> it should give the same answer >> Sometimes "version" and "api_versionstring" are different. Here are two >> simple examples from my windows system and from a linux system of one of >> my colleagues: >> >> C:\Temp>perl -MConfig -e "print \"$Config{api_versionstring}\n\"; print >> \"$Config{version}\n\"" >> 5.32.0 >> 5.32.1 >> C:\Temp>perl -v >> This is perl 5, version 32, subversion 1 (v5.32.1) built for >> MSWin32-x64-multi-thread >> >> perl -MConfig -e 'print "$Config{api_versionstring}\n"; print >> "$Config{version}\n"' >> 5.38.0 >> 5.38.2 >> perl -v >> This is perl 5, version 38, subversion 2 (v5.38.2) > It is different for me too: > > $ perl -MConfig -e 'print "$Config{api_versionstring}\n"; > print"$Config{version}\n"' > 5.38.0 > 5.38.2 > $ perl -v > This is perl 5, version 38, subversion 2 (v5.38.2) > > On Wed, 27 Nov 2024 at 17:51, Andrew Dunstan <andrew@dunslane.net> wrote: >> On 2024-10-17 Th 10:02 PM, Zharkov Roman wrote: >>> With the attached patch we can see the "perlversion" in the summary >>> information table. But without a beautiful console colorize. >>> >> Yeah, the lack of version number has mildly annoyed me too, so let's fix >> it. I haven't found the right secret sauce to make the version number >> appear colorized, either. Maybe some meson guru can tell us how. > It seems that we can force ANSI colors: > > - 'plperl': [perl_dep, perlversion], > + 'plperl': [perl_dep, '\033[1;36m@0@\033[0m'.format(perlversion)], > > But I think this is too hacky. I am not sure if that is the best way > or worth it. > Yes, way too hacky. If we can't find a better way I'm good with Roman's idea in principle. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com