Re: [PATCH v2 12/12] docs: kdoc: emit a warning for ancient versions of Python

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Em Thu, 10 Jul 2025 17:31:42 -0600
Jonathan Corbet <corbet@xxxxxxx> escreveu:

> Versions of Python prior to 3.7 do not guarantee to remember the insertion
> order of dicts; since kernel-doc depends on that guarantee, running with
> such older versions could result in output with reordered sections.
> 
> Python 3.9 is the minimum for the kernel as a whole, so this should not be
> a problem, but put in a warning just in case somebody tries to use
> something older.
> 
> Suggested-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx>
> Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>
Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx>
> ---
>  scripts/lib/kdoc/kdoc_parser.py | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/scripts/lib/kdoc/kdoc_parser.py b/scripts/lib/kdoc/kdoc_parser.py
> index fdde14b045fe..23ac4ad204f4 100644
> --- a/scripts/lib/kdoc/kdoc_parser.py
> +++ b/scripts/lib/kdoc/kdoc_parser.py
> @@ -12,6 +12,7 @@ Read a C language source or header FILE and extract embedded
>  documentation comments
>  """
>  
> +import sys
>  import re
>  from pprint import pformat
>  
> @@ -238,6 +239,14 @@ class KernelDoc:
>          # Place all potential outputs into an array
>          self.entries = []
>  
> +        #
> +        # We need Python 3.7 for its "dicts remember the insertion
> +        # order" guarantee
> +        #
> +        if sys.version_info.major == 3 and sys.version_info.minor < 7:
> +            self.emit_message(0,
> +                              'Python 3.7 or later is required for correct results')
> +
>      def emit_msg(self, ln, msg, warning=True):
>          """Emit a message"""
>  



Thanks,
Mauro




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux