-
Notifications
You must be signed in to change notification settings - Fork 351
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ANSI Escape Sequences do not work under PM2 in version of bittensor older than 6.9.4 #2365
Comments
Confirming versions (on Python
A change between those two versions broke this functionality. |
Did another test on Python version |
I have done analysis, it is precisely From
We're on linux, not windows, so further investigation:
means if there's not tty (likely a file output) we will need to strip ANSI characters (to have a clean logfile) However, we need these sequences in the log file so we can see the ANSI work within our PM2 output. The fix is rather simple: (bittensor/btlogging/format.py:34) |
Don't strip ANSI from stdout (fixes #2365)
Describe the bug
When using ansi escape sequences with bittensor 6.9.4, the messages are correctly formatted, but not later (7.1.2 and 8.2.0 tested) versions. Even a simple
print()
before any bittensor functions are executed (other than the import itself) doesn't work with colorized messages in the later versions.To Reproduce
while using
bittensor==6.9.4
yields correct colorization (while the python script is ran under PM2 process manager)then change bittensor to be
8.2.0
or7.1.2
(i havent tested with other versions), and see that afterimport bittensor
the colorization stops working.This behaviour will carry over to any bt.logging.info or ANY attempt to print to stdout.
Expected behavior
All messages accept and use ANSI Escape sequences correctly
Screenshots
Environment
Python3.12, PM2 5.4.2, Bittensor 6.9.4/7.1.2/8.2.0, Ubuntu 24.04, kitty terminal over openssh
Additional context
No response
The text was updated successfully, but these errors were encountered: