* 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.
* origin/549-open-files:
issue #603: Revert "ci: update to Ansible 2.8.3"
Fix unit_Test.ClientTest following 108015aa22
service: clean up log messages, especially at shutdown
remove unused imports flagged by lgtm
[linear2]: merge fallout flaggged by LGTM
issue #549: docs: update Changelog
issue #549: increase open file limit automatically if possible
ansible: improve process.py docs
docs: remove old list link.
docs: migrate email list
docs: changelog tweaks
parent: decode logged stdout as UTF-8.
scripts: import affin.sh
ci: update to Ansible 2.8.3
tests: terraform tweaks
unix: include more IO in the try/except for connection failure
tests: update gcloud.py to match terraform config
tests: hide ugly error during Ansible tests
tests/ansible/gcloud: terraform conf for load testing
ansible: gracefully handle failure to connect to MuxProcess
ansible: fix affinity tests for 5ae45f6612390bbc888b65964fb5c218feed1679
ansible: pin per-CPU muxes to their corresponding CPU
ansible: reap mux processes on shut down
While catching every possible case where "open file limit exceeded" is
not possible, we can at least increase the soft limit to the available
hard limit without any user effort.
Do this in Ansible top-level process, even though we probably only need
it in the MuxProcess. It seems there is no reason this could hurt
Previously we exitted without calling waitpid(), which meant the
top-level process struct rusage did not reflect the resource usage
consumed by the multiplexer processes.
Existing benchmarks are made using perf so this never created a problem,
but it could be confusing to others using the "time" command, and also
allows logging the final exit status of the process.
* origin/543-darwin-ansible-ci:
issue #543: install virtualenv for Azure
issue #543: dumb fix for file vs. stat :(
issue #543: disable host key checking
issue #543: create ~/.ssh if it doesn't exist
issue #543: Hide Mitogen test users from gdm
issue #543: skip test that's hard to do on Mac
issue #543: use key from Git, newer ssh-keygen unsupported by Paramiko
image_prep: ensure Mac users can SSH without manual intervention
issue #543: make localhost_ansible_tests run locally
issue #543: add Ansible job to Azure matrix
issue #543: localhost_ansible scripts.
* origin/linear2:
[linear2] fix another test relying on Connection.parent
[linear2] more merge fallout, fix Connection._mitogen_reset(mode=)
[linear2] update mitogen_get_stack for new _build_stack() return value
[linear2] fix mitogen_shutdown_all service context access
docs: changelog concision / additions
add 363 to changelog
docs: update Changelog
docs: note fd usage has halved
docs: more stream-refactor work
docs: update Changelog for stream-refactor.
docs: Add lineinfile bug to changelog.
[linear2] fix MuxProcess test fixture and some merge fallout
service: avoid taking another lock in the usual case
service: don't acquire lock when pool already initialized
profiler: marginal improvements
core: ensure 'exit' signal fires even on Broker crash.
core: wake Waker outside of lock.
core: wake Latch outside of lock.
core: remove old blocking call guard, it's in the wrong place
Make setting affinity optional.
ansible: abstract worker process model.
[stream-refactor] parent: fix crash on graceful shutdown
parent: tidy up create_socketpair()
core: more concise Side.repr.