FINAL WEEK FOR 3.7.0 CHANGES!

This is it! We are down to THE FINAL WEEK for 3.7.0! Please get your feature fixes, bug fixes, and documentation updates in before 2018-05-21 ~23:59 Anywhere on Earth (UTC-12:00). That's about 7 days from now. We will then tag and produce the 3.7.0 release candidate. Our goal continues been to be to have no changes between the release candidate and final; AFTER NEXT WEEK'S RC1, CHANGES APPLIED TO THE 3.7 BRANCH WILL BE RELEASED IN 3.7.1. Please double-check that there are no critical problems outstanding and that documentation for new features in 3.7 is complete (including NEWS and What's New items), and that 3.7 is getting exposure and tested with our various platorms and third-party distributions and applications. Those of us who are participating in the development sprints at PyCon US 2018 here in Cleveland can feel the excitement building as we work through the remaining issues, including completing the "What's New in 3.7" document and final feature documentation. (We wish you could all be here.) As noted before, the ABI for 3.7.0 was frozen as of 3.7.0b3. You should now be treating the 3.7 branch as if it were already released and in maintenance mode. That means you should only push the kinds of changes that are appropriate for a maintenance release: non-ABI-changing bug and feature fixes and documentation updates. If you find a problem that requires an ABI-altering or other significant user-facing change (for example, something likely to introduce an incompatibility with existing users' code or require rebuilding of user extension modules), please make sure to set the b.p.o issue to "release blocker" priority and describe there why you feel the change is necessary. If you are reviewing PRs for 3.7 (and please do!), be on the lookout for and flag potential incompatibilities (we've all made them). Thanks again for all of your hard work towards making 3.7.0 yet another great release - coming to a website near you on 06-15! Release Managerly Yours, --Ned https://www.python.org/dev/peps/pep-0537/ -- Ned Deily nad@python.org -- []

15.05.18 14:51, Ned Deily пише:
This is it! We are down to THE FINAL WEEK for 3.7.0! Please get your feature fixes, bug fixes, and documentation updates in before 2018-05-21 ~23:59 Anywhere on Earth (UTC-12:00). That's about 7 days from now. We will then tag and produce the 3.7.0 release candidate. Our goal continues been to be to have no changes between the release candidate and final; AFTER NEXT WEEK'S RC1, CHANGES APPLIED TO THE 3.7 BRANCH WILL BE RELEASED IN 3.7.1. Please double-check that there are no critical problems outstanding and that documentation for new features in 3.7 is complete (including NEWS and What's New items), and that 3.7 is getting exposure and tested with our various platorms and third-party distributions and applications. Those of us who are participating in the development sprints at PyCon US 2018 here in Cleveland can feel the excitement building as we work through the remaining issues, including completing the "What's New in 3.7" document and final feature documentation. (We wish you could all be here.)
The "What's New in 3.7" document is still not complete. Actually it is far completing. In the previous releases somebody made a thoughtful review of the NEWS file and added all significant changes in What's New, and also removed insignificant entries, reorganized entries, fixed errors, improved wording and formatting. Many thanks to Martin Panter, Elvis Pranskevichus, Yury Selivanov, R. David Murray, Nick Coghlan, Antoine Pitrou, Victor Stinner and others for their great work! But seems in 3.7 this documents doesn't have an editor.

On Thu, 17 May 2018 at 14:31 Serhiy Storchaka <storchaka@gmail.com> wrote:
15.05.18 14:51, Ned Deily пише:
This is it! We are down to THE FINAL WEEK for 3.7.0! Please get your feature fixes, bug fixes, and documentation updates in before 2018-05-21 ~23:59 Anywhere on Earth (UTC-12:00). That's about 7 days from now. We will then tag and produce the 3.7.0 release candidate. Our goal continues been to be to have no changes between the release candidate and final; AFTER NEXT WEEK'S RC1, CHANGES APPLIED TO THE 3.7 BRANCH WILL BE RELEASED IN 3.7.1. Please double-check that there are no critical problems outstanding and that documentation for new features in 3.7 is complete (including NEWS and What's New items), and that 3.7 is getting exposure and tested with our various platorms and third-party distributions and applications. Those of us who are participating in the development sprints at PyCon US 2018 here in Cleveland can feel the excitement building as we work through the remaining issues, including completing the "What's New in 3.7" document and final feature documentation. (We wish you could all be here.)
The "What's New in 3.7" document is still not complete. Actually it is far completing. In the previous releases somebody made a thoughtful review of the NEWS file and added all significant changes in What's New, and also removed insignificant entries, reorganized entries, fixed errors, improved wording and formatting. Many thanks to Martin Panter, Elvis Pranskevichus, Yury Selivanov, R. David Murray, Nick Coghlan, Antoine Pitrou, Victor Stinner and others for their great work! But seems in 3.7 this documents doesn't have an editor.
Maybe we should start thinking about flagging PRs or issues as needing a What's New entry to help track when they need one, or always expect it in a PR and ignore that requirement when a 'skip whats new' label is applied. That would at least make it easier to keep track of what needs to be done.

17.05.18 21:39, Brett Cannon пише:
Maybe we should start thinking about flagging PRs or issues as needing a What's New entry to help track when they need one, or always expect it in a PR and ignore that requirement when a 'skip whats new' label is applied. That would at least make it easier to keep track of what needs to be done.
The requirement of flagging PRs or issues as needing a What's New entry doesn't differ in principle from the requirement of creating a What's New entry for these changes. The latter is good, and I'm trying always create a What's New entry for significant enhancement or potentially breaking change. And even I sometimes is unsure and don't document some important changes (like in issue30399). Needed a look of yet one pair of eyes. As for requiring a What's New entry by default and introducing a 'skip whats new' label, I suppose this will add much nuisance. Most PRs (except docs and tests changes) need a news entry, but most PRs don't need a What's New entry because their are bug fixes. Therefore a 'skip whats new' label will be required much more times than 'skip news' or 'skip issue' labels. A thing that can help is a tool that makes a structural diff between NEWS files for different versions and between different branches. It will filter out bugfix changes. The simple 'diff' is not well appropriate because entries can be in different order, and news entries now are scattered between several files, and news entries for previous version sometimes should be searched in different files, and sometimes should be searched on a different branch. The text of entries in different versions can also be different because the same issue can change the behavior on the master and backport the part of changes as a bugfix.

On 18.05.2018 10:55, Serhiy Storchaka wrote:
17.05.18 21:39, Brett Cannon пише:
Maybe we should start thinking about flagging PRs or issues as needing a What's New entry to help track when they need one, or always expect it in a PR and ignore that requirement when a 'skip whats new' label is applied. That would at least make it easier to keep track of what needs to be done.
The requirement of flagging PRs or issues as needing a What's New entry doesn't differ in principle from the requirement of creating a What's New entry for these changes. The latter is good, and I'm trying always create a What's New entry for significant enhancement or potentially breaking change. And even I sometimes is unsure and don't document some important changes (like in issue30399). Needed a look of yet one pair of eyes.
As for requiring a What's New entry by default and introducing a 'skip whats new' label, I suppose this will add much nuisance. Most PRs (except docs and tests changes) need a news entry, but most PRs don't need a What's New entry because their are bug fixes. Therefore a 'skip whats new' label will be required much more times than 'skip news' or 'skip issue' labels.
A thing that can help is a tool that makes a structural diff between NEWS files for different versions and between different branches. It will filter out bugfix changes. The simple 'diff' is not well appropriate because entries can be in different order, and news entries now are scattered between several files, and news entries for previous version sometimes should be searched in different files, and sometimes should be searched on a different branch. The text of entries in different versions can also be different because the same issue can change the behavior on the master and backport the part of changes as a bugfix. Not all bugs apply to all, or multiple branches, so that wouldn't filter
Since Python uses semantic versioning (https://semver.org), the criterion for "what's new-worthy" changes is simple: they are _public interface changes_ (which include visible changes to documented behavior). (I maintain that changes to behavior that is not documented -- incl. issue30399 -- are _not_ public interface changes, and whoever relies on them does that on their own risk.) Reading previous What's New, I see that it is structured like this * Entries for major changes: * General design decisions * Changes that fall into a category (more recent What's New's include about a dozen categories) * "Other": the list of the rest So, it makes sense to mark work items as "interface change" or something, and optionally with a caterory if that category is established. You can't make a mistake here 'cuz a public interface change requires an edit to related documentation. them out reliably.
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/vano%40mail.mipt.ru
-- Regards, Ivan

On 5/18/18 9:20 AM, Ivan Pozdeev via Python-Dev wrote:
Since Python uses semantic versioning (https://semver.org), the criterion for "what's new-worthy" changes is simple: they are _public interface changes_ (which include visible changes to documented behavior). (I maintain that changes to behavior that is not documented -- incl. issue30399 -- are _not_ public interface changes, and whoever relies on them does that on their own risk.)
Python does NOT use semantic versioning as features are allowed to be obsoleted and removed without a major version number change. Also the addition of a new keyword which breaks old code would not be allowed with semantic versioning. The basic rules of semantic versioning is that ANY program that uses documented features of version a.b.c will work on any version a.d.e where (d > b) or (d = b and e > c). If python did use semantic versioning then there would be no need to keep updates to older minor versions, once 3.7.0 was out, there would be no need for keeping the 3.6.x, 3.5.x, 3.4.x branch etc, as any program that was written for those older version would just work with the newer version. The need for those is proof that python does not use semantic versioning. If you wanted to map python version to a semantic versioning concept, the first two numbers of the version would correspond to what semantic versioning call the 'major revision' which is what is allowed to break backwards compatibility with API, with the first digit being major changes and the second minor but not fully backwards compatible changes. -- Richard Damon

Elvis has been working on the What’s New doc at the sprints this week. He should be checking in his edits soon. Stay tuned! -- Ned Deily nad@python.org -- []
On May 17, 2018, at 14:31, Serhiy Storchaka <storchaka@gmail.com> wrote:
15.05.18 14:51, Ned Deily пише:
This is it! We are down to THE FINAL WEEK for 3.7.0! Please get your feature fixes, bug fixes, and documentation updates in before 2018-05-21 ~23:59 Anywhere on Earth (UTC-12:00). That's about 7 days from now. We will then tag and produce the 3.7.0 release candidate. Our goal continues been to be to have no changes between the release candidate and final; AFTER NEXT WEEK'S RC1, CHANGES APPLIED TO THE 3.7 BRANCH WILL BE RELEASED IN 3.7.1. Please double-check that there are no critical problems outstanding and that documentation for new features in 3.7 is complete (including NEWS and What's New items), and that 3.7 is getting exposure and tested with our various platorms and third-party distributions and applications. Those of us who are participating in the development sprints at PyCon US 2018 here in Cleveland can feel the excitement building as we work through the remaining issues, including completing the "What's New in 3.7" document and final feature documentation. (We wish you could all be here.)
The "What's New in 3.7" document is still not complete. Actually it is far completing. In the previous releases somebody made a thoughtful review of the NEWS file and added all significant changes in What's New, and also removed insignificant entries, reorganized entries, fixed errors, improved wording and formatting. Many thanks to Martin Panter, Elvis Pranskevichus, Yury Selivanov, R. David Murray, Nick Coghlan, Antoine Pitrou, Victor Stinner and others for their great work! But seems in 3.7 this documents doesn't have an editor.

On Thursday, May 17, 2018 2:31:37 PM EDT Serhiy Storchaka wrote:
15.05.18 14:51, Ned Deily пише:
This is it! We are down to THE FINAL WEEK for 3.7.0! Please get your feature fixes, bug fixes, and documentation updates in before 2018-05-21 ~23:59 Anywhere on Earth (UTC-12:00). That's about 7 days from now. We will then tag and produce the 3.7.0 release candidate. Our goal continues been to be to have no changes between the release candidate and final; AFTER NEXT WEEK'S RC1, CHANGES APPLIED TO THE 3.7 BRANCH WILL BE RELEASED IN 3.7.1. Please double-check that there are no critical problems outstanding and that documentation for new features in 3.7 is complete (including NEWS and What's New items), and that 3.7 is getting exposure and tested with our various platorms and third-party distributions and applications. Those of us who are participating in the development sprints at PyCon US 2018 here in Cleveland can feel the excitement building as we work through the remaining issues, including completing the "What's New in 3.7" document and final feature documentation. (We wish you could all be here.)
The "What's New in 3.7" document is still not complete. Actually it is far completing. In the previous releases somebody made a thoughtful review of the NEWS file and added all significant changes in What's New, and also removed insignificant entries, reorganized entries, fixed errors, improved wording and formatting. Many thanks to Martin Panter, Elvis Pranskevichus, Yury Selivanov, R. David Murray, Nick Coghlan, Antoine Pitrou, Victor Stinner and others for their great work! But seems in 3.7 this documents doesn't have an editor.
I'm working on the What's New document. Will start putting PRs in the next few days. Elvis

We are going to extend for 48 hours the deadline for 3.7.0rc1, that is, until 2018-05-23 23:59 AOE. While we have made tremendous progress towards the release candidate over the past week especially with the huge efforts at the PyCon US Sprints, we still have some important issues to resolve. A stumbling block has been the increased instability in the test suite, primarily in test_asyncio, which has caused delays in merging PRs due to intermittent failures in CI test runs and which has caused widespread buildbot failures. Another factor is that this weekend and Monday are public holidays in many countries, something I did not take into account when drawing up the schedule. (Note that next weekend is a major public holiday in the USA.) So let's plan on using the extra two days to work through the remaining release blockers. Thanks again! --Ned On May 15, 2018, at 07:51, Ned Deily <nad@python.org> wrote:
This is it! We are down to THE FINAL WEEK for 3.7.0! Please get your feature fixes, bug fixes, and documentation updates in before 2018-05-21 ~23:59 Anywhere on Earth (UTC-12:00). That's about 7 days from now. We will then tag and produce the 3.7.0 release candidate. Our goal continues been to be to have no changes between the release candidate and final; AFTER NEXT WEEK'S RC1, CHANGES APPLIED TO THE 3.7 BRANCH WILL BE RELEASED IN 3.7.1. Please double-check that there are no critical problems outstanding and that documentation for new features in 3.7 is complete (including NEWS and What's New items), and that 3.7 is getting exposure and tested with our various platorms and third-party distributions and applications. Those of us who are participating in the development sprints at PyCon US 2018 here in Cleveland can feel the excitement building as we work through the remaining issues, including completing the "What's New in 3.7" document and final feature documentation. (We wish you could all be here.)
As noted before, the ABI for 3.7.0 was frozen as of 3.7.0b3. You should now be treating the 3.7 branch as if it were already released and in maintenance mode. That means you should only push the kinds of changes that are appropriate for a maintenance release: non-ABI-changing bug and feature fixes and documentation updates. If you find a problem that requires an ABI-altering or other significant user-facing change (for example, something likely to introduce an incompatibility with existing users' code or require rebuilding of user extension modules), please make sure to set the b.p.o issue to "release blocker" priority and describe there why you feel the change is necessary. If you are reviewing PRs for 3.7 (and please do!), be on the lookout for and flag potential incompatibilities (we've all made them).
Thanks again for all of your hard work towards making 3.7.0 yet another great release - coming to a website near you on 06-15!
Release Managerly Yours, --Ned
-- Ned Deily nad@python.org -- []

15.05.18 14:51, Ned Deily пише:
This is it! We are down to THE FINAL WEEK for 3.7.0! Please get your feature fixes, bug fixes, and documentation updates in before 2018-05-21 ~23:59 Anywhere on Earth (UTC-12:00). That's about 7 days from now. We will then tag and produce the 3.7.0 release candidate. Our goal continues been to be to have no changes between the release candidate and final; AFTER NEXT WEEK'S RC1, CHANGES APPLIED TO THE 3.7 BRANCH WILL BE RELEASED IN 3.7.1. Please double-check that there are no critical problems outstanding and that documentation for new features in 3.7 is complete (including NEWS and What's New items), and that 3.7 is getting exposure and tested with our various platorms and third-party distributions and applications. Those of us who are participating in the development sprints at PyCon US 2018 here in Cleveland can feel the excitement building as we work through the remaining issues, including completing the "What's New in 3.7" document and final feature documentation. (We wish you could all be here.)
Is it possible to add yet one beta instead? CI was broken for few latest days, tests are not passed on my computer still (and fail on some buildbots), updating What's New exposed new features which need additional testing (and maybe fixing or reverting), and I'm not comfortable about some changes which would be harder to fix after the release.

2018-05-23 13:45 GMT+02:00 Serhiy Storchaka <storchaka@gmail.com>:
CI was broken for few latest days, tests are not passed on my computer still (and fail on some buildbots), (...)
I looked at buildbots and I confirm that many of the 3.x buildbots are red: AMD64 FreeBSD 10.x Shared 3.x AMD64 Windows8.1 Non-Debug 3.x ARMv7 Ubuntu 3.x PPC64 Fedora 3.x s390x RHEL 3.x x86 Gentoo Installed with X 3.x x86 Gentoo Refleaks 3.x AMD64 Windows8.1 Refleaks 3.x Victor

Ah, Python doesn't compile on Windows anymore :-) https://bugs.python.org/issue33614 Victor 2018-05-23 14:16 GMT+02:00 Victor Stinner <vstinner@redhat.com>:
2018-05-23 13:45 GMT+02:00 Serhiy Storchaka <storchaka@gmail.com>:
CI was broken for few latest days, tests are not passed on my computer still (and fail on some buildbots), (...)
I looked at buildbots and I confirm that many of the 3.x buildbots are red:
AMD64 FreeBSD 10.x Shared 3.x AMD64 Windows8.1 Non-Debug 3.x ARMv7 Ubuntu 3.x PPC64 Fedora 3.x s390x RHEL 3.x x86 Gentoo Installed with X 3.x x86 Gentoo Refleaks 3.x AMD64 Windows8.1 Refleaks 3.x
Victor

On May 23, 2018, at 07:45, Serhiy Storchaka <storchaka@gmail.com> wrote:
15.05.18 14:51, Ned Deily пише:
This is it! We are down to THE FINAL WEEK for 3.7.0! Please get your feature fixes, bug fixes, and documentation updates in before 2018-05-21 ~23:59 Anywhere on Earth (UTC-12:00). That's about 7 days from now. We will then tag and produce the 3.7.0 release candidate. Our goal continues been to be to have no changes between the release candidate and final; AFTER NEXT WEEK'S RC1, CHANGES APPLIED TO THE 3.7 BRANCH WILL BE RELEASED IN 3.7.1. Please double-check that there are no critical problems outstanding and that documentation for new features in 3.7 is complete (including NEWS and What's New items), and that 3.7 is getting exposure and tested with our various platorms and third-party distributions and applications. Those of us who are participating in the development sprints at PyCon US 2018 here in Cleveland can feel the excitement building as we work through the remaining issues, including completing the "What's New in 3.7" document and final feature documentation. (We wish you could all be here.) Is it possible to add yet one beta instead?
CI was broken for few latest days, tests are not passed on my computer still (and fail on some buildbots), updating What's New exposed new features which need additional testing (and maybe fixing or reverting), and I'm not comfortable about some changes which would be harder to fix after the release.
it is possible but there's no point in doing either another beta or a release candidate until we understand and address the current blocking issues, like the major buildbot failures. We have another 24 hours until rc1 was planned to be tagged. Let's keep working on the known issues and we will make a decision then. -- Ned Deily nad@python.org -- []

On May 23, 2018, at 09:13, Ned Deily <nad@python.org> wrote:
On May 23, 2018, at 07:45, Serhiy Storchaka <storchaka@gmail.com> wrote:
Is it possible to add yet one beta instead? CI was broken for few latest days, tests are not passed on my computer still (and fail on some buildbots), updating What's New exposed new features which need additional testing (and maybe fixing or reverting), and I'm not comfortable about some changes which would be harder to fix after the release. it is possible but there's no point in doing either another beta or a release candidate until we understand and address the current blocking issues, like the major buildbot failures. We have another 24 hours until rc1 was planned to be tagged. Let's keep working on the known issues and we will make a decision then.
An update: thanks to a lot of effort over the past day by a number of people (including Victor, Serhiy, Christian, Zach, and others I'm sure I'm forgetting - my apologies), we have addressed all of the "release blocker" issues and all but one of the persistent failures on the 3.7 stable buildbots. We should have the couple of remaining "deferred blockers" including the remaining stable buildbots in green status by later today. At that point, we will be ready to tag 3.7.0rc1 and begin producing the release candidate artifacts. So this *is* really your last chance: if you know of any true releasing blocking issues for 3.7.0, you have about 12 more hours to log it in the bug tracker as a "release blocker". I'll send out an email once we start the release manufacturing. Any merges to the 3.7 branch after that will be released in 3.7.1 which we tentatively are planning to ship sometime before the end of July (< 2018-07-31). If you do find a critical problem in 3.7.0rc1 that you think needs to be fixed in 3.7.0, please merge a fix into 3.7 (and other appropriate branches), leave the issue open and marked as "release blocker", and add a note why you think the fix needs to be cherry-picked into 3.7.0. More later today! --Ned P.S. To address a few of the earlier comments on this thread: Antoine: > Also there's https://bugs.python.org/issue33612 which appears quite critical. Resolved Victor: > Can someone please have a look at my socketserver change? Reviewed and merged Victor: > I looked at buildbots and I confirm that many of the 3.x buildbots are red: Yes, but it's the 3.7 buildbots that are of interest now, not the 3.x ones :) And, as noted above, I believe we have cleaned up (or will shortly) the remaining 3.7 stable buildbot failures. Coincidentally, we've also fixed some of the 3.x (master -> 3.8) buildbots. Victor: > Ah, Python doesn't compile on Windows anymore :-) Stale files on one of the Windows buildbots -> cleaned up -- Ned Deily nad@python.org -- []

2018-05-24 9:23 GMT+02:00 Ned Deily <nad@python.org>:
Any merges to the 3.7 branch after that will be released in 3.7.1 which we tentatively are planning to ship sometime before the end of July (< 2018-07-31).
I recall that Python 3.6.0 was full of bugs, some functions like os.waitpid() on Windows (if I recall correctly) were completely broken. We can do our best to test as much as possible, hope that more and more people use the "nightly" Python version to run their CI, but we always miss bugs. We always get the most testers when the final x.y.0 version is released. Why waiting two months to release bugfixes? Victor

On May 24, 2018, at 07:26, Victor Stinner <vstinner@redhat.com> wrote:
2018-05-24 9:23 GMT+02:00 Ned Deily <nad@python.org>:
Any merges to the 3.7 branch after that will be released in 3.7.1 which we tentatively are planning to ship sometime before the end of July (< 2018-07-31). I recall that Python 3.6.0 was full of bugs, some functions like os.waitpid() on Windows (if I recall correctly) were completely broken.
We can do our best to test as much as possible, hope that more and more people use the "nightly" Python version to run their CI, but we always miss bugs. We always get the most testers when the final x.y.0 version is released.
Why waiting two months to release bugfixes?
We're not planning on waiting two months. First, 3.7.0 final is not planned to release until 2018-06-15; if necessary, there could be one or more emergency bug fixes in it. Second, "before the end of July (< 2018-07-31)" does not mean we have to wait until the end of July. If necessary, it could be near the beginning of the month, so closer to two weeks after the release. Right now, our focus should be on getting high-quality 3.7.0rc1 and 3.7.0 final releases out there to our users and then we can focus on what comes next. Getting close! -- Ned Deily nad@python.org -- []

24.05.18 10:23, Ned Deily пише:
So this *is* really your last chance: if you know of any true releasing blocking issues for 3.7.0, you have about 12 more hours to log it in the bug tracker as a "release blocker". I'll send out an email once we start the release manufacturing. Any merges to the 3.7 branch after that will be released in 3.7.1 which we tentatively are planning to ship sometime before the end of July (< 2018-07-31). If you do find a critical problem in 3.7.0rc1 that you think needs to be fixed in 3.7.0, please merge a fix into 3.7 (and other appropriate branches), leave the issue open and marked as "release blocker", and add a note why you think the fix needs to be cherry-picked into 3.7.0.
I have doubts about two issues. I feel the responsibility for them because I had the opportunity to solve them before, but I lost it. 1. Changes in the AST. Few third-party projects was broken by it and already are fixed. I suppose yet few projects will be changed after 3.7 be released. It is interesting that IPython was broken in different way than other projects. It was needed to reintroduce the docstring in the list of statements, effectively reverting the 3.7 change. IPython allows to enter several statements at prompt, and therefore it compiles them with the 'exec' mode instead of 'single' as the CPython REPL and IDLE shell. Currently CPython doesn't allow you to paste arbitrary script like the following: if a: b if c: d You need to add an empty line between top-level complex statements. If one time CPython will add support of pasting several statements without empty lines between, it might need to add the same hack as IPython. I afraid that we might be needed to change AST again, in 3.7.1 or in 3.8.0. 2. Pickle support in typing is not perfect. I was going to fix it (I had almost ready code), but lost a chance of doing this before. It can be changed in 3.7.1, but this means that pickles of some derived typing types created in 3.7.0 will be not compatible with future versions (may be 3.7.1 will not break compatibility, but it will be broken in future because we will not specially supported compatibility with 3.7.0). There is third issue, related to NetBSD, but it is less important. I think two weeks will be enough for fixing these issues, but not at rc1 stage.

On May 24, 2018, at 11:35, Serhiy Storchaka <storchaka@gmail.com> wrote:
I have doubts about two issues. I feel the responsibility for them because I had the opportunity to solve them before, but I lost it. [...]
Serhiy, what are the bugs.python.org issue numbers for these? Are they marked as "release blocker"? -- Ned Deily nad@python.org -- []

2. Pickle support in typing is not perfect. I was going to fix it (I had almost ready code), but lost a chance of doing this before. It can be changed in 3.7.1, but this means that pickles of some derived typing types created in 3.7.0 will be not compatible with future versions (may be 3.7.1 will not break compatibility, but it will be broken in future because we will not specially supported compatibility with 3.7.0).
I think I had fixed this one. At least the examples reported on typing tracker are now fixed. Do you have some other examples that still fail? -- Ivan On 24 May 2018 at 12:02, Ned Deily <nad@python.org> wrote:
On May 24, 2018, at 11:35, Serhiy Storchaka <storchaka@gmail.com> wrote:
I have doubts about two issues. I feel the responsibility for them because I had the opportunity to solve them before, but I lost it. [...]
Serhiy, what are the bugs.python.org issue numbers for these? Are they marked as "release blocker"?
-- Ned Deily nad@python.org -- []
_______________________________________________ python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/

24.05.18 19:02, Ned Deily пише:
On May 24, 2018, at 11:35, Serhiy Storchaka <storchaka@gmail.com> wrote:
I have doubts about two issues. I feel the responsibility for them because I had the opportunity to solve them before, but I lost it. [...]
Serhiy, what are the bugs.python.org issue numbers for these? Are they marked as "release blocker"?
For docstring in AST: https://bugs.python.org/issue32911 Inada's patch looked complex (actually it mostly restored the code before his previous change). We didn't know about IPython and we decided that it is not worth to change this code at this stage (after beta2). And definitely it will be later to do this after rc1. For pickling of typing types: https://bugs.python.org/issue32873 Ivan fixed cases supported before 3.7. They now are backward and forward compatible. But cases not supported before 3.7 (like List[int]) now produce fragile pickles.

But cases not supported before 3.7 (like List[int]) now produce fragile pickles.
List[int] pickled in 3.7 can't be un-pickled in 3.6, but I wouldn't worry too much about this because it never worked in 3.6. I remember you proposed using __getitem__ in __reduce__, but I am not sure it is a better way, although it will fix the above problem. I don't think this one is a blocker and we can move this discussion back to b.p.o., unless you have some particular concerns. The AST one however looks more serious. -- Ivan On 24 May 2018 at 12:26, Serhiy Storchaka <storchaka@gmail.com> wrote:
24.05.18 19:02, Ned Deily пише:
On May 24, 2018, at 11:35, Serhiy Storchaka <storchaka@gmail.com> wrote:
I have doubts about two issues. I feel the responsibility for them because I had the opportunity to solve them before, but I lost it.
[...]
Serhiy, what are the bugs.python.org issue numbers for these? Are they marked as "release blocker"?
For docstring in AST: https://bugs.python.org/issue32911
Inada's patch looked complex (actually it mostly restored the code before his previous change). We didn't know about IPython and we decided that it is not worth to change this code at this stage (after beta2). And definitely it will be later to do this after rc1.
For pickling of typing types: https://bugs.python.org/issue32873
Ivan fixed cases supported before 3.7. They now are backward and forward compatible. But cases not supported before 3.7 (like List[int]) now produce fragile pickles.
_______________________________________________ python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/

On May 24, 2018, at 12:26, Serhiy Storchaka <storchaka@gmail.com> wrote:
24.05.18 19:02, Ned Deily пише:
On May 24, 2018, at 11:35, Serhiy Storchaka <storchaka@gmail.com> wrote:
I have doubts about two issues. I feel the responsibility for them because I had the opportunity to solve them before, but I lost it. [...]
Serhiy, what are the bugs.python.org issue numbers for these? Are they marked as "release blocker"? For docstring in AST: https://bugs.python.org/issue32911
Inada's patch looked complex (actually it mostly restored the code before his previous change). We didn't know about IPython and we decided that it is not worth to change this code at this stage (after beta2). And definitely it will be later to do this after rc1.
We have had many discussions about this issue earlier and, while there were arguments made for more than one approach, I believe we reached agreement that this was a deliberate incompatibility that we and our users could live with. The issue has been closed since 2018-03-18. At some point, we need to move on. However, if additional exposure downstream has identified significant new problems, then the issue should be re-opened and a specific proposal made. BTW, do we know what the iPython folks think about this? But there still seems to be disagreements about whether anything needs to be changed. As I commented yesterday, I *really* don't want to keep revisiting this but I am not going to make a technical call. Without an open "release blocker" issue, though, nothing is going to change for 3.7.0rc1. If you (or anyone else) feels strongly enough about it, you should re-open the issue now and make it as a "release blocker" and we should discuss the implications and possible plans of action in the issue.
For pickling of typing types: https://bugs.python.org/issue32873
Ivan fixed cases supported before 3.7. They now are backward and forward compatible. But cases not supported before 3.7 (like List[int]) now produce fragile pickles.
That issue was closed by Ivan and there have been no comments on it since 2018-04-04. I'll defer to his recent reply in this thread. -- Ned Deily nad@python.org -- []

On May 24, 2018, at 03:23, Ned Deily <nad@python.org> wrote:
On May 23, 2018, at 07:45, Serhiy Storchaka <storchaka@gmail.com> wrote:
Is it possible to add yet one beta instead? CI was broken for few latest days, tests are not passed on my computer still (and fail on some buildbots), updating What's New exposed new features which need additional testing (and maybe fixing or reverting), and I'm not comfortable about some changes which would be harder to fix after the release. it is possible but there's no point in doing either another beta or a release candidate until we understand and address the current blocking issues, like the major buildbot failures. We have another 24 hours until rc1 was planned to be tagged. Let's keep working on the known issues and we will make a decision then. An update: thanks to a lot of effort over the past day by a number of
On May 23, 2018, at 09:13, Ned Deily <nad@python.org> wrote: people (including Victor, Serhiy, Christian, Zach, and others I'm sure I'm forgetting - my apologies), we have addressed all of the "release blocker" issues and all but one of the persistent failures on the 3.7 stable buildbots. We should have the couple of remaining "deferred blockers" including the remaining stable buildbots in green status by later today. At that point, we will be ready to tag 3.7.0rc1 and begin producing the release candidate artifacts.
Further update: some good news and some changes. The good news is that we have resolutions for all of the previous release and deferred blockers. Thanks to a number of people for continuing to help get the remaining stable buildbot issues taken care of along with some lingering bugs. The not-quite-as-good news is that we have had more discussions about some unexpected incompatibilities that have shown up with downstream user testing with the AST docstrings changes in place (see bpo-32911). We have had some previous discussions about the expected user impact and, earlier in the beta phase, I encouraged us to stay the course with the feature as implemented. But I am now persuaded that we owe it to our users to take one more look at this to make sure we do not force them to make changes for 3.7 and then once again for 3.8. More details are in the bug tracker issue; I strongly encourage those of us who have been involved with this to "vote" there on the proposal to either (A) proceed with the release of the current implementation in 3.7.0 or (B) revert the feature in 3.7.0 and retarget for 3.8. Should the consensus be to revert (B), we will plan to have one more fast-track beta release (b5) prior to the release candidate, in order to allow downstream users to test their projects with the removal. PLEASE, keep the discussion about this on the bug tracker (and not here!) and keep it brief so we can move forward quickly. Because of the upcoming 3-day holiday weekend in some countries, I have set Tue 2018-05-29 18:00 UTC as a cutoff for "voting" but, if a clear consensus emerges earlier, we will likely cut the discussion short. So chime in now on the bug tracker if you have a stake in this issue. https://bugs.python.org/issue32911 This does mean that yesterday's "last chance" has been extended a bit, at most a few days. I will let you know as soon as we have made a decision about the feature and will provide updated 3.7.0 schedule info at that time. --Ned -- Ned Deily nad@python.org -- []
participants (8)
-
Brett Cannon
-
Elvis Pranskevichus
-
Ivan Levkivskyi
-
Ivan Pozdeev
-
Ned Deily
-
Richard Damon
-
Serhiy Storchaka
-
Victor Stinner