All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
1 # Example configuration for Black.
3 # NOTE: you have to use single-quoted strings in TOML for regular expressions.
4 # It's the equivalent of r-strings in Python. Multiline strings are treated as
5 # verbose regular expressions by Black. Use [ ] to denote a significant space
10 target-version = ['py36', 'py37', 'py38']
14 # The following are specific to Black, you probably don't want those.
20 # We use preview style for formatting Black itself. If you
21 # want stable formatting across releases, you should keep
25 # Build system information and other project-specific configuration below.
26 # NOTE: You don't need this in your own Black configuration.
29 requires = ["setuptools>=45.0", "setuptools_scm[toml]>=6.3.1", "wheel"]
30 build-backend = "setuptools.build_meta"
34 # So these are the environments we target:
35 # - Python: CPython 3.6+ only
36 # - Architecture (64-bit only): amd64 / x86_64, universal2, and arm64
37 # - OS: Linux (no musl), Windows, and macOS
39 skip = ["*-manylinux_i686", "*-musllinux_*", "*-win32", "pp-*"]
40 before-build = ["pip install -r .github/mypyc-requirements.txt"]
41 # This is the bare minimum needed to run the test suite. Pulling in the full
42 # test_requirements.txt would download a bunch of other packages not necessary
43 # here and would slow down the testing step a fair bit.
44 test-requires = ["pytest>=6.1.1"]
45 test-command = 'pytest {project} -k "not incompatible_with_mypyc"'
46 test-extras = ["d"," jupyter"]
47 # Skip trying to test arm64 builds on Intel Macs. (so cross-compilation doesn't
49 test-skip = ["*-macosx_arm64", "*-macosx_universal2:arm64"]
51 [tool.cibuildwheel.environment]
54 MYPYC_DEBUG_LEVEL = "0"
55 # The dependencies required to build wheels with mypyc aren't specified in
56 # [build-system].requires so we'll have to manage the build environment ourselves.
57 PIP_NO_BUILD_ISOLATION = "no"
59 [tool.cibuildwheel.linux]
61 "pip install -r .github/mypyc-requirements.txt",
62 "yum install -y clang",
64 # Newer images break the builds, not sure why. We'll need to investigate more later.
65 manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2021-11-20-f410d11"
67 [tool.cibuildwheel.linux.environment]
70 MYPYC_DEBUG_LEVEL = "0"
71 PIP_NO_BUILD_ISOLATION = "no"
72 # Black needs Clang to compile successfully on Linux.
75 [tool.cibuildwheel.windows]
76 # For some reason, (compiled) mypyc is failing to start up with "ImportError: DLL load
77 # failed: A dynamic link library (DLL) initialization routine failed." on Windows for
78 # at least 3.6. Let's just use interpreted mypy[c].
79 # See also: https://github.com/mypyc/mypyc/issues/819.
81 "pip install -r .github/mypyc-requirements.txt --no-binary mypy"
89 skip_glob = ["src/blib2to3", "tests/data", "profiling"]
90 known_first_party = ["black", "blib2to3", "blackd", "_black_version"]
92 [tool.pytest.ini_options]
93 # Option below requires `tests/optional.py`
94 addopts = "--strict-config --strict-markers"
96 "no_blackd: run when `d` extra NOT installed",
97 "no_jupyter: run when `jupyter` extra NOT installed",
100 "incompatible_with_mypyc: run when testing mypyc compiled black"
105 # this is mitigated by a try/catch in https://github.com/psf/black/pull/2974/
106 # this ignore can be removed when support for aiohttp 3.7 is dropped.
107 '''ignore:Decorator `@unittest_run_loop` is no longer needed in aiohttp 3\.8\+:DeprecationWarning''',
108 # this is mitigated by a try/catch in https://github.com/psf/black/pull/3198/
109 # this ignore can be removed when support for aiohttp 3.x is dropped.
110 '''ignore:Middleware decorator is deprecated since 4\.0 and its behaviour is default, you can simply remove this decorator:DeprecationWarning''',
111 # this is mitigated by https://github.com/python/cpython/issues/79071 in python 3.8+
112 # this ignore can be removed when support for 3.7 is dropped.
113 '''ignore:Bare functions are deprecated, use async ones:DeprecationWarning''',
114 # aiohttp is using deprecated cgi modules - Safe to remove when fixed:
115 # https://github.com/aio-libs/aiohttp/issues/6905
116 '''ignore:'cgi' is deprecated and slated for removal in Python 3.13:DeprecationWarning''',