circuitpython-org/contributing.html
2025-08-28 10:05:13 +00:00

676 lines
21 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" href="/assets/images/favicon.ico" type="image/x-icon" />
<meta name="msapplication-TileColor" content="#1a1919">
<meta name="msapplication-TileImage" content="https://cdn-shop.adafruit.com/static/mstile-144x144.png" />
<title>Contributing - Pull Requests</title>
<meta name="description" content="The easiest way to program microcontrollers" />
<!-- Twitter and Open Graph cards -->
<meta name="twitter:site" content="@circuitpython" />
<meta property="og:url" content="https://circuitpython.org/contributing" />
<meta property="og:title" content="CircuitPython - Contributing - Pull Requests" />
<meta property="og:description" content="The easiest way to program microcontrollers" />
<meta name="twitter:card" content="summary" />
<meta property="og:image" content="https://circuitpython.org/assets/images/CircuitPythonLogo_Black.png" />
<meta property="og:type" content="website" />
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css" integrity="sha384-B4dIYHKNBt8Bc12p+WXckhzcICo0wtJAoU8YZTY5qE0Id1GSseTk6S+L3BlXeVIU" crossorigin="anonymous">
<link rel="stylesheet" href="/assets/css/main.css">
<link rel="canonical" href="https://circuitpython.org/contributing">
<!-- CircuitPython RSS Feed -->
<link rel="alternate"
type="application/rss+xml"
title="CircuitPython news!"
href="https://blog.adafruit.com/category/circuitpython/feed/"/>
<link rel="alternate" type="application/rss+xml" title="Latest Boards" href="/feed.rss"/>
<script src="/assets/javascript/header_mobile.js"></script>
</head>
<body>
<header id="site-header">
<nav class="top-navigation">
<div>
<div class="navigation">
<a class="skip-link" href="#main-content">Skip to main content</a>
<a class='active' href="/contributing">Contributing</a>
<a href="https://blog.adafruit.com/category/circuitpython">News</a>
<a href="/awesome">Awesome</a>
<a href="https://www.adafruitdaily.com/category/circuitpython">Newsletter</a>
<a href="https://docs.circuitpython.org/">Documentation</a>
<a href="https://forums.adafruit.com/viewforum.php?f=60">Forums</a>
<a href="https://adafru.it/discord" aria-label="Discord"><i class="fab fa-discord"></i> Discord</a>
<a href="/feed.rss" type="application/rss+xml" aria-label="RSS Feed"><i class="fas fa-rss-square"></i> RSS</a>
</div>
</div>
</nav>
<div class="wrapper">
<div class="content">
<nav class="site-brand">
<div class="site-navigation">
<a href="/downloads">Downloads</a>
<a href="/libraries">Libraries</a>
<a href="/blinka">Blinka</a>
<a href="https://code.circuitpython.org">Code Editor</a>
</div>
<div class="site-logo">
<a href="/">
<img src="/assets/images/logo-dark.png"
srcset="/assets/images/logo-dark.png 1x,
/assets/images/logo-dark@2x.png 2x,
/assets/images/logo-dark@3x.png 3x"
alt="CircuitPython Logo"
height="60" width="136">
</a>
</div>
<div class="get-started">
<a href="https://learn.adafruit.com/welcome-to-circuitpython">Get Started</a>
</div>
</nav>
</div>
</div>
</header>
<header id="mobile-header">
<div class="header-contents">
<div class="site-logo">
<a href="/">
<img src="/assets/images/logo.png"
srcset="/assets/images/logo.png 1x,
/assets/images/logo@2x.png 2x,
/assets/images/logo@3x.png 3x"
alt="CircuitPython Logo"
height="60" width="136">
</a>
</div>
<div id="mobile-menu">
<div class="menu-toggle">
<a href="#" id="mobile-menu-button">
<span class="sr-only">Open Mobile Menu</span>
<i class="fa fa-bars" aria-hidden="true"></i>
</a>
</div>
</div>
<div class="clear"></div>
<nav id="mobile-menu-contents" role="navigation" class="hidden"
aria-expanded="false" aria-label="Mobile Menu">
<ul>
<li><a
href="/downloads">Downloads</a></li>
<li><a
href="/libraries">Libraries</a></li>
<li><a
href="/blinka">Blinka</a></li>
<li><a class='active'
href="/contributing">Contributing</a></li>
<li><a href="https://blog.adafruit.com/category/circuitpython">News</a></li>
<li><a
href="/awesome">Awesome</a></li>
<li><a href="https://www.adafruitdaily.com/category/circuitpython">Newsletter</a></li>
<li><a href="https://learn.adafruit.com/welcome-to-circuitpython">Get Started</a></li>
<li><a href="https://forums.adafruit.com/viewforum.php?f=60">Forums</a></li>
<li><a href="https://adafru.it/discord" aria-label="Discord"><i class="fab fa-discord"></i> Discord</a></li>
</ul>
</nav>
</div>
</header>
<div id="main-content" class="wrapper">
<div id="common-page" class="common-layout">
<div class="content">
<!-- https://github.com/adafruit/circuitpython/issues/1246 -->
<div id="contributing-page">
<h1>Contributing</h1>
<p>
If you'd like to contribute to the CircuitPython project, the CircuitPython
libraries are a great way to begin. This page is updated with daily status
information from the CircuitPython libraries, including open pull requests,
open issues and library infrastructure issues.
</p>
<p>
Do you write a language other than English? Another great way to contribute
to the project is to contribute new localizations (translations) of
CircuitPython, or update current localizations, using
<a href="https://hosted.weblate.org/engage/circuitpython/">Weblate</a>.
</p>
<p>
If this is your first time contributing, or you'd
like to see our recommended contribution workflow, we have a guide on
<a href="https://learn.adafruit.com/contribute-to-circuitpython-with-git-and-github">Contributing to CircuitPython with Git and Github</a>.
You can also find us in the #circuitpython channel on the
<a href="https://adafru.it/discord">Adafruit Discord</a>.
</p>
<p>
Have an idea for a new driver or library?
<a href="https://github.com/adafruit/circuitpython/issues">File an issue on the CircuitPython repo!</a>
</p>
<h2>Current Status for Wed, Aug 27, 2025</h2>
<ul class='tabbed-navigation'>
<li>
<a href="/contributing" class='active'>Pull Requests</a>
</li>
<li>
<a href="/contributing/open-issues" >Open Issues</a>
</li>
<li>
<a href="/contributing/library-infrastructure-issues" >Library Infrastructure Issues</a>
</li>
<li>
<a href="/contributing/weblate" >CircuitPython Localization</a>
</li>
</ul>
<div class="clear"></div>
<p>
This is the current status of open pull requests and issues across all of the library repos.
</p>
<div class="libraries open-pull-requests">
<h3>Open Pull Requests</h3>
<ul>
<li>
Adafruit_CircuitPython_ADS1x15
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_ADS1x15/pull/101">draft: re-export symbols (classes, constants) to accessible & ergonomic locations (Open 263 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_asyncio
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_asyncio/pull/58">add tests for asyncio (Open 654 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_asyncio/pull/54">feat: support task methods for `exception` and `result` (Open 657 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_asyncio/pull/50">feat: add queue support (Open 667 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_ATECC
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_ATECC/pull/37">Fix dangling else in issuer_or_subject_length (issue #30) (Open 0 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_ATECC/pull/35">Fixed dangling else: in issuer_or_subject_length() (Open 491 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_ATECC/pull/34">required fix for circuit python 8.2.x ATECC crypto module (Open 535 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_BLE
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_BLE/pull/200">typing overhaul + pre-commit updates (Open 369 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_BLE_MIDI
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_BLE_MIDI/pull/14">Update ble_midi_simplein.py (Open 7 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_BNO08x
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_BNO08x/pull/58">Update: Flexible setting sample rate (Open 54 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_BusDevice
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_BusDevice/pull/102">Avoid SPIDevice init failure in absence of libgpiod bindings (Open 224 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_CharLCD
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_CharLCD/pull/81">Character_LCD_I2C: add support for PCF8574 I2C expander backpack (Open 202 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_CST8XX
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_CST8XX/pull/1">Add support for the CST836 (Open 251 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_DisplayIO_Layout
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_Layout/pull/95">Remove '__version__' and '__repo__' to save RAM (Open 233 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_DisplayIO_Layout/pull/87">changes for blit refactor to bitmaptools. (Open 764 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_DS3231
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_DS3231/pull/47">Fix path to product image. (Open 859 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_EPD
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_EPD/pull/86">Move new SSD1680 driver variant to dedicated module and update examples (Open 266 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_EPD/pull/62">Acep 7color (Open 867 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_ESP32SPI
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_ESP32SPI/pull/218">Bring more compatibility with native sockets (Open 182 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_FRAM
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_FRAM/pull/34">allow setting FRAM size (Open 1093 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_FruitJam
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_FruitJam/pull/15">play_mp3_file() function (Open 1 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_FruitJam/pull/13">Volume and output interface API (Open 7 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_GPS
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_GPS/pull/115">Fix https://github.com/adafruit/Adafruit_CircuitPython_GPS/issues/105 (Open 143 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_GPS/pull/94">Added decoding of 'PGTOP' to get the status of the antenna extension … (Open 970 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_ILI9341
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_ILI9341/pull/42">docs: call displayio.release_displays() before SPI init in README example (fixes #39) (Open 0 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_ImageLoad
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_ImageLoad/pull/102">Explicitly list additional packages (Open 62 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_INA219
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_INA219/pull/37">Rewritten calibration functions (Open 315 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_LC709203F
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_LC709203F/pull/27">Add error checking and retries to the read and write functions (Open 237 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_MAX1704x
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_MAX1704x/pull/6">pretty sure this should not be +1 (Open 1103 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_MCP2515
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_MCP2515/pull/20">Make full use of all hardware acceptance masks and filters (Open 847 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_MCP3xxx
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_MCP3xxx/pull/47">MCP32xx (12 bit) ADC support and optional baudrate parameter for SPI comms (Open 333 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_MiniMQTT
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_MiniMQTT/pull/191">Create minimqtt_multipub_simpletest.py (Open 636 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_MLX90393
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_MLX90393/pull/51">Puts requirements in pyproject (Open 114 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_MLX90393/pull/48">Add Temperature Oversampling (Open 207 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_NeoPixel
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/pull/170">Bouncing ball example (Open 202 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_NeoPxl8
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_NeoPxl8/pull/9">Add animations examples (Open 768 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_NTP
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_NTP/pull/41">Add non-blocking mode, notifications, retry, unittests. (Open 325 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_Pixelbuf
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_Pixelbuf/pull/13">Add first and count params to fill (Open 138 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_PN532
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_PN532/pull/70">pn532: bump InListPassiveTarget response_length to 64 to handle long ATS (Open 24 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_RA8875
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_RA8875/pull/32">fix: moving the bottom corners up on the round rect by one pixel (Open 243 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_RA8875/pull/31">BMP 4x loading speed improvement (Open 485 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_Requests
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_Requests/pull/118">Simple async http requests (Open 1034 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_RockBlock
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_RockBlock/pull/31">Update adafruit_rockblock.py (Open 321 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_seesaw
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_seesaw/pull/137">Added support for ATtiny416 (Open 297 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_TCA9548A
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_TCA9548A/pull/56">Add support for PCA9547D devices (Open 235 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_TMP117
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_TMP117/pull/17">Extended library for TMP116, TMP117, TMP119 (Open 467 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_VEML7700
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_VEML7700/pull/36">Added power saving support (Open 76 days)</a></li>
</ul>
</li>
<li>
Adafruit_CircuitPython_Wiznet5k
<ul>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_Wiznet5k/pull/185">Optimize socket_listen() (Open 55 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_Wiznet5k/pull/178">Match core socket behaviour (Open 157 days)</a></li>
<li><a href="https://github.com/adafruit/Adafruit_CircuitPython_Wiznet5k/pull/171">Fix a bad race condition that causes intermittent socket receive failures (Open 320 days)</a></li>
</ul>
</li>
<li>
cookiecutter-adafruit-circuitpython
<ul>
<li><a href="https://github.com/adafruit/cookiecutter-adafruit-circuitpython/pull/197">Mpy size actions (Open 1105 days)</a></li>
</ul>
</li>
</ul>
</div>
</div>
<script src="/assets/javascript/contributing.js"></script>
</div>
</div>
</div>
</body>
</html>