| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a Makefile.PL for Attribute-Handlers in core so that it can be
maintained properly. This avoids the need for an external repo to
maintain these extra files.
Taken from Attribute-Handlers-0.99, with the following modifications:
- install in site, not perl
- Fix license, and don't try to handle ancient perl or EUMM versions
- update metadata URLs
- no indexing demo directory
|
|
|
|
|
|
|
| |
This makes the logic a bit simpler, and makes it easier to debug
as well. Reducing the amount of code that needs to be inside
the eval makes it easier to debug what is going on, especially
from an internals point of view (eg with -Dl enabled).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some modules using Attribute::Handlers autotie feature have their own
import method. When injecting an import method, attempt to wrap anything
that exists, either in the class directly or in a parent class.
We can't detect parent classes at injection time, because @ISA may
change, and this is actually common since users of Exporter will add it
as a parent class at module runtime, while Attribute::Handlers injection
would happen first during compilation.
A better approach could involve using next::can from mro, but that also
requires Sub::Util::set_subname, and Attribute::Handlers is dual life
and currently supports 5.6.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Attribute::Handlers supports a __CALLER__ token when declaring autotie
attributes. This is meant to create the attribute in the caller of the
class it is used in. The only reliable way for this to work requires
creating an import method in the calling class. Instead,
Attribute::Handlers was trying to walk up the call stack from when its
own import would be called. This used to partially work, at least enough
to be deceptive. Checking the caller deeper in the call stack of
Attribute::Handlers would allow the __CALLER__ attribute to work only
for the first time the module using it was called. Any future users
would not re-compile the module, so they would not re-invoke
Attribute::Handlers' import method, and would not get the autotie
attribute defined.
This attempt to find the caller's caller also started failing as of
f6387cff9cb31db4cf18c8641917ea4639ac2b65.
Fix the handling of __CALLER__ by creating an import method in the
caller if it is used, so that users of the calling module will reliably
get the attribute defined.
|
|
|
|
| |
..as the comment next to the $VERSION declaration reminds us to do
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Using vars pragma is discouraged and has been superseded
by 'our' declarations available in Perl v5.6.0 or later.
Additionally using 'vars' pragma increase the memory consumption of a
program by about 700 kB for no good reason.
This commit is about replacing the usage of 'vars' pragma
by 'our' in blead where it makes sense. ( leaving 'cpan' directory
outside of the scope )
-- using vars
perl -e 'use vars qw(@ISA $AUTOLOAD $VERSION); print qx{grep RSS /proc/$$/status} '
VmRSS: 2588 kB
-- using our instead
perl -e 'our (@ISA, $AUTOLOAD, $VERSION); print qx{grep RSS /proc/$$/status} '
VmRSS: 1864 kB
|
|
|
|
| |
It's been a no-op since 5.10 and deprecated since 5.12.
|
|
|
|
|
|
|
|
|
| |
It's been deprecated and a no-op since 5.10.
Move :unique test into it own file so it can be skipped separately
Merely parsing an unknown attribute fails, so the skip has to happen
at BEGIN time.
|
|
|
|
| |
...because of CPAN release to get blead code on CPAN
|
| |
|
| |
|
|
|
|
| |
It was making unreliable assumptions about the contents of stashes.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Committer's note: Add dist/Attribute-Handlers/demo/MyClass.pm to list of
files whose $VERSION numbers do not have to be incremented when modified.
Since this file is found in a 'demo/' directory, it does not have to be
treated as if it were a real Perl library which happens to be shipping
with core.
For: RT #119365
|
|
|
|
| |
Bump $VERSION.
|
|
|
|
|
| |
These were all uncovered by the new Pod::Checker, not yet in core.
Fixing these will speed up debugging the new Checker.
|
|
|
|
|
|
| |
In case you wonder why I think the README has no place in core while the
Changelog does, then consider the amount of unique information in an
auto-generated README file.
|
|
|
|
| |
It's really rather superfluous.
|
| |
|
| |
|
|
|
|
|
|
| |
This commit re-indents the code examples in Attribute::Handlers
to make things more consistent overall and to prevent long lines
from wrapping in 80-column terminals.
|
|
|
|
|
|
| |
... to match the CPAN version.
No functional changes.
|
| |
|
|
|
|
| |
release
|
| |
|
|
|
|
|
|
|
| |
[DELTA]
0.88 Mon Apr 5 16:33:00 CET 2010
- Avoid clobbering $_ (perl #74052, LanX)
|
|
|