Gunicorn is a Python WSGI server. Gunicorn can be
configured using a Python module that is loaded with
Gunicorn was not closing the file handle after opening the provided module, which
resulted in a
ResourceWarning: unclosed file warning. GH-1889
addresses the leak by opening and reading the module using a
is an Ansible role that uses Amazon Route53 for the
dns-01 challenge with the
acme_certificate module. Ansible 2.7 deprecated
with_items to specify packages with package modules, e.g.
updates the tasks to supply the list of packages directly to the module.
futures-locks is a Rust crate that
provides Futures-aware locking
futures-locks depended on Tokio, which is a fat dependency.
tokio is intended to be an application crate dependency; a library crate
should depend on tokio sub crates.
GH-10 reduces the number of
futures-locks depends on from 51 to 3.
All of my PRs in 2018 are linting and warning shaped. By using these libraries, I experienced some of their unfinished edges first-hand. This helped narrow the scope of my first contributions to the projects. Narrowed scope breeds two benefits: the changes are good first issues and the changes are easier to merge.
Making an open source contribution has similar motivations to creating a startup: solve a problem you have in an environment you know. Sending a PR requires familiarity with the project; it requires you to have used the code. To send more PRs in 2019, I need to use more libraries, which means broadening scope and taking on projects in new domains.