poe Log


Commit Date  
[524873] by Rocco Caputo Rocco Caputo

!!! CATCH_EXCEPTIONS revamp.

May be slightly backwards incompatible. I expect more good to come
from it than harm.

POE should hide error messages less often. Its usage of eval() and
propagation of exceptions have been simplified somewhat.

!!! This change reverses POE's stance on user-defined $SIG{__DIE__}
handlers. Now they are honored inside event handlers. Code that does
this is expected to know what it's doing. Perl's global special
variables, including %SIG, have spooky action at a distance.

Modifying $SIG{__DIE__} locally shouldn't cause any problems. The
original value will be restored at the end of the local scope.

I changed this because reasons:

1. Silent side effects suck. Previously, POE would silently overrule
global changes to $SIG{__DIE__}. This change makes things a little
more comprehensible.

2. $SIG{__DIE__} handlers are very useful for logging and debugging.
Setting them should be permissible.

3. If CATCH_EXCEPTIONS is on, and $SIG{__DIE__} is redefined in an
event handler, the programmer is told about the potential side
effects. This is an experimental warning and is subject to change
more than most things.

4. Error messages were being hidden at work, and it was confounding
development.

2013-09-05 22:52:13 Tree
[bae8c6] by Rocco Caputo Rocco Caputo

Switch some signal regression tests from ok() to is() for more detailed failures.

2013-09-05 22:21:47 Tree
[177958] by Rocco Caputo Rocco Caputo

Remove some redundant C<no strict 'refs'>.

2013-09-05 19:23:52 Tree
[254205] by Rocco Caputo Rocco Caputo

Refactor _dispatch_event(), extracting _dispatch_signal_event().

_dispatch_event() was rather large, and there was an isolated section
for recursive signal dispatch. That has been extracted into its own
method, _dispatch_signal_event() so the basic event dispatcher can be
smaller and more focused. This should make it easier to improve
exception handling in _dispatch_event().

2013-09-05 18:40:20 Tree
[e2ea58] by Rocco Caputo Rocco Caputo

Make _trap(), _warn(), etc. a little more consistent.

Put the process ID at the start of every line of error messages,
rather than just the beginning of the first line. We deal with
subprocesses a lot at work, and this helps tease apart interleaved
messages.

2013-09-05 18:38:20 Tree
[b81728] by Rocco Caputo Rocco Caputo

Fail better if asked to serialize a non-reference.

A component was trying to serialize undef() rather than a reference to
something undefined. It was causing failure attributed to this
filter, rather than the user. Now there's a stack trace to help
spread the blame.

2013-09-05 18:36:12 Tree
[eeadb7] by Rocco Caputo Rocco Caputo

Add David Webb's regression test to the MANIFEST.

2013-08-28 00:47:56 Tree
[6e15f6] by Rocco Caputo Rocco Caputo

Merge pull request #13 from dmw397/master

Fixes a race condition in POE::Wheel::FollowTail where input may not appear even though it's been buffered.

2013-08-27 23:19:17 Tree
[bf5554] by David Webb David Webb

Fix read bug in select based polling loop

FollowTail does not trigger multiple input events when multiple lines
are written to the followed file at the same time.

2013-08-26 16:26:11 Tree
[35e779] (v1_356) by Rocco Caputo Rocco Caputo

Another day, another release. Or at least another four hours. Bump version.

2013-08-20 20:36:06 Tree
[b81670] by Rocco Caputo Rocco Caputo

[rt.cpan.org 1648] Tk may also tie STDIN to an object.

Tied file handles must be untied before they can be redirected.
Otherwise, as in the case of Tk-wrapped handles, there's no OPEN()
implementation, and the redirection fails.

2013-08-20 20:27:22 Tree
[de91fb] by Rocco Caputo Rocco Caputo

Remove trailing whitespace.

2013-08-20 20:19:21 Tree
[5282c8] by Rocco Caputo Rocco Caputo

I think it should be _filespec_to_fh() since it returns a handle.

2013-08-20 20:17:47 Tree
[e408a8] (v1_355) by Rocco Caputo Rocco Caputo

Bump version and dependencies for release.

2013-08-20 17:23:05 Tree
[012098] by Rocco Caputo Rocco Caputo

[rt.cpan.org 87931] Redo _data_ev_adjust in terms of peek_items().

We can't add to the POE::Queue API without breaking third-party
extensions. This takes the performance hit to avoid breaking other
CPAN modules.

2013-08-19 22:39:56 Tree
[810cba] by Rocco Caputo Rocco Caputo

[rt.cpan.org 87928] POE::Queue::Array didn't need POE::Resource::Clock?

2013-08-19 21:32:28 Tree
[dea874] by Rocco Caputo Rocco Caputo

Skip POD::Coverage checks for POE::Pipe::OneWay and TwoWay.

The documentation has been replaced by deprecations. POD coverage is
moot.

2013-08-19 07:51:46 Tree
[deccbf] by Rocco Caputo Rocco Caputo

Remove unused code from POE::Resource::Clock.

A number of functions aren't being used. More are only being used
privately within the module. Comment out some of the unused ones
(more dead code checking is needed). Add leading underscores to the
private ones.

2013-08-19 07:50:06 Tree
[9c34ae] by Rocco Caputo Rocco Caputo

Make a new POE::Queue::Array method private.

It's currently experimental, and it currently breaks other event queue
nimplementations, so it has to go. Making it private will temporarily
reduce temptation to use it, and it helps the POD coverage tests pass.

2013-08-19 07:47:48 Tree
[bcf5d4] by Joseph Huckaby Joseph Huckaby , pushed by Rocco Caputo Rocco Caputo

[rt.cpan.org 87922] Don't crash when ClientPreConnect returns undef.

ClientPreConnect should be allowed to return an undefined value to
abort the client connection. Instead, it caused PoCo::Server::TCP to
crash. This change catches that condition.

2013-08-19 05:04:45 Tree
[f42a26] by Nicko Dehaine Nicko Dehaine , pushed by Rocco Caputo Rocco Caputo

[rt.cpan.org 87721] Clear $! in Driver::SysRW::flush().

Nothing prevents the user from calling flush() when there is nothing
to flush. In these cases, $! remained unchanged, which could lead to
detection of false error conditions. This change clears $! to avoid
the problem.

2013-08-19 04:03:29 Tree
[4e7961] by Markus Müller Markus Müller , pushed by Rocco Caputo Rocco Caputo

[rt.cpan.org 87635] Fix PoCo::Client::TCP "Connected" event w/watermarks.

If you use watermarks, the Connected Event will not get triggert
because of a wrong return. This change corrects that.

2013-08-19 01:52:36 Tree
[7bce20] by Rocco Caputo Rocco Caputo

Eliminate an uninitialized value warning in the tests.

2013-08-18 08:44:12 Tree
[cb8a94] by Rocco Caputo Rocco Caputo

Add t/10_units/05_filters/51_reference_die.t to MANIFEST.

2013-08-18 07:35:25 Tree
[b07d2c] by Rocco Caputo Rocco Caputo

Replace POE::Pipe::* guts with IO::Pipely.

This change doesn't change the way POE or its tests use POE::Pipe::*.
All tests pass in my development environment, so I expect no obvious
problems using IO::Pipely.

2013-08-18 07:32:45 Tree
Older >