Skip to content

GH-109975: Copyedit 3.13 What's New: New Features #122990

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

Merged
merged 8 commits into from
Aug 15, 2024

Conversation

AA-Turner
Copy link
Member

@AA-Turner AA-Turner commented Aug 13, 2024

A copy-editing pass for new features. Next will be other language changes.

Summary of changes:

  • Move the free-threaded and JIT sections up, though still below pyrepl/improved error messages, as these two will have high end-user impact
  • Update the pyrepl descriptions as Windows is now supported and readline isn't required.
  • Update snippets for error messages to not promote putting multiple statements on one line
  • Significantly update the "free-threaded" section
  • Consolidate and update the JIT section.
    • Is What's New the right place for the fairly detailed description of the Tier 2 architecture / configure options? I note that --enable-experimental-jit isn't mentioned anywhere else in the docs.
  • Move __static_attributes__ to other language changes (just a copy/paste)
  • Rewrap to 80 chars.

As @hugovk mentioned in #109975 (comment), there isn't a great place to link to for the macOS installers currently. I'm not best placed to write that guide though, given I've never owned a Mac!

A


📚 Documentation preview 📚: https://cpython-previews--122990.org.readthedocs.build/en/122990/whatsnew/3.13.html#new-features

@AA-Turner AA-Turner added docs Documentation in the Doc dir skip news needs backport to 3.13 bugs and security fixes labels Aug 13, 2024
@AA-Turner AA-Turner requested review from hugovk and Yhg1s August 13, 2024 23:22
@hugovk
Copy link
Member

hugovk commented Aug 14, 2024

@colesbury Please could you check the free-threaded section?

https://cpython-previews--122990.org.readthedocs.build/en/122990/whatsnew/3.13.html#free-threaded-cpython


  • Consolidate and update the JIT section.

    • Is What's New the right place for the fairly detailed description of the Tier 2 architecture / configure options? I note that --enable-experimental-jit isn't mentioned anywhere else in the docs.

Let's ask @brandtbucher. And please could you check the JIT section in general?

https://cpython-previews--122990.org.readthedocs.build/en/122990/whatsnew/3.13.html#a-just-in-time-compiler-for-cpython

@colesbury
Copy link
Contributor

The free-threaded section looks good to me.

@brandtbucher
Copy link
Member

The JIT section is accurate. On first read, it did feel a little low-level, but upon re-reading it seems to have a similar level of detail as the linked 3.11 What's New section on the specializing interpreter. I think it's okay, since it provides a basic overview of what happens without getting too in-the-weeds on how it happens. And it gives enough breadcrumbs for those who are looking for more info without overwhelming casual readers.

I'm not opposed to dedication sections in the configure docs (or a dedicated page) on how to use the JIT (though we don't have many actual APIs yet besides an environment variable), but if we do then there should be a big banner that says it's experimental, yadda yadda. I agree though that having the 3.13 What's New be an authoritative user-facing doc on tier two code exectuion isn't ideal... though that's sort of what we did for the specializing interpreter in 3.11, and nobody complained (plus, people are more likely to find the top of the What's New than a dedicated JIT page at this point).

Which is all a very long way of saying: LGTM, but yeah, we might want to document this a bit more somewhere. I personally think the JIT README and this What's New is okay for now, but others may disagree.

@AA-Turner
Copy link
Member Author

LGTM, but yeah, we might want to document this a bit more somewhere. I personally think the JIT README and this What's New is okay for now, but others may disagree.

Sounds good, for now if we're happy to keep it in What's New then that is simplest, and the 3.11 specialising interpreter precedent is helpful.

A

@AA-Turner AA-Turner requested a review from hugovk August 15, 2024 02:25
Copy link
Member

@hugovk hugovk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(I think it'd be fine linking to the JIT README.)

@AA-Turner AA-Turner merged commit b106cf8 into python:main Aug 15, 2024
23 checks passed
@miss-islington-app
Copy link

Thanks @AA-Turner for the PR 🌮🎉.. I'm working now to backport this PR to: 3.13.
🐍🍒⛏🤖

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Aug 15, 2024
)

(cherry picked from commit b106cf8)

Co-authored-by: Adam Turner <[email protected]>
Co-authored-by: Hugo van Kemenade <[email protected]>
Co-authored-by: Brandt Bucher <[email protected]>
@bedevere-app
Copy link

bedevere-app bot commented Aug 15, 2024

GH-123032 is a backport of this pull request to the 3.13 branch.

@AA-Turner AA-Turner deleted the docs/whatsnew/new-features branch August 15, 2024 09:08
@bedevere-app bedevere-app bot removed the needs backport to 3.13 bugs and security fixes label Aug 15, 2024
@AA-Turner
Copy link
Member Author

Thanks all!

A

AA-Turner added a commit that referenced this pull request Aug 15, 2024
…123032)

GH-109975: Copyedit 3.13 What's New: New Features (GH-122990)
(cherry picked from commit b106cf8)

Co-authored-by: Adam Turner <[email protected]>
Co-authored-by: Hugo van Kemenade <[email protected]>
Co-authored-by: Brandt Bucher <[email protected]>
blhsing pushed a commit to blhsing/cpython that referenced this pull request Aug 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Documentation in the Doc dir skip news
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants