pytest-dev / pytest-dev/pluggy

deprecate passing classes as hookspecs, it shold be instances

Open
#360 3 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

deprecation
Dominant language
Python
Stars
1.7k
Forks
160
Avg merge
21h 4m
Merged PRs (30d)
6

Description

we currently have self magic in place to handle unbound methods and passed in classes

ass signature (see #359) handles the bound methods so much better, we should ensure hook-specs are instances not types, and then generally handle them that way

followup to https://github.com/pytest-dev/pluggy/pull/359#discussion_r936410218_

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the hook-spec registration and handling code, then review the discussion on pull request #359 linked from the issue. Determine where classes and instances are currently treated differently and where the new bound-method handling applies. Done means hook specs consistently require instances and the legacy class-handling path is deprecated or removed.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
devtools
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.