Live data from Hacker News

Python 2.7.4 Released

python.org

41–50 of 50 posts

Re: Python 2.7.4 Released

#41

From the main python.org homepage, I see the announcement for Python 3.3.1 as well. What's curious is... Python 3.2.4 and Python 3.3.1 final have been released. Published: Sun , 6 April 2013, 22:30 +0200 Python 2.7.4 has been released. Published: Sat , 6 April 2013, 11:00 -0500

It's not that curious. People make typos from time to time on the internet.

Re: Python 2.7.4 Released

#42

After years, better integration between the old and new buffer interfaces was finally sneaked in as a bug fix. You can now call `memoryview(some_buffer)` and it'll DTRT. The whole buffers situation is a depressing mess.

I haven't played around with it, but how did it get to be a mess? As I recall it has historically been for NumPy.

Re: Python 2.7.4 Released

#43

Earlier quoted context omitted.

Why would you use/support the fork? Why not just upgrade?

It is pretty clear that the current users of Python 2.x have voted that they don't want to move to Python 3. Some language changes and lots of library changes. Everything has to be ported to upgrade.

I love Python 2.x, but I'll be ready to convert to 3 just as soon as the library support comes through. We're getting pretty close, I feel.

Re: Python 2.7.4 Released

#44

After years, better integration between the old and new buffer interfaces was finally sneaked in as a bug fix. You can now call `memoryview(some_buffer)` and it'll DTRT. The whole buffers situation is a depressing mess.

Since you have been voted to the top of the thread for this comment, can you be more concrete on your complaint?

Re: Python 2.7.4 Released

#45

After years, better integration between the old and new buffer interfaces was finally sneaked in as a bug fix. You can now call `memoryview(some_buffer)` and it'll DTRT. The whole buffers situation is a depressing mess.

I too would like more details on this. 2.7.3 already had memoryview objects IIRC, though I found them almost as frustrating to work with as the 2.6.x world of not having them. What really changed in 2.7.4?

Re: Python 2.7.4 Released

#46
post #26

It seems weird that large features like dictionary comprehensions and syntax changes like set literals are making it int0 2.7.x, but I'm not complaining - most of my projects are stuck on 2.7 due to deployment environment or library limitations and I'd love to be able to use these features.

> It seems weird that large features like dictionary comprehensions and syntax changes like set literals are making it int0 2.7.x

They made it into 2.7.0, that happened 3 years ago...

Re: Python 2.7.4 Released

#47
post #45

After years, better integration between the old and new buffer interfaces was finally sneaked in as a bug fix. You can now call `memoryview(some_buffer)` and it'll DTRT. The whole buffers situation is a depressing mess.

I too would like more details on this. 2.7.3 already had memoryview objects IIRC, though I found them almost as frustrating to work with as the 2.6.x world of not having them. What really changed in 2.7.4?

In 2.7.3, you can create a buffer which is the "old" buffer interface: http://docs.python.org/2/library/functions.html#buffer

And you can create a memoryview which is the "new" and more flexible buffer interface: http://docs.python.org/2/library/stdtypes.html#typememoryvie...

You can get a buffer of a string:

    >>> buffer("foo")
    
and a view of a string:

    >>> memoryview("foo")
    
but when you get this unhelpful and really stupid result:

    >>> memoryview(buffer("foo"))
    Traceback (most recent call last):
      File "", line 1, in 
    TypeError: cannot make memory view because object does not have the buffer interface
2.7.4 fixed this so it actually works and you can get a memoryview out of an old buffer.

Re: Python 2.7.4 Released

#48
post #44

After years, better integration between the old and new buffer interfaces was finally sneaked in as a bug fix. You can now call `memoryview(some_buffer)` and it'll DTRT. The whole buffers situation is a depressing mess.

Since you have been voted to the top of the thread for this comment, can you be more concrete on your complaint?

See http://bugs.python.org/issue10211

Basically, Python has the "buffer" object which is a 0-copy view of some memory area (lets an object expose itself as a bytes array of sorts). It's always been plagued with a number of issues.

In Python 3, `buffer` was removed and replaced with `memoryview`, which was backported to Python 2.7. But in said Python 2.7, `buffer` and `memoryview` both exist and fill very similar need so e.g. older libraries will likely return a buffer which newer code will want to use as a memoryview. No such luck, they're not compatible.

2.7.4 fixes that so you can get a memoryview from a buffer.

Re: Python 2.7.4 Released

#49
post #45

Earlier quoted context omitted.

I too would like more details on this. 2.7.3 already had memoryview objects IIRC, though I found them almost as frustrating to work with as the 2.6.x world of not having them. What really changed in 2.7.4?

In 2.7.3, you can create a buffer which is the "old" buffer interface: http://docs.python.org/2/library/functions.html#buffer And you can create a memoryview which is the "new" and more flexible buffer interface: http://docs.python.org/2/library/stdtypes.html#typememoryvie... You can get a buffer of a string: >>> buffer("foo") and a view of a string: >>> memoryview("foo") but when you get this unhelpful and really st…

Awesome, that was precisely the kind of annoyance I remember.

Re: Python 2.7.4 Released

#50

Earlier quoted context omitted.

Why would you use/support the fork? Why not just upgrade?

It is pretty clear that the current users of Python 2.x have voted that they don't want to move to Python 3. Some language changes and lots of library changes. Everything has to be ported to upgrade.

Ok, I can see that people disagree, however, I point to:

"Python 3.0 final was released on December 3rd, 2008"

Post reply on HN