From 904fe94ceba29f3f0c5b8772c4faf699de57338f Mon Sep 17 00:00:00 2001 From: Richard Si <63936253+ichard26@users.noreply.github.com> Date: Thu, 13 May 2021 15:30:34 -0400 Subject: [PATCH] Add lower bound for aiohttp-cors + fix primer (#2231) It appears sqlalchemy has recently reformatted their project with Black 21.5b1. Most of our dependencies have a lower bound and creating a test environment with the oldest acceptable dependencies runs the full Black test suite just fine. The only exception to this is aiohttp-cors. It's unbounded and the oldest version 0.1.0 until 0.4.0 breaks the test suite in such an old environment. Failure with 0.1.0: ``` tests/test_blackd.py:10: in import blackd testenv/lib/python3.8/site-packages/blackd/__init__.py:12: in import aiohttp_cors testenv/lib/python3.8/site-packages/aiohttp_cors/__init__.py:29: in from .urldispatcher_router_adapter import UrlDistatcherRouterAdapter testenv/lib/python3.8/site-packages/aiohttp_cors/urldispatcher_router_adapter.py:27: in class UrlDistatcherRouterAdapter(RouterAdapter): testenv/lib/python3.8/site-packages/aiohttp_cors/urldispatcher_router_adapter.py:32: in UrlDistatcherRouterAdapter def route_methods(self, route: web.Route): E AttributeError: module 'aiohttp.web' has no attribute 'Route' ``` For 0.2.0: ``` tests/test_blackd.py:10: in import blackd testenv/lib/python3.8/site-packages/blackd/__init__.py:12: in import aiohttp_cors testenv/lib/python3.8/site-packages/aiohttp_cors/__init__.py:27: in from .cors_config import CorsConfig testenv/lib/python3.8/site-packages/aiohttp_cors/cors_config.py:24: in from .urldispatcher_router_adapter import UrlDistatcherRouterAdapter testenv/lib/python3.8/site-packages/aiohttp_cors/urldispatcher_router_adapter.py:27: in class UrlDistatcherRouterAdapter(AbstractRouterAdapter): testenv/lib/python3.8/site-packages/aiohttp_cors/urldispatcher_router_adapter.py:32: in UrlDistatcherRouterAdapter def route_methods(self, route: web.Route): E AttributeError: module 'aiohttp.web' has no attribute 'Route' ``` For 0.3.0: ``` ERROR: Cannot install aiohttp-cors==0.3.0 and aiohttp==3.6.0 because these package versions have conflicting dependencies. The conflict is caused by: The user requested aiohttp==3.6.0 aiohttp-cors 0.3.0 depends on aiohttp<=0.20.2 and >=0.18.0 To fix this you could try to: 1. loosen the range of package versions you've specified 2. remove package versions to allow pip attempt to solve the dependency conflict ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies ``` --- CHANGES.md | 5 +++++ setup.py | 2 +- src/black_primer/primer.json | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 3639d8e..85936e8 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -7,6 +7,11 @@ - Fix typos discovered by codespell (#2228) - Restored compatibility with Click 8.0 on Python 3.6 when LANG=C used (#2227) +### _Blackd_ + +- Add a lower bound for the `aiohttp-cors` dependency. Only 0.4.0 or higher is + supported. (#2231) + ## 21.5b1 ### _Black_ diff --git a/setup.py b/setup.py index 3dc52b2..2b5f71f 100644 --- a/setup.py +++ b/setup.py @@ -83,7 +83,7 @@ setup( "mypy_extensions>=0.4.3", ], extras_require={ - "d": ["aiohttp>=3.6.0", "aiohttp-cors"], + "d": ["aiohttp>=3.6.0", "aiohttp-cors>=0.4.0"], "colorama": ["colorama>=0.4.3"], "python2": ["typed-ast>=1.4.2"], }, diff --git a/src/black_primer/primer.json b/src/black_primer/primer.json index 76ed482..0bbac85 100644 --- a/src/black_primer/primer.json +++ b/src/black_primer/primer.json @@ -106,7 +106,7 @@ "sqlalchemy": { "no_cli_args_reason": "breaks black with new string parsing - #2188", "cli_arguments": [], - "expect_formatting_changes": true, + "expect_formatting_changes": false, "git_clone_url": "https://github.com/sqlalchemy/sqlalchemy.git", "long_checkout": false, "py_versions": ["all"] -- 2.39.5