[Flask] Guide for a developer that want contribute with code to Flask/Jinja2/Werkzeug

David Lord davidism at gmail.com
Thu Jan 25 15:01:48 EST 2018

Thanks for reaching out, it's great that you want to contribute! Here's an
overview for you and anyone else who would like to get involved.

Flask itself doesn't have many open bugs right now. Most of the issues are
in Werkzeug or Jinja. Click could definitely use a lot of attention as
well. ItsDangerous and MarkupSafe are not as active but issues still pop up.

The maintainers, myself included, are all volunteering our free time, so
anything that cuts down on the work we have to do to address each issue is
helpful and appreciated. Here are some ways to help:

- Triage bug reports. Is there enough information to reproduce the issue?
Can you reproduce it? Report back if not. Use a debugger to trace where
it's happening. A lot of the time I can fix something relatively easily,
but actually tracking it down in the first place is the time consuming part.

- Submit patches. Did you track down why an issue was happening? Create a
PR for it! Even if you miss something, it gives us a way to review and run
tests. I'm more interested in patches for bugs than implementing feature
requests, although if something interests you, go for it. Just be aware
that we might not merge a new feature just because it was submitted.

- Make sure we match the spec. Bugs about incorrect behavior are a
priority. Understanding the WSGI PEPs and the multitude of HTTP RFCs is a
daunting task (I still have to look up things constantly)

- Write tests. Running `tox` will generate a coverage report. Write tests
to cover functions or branches that aren't yet tested.

- Update documentation. There are a lot of issues that can be solved by
better documentation. A strategy is to look at the most linked or voted
questions on Stack Overflow and identify if the issues are because the
documentation isn't clear enough. If you're writing whole examples that
feel too specific though, that's probably not a good fit for documentation.

- Answer high-quality questions on Stack Overflow. Thorough answers that
explain what the problem was and what the fix is, or what a better approach
is, are helpful, lasting artifacts that others can find.

I want to create milestones for the next release of each project, but I've
only had time to do that for Flask. Unfortunately I can't really point at
specific issues to tackle first. The maintainers usually work first on what
affects them, so if you have anything you're interested in or a project
that ran into something, start with that.

Thank you!

On Mon, Jan 22, 2018 at 3:41 PM, Frank Abel Cancio Bello <
frank at generalsoftwareinc.com> wrote:

> Hi,
> I would like to contribute with code to Flask/Jinja2/Werkzeug.
> Could anyone give me a hint from where to start, apart from the
> GitHub issues of the projects?
> Would be nice to know what the project's developers have in mind or wish
> to develop.
> Are new tests welcome?
> Thanks
> Frank
> _______________________________________________
> Flask mailing list
> Flask at python.org
> https://mail.python.org/mailman/listinfo/flask
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/flask/attachments/20180125/c680ff5e/attachment.html>

More information about the Flask mailing list