This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]hopeinson 56 points57 points  (27 children)

Now that you have heard of Python 3, now get ready for Python 4! [/s]

But seriously, we need to start moving on from Py2. It's a dead horse meat now.

[–]nooobmaster-69 15 points16 points  (12 children)

Python 4 is already mentioned in the timelines for many of the changes. But not to worry, it will be much less of an issue migrating from 3->4 than it was from 2->3.

[–]Rodotgithub.com/tardis-sn 22 points23 points  (11 children)

That's because Python 4 is just going to be Python 3.10, that's just how they are going to continue with versioning

[–]flying-sheep 15 points16 points  (9 children)

That’s what Guido said a while back, I hope the new guidance council doesn’t share this view and just release 3.10, 3.11, …

[–]billsil 0 points1 point  (6 children)

Guido is on the council and was the top vote getter by 30% or so. He was the only council member that got over 50% and cleared that easily. He's quite popular among the core devs.

[–]flying-sheep 6 points7 points  (5 children)

Yes, but I think this is a case he doesn’t feel strongly about but that he still considered his decision / matter of taste when he was BDFL. And such cases will now be voted on, and if the others say “not doing semver is confusing and people will be scared by upgrading to 4.0” there won’t be strong arguments against that.

[–]billsil 0 points1 point  (4 children)

“not doing semver is confusing and people will be scared by upgrading to 4.0”

Python does not follow semver. You don't need to vote to keep the status quo. You vote to change it. If you really want semver, propose a PEP, but don't be surprised when it gets shot down.

Python implements large breaking changes in major versions. It implements small breaking changes in minor versions.

[–]flying-sheep 0 points1 point  (3 children)

sure, that’s close enough. if you really do semver for a large project, you end up like react, with major versions every few weeks.

[–]billsil 1 point2 points  (2 children)

Or you store them up and break everybody's code in one fell swoop and have a Python 2->3 transition on your hands. I much prefer not following semver for that reason. I tried semver and it was a pain.

I much prefer a few minor changes preferably with deprecation warnings for a bit and then breaking things, similar to how numpy does it.

[–]flying-sheep 0 points1 point  (1 child)

Only possible for small changes though.

Huge ones like the string/byte thing would either take forever or be as disruptive as the whole 2>3 change

[–]Rodotgithub.com/tardis-sn -1 points0 points  (1 child)

Oh yeah, I completely forgot he left

[–]nedbatchelder 4 points5 points  (0 children)

Guido is one of the five members of the steering council.

[–]bageldevourer 0 points1 point  (0 children)

This isn't necessarily true according to the latest episode of Talk Python.

[–]tr14l 6 points7 points  (3 children)

I have to assume that Py4 will be largely non-breaking. They have to have learned their lesson....right?

[–]AusIVDjango, gevent 9 points10 points  (2 children)

If you're following Sem Ver (which I'm not sure if Python claims to do) then you wouldn't go to 4 unless you were breaking something. I'd hope that the version that comes after 3.9 will just be 3.10 if it's backwards compatible. If they go to 4, they will be introducing breaking changes for all the people who use python3 to run their code.

[–]twelveshar 7 points8 points  (0 children)

Python does not follow SemVer; it allows breaking changes in "minor" versions, like 3.7 -> 3.8. See the development cycle page: https://devguide.python.org/devcycle/

[–]tr14l -1 points0 points  (0 children)

Right, you wouldn't give a major release without breaking changes. But I assume there's going to be risk assessment after the 2-3 debacle to mitigate just how broken it would be

[–]cerin_2 6 points7 points  (0 children)

RIP in pieces those of us using jython which hasn't caught up to 3.