nbconvert 6.0 is soon out of the door,
It feels like the right time think about also dropping python 3.6 support (IPython is already 3.7+ only as it follows NEP 29), that will of course depends on whether you think minor release of nbconvert can drop minor version of Python or not, but with 3.9 being around soon, that will still be 3 minor version of Python supported.
Hmm according to PyPI 3.6 is the second most common downloaded version of nbconvert. And Python will be security patching 3.6 through 2021-12. I don't think we have any 3.6 specific code atm and we have been dropping minor python versions in minor releases of other Jupyter libraries so a 6.1 dropping 3.6 would be reasonable as well.
We could choose to follow nep for support timelines but I don't know what the overall sense from the Jupyter community is on this. @SylvainCorlay @maartenbreddels @willingc @t-makaro if you wanted to voice opinion here since we're very close to 6.0 being done.
F strings were a good reason to drop 3.5, I don't see a good reason to drop
3.6.
(from mobile phone)
On Sat, 22 Aug 2020, 19:25 Matthew Seal, notifications@github.com wrote:
Hmm according to PyPI 3.6 is the second most common downloaded version of
nbconvert. And Python will be security patching 3.6 through 2021-12. I
don't think we have any 3.6 specific code atm and we have been dropping
minor python versions in minor releases of other Jupyter libraries so a 6.1
dropping 3.6 would be reasonable as well.We could choose to follow nep for support timelines but I don't know what
the overall sense from the Jupyter community is on this. @SylvainCorlay
https://github.com/SylvainCorlay @maartenbreddels
https://github.com/maartenbreddels @willingc
https://github.com/willingc @t-makaro https://github.com/t-makaro if
you wanted to voice opinion here since we're very close to 6.0 being done.—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jupyter/nbconvert/issues/1348#issuecomment-678668292,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AANPEPPSP5TW5ECDT7447FDSB75RLANCNFSM4QIF27TA
.
Up to you, see https://github.com/numpy/numpy/pull/14086 for background and discussion;
And Python will be security patching 3.6 through 2021-12.
But that's "source only", ie there won't be any binary release of those security, and the point is also to migrate the top of the pyramid faster than the bottom, so that maintainers can be confident they can drop 3.6.
Also stopping support can have a large range of meaning; for example IPython still test on 3.6, but setup.py indicate python_requires>=3.7, so users can still go out of the way to install new versions, but it is officially not supported.
It can also be a note in the readme "We won't make effort or guarantied 3.6 is working".
I don't advocate for "we will make it 3.6 incompatible", but "we won't make effort to keep 3.6 compat".
First, I would keep CI testing Python 3.6. As to whether to drop 3.6 now or not, I would make this the last release to support 3.6 (specifically 3.6.12+ via documentation in the readme) or python_requires>=3.6. From a security standpoint, folks should be updating their Python version.
Perhaps identify that 3.6 is a limited support version similar to Python's security releases. The team will not guarantee fixes for 3.6 on 6.0 and beyond; though we will continue to run CI until 3.6 is fully dropped. This will give users a bit more time to move to 3.7+.
Perhaps adding something like below to the README.md:
nbconvert 6.0 provides limited support for Python 3.6. nbconvert 6.1 will drop support for Python 3.6. Limited support means we will test and run CI on Python 3.6.12 or higher. Issues that are found only affecting Python 3.6 are not guaranteed to be fixed. We recommend all users of nbconvert use Python 3.7 and higher.
Most helpful comment
First, I would keep CI testing Python 3.6. As to whether to drop 3.6 now or not, I would make this the last release to support 3.6 (specifically 3.6.12+ via documentation in the readme) or
python_requires>=3.6. From a security standpoint, folks should be updating their Python version.Perhaps identify that 3.6 is a limited support version similar to Python's security releases. The team will not guarantee fixes for 3.6 on 6.0 and beyond; though we will continue to run CI until 3.6 is fully dropped. This will give users a bit more time to move to 3.7+.
Perhaps adding something like below to the
README.md:nbconvert 6.0 provides limited support for Python 3.6. nbconvert 6.1 will drop support for Python 3.6. Limited support means we will test and run CI on Python 3.6.12 or higher. Issues that are found only affecting Python 3.6 are not guaranteed to be fixed. We recommend all users of nbconvert use Python 3.7 and higher.