Skip Menu |

This queue is for tickets about the Tk CPAN distribution.

Report information
The Basics
Id: 125665
Status: resolved
Priority: 0/
Queue: Tk

People
Owner: Nobody in particular
Requestors: CAC [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 804.034
Fixed in: (no value)



Subject: encGlue.c: deprecated functions to be removed in future perl

Message body is not shown because it is too large.

RT-Send-CC: public [...] khwilliamson.com
On Sat Jun 23 09:25:48 2018, CAC wrote: Show quoted text
> encGlue.c uses a number of deprecated functions which are to be > removed in a > future perl release. Some of these are trivial enough that I can > probably fix > them with a supported drop-in replacement from > https://perldoc.perl.org/perlapi.html#Character-classification . But > others > look more involved as they are needed by "unsafe" Tcl functions (e.g. > Tcl_UtfToUniChar, Tcl_UtfToLower, and Tcl_UtfToUpper, which lack a > parameter > for string end/length). I'm guessing those will involve replacing any > instances > they're used in with a "safe"/supported alternative. > > > Full warnings output: > > /usr/bin/clang -c -I/opt/local/include -fno-common -DPERL_DARWIN > -mmacosx-version-min=10.13 -pipe -Os -fno-strict-aliasing > -fstack-protector-strong -I/opt/local/include -DPERL_USE_SAFE_PUTENV > -arch > x86_64 -O3 -DVERSION=\"804.034\" -DXS_VERSION=\"804.034\" > "-I/opt/local/lib/perl5/5.26/darwin-thread-multi-2level/CORE" -Wall > -Wno-implicit-int -Wno-comment -Wno-unused -D__USE_FIXED_PROTOTYPES__ > objGlue.cencGlue.c:82:9: > warning: 'Perl_is_uni_alpha' is deprecated [-Wdeprecated-declarations] > return > Perl_is_uni_alpha(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/proto.h:1430:4: > note: 'Perl_is_uni_alpha' has been explicitly marked deprecated here > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/perl.h:3610:60: > note: expanded from macro '__attribute__deprecated__'# define > __attribute__deprecated__ __attribute__((deprecated)) ^encGlue.c:89:9: > warning: > 'Perl_is_uni_alnum' is deprecated [-Wdeprecated-declarations] return > Perl_is_uni_alnum(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/proto.h:1414:4: > note: 'Perl_is_uni_alnum' has been explicitly marked deprecated here > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/perl.h:3610:60: > note: expanded from macro '__attribute__deprecated__'# define > __attribute__deprecated__ __attribute__((deprecated)) ^encGlue.c:96:9: > warning: > 'Perl_is_uni_space' is deprecated [-Wdeprecated-declarations] return > Perl_is_uni_space(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/proto.h:1516:4: > note: 'Perl_is_uni_space' has been explicitly marked deprecated here > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/perl.h:3610:60: > note: expanded from macro '__attribute__deprecated__'# define > __attribute__deprecated__ __attribute__((deprecated)) > ^encGlue.c:103:9: > warning: 'Perl_is_uni_upper' is deprecated [-Wdeprecated-declarations] > return > Perl_is_uni_upper(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/proto.h:1526:4: > note: 'Perl_is_uni_upper' has been explicitly marked deprecated here > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/perl.h:3610:60: > note: expanded from macro '__attribute__deprecated__'# define > __attribute__deprecated__ __attribute__((deprecated)) > ^encGlue.c:157:11: > warning: 'Perl_utf8_to_uvchr' is deprecated [-Wdeprecated- > declarations] *chPtr > = utf8_to_uv((U8 *)src,&len); ^encGlue.c:31:20: note: expanded from > macro > 'utf8_to_uv'#define utf8_to_uv utf8_to_uvchr > ^/opt/local/lib/perl5/5.26/darwin-thread-multi- > 2level/CORE/embed.h:746:28: > note: expanded from macro 'utf8_to_uvchr'#define utf8_to_uvchr(a,b) > Perl_utf8_to_uvchr(aTHX_ a,b) ^/opt/local/lib/perl5/5.26/darwin- > thread-multi-2level/CORE/proto.h:3615:4: > note: 'Perl_utf8_to_uvchr' has been explicitly marked deprecated here > __attribute__deprecated__; ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/perl.h:3610:60: > note: expanded from macro '__attribute__deprecated__'# define > __attribute__deprecated__ __attribute__((deprecated)) > ^encGlue.c:276:4: > warning: 'Perl_to_utf8_lower' is deprecated [-Wdeprecated- > declarations] > Perl_to_utf8_lower(aTHX_ s, d, &len ); > ^/opt/local/lib/perl5/5.26/darwin-thread-multi- > 2level/CORE/proto.h:3532:4: > note: 'Perl_to_utf8_lower' has been explicitly marked deprecated here > __attribute__deprecated__; ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/perl.h:3610:60: > note: expanded from macro '__attribute__deprecated__'# define > __attribute__deprecated__ __attribute__((deprecated)) > ^encGlue.c:293:4: > warning: 'Perl_to_utf8_upper' is deprecated [-Wdeprecated- > declarations] > Perl_to_utf8_upper(aTHX_ s, d, &len ); > ^/opt/local/lib/perl5/5.26/darwin-thread-multi- > 2level/CORE/proto.h:3546:4: > note: 'Perl_to_utf8_upper' has been explicitly marked deprecated here > __attribute__deprecated__; ^/opt/local/lib/perl5/5.26/darwin-thread- > multi-2level/CORE/perl.h:3610:60: > note: expanded from macro '__attribute__deprecated__'# define > __attribute__deprecated__ __attribute__((deprecated)) ^
These functions have been removed from the development branch of Perl 5 (5.29.) and so will no longer appear in the production version 5.30.0. As a consequence, we are getting failures when testing Tk against Perl 5 blead. Please see discussion in https://rt.perl.org/Ticket/Display.html?id=133347. Thank you very much. Jim Keenan
On 2018-07-08 08:24:44, JKEENAN wrote: Show quoted text
> On Sat Jun 23 09:25:48 2018, CAC wrote:
> > encGlue.c uses a number of deprecated functions which are to be > > removed in a > > future perl release. Some of these are trivial enough that I can > > probably fix > > them with a supported drop-in replacement from > > https://perldoc.perl.org/perlapi.html#Character-classification . But > > others > > look more involved as they are needed by "unsafe" Tcl functions (e.g. > > Tcl_UtfToUniChar, Tcl_UtfToLower, and Tcl_UtfToUpper, which lack a > > parameter > > for string end/length). I'm guessing those will involve replacing any > > instances > > they're used in with a "safe"/supported alternative. > > > > > > Full warnings output: > > > > /usr/bin/clang -c -I/opt/local/include -fno-common -DPERL_DARWIN > > -mmacosx-version-min=10.13 -pipe -Os -fno-strict-aliasing > > -fstack-protector-strong -I/opt/local/include -DPERL_USE_SAFE_PUTENV > > -arch > > x86_64 -O3 -DVERSION=\"804.034\" -DXS_VERSION=\"804.034\" > > "-I/opt/local/lib/perl5/5.26/darwin-thread-multi-2level/CORE" -Wall > > -Wno-implicit-int -Wno-comment -Wno-unused -D__USE_FIXED_PROTOTYPES__ > > objGlue.cencGlue.c:82:9: > > warning: 'Perl_is_uni_alpha' is deprecated [-Wdeprecated- > > declarations] > > return > > Perl_is_uni_alpha(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin- > > thread- > > multi-2level/CORE/proto.h:1430:4: > > note: 'Perl_is_uni_alpha' has been explicitly marked deprecated here > > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > > multi-2level/CORE/perl.h:3610:60: > > note: expanded from macro '__attribute__deprecated__'# define > > __attribute__deprecated__ __attribute__((deprecated)) > > ^encGlue.c:89:9: > > warning: > > 'Perl_is_uni_alnum' is deprecated [-Wdeprecated-declarations] return > > Perl_is_uni_alnum(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin- > > thread- > > multi-2level/CORE/proto.h:1414:4: > > note: 'Perl_is_uni_alnum' has been explicitly marked deprecated here > > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > > multi-2level/CORE/perl.h:3610:60: > > note: expanded from macro '__attribute__deprecated__'# define > > __attribute__deprecated__ __attribute__((deprecated)) > > ^encGlue.c:96:9: > > warning: > > 'Perl_is_uni_space' is deprecated [-Wdeprecated-declarations] return > > Perl_is_uni_space(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin- > > thread- > > multi-2level/CORE/proto.h:1516:4: > > note: 'Perl_is_uni_space' has been explicitly marked deprecated here > > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > > multi-2level/CORE/perl.h:3610:60: > > note: expanded from macro '__attribute__deprecated__'# define > > __attribute__deprecated__ __attribute__((deprecated)) > > ^encGlue.c:103:9: > > warning: 'Perl_is_uni_upper' is deprecated [-Wdeprecated- > > declarations] > > return > > Perl_is_uni_upper(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin- > > thread- > > multi-2level/CORE/proto.h:1526:4: > > note: 'Perl_is_uni_upper' has been explicitly marked deprecated here > > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > > multi-2level/CORE/perl.h:3610:60: > > note: expanded from macro '__attribute__deprecated__'# define > > __attribute__deprecated__ __attribute__((deprecated)) > > ^encGlue.c:157:11: > > warning: 'Perl_utf8_to_uvchr' is deprecated [-Wdeprecated- > > declarations] *chPtr > > = utf8_to_uv((U8 *)src,&len); ^encGlue.c:31:20: note: expanded from > > macro > > 'utf8_to_uv'#define utf8_to_uv utf8_to_uvchr > > ^/opt/local/lib/perl5/5.26/darwin-thread-multi- > > 2level/CORE/embed.h:746:28: > > note: expanded from macro 'utf8_to_uvchr'#define utf8_to_uvchr(a,b) > > Perl_utf8_to_uvchr(aTHX_ a,b) ^/opt/local/lib/perl5/5.26/darwin- > > thread-multi-2level/CORE/proto.h:3615:4: > > note: 'Perl_utf8_to_uvchr' has been explicitly marked deprecated here > > __attribute__deprecated__; ^/opt/local/lib/perl5/5.26/darwin-thread- > > multi-2level/CORE/perl.h:3610:60: > > note: expanded from macro '__attribute__deprecated__'# define > > __attribute__deprecated__ __attribute__((deprecated)) > > ^encGlue.c:276:4: > > warning: 'Perl_to_utf8_lower' is deprecated [-Wdeprecated- > > declarations] > > Perl_to_utf8_lower(aTHX_ s, d, &len ); > > ^/opt/local/lib/perl5/5.26/darwin-thread-multi- > > 2level/CORE/proto.h:3532:4: > > note: 'Perl_to_utf8_lower' has been explicitly marked deprecated here > > __attribute__deprecated__; ^/opt/local/lib/perl5/5.26/darwin-thread- > > multi-2level/CORE/perl.h:3610:60: > > note: expanded from macro '__attribute__deprecated__'# define > > __attribute__deprecated__ __attribute__((deprecated)) > > ^encGlue.c:293:4: > > warning: 'Perl_to_utf8_upper' is deprecated [-Wdeprecated- > > declarations] > > Perl_to_utf8_upper(aTHX_ s, d, &len ); > > ^/opt/local/lib/perl5/5.26/darwin-thread-multi- > > 2level/CORE/proto.h:3546:4: > > note: 'Perl_to_utf8_upper' has been explicitly marked deprecated here > > __attribute__deprecated__; ^/opt/local/lib/perl5/5.26/darwin-thread- > > multi-2level/CORE/perl.h:3610:60: > > note: expanded from macro '__attribute__deprecated__'# define > > __attribute__deprecated__ __attribute__((deprecated)) ^
> > These functions have been removed from the development branch of Perl > 5 (5.29.) and so will no longer appear in the production version > 5.30.0. As a consequence, we are getting failures when testing Tk > against Perl 5 blead. Please see discussion in > https://rt.perl.org/Ticket/Display.html?id=133347.
On github there's an experimental branch XXX-rt125665 with replacements for these functions. (Note that this branch may be rebased, so don't do any work on top of it)
On 2019-02-02 09:54:08, SREZIC wrote: Show quoted text
> On 2018-07-08 08:24:44, JKEENAN wrote:
> > On Sat Jun 23 09:25:48 2018, CAC wrote:
> > > encGlue.c uses a number of deprecated functions which are to be > > > removed in a > > > future perl release. Some of these are trivial enough that I can > > > probably fix > > > them with a supported drop-in replacement from > > > https://perldoc.perl.org/perlapi.html#Character-classification . > > > But > > > others > > > look more involved as they are needed by "unsafe" Tcl functions > > > (e.g. > > > Tcl_UtfToUniChar, Tcl_UtfToLower, and Tcl_UtfToUpper, which lack a > > > parameter > > > for string end/length). I'm guessing those will involve replacing > > > any > > > instances > > > they're used in with a "safe"/supported alternative. > > > > > > > > > Full warnings output: > > > > > > /usr/bin/clang -c -I/opt/local/include -fno-common -DPERL_DARWIN > > > -mmacosx-version-min=10.13 -pipe -Os -fno-strict-aliasing > > > -fstack-protector-strong -I/opt/local/include > > > -DPERL_USE_SAFE_PUTENV > > > -arch > > > x86_64 -O3 -DVERSION=\"804.034\" -DXS_VERSION=\"804.034\" > > > "-I/opt/local/lib/perl5/5.26/darwin-thread-multi-2level/CORE" -Wall > > > -Wno-implicit-int -Wno-comment -Wno-unused > > > -D__USE_FIXED_PROTOTYPES__ > > > objGlue.cencGlue.c:82:9: > > > warning: 'Perl_is_uni_alpha' is deprecated [-Wdeprecated- > > > declarations] > > > return > > > Perl_is_uni_alpha(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin- > > > thread- > > > multi-2level/CORE/proto.h:1430:4: > > > note: 'Perl_is_uni_alpha' has been explicitly marked deprecated > > > here > > > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > > > multi-2level/CORE/perl.h:3610:60: > > > note: expanded from macro '__attribute__deprecated__'# define > > > __attribute__deprecated__ __attribute__((deprecated)) > > > ^encGlue.c:89:9: > > > warning: > > > 'Perl_is_uni_alnum' is deprecated [-Wdeprecated-declarations] > > > return > > > Perl_is_uni_alnum(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin- > > > thread- > > > multi-2level/CORE/proto.h:1414:4: > > > note: 'Perl_is_uni_alnum' has been explicitly marked deprecated > > > here > > > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > > > multi-2level/CORE/perl.h:3610:60: > > > note: expanded from macro '__attribute__deprecated__'# define > > > __attribute__deprecated__ __attribute__((deprecated)) > > > ^encGlue.c:96:9: > > > warning: > > > 'Perl_is_uni_space' is deprecated [-Wdeprecated-declarations] > > > return > > > Perl_is_uni_space(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin- > > > thread- > > > multi-2level/CORE/proto.h:1516:4: > > > note: 'Perl_is_uni_space' has been explicitly marked deprecated > > > here > > > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > > > multi-2level/CORE/perl.h:3610:60: > > > note: expanded from macro '__attribute__deprecated__'# define > > > __attribute__deprecated__ __attribute__((deprecated)) > > > ^encGlue.c:103:9: > > > warning: 'Perl_is_uni_upper' is deprecated [-Wdeprecated- > > > declarations] > > > return > > > Perl_is_uni_upper(aTHX_ ch); ^/opt/local/lib/perl5/5.26/darwin- > > > thread- > > > multi-2level/CORE/proto.h:1526:4: > > > note: 'Perl_is_uni_upper' has been explicitly marked deprecated > > > here > > > __attribute__deprecated__ ^/opt/local/lib/perl5/5.26/darwin-thread- > > > multi-2level/CORE/perl.h:3610:60: > > > note: expanded from macro '__attribute__deprecated__'# define > > > __attribute__deprecated__ __attribute__((deprecated)) > > > ^encGlue.c:157:11: > > > warning: 'Perl_utf8_to_uvchr' is deprecated [-Wdeprecated- > > > declarations] *chPtr > > > = utf8_to_uv((U8 *)src,&len); ^encGlue.c:31:20: note: expanded from > > > macro > > > 'utf8_to_uv'#define utf8_to_uv utf8_to_uvchr > > > ^/opt/local/lib/perl5/5.26/darwin-thread-multi- > > > 2level/CORE/embed.h:746:28: > > > note: expanded from macro 'utf8_to_uvchr'#define utf8_to_uvchr(a,b) > > > Perl_utf8_to_uvchr(aTHX_ a,b) ^/opt/local/lib/perl5/5.26/darwin- > > > thread-multi-2level/CORE/proto.h:3615:4: > > > note: 'Perl_utf8_to_uvchr' has been explicitly marked deprecated > > > here > > > __attribute__deprecated__; ^/opt/local/lib/perl5/5.26/darwin- > > > thread- > > > multi-2level/CORE/perl.h:3610:60: > > > note: expanded from macro '__attribute__deprecated__'# define > > > __attribute__deprecated__ __attribute__((deprecated)) > > > ^encGlue.c:276:4: > > > warning: 'Perl_to_utf8_lower' is deprecated [-Wdeprecated- > > > declarations] > > > Perl_to_utf8_lower(aTHX_ s, d, &len ); > > > ^/opt/local/lib/perl5/5.26/darwin-thread-multi- > > > 2level/CORE/proto.h:3532:4: > > > note: 'Perl_to_utf8_lower' has been explicitly marked deprecated > > > here > > > __attribute__deprecated__; ^/opt/local/lib/perl5/5.26/darwin- > > > thread- > > > multi-2level/CORE/perl.h:3610:60: > > > note: expanded from macro '__attribute__deprecated__'# define > > > __attribute__deprecated__ __attribute__((deprecated)) > > > ^encGlue.c:293:4: > > > warning: 'Perl_to_utf8_upper' is deprecated [-Wdeprecated- > > > declarations] > > > Perl_to_utf8_upper(aTHX_ s, d, &len ); > > > ^/opt/local/lib/perl5/5.26/darwin-thread-multi- > > > 2level/CORE/proto.h:3546:4: > > > note: 'Perl_to_utf8_upper' has been explicitly marked deprecated > > > here > > > __attribute__deprecated__; ^/opt/local/lib/perl5/5.26/darwin- > > > thread- > > > multi-2level/CORE/perl.h:3610:60: > > > note: expanded from macro '__attribute__deprecated__'# define > > > __attribute__deprecated__ __attribute__((deprecated)) ^
> > > > These functions have been removed from the development branch of Perl > > 5 (5.29.) and so will no longer appear in the production version > > 5.30.0. As a consequence, we are getting failures when testing Tk > > against Perl 5 blead. Please see discussion in > > https://rt.perl.org/Ticket/Display.html?id=133347.
> > On github there's an experimental branch XXX-rt125665 with > replacements for these functions. (Note that this branch may be > rebased, so don't do any work on top of it)
Finally fixed. 804.035 is out right now.