All notable changes to this project will be documented in this file. This project endeavours to adhere to Semantic Versioning.
- CHANGED: You can use the
PROCFILE
OS environment variable to configure the name of the Procfile. - CHANGED: Python 3.6 and 3.7 are no longer supported environments.
- CHANGED: Python 3.11, 3.12, 3.13 are now supported environments. Thank you to Jace Browning and Marco Carvalho who each submitted fixes to enable this.
- CHANGED: PyPy 3.7 and 3.8 are no longer supported environments.
- CHANGED: PyPy 3.9, 3.10 are now supported environments.
- FIXED: The systemd exporter now correctly sets
Wants
for the process group master targets. Thank you to Dan Berg for the fix. - CHANGED: The systemd exporter sets
WantedBy=multi-user.target
for individual services so that they start automatically on most systems. Processes also log to thejournal
by default. Thank you to Dan Berg for the contributions.
Thank you also to the following for contributions improving Honcho's documentation: @timgates42, @rafrafek, @sblondon, and @Bernardoow.
- ADDED: Honcho can now export to a set of systemd unit files. Thanks to Matt Melquiond for contributing the systemd exporter.
- ADDED:
python -m honcho
now works identically tohoncho
. - CHANGED: Dash (
-
) is now an allowed character in process types (thanks to Ben Spaulding). - CHANGED: Honcho no longer opens a new console for every process on Windows. Thank you to Benedikt Arnold for contributing the fix.
- CHANGED: Python versions 3.6 through 3.10 are now supported environments.
- CHANGED: Python 3.4 and 3.5 are no longer supported environments.
- FIXED:
--no-colour
and--no-prefix
now work whether specified before or after the command. - FIXED: Honcho on Python 3.8 will no longer issue a
RuntimeWarning
about line buffering not being supported in binary mode.
- FIXED: This release is identical to 1.0.0, but will be GPG-signed and uploaded with twine <https://pypi.python.org/pypi/twine> to ensure it has correct PyPI metadata.
- ADDED: Automatically suppress colouring when the STDOUT is not a TTY.
- ADDED: Honcho now exposes a HONCHO_PROCESS_NAME environment variable to its
child processes which contains the name of the process (e.g.
web.1
,worker.2
, etc.) - ADDED: All subcommands now support
--no-colour
and--no-prefix
options to suppress ANSI coloured output and the logging prefix, respectively. - CHANGED: The Upstart configuration generated by the Upstart exporter no longer creates a log directory to which to send process output, in favour of relying on Upstart's built-in job logging support (present since at least Upstart 1.4).
- FIXED: Honcho now correctly pays attention to the
-f
argument when provided before a command, fixing a regression introduced in the previous version. Thanks to Marc Krull for reporting and fixing.
- ADDED: Honcho can now export to a runit service directory.
- ADDED: You can now specify the location of the Procfile with a
PROCFILE
environment variable. - ADDED: Python 3.5 is now a supported environment.
- CHANGED: Python 3.0, 3.1, and 3.2 are no longer supported environments.
- FIXED: The
run
command now correctly parses commands which include the--
"end of arguments" separator. - FIXED: Honcho no longer fails to load
.env
files if the Procfile is not in the application directory. - FIXED: ANSI colour codes from running programs can no longer interfere with Honcho's output.
- FIXED: Export of environment variables containing special characters no longer breaks the Upstart exporter.
- FIXED: The supervisord exporter now correctly escapes the % symbol in commands and environment variable values.
- FIXED: Environment variables in
.env
files can, once again, contain backslash escapes.
- ADDED: Exporter templates can now be overridden by the
--template-dir
option tohoncho export
. - CHANGED: Colour output is now supported by default on Windows.
- CHANGED: Base port is no longer required to be a multiple of 1000.
- FIXED: Output is no longer buffered on Python 3.
- FIXED: Environment variables in
.env
files can now take any POSIX-valid values rather than simple alphanumerics only.
- FIXED: Common arguments (
-f
,-d
, etc.) given before the subcommand (start
,run
, etc.) are no longer ignored on Python 2.7.9.
- CHANGED: The commandline
-p/--port
option now takes precedence over all other ways of setting the start port.
- ADDED: Colour output is now supported on Windows when the
colorama
package is installed. - FIXED: Honcho no longer always crashes on Windows. Sorry about that.
- CHANGED: Honcho is now release as a universal wheel package (with support for Python 2 and 3).
- ADDED: Started keeping a changelog!
- ADDED: A version command:
honcho version
will print the current version. - CHANGED: Supervisor export now executes commands inside a shell (like other exporters and honcho itself).
- CHANGED: Supervisor exports now sets PORT environment variable consistently with other exporters and the rest of honcho.
- CHANGED: Supervisor export now takes a directory as the location parameter on
the command line, e.g.
honcho export supervisord /etc/supervisord.d
, thus making the use consistent with other exporters. N.B. This is a backwards-incompatible change! - FIXED: Addressed numerous text encoding bugs.
- FIXED: Honcho exporters can now be used on Python 3.2
- FIXED: Honcho no longer crashes when all processes are made
--quiet
.