On Jul 7, 1:27 pm, cjrh <[email protected]> wrote: > On further examination, it looks like leaking file descriptors is enough to > mark a library as "incompatible" (this happened with mercurial), so I have > changed web2py's to "incompatible" until we can fix all the leaks.
I should also point out, to those not familiar with the background, is that the issue of file descriptors leaking is to some extent a PyPy issue, not a web2py issue! cPython automatically closes file handles when their references go out of scope, which means that in cPython it is safe to omit closing a file handle explicitly near the end of functions, or short functions, etc. cPython can do this because it uses a reference-counting approach to memory management, whereas PyPy implements a garbage collector, and requires (apparently) the file handle to be closed explicitly in order to collect the handle. This is one of the published incompatibilities between cPython and PyPy. So: there are no "leaks" in web2py running on cPython, this is purely a compatibility issue with PyPy.

