]> git.vpit.fr Git - perl/modules/Variable-Magic.git/log
perl/modules/Variable-Magic.git
15 years agoThis is 0.33 v0.33
Vincent Pit [Wed, 25 Mar 2009 23:59:08 +0000 (00:59 +0100)]
This is 0.33

15 years agoskip $desc => $num is neater
Vincent Pit [Mon, 23 Mar 2009 16:09:39 +0000 (17:09 +0100)]
skip $desc => $num is neater

15 years agoTest that the uvar/clear doesn't confuse B::Deparse in t/32-hash.t
Vincent Pit [Mon, 23 Mar 2009 16:01:14 +0000 (17:01 +0100)]
Test that the uvar/clear doesn't confuse B::Deparse in t/32-hash.t

15 years agoTest stash magic with AUTOLOAD
Vincent Pit [Mon, 23 Mar 2009 14:53:06 +0000 (15:53 +0100)]
Test stash magic with AUTOLOAD

15 years agoBetter metasyntactic variable names for t/35-stash.t
Vincent Pit [Mon, 23 Mar 2009 14:25:51 +0000 (15:25 +0100)]
Better metasyntactic variable names for t/35-stash.t

15 years agoMore stash tests for functions/methods
Vincent Pit [Mon, 23 Mar 2009 14:24:38 +0000 (15:24 +0100)]
More stash tests for functions/methods

15 years agoThere's no need to disable strict refs for getting the stash of a package whose name...
Vincent Pit [Mon, 23 Mar 2009 13:57:26 +0000 (14:57 +0100)]
There's no need to disable strict refs for getting the stash of a package whose name is known at compile time

15 years agoTest variables in other stashes
Vincent Pit [Sun, 22 Mar 2009 17:58:27 +0000 (18:58 +0100)]
Test variables in other stashes

15 years agoTest when magic actions take place
Vincent Pit [Sat, 21 Mar 2009 23:44:33 +0000 (00:44 +0100)]
Test when magic actions take place

15 years agoRename test functions init() and check() to init_watcher() and watch()
Vincent Pit [Sat, 21 Mar 2009 22:16:14 +0000 (23:16 +0100)]
Rename test functions init() and check() to init_watcher() and watch()

15 years agoRevert "clear magic only applies to arrays and hashes"
Vincent Pit [Fri, 20 Mar 2009 13:47:51 +0000 (14:47 +0100)]
Revert "clear magic only applies to arrays and hashes"

This reverts commit 4affb8304508fab43fb2247aa6d4d842c5fb82f2.

And test that deleting from a tied array may trigger clear magic on the value.

15 years agoLock shared variables
Vincent Pit [Mon, 16 Mar 2009 15:44:37 +0000 (16:44 +0100)]
Lock shared variables

15 years agofree callbacks fire also at the end of the global scope
Vincent Pit [Sat, 14 Mar 2009 21:39:23 +0000 (22:39 +0100)]
free callbacks fire also at the end of the global scope

15 years agoDocument the changes regarding how cast/getdata/dispell handle errors
Vincent Pit [Sat, 14 Mar 2009 21:36:30 +0000 (22:36 +0100)]
Document the changes regarding how cast/getdata/dispell handle errors

15 years agoMake getsig() croak if the supplied wizard is incorrect
Vincent Pit [Tue, 3 Mar 2009 00:47:26 +0000 (01:47 +0100)]
Make getsig() croak if the supplied wizard is incorrect

15 years agoFactor the regexp in t/12-sig.t
Vincent Pit [Tue, 3 Mar 2009 00:47:05 +0000 (01:47 +0100)]
Factor the regexp in t/12-sig.t

15 years agoClean up the remaining if (...) { ... } tests
Vincent Pit [Tue, 3 Mar 2009 00:38:22 +0000 (01:38 +0100)]
Clean up the remaining if (...) { ... } tests

15 years agoTest L:{last L} in t/18-opinfo.t
Vincent Pit [Mon, 2 Mar 2009 16:31:03 +0000 (17:31 +0100)]
Test L:{last L} in t/18-opinfo.t

15 years agoBuild better testcases in t/18-opinfo.t
Vincent Pit [Mon, 2 Mar 2009 16:23:39 +0000 (17:23 +0100)]
Build better testcases in t/18-opinfo.t

And test for op info in LOOPEX ops.

15 years agoTest loop ops
Vincent Pit [Mon, 2 Mar 2009 14:31:29 +0000 (15:31 +0100)]
Test loop ops

