跳转到主要内容

Flake8插件,用于识别编码使用错误。

项目描述

Flake8插件,用于识别编码使用错误。

文档

Documentation Build Status Docs Check Status

测试

Linux Test Status Windows Test Status macOS Test Status Coverage

PyPI

PyPI - Package Version PyPI - Supported Python Versions PyPI - Supported Implementations PyPI - Wheel

Anaconda

Conda - Package Version Conda - Platform

活动

GitHub last commit GitHub commits since tagged version Maintenance PyPI - Downloads

QA

CodeFactor Grade Flake8 Status mypy status

其他

License GitHub top language Requirements Status

安装

flake8-encodings 可从PyPI或Anaconda安装。

使用 pip 安装

$ python -m pip install flake8-encodings

使用 conda 安装

  • 首先添加所需的频道

$ conda config --add channels https://conda.anaconda.org/conda-forge
$ conda config --add channels https://conda.anaconda.org/domdfcoding
  • 然后安装

$ conda install flake8-encodings

从版本0.5.1开始,检查类(目前为 configparser.ConfigParserpathlib.Path)的功能需要安装 classes 扩展

$ python3 -m pip install flake8-encodings[classes]

类别的检查较慢且CPU密集,因此只有在使用相关类时才启用。

动机

使用macOS或Linux的开发者可能会忘记默认编码不一定是UTF-8。

例如,在 setup.py 中,long_description = open("README.md").read() 是一个常见的错误。许多Windows用户如果 README.md 文件中至少有一个非ASCII字符(例如表情符号),且该文件以UTF-8编码,则无法安装该软件包。

例如,从PyPI下载量最高的4000个软件包中,有489个在README中使用了非ASCII字符。当区域编码为ASCII时,其中82个软件包无法从源代码包安装。[1] 它们使用默认编码来读取README或TOML文件。

即使是Python专家也认为默认编码是UTF-8。这仅在Windows上创建出仅在该平台上发生的错误。例如,参见[2][3][4][5]

PEP 597 提出了在Python中添加一个新的 EncodingWarning,它可以与该工具结合使用,以在运行时识别问题。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。

源代码分发

flake8_encodings-0.5.1.tar.gz (8.3 kB 查看哈希值)

上传时间 源代码

构建分发

flake8_encodings-0.5.1-py3-none-any.whl (25.6 kB 查看哈希值)

上传时间 Python 3

支持