Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Python Programming

Python Core Developers Release Version 3.10 -- First Major Release Since Transition from Python 2 (zdnet.com) 27

ZDNet reports: "Python 3.10.0 is the newest major release of the Python programming language, and it contains many new features and optimizations," CPython maintainers announced in a blogpost...

One of the headline features is "structural pattern matching" in Python 3.10 -- a technique for handling data that's already available in C, Java, JavaScript, Scala and Elixir. "Structural pattern matching has been added in the form of a match statement and case statements of patterns with associated actions. Patterns consist of sequences, mappings, primitive data types as well as class instances. Pattern matching enables programs to extract information from complex data types, branch on the structure of data, and apply specific actions based on different forms of data," the project explains in release 3.10 notes. "While structural pattern matching can be used in its simplest form comparing a variable to a literal in a case statement, its true value for Python lies in its handling of the subject's type and shape," it adds.

Python core contributors presented the update in a meeting this week. Pablo Galindo Salgado, a physicist and core Python contributor, explained how the project is using Microsoft's GitHub Actions DevOps (CI/CD) tools to test Python changes on Windows, Linux and macOS systems. "When you merge something to Python, there is a CI in GitHub Actions, and we have other providers, although we are mainly using GitHub Actions now. It tests your commits on every single commit on Linux, Windows, and macOS," said Salgado.

Besides better error messages (including more precise and reliable line numbers for debugging), other changes to the language include overloading the pipe operator to allow a new syntax for writing union types, and type aliases (a kind of user-specified type, offering a way to explicitly declare an assignment as a type alias).
This discussion has been archived. No new comments can be posted.

Python Core Developers Release Version 3.10 -- First Major Release Since Transition from Python 2

Comments Filter:
  • It's right there in The Famous Article:

    ZDNet reports:
    "Python 3.10.0 is the newest major release

    If that's merely accidental, then my name is "Let's Go" Brandon Tarquin Quirkendrubble (LGBTQ).

  • Note that Python 3.9.7 cannot be used on Windows 7 or earlier.

    Unfortunately leaving a lot of people behind.

    • Do you know what year it is and what the version number of Windows is?

      • I also know one of the selling points of open-source as opposed to proprietary is no forced obsolescence. Python is pulling a Windows 11 on us.

        • Windows introduces breaking changes which developers have to follow in order to keep their software running properly, and for this you aim your ire at - open source?

          Python is running great on everything which is currently supported. If you want to run it on Windows 7, you can provide patches - to Python. Try providing patches to Windows 7 to bring it up to speed with Windows 10 and see how far you get.

        • by Kremmy ( 793693 )
          It would be wonderful if compatibility with older environments was a given but the thing is, bit rot is not slowing down. it's only accelerating. Like I love my ability to fire up emulators and simulators and compatibility layers to keep older software working on newer machines but the energy required to do it to a high level of satisfaction has drastically increased as the software infrastructure has morphed and matured over time. I might be one of those people decrying modern systems for lacking the matur
        • I also know one of the selling points of open-source as opposed to proprietary is no forced obsolescence. Python is pulling a Windows 11 on us.

          Actually, no.

          Python is fully open source so no-one stops you from compiling it to run on windows 7.
          The first few 3.9 betas ran on windows 7 - mostly without problemns, but you needed to have the latest windows updates installed.

          But Python is also created by volunteers without receiving payment from users. To keep that sustainable new official releases are limited to operating systems that are in active support on the release day.

          If you want Python 3.10 on Windows 7, download the code, locate the line where

  • Python is a mess and all too often management says just do it and then we get a bigger Python mess. Finally in the year 2021 we get the switch case statement.
  • Did they break any backward compatibilities ?

    Yes, I'm still smarting from the work needed to move from Python 2.7 to 3.something. Perl hasn't pulled that kind of shit on the userbase for many many years (minor changes yes - bigtime backwards incompatibility no), still waiting to see if I can trust Python has finally grown up.

  • Did not read the article or the summary... but how is switching from 3.9 to 3.10 a major release? Sounds like a textbook case of a minor release to me. Also, from the changes described, that seems to be exactly what it is. Wouldn't there have been 9 similar releases "Since the Transition from Python 2"?
    • I meant 3.9 => 3.10... Didn't see that the ">" in the headline got killed...
    • I would agree it is a major release. With the changes to better help and the addition of match...it's a release I have been eagerly anticipated.

      You are looking at the numbering system. The version is not 3.10...it is 3.10.0. The move from 2-3 happened 13 years ago, and got a first digit change because it literally broke basic in-built functions.

Trap full -- please empty.

Working...