Stream.set_protocol() was updated to break the reference on the previous
protocol, to encourage a crash should an old protocol continue operating
after it's not supposed to be active any more.
That broke DelimitedProtocol's protocol switching functionality.
Given a message sent on "ssh.foo" to "mypkg.mymod", instead of logging
it to "mitogen.ctx.ssh.foo" in the master process, with the message
prefixed with the original logger name, instead log it to
"mypkg.mymod.[ssh.foo]", permitting normal logging package filtering
features to work as they usually do.
This also helps tidy up logging output a little bit.
It's no longer necessary, since connection attempts are no longer truly
blocking. When CTRL+C is hit in the top-level process, broker will begin
shutdown, which will cancel all pending connection attempts, causing
pool threads to wake. The pool can't block during shutdown anymore.
* origin/osx-ci-fixes:
issue #573: guard against a forked top-level Ansible process
[linear2] simplify ClassicWorkerModel and fix repeat initialization
issue #549 / [stream-refactor]: fix close/poller deregister crash on OSX
issue #549: skip Docker tests if Docker is unavailable
issue #549: remove Linux-specific assumptions from create_child_test
issue #549: fix setrlimit() crash and hard-wire OS X default
"self.initialized = False" slipped in a few days ago, on second thoughts
that flag is not needed at all, by simply rearranging ClassicWorkerModel
to have a regular constructor.
This hierarchy is still squishy, it needs more love. Remaining
MuxProcess class attributes should eliminated.
* origin/unienv:
docs: update Changelog.
issue #600: /etc/environment may be non-ASCII in an unknown encoding
docs: finished Changelog locking note
Fix for sample in doc
docs: break out install_app.py and fix API use.