Skip Menu |

This queue is for tickets about the POE CPAN distribution.

Report information
The Basics
Id: 22633
Status: resolved
Priority: 0/
Queue: POE

People
Owner: Nobody in particular
Requestors: nperez [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.38
Fixed in: (no value)



Subject: Filter::Stackable needs to be ESS-EM-ARE-TEE
Filter::Stackable should determine if an applied Filter implements the Filter API rather than simply relying upon isa()
I think the debugging help isn't worth the extra runtime checks. This is going to fail early and with certainty, and it's not hard to figure the problem's cause. Sorry for suggesting that you make this a ticket; I wasn't really thinking about it at the time.
Subject: Re: [rt.cpan.org #22633] Filter::Stackable needs to be ESS-EM-ARE-TEE
Date: Mon, 30 Oct 2006 09:47:39 -0600
To: bug-POE [...] rt.cpan.org
From: "Nicholas Perez" <nicholasrperez [...] gmail.com>
That's fine. I just look at it from a Filter author perspective. I had a bug submitted against mine regarding this. The API was implemented, I just didn't subclass. If you aren't going to add the checks I would at least recommend making a documentation change to the POE::Filter POD that makes a point of subclassing instead of "These methods are the generic Filter interface, and every filter must implement them. Specific filters may have additional methods." which tells me, a Filter author, that subclassing isn't required. Also, Wheels don't do this checking, and maybe they should. If Filter::Stackable is going to require POE::Filter subclassed references then it should be consistent across the board. On 10/30/06, via RT <bug-POE@rt.cpan.org> wrote: Show quoted text
> > <URL: http://rt.cpan.org/Ticket/Display.html?id=22633 > > > I think the debugging help isn't worth the extra runtime checks. This > is going to fail early and with certainty, and it's not hard to figure > the problem's cause. > > Sorry for suggesting that you make this a ticket; I wasn't really > thinking about it at the time. >
Removed the isa() check from POE::Filter::Stackable, and amended the PUBLIC FILTER METHODS documentation to read: These methods are the generic Filter interface, and every filter must implement them or inherit them from this base class. Specific filters may have additional methods. Thanks!