]>
git.vpit.fr Git - perl/modules/Lexical-Types.git/log
Vincent Pit [Sat, 4 Oct 2014 22:39:58 +0000 (00:39 +0200)]
Nullify thread local storage entries when they are freed
This makes possible problems easier to reproduce.
Vincent Pit [Sat, 4 Oct 2014 22:39:00 +0000 (00:39 +0200)]
Properly decrement the refcount of the default method name at thread end
Vincent Pit [Sat, 4 Oct 2014 22:31:46 +0000 (00:31 +0200)]
Don't cleanup thread local storage before END blocks are executed
reap.h is no longer necessary.
Vincent Pit [Sat, 4 Oct 2014 22:27:40 +0000 (00:27 +0200)]
Use run_perl() from VPIT::TestHelpers
This updates VPIT::TestHelpers to
4fb18792 .
Vincent Pit [Fri, 4 Oct 2013 20:34:48 +0000 (17:34 -0300)]
Renumber test files
To make place for the upcoming addition of non scalar types.
Vincent Pit [Fri, 4 Oct 2013 20:20:43 +0000 (17:20 -0300)]
Remove a now useless SKIP directive
The block was skipped for perl 5.8.2 and below, but we now require 5.8.3.
Vincent Pit [Mon, 9 Sep 2013 12:18:56 +0000 (14:18 +0200)]
Remove profanity
Vincent Pit [Fri, 6 Sep 2013 15:37:59 +0000 (17:37 +0200)]
Add support for padrange ops, introduced in perl 5.17.6
This fixes RT #86112.
Vincent Pit [Fri, 6 Sep 2013 15:32:20 +0000 (17:32 +0200)]
Rename <lt_op_info>, lt_op_map to <lt_op_padxv_info>, lt_op_padxv_map
As we'll need a new pointer table soon.
Vincent Pit [Fri, 6 Sep 2013 15:26:36 +0000 (17:26 +0200)]
Add more basic tests
Vincent Pit [Fri, 6 Sep 2013 11:10:30 +0000 (13:10 +0200)]
Move the run-time initializer call into a new lt_op_info_call() helper
Vincent Pit [Fri, 6 Sep 2013 10:56:40 +0000 (12:56 +0200)]
Rename lt_op_info.old_pp_padsv to .old_pp
For it will be soon allowed to be something else.
Vincent Pit [Sat, 24 Aug 2013 18:12:19 +0000 (15:12 -0300)]
Make Perl version numbers more readable
Vincent Pit [Sat, 24 Aug 2013 16:24:44 +0000 (13:24 -0300)]
Remove obsolete kwalitee workarounds
Vincent Pit [Fri, 23 Aug 2013 18:56:38 +0000 (15:56 -0300)]
No tabs please
Vincent Pit [Fri, 23 Aug 2013 18:40:43 +0000 (15:40 -0300)]
POD verbatim paragraphs should fit into a terminal
Vincent Pit [Fri, 23 Aug 2013 18:39:38 +0000 (15:39 -0300)]
Make sure the POD headings are linkable
Vincent Pit [Thu, 22 Aug 2013 21:14:15 +0000 (18:14 -0300)]
Replace check functions in a thread-safe way
Vincent Pit [Tue, 20 Aug 2013 21:10:19 +0000 (18:10 -0300)]
Stop bundling author tests
Vincent Pit [Wed, 7 Aug 2013 14:39:02 +0000 (11:39 -0300)]
Update the bug tracker URL in META after the rt.perl.org upgrade
Vincent Pit [Tue, 6 Aug 2013 02:55:44 +0000 (23:55 -0300)]
Get rid of t/99-kwalitee.t
New versions started to throw warnings if specific environment variables
are not set. This may be appropriate for dist manager users, but not really
for the rest of the world.
Since kwalitee metrics are either obvious or useless, there's no big loss
in removing this test anyway.
Vincent Pit [Wed, 30 Jan 2013 16:45:05 +0000 (14:45 -0200)]
Update VPIT::TestHelpers to
e8344578
Vincent Pit [Fri, 2 Nov 2012 12:40:37 +0000 (10:40 -0200)]
Preserve the PATH environment variable when running a sub-perl on cygwin
Vincent Pit [Fri, 2 Nov 2012 12:37:21 +0000 (10:37 -0200)]
Strip spaces at the end of lines
Vincent Pit [Fri, 2 Nov 2012 12:35:46 +0000 (10:35 -0200)]
Threads tests may not be able to spawn all the threads
To work around this :
- move all the threads boilerplate to a new helper test module ;
- capture the warnings/errors that threads->create may throw and reprint
them properly as diagnostics ;
- do not hardcode the plan and use 'no_plan' instead.
Vincent Pit [Fri, 2 Nov 2012 01:42:11 +0000 (23:42 -0200)]
Port module loading in magic tests to VPIT::TestHelpers
Vincent Pit [Fri, 2 Nov 2012 01:32:27 +0000 (23:32 -0200)]
Update author tests, and add a POD spelling test
Also make sure that the kwalitee test unlinks its byproducts.
Vincent Pit [Fri, 2 Nov 2012 01:28:39 +0000 (23:28 -0200)]
Kill Debian_CPANTS.txt suffixes as well
Vincent Pit [Fri, 2 Nov 2012 01:27:31 +0000 (23:27 -0200)]
Quote version numbers in Makefile.PL
Vincent Pit [Fri, 2 Nov 2012 01:25:57 +0000 (23:25 -0200)]
Add BUILD_REQUIRES to WriteMakefile()
Vincent Pit [Fri, 2 Nov 2012 01:23:14 +0000 (23:23 -0200)]
Simplify Config loading in Makefile.PL
Also add it to configure_requires and build_requires.
Vincent Pit [Fri, 15 Jun 2012 12:40:43 +0000 (14:40 +0200)]
Correct a skip reason in t/18-hints.t
Copypasta is baaad.
Vincent Pit [Sun, 19 Feb 2012 13:09:03 +0000 (14:09 +0100)]
Require Module::ExtractUse 0.24 for the Kwalitee test
Vincent Pit [Tue, 6 Sep 2011 17:25:21 +0000 (19:25 +0200)]
Silence some "unused result" compiler warnings
Vincent Pit [Sun, 4 Sep 2011 16:01:30 +0000 (18:01 +0200)]
Skip the hint entry vivification test on 5.11
It fails the same way even when indirect is not loaded.
Vincent Pit [Wed, 24 Aug 2011 16:27:57 +0000 (18:27 +0200)]
This is 0.12
Vincent Pit [Wed, 24 Aug 2011 16:12:57 +0000 (18:12 +0200)]
Encode the README file in UTF-8
Vincent Pit [Wed, 24 Aug 2011 16:11:32 +0000 (18:11 +0200)]
Add META.json
Vincent Pit [Wed, 24 Aug 2011 16:10:35 +0000 (18:10 +0200)]
Ignore MYMETA.json
Vincent Pit [Wed, 24 Aug 2011 16:09:48 +0000 (18:09 +0200)]
Replace $] by "$]"
An old bug could cause $] to be initialized to a wrong decimal value.
Since its stringified value was always right, we use it instead.
Occurences of $^V were also replaced by $].
Vincent Pit [Wed, 24 Aug 2011 15:48:45 +0000 (17:48 +0200)]
The last argument to hv_fetch is the lvalue flag, not the hash
This could have caused entry vivifications in %^H on 5.8.
Vincent Pit [Sat, 26 Feb 2011 21:58:43 +0000 (22:58 +0100)]
This is 0.11
Vincent Pit [Sat, 26 Feb 2011 19:22:05 +0000 (20:22 +0100)]
Minor POD tweak
Vincent Pit [Sat, 26 Feb 2011 19:18:09 +0000 (20:18 +0100)]
Always skip seen ops in our peep replacement
Sometimes, there are loops in the next chain as e.g. with infinite loops
like "for (;;) { ... }". We can't reuse the op_opt member because it's
almost always set after the first pass.
This fixes RT #66146.
Vincent Pit [Mon, 3 Jan 2011 20:32:15 +0000 (21:32 +0100)]
This is 0.10
Vincent Pit [Mon, 3 Jan 2011 20:24:38 +0000 (21:24 +0100)]
Switch to qw<>
Vincent Pit [Mon, 3 Jan 2011 20:20:16 +0000 (21:20 +0100)]
Fix building on Windows
Vincent Pit [Mon, 3 Jan 2011 15:01:34 +0000 (16:01 +0100)]
Require perl 5.8.3
5.8.2 has a buggy peephole optimizer that may cause test failures.
Vincent Pit [Mon, 3 Jan 2011 14:59:22 +0000 (15:59 +0100)]
Skip threads tests unless perl version is 5.13.4 or greater
There was a long standing bug in the handling of GV <-> CV double linkage
that could (and explicitely did with a poisonous perl) cause segfaults at
thread destruction. It got fixed by Dave in commit
803f274 which went in
5.13.3, but the fix was amended for 5.13.4 in commit
09aad8f . Since it's
not really fair for the user to not be able to install the module because
of this, we skip the threads tests unless perl is at least 5.13.4.
Vincent Pit [Mon, 3 Jan 2011 14:46:33 +0000 (15:46 +0100)]
Force linking against the perl dll when using gcc 3.4 on Windows
When a Windows perl links an XS shared object to an import library using
gcc/g++ version 3.4.x, strange breakage happens at load time because the
mutex-related symbols seems not to be reachable. This situation happens
especially for AS perl and the default compiler suite it installs.
We fix this by forcing g++ to link against the dll instead, which should
be in the same directory as the perl executable (at least for AS perl).
This change is the integration of commit
14f8af2 from Variable::Magic's
repository.
Vincent Pit [Mon, 3 Jan 2011 14:25:13 +0000 (15:25 +0100)]
Introduce LT_FORKSAFE
Vincent Pit [Mon, 3 Jan 2011 14:18:36 +0000 (15:18 +0100)]
Only load Carp on error
Vincent Pit [Mon, 3 Jan 2011 11:40:59 +0000 (12:40 +0100)]
Fix test failures with Strawberry Perl 5.12
perl crashes because the SystemRoot environment variable is missing.
Vincent Pit [Mon, 3 Jan 2011 11:20:15 +0000 (12:20 +0100)]
Use TARG in lt_pp_padsv
This is how Perl_pp_padsv gets the SV.
Vincent Pit [Sat, 1 Jan 2011 22:48:08 +0000 (23:48 +0100)]
Bump copyright year
Vincent Pit [Sat, 1 Jan 2011 22:32:43 +0000 (23:32 +0100)]
Remove the #ifdef wrapping the mutex locks/unlocks
Vincent Pit [Sat, 1 Jan 2011 22:28:48 +0000 (23:28 +0100)]
Only declare dMY_CXT when really needed
Vincent Pit [Sat, 1 Jan 2011 22:23:59 +0000 (23:23 +0100)]
Get rid of CALL_FPTR
Vincent Pit [Sat, 1 Jan 2011 22:21:10 +0000 (23:21 +0100)]
Set the ppaddr member of padsv ops at peep time
There was a race in the "PL_ppaddr[OP_PADSV] save/restore dance" in that
perl might be compiling ops inside and outside the scope of the pragma at
the same time. We solve this by setting the op_ppaddr member of padsv ops
to a_pp_deref during the peephole optimization phase.
Vincent Pit [Fri, 31 Dec 2010 16:36:54 +0000 (17:36 +0100)]
Use cop_hints_fetch_pvn() whenever possible
refcounted_he_fetch() never was public, but in recent 5.13.x versions it is
no longer linkable.
Vincent Pit [Fri, 31 Dec 2010 17:12:38 +0000 (18:12 +0100)]
Use the new CLONE_PARAMS API with perl 5.13.2
Vincent Pit [Fri, 31 Dec 2010 16:48:02 +0000 (17:48 +0100)]
Clarify our policy towards C++ compilers
Vincent Pit [Fri, 31 Dec 2010 16:46:28 +0000 (17:46 +0100)]
Update ptable.h
Vincent Pit [Fri, 31 Dec 2010 16:39:15 +0000 (17:39 +0100)]
Ignore MYMETA.yml
Vincent Pit [Fri, 31 Dec 2010 16:34:14 +0000 (17:34 +0100)]
Get rid of ENTERn/LEAVEn
They are no longer needed since
420f91f3c4f8aa318ede84928eb7c671921500ea .
Vincent Pit [Tue, 1 Jun 2010 17:09:15 +0000 (19:09 +0200)]
Identify the require scope by the outmost cv outside of the current one
Vincent Pit [Tue, 1 Jun 2010 16:36:55 +0000 (18:36 +0200)]
Fix the thread destructor trick for 5.13.1
Vincent Pit [Tue, 18 May 2010 22:15:11 +0000 (00:15 +0200)]
Require perl 5.8.1
Vincent Pit [Thu, 15 Apr 2010 23:32:33 +0000 (01:32 +0200)]
{ENTER,LEAVE}_with_name are no longer needed starting perl 5.11.4
Vincent Pit [Sat, 2 Jan 2010 23:59:11 +0000 (00:59 +0100)]
This is 0.09
Vincent Pit [Sat, 2 Jan 2010 23:58:06 +0000 (00:58 +0100)]
Bump copyright year
Vincent Pit [Sat, 2 Jan 2010 23:37:05 +0000 (00:37 +0100)]
Trailing whitespace
Vincent Pit [Sat, 2 Jan 2010 23:35:01 +0000 (00:35 +0100)]
Do not mix declarations and code
Vincent Pit [Sat, 2 Jan 2010 23:33:29 +0000 (00:33 +0100)]
CLONE doesn't need to return anything, so make it use a PPCODE section
Vincent Pit [Sat, 2 Jan 2010 23:30:55 +0000 (00:30 +0100)]
Add the missing return type to lt_setup()
Vincent Pit [Sat, 2 Jan 2010 23:30:09 +0000 (00:30 +0100)]
Rename the pp_padsv member to old_pp_padsv
As pp_padsv is a compatibility macro from the perl core headers.
Vincent Pit [Tue, 29 Dec 2009 17:15:52 +0000 (18:15 +0100)]
Update ptable.h
Vincent Pit [Tue, 29 Dec 2009 17:04:53 +0000 (18:04 +0100)]
Also call FREETMPS/LEAVE when skipping a typed declaration
This fixes unbalanced scopes that were uncovered by the new named scope
feature in blead
Vincent Pit [Tue, 29 Dec 2009 16:30:01 +0000 (17:30 +0100)]
Fix for {ENTER,LEAVE}_with_name
Vincent Pit [Sun, 4 Oct 2009 09:18:03 +0000 (11:18 +0200)]
Re-indent WriteMakefile() arguments
Vincent Pit [Sun, 4 Oct 2009 08:24:28 +0000 (10:24 +0200)]
Build the $name and the main $file from $dist
Vincent Pit [Sun, 4 Oct 2009 08:00:08 +0000 (10:00 +0200)]
Put prerequisites in their own separate hash
Vincent Pit [Sun, 4 Oct 2009 07:28:21 +0000 (09:28 +0200)]
Give an explicit value to dynamic_config
Vincent Pit [Wed, 30 Sep 2009 22:22:50 +0000 (00:22 +0200)]
Only look up to the first require scope for the require propagation workaround
Vincent Pit [Sat, 26 Sep 2009 09:53:10 +0000 (11:53 +0200)]
Kwalitee test overhaul
Vincent Pit [Fri, 11 Sep 2009 22:57:41 +0000 (00:57 +0200)]
Reset the callbacks when the root interpreter is destroyed
This fix segfaults when the pragma is first loaded from inside a thread.
The global state for the root interpreter is also freed, so it won't leak
anymore.
Vincent Pit [Fri, 11 Sep 2009 21:45:35 +0000 (23:45 +0200)]
Only remap the hint through the pointer table for threaded perls
Also use the hint pointer as the unique identifier for the %^H entry, so
that the pragma no longer leaks when you specify the same hook (i.e. a
reference to the same sub) in two different require scopes.
Vincent Pit [Sat, 4 Jul 2009 19:34:57 +0000 (21:34 +0200)]
This is 0.08
Vincent Pit [Sat, 4 Jul 2009 13:00:03 +0000 (15:00 +0200)]
Store the default method name in the thread local storage area
Because we actually write to it in threads (its refcount is incremented).
Vincent Pit [Sat, 4 Jul 2009 12:52:25 +0000 (14:52 +0200)]
Increment the refcount after cloning
Vincent Pit [Sat, 4 Jul 2009 11:52:05 +0000 (13:52 +0200)]
Require Variable::Magic 0.35 in t/23-magic-uvar.t
So that perl 5.9.5 isn't considered as having uvar magic anymore.
Vincent Pit [Sat, 4 Jul 2009 11:46:48 +0000 (13:46 +0200)]
Correct the refcount of the source SVs that aren't actually stored
Vincent Pit [Sat, 4 Jul 2009 10:46:04 +0000 (12:46 +0200)]
Decide to use shared op info according to MULTIPLICITY
And not LT_MULTIPLICITY, since it can be disabled at configure time.
Vincent Pit [Sat, 4 Jul 2009 10:39:19 +0000 (12:39 +0200)]
Stop leaking the op specific info
This needs extra care under multiplicity perls. We can't actually use a SV because there's no way to free it in the context of the interpreter it was allocated from : it may very well not exist anymore at this point.
Vincent Pit [Fri, 3 Jul 2009 20:58:22 +0000 (22:58 +0200)]
Correct failing tests locations
Vincent Pit [Fri, 3 Jul 2009 19:55:25 +0000 (21:55 +0200)]
Factor the cloning logic in a new lt_clone() function
Vincent Pit [Fri, 3 Jul 2009 17:57:17 +0000 (19:57 +0200)]
Store the overriden pp_padsv into thread-local storage
This should fix some threading-related issues where lexical types introduction weren't caught.
Vincent Pit [Wed, 1 Jul 2009 08:43:28 +0000 (10:43 +0200)]
This is 0.07
Vincent Pit [Wed, 1 Jul 2009 08:15:12 +0000 (10:15 +0200)]
POD enhancements
Vincent Pit [Tue, 30 Jun 2009 22:14:56 +0000 (00:14 +0200)]
Work around the hints propagation in requires on perl <= 5.10.0