Skip Menu |
Report information
Id: 79538
Status: rejected
Priority: 0/
Queue: perl5

Owner: jkeenan <jkeenan [at] cpan.org>
Requestors: jdhedden [at] cpan.org
Cc:
AdminCc:

Operating System: (no value)
PatchStatus: (no value)
Severity: low
Type:
Perl Version: (no value)
Fixed In: (no value)

Attachments
0001-Add-capability-to-exclude-non-XS-extensions.patch



Subject: [PATCH] Add capability to exclude non-XS extensions
Date: Sun, 21 Nov 2010 18:18:21 -0500
To: perlbug [...] perl.org
From: "Jerry D. Hedden" <jdhedden [...] cpan.org>
Download (untitled) / with headers
text/plain 4.9k
This is a bug report for perl from jdhedden[at]cpan[dot]org, generated with the help of perlbug 1.39 running under perl 5.12.2. ----------------------------------------------------------------- [Please describe your issue here] In order to save time building and testing Perl, I use the -Dnoextensions=... option in Configure to exclude over a dozen XS extensions when building Perl. These include extensions I don't need (e.g., Sys/Syslog), don't want (e.g., Text/Soundex) or that aren't supported on my current architecture (e.g., IPC/SysV). I wanted the same exclusion capability for non-XS extensions so I created the attached patch. It allows both the -Dnoextensions=... and -Donlyextensions=... options in Configure to work for XS as well as non-XS extensions. Using this patch, I now exclude over 50 non-XS modules from my Perl builds. This gains me a 25% (5.12.x) to 35% (blead) reduction in the time needed to build, test and install Perl. (In blead, for example, from 4 hrs. down to 2.5). [Please do not change anything below this line] ----------------------------------------------------------------- --- Flags: category=core severity=wishlist --- Site configuration information for perl 5.12.2: Configured by Jerry at Wed Nov 17 22:26:32 EST 2010. Summary of my perl5 (revision 5 version 12 subversion 2 patch 42531) configuration: Snapshot of: 7a3b65c9d99f69553fffe01f73d49fe9abf95120 Platform: osname=cygwin, osvers=1.5.25(0.15642), archname=cygwin-thread-multi-64int uname='cygwin_nt-5.1 seymour 1.5.25(0.15642) 2008-06-12 19:34 i686 cygwin ' config_args='-de -Duse64bitint -Dusethreads -Dinc_version_list=none -Dnoextensions=Devel/DProf Devel/Peek Filter/Util/Call GDBM_File Hash/Util/FieldHash I18N/Langinfo IPC/SysV Math/BigInt/FastCalc NDBM_File ODBM_File Sys/Syslog Text/Soundex Time/Piece Unicode/Normalize attrs re Archive/Extract Archive/Tar Attribute/Handlers B/Debug B/Lint Class/ISA CGI CPANPLUS CPANPLUS/Dist/Build Devel/SelfStubber Digest File/Fetch FileCache Filter/Simple I18N/LangTags IO/Zlib IPC/Cmd IPC/Open2 Locale/Codes Locale/Maketext Locale/Maketext/Simple Log/Message Log/Message/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Pluggable NEXT Object/Accessor Package/Constants Params/Check Parse/CPAN/Meta PerlIO/via/QuotedPrint Pod/Html Pod/LaTeX Pod/Plainer SelfLoader Switch Term/UI Text/Balanced Tie/File Tie/Memoize Unicode/Collate autodie autouse bignum encoding/warnings -A append:ccflags= -DNO_MATHOMS -A define:optimize=-Os -pipe -funit-at-a-time -march=pentium4 -mfpmath=sse -mieee-fp -mmmx -msse -msse2' hint=recommended, useposix=true, d_sigaction=define useithreads=define, usemultiplicity=define useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef use64bitint=define, use64bitall=undef, uselongdouble=undef usemymalloc=y, bincompat5005=undef Compiler: cc='gcc', ccflags ='-DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -DNO_MATHOMS -fno-strict-aliasing -pipe', optimize='-Os -pipe -funit-at-a-time -march=pentium4 -mfpmath=sse -mieee-fp -mmmx -msse -msse2', cppflags='-DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -DNO_MATHOMS -fno-strict-aliasing -pipe' ccversion='', gccversion='3.4.4 (cygming special, gdc 0.12, using dmd 0.125)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='g++', ldflags =' -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--stack,8388608 -Wl,--enable-auto-image-base -s' libpth=/usr/lib /lib libs=-lgdbm -ldl -lcrypt -lgdbm_compat perllibs=-ldl -lcrypt libc=/usr/lib/libc.a, so=dll, useshrplib=true, libperl=cygperl5_12_2.dll gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' -s' cccdlflags=' ', lddlflags=' --shared -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--stack,8388608 -Wl,--enable-auto-image-base -s' Locally applied patches: --- @INC for perl 5.12.2: /usr/lib/perl5/site_perl/5.12.2/cygwin /usr/lib/perl5/site_perl/5.12.2 /usr/lib/perl5/5.12.2/cygwin /usr/lib/perl5/5.12.2 . --- Environment for perl 5.12.2: CYGWIN=ntsec HOME=/home/Jerry LANG=C LANGUAGE=C LC_ALL=C LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/home/Jerry/bin:/usr/local/src/perl/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/c/Dev-Cpp/bin/:/c/WINDOWS/system32:/c/WINDOWS:/c/WINDOWS/System32/Wbem:/c/Program Files/ATI Technologies/ATI Control Panel:/c/PROGRA~1/COMMON~1/SONICS~1:/c/Program Files/QuickTime/QTSystem/:/c/Program Files/ATI Technologies/ATI.ACE/Core-Static:/c/WINDOWS/system32/WindowsPowerShell/v1.0:/c/WINDOWS/system32/WindowsPowerShell/v1.0:. PERLIO=perlio PERL_BADLANG (unset) SHELL (unset)

