29 comments

  • pansa2 10 hours ago ago

    The PEP for this change is here [0] and discussion of it is here [1]. Both are very long and seem to represent a huge amount of complexity, apparently to make installing Python easier for novices?

    But what about those of us who listened to Rich Hickey and prefer "simple" over "easy"? With the executable installer no longer available, how do I get a copy of python.exe, python316.dll etc onto my machine so that `C:\Python316\python.exe <script>` works, without having to think about `py`, `pymanager`, Windows Store etc?

    [0] https://peps.python.org/pep-0773/

    [1] https://discuss.python.org/t/pep-773-a-python-installation-m...

  • proactivesvcs 15 hours ago ago

    With this change of policy the foundation does not "have any control or influence over what WinGet does", one of the first class methods to install python.

    https://github.com/python/pymanager/issues/287

  • Alifatisk 15 hours ago ago

    > To install using WinGet, the command is "winget install 9NQ7512CXL7T"

    Is the package name on purpose?

    • PunchyHamster 15 hours ago ago

      MS decided to look at all good practices in package repository management and don't do them

    • absynth 15 hours ago ago

      Yes.

      winget install ICURAIDI0TFU seemed unsuitable for production.

      winget install 8NDEADBEEF9N offended some.

      winget install 0%U#I#$#$$## had too much hash and blow for some US states.

      winget install python3.11 was too obvious.

      No?

      • elch 14 hours ago ago

        In the case of 3.11 'winget install python.python.3.11' works just fine (Community Repository).

    • pseudalopex 13 hours ago ago

      The package name was Python Install Manager. 9NQ7512CXL7T was the Microsoft Store ID.

    • tosti 14 hours ago ago

      Hey, it's quite an improvement over GUIDs!

  • PeterStuer 14 hours ago ago

    I've been using uv to manage python with great success, but yeah, now that Astral has been aquired, it sort of makes me a little bit uneasy I admit.

  • lostmsu 13 hours ago ago

    WinGet and potentially MSIX have a glaring hole that should make this a no-no: programs installed that way don't work correctly via native Windows SSH server. If I remember correctly, the scenarios that fail are: installing using WinGet via SSH fails, updating using WinGet via SSH breaks the executable shims, and if Windows Store updates package, you can't use executable shims from SSH until reboot.

  • greatgib 16 hours ago ago

    > Python install manager will automatically update within a day of an update being released

    Totally something that someone in his right mind will not want to.

    Also impatiently waiting for the day that the org will be blocked on the store so that the morons that decided that can be rewarded...

    Also, how can you do an offline install?

  • RS-232 14 hours ago ago

    This is pretty terrible for offline deployment. An install manager is useless for offline systems.

    For folks who don’t want any hassles, there’s WinPython. It’s a portable Python distribution à la Anaconda. The “whl” flavor includes a nice wheelhouse of packages that you can use as a flat index for your venvs.

  • alexaholic 13 hours ago ago

    > winget install 9NQ7512CXL7T

    LOL

  • immanuwell 15 hours ago ago

    rip to the .exe installer - honestly overdue, since python on windows has been a rite of passage in suffering for too long, and leaning into winget/store is the right call

  • dartharva 16 hours ago ago

    They should honestly just instead back `scoop` as the default way to install Python on Windows. It's clean, sits nicely in userspace and handles CLI execution aliases elegantly.

  • znpy 14 hours ago ago

    > To install using WinGet, the command is winget install 9NQ7512CXL7T.

    so ergonomic!

  • SuperHeavy256 16 hours ago ago

    So now you're forced to use Microslop Store to get Python? At the very least they could offer .msix files to download and use.

    • ozlikethewizard 16 hours ago ago

      "Use of the Store app or the MSIX package is recommended."

      There's a big ole green download link on there for the MSIX lol.

      • adithyassekhar 16 hours ago ago

        MSIX is what ships on the store. And some devs just use it as an installer as well. By the way aren’t MSIX installed apps sandboxed?

        • ozlikethewizard 15 hours ago ago

          Not a windows user so knowledge is a bit fuzzy, but I remember the one of the advantages of MSIX being that the actual installers have less system access, but not sure if the applications once installed are any different.

          • jordand 14 hours ago ago

            Yeah with MSIX, the security is better for end users, but the trade off is there's a lot less flexibility for developers (limits on custom installs, accessing registry, Custom Actions, etc.) This works out fine for most desktop apps, and MSI is still used and supported.

  • crabbone 15 hours ago ago

    [flagged]

    • nsowz 15 hours ago ago

      Just to be clear, Python is doing this because they want to. Also, there is no reasoning in the post, which is odd to me. I have always used the exe to install Python and I didn't see anything wrong with it.

      • crabbone 7 hours ago ago

        > Just to be clear, Python is doing this because they want to.

        No. They don't. The story is more or less like this: ten-fifteen years ago Python community started to change. The change was heavily influenced by the inflow of newcomers. It was a very similar story to the "eternal September". Too many new people entered the field. Old-timers didn't feel comfortable in the new environment and started to leave. The leave was accelerated by the newcomers being in Python for the clout and not for what the language had to offer, therefore becoming further hostile to the old-timers.

        There was also Microsoft, embedding its people in positions of power within the community. Using all the usual techniques, like creating "rules of conduct", then blaming the old-timers for violating them, then kicking them out. Then they changed the platform for discussion of the language that allowed the people who enacted this "bloodless coup" to silence the dissent to the point they are able now to pretend dissent doesn't exist.

        So, "want to" is... very contentious here. The people Microsoft put in charge of Python? -- Yeah, they probably want this, as this ensures tighter integration with proprietary tools, less freedom for people using the language. It's great! People who follow those installed by Microsoft? -- Yeah, they want this in the sense that they don't know any better. They were told it's a good thing, that it's something they should want, and so they don't know any better than to want it.

        But, suppose and the people who have to deal with this change were intelligent enough to understand the consequences and to see the general direction the things are going? -- They wouldn't want it. This is the kind of "want" like the one you have with sweet carbonated drinks. Do people want them? -- Absolutely! Should they want them? -- Well, probably not...

        So, there are different "shades" of "want". In some superficial way, Python programmers on MS Windows do want this and similar changes. But, in a more fundamental way they don't, even though had you run a poll, you'd get a different response.

    • dist-epoch 15 hours ago ago

      > But why would individuals unconstrained by corporate policies choose to use this

      I know this might be incomprehensible, but some people, some of them even software developers, run more on their OS than just terminal CLI tools.

      And for others the lack of customizability is a feature. You can't install a different desktop environment. You can't customize the task bar too much. Which also means you can't get your OS to a broken state as easily.

      • graemep 14 hours ago ago

        I have never broken my OS by installing a different DE in over 20 years of Linux being my daily driver, and multiple distros. I heavily customise panels to reflect current usage and hardware and I cannot imagine how this could break the OS.

      • PunchyHamster 15 hours ago ago

        90's called, they want your opinions on Linux GUI back