Feature #20563
Updated by nobu (Nobuyoshi Nakada) 4 months ago
This is the table of APIs that we are calling dynamically, and the available Windows versions. DLL | API | Client | Server | ---------|--------------------------------|--------|--------| iphlpapi | ConvertInterfaceGuidToLuid | Vista | 2008 | iphlpapi | ConvertInterfaceLuidToNameA | Vista | 2008 | kernel32 | CreateSymbolicLinkW | Vista | 2008 | kernel32 | GetFileInformationByHandleEx | Vista | 2008 | kernel32 | GetFinalPathNameByHandleW | Vista | 2008 | kernel32 | SetFileInformationByHandle | Vista | 2008 | shell32 | SHGetPathFromIDListEx | Vista | 2008 | ws2_32 | inet_ntop | Vista | 2008 | ws2_32 | inet_pton | Vista | 2008 | kernel32 | GetSystemTimePreciseAsFileTime | 8 | 2012 | kernel32 | SetThreadDescription | 10 | 2016 | However, already random.c directly uses `BCryptGenRandom` that is available since Windows Vista/Server 2008. So I propose explicitly dropping support for Windows older than ~~Vista/2008~~ 8/Server 2012. https://github.com/ruby/ruby/pull/11279 Vista/2008. Update: added iphlpapi APIs.