15 years agoHide the 'too many sigs' test from coverage
Vincent Pit [Sun, 1 Mar 2009 18:16:23 +0000 (19:16 +0100)]
Hide the 'too many sigs' test from coverage

15 years agoThe current op is always non-null in our vmg_opclass()
Vincent Pit [Sun, 1 Mar 2009 18:13:52 +0000 (19:13 +0100)]
The current op is always non-null in our vmg_opclass()

15 years agoStore a placeholder in the wizards set for every manually generated signature.
Vincent Pit [Sun, 1 Mar 2009 18:06:18 +0000 (19:06 +0100)]
Store a placeholder in the wizards set for every manually generated signature.

Before that, it was possible to generate the same signature twice before actually defining the wizards.

As a result of this, casting from an obsolete signature now croaks.

15 years agoFix samples/synopsis.pl permissions
Vincent Pit [Sun, 1 Mar 2009 13:46:28 +0000 (14:46 +0100)]
Fix samples/synopsis.pl permissions

15 years agoThis is 0.32 v0.32
Vincent Pit [Sun, 1 Mar 2009 13:44:01 +0000 (14:44 +0100)]
This is 0.32

15 years agoRemove some trailing spaces
Vincent Pit [Sat, 28 Feb 2009 19:52:26 +0000 (20:52 +0100)]
Remove some trailing spaces

15 years agoclear magic only applies to arrays and hashes
Vincent Pit [Sat, 28 Feb 2009 19:47:42 +0000 (20:47 +0100)]
clear magic only applies to arrays and hashes

15 years agoInitialize the global op names cache in a critical section
Vincent Pit [Sat, 28 Feb 2009 16:25:35 +0000 (17:25 +0100)]
Initialize the global op names cache in a critical section

15 years agoWe don't need a (wrong) compatibility macro for NewOp, since we only use it on 5.10
Vincent Pit [Sat, 28 Feb 2009 15:51:35 +0000 (16:51 +0100)]
We don't need a (wrong) compatibility macro for NewOp, since we only use it on 5.10

15 years agohv_exists() is enough for vmg_wizard_sig()
Vincent Pit [Sat, 28 Feb 2009 15:26:18 +0000 (16:26 +0100)]
hv_exists() is enough for vmg_wizard_sig()

15 years agoCheck the number of allocated wizards in vmg_gensig()
Vincent Pit [Sat, 28 Feb 2009 15:18:58 +0000 (16:18 +0100)]
Check the number of allocated wizards in vmg_gensig()

15 years agoTest numeric signatures too big/small
Vincent Pit [Sat, 28 Feb 2009 15:11:18 +0000 (16:11 +0100)]
Test numeric signatures too big/small

15 years agoDon't store the sig in the mg_private field
Vincent Pit [Sat, 28 Feb 2009 14:49:30 +0000 (15:49 +0100)]
Don't store the sig in the mg_private field

15 years agoL<threads::shared> variables
Vincent Pit [Wed, 25 Feb 2009 23:12:21 +0000 (00:12 +0100)]
L<threads::shared> variables

15 years agoMinor fixes in the global destruction comment
Vincent Pit [Wed, 25 Feb 2009 22:52:22 +0000 (23:52 +0100)]
Minor fixes in the global destruction comment

15 years agoFix the B stashes cache cloning, and really use it for blessing op objects
Vincent Pit [Tue, 24 Feb 2009 13:33:19 +0000 (14:33 +0100)]
Fix the B stashes cache cloning, and really use it for blessing op objects

15 years agoReorder the arguments to the thread callback in t/40-threads.t so that they match...
Vincent Pit [Sun, 22 Feb 2009 11:35:40 +0000 (12:35 +0100)]
Reorder the arguments to the thread callback in t/40-threads.t so that they match those of t/41-clone.t

15 years agoA note on global destruction and free callbacks
Vincent Pit [Sun, 22 Feb 2009 11:08:30 +0000 (12:08 +0100)]
A note on global destruction and free callbacks

15 years agoHide an uncoverable line
Vincent Pit [Sun, 22 Feb 2009 09:35:30 +0000 (10:35 +0100)]
Hide an uncoverable line

15 years agoTest op_info in free callbacks
Vincent Pit [Sun, 22 Feb 2009 09:34:55 +0000 (10:34 +0100)]
Test op_info in free callbacks

15 years agoMove the op_info tests to a new t/18-opinfo.t
Vincent Pit [Sun, 22 Feb 2009 09:03:23 +0000 (10:03 +0100)]
Move the op_info tests to a new t/18-opinfo.t

