Skip to content

argparse indentation overshoots due to colors #139736

@9001

Description

@9001

Bug report

Bug description:

As of 3.14, argparse --help accidentally includes the ansi-escapes when calculating the length of the invocations, resulting in excessive margins between options and their helptext. Effectively, the indentation will always be 24 (max_help_position).

import argparse
argparse.ArgumentParser().print_help()

in 3.14, this produces:

options:
  -h, --help            show this help message and exit

in previous versions, it produces:

options:
  -h, --help  show this help message and exit

CPython versions tested on:

CPython main branch

Operating systems tested on:

Linux

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.14bugs and security fixesstdlibStandard Library Python modules in the Lib/ directorytype-bugAn unexpected behavior, bug, or error

    Projects

    Status

    Doc issues

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions