./devel/p5-Role-Tiny, Roles. Like a nouvelle cuisine portion size slice of Moose

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 2.002004nb4, Package name: p5-Role-Tiny-2.002004nb4, Maintainer: pkgsrc-users

Role::Tiny is a minimalist role composition tool.

ROLE COMPOSITION

Role composition can be thought of as much more clever and meaningful
multiple inheritance. The basics of this implementation of roles is:

* If a method is already defined on a class, that method will not be
composed in from the role.
* If a method that the role "requires" to be implemented is not
implemented, role application will fail loudly.

Unlike Class::C3, where the last class inherited from "wins," role
composition is the other way around, where the class wins. If multiple
roles are applied in a single call (single with statement), then if any
of their provided methods clash, an exception is raised unless the class
provides a method since this conflict indicates a potential problem.


Required to run:
[lang/perl5]

Required to build:
[devel/p5-Test-Fatal] [pkgtools/cwrappers]

Master sites: (Expand)

Filesize: 35.098 KB

Version history: (Expand)


CVS history: (Expand)


   2024-11-16 13:08:07 by Thomas Klausner | Files touched by this commit (2504)
Log message:
*: recursive bump for perl 5.40
   2023-07-06 11:43:03 by Thomas Klausner | Files touched by this commit (2483)
Log message:
*: recursive bump for perl 5.38
   2023-06-06 14:42:56 by Taylor R Campbell | Files touched by this commit (1319)
Log message:
Mass-change BUILD_DEPENDS to TOOL_DEPENDS outside mk/.

Almost all uses, if not all of them, are wrong, according to the
semantics of BUILD_DEPENDS (packages built for target available for
use _by_ tools at build-time) and TOOL_DEPEPNDS (packages built for
host available for use _as_ tools at build-time).

No change to BUILD_DEPENDS as used correctly inside buildlink3.

As proposed on tech-pkg:
https://mail-index.netbsd.org/tech-pkg/2023/06/03/msg027632.html
   2022-06-28 13:38:00 by Thomas Klausner | Files touched by this commit (3952)
Log message:
*: recursive bump for perl 5.36
   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2021-05-24 21:56:06 by Thomas Klausner | Files touched by this commit (3575)
Log message:
*: recursive bump for perl 5.34
   2021-04-26 16:44:44 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
p5-Role-Tiny: update to 2.002004.

2.002004 - 2021-01-24
  - restore requiring base class when using create_class_with_roles, which was
    accidentally lost in 2.002_000 (RT#134075)

2.002003 - 2021-01-11
  - set dynamic_config to 0 and x_static_install to 1
  - fixed filenames in dependents author test to not use colons
  - removed MRO::Compat from prereqs as it is no longer used
  - marked Class::Method::Modifiers as a hard developer dependency rather than
    a recommended developer dependency
  - rewrote test for namespace cleaning to not require namespace::clean, and
    moved it from an author test to a normal test
  - removed namespace::autoclean from developer prereqs

2.002_002 - 2021-01-03
  - refactored some internals for subclasses to use
  - methods_provided_by will ensure the module is loaded before checking for
    methods

2.002_001 - 2020-12-27
  - fix tests when Class::Method::Modifiers is not installed

2.002_000 - 2020-12-23
  - Refactored create_class_with_roles to not use "composable \ 
packages". This
    was an optimization for when a role is used in many different uses of
    create_class_with_roles, but required an entirely separate implementation,
    which did not have fully compatible behavior. It would also result in
    methods using modifiers being slower.
  - Add documentation for what methods will be composed from a role
    (RT#133363)
  - Fix backwards compatibility with older versions of Moo when interacting
    with Moose.
  - Treat modifiers as required methods during create_class_with_roles.
  - Fixed methods being no longer composed after they participated in an
    allowed conflict.
  - Dropped use of MRO::Compat.
  - Test cleanups for checking requires during create_class_with_roles.
  - Additional tests to confirm internal role application steps can be fully
    qualified.
  - Fix Pod links to Class::Method::Modifiers
  - Tweaks to author tests
  - Additional tests for working with older Moo versions
  - Additional tests for module loading
  - Allow method modifiers to be specified with an array reference of method
    names, rather than a list. This now matches how the corresponding
    Class::Method::Modifiers subs can be called.