librelane / librelane/librelane
bug: librelane does not work with non-utf8 locales
Open
Nobody has claimed this yet.
🐞 bug
workaround
- Dominant language
- Python
- Stars
- 543
- Forks
- 105
- Avg merge
- 5d 14h
- Merged PRs (30d)
- 4
Description
Description
I just installed a fresh ubuntu 22.04 OS on VM and followed instructions to install librelane using nix.
Everything went great until smoke test is failling:
Expected Behavior
Normally, smoke test should be working with a frsh install.
Environment report
kernel: Linux
kernel_version: 6.8.0-107-generic
supported: True
distro: ubuntu
distro_version: 22.04
python_version: 3.13.9
python_path:
- /nix/store/zkzv2pzi9yp00dmvlcvkdh2kxykicfqk-python3.13-librelane-3.0.2/bin
- /nix/store/jj6jldlw37r8yy9kc1smrax9dhnjm2x4-python3-3.13.9/lib/python313.zip
- /nix/store/jj6jldlw37r8yy9kc1smrax9dhnjm2x4-python3-3.13.9/lib/python3.13
- /nix/store/jj6jldlw37r8yy9kc1smrax9dhnjm2x4-python3-3.13.9/lib/python3.13/lib-dynload
- /nix/store/jj6jldlw37r8yy9kc1smrax9dhnjm2x4-python3-3.13.9/lib/python3.13/site-packages
- /nix/store/dvl0axlikmchlnqgk5880gqkgnak5szw-python3-3.13.9-env/lib/python3.13/site-packages
- /nix/store/zkzv2pzi9yp00dmvlcvkdh2kxykicfqk-python3.13-librelane-3.0.2/lib/python3.13/site-packages
- /nix/store/p352iawg0q3q18ajklyrih6k46nhfz11-python3.13-click-8.2.1/lib/python3.13/site-packages
- /nix/store/1h7wdfbpvrpvkw4kw0kl5m8x2gsbfk1s-python3.13-cloup-3.0.8/lib/python3.13/site-packages
- /nix/store/h7a9751dg6hj9zczx3zf7xb3wa522pzl-python3.13-pyyaml-6.0.3/lib/python3.13/site-packages
- /nix/store/gs939naj7144xk295fqg2s5mw59xg2dd-python3.13-yamlcore-0.0.2/lib/python3.13/site-packages
- /nix/store/iabxj0x6vyl0bk5fjc7561ls41mcsnl1-python3.13-rich-14.1.0/lib/python3.13/site-packages
- /nix/store/32hdfd1fwrndcprgzcvrl6j6pmvfjb88-python3.13-markdown-it-py-3.0.0/lib/python3.13/site-packages
- /nix/store/380a622v4ipdzi3cmkmzffx9f6fl679p-python3.13-mdurl-0.1.2/lib/python3.13/site-packages
- /nix/store/xc325chv58pvikdlvgi9a612hprapkzb-python3.13-pygments-2.19.2/lib/python3.13/site-packages
- /nix/store/ic0w3lb3a9af6lwwll3gxc895wvd4vnv-python3.13-requests-2.32.5/lib/python3.13/site-packages
- /nix/store/9lyj2s9i1s2r1435g35vq9ar9iccl96l-python3.13-certifi-2025.07.14/lib/python3.13/site-packages
- /nix/store/7v2m3jfrqyijqmnd1rgkylq8jaj6cc84-python3.13-charset-normalizer-3.4.3/lib/python3.13/site-packages
- /nix/store/flwrc5iiacis7hl58l7am33y2n30fp7h-python3.13-idna-3.11/lib/python3.13/site-packages
- /nix/store/5rsmyrgzjzlqw9vj7lc63c15749afvq5-python3.13-urllib3-2.5.0/lib/python3.13/site-packages
- /nix/store/qz1575zl1yfngkj8qbg5x2aw7ch4yi8d-python3.13-ciel-2.4.0/lib/python3.13/site-packages
- /nix/store/8j41h5ipd8ajyv4c9dh4kqbfgawy3pvj-python3.13-httpx-0.28.1/lib/python3.13/site-packages
- /nix/store/nvbsad3dcjd7kyh1nx3qcfb7wjk67gzn-python3.13-anyio-4.11.0/lib/python3.13/site-packages
- /nix/store/rss76ifc5p072lq30wcmi3hy5biwy8bk-python3.13-sniffio-1.3.1/lib/python3.13/site-packages
- /nix/store/5j8zmpcp9gdianmjf5aip780pq4nhb29-python3.13-httpcore-1.0.9/lib/python3.13/site-packages
- /nix/store/sz2virc5q8x0vkd02i09i3sla9sxdbrm-python3.13-h11-0.16.0/lib/python3.13/site-packages
- /nix/store/yg5cid65sb46lj24qdh97ycb4pxn3vp1-python3.13-pcpp-1.30/lib/python3.13/site-packages
- /nix/store/d4v5lnlyr71k9ppjh3ym0bljpfni9wdj-python3.13-zstandard-0.23.0/lib/python3.13/site-packages
- /nix/store/04s1g71p2azkdrmm49h65zbiwqr7cd9v-python3.13-truststore-0.10.4/lib/python3.13/site-packages
- /nix/store/r4gzki2r52s1z8qkba120j6z0gjmiq34-python3.13-aiohttp-3.13.2/lib/python3.13/site-packages
- /nix/store/ahng06ci9l5y6gx7mgkp0cd51kkw3kwz-python3.13-aiohappyeyeballs-2.6.1/lib/python3.13/site-packages
- /nix/store/pikzj0gh878fbdxngzmxhlsavbfqs2va-python3.13-aiosignal-1.4.0/lib/python3.13/site-packages
- /nix/store/4bjmbb5kwf91dnpxpj3bv1jmk7lv5kcm-python3.13-frozenlist-1.7.0/lib/python3.13/site-packages
- /nix/store/fjyjy4z9j32a8mw5pizvzzfwbgphwmrj-python3.13-attrs-25.3.0/lib/python3.13/site-packages
- /nix/store/lpawbmrf6qzjbcp5dqv5w7adazvn7679-python3.13-multidict-6.7.0/lib/python3.13/site-packages
- /nix/store/k24nqkmqrjjjgldpy3ijb97nq36v7brc-python3.13-propcache-0.3.2/lib/python3.13/site-packages
- /nix/store/acp959gdr92yd6mq8wp9fjmrmp4qd6l7-python3.13-yarl-1.22.0/lib/python3.13/site-packages
- /nix/store/vda985zhvxainpz8jvh1zbmibqf5y5lh-python3.13-aiodns-3.5.0/lib/python3.13/site-packages
- /nix/store/6k53cdk93zxvx8r01z8br44c6b3pcfkh-python3.13-pycares-4.9.0/lib/python3.13/site-packages
- /nix/store/jcvh94449w1ffnsjs6w498qzm7v2zwrb-python3.13-cffi-2.0.0/lib/python3.13/site-packages
- /nix/store/md8sxjzdq1fysha0nq8f0qmmr7lmzaqz-python3.13-pycparser-2.23/lib/python3.13/site-packages
- /nix/store/j790j1yq4lkvg4qph2zdpdgd9wfiajff-python3.13-backports-zstd-1.0.0/lib/python3.13/site-packages
- /nix/store/b9rgbp05lha8pl9nhldihfb1srzjslm8-python3.13-brotli-1.2.0/lib/python3.13/site-packages
- /nix/store/z1ikl8axcnlaxszvgllp3yb50dxklcbj-python3.13-cryptography-46.0.2/lib/python3.13/site-packages
- /nix/store/9ilnzm5b59f0s8ii82lxg287rhlwbq1x-python3.13-typing-extensions-4.15.0/lib/python3.13/site-packages
- /nix/store/r792h42llpvjjrmkwcab004vjbqs90rd-python3.13-pyopenssl-25.1.0/lib/python3.13/site-packages
- /nix/store/fiy9y82iknmkvs5hx7hnxvlnf34pkam5-python3.13-trustme-1.2.1/lib/python3.13/site-packages
- /nix/store/lggpgd7zwbdk27ms383kkz266gy1r93d-python3.13-socksio-1.0.0/lib/python3.13/site-packages
- /nix/store/02y3f6aqd1ckrn3rvm3ff558i5fif150-python3.13-tkinter-3.13.9/lib/python3.13/site-packages
- /nix/store/yd0q45pqv3inm6cbkbm8ngk150mj5csw-python3.13-lxml-6.0.2/lib/python3.13/site-packages
- /nix/store/37nzqgc1bdyf54fhgb9zz81y7661zrfq-python3.13-deprecated-1.2.18/lib/python3.13/site-packages
- /nix/store/1vfz70kz5c21x555vzzwmxk99rv86wgg-python3.13-wrapt-1.17.2/lib/python3.13/site-packages
- /nix/store/wq9kfg6vgjzyzm2hk4xxk38v5smkh8yd-python3.13-libparse-0.56.0/lib/python3.13/site-packages
- /nix/store/bg5gcnsms0g7hkap7ybbgpd6bmcpg3jl-python3.13-psutil-7.1.2/lib/python3.13/site-packages
- /nix/store/n4l6vgy0plj28b5b3ylf43ms5bmcp6lj-klayout-0.30.7-python/lib/python3.13/site-packages
- /nix/store/ixrasrxqsx3vndpnf0043j9vql5khw2w-python3.13-rapidfuzz-3.14.1/lib/python3.13/site-packages
- /nix/store/65fq81iyvrzw8hyycfxbxvsq0h9vysfb-python3.13-semver-3.0.4/lib/python3.13/site-packages
tkinter: True
container_info: no compatible container engine found in PATH (tried docker, podman)
nix_info:
version_string: nix (Nix) 2.34.1
channels:
nix_command: True
flakes: True
Reproduction material
Don't need this.
Relevant log output
nix-shell:~]$ librelane --log-level ERROR --condensed --show-progress-bar --smoke-test
[03:00:10] [E] Failed to download PDK: 'latin-1' codec can't encode character '\u2026' in position 90: ordinal not in range(256) cli.py:557
*** You may need to add PYTHONIOENCODING=utf-8 to your environment ***
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at cli.py:557, where the smoke-test log reports the encoding failure, and run the provided librelane --smoke-test command under the reported non-UTF-8 locale. Done means the fresh-install smoke test completes without the latin-1 encoding error or requiring PYTHONIOENCODING=utf-8.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100