From a02eac03f230d0f1e2d91bdb8bd5216abbab7b0c Mon Sep 17 00:00:00 2001 From: Petr Viktorin Date: Fri, 2 Oct 2026 17:01:55 +0200 Subject: [PATCH] Add os.supports_dir_fd to test.pythoninfo Split the attribute lists so the 'supports_*' names don't need to be repeated twice. Add 'supports_dir_fd'. --- Lib/test/pythoninfo.py | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/Lib/test/pythoninfo.py b/Lib/test/pythoninfo.py index 100e61a20211c27..bc6735d0749f526 100644 --- a/Lib/test/pythoninfo.py +++ b/Lib/test/pythoninfo.py @@ -247,21 +247,23 @@ def collect_urandom(info_add): def collect_os(info_add): import os - def format_attr(attr, value): - if attr in ('supports_follow_symlinks', 'supports_fd', - 'supports_effective_ids'): - return str(sorted(func.__name__ for func in value)) - else: - return value - - attributes = ( + plain_attributes = ( 'name', 'supports_bytes_environ', + ) + copy_attributes(info_add, os, 'os.%s', plain_attributes) + + def format_set_of_functions(attr, value): + return str(sorted(func.__name__ for func in value)) + + supports_attributes = ( + 'supports_dir_fd', 'supports_effective_ids', 'supports_fd', 'supports_follow_symlinks', ) - copy_attributes(info_add, os, 'os.%s', attributes, formatter=format_attr) + copy_attributes(info_add, os, 'os.%s', supports_attributes, + formatter=format_set_of_functions) for func in ( 'cpu_count',