| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
There was a problem hiding this comment.
Looks good to me!
Sorry, something went wrong.
| "of from 'collections.abc' is deprecated, " | ||
| "and in 3.8 it will stop working", | ||
| DeprecationWarning, stacklevel=2) | ||
| globals()[name] = obj |
There was a problem hiding this comment.
Can you store it in global before emitting the warning? Just to avoid any risk of emitting the warning twice. (I'm not sure that it can occur in practice, maybe using multiple threads?)
Sorry, something went wrong.
There was a problem hiding this comment.
This is written in the current form deliberately. If store in global before emitting the warning then if deprecation warnings are converted to errors this could lead to making the name usable without error. I'm not sure this is good.
Sorry, something went wrong.
There was a problem hiding this comment.
Aha, I don't know. Maybe add at least a comment just explaining that?
Sorry, something went wrong.
There was a problem hiding this comment.
I'll add it after beta1. Currently I have a slow connection and don't want to block beta1.
Sorry, something went wrong.
| iterable = args[0] if args else None | ||
| if iterable is not None: | ||
| if isinstance(iterable, Mapping): | ||
| if isinstance(iterable, _collections_abc.Mapping): |
There was a problem hiding this comment.
Does this change have an impact on performance? If yes, maybe we should keep a _Mapping global?
Sorry, something went wrong.
There was a problem hiding this comment.
I don't know. In any case the isinstance check is not cheap for ABCs. I suppose that one attribute resolution has insignificant effect on performance.
Sorry, something went wrong.
|
@serhiy-storchaka: Please replace # with GH- in the commit message next time. Thanks! |
Sorry, something went wrong.
Fix DeprecationWarning from classes in collections.abc This patch removes the following warning: ``` /usr/share/nvim/runtime/third_party/ycmd/ycmd/utils.py:499: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working class HashableDict( collections.Mapping ): ``` This warning is originated from python/cpython#5460 <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/valloric/ycmd/1134) <!-- Reviewable:end -->
This PR stops using the following deprecated functions in std Python lib. * parser.readfp We should use parser.read_file(readline_generator(fp))[1]. * importing modules from collections directly. We should use collections.abc instead of using collections directly.[2] -- [1]: https://docs.python.org/3/library/configparser.html#configparser.ConfigParser.readfp [2]: python/cpython#5460 Task: 44767 Story: 2009917 Change-Id: I61bf4299ad2acd8ee26b4aab66875b10287020e1
* Update trove from branch 'master'
to 04e85c1be0732b7f9333468723b1e1b26d6ddc02
- Merge "Stop using deprecated functions in std Python lib"
- Stop using deprecated functions in std Python lib
This PR stops using the following deprecated functions in std Python lib.
* parser.readfp
We should use parser.read_file(readline_generator(fp))[1].
* importing modules from collections directly.
We should use collections.abc instead of using collections directly.[2]
--
[1]: https://docs.python.org/3/library/configparser.html#configparser.ConfigParser.readfp
[2]: python/cpython#5460
Task: 44767
Story: 2009917
Change-Id: I61bf4299ad2acd8ee26b4aab66875b10287020e1
| Back | FazBrowse Home | New Git URL |
https://bugs.python.org/issue25988