From d466a5625000f9c4a7f19c00e93435fd2f7a72ef Mon Sep 17 00:00:00 2001 From: hauntsaninja Date: Mon, 9 Oct 2023 13:43:40 -0700 Subject: [PATCH 1/5] Fix cache versioning when BLACK_CACHE_DIR is set --- src/black/cache.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/black/cache.py b/src/black/cache.py index 77f66cc34a9..ee25579d178 100644 --- a/src/black/cache.py +++ b/src/black/cache.py @@ -36,9 +36,9 @@ def get_cache_dir() -> Path: repeated calls. """ # NOTE: Function mostly exists as a clean way to test getting the cache directory. - default_cache_dir = user_cache_dir("black", version=__version__) + default_cache_dir = user_cache_dir("black") cache_dir = Path(os.environ.get("BLACK_CACHE_DIR", default_cache_dir)) - return cache_dir + return cache_dir / __version__ CACHE_DIR = get_cache_dir() From d01b8f6ea1381d825779569c92aba9364666724b Mon Sep 17 00:00:00 2001 From: hauntsaninja Date: Mon, 9 Oct 2023 13:45:30 -0700 Subject: [PATCH 2/5] changelog --- CHANGES.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index ffc63b3287d..fe4b621a3e5 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -24,6 +24,8 @@ +- Fix cache versioning logic when `BLACK_CACHE_DIR` is set (#3937) + ### Packaging From 92ec66e53ef36677443f0f3e14da7a5809f425a0 Mon Sep 17 00:00:00 2001 From: hauntsaninja Date: Mon, 9 Oct 2023 13:47:00 -0700 Subject: [PATCH 3/5] fix return any --- src/black/cache.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/black/cache.py b/src/black/cache.py index ee25579d178..c42bae57533 100644 --- a/src/black/cache.py +++ b/src/black/cache.py @@ -37,8 +37,8 @@ def get_cache_dir() -> Path: """ # NOTE: Function mostly exists as a clean way to test getting the cache directory. default_cache_dir = user_cache_dir("black") - cache_dir = Path(os.environ.get("BLACK_CACHE_DIR", default_cache_dir)) - return cache_dir / __version__ + cache_dir = Path(os.environ.get("BLACK_CACHE_DIR", default_cache_dir)) / __version__ + return cache_dir CACHE_DIR = get_cache_dir() From 066333a027eea069ea726a225145009269f651ce Mon Sep 17 00:00:00 2001 From: hauntsaninja Date: Mon, 9 Oct 2023 13:47:52 -0700 Subject: [PATCH 4/5] mypy --- src/black/cache.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/black/cache.py b/src/black/cache.py index c42bae57533..f7dc64c0bca 100644 --- a/src/black/cache.py +++ b/src/black/cache.py @@ -37,7 +37,8 @@ def get_cache_dir() -> Path: """ # NOTE: Function mostly exists as a clean way to test getting the cache directory. default_cache_dir = user_cache_dir("black") - cache_dir = Path(os.environ.get("BLACK_CACHE_DIR", default_cache_dir)) / __version__ + cache_dir = Path(os.environ.get("BLACK_CACHE_DIR", default_cache_dir)) + cache_dir = cache_dir / __version__ return cache_dir From 40cdb99d2b850d781544d0ccc55f0e1682714644 Mon Sep 17 00:00:00 2001 From: hauntsaninja Date: Mon, 9 Oct 2023 13:54:26 -0700 Subject: [PATCH 5/5] fix test --- tests/test_black.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/test_black.py b/tests/test_black.py index c665eee3a6c..f5627f9803e 100644 --- a/tests/test_black.py +++ b/tests/test_black.py @@ -1961,11 +1961,11 @@ def test_get_cache_dir( # If BLACK_CACHE_DIR is not set, use user_cache_dir monkeypatch.delenv("BLACK_CACHE_DIR", raising=False) with patch_user_cache_dir: - assert get_cache_dir() == workspace1 + assert get_cache_dir().parent == workspace1 # If it is set, use the path provided in the env var. monkeypatch.setenv("BLACK_CACHE_DIR", str(workspace2)) - assert get_cache_dir() == workspace2 + assert get_cache_dir().parent == workspace2 def test_cache_broken_file(self) -> None: mode = DEFAULT_MODE