Grokbase
Topics Posts Groups | in
x
[ help ]

Nicholas Clark (n...@ccl4.org)

Profile | Posts (3778)Page 1 of 189: 1 2 3 > >>
1) Nicholas Clark Re: [PATCH] Update Module::Build to 0.31 from CPAN
| +1 vote
Yes, this is what is supposed to be happening for all dual life modules. The only reason I see as...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Wed, Jan 07, 2009 at 10:05:59AM -0500, David Golden wrote:

> I think the "problem" is that porters are patching M::B in blead instead of
> in the M::B upstream repository, so as M::B development moves forward, the
> two sources drift out of sync. The "haiku" line does not appear in the
> current M::B trunk (which happens to be the same as the 0.31 release).
>
> My understanding is that there is discussion of moving more and more modules
> to a "dual-life" state and so this kind of coordination will need to
> improve.

> Going forward, I would suggest that changes be made upstream to M::B and
> then either a release with the changes should be pulled into blead -- or,
> worst case, the M::B trunk should be pulled into blead if something can't
> wait for a new M::B release.

Yes, this is what is supposed to be happening for all dual life modules.

The only reason I see as valid for patching something in core (and tweaking
the version number in core, and then immediately submitting that change
upstream) is because smoke tests are failing, and the change would rectify
that.

Apart from that, patches sent to p5p that affect dual life modules should be
sent upstream without application. (Or the sections of complex patches that
affect dual life modules.)

Porting/Maintainers makes it easy to determine whether files are part of
dual life modules.

(Patches welcome for adding functionality to interrogate git to determine
which files are modified, akin to the current --opened option for perforce)

Nicholas Clark
2) Nicholas Clark Re: bleed and CPAN dual-life module synchronisation
| +1 vote
I read is that Steffen is about to send you a patch to CPAN::parse_meta_yml() which changes this:...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Tue, Jan 06, 2009 at 09:01:13AM -0500, David Golden wrote:
> On Tue, Jan 6, 2009 at 7:46 AM, Steffen Mueller <wyp3rlx02@sneakemail.com>wrote:

> > I believe that CPAN is managed as upstream in its own repository? (The
> > info is not in Maintainers.pl yet.) Then apart from filing a ticket, I
> > can only submit a patch for adding Parse::CPAN::Meta. Forthcoming.
> >
> >
> CPAN's repository is here: git://github.com/andk/cpanpm.git
>
> I don't have a lot of tuits this week, but I'll see if I can take a look.
> Depending on urgency, patches welcome.  ;-)

I read is that Steffen is about to send you a patch to CPAN::parse_meta_yml()
which changes this:

    eval {
        require Parse::Metayaml; # hypothetical
        $early_yaml = Parse::Metayaml::LoadFile($yaml)->[0];
    };


Clearly *no-one* has *ever* tested whether CPAN + Parse::CPAN::Meta actually
works. And no-one (other than me) has noticed. *

(I tipped Steffen off, given that movement is about to happen, and so it's
no longer useful to continue the experiment of "will anyone notice?"
This isn't the first time that I've deliberately done nothing to see what
happens.)

Nicholas Clark

* This *no-one* isn't aimed at David, who probably wasn't even aware of the
  implementation of this (intended) feature of CPAN.
3) Nicholas Clark Re: Add lib/CORE/ to .gitignore (needed on Windows)
| +1 vote
Potentially yes, but a: We often have threads that go on for some time, before a patch appears, and...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Tue, Jan 06, 2009 at 09:00:39AM +0530, Abhijit Menon-Sen wrote:
> At 2009-01-06 15:49:01 +1300, [email protected: s...@vilain.net] wrote:
> >
> > > But Message-ID:s are still useful as they tie the commit to
> > > any list discussion that provoked its creation.
> >
> > I thought so too, so even when I thought that all of the useful
> > information from a list message was included in the body of the
> > change, I included a line at the end of the commit message:
> >
> > p5p-msgid: <XXX@XXX>
>
> Makes sense, thanks.
>
> But that isn't something the patch submitter should be doing, is it?

Potentially yes, but

a: We often have threads that go on for some time, before a patch appears, and
   the message that contains that patch has little in it other than the patch
b: Even if the person applying the patch has the time to summarise the entire
   thread (rare), it may well be that they make errors, or omit something that
   did seem important at the time but with hindsight becomes key.

> Should we adopt Signed-off-by: too?

Currently the only "sign-off" is that someone with commit access commits it.
Or, you could argue, that the only sign off is when someone considers it
valid to merge it to a maintenance branch. It might make sense in the latter
case, but is that information already stored by the cherry picker?

Nicholas Clark
4) Nicholas Clark Re: @{"_<$filename"} is unreasonably tied to use of DB::DB ($^P & 0x2)
| +1 vote
Yes, it's about retaining lines from string evals that define subroutines. I think I merged all the...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Mon, Jan 05, 2009 at 08:28:05PM +0000, Dave Mitchell wrote:

> I can't reproduce 5.10.0 not saving lines, so I can't check to my
> satisfaction whether its now fixed in maint-5.10. Presumably the 5.10.0
> problem must be something other than this: ???
>
> $ cat /tmp/p
> #!/usr/bin/perl
> print for @{"_</tmp/p"};
> $
> $ perl5100 -d /tmp/p
> ...
>   DB<1> c
> BEGIN { require 'perl5db.pl' };
> #!/usr/bin/perl
> print for @{"_</tmp/p"};
> Debugged program terminated. Use q to quit or R to restart,

Yes, it's about retaining lines from string evals that define subroutines.

I think I merged all the fixes. Tests are in t/comp/retainedlines.t

Nicholas Clark
5) Nicholas Clark Re: Add lib/CORE/ to .gitignore (needed on Windows)
| +1 vote
But Message-ID:s are still useful as they tie the commit to any list discussion that provoked its...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Mon, Jan 05, 2009 at 11:51:53PM +0530, Abhijit Menon-Sen wrote:

>     $ git show -s HEAD
> commit ca03d8e9757555d970b649fcba29719681875f1c
> Author: Max Maischein <corion@corion.net>
>     Date:   Mon Jan 5 14:22:54 2009 +0100
>
> Add lib/CORE/ to .gitignore (needed on Windows)
>         
> C:\Projekte\bleadperl-git\win32>dmake && git status
>         [...]
> nothing to commit (working directory clean)
>         C:\Projekte\bleadperl-git\win32>
>
> So anyone using git-format-patch/git-send-email can just forget the
> old From/Date/Subject thing and write sensible commit messages
> describing the change.

But Message-ID:s are still useful as they tie the commit to any list
discussion that provoked its creation.

Nicholas Clark
6) Nicholas Clark Re: Git.pm
| +1 vote
I don't know where Léon's Git::PurePerl fits into that idea....
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Mon, Jan 05, 2009 at 03:09:39PM +0100, demerphq wrote:

> And I personally feel there is a good case for writing a complete new
> framework, especially if the new framework can be a) git version
> independent (a good reason not to put in git.git), and b) capable of
> being used to reimplement Git.pm as a wrapper.

I don't know where Léon's Git::PurePerl fits into that idea.

http://cpan.uwinnipeg.ca/dist/Git-PurePerl

Léon is on holiday currently, so we'll have to wait for his input.

Nicholas Clark
7) Nicholas Clark Re: Is the Name.pl format changeable?
| +1 vote
Yes, this seems the best way. Make it work right for 5.12, and then we'll worry about what (if any)...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Sun, Jan 04, 2009 at 10:02:28PM +0100, demerphq wrote:
> 2009/1/4 karl williamson <public@khwilliamson.com>:

> > of the file, and perhaps sorting it differently. My question is, is it ok
> > to change the file's format, or is it considered a public specification that
> > can't be changed.
> >
> > To fix this problem without adding the hash would lengthen the string of all
> > the names that is currently read in by about 2 million bytes.
>
> I think you should consider yourself free to do as you think is best.

Yes, this seems the best way. Make it work right for 5.12, and then we'll
worry about what (if any) obscure public interfaces have changed.

Nicholas Clark
8) Nicholas Clark Re: y2038 merged into blead
| +1 vote
I see failures on a threaded build on Linux, but not OS X or Solaris for # check that localtime...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Sat, Jan 03, 2009 at 07:26:24PM +0100, Rafael Garcia-Suarez wrote:
> I reapplied the commits from Schwern's y2038 branch in the historical
> repository from the appropriate point in the history, and merged them
> in bleadperl. I'd appreciate a small review, esp. given that I had
> conflicts in lib/Time/Local.{t,pm}. However, all tests pass, at least
> on Linux without threads. But there were patches for the other OSes
> too.
>
> (I had conflicts in reentr.h too, but I just re-generated that file,
> on the basis that reentr.pl was correct)
>
> http://perl5.git.perl.org/perl.git/commitdiff/f433f45e728fb8fd90ae712c4daa4fb4cf2cb6c2

I see failures on a threaded build on Linux, but not OS X or Solaris for

# check that localtime respects changes to $ENV{TZ}
$ENV{TZ} = "GMT-5";
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($beg);
$ENV{TZ} = "GMT+5";
($sec,$min,$hour2,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($beg);
ok($hour != $hour2, 'changes to $ENV{TZ} respected');


On Linux:

$ ./perl -Ilib -V:d_localtime_r_needs_tzset
d_localtime_r_needs_tzset='define';

Elsewhere:

$ ./perl -Ilib -V:d_localtime_r_needs_tzset
d_localtime_r_needs_tzset='undef';

I think that the functionality of change 29209 has become lost. It added a
call to tzset() into the localtime() defined in reentr.h with L_R_TZSET:

--- a/reentr.h
+++ b/reentr.h
@@ -1346,10 +1346,10 @@ typedef struct {
 #  if defined(PERL_REENTR_API) && (PERL_REENTR_API+0 == 1)
 #   undef localtime
 #   if !defined(localtime) && LOCALTIME_R_PROTO == REENTRANT_PROTO_S_TS
-# define localtime(a) (localtime_r(a, &PL_reentrant_buffer->_localtime_struct) ? &PL_reentrant_buffer->_localtime_struct : 0)
+# define localtime(a) (L_R_TZSET localtime_r(a, &PL_reentrant_buffer->_localtime_struct) ? &PL_reentrant_buffer->_localtime_struct : 0)
 #  endif /* if defined(PERL_REENTR_API) && (PERL_REENTR_API+0 == 1) */
 #   if !defined(localtime) && LOCALTIME_R_PROTO == REENTRANT_PROTO_I_TS
-# define localtime(a) (localtime_r(a, &PL_reentrant_buffer->_localtime_struct) == 0 ? &PL_reentrant_buffer->_localtime_struct : 0)
+# define localtime(a) (L_R_TZSET localtime_r(a, &PL_reentrant_buffer->_localtime_struct) == 0 ? &PL_reentrant_buffer->_localtime_struct : 0)
 #  endif /* if defined(PERL_REENTR_API) && (PERL_REENTR_API+0 == 1) */
 #   endif /* HAS_LOCALTIME */
#endif /* HAS_LOCALTIME_R */

http://perl5.git.perl.org/perl.git/commit/8572b25d870f5a82a300ce816436b52f0f8afb0a
http://perl5.git.perl.org/perl.git/commit/64e28687393f5359efe57854321283f5e8604f03


I'm not sure of the best way to re-instate this.

Nicholas Clark
9) Nicholas Clark Re: whitespace changes should no longer be verbotem in perl
| +1 vote
How is this done on a: the gitweb interface? b: the command line?...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Sat, Jan 03, 2009 at 01:43:54PM +0100, demerphq wrote:
> Now that we have switched to git there is no need to presist with our
> policy of not fixing whitespace problems in our source code.
>
> The reason is that git blame supports ignoring whitespace changes, so
> the old objection, that of whitespace changes making historical
> change analysis difficult no longer holds.

How is this done on

a: the gitweb interface?
b: the command line?

(and I know that on our gitweb instance, such as
http://perl5.git.perl.org/perl.git/blame/HEAD:/.gitignore
the line number is actually a link to the previous version at that line - on
a whitespace agnostic blame annotation does that link lead to the previous
non-whitespace change at that line?)

Also, "ignoring whitespace changes" is only whitespace within the same line?

Nicholas Clark
10) Nicholas Clark Re: [perl.git] branch blead, updated. GitLive-blead-133-g1e9bd11
| +1 vote
Maybe about half of it - the half that deals with C3. I wasn't sure. Nicholas Clark
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Wed, Dec 31, 2008 at 10:26:07AM -0500, Jerry D. Hedden wrote:
> Nicholas Clark wrote:
> > In perl.git, the branch blead has been updated
> >
> > <http://perl5.git.perl.org/perl.git/commitdiff/1e9bd1186a044d6e3506ed14fbe055b8f75f7641?hp=4e7245b5373225aafe95c40cba1590f590d1c782>
> >
> > - Log -----------------------------------------------------------------
> > commit 1e9bd1186a044d6e3506ed14fbe055b8f75f7641
> > Author: Nicholas Clark <nick@ccl4.org>
> > Date:   Sat Dec 27 20:54:01 2008 +0000
> >
> > Move all mro:: XS functions from mro.c to ext/mro/mro.xs, except for
> > mro::method_changed_in(), which is used by constant.
> >
> > M       MANIFEST
> > M       ext/mro/mro.xs
> > D       ext/mro/t/pluggable.t
> > M       lib/overload.pm
> > M       mro.c
> > M       t/mro/pkg_gen.t
>
> Shouldn't t/mro be moved under ext/mro as well?

Maybe about half of it - the half that deals with C3.
I wasn't sure.

Nicholas Clark
11) Nicholas Clark Re: current trunk does not 'make'
| +1 vote
Try now? $ git describe GitLive-blead-163-g28b1dae I may have already fixed it before you completed...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Wed, Dec 31, 2008 at 09:08:08AM +0100, Andreas J. Koenig wrote:
> % git describe
> GitLive-blead-160-g5f58995

Try now?

$ git describe
GitLive-blead-163-g28b1dae

I may have already fixed it before you completed writing your e-mail.

(You didn't say which OS you were using, but I think it's all working,
threaded and unthreaded, at least on Linux, FreeBSD and Solaris)

Nicholas Clark
12) Nicholas Clark Re: 5.10.0 regressions that need fixing
| +1 vote
I know the cause of this one. I just haven't had time to work out the correct fix yet. Nicholas...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Mon, Dec 29, 2008 at 10:11:55PM +0000, Dave Mitchell wrote:
> http://rt.perl.org/rt3//Public/Bug/Display.html?id=60574
>
>     possible 64-bit alignment issue?

I know the cause of this one. I just haven't had time to work out the correct
fix yet.

Nicholas Clark
13) Nicholas Clark Re: regenerating a patch number
| +1 vote
Agree on Linux. Agree on OS X. (Which are both GNU make) Turns out that I was assuming that it was...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat  Thread  Threaded ]
On Sat, Dec 27, 2008 at 06:41:57PM +0100, demerphq wrote:
> 2008/12/27 Nicholas Clark <nick@ccl4.org>:
> > I'm still not convinced that I like this (new) section of the Makefile as-is
> > yet:
> >
> > .PHONY: all translators utilities make_patchnum
> >
> > make_patchnum:
> >        sh $(shellflags) make_patchnum.sh
> >
> > .patchnum: make_patchnum
> >
> > perl$(OBJ_EXT): .patchnum
> >
> >
> >
> > because it seems to have the side effect that make always considers that
> > .patchnum is out of date, so always regenerates it, so perl.o is always
> > recompiled, so miniperl is always relinked, so lib/unicore/mktables is
> > always re-run, and all the extensions Makefiles checked. Which is quite a bit
> > of work each time.
>
> It will always run the program that checks if it should be
> regenerated, but it does not regenerate it each time. Read the code
> for make_patchnum.sh and youll see what happens. This is exactly what
> we want.
>
> And it does not cause perl.c to be recompiled every time.

