Announcement

Collapse
No announcement yet.

Ubuntu & Debian Moving Along With Plans For Removing Python 2 Packages

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    Originally posted by carewolf View Post
    hardly? *cough* *cough*

    It creates problems for everybody else. Though it can hardly be free for them with all the bug reports they have to file everywhere stuff breaks.
    Such as? Nearly all of the programs I run based on python use version 3. There are only a few v2.7 out there that I still use. Whatever you think is a problem with python 3 is probably either your distro or the devs of the program you're trying to use. The language itself is fine.

    Comment


    • #32
      Originally posted by schmidtbag View Post
      Such as? Nearly all of the programs I run based on python use version 3. There are only a few v2.7 out there that I still use. Whatever you think is a problem with python 3 is probably either your distro or the devs of the program you're trying to use. The language itself is fine.
      It has been five years since Arch changes. Most of the issue and time wasted on the idiocy of replacing an interpreter with an incompatible version was wasted years ago.

      Comment


      • #33
        Originally posted by carewolf View Post
        It has been five years since Arch changes. Most of the issue and time wasted on the idiocy of replacing an interpreter with an incompatible version was wasted years ago.
        And yet, I've been using Arch for roughly that amount of time, and never had any python issues.

        The vast majority of still-maintained python programs are based on v3. Since Ubuntu and Debian do not use v3 as the default, that implies every single python program you run on them either uses a shebang at the first line (designating which interpreter to use), or, explicitly says to use the python3 command. In other words, they don't depend on /usr/bin/python, which is currently just a symlink to python2. I'm sure you could switch it to python3 and the only things that will break are a few python scripts defined/set-up by the user that didn't specify which version to run (which I assume most people don't have). And even then, a lot of python2 code can run in python3 without any changes at all, while still functioning.

        So, there is virtually no time wasted replacing the interpreter. Ubuntu and Debian might not have to do anything at all to existing python3 programs. They will have to update some (but probably not all) python2 programs but ironically, those are the very programs they're trying to remove. So it's effectively a non-issue.

        Comment


        • #34
          Originally posted by schmidtbag View Post
          And yet, I've been using Arch for roughly that amount of time, and never had any python issues.

          The vast majority of still-maintained python programs are based on v3. Since Ubuntu and Debian do not use v3 as the default, that implies every single python program you run on them either uses a shebang at the first line (designating which interpreter to use), or, explicitly says to use the python3 command. In other words, they don't depend on /usr/bin/python, which is currently just a symlink to python2. I'm sure you could switch it to python3 and the only things that will break are a few python scripts defined/set-up by the user that didn't specify which version to run (which I assume most people don't have). And even then, a lot of python2 code can run in python3 without any changes at all, while still functioning.

          So, there is virtually no time wasted replacing the interpreter. Ubuntu and Debian might not have to do anything at all to existing python3 programs. They will have to update some (but probably not all) python2 programs but ironically, those are the very programs they're trying to remove. So it's effectively a non-issue.
          Sounds like you are volunteering to do the work then?

          Comment


          • #35
            Originally posted by carewolf
            You keep living in bubble because you are not a developer. As a developer that has to support Arch, I alone have wasted 10s of hours on that shit, and I neither use Arch nor support a python framework. Those that did have wasted even more time on that idiocy.

            Remember somebody had to change all those maintained python programs, and in many cases change non-maintained python programs so that you could have a working platform.
            Actually I am a developer (and primarily in python 3), I just don't make anything that ends up in distro repos (most stuff I write is for custom purposes). I've never had any issues regardless of which distro I use.
            You are continuously vague about what kind of "shit" you have to deal with, and I have a hard time believing it takes you that long to get things working, especially on Arch. I've developed stuff on Debian, Ubuntu, Arch, and Windows, going all the way back to python 2.4. It's always been pretty straight-forward. Worst-case scenario, you have to resort to pip, which most python devs are used to using anyway. So either you're somehow over-complicating things, exaggerating the issues, or just have a bone to pick with python.

            For the record, I've used a pretty wide range of libraries, such as Qt, pyserial, OpenCL, pygame, pyglet, various MySQL libraries, multiprocessing, xlsxwriter, and socket. I've also dabbled with stuff like cxfreeze, WebSocket, and OpenGL. So, I think it's safe to say I've had enough exposure where if I was going to encounter "10s of hours of shit", I would have by now.

            If what you're referring to is converting python 2.x programs to python 3.x, that I would understand being time consuming and tedious, but, most of that work is already done. So what's the excuse for Debian and Ubuntu at this point? Regardless, such conversions aren't always that hard. The 2to3 script covers a decent chunk of the differences, and everything else is pretty repetitive. Obviously, it's going to get a lot more difficult if you aren't very familiar with the libraries in use. To put things in a worst-case scenario, I once converted a python 2 + Qt4 program to python 3 + Qt5 at the same time. It took me a couple days, and that's mostly because Qt5 at the time was just released and the python documentation was severely lacking.

            Anyway, getting distros to just simply drop python 2 and a few legacy programs while using python 3 as the default doesn't seem like a big deal to me. If you don't have any use for python 2, go ahead and change /usr/bin/python to use python3 on an Ubuntu or Debian system, and I'm sure your whole system will run fine. Like I said, existing python 3 programs are already set up to explicitly use the correct version, so there's hardly anything that needs to be done.

            Originally posted by carewolf View Post
            Sounds like you are volunteering to do the work then?
            What work? I don't have any issues with how things are working. Also, why would I volunteer to contribute toward a distro I don't use?
            Last edited by schmidtbag; 27 August 2019, 12:01 PM.

            Comment


            • #36
              Originally posted by oiaohm View Post
              Sorry due to ABI brake with python 3 its binary will always be "python3". Debian developers are working on dropping python 2 and that means the "python" binary itself will disappear completely in time and only "python3" binary will remain.
              Actually /usr/bin/python is just a symbolic link to /usr/bin/python2 which is a symbolic link to /usr/bin/python2.7 (the actual interpreter).


              Comment


              • #37
                Originally posted by trizio View Post
                Actually /usr/bin/python is just a symbolic link to /usr/bin/python2 which is a symbolic link to /usr/bin/python2.7 (the actual interpreter).
                Created by the python 2 package. Yes I should have written symlinks.

                Linking python to python3 caused script to break. Worse part is not always fail to run do something you are not quite expecting. The safest path is disappear python as a name.



                Arch pointing python to python3 has caused their users breakages that could be hostile.

                Really python generic needs to disappear. Telling users that they need to change their scripts from python to python2 so they work right after the fact they could have run them and mangled something is not really suitable. When I say mangled I mean data loss. Debian policies don't allow the arch route because it data dangerous.

                I like the debian route better leave python symlink alone for now. In time remove python2 completely and take the python symlink out completely.

                What are you going to do if python4 turns up and its not compadible with python3 code are you going todo have to do the python text edit rename like arch is doing.

                python3 could be symlinked to python4 if it compatible.

                Comment


                • #38
                  Well it's good to know, at least.

                  Those who need Python 2 compatibility better hitch their wagon to PyPy then, realising of course that it's not going to be installed by default.

                  Comment

                  Working...
                  X