Skip to content

Deprecate -b and -bb CLI flags #136355

Open
Open
@sobolevn

Description

@sobolevn

Feature or enhancement

Discussion link: https://discuss.python.org/t/consider-deprecating-and-eventually-removing-b-cli-flag/96903

Currently -b and -bb CLI options do not provide much benefit, but has several corner-cases where they require some work-arounds.

My plan to deprecate them:

  • Use regular stderr output about a deprecation, do not raise a real DeprecationWarning object. Why? Because initconfig.c does not have GIL yet to call C-API and real warnings can mess things up, since -b is also warnings-related. I guess docs + stderr output will be good enough. Downsides: warning filtering and -We and -Wi won't affect this warning.
  • 2 versions should be enough for the deprecation, since the only thing required is to simply remove -b from the command line args

Future plans:

  • After the deprecation will end in 3.17, I plan to remove -b and -bb options (there's an alternative to make them no-op, but it can be suprising for end users that they do nothing)
  • I also plan to remove code paths that require sys.flags.bytes_warning to be set, no warnings will be produced as of 3.17

All other machinery will be kept as-is.

Linked PRs

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions