Skip Menu |

This queue is for tickets about the threads-shared CPAN distribution.

Report information
The Basics
Id: 113905
Status: resolved
Priority: 0/
Queue: threads-shared

People
Owner: Nobody in particular
Requestors: jplesnik [...] redhat.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: 1.51



Subject: Update to 1.50
Perl 5.24.0-RC1 contains the version 1.50 of module threads-shared. Could you please update this standalone module to the version 1.50? Thank you, Jitka
Subject: Re: [rt.cpan.org #113905] Update to 1.50
Date: Fri, 22 Apr 2016 15:32:27 -0400
To: bug-threads-shared [...] rt.cpan.org
From: "Jerry D. Hedden" <jdhedden [...] cpan.org>
A patch to sync blead and CPAN has been submitted: https://rt.perl.org/Ticket/Display.html?id=127963 On Thu, Apr 21, 2016 at 3:52 AM, Jitka Plesnikova via RT < bug-threads-shared@rt.cpan.org> wrote: Show quoted text
> Thu Apr 21 03:52:49 2016: Request 113905 was acted upon. > Transaction: Ticket created by jplesnik > Queue: threads-shared > Subject: Update to 1.50 > Broken in: (no value) > Severity: (no value) > Owner: Nobody > Requestors: jplesnik@redhat.com > Status: new > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=113905 > > > > Perl 5.24.0-RC1 contains the version 1.50 of module threads-shared. > > Could you please update this standalone module to the version 1.50? > > Thank you, > Jitka >
Here's the attachment. On 2016-04-22 15:33:10, JDHEDDEN wrote: Show quoted text
> A patch to sync blead and CPAN has been submitted: > https://rt.perl.org/Ticket/Display.html?id=127963 > > > On Thu, Apr 21, 2016 at 3:52 AM, Jitka Plesnikova via RT < > bug-threads-shared@rt.cpan.org> wrote: >
> > Thu Apr 21 03:52:49 2016: Request 113905 was acted upon. > > Transaction: Ticket created by jplesnik > > Queue: threads-shared > > Subject: Update to 1.50 > > Broken in: (no value) > > Severity: (no value) > > Owner: Nobody > > Requestors: jplesnik@redhat.com > > Status: new > > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=113905 > > > > > > > Perl 5.24.0-RC1 contains the version 1.50 of module threads-shared. > > > > Could you please update this standalone module to the version 1.50? > > > > Thank you, > > Jitka > >
Subject: 0001-Upgrade-to-threads-shared-1.51.patch
From 4a672f8425877662b513211546ce5a118d0c45d5 Mon Sep 17 00:00:00 2001 From: jdhedden <jdhedden@cpan.org> Date: Fri, 22 Apr 2016 19:23:01 -0400 Subject: [PATCH] Upgrade to threads::shared 1.51 --- Porting/Maintainers.pl | 2 +- dist/threads-shared/lib/threads/shared.pm | 15 +++++++++++++-- dist/threads-shared/shared.xs | 14 -------------- 3 files changed, 14 insertions(+), 17 deletions(-) diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl index d861ccb..5554d84 100755 --- a/Porting/Maintainers.pl +++ b/Porting/Maintainers.pl @@ -1199,7 +1199,7 @@ use File::Glob qw(:case); }, 'threads::shared' => { - 'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.48.tar.gz', + 'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.51.tar.gz', 'FILES' => q[dist/threads-shared], 'EXCLUDED' => [ qw( examples/class.pl diff --git a/dist/threads-shared/lib/threads/shared.pm b/dist/threads-shared/lib/threads/shared.pm index dc76ab2..89a79a4 100644 --- a/dist/threads-shared/lib/threads/shared.pm +++ b/dist/threads-shared/lib/threads/shared.pm @@ -7,7 +7,7 @@ use warnings; use Scalar::Util qw(reftype refaddr blessed); -our $VERSION = '1.50'; # Please update the pod, too. +our $VERSION = '1.51'; # Please update the pod, too. my $XS_VERSION = $VERSION; $VERSION = eval $VERSION; @@ -195,7 +195,7 @@ threads::shared - Perl extension for sharing data structures between threads =head1 VERSION -This document describes threads::shared version 1.48 +This document describes threads::shared version 1.51 =head1 SYNOPSIS @@ -558,6 +558,17 @@ they contain will be lost. Therefore, populate such variables B<after> declaring them as shared. (Scalar and scalar refs are not affected by this problem.) +Blessing a shared item after it has been nested in another shared item does +not propagate the blessing to the shared reference: + + my $foo = &share({}); + my $bar = &share({}); + $bar->{foo} = $foo; + bless($foo, 'baz'); # $foo is now of class 'baz', + # but $bar->{foo} is unblessed. + +Therefore, you should bless objects before sharing them. + It is often not wise to share an object unless the class itself has been written to support sharing. For example, an object's destructor may get called multiple times, once for each thread's scope exit. Another danger is diff --git a/dist/threads-shared/shared.xs b/dist/threads-shared/shared.xs index e323788..a019732 100644 --- a/dist/threads-shared/shared.xs +++ b/dist/threads-shared/shared.xs @@ -1166,20 +1166,6 @@ const MGVTBL sharedsv_array_vtbl = { }; -#if 0 -/* XXX unused dead code */ -/* Recursively unlocks a shared sv. */ - -static void -Perl_sharedsv_unlock(pTHX_ SV *ssv) -{ - user_lock *ul = S_get_userlock(aTHX_ ssv, 0); - assert(ul); - recursive_lock_release(aTHX_ &ul->lock); -} -#endif - - /* Recursive locks on a sharedsv. * Locks are dynamically scoped at the level of the first lock. */ -- 2.8.1