-
Notifications
You must be signed in to change notification settings - Fork 417
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(typing): update types to be compatible with latest mypy #4234
Conversation
Note: there's an issue with our The current hypothesis is that since the types mentioned above are actually callables, (i.e. |
872ff13
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just one small change, otherwise LGTM!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💪
Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py
Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py
Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/__init__.py # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py
Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/__init__.py # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py
@Mergifyio backport 1.5 1.4 0.61 0.x |
* Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4)
* Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4)
* Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4) # Conflicts: # ddtrace/debugging/_debugger.py # ddtrace/internal/utils/cache.py # ddtrace/profiling/collector/__init__.py # ddtrace/profiling/collector/asyncio.py
* Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4) # Conflicts: # ddtrace/debugging/_debugger.py # ddtrace/internal/utils/cache.py # ddtrace/profiling/collector/__init__.py # ddtrace/profiling/collector/asyncio.py
✅ Backports have been created
|
* Remove ignores for updated mypy (#4253) Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py * fix conflicts Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com>
…4234) (#4263) * fix(typing): update types to be compatible with latest mypy (#4234) * Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4) * ci(mypy): remove type callable ignores (backport #4253) (#4258) * Remove ignores for updated mypy (#4253) Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py * fix conflicts Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Brett Langdon <brett.langdon@datadoghq.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com>
…4234) (#4263) * fix(typing): update types to be compatible with latest mypy (#4234) * Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4) * ci(mypy): remove type callable ignores (backport #4253) (#4258) * Remove ignores for updated mypy (#4253) Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py * fix conflicts Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Brett Langdon <brett.langdon@datadoghq.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> (cherry picked from commit 026d614)
…4234) (#4263) * fix(typing): update types to be compatible with latest mypy (#4234) * Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4) * ci(mypy): remove type callable ignores (backport #4253) (#4258) * Remove ignores for updated mypy (#4253) Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py * fix conflicts Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Brett Langdon <brett.langdon@datadoghq.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> (cherry picked from commit 026d614) # Conflicts: # ddtrace/debugging/_debugger.py # ddtrace/internal/utils/cache.py # ddtrace/profiling/collector/asyncio.py
…4234) (#4263) * fix(typing): update types to be compatible with latest mypy (#4234) * Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4) * ci(mypy): remove type callable ignores (backport #4253) (#4258) * Remove ignores for updated mypy (#4253) Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py * fix conflicts Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Brett Langdon <brett.langdon@datadoghq.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> (cherry picked from commit 026d614) # Conflicts: # ddtrace/debugging/_debugger.py # ddtrace/internal/utils/cache.py # ddtrace/profiling/collector/asyncio.py
…4234) (#4263) (#4276) * fix(typing): update types to be compatible with latest mypy (#4234) * Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4) * ci(mypy): remove type callable ignores (backport #4253) (#4258) * Remove ignores for updated mypy (#4253) Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py * fix conflicts Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Brett Langdon <brett.langdon@datadoghq.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> (cherry picked from commit 026d614) Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
…4234) (backport #4263) (#4278) * fix(typing): update types to be compatible with latest mypy (backport #4234) (#4263) * fix(typing): update types to be compatible with latest mypy (#4234) * Initial mypy fixes for CI * Ignored mypy error with type and type constructors * Fix formatting * Fixed incorrect typing * Undo initial change Co-authored-by: Kyle Verhoog <kyle@verhoog.ca> (cherry picked from commit 5140de4) * ci(mypy): remove type callable ignores (backport #4253) (#4258) * Remove ignores for updated mypy (#4253) Mypy==0.982 has just been released and fixed the inherent type/callable type hinting that was the problem from #4234. As a result, the type ignore comments added in #4234 to bypass the type/callable issue are not unneeded and are breaking CI. (cherry picked from commit 0ba3e29) # Conflicts: # ddtrace/profiling/collector/memalloc.py # ddtrace/profiling/exporter/http.py * fix conflicts Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> Co-authored-by: Yun Kim <35776586+Yun-Kim@users.noreply.github.com> Co-authored-by: Brett Langdon <brett.langdon@datadoghq.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Munir Abdinur <munir.abdinur@datadoghq.com> Co-authored-by: Munir Abdinur <munir_abdinur@hotmail.com> (cherry picked from commit 026d614) # Conflicts: # ddtrace/debugging/_debugger.py # ddtrace/internal/utils/cache.py # ddtrace/profiling/collector/asyncio.py * Resolve merge conflicts with 0.61 Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Yun Kim <yun.kim@datadoghq.com>
Description
The latest 0.981 release of mypy which our CI checks and commit hooks are dependent on resulted in previously uncaught errors. This new release of mypy includes new specifications and rules for TypeVars and abstract classes, which has been addressed in this PR.
Note: there's an ongoing issue (which I've had to ignore for now to unblock CI) with our
from_env()
helper inddtrace.internal.utils.attr.py
where mypy is expecting either a Type (i.e.str, float, int,...
) or a Callable (i.e.formats.asbool
). However, mypy mistakes the Type as a Callable and results in errors in the mypy type checking.The current hypothesis is that since the types mentioned above are actually callables, (i.e.
float(), str(), int(),...
), mypy is mistaking the Type as a callable and causing the type checking error. I'm going to try to reproduce this, then if it persists create an issue on mypy to see what we can do to resolve this.Update: created an issue on mypy. Looks like this is currently a known issue without much workaround. :(