make: targets for building packages for ubuntu yakkety
Ubuntu 16.10 Yakkety Yak is out. Let's support it.
util: put compression code next to each other
ctxmanager was injecting itself between the compression and
decompression code. Let's restore some order.
hgweb: make log streams compatible with command server
Even though it would be useless to start a web server by a command server,
it should be doable in principle. Also, we can't use sys.stdout/err directly
on Python 3 because they are unicode streams.
cmdserver: write channel header and payload by a single write() call
This makes a channeledoutput thread-safe as long as the underlying fwrite() is
thread-safe. Both POSIX and Windows implementations are documented as MT-safe.
MT-safety is necessary to use ui.fout and ui.ferr in hgweb.
histedit: use ui.fin to read commands from stdin
stdin is wrapped by channeledinput in command-server session.
convert: have debugsvnlog obtain standard streams from ui
This will help porting to Python 3, where sys.stdin/out/err are unfortunately
unicode streams so we can't use them directly.
convert: remove superfluous setbinary() calls from debugsvnlog
a3fe91b4f6eb made standard streams set to binary mode globally.
tests: explicitly use ls profiler
In preparation for making the statprof profiler the default.
statprof: pass data structure to display functions
Currently, statprof maintains a global "state" variable that is used by
several functions. Global variables hinder adaptability of code.
So pass state to display functions so we can make changes to how
"state" works in future patches.