I did integrate the experimental tied handle interface from the CYGWIN patch by Rafael Kitover and Reini Urban into Win32API::File for libwin32-0.26. This patch was needed because CYGWIN doesn't have any support for OsFHandleOpenFd(), and the tied interface allows to emulate it.
However, this just doesn't feel right to me. Tye McQueen, the author of Win32API::File and Win32API::Registry especially created the Win32API::* modules because he felt strongly that the XS code modules should provide only a very thin layer on top of the Win32 API calls, and that all additional Perl magic should be performed in a separate Win32::* module. An example for this is his Win32::TieRegistry module that builds on top of Win32API::Registry. I think the tied file interface should be moved to a separate namespace to stay with the original philosophy of the Win32API::File module. I suggest using Win32::TieFile as an obvious name for this. Win32API::File would then at runtime try to load this module if OsFHandleOpenFd() is being called on CYGWIN. I would like to change this rather sooner than later, before people start to explicitly use the new interface in Win32API::File, even though it has been marked as experimental. Thoughts / Comments? Cheers, -Jan