Skip to content

configparser.RawConfigParser._read is unmanageably complex #117348

Closed

Description

@jaraco

From the review:

This function is already unmanageably complex (and complexity checks disabled in the backport). Adding this single boolean parameter has expanded this function from ~120 lines to almost 160 and increases the mccabe cyclometric complexity of this function from 25 to 31 (where a target complexity is <10).

cpython main @ pip-run mccabe -- -m mccabe --min 14 Lib/configparser.py
940:4: 'RawConfigParser._read' 25
 cpython main @ gh pr checkout 117273
Switched to branch 'unnamed-section'
 cpython unnamed-section @ pip-run mccabe -- -m mccabe --min 14 Lib/configparser.py
961:4: 'RawConfigParser._read' 31

Originally posted by @jaraco in #117273 (comment)

Linked PRs

Activity

  1. self-assigned this
    on Mar 28, 2024
  2. jaraco commented on Mar 28, 2024

    @jaraco
    MemberAuthor

    I've begun work on refactoring the code in jaraco:feature/refactor-configparser-read-complexity. That branch currently is based on #117273.

  3. added
    type-featureA feature request or enhancement
    stdlibStandard Library Python modules in the Lib/ directory
    triagedThe issue has been accepted as valid by a triager.
    on Mar 28, 2024
  4. added a commit that references this issue on Mar 29, 2024
  5. added a commit that references this issue on Apr 14, 2024
  6. added 2 commits that reference this issue on Apr 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

stdlibStandard Library Python modules in the Lib/ directorytriagedThe issue has been accepted as valid by a triager.type-featureA feature request or enhancement

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions