From: "nobu (Nobuyoshi Nakada) via ruby-core" Date: 2024-06-07T14:51:37+00:00 Subject: [ruby-core:118237] [Ruby master Bug#20563] Drop support for old Windows Issue #20563 has been reported by nobu (Nobuyoshi Nakada). ---------------------------------------- Bug #20563: Drop support for old Windows https://bugs.ruby-lang.org/issues/20563 * Author: nobu (Nobuyoshi Nakada) * Status: Assigned * Assignee: usa (Usaku NAKAMURA) * Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN ---------------------------------------- This is the table of APIs that we are calling dynamically, and the available Windows versions. DLL | API | Client | Server | ---------|--------------------------------|--------|--------| 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. -- https://bugs.ruby-lang.org/