Agree on Linux. Agree on OS X. (Which are both GNU make)

> At least for me. Please let me know if you have actually witnessed it
> rebuilding perl.obj twice if you do: make; make

Turns out that I was assuming that it was everywhere. On FreeBSD I'm getting
this:

$ make perl
sh  make_patchnum.sh
Reusing .patchnum and .sha1
`sh  cflags "optimize='-g'" perl.o`  perl.c
CCCMD = ccache gcc -DPERL_CORE -c -DPERL_GIT_SHA1=e21c97b9063f1fc4ea77e8bcfbdaddeaa8edc398 -DPERL_PATCHNUM=GitLive-blead-115-ge21c97b-with-uncommitted-changes -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -DNO_MATHOMS -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -g -Wall -W -Wextra -Wdeclaration-after-statement -Wendif-labels -Wc++-compat
ccache gcc -pthread -Wl,-E -fstack-protector -L/usr/local/lib -o miniperl `echo gv.o toke.o perly.o op.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o perl.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o | sed 's/ op.o / /'` miniperlmain.o opmini.o -lm -lcrypt
./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
./miniperl -Ilib configpm
written lib/Config.pod
./miniperl -Ilib lib/lib_pm.PL
Extracting lib.pm (with variable substitutions)
        AutoSplitting perl library
./miniperl -Ilib -MAutoSplit -MFile::Find -e 'find ({no_chdir=>1, wanted => sub {autosplit_lib_modules($_) if /\.pm$/}}, "lib")'
make lib/re.pm
`lib/re.pm' is up to date.

        Making DynaLoader (static)
rm -f libperl.a
/usr/bin/ar rcu libperl.a gv.o toke.o perly.o op.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o perl.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o DynaLoader.o
ccache gcc -o perl -pthread -Wl,-E -fstack-protector -L/usr/local/lib perlmain.o libperl.a `cat ext.libs` -lm -lcrypt
$ make perl
sh  make_patchnum.sh
Reusing .patchnum and .sha1
`sh  cflags "optimize='-g'" perl.o`  perl.c
CCCMD = ccache gcc -DPERL_CORE -c -DPERL_GIT_SHA1=e21c97b9063f1fc4ea77e8bcfbdaddeaa8edc398 -DPERL_PATCHNUM=GitLive-blead-115-ge21c97b-with-uncommitted-changes -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -DNO_MATHOMS -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -g -Wall -W -Wextra -Wdeclaration-after-statement -Wendif-labels -Wc++-compat
ccache gcc -pthread -Wl,-E -fstack-protector -L/usr/local/lib -o miniperl `echo gv.o toke.o perly.o op.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o perl.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o | sed 's/ op.o / /'` miniperlmain.o opmini.o -lm -lcrypt
./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
./miniperl -Ilib configpm
written lib/Config.pod
./miniperl -Ilib lib/lib_pm.PL
Extracting lib.pm (with variable substitutions)
        AutoSplitting perl library
./miniperl -Ilib -MAutoSplit -MFile::Find -e 'find ({no_chdir=>1, wanted => sub {autosplit_lib_modules($_) if /\.pm$/}}, "lib")'
make lib/re.pm
`lib/re.pm' is up to date.

        Making DynaLoader (static)
rm -f libperl.a
/usr/bin/ar rcu libperl.a gv.o toke.o perly.o op.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o perl.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o DynaLoader.o
ccache gcc -o perl -pthread -Wl,-E -fstack-protector -L/usr/local/lib perlmain.o libperl.a `cat ext.libs` -lm -lcrypt

(Seems I can repeat this as many times as I like)

Nicholas Clark
14) Nicholas Clark regenerating a patch number
| +1 vote
I'm still not convinced that I like this (new) section of the Makefile as-is yet: .PHONY: all...
Perl 5 Porters
[ Profile | Reply to group ] [ Flat