Fedora EPEL 6 Update: perl-Devel-EnforceEncapsulation-0.50-3.el6

updates at fedoraproject.org updates at fedoraproject.org
Tue May 10 18:58:16 UTC 2011


--------------------------------------------------------------------------------
Fedora EPEL Update Notification
FEDORA-EPEL-2011-3157
2011-04-25 18:35:46
--------------------------------------------------------------------------------

Name        : perl-Devel-EnforceEncapsulation
Product     : Fedora EPEL 6
Version     : 0.50
Release     : 3.el6
URL         : http://search.cpan.org/dist/Devel-EnforceEncapsulation/
Summary     : Find access violations to blessed objects
Description :
Encapsulation is the practice of creating subroutines to access the properties
of a class instead of accessing those properties directly. The advantage of
good encapsulation is that the author is permitted to change the internal
implementation of a class without breaking its usage.

Object-oriented programming in Perl is most commonly implemented via blessed
hashes. This practice makes it easy for users of a class to violate
encapsulation by simply accessing the hash values directly. Although less
common, the same applies to classes implemented via blessed arrays, scalars,
filehandles, etc.

This module is a hack to block those direct accesses. If you try to access a
hash value of an object from its own class, or a superclass or subclass, all
goes well. If you try to access a hash value from any other package, an
exception is thrown. The same applies to the scalar value of a blessed scalar,
entry in a blessed array, etc.

To be clear: this class is NOT intended for strict enforcement of
encapsulation. If you want bullet-proof encapsulation, use inside-out objects
or the like. Instead, this module is intended to be a development or debugging
aid in catching places where direct access is used against classes implemented
as blessed hashes.

To repeat: the encapsulation enforced here is a hack and is easily
circumvented. Please use this module for good (finding bugs), not evil (making
life harder for downstream developers).

--------------------------------------------------------------------------------
Update Information:

This is the first Fedora/EPEL release of perl-Devel-EnforceEncapsulation.
--------------------------------------------------------------------------------
References:

  [ 1 ] Bug #695281 - Review Request: perl-Devel-EnforceEncapsulation - Find access violations to blessed objects
        https://bugzilla.redhat.com/show_bug.cgi?id=695281
--------------------------------------------------------------------------------

This update can be installed with the "yum" update programs.  Use
su -c 'yum update perl-Devel-EnforceEncapsulation' at the command line.
For more information, refer to "Managing Software with yum",
available at http://docs.fedoraproject.org/yum/.

All packages are signed with the Fedora EPEL GPG key.  More details on the
GPG keys used by the Fedora Project can be found at
https://fedoraproject.org/keys
--------------------------------------------------------------------------------


More information about the epel-package-announce mailing list