Message body is not shown because sender requested not to inline it.

Subject: Re: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Sun, 21 Nov 2010 19:21:44 -0500
To: perl5-porters [...] perl.org
From: Jesse Vincent <jesse [...] fsck.com>
Download (untitled) / with headers
text/plain 904b
On Sun, Nov 21, 2010 at 03:19:21PM -0800, Jerry D. Hedden wrote: Show quoted text
> In order to save time building and testing Perl, I use the > -Dnoextensions=... option in Configure to exclude over a > dozen XS extensions when building Perl. These include > extensions I don't need (e.g., Sys/Syslog), don't want > (e.g., Text/Soundex) or that aren't supported on my current > architecture (e.g., IPC/SysV). > > Using this patch, I now exclude over 50 non-XS modules from > my Perl builds. This gains me a 25% (5.12.x) to 35% (blead) > reduction in the time needed to build, test and install > Perl. (In blead, for example, from 4 hrs. down to 2.5).
Hi Jerry, As I mentioned on Thursday, I'd prefer that we not end up with this functionality as something used by/for porters. Similarly, the additional conditionalization of the test suite makes me somewhat uncomfortable for the same reasons. Best, -Jesse
CC: perl5-porters [...] perl.org
Subject: Re: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Sun, 21 Nov 2010 19:55:48 -0500
To: Jesse Vincent <jesse [...] fsck.com>
From: "Jerry D. Hedden" <jdhedden [...] cpan.org>
Download (untitled) / with headers
text/plain 1.7k
The consensus seems to be in favor of this patch. You're argument about conditionalizing the test suite is quite moot as that is the standard and not the exception. If excluding modules is not to be allowed, then should we remove the -Dnoextensions=... and -Donlyextensions=... options to Configure? (That's a rhetorical question. The answer, of course, is 'Hell, no'.) The most fundamental philosophy of Perl it the capability to 'roll your own', and there is nothing in the current architecture that is sacrosanct to modification and flexibility. Yes, coding up tests correctly to account for modules not being present can be a pain, but doing otherwise, IMHO, is a bug. I've dealt with that for years with the modules I've supported, and I don't think it would be appropriate to reverse that mentality. On Sun, Nov 21, 2010 at 19:21, Jesse Vincent <jesse@fsck.com> wrote: Show quoted text
> On Sun, Nov 21, 2010 at 03:19:21PM -0800, Jerry D. Hedden wrote:
>> In order to save time building and testing Perl, I use the >> -Dnoextensions=... option in Configure to exclude over a >> dozen XS extensions when building Perl.  These include >> extensions I don't need (e.g., Sys/Syslog), don't want >> (e.g., Text/Soundex) or that aren't supported on my current >> architecture (e.g., IPC/SysV). >> >> Using this patch, I now exclude over 50 non-XS modules from >> my Perl builds.  This gains me a 25% (5.12.x) to 35% (blead) >> reduction in the time needed to build, test and install >> Perl.  (In blead, for example, from 4 hrs. down to 2.5).
> > Hi Jerry, > > As I mentioned on Thursday, I'd prefer that we not end up with this > functionality as something used by/for porters.  Similarly, the > additional conditionalization of the test suite makes me somewhat > uncomfortable for the same reasons. > > Best, > -Jesse
CC: Jesse Vincent <jesse [...] fsck.com>, perl5-porters [...] perl.org
Subject: Re: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Mon, 22 Nov 2010 08:59:22 +0100
To: "Jerry D. Hedden" <jdhedden [...] cpan.org>
From: andreas.koenig.7os6VVqR [...] franz.ak.mind.de (Andreas J. Koenig)
Show quoted text
>>>>> On Sun, 21 Nov 2010 19:55:48 -0500, "Jerry D. Hedden" <jdhedden@cpan.org> said:
Show quoted text
> The consensus seems to be in favor of this patch. You're argument > about conditionalizing the test suite is quite moot as that is the standard > and not the exception. If excluding modules is not to be allowed, then > should we remove the -Dnoextensions=... and -Donlyextensions=... > options to Configure? (That's a rhetorical question. The answer, of > course, is 'Hell, no'.)
Show quoted text
> The most fundamental philosophy of Perl it the capability to 'roll your > own', and there is nothing in the current architecture that is sacrosanct > to modification and flexibility.
Show quoted text
> Yes, coding up tests correctly to account for modules not being > present can be a pain, but doing otherwise, IMHO, is a bug. I've dealt > with that for years with the modules I've supported, and I don't think > it would be appropriate to reverse that mentality.
+1 # like @cpantesters: testers invent their personal testbed -- andreas
Subject: Re: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Mon, 22 Nov 2010 09:01:08 +0100
To: perl5-porters [...] perl.org
From: "H.Merijn Brand" <h.m.brand [...] xs4all.nl>
Download (untitled) / with headers
text/plain 2.2k
On Sun, 21 Nov 2010 15:19:21 -0800, "Jerry D. Hedden" (via RT) <perlbug-followup@perl.org> wrote: Show quoted text
> In order to save time building and testing Perl, I use the > -Dnoextensions=... option in Configure to exclude over a > dozen XS extensions when building Perl. These include > extensions I don't need (e.g., Sys/Syslog), don't want > (e.g., Text/Soundex) or that aren't supported on my current > architecture (e.g., IPC/SysV).
Not-supported by the system/OS/architecture seems like a good reason to exclude the module from the start. If tests are well written, they will be skipped anyway in the harness suite. OTOH I don't think that excluding default modules from the CORE, in whatever way, should be supported in Configure for speeding up the build and tests. As Nicholas already mentioned. I also see that these two statements have a conflicting overlap. It is up to the boss(es) to take a decision. Show quoted text
> I wanted the same exclusion capability for non-XS extensions > so I created the attached patch. It allows both the > -Dnoextensions=... and -Donlyextensions=... options in > Configure to work for XS as well as non-XS extensions. > > Using this patch, I now exclude over 50 non-XS modules from > my Perl builds. This gains me a 25% (5.12.x) to 35% (blead) > reduction in the time needed to build, test and install > Perl. (In blead, for example, from 4 hrs. down to 2.5).
There is another way to do this. If you run Configure, it will see if config.arch exists and run it if present: --8<--- : configuration may be unconditionally patched via a 'config.arch' file if $test -f config.arch; then echo "I see a config.arch file, loading it." >&4 . ./config.arch fi -->8--- So, if you create one of your own, and put it in the build folder just before you run Configure, you can write a shell script (config.arch should be plain sh) that modifies $extensions to exclude the ones you do not want. YMMV -- H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/ using 5.00307 through 5.12 and porting perl5.13.x on HP-UX 10.20, 11.00, 11.11, 11.23 and 11.31, OpenSuSE 10.1, 11.0 .. 11.3 and AIX 5.2 and 5.3. http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/ http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/
CC: perl5-porters [...] perl.org
Subject: Re: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Mon, 22 Nov 2010 13:40:31 +0100
To: "H.Merijn Brand" <h.m.brand [...] xs4all.nl>
From: demerphq <demerphq [...] gmail.com>
Download (untitled) / with headers
text/plain 1.5k
On 22 November 2010 09:01, H.Merijn Brand <h.m.brand@xs4all.nl> wrote: Show quoted text
> On Sun, 21 Nov 2010 15:19:21 -0800, "Jerry D. Hedden" (via RT) > <perlbug-followup@perl.org> wrote: >
>> In order to save time building and testing Perl, I use the >> -Dnoextensions=... option in Configure to exclude over a >> dozen XS extensions when building Perl.  These include >> extensions I don't need (e.g., Sys/Syslog), don't want >> (e.g., Text/Soundex) or that aren't supported on my current >> architecture (e.g., IPC/SysV).
> > Not-supported by the system/OS/architecture seems like a good reason to > exclude the module from the start. If tests are well written, they will > be skipped anyway in the harness suite. > > OTOH I don't think that excluding default modules from the CORE, in > whatever way, should be supported in Configure for speeding up the > build and tests. As Nicholas already mentioned.
I dont entirely agree. And we have precedent. When I was working on the regex engine it become extremely irritating to have to rebuild every extension so often. I hacked the make file to make a minimal target which rebuilt the regex engine only, with no other modules. Its been in-core for years now. I dont think its unreasonable to want to do this /in this way/. That is, i think it would be ok to have a make homebrew mkae homebrew test or something which did a reduced build cycle, so long as the normal make/make test and configure behaviour stays the same. And actually Jerry could use git rerere to set up alocal makefile patch that created such a target based on the make reonly and make test-reonly targets. Yves
CC: <perl5-porters [...] perl.org>
Subject: RE: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Mon, 22 Nov 2010 15:34:18 -0800
To: "'demerphq'" <demerphq [...] gmail.com>, "'H.Merijn Brand'" <h.m.brand [...] xs4all.nl>
From: "Jan Dubois" <jand [...] activestate.com>
Download (untitled) / with headers
text/plain 1.5k
On Mon, 22 Nov 2010, demerphq wrote: Show quoted text
> On 22 November 2010 09:01, H.Merijn Brand <h.m.brand@xs4all.nl> wrote:
> > On Sun, 21 Nov 2010 15:19:21 -0800, "Jerry D. Hedden" (via RT) > > <perlbug-followup@perl.org> wrote: > >
> >> In order to save time building and testing Perl, I use the > >> -Dnoextensions=... option in Configure to exclude over a > >> dozen XS extensions when building Perl.  These include > >> extensions I don't need (e.g., Sys/Syslog), don't want > >> (e.g., Text/Soundex) or that aren't supported on my current > >> architecture (e.g., IPC/SysV).
> > > > Not-supported by the system/OS/architecture seems like a good reason to > > exclude the module from the start. If tests are well written, they will > > be skipped anyway in the harness suite. > > > > OTOH I don't think that excluding default modules from the CORE, in > > whatever way, should be supported in Configure for speeding up the > > build and tests. As Nicholas already mentioned.
> > I dont entirely agree. And we have precedent. When I was working on > the regex engine it become extremely irritating to have to rebuild > every extension so often.
Not building all the extensions also helps with bisecting (even though a Configure based mechanism alone won't help on Windows, which needs help the most). [...] Show quoted text
> And actually Jerry could use git rerere to set up alocal makefile > patch that created such a target based on the make reonly and make > test-reonly targets.
Would you mind adding some tutorial-style docs for this approach to the bisecting sample in perlrepository.pod? Cheers, -Jan
CC: "'demerphq'" <demerphq [...] gmail.com>, "'H.Merijn Brand'" <h.m.brand [...] xs4all.nl>, Perl Porters <perl5-porters [...] perl.org>
Subject: RE: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Tue, 23 Nov 2010 10:36:16 -0500 (EST)
To: Jan Dubois <jand [...] activestate.com>
From: Andy Dougherty <doughera [...] lafayette.edu>
Download (untitled) / with headers
text/plain 1.6k
On Mon, 22 Nov 2010, Jan Dubois wrote: Show quoted text
> On Mon, 22 Nov 2010, demerphq wrote:
> > On 22 November 2010 09:01, H.Merijn Brand <h.m.brand@xs4all.nl> wrote:
> > > On Sun, 21 Nov 2010 15:19:21 -0800, "Jerry D. Hedden" (via RT) > > > <perlbug-followup@perl.org> wrote: > > >
> > >> In order to save time building and testing Perl, I use the > > >> -Dnoextensions=... option in Configure to exclude over a > > >> dozen XS extensions when building Perl.  These include > > >> extensions I don't need (e.g., Sys/Syslog), don't want > > >> (e.g., Text/Soundex) or that aren't supported on my current > > >> architecture (e.g., IPC/SysV).
Show quoted text
> Not building all the extensions also helps with bisecting (even though > a Configure based mechanism alone won't help on Windows, which needs > help the most).
On balance, I'm in favor of this extension to an existing command-line option. For a variety of reasons, there are times when you definitely want Configure to hand you more rope. Equally emphatically, however, I don't think any compensating changes to the test suite are appropriate at this time. If I deliberately exclude an extension that "we" expect to be there, then I must live with the consequences. If I go out of my way to build a broken perl, I expect the test suite to fail. Incidentally, as H.Merijn has pointed out, you can already do this with an override file. Simply assign the list of extensions you actually want in a file 'config.over' and Configure will automatically read it in at the very end. (Or, you could put code in config.over to weed out the extensions you don't want.) -- Andy Dougherty doughera@lafayette.edu
CC: Jesse Vincent <jesse [...] fsck.com>, perl5-porters [...] perl.org
Subject: Re: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Tue, 23 Nov 2010 16:07:29 +0000
To: "Jerry D. Hedden" <jdhedden [...] cpan.org>
From: Nicholas Clark <nick [...] ccl4.org>
Download (untitled) / with headers
text/plain 254b
On Sun, Nov 21, 2010 at 07:55:48PM -0500, Jerry D. Hedden wrote: Show quoted text
> The consensus seems to be in favor of this patch. You're argument
What consensus? There was very little comment. I think that you're being premature in using the term. Nicholas Clark
Subject: Re: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Tue, 23 Nov 2010 11:32:02 -0500
To: "Jerry D. Hedden" <jdhedden [...] cpan.org>, Jesse Vincent <jesse [...] fsck.com>, perl5-porters [...] perl.org
From: "Jerry D. Hedden" <jdhedden [...] cpan.org>
Download (untitled) / with headers
text/plain 409b
On Tue, Nov 23, 2010 at 11:07, Nicholas Clark <nick@ccl4.org> wrote: Show quoted text
> On Sun, Nov 21, 2010 at 07:55:48PM -0500, Jerry D. Hedden wrote:
>> The consensus seems to be in favor of this patch.  You're argument
> > What consensus? There was very little comment. > I think that you're being premature in using the term. > > Nicholas Clark >
Agreed. It was premature. However, there are some that are in favor.
RT-Send-CC: perl5-porters [...] perl.org, perl.p5p [...] rjbs.manxome.org
Download (untitled) / with headers
text/plain 1.4k
On Tue Nov 23 07:36:50 2010, doughera wrote: Show quoted text
> On Mon, 22 Nov 2010, Jan Dubois wrote: >
> > On Mon, 22 Nov 2010, demerphq wrote:
> > > On 22 November 2010 09:01, H.Merijn Brand <h.m.brand@xs4all.nl> wrote:
> > > > On Sun, 21 Nov 2010 15:19:21 -0800, "Jerry D. Hedden" (via RT) > > > > <perlbug-followup@perl.org> wrote: > > > >
> > > >> In order to save time building and testing Perl, I use the > > > >> -Dnoextensions=... option in Configure to exclude over a > > > >> dozen XS extensions when building Perl. �These include > > > >> extensions I don't need (e.g., Sys/Syslog), don't want > > > >> (e.g., Text/Soundex) or that aren't supported on my current > > > >> architecture (e.g., IPC/SysV).
>
> > Not building all the extensions also helps with bisecting (even though > > a Configure based mechanism alone won't help on Windows, which needs > > help the most).
> > On balance, I'm in favor of this extension to an existing command-line > option. For a variety of reasons, there are times when you definitely > want Configure to hand you more rope. > > Equally emphatically, however, I don't think any compensating changes to > the test suite are appropriate at this time. If I deliberately exclude > an extension that "we" expect to be there, then I must live with the > consequences. If I go out of my way to build a broken perl, I expect > the test suite to fail.
I’m in favour of this patch, as long as we don’t modify the test suite to accommodate broken builds. -- Father Chrysostomos
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 2.1k
On Fri Jan 06 23:46:45 2012, sprout wrote: Show quoted text
> On Tue Nov 23 07:36:50 2010, doughera wrote:
> > On Mon, 22 Nov 2010, Jan Dubois wrote: > >
> > > On Mon, 22 Nov 2010, demerphq wrote:
> > > > On 22 November 2010 09:01, H.Merijn Brand <h.m.brand@xs4all.nl>
wrote: Show quoted text
> > > > > On Sun, 21 Nov 2010 15:19:21 -0800, "Jerry D. Hedden" (via RT) > > > > > <perlbug-followup@perl.org> wrote: > > > > >
> > > > >> In order to save time building and testing Perl, I use the > > > > >> -Dnoextensions=... option in Configure to exclude over a > > > > >> dozen XS extensions when building Perl. �These include > > > > >> extensions I don't need (e.g., Sys/Syslog), don't want > > > > >> (e.g., Text/Soundex) or that aren't supported on my current > > > > >> architecture (e.g., IPC/SysV).
> >
> > > Not building all the extensions also helps with bisecting (even though > > > a Configure based mechanism alone won't help on Windows, which needs > > > help the most).
> > > > On balance, I'm in favor of this extension to an existing command-line > > option. For a variety of reasons, there are times when you definitely > > want Configure to hand you more rope. > > > > Equally emphatically, however, I don't think any compensating
changes to Show quoted text
> > the test suite are appropriate at this time. If I deliberately exclude > > an extension that "we" expect to be there, then I must live with the > > consequences. If I go out of my way to build a broken perl, I expect > > the test suite to fail.
> > I’m in favour of this patch, as long as we don’t modify the test suite > to accommodate broken builds. > >
A patch to permit exclusion of non-XS extensions was originally submitted by Jerry Hedden in Nov 2010. Jesse Vincent was skeptical. Others were more favorably inclined. Both Andy Dougherty and Father C. spoke in favor provided we don't spend time modifying the test suite to accommodate such an exclusion. I suspect that if we were to adopt this patch, the maintenance burden would fall on the Configure maintainers. I also suspect that the patch is old enough that it wouldn't apply cleanly, though I haven't tested that. Do we want to move forward with this? Thank you very much. Jim Keenan
CC: perl5-porters [...] perl.org
Subject: Re: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Date: Fri, 13 Sep 2013 13:37:40 +0100
To: James E Keenan via RT <perlbug-followup [...] perl.org>
From: Nicholas Clark <nick [...] ccl4.org>
Download (untitled) / with headers
text/plain 2.8k
On Fri, Sep 06, 2013 at 07:12:46PM -0700, James E Keenan via RT wrote: Show quoted text
> On Fri Jan 06 23:46:45 2012, sprout wrote:
> > On Tue Nov 23 07:36:50 2010, doughera wrote:
> > > On Mon, 22 Nov 2010, Jan Dubois wrote: > > >
> > > > On Mon, 22 Nov 2010, demerphq wrote:
> > > > > On 22 November 2010 09:01, H.Merijn Brand <h.m.brand@xs4all.nl>
> wrote:
> > > > > > On Sun, 21 Nov 2010 15:19:21 -0800, "Jerry D. Hedden" (via RT) > > > > > > <perlbug-followup@perl.org> wrote: > > > > > >
> > > > > >> In order to save time building and testing Perl, I use the > > > > > >> -Dnoextensions=... option in Configure to exclude over a > > > > > >> dozen XS extensions when building Perl. These include > > > > > >> extensions I don't need (e.g., Sys/Syslog), don't want > > > > > >> (e.g., Text/Soundex) or that aren't supported on my current > > > > > >> architecture (e.g., IPC/SysV).
> > >
> > > > Not building all the extensions also helps with bisecting (even though > > > > a Configure based mechanism alone won't help on Windows, which needs > > > > help the most).
> > > > > > On balance, I'm in favor of this extension to an existing command-line > > > option. For a variety of reasons, there are times when you definitely > > > want Configure to hand you more rope. > > > > > > Equally emphatically, however, I don't think any compensating
> changes to
> > > the test suite are appropriate at this time. If I deliberately exclude > > > an extension that "we" expect to be there, then I must live with the > > > consequences. If I go out of my way to build a broken perl, I expect > > > the test suite to fail.
> > > > I'm in favour of this patch, as long as we don't modify the test suite > > to accommodate broken builds. > > > >
> > > A patch to permit exclusion of non-XS extensions was originally > submitted by Jerry Hedden in Nov 2010. Jesse Vincent was skeptical. > Others were more favorably inclined. Both Andy Dougherty and Father C. > spoke in favor provided we don't spend time modifying the test suite to > accommodate such an exclusion. > > I suspect that if we were to adopt this patch, the maintenance burden > would fall on the Configure maintainers. I also suspect that the patch > is old enough that it wouldn't apply cleanly, though I haven't tested that. > > Do we want to move forward with this?
Yes, I think that we should, but specifically as sprout states, that we don't modify the test suite to (attempt to) compensate for user-disabled modules. I don't think that it will a significant ongoing burden on the Configure maintainers to have this functionality in place. (Once it is added). It would be a long term cost if we start to feel the need to add skip()s in various test suites to ensure no tests failed for user-disabled modules, because this has the potential to be a combinatorial explosion of permutations, and a lot of manual work prone to errors. Nicholas Clark
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 3.4k
On Fri, 13 Sep 2013 12:38:30 GMT, nicholas wrote: Show quoted text
> On Fri, Sep 06, 2013 at 07:12:46PM -0700, James E Keenan via RT wrote:
> > On Fri Jan 06 23:46:45 2012, sprout wrote:
> > > On Tue Nov 23 07:36:50 2010, doughera wrote:
> > > > On Mon, 22 Nov 2010, Jan Dubois wrote: > > > >
> > > > > On Mon, 22 Nov 2010, demerphq wrote:
> > > > > > On 22 November 2010 09:01, H.Merijn Brand > > > > > > <h.m.brand@xs4all.nl>
> > wrote:
> > > > > > > On Sun, 21 Nov 2010 15:19:21 -0800, "Jerry D. Hedden" (via > > > > > > > RT) > > > > > > > <perlbug-followup@perl.org> wrote: > > > > > > >
> > > > > > >> In order to save time building and testing Perl, I use the > > > > > > >> -Dnoextensions=... option in Configure to exclude over a > > > > > > >> dozen XS extensions when building Perl. These include > > > > > > >> extensions I don't need (e.g., Sys/Syslog), don't want > > > > > > >> (e.g., Text/Soundex) or that aren't supported on my > > > > > > >> current > > > > > > >> architecture (e.g., IPC/SysV).
> > > >
> > > > > Not building all the extensions also helps with bisecting (even > > > > > though > > > > > a Configure based mechanism alone won't help on Windows, which > > > > > needs > > > > > help the most).
> > > > > > > > On balance, I'm in favor of this extension to an existing > > > > command-line > > > > option. For a variety of reasons, there are times when you > > > > definitely > > > > want Configure to hand you more rope. > > > > > > > > Equally emphatically, however, I don't think any compensating
> > changes to
> > > > the test suite are appropriate at this time. If I deliberately > > > > exclude > > > > an extension that "we" expect to be there, then I must live with > > > > the > > > > consequences. If I go out of my way to build a broken perl, I > > > > expect > > > > the test suite to fail.
> > > > > > I'm in favour of this patch, as long as we don't modify the test > > > suite > > > to accommodate broken builds. > > > > > >
> > > > > > A patch to permit exclusion of non-XS extensions was originally > > submitted by Jerry Hedden in Nov 2010. Jesse Vincent was skeptical. > > Others were more favorably inclined. Both Andy Dougherty and Father > > C. > > spoke in favor provided we don't spend time modifying the test suite > > to > > accommodate such an exclusion. > > > > I suspect that if we were to adopt this patch, the maintenance burden > > would fall on the Configure maintainers. I also suspect that the > > patch > > is old enough that it wouldn't apply cleanly, though I haven't tested > > that. > > > > Do we want to move forward with this?
> > Yes, I think that we should, but specifically as sprout states, that > we > don't modify the test suite to (attempt to) compensate for user- > disabled > modules. > > I don't think that it will a significant ongoing burden on the > Configure > maintainers to have this functionality in place. (Once it is added). > > It would be a long term cost if we start to feel the need to add > skip()s > in various test suites to ensure no tests failed for user-disabled > modules, because this has the potential to be a combinatorial > explosion of > permutations, and a lot of manual work prone to errors. > > Nicholas Clark
Jerry (original poster): Would you like to draw a new version of this patch against blead and re-submit it? That would give us something to consider after 5.26.0 is released. (Otherwise, the ticket is so old that it should be closed.) Thank you very much. -- James E Keenan (jkeenan@cpan.org)
Date: Mon, 27 Feb 2017 21:48:35 -0500
To: perlbug-followup [...] perl.org
From: "Jerry D. Hedden" <jdhedden [...] cpan.org>
Subject: Re: [perl #79538] [PATCH] Add capability to exclude non-XS extensions
Download (untitled) / with headers
text/plain 3.9k
I no longer involve myself with building custom versions of perl as I did in the past, so I'm afraid I can't easily generate an updated version of this patch.  Yes, you should probably just close the ticket.  Thanks.

On Sun, Feb 26, 2017 at 6:46 PM, James E Keenan via RT <perlbug-followup@perl.org> wrote:
Show quoted text
On Fri, 13 Sep 2013 12:38:30 GMT, nicholas wrote:
> On Fri, Sep 06, 2013 at 07:12:46PM -0700, James E Keenan via RT wrote:
> > On Fri Jan 06 23:46:45 2012, sprout wrote:
> > > On Tue Nov 23 07:36:50 2010, doughera wrote:
> > > > On Mon, 22 Nov 2010, Jan Dubois wrote:
> > > >
> > > > > On Mon, 22 Nov 2010, demerphq wrote:
> > > > > > On 22 November 2010 09:01, H.Merijn Brand
> > > > > > <h.m.brand@xs4all.nl>
> > wrote:
> > > > > > > On Sun, 21 Nov 2010 15:19:21 -0800, "Jerry D. Hedden" (via
> > > > > > > RT)
> > > > > > > <perlbug-followup@perl.org> wrote:
> > > > > > >
> > > > > > >> In order to save time building and testing Perl, I use the
> > > > > > >> -Dnoextensions=... option in Configure to exclude over a
> > > > > > >> dozen XS extensions when building Perl. These include
> > > > > > >> extensions I don't need (e.g., Sys/Syslog), don't want
> > > > > > >> (e.g., Text/Soundex) or that aren't supported on my
> > > > > > >> current
> > > > > > >> architecture (e.g., IPC/SysV).
> > > >
> > > > > Not building all the extensions also helps with bisecting (even
> > > > > though
> > > > > a Configure based mechanism alone won't help on Windows, which
> > > > > needs
> > > > > help the most).
> > > >
> > > > On balance, I'm in favor of this extension to an existing
> > > > command-line
> > > > option.  For a variety of reasons, there are times when you
> > > > definitely
> > > > want Configure to hand you more rope.
> > > >
> > > > Equally emphatically, however, I don't think any compensating
> > changes to
> > > > the test suite are appropriate at this time.  If I deliberately
> > > > exclude
> > > > an extension that "we" expect to be there, then I must live with
> > > > the
> > > > consequences.  If I go out of my way to build a broken perl, I
> > > > expect
> > > > the test suite to fail.
> > >
> > > I'm in favour of this patch, as long as we don't modify the test
> > > suite
> > > to accommodate broken builds.
> > >
> > >
> >
> >
> > A patch to permit exclusion of non-XS extensions was originally
> >  submitted by Jerry Hedden in Nov 2010.  Jesse Vincent was skeptical.
> > Others were more favorably inclined.  Both Andy Dougherty and Father
> > C.
> > spoke in favor provided we don't spend time modifying the test suite
> > to
> > accommodate such an exclusion.
> >
> > I suspect that if we were to adopt this patch, the maintenance burden
> > would fall on the Configure maintainers.  I also suspect that the
> > patch
> > is old enough that it wouldn't apply cleanly, though I haven't tested
> > that.
> >
> > Do we want to move forward with this?
>
> Yes, I think that we should, but specifically as sprout states, that
> we
> don't modify the test suite to (attempt to) compensate for user-
> disabled
> modules.
>
> I don't think that it will a significant ongoing burden on the
> Configure
> maintainers to have this functionality in place. (Once it is added).
>
> It would be a long term cost if we start to feel the need to add
> skip()s
> in various test suites to ensure no tests failed for user-disabled
> modules, because this has the potential to be a combinatorial
> explosion of
> permutations, and a lot of manual work prone to errors.
>
> Nicholas Clark

Jerry (original poster):

Would you like to draw a new version of this patch against blead and re-submit it?

That would give us something to consider after 5.26.0 is released.

(Otherwise, the ticket is so old that it should be closed.)

Thank you very much.

--
James E Keenan (jkeenan@cpan.org)

RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 386b
On Tue, 28 Feb 2017 02:50:47 GMT, jdhedden@cpan.org wrote: Show quoted text
> I no longer involve myself with building custom versions of perl as I did > in the past, so I'm afraid I can't easily generate an updated version of > this patch. Yes, you should probably just close the ticket. Thanks. >
Accordingly, closing. Thanks for getting back to us on this. -- James E Keenan (jkeenan@cpan.org)


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org