15 years agoA refreshed synopsis
Vincent Pit [Sun, 22 Feb 2009 08:24:48 +0000 (09:24 +0100)]
A refreshed synopsis

15 years agoPass the signature as a thread callback argument in t/40-threads.t
Vincent Pit [Sun, 22 Feb 2009 08:04:49 +0000 (09:04 +0100)]
Pass the signature as a thread callback argument in t/40-threads.t

15 years agoAn example on how to cast magic recursively
Vincent Pit [Fri, 20 Feb 2009 23:58:17 +0000 (00:58 +0100)]
An example on how to cast magic recursively

15 years agoMore tests for different op types
Vincent Pit [Fri, 20 Feb 2009 23:29:04 +0000 (00:29 +0100)]
More tests for different op types

15 years agoBless the op info object into the right class (stealing the logic from B)
Vincent Pit [Fri, 20 Feb 2009 22:28:00 +0000 (23:28 +0100)]
Bless the op info object into the right class (stealing the logic from B)

15 years agoThis is 0.31 v0.31
Vincent Pit [Thu, 19 Feb 2009 23:50:35 +0000 (00:50 +0100)]
This is 0.31

15 years agoExplicitely pass the flags to vmg_cb_call(). Also pass data in the va_args
Vincent Pit [Thu, 19 Feb 2009 20:17:00 +0000 (21:17 +0100)]
Explicitely pass the flags to vmg_cb_call(). Also pass data in the va_args

15 years agoInline the 'eval' specific part of vmg_cb_call() into vmg_svt_free()
Vincent Pit [Thu, 19 Feb 2009 16:03:18 +0000 (17:03 +0100)]
Inline the 'eval' specific part of vmg_cb_call() into vmg_svt_free()

It has become way too specific to keep it in the common wrapper.

15 years agoFactor the callback retval retrieval logic into a new VMG_CB_CALL_SET_RET() macro
Vincent Pit [Thu, 19 Feb 2009 15:54:07 +0000 (16:54 +0100)]
Factor the callback retval retrieval logic into a new VMG_CB_CALL_SET_RET() macro

15 years agoFix and test segfaults and wrong "Unknown error" exceptions when dieing in require...
Vincent Pit [Thu, 19 Feb 2009 00:01:28 +0000 (01:01 +0100)]
Fix and test segfaults and wrong "Unknown error" exceptions when dieing in require cause a free callback to fire

15 years agoStop citing all the constants in the EXPORT section
Vincent Pit [Tue, 17 Feb 2009 23:38:47 +0000 (00:38 +0100)]
Stop citing all the constants in the EXPORT section

15 years agoReorder the POD so that the functions come before the constants and the history
Vincent Pit [Tue, 17 Feb 2009 23:36:49 +0000 (00:36 +0100)]
Reorder the POD so that the functions come before the constants and the history

15 years ago'assignation' is really 'assignment'
Vincent Pit [Tue, 17 Feb 2009 23:31:55 +0000 (00:31 +0100)]
'assignation' is really 'assignment'

15 years agoMore code tests
Vincent Pit [Tue, 17 Feb 2009 23:29:05 +0000 (00:29 +0100)]
More code tests

15 years agoA clearer introduction to magic
Vincent Pit [Tue, 17 Feb 2009 00:52:18 +0000 (01:52 +0100)]
A clearer introduction to magic

15 years agoMake op_info thread safe
Vincent Pit [Mon, 16 Feb 2009 18:26:17 +0000 (19:26 +0100)]
Make op_info thread safe

15 years agoReference count vmg_op_name_len
Vincent Pit [Sat, 14 Feb 2009 15:31:09 +0000 (16:31 +0100)]
Reference count vmg_op_name_len

Its refcnt is incremented when a wizard with op_info => NAME is created, and
decremented in the destructor of those wizards. This fixes segfaults that happen
when magic with op_info => NAME is casted onto a stash and not dispelled before
END time.

15 years agoMagic variables can't be distinguished by tied()
Vincent Pit [Sat, 14 Feb 2009 13:26:00 +0000 (14:26 +0100)]
Magic variables can't be distinguished by tied()

15 years agocroak() if storing the wizard in the context fails, but don't let that mess up the...
Vincent Pit [Thu, 12 Feb 2009 20:48:29 +0000 (21:48 +0100)]
croak() if storing the wizard in the context fails, but don't let that mess up the coverage

15 years agogetdata() handles the stack itself, so make it return void and use PPCODE
Vincent Pit [Thu, 12 Feb 2009 20:33:16 +0000 (21:33 +0100)]
getdata() handles the stack itself, so make it return void and use PPCODE

15 years agoReorder a bit the wizard duplication logic to silence a cast warning
Vincent Pit [Thu, 12 Feb 2009 20:26:02 +0000 (21:26 +0100)]
Reorder a bit the wizard duplication logic to silence a cast warning

15 years agoThis is 0.30 v0.30
Vincent Pit [Thu, 12 Feb 2009 17:04:12 +0000 (18:04 +0100)]
This is 0.30

15 years agoDocument magic on array/hash values
Vincent Pit [Thu, 12 Feb 2009 16:55:10 +0000 (17:55 +0100)]
Document magic on array/hash values

15 years agoFix the testsuite for 5.8.3 and lower
Vincent Pit [Thu, 12 Feb 2009 00:17:54 +0000 (01:17 +0100)]
Fix the testsuite for 5.8.3 and lower

c78c1790ebe43372ca405385d4cc053121b53ba0 caused testsuite breakage for those old perls. It looks like this is due to a problem with the WEAKOUTSIDE status of the check blocks, and not from the magical callbacks themselves. Thus it's safe to work around the issue by moving some assignations inside the block.

15 years agoPrefer using VMG_OP_INFO_* constants in t/35-stash.t
Vincent Pit [Wed, 11 Feb 2009 23:23:12 +0000 (00:23 +0100)]
Prefer using VMG_OP_INFO_* constants in t/35-stash.t

15 years agofree magic isn't called for array values delete on 5.8.5 and lower
Vincent Pit [Wed, 11 Feb 2009 23:22:40 +0000 (00:22 +0100)]
free magic isn't called for array values delete on 5.8.5 and lower

15 years agoTest magic on symbol table in a new t/35-stash.t
Vincent Pit [Mon, 9 Feb 2009 17:20:54 +0000 (18:20 +0100)]
Test magic on symbol table in a new t/35-stash.t

15 years agoCarp is also a build dependency
Vincent Pit [Mon, 9 Feb 2009 16:16:46 +0000 (17:16 +0100)]
Carp is also a build dependency

15 years agoTest magic on array/hash elements
Vincent Pit [Mon, 9 Feb 2009 16:02:34 +0000 (17:02 +0100)]
Test magic on array/hash elements

15 years agoNote the op argument position in wizard() synopsys
Vincent Pit [Mon, 9 Feb 2009 15:47:43 +0000 (16:47 +0100)]
Note the op argument position in wizard() synopsys

15 years agoUse VMG_OP_INFO_* macros in the synopsys for op_info
Vincent Pit [Mon, 9 Feb 2009 00:34:13 +0000 (01:34 +0100)]
Use VMG_OP_INFO_* macros in the synopsys for op_info

15 years agoReally skip free callbacks during global destruction
Vincent Pit [Mon, 9 Feb 2009 00:07:02 +0000 (01:07 +0100)]
Really skip free callbacks during global destruction

15 years agoAdd compatibility macro for SvPV_const
Vincent Pit [Sun, 8 Feb 2009 23:44:08 +0000 (00:44 +0100)]
Add compatibility macro for SvPV_const

15 years agoGet current op information in magic callbacks
Vincent Pit [Sun, 8 Feb 2009 14:36:32 +0000 (15:36 +0100)]
Get current op information in magic callbacks

15 years agomPUSHi is no longer needed, but mPUSHu does
Vincent Pit [Sun, 8 Feb 2009 11:10:58 +0000 (12:10 +0100)]
mPUSHi is no longer needed, but mPUSHu does

15 years agoThis is 0.29 v0.29
Vincent Pit [Sun, 8 Feb 2009 11:06:33 +0000 (12:06 +0100)]
This is 0.29

15 years agoRequire perl 5.8
Vincent Pit [Sat, 7 Feb 2009 20:13:13 +0000 (21:13 +0100)]
Require perl 5.8

15 years agoUse recent ExtUtils::MakeMaker features to generate a better META.yml
Vincent Pit [Sat, 7 Feb 2009 20:11:52 +0000 (21:11 +0100)]
Use recent ExtUtils::MakeMaker features to generate a better META.yml

15 years agoSet $_[2] to the default length for len magic on scalars
Vincent Pit [Sat, 7 Feb 2009 12:10:52 +0000 (13:10 +0100)]
Set $_[2] to the default length for len magic on scalars

15 years agoAmend last change to make t/28-uvar.t pass again
Vincent Pit [Sat, 7 Feb 2009 11:29:05 +0000 (12:29 +0100)]
Amend last change to make t/28-uvar.t pass again

15 years agoTest description nit in t/28-uvar.t
Vincent Pit [Fri, 6 Feb 2009 20:54:51 +0000 (21:54 +0100)]
Test description nit in t/28-uvar.t

15 years agoDon't even define a CLONE sub when the module isn't thread safe
Vincent Pit [Thu, 29 Jan 2009 13:10:23 +0000 (14:10 +0100)]
Don't even define a CLONE sub when the module isn't thread safe

15 years agosv_mortalcopy() is more efficient than sv_2mortal(newSVsv())
Vincent Pit [Sun, 25 Jan 2009 19:56:30 +0000 (20:56 +0100)]
sv_mortalcopy() is more efficient than sv_2mortal(newSVsv())

15 years agoComment revamp in vmg_svt_free()
Vincent Pit [Sun, 25 Jan 2009 16:50:54 +0000 (17:50 +0100)]
Comment revamp in vmg_svt_free()

15 years agocount isn't used anymore in vmg_svt_len()
Vincent Pit [Sat, 24 Jan 2009 19:34:21 +0000 (20:34 +0100)]
count isn't used anymore in vmg_svt_len()

15 years agoMinor POD fix
Vincent Pit [Sat, 24 Jan 2009 19:17:03 +0000 (20:17 +0100)]
Minor POD fix

15 years agoA more reliable logic for turning off the GMAGICAL flag when no uvar magic is involved
Vincent Pit [Sat, 24 Jan 2009 19:14:31 +0000 (20:14 +0100)]
A more reliable logic for turning off the GMAGICAL flag when no uvar magic is involved

15 years agoThis is 0.28 v0.28
Vincent Pit [Sat, 24 Jan 2009 17:05:27 +0000 (18:05 +0100)]
This is 0.28

15 years agoTest uvar magic on tied hashes
Vincent Pit [Sat, 24 Jan 2009 16:56:08 +0000 (17:56 +0100)]
Test uvar magic on tied hashes

15 years agoFix segfaults when using get or uvar magic simultaneously with clear magic
Vincent Pit [Sat, 24 Jan 2009 16:36:13 +0000 (17:36 +0100)]
Fix segfaults when using get or uvar magic simultaneously with clear magic

15 years agoMore tests for t/31-array.t
Vincent Pit [Sat, 24 Jan 2009 15:08:56 +0000 (16:08 +0100)]
More tests for t/31-array.t

Including tests of exists and delete.

15 years agoDon't assign results in check blocks
Vincent Pit [Sat, 24 Jan 2009 15:06:26 +0000 (16:06 +0100)]
Don't assign results in check blocks

If the block croaks, the result won't be reset, which makes the interpretation of the test results more difficult. This requires check() to correctly forward scalar context to the block.

15 years agoShow copy_key in wizard()'s synopsys
Vincent Pit [Fri, 23 Jan 2009 23:01:58 +0000 (00:01 +0100)]
Show copy_key in wizard()'s synopsys

15 years agoBetter documentation for the values passed to the callbacks
Vincent Pit [Fri, 23 Jan 2009 22:57:29 +0000 (23:57 +0100)]
Better documentation for the values passed to the callbacks

15 years agoAllow editing the key SV in uvar callbacks by passing a new option 'copy_key'
Vincent Pit [Fri, 23 Jan 2009 22:26:31 +0000 (23:26 +0100)]
Allow editing the key SV in uvar callbacks by passing a new option 'copy_key'

15 years agoMake the benchmark a little more fair
Vincent Pit [Fri, 23 Jan 2009 21:15:03 +0000 (22:15 +0100)]
Make the benchmark a little more fair

15 years agoTest assigning to the key in an uvar callback
Vincent Pit [Fri, 23 Jan 2009 01:25:37 +0000 (02:25 +0100)]
Test assigning to the key in an uvar callback

15 years agoAlso test exists in t/32-hash.t
Vincent Pit [Fri, 23 Jan 2009 00:27:27 +0000 (01:27 +0100)]
Also test exists in t/32-hash.t

15 years agoReenable copy tests in t/32-hash.t as they are not the issue
Vincent Pit [Fri, 23 Jan 2009 00:23:14 +0000 (01:23 +0100)]
Reenable copy tests in t/32-hash.t as they are not the issue