Design new Python API to replace Legacy API
Open
Nobody has claimed this yet.
feature:accepted
priority:medium
- Dominant language
- Python
- Stars
- 3.8k
- Forks
- 356
- PR merge metrics
- No merged PRs in 30d
Description
In GitLab by @sigmavirus24 on Aug 3, 2016, 06:13
Description
Now that Flake8 3.0 is released and our old API is considered "legacy" (and deprecated of sorts), let's work together to design a Python API that is powerful and elegant and extensible.
Use Cases
- Need a way to pass the lines of a file into Flake8 (see https://gitlab.com/pycqa/flake8/issues/208#note_14544578)
- Need a way to iterate over the errors collected by Flake8
- Need objects to be easily serializable
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing Flake8 3.0's deprecated legacy API and the three listed use cases: passing file lines, iterating over errors, and serializing objects. Identify the public entry points and API boundaries involved. Done means the replacement Python API has an agreed, documented design that addresses each use case.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100