Skip to content

"Cannot import 'libtorrent' due to 'invalid or missing encoding declaration" false positive #10849

@matkoniecz

Description

@matkoniecz

Bug description

I get

E0001: Cannot import 'libtorrent' due to 'invalid or missing encoding declaration for '/home/mateusz/python_import_location/lib/python3.12/site-packages/libtorrent/init.cpython-312-x86_64-linux-gnu.so'' (syntax-error)

despite import working perfectly fine

Command used

pylint 1_obtain_osm_data.py on file with

import libtorrent

content

Real project is at https://codeberg.org/matkoniecz/list_how_openstreetmap_can_be_improved_with_alltheplaces_data/src/branch/master/1_obtain_osm_data.py

Real pylint command was pylint *.py --include-naming-hint=y --variable-rgx="^[a-z][a-z0-9]*((_[a-z0-9]+)*)?$" --argument-rgx="^[a-z][a-z0-9]*((_[a-z0-9]+)*)?$" --disable=R0917,E0401,W0201,R0902,C0103,C0301,C0114,C0115,C0116,C0121,W0613,R0911,R0912,R0913,R0915,C0302,C1803,R1710,W0719,R1713,R1705,C0411,W1514,E1136,W0101,W0611,R0904,E1124,R0801,W0706,C0413,R0903,R0402,C0325,C0206,R1724,R1737,R1714,R1702,W0621,C0209,R0914,R1730,W0105,W0603,W0108,W0511,C0201 --check-str-concat-over-line-jumps=y

and now is

pylint *.py --include-naming-hint=y --variable-rgx="^[a-z][a-z0-9]*((_[a-z0-9]+)*)?$" --argument-rgx="^[a-z][a-z0-9]*((_[a-z0-9]+)*)?$" --disable=R0917,E0401,W0201,R0902,C0103,C0301,C0114,C0115,C0116,C0121,W0613,R0911,R0912,R0913,R0915,C0302,C1803,R1710,W0719,R1713,R1705,C0411,W1514,E1136,W0101,W0611,R0904,E1124,R0801,W0706,C0413,R0903,R0402,C0325,C0206,R1724,R1737,R1714,R1702,W0621,C0209,R0914,R1730,W0105,W0603,W0108,W0511,C0201 --check-str-concat-over-line-jumps=y | grep -v libtorrent | grep -v 1_obtain_osm_data as a workaround

Pylint output

************* Module 1_obtain_osm_data
1_obtain_osm_data.py:1:0: C0114: Missing module docstring (missing-module-docstring)
1_obtain_osm_data.py:1:0: C0103: Module name "1_obtain_osm_data" doesn't conform to snake_case naming style (invalid-name)
1_obtain_osm_data.py:1:0: E0001: Cannot import 'libtorrent' due to 'invalid or missing encoding declaration for '/home/mateusz/Documents/install_moje/shared_python_virtual_environment/lib/python3.12/site-packages/libtorrent/__init__.cpython-312-x86_64-linux-gnu.so'' (syntax-error)
1_obtain_osm_data.py:1:0: W0611: Unused import libtorrent (unused-import)

------------------------------------------------------------------
Your code has been rated at 0.00/10 (previous run: 0.00/10, +0.00)

Expected behavior

it does not complain, like it does not complain about my other imports

Pylint version

pylint 4.0.4
astroid 4.0.2
Python 3.12.3 (main, Jan 22 2026, 20:57:42) [GCC 13.3.0]

OS / Environment

QTerminal 1.4.0

lsb_release -a shows

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 24.04.3 LTS
Release:        24.04
Codename:       noble

Additional dependencies

`libtorrent==2.0.11`

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions