Pull requests

#29 Declined
Repository
Deleted repository
Branch
kqueue (d107b907c070)
Repository
pypy/pypy pypy
Branch
default

Finish kqueue support

Author
  1. Tobias Oberstein
Reviewers
Description

Working kqueue support. Translator test, all unit tests succeed, PyPy builds, Twisted trunk runs, Autobahn WebSocket testsuite runs.

  • Learn about pull requests

Comments (3)

  1. Alex Gaynor

    Overal: fantastic work for a first patch! A few small things (I'm anal about this):

    1. `for symbol in symbol_map.keys():` -> `for symbol in symbols_map`, there's no need for `keys()` call.
    2. Can you remove the comments with the C declarations? They're distracting, and don't add much since the llexternal call has the same API (of course)
    3. Line 208, w_elist, that should elist_w. _w suffix means that it's an RPython list of interpreter objects.
    4. Right now kevents can only be compared by ==, <, and >=. This probably needs to add <=, >, and !=, right?

    Great work!

  2. Tobias Oberstein author

    Hi Alex,

    I've done all of above, plus a couple of things which bring the implementation more in line with CPy.

    After discussion with arigato: I've also corrected the use of integer types. In that context I've added intptr_t, uintptr_t to TYPES in rffi.py.

    In general the types: int, ssize_t, intptr_t can be equal, or not. Same for unsigned ones.

    See also: http://stackoverflow.com/questions/1464174/size-t-vs-intptr-t

    I have merged current upstream, run translate/unit tests. PyPy is building right now. Let me know if there are further things you'd like to have changed.