Repository: strawberry-graphql/strawberry

Issue:
Bump types-python-dateutil from 2.8.3 to 2.8.4
Bumps [types-python-dateutil](https://github.com/python/typeshed) from 2.8.3 to 2.8.4.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/python/typeshed/commits">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=types-python-dateutil&package-manager=pip&previous-version=2.8.3&new-version=2.8.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>


Discussion:
# [Codecov](https://codecov.io/gh/strawberry-graphql/strawberry/pull/1517?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=strawberry-graphql) Report
> Merging [#1517](https://codecov.io/gh/strawberry-graphql/strawberry/pull/1517?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=strawberry-graphql) (336a643) into [main](https://codecov.io/gh/strawberry-graphql/strawberry/commit/4b903b84f8603cf2d210691e296f6223bc4307a2?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=strawberry-graphql) (4b903b8) will **not change** coverage.
> The diff coverage is `n/a`.


```diff
@@           Coverage Diff           @@
##             main    #1517   +/-   ##
=======================================
  Coverage   98.11%   98.11%           
=======================================
  Files         129      129           
  Lines        4403     4403           
  Branches      746      746           
=======================================
  Hits         4320     4320           
  Misses         43       43           
  Partials       40       40           
```

Looks like types-python-dateutil is up-to-date now, so this is no longer needed.

Resolving patch:
diff --git a/strawberry/field.py b/strawberry/field.py
--- a/strawberry/field.py
+++ b/strawberry/field.py
@@ -18,7 +18,7 @@
     overload,
 )
 
-from cached_property import cached_property  # type: ignore
+from backports.cached_property import cached_property
 from typing_extensions import Literal
 
 from strawberry.annotation import StrawberryAnnotation
@@ -132,7 +132,7 @@ def __call__(self, resolver: _RESOLVER_TYPE) -> "StrawberryField":
                     "Union",
                 )
             elif getattr(argument.type, "_type_definition", False):
-                if argument.type._type_definition.is_interface:
+                if argument.type._type_definition.is_interface:  # type: ignore
                     raise InvalidFieldArgument(
                         resolver.name,
                         argument.python_name,
diff --git a/strawberry/types/fields/resolver.py b/strawberry/types/fields/resolver.py
--- a/strawberry/types/fields/resolver.py
+++ b/strawberry/types/fields/resolver.py
@@ -6,7 +6,7 @@
 from inspect import isasyncgenfunction, iscoroutinefunction
 from typing import Callable, Dict, Generic, List, Mapping, Optional, TypeVar, Union
 
-from cached_property import cached_property  # type: ignore
+from backports.cached_property import cached_property
 
 from strawberry.annotation import StrawberryAnnotation
 from strawberry.arguments import StrawberryArgument
diff --git a/strawberry/types/info.py b/strawberry/types/info.py
--- a/strawberry/types/info.py
+++ b/strawberry/types/info.py
@@ -2,7 +2,7 @@
 import warnings
 from typing import TYPE_CHECKING, Any, Dict, Generic, List, Optional, TypeVar, Union
 
-from cached_property import cached_property
+from backports.cached_property import cached_property
 
 from graphql import GraphQLResolveInfo, OperationDefinitionNode
 from graphql.language import FieldNode


Test patch: