@@ -5,6 +5,7 @@
55, appdirs
66, attrs
77, click
8+, colorama
89, dataclasses
910, mypy-extensions
1011, pathspec
@@ -12,17 +13,20 @@
1213, regex
1314, toml
1415, typed-ast
15−, typing-extensions }:
16+, typing-extensions
17+, uvloop
18+}:
19+
1620
1721buildPythonPackage rec {
1822 pname = "black";
19− version = "21.5b1";
23+ version = "21.6b0";
2024
2125 disabled = pythonOlder "3.6";
2226
2327 src = fetchPypi {
2428 inherit pname version;
25− sha256 = "1cdkrl5vw26iy7s23v2zpr39m6g5xsgxhfhagzzflgfbvdc56s93";
29+ sha256 = "016f6bhnnnbcrrh3cvmpk77ww0nykv5n1qvgf8b3044dm14264yw";
2630 };
2731
2832 nativeBuildInputs = [ setuptools-scm ];
@@ -31,7 +35,7 @@ buildPythonPackage rec {
3135 # Black starts a local server and needs to bind a local address.
3236 __darwinAllowLocalNetworking = true;
3337
34− checkInputs = [ pytestCheckHook parameterized ];
38+ checkInputs = [ pytestCheckHook parameterized ];
3539
3640 preCheck = ''
3741 export PATH="$PATH:$out/bin"
@@ -39,6 +43,9 @@ buildPythonPackage rec {
3943 # The top directory /build matches black's DEFAULT_EXCLUDE regex.
4044 # Make /build the project root for black tests to avoid excluding files.
4145 touch ../.git
46+ '' + lib.optionalString stdenv.isDarwin ''
47+ # Work around https://github.com/psf/black/issues/2105
48+ export TMPDIR="/tmp"
4249 '';
4350
4451 disabledTests = [
@@ -55,19 +62,21 @@ buildPythonPackage rec {
5562 appdirs
5663 attrs
5764 click
65+ colorama
5866 mypy-extensions
5967 pathspec
6068 regex
6169 toml
62− typed-ast
63− typing-extensions
64− ] ++ lib.optional (pythonOlder "3.7") dataclasses;
70+ typed-ast # required for tests and python2 extra
71+ uvloop
72+ ] ++ lib.optional (pythonOlder "3.7") dataclasses
73+ ++ lib.optional (pythonOlder "3.8") typing-extensions;
6574
6675 meta = with lib; {
6776 description = "The uncompromising Python code formatter";
68− homepage = "https://github.com/psf/black";
69− changelog = "https://github.com/psf/black/blob/${version}/CHANGES.md";
70− license = licenses.mit;
77+ homepage = "https://github.com/psf/black";
78+ changelog = "https://github.com/psf/black/blob/${version}/CHANGES.md";
79+ license = licenses.mit;
7180 maintainers = with maintainers; [ sveitser ];
7281 };
7382}