From: Richard Si <63936253+ichard26@users.noreply.github.com> Date: Sun, 10 Apr 2022 23:45:34 +0000 (-0400) Subject: Explain our use of mypyc in the FAQ (#3002) X-Git-Url: https://git.madduck.net/etc/vim.git/commitdiff_plain/497a72560dd3612a062cbb0d8cb2f8c3c93b74ff?ds=sidebyside Explain our use of mypyc in the FAQ (#3002) I realized we don't have a FAQ entry about this, let's change that so compiled: yes/no doesn't surprise as many people :) Co-authored-by: Jelle Zijlstra --- diff --git a/docs/faq.md b/docs/faq.md index a5919a3..b2fe42d 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -113,3 +113,22 @@ _Black_ is an autoformatter, not a Python linter or interpreter. Detecting all s errors is not a goal. It can format all code accepted by CPython (if you find an example where that doesn't hold, please report a bug!), but it may also format some code that CPython doesn't accept. + +## What is `compiled: yes/no` all about in the version output? + +While _Black_ is indeed a pure Python project, we use [mypyc] to compile _Black_ into a +C Python extension, usually doubling performance. These compiled wheels are available +for 64-bit versions of Windows, Linux (via the manylinux standard), and macOS across all +supported CPython versions. + +Platforms including musl-based and/or ARM Linux distributions, and ARM Windows are +currently **not** supported. These platforms will fall back to the slower pure Python +wheel available on PyPI. + +If you are experiencing exceptionally weird issues or even segfaults, you can try +passing `--no-binary black` to your pip install invocation. This flag excludes all +wheels (including the pure Python wheel), so this command will use the [sdist]. + +[mypyc]: https://mypyc.readthedocs.io/en/latest/ +[sdist]: + https://packaging.python.org/en/latest/glossary/#term-Source-Distribution-or-sdist