| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: perl-Sub-HandlesVia | Distribution: openSUSE Tumbleweed |
| Version: 0.053005 | Vendor: openSUSE |
| Release: 1.2 | Build date: Thu Feb 5 07:16:42 2026 |
| Group: Unspecified | Build host: reproducible |
| Size: 599398 | Source RPM: perl-Sub-HandlesVia-0.053005-1.2.src.rpm |
| Packager: https://bugs.opensuse.org | |
| Url: https://metacpan.org/release/Sub-HandlesVia | |
| Summary: Alternative handles_via implementation | |
If you've used Moose's native attribute traits, or MooX::HandlesVia before, you should have a fairly good idea what this does. Why re-invent the wheel? Well, this is an implementation that should work okay with Moo, Moose, Mouse, and any other OO toolkit you throw at it. One ring to rule them all, so to speak. For details of how to use it, see the manual. * Sub::HandlesVia::Manual::WithMoo How to use Sub::HandlesVia with Moo and Moo::Role. * Sub::HandlesVia::Manual::WithMoose How to use Sub::HandlesVia with Moose and Moose::Role. * Sub::HandlesVia::Manual::WithMouse How to use Sub::HandlesVia with Mouse and Mouse::Role. * Sub::HandlesVia::Manual::WithMite How to use Sub::HandlesVia with Mite. * Sub::HandlesVia::Manual::WithClassTiny How to use Sub::HandlesVia with Class::Tiny. * Sub::HandlesVia::Manual::WithObjectPad How to use Sub::HandlesVia with Object::Pad classes. * Sub::HandlesVia::Manual::WithGeneric How to use Sub::HandlesVia with other OO toolkits, and hand-written Perl classes. Note: as Sub::HandlesVia needs to detect which toolkit you are using, and often needs to detect whether your package is a class or a role, it needs to be loaded _after_ Moo/Moose/Mouse/etc. Your 'use Moo' or 'use Moose::Role' or whatever needs to be _before_ your 'use Sub::HandlesVia'.
Artistic-1.0 OR GPL-1.0-or-later
* Thu Feb 05 2026 Tina Müller <timueller+perl@suse.de>
- updated to 0.053005
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
0.053005 2026-02-04
[ Test Suite ]
- Make t/99shvxs.t into an author-only test. Set the AUTHOR_TESTING
environment variable to true if you really want to run it.
0.053004 2026-02-01
[ Documentation ]
- Document exactly which methods may be accelerated by installing
Sub::HandlesVia::XS.
[ Other ]
- Added: Array:none.
- Added: XS implemention of Array:not_all_true.
0.053003 2026-01-31
- A lot of the array handlers which accepted a coderef which operated on
$_ would also pass $_ to the coderef in @_. There were no test cases for
this and it was undocumented (apart from for_each). This feature has
been removed (apart from for_each).
- Added: The new for_each2 array handler only makes the array element
available as $_, not in @_.
0.053002 2026-01-30
- Updated: Don't use Sub::HandlesVia::XS versions older than 0.002000 as
they are buggy.
- Use Sub::HandlesVia::XS for some Enum and String handlers.
0.053001 2026-01-28
[ Packaging ]
- Add Sub::HandlesVia::XS as a runtime recommends dependency.
[ Other ]
- Updated: Don't use Sub::HandlesVia::XS versions older than 0.001004 as
they are buggy.
0.053000 2026-01-28
- Added: Array:peek and Array:peekend.
- Added: Code generators can set a never_shift_self attribute to prevent
handlers from trying to shift the invocant off @_, which they sometimes
do for efficiency reasons.
- Use Sub::HandlesVia::XS when it is available. Currently only the Moo
handler uses it, and Sub::HandlesVia::XS only has implementations for
some Array-related methods. You can include no_SHVXS=>1 in an Moo
attribute definition if it's causing issues.
* Sat Nov 22 2025 Tina Müller <timueller+perl@suse.de>
- updated to 0.052000
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
0.052000 2025-11-21
[ Bug Fixes ]
- The Hash `exists` check was checking definedness. It now properly tests
slot existence.
<https://github.com/tobyink/p5-sub-handlesvia/issues/20>
[ Test Suite ]
- In Object::Pad tests, use the `field` keyword rather than deprecated
`has` keyword.
<https://github.com/tobyink/p5-sub-handlesvia/issues/17>
- Include tests for interaction with MooX::Tag::TO_HASH.
<https://github.com/tobyink/p5-sub-handlesvia/issues/14>
[ Other ]
- Use Class::Method::Modifiers to wrap Moo `has`.
<https://github.com/tobyink/p5-sub-handlesvia/issues/14>
- Use Class::Method::Modifiers to wrap Moo `has`.
<https://github.com/tobyink/p5-sub-handlesvia/issues/14>
0.050007 2025-11-15
[ Test Suite ]
- Some of the Corinna test cases accidentally required Moo.
<https://github.com/tobyink/p5-sub-handlesvia/issues/18>
0.050006 2025-11-10
[ Documentation ]
- Document usage with the Perl 5.38+ `class` keyword (Corinna).
[ Test Suite ]
- Test with Perl 5.38+ `class` keyword (Corinna).
0.050005 2025-11-10
- Bug fix for pathological case exposed by Hydrogen.
0.050004 2025-11-10
- Array:for_each, Hash:for_each_key, and Hash:for_each_value now support
$_.
* Tue Jul 15 2025 Tina Müller <timueller+perl@suse.de>
- updated to 0.050003
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
[ Other ]
- Added: ArrayRef:indexed.
- Added: Number:ceil and Number:floor.
- Added: Scalar:get and Scalar:set.
- Added: String:trim.
* Tue Apr 01 2025 Tina Müller <timueller+perl@suse.de>
- updated to 0.050002
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
0.050002 2025-03-23
[ SECURITY ]
- Fix: Rebuild using Mite 0.013000.
0.050001 2025-03-23
[ Documentation ]
- Update documentation which is out of date due to Object::Pad dropping
the `has` keyword.
[ Other ]
- Updated: Fix test cases which failed due to Object::Pad dropping the
`has` keyword.
- Updated: Fix test cases which will fail due to changed error messages in
next release of Type::Tiny.
* Thu Apr 06 2023 Tina Müller <timueller+perl@suse.de>
- updated to 0.050000
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
0.050000 2023-04-05
[ Documentation ]
- Add a few missing references to the
Sub::HandlesVia::HandlerLibrary::Enum module to the documentation.
- Mention potential load-order bugs when importing multiple extensions for
Moo into the same package.
- Update Sub::HandlesVia::Manual::Comparison.
[ Packaging ]
- Change versioning scheme.
* Sat Dec 17 2022 Tina Müller <timueller+perl@suse.de>
- updated to 0.046
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
0.046 2022-12-16
- Added: Sub::HandlesVia::HandlerLibrary::Enum module.
- Handler libraries can now provide constants for shortcuts.
- Updated: Rebuild with latest Mite.
* Wed Nov 09 2022 Tina Müller <timueller+perl@suse.de>
- updated to 0.045
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
0.045 2022-11-08
[ Bug Fixes ]
- Fix for `with qw(Role1 Role2)` in Moose where at least one role uses
Sub::HandlesVia.
Bartosz Jarzyna++
<https://github.com/tobyink/p5-sub-handlesvia/issues/6>
- Support attributes declared with `has '+name'`.
Bartosz Jarzyna++
<https://github.com/tobyink/p5-sub-handlesvia/issues/7>
[ Documentation ]
- Document that `with qw(Role1 Role2)` in Mouse is currently broken if
either role uses Sub::HandlesVia.
<https://github.com/tobyink/p5-sub-handlesvia/issues/9>
[ Test Suite ]
- Test that `with qw(Role1 Role2)` in Moo works if either role uses
Sub::HandlesVia.
[ Other ]
- Added: Add a `generator_for_prelude` attribute to
Sub::HandlesVia::CodeGenerator.
<https://github.com/tobyink/p5-sub-handlesvia/issues/8>
* Tue Nov 01 2022 Tina Müller <timueller+perl@suse.de>
- updated to 0.044
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
0.044 2022-10-31
[ Documentation ]
- Moved a lot of pod out of Sub::HandlesVia and into
Sub::HandlesVia::Manual::*.
0.043 2022-10-31
- Added: Sub::HandlesVia::HandlerLibrary methods: handler_names,
has_handler, and get_handler.
- Added: Sub::HandlesVia::HandlerLibrary::Blessed.
0.042 2022-10-30
- Added: Sub::HandlesVia::Declare for compile-time declaration of
Sub::HandlesVia delegations.
- Improved support for Object::Pad, including support for non-scalar
fields.
0.041 2022-10-29
- Added: Experimental support for Object::Pad.
0.040 2022-10-27
[ Bug Fixes ]
- Stricter detection of Moo::Role roles to prevent some false positives
when given Mouse::Role and Moose::Role roles.
Bartosz Jarzyna++
[ Test Suite ]
- Add a test using Sub::HandlesVia when Beam::Wire is loaded.
Bartosz Jarzyna++
0.039 2022-10-26
[ Bug Fixes ]
- Fix application of Sub::HandlesVia Moose/Mouse traits to metaobjects
that have other traits applied to them.
Bartosz Jarzyna++
[ Test Suite ]
- Mite has supported Perl 5.8.x for a while now, so Mite-related tests
shouldn't be restricted to running on Perl 5.10.1+.
0.038 2022-10-21
[ Documentation ]
- Minor changes to documentation for Hash:accessor and Array:accessor.
* Tue Sep 27 2022 Tina Müller <timueller+perl@suse.de>
- updated to 0.037
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
0.037 2022-09-26
[ Bug Fixes ]
- Fix test case broken by Type::Tiny v2.
Peter Mottram++
- Hash:set shouldn't hardcode use of Carp::croak. Instead a CodeGenerator
should decide how to deal with error messages.
* Sat Aug 27 2022 Tina Müller <timueller+perl@suse.de>
- updated to 0.036
see /usr/share/doc/packages/perl-Sub-HandlesVia/Changes
0.036 2022-08-26
[ Bug Fixes ]
- Fix integration issues with newer versions of Mite.
[ Documentation ]
- Examples for a few methods.
- More tests for a few methods.
[ Other ]
- Added: Add a delete_where method for hashes.
- Added: Add execute_list, execute_scalar, execute_void, and corresponding
_method variants for coderefs.
- Added: The flatten_deep, natatime, and first_index methods for arrayrefs
no longer use callbacks.
/usr/lib/perl5/vendor_perl/5.42.0/Sub /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/CodeGenerator.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/CodeGenerator.pm.mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Declare.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Handler.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Handler.pm.mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Array.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Array.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Blessed.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Bool.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Bool.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Code.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Code.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Counter.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Counter.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Enum.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Hash.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Hash.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Number.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Number.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Scalar.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/Scalar.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/String.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/HandlerLibrary/String.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/Advanced.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/Comparison.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/WithClassTiny.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/WithCorinna.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/WithGeneric.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/WithMite.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/WithMoo.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/WithMoose.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/WithMouse.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Manual/WithObjectPad.pod /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit.pm.mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Mite.pm.mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Moo.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Moo.pm.mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Moose.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Moose.pm.mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Mouse.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Mouse.pm.mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/ObjectPad.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/ObjectPad.pm.mite.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Plain.pm /usr/lib/perl5/vendor_perl/5.42.0/Sub/HandlesVia/Toolkit/Plain.pm.mite.pm /usr/share/doc/packages/perl-Sub-HandlesVia /usr/share/doc/packages/perl-Sub-HandlesVia/COPYRIGHT /usr/share/doc/packages/perl-Sub-HandlesVia/CREDITS /usr/share/doc/packages/perl-Sub-HandlesVia/Changes /usr/share/doc/packages/perl-Sub-HandlesVia/README /usr/share/doc/packages/perl-Sub-HandlesVia/doap.ttl /usr/share/licenses/perl-Sub-HandlesVia /usr/share/licenses/perl-Sub-HandlesVia/LICENSE /usr/share/man/man3/Sub::HandlesVia.3pm.gz /usr/share/man/man3/Sub::HandlesVia::CodeGenerator.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Declare.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Handler.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::Array.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::Blessed.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::Bool.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::Code.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::Counter.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::Enum.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::Hash.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::Number.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::Scalar.3pm.gz /usr/share/man/man3/Sub::HandlesVia::HandlerLibrary::String.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::Advanced.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::Comparison.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::WithClassTiny.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::WithCorinna.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::WithGeneric.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::WithMite.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::WithMoo.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::WithMoose.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::WithMouse.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Manual::WithObjectPad.3pm.gz /usr/share/man/man3/Sub::HandlesVia::Toolkit.3pm.gz
Generated by rpm2html 1.8.1
Fabrice Bellet, Tue Apr 21 22:23:10 2026