Here is update with my review of the problem with wglSwapIntervalEXT and wglGetSwapIntervalEXT.
Seems that problem is driven by two diffrent factors:
1) Wrapper code generator (gengl.py) doesn't set 'extension' parameter for 'createBaseFunction'.
Thus OpenGL/platform/baseplatform.py code tries to load extension functions from platform.GL library
which actually doesn't have them in common case and as a result I've got these functions unresolved.
2) BasePlatform.checkExtension code relies only on glGetString(GL_EXTENSIONS).
I've tested extension WGL_EXT_swap_control on NV and Intel gpu platforms. In fact only
on NV platform this extension was listed in glGetString(GL_EXTENSIONS) result. According
one would to use wglGetExtensionsStringXXX to check for WGL extensions. On both platforms I've used
required extension was listed in wglGetGetExtensionsString output. As I see on GLX there is similar
functionality provided by glXQueryExtensionsString. Which also aren't taken into account in PyOpenGL.
So, my plan is firstly to fix gengl.py and later add method for platform-specific extensions check.
But now I'm stuck with gengl.py doesn't produce the same _WGL_NV.py that is commited to bzr.
Besides header file path in comments (which is minor issue), I see whitespaces differences and
moreover, in myself-generated _WGL_NV.py there are no 'GLAPI' symbol. Could you say anything
about that symbol? Was it added by hand or was it included in previous versions of wglext.h?