-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
MRG, MAINT: Go back to OrderedDict #8107
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
Conversation
|
When will this happen? Not in the next release? |
|
When will what happen? Requiring 3.7? No not in the next release. EOL for 3.6 appears to be around Dec 2021, so probably not for a couple releases. |
|
Bummer! Do we actually support anything but CPython? |
|
I don't think so. If MNE runs on PyPy then that's good, but I wouldn't support it (and it's likely that many things just work out of the box because we're not using Cython or any other compiled modules). |
|
Hm, just wondering, if we're not officially supporting & testing on anything but CPython, why even bother about reverting to OrderedDict… |
|
do we even have an "official" policy of what python implementations we support? I've not seen one... |
|
I don't think we have, but Python 3.6 should be independent of the actual implementation. That said, dicts preserve insertion order as of 3.6, so I see your point... |
|
(To clarify: I'm 👍 on reverting to |
|
I'd expect MNE to work on PyPy3 as it's pure python, though I've never tried. I don't think it'll be too onerous for us to stick to the official language features that night also increase our python implementation compatibility. I'd vote for sticking to official language features as we drop support for old versions. |
|
thx @larsoner ! |
As discussed in #8014, reverts parts of #7635: dict ordering was a CPython implementation detail in 3.6, becoming an official language feature in 3.7, so to be safe let's use OrderedDict until we require 3.7+.