Skip to content

build: move setup.cfg and .pylintrc into pyproject.toml - #2355

Open
jorgeecardona wants to merge 1 commit into
Guake:masterfrom
jorgeecardona:pyproject-config
Open

jorgeecardona wants to merge 1 commit into
Guake:masterfrom
jorgeecardona:pyproject-config

Conversation

@jorgeecardona

@jorgeecardona jorgeecardona commented Oct 10, 2026 •

Copy link
Copy Markdown
Collaborator

Move setup.cfg and .pylintrc into pyproject.toml. Build backend stays setuptools.

  • setuptools_scm: configured only in [tool.setuptools_scm], now a Pipfile dev dependency; setup.py is a bare setuptools.setup().
  • pylint: same results under pylint 3; one inline disable in prefs.py.
  • Removed dead config: .pep8rc, build_sphinx, universal wheel.
  • Wheel is now py3-none-any with Requires-Python: >=3.8; otherwise same files.

Tested: build, pylint/black/flake8, 30 tests.

Copilot AI balanced review requested due to automatic review settings October 10, 2026 15:40

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Python 3.8 cannot satisfy the new build backend requirement, and legacy build targets do not provision setuptools-scm.

2 open findings
What changed in this PR

Consolidates packaging and lint configuration in pyproject.toml as groundwork for issue #1878.

Changes:

  • Migrates setuptools metadata to PEP 621.
  • Migrates Pylint configuration.
  • Removes obsolete configuration files.
File Description
pyproject.toml Adds build, project, setuptools, and Pylint configuration.
setup.py Reduces setup script to a compatibility stub.
setup.cfg Removes migrated packaging configuration.
.pylintrc Removes migrated Pylint configuration.
.pep8rc Removes unused configuration.
Makefile Lets Pylint discover its configuration automatically.
releasenotes/​notes/​pyproject-abfdd856d4efd8ca.yaml Documents the configuration migration.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread pyproject.toml Outdated
Comment thread setup.py
The build backend stays setuptools.

- Project metadata moves to PEP 621 [project].
- setuptools_scm is configured only in [tool.setuptools_scm] and is
  now a Pipfile dev dependency. setup.py is a bare setuptools.setup(),
  kept because the Makefile still calls it.
- pylint config moves to [tool.pylint.*]. broad-exception-raised now
  fires (the old overgeneral-exceptions value was ineffective), so its
  one intentional use in prefs.py gets an inline disable.
- Remove dead config: .pep8rc, build_sphinx, universal wheel.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants