halo
halo copied to clipboard
Bug: halo not showing properly in Jenkins CI
Description
Halo doesn't display text properly in Jenkins CI. The animations, emojis display as question mark characters. The colors don't display at all.
System settings
- Operating System: Unix
- Terminal in use: Jenkins
- Python version: 3.9
- Halo version: 0.0.31
pip freezeoutput:
aiohttp==3.8.4
aiosignal==1.3.1
ansible==5.9.0
ansible-core==2.12.6
apache-libcloud==3.6.0
async-timeout==4.0.2
attrs==22.2.0
autopage==0.5.1
bcrypt==3.2.2
boto==2.49.0
bottle==0.12.21
certifi==2022.12.7
cffi==1.14.4
chardet==3.0.4
charset-normalizer==3.0.1
cheroot==8.6.0
click==8.1.3
cliff==3.10.1
cmd2==2.4.1
colorama==0.4.6
commonmark==0.9.1
configobj==5.0.6
cryptography==3.2.1
cycler==0.10.0
defusedxml==0.7.1
edgegrid-python==1.1.1
frozenlist==1.3.3
ghp-import==2.1.0
girok==0.1.14
halo==0.0.31
httpie==2.3.0
httpie-edgegrid==1.0.6
hvac==0.11.2
idna==3.4
importlib-metadata==4.13.0
jaraco.functools==3.5.0
Jinja2==3.1.2
joblib==1.2.0
kiwisolver==1.3.1
linkify-it-py==2.0.0
log-symbols==0.0.14
Markdown==3.3.7
markdown-it-py==2.2.0
MarkupSafe==2.1.2
matplotlib==3.4.2
mdit-py-plugins==0.3.5
mdurl==0.1.2
mergedeep==1.3.4
mkdocs==1.4.2
mkdocs-exclude==1.0.2
more-itertools==8.13.0
msgpack==1.0.5
multidict==6.0.4
ndg-httpsclient==0.5.1
netaddr==0.8.0
nltk==3.7
numpy==1.24.2
packaging==23.0
pandas==1.3.0
paramiko==2.11.0
pbr==5.9.0
pexpect==4.8.0
Pillow==8.3.1
ply==3.11
polling==0.3.2
prettytable==3.3.0
ptyprocess==0.7.0
pyasn1==0.4.8
pycparser==2.20
Pygments==2.14.0
pyjq==2.6.0
pylighthouse==0.1.0
PyNaCl==1.5.0
pyOpenSSL==20.0.0
pyparsing==2.4.7
pyperclip==1.8.2
PySocks==1.7.1
python-dateutil==2.8.2
pytz==2021.1
PyYAML==6.0
pyyaml_env_tag==0.1
RADL==1.2.0
regex==2022.10.31
requests==2.28.2
requests-toolbelt==0.9.1
resolvelib==0.5.4
retrying==1.3.4
rich==13.3.2
scp==0.14.4
shellingham==1.5.0.post1
six==1.16.0
sortedcontainers==2.4.0
spinners==0.0.24
stevedore==3.5.0
subprocess.run==0.0.8
suds-py3==1.4.5.0
termcolor==2.3.0
textual==0.14.0
tosca-parser==2.6.0
tqdm==4.64.0
typer==0.7.0
typing_extensions==4.5.0
uc-micro-py==1.0.1
urllib3==1.26.14
watchdog==2.3.1
wcwidth==0.2.5
yarl==1.8.2
zipp==3.15.0
Error
Example of output below in Jenkins CI:
��� 1���������� 2023-05-08 18:31:54.006033 Preparing to initialize AniClient class (...)
Expected behaviour
Expected output:
⠇ 1️⃣🥚 2023-05-08 15:19:02.836543 Preparing to initialize AniClient class with args
Steps to recreate
Run Halo in a Jenkins CI environment
People to notify
Potential solution
Ora deals with this scenario by allowing you to set enabled to False and it will disable the spinner, emojis and colors. However, it will still print the raw text normally. Whereas with Halo, setting enabled to False completely disables everything, even printing the raw text normally. So, I propose setting enabled to False would still log text normally.
I thought setting color to None would fix this behavior, but it doesn't. If anyone has a workaround (even a hacky one), I'd love to hear it.
@omartoutounji thanks for reporting! Looking into this.