diff --git a/LIBRARY_DEVELOPMENT.rst b/LIBRARY_DEVELOPMENT.rst new file mode 100644 index 00000000..617976a2 --- /dev/null +++ b/LIBRARY_DEVELOPMENT.rst @@ -0,0 +1,19 @@ +Developing Libraries in the Bundle +================================== + +Adafruit CircuitPython libraries are generally installable on a CPython interpreter with `pip` (or other package +managers). The "Blinka" libraries are compatibility layers to fill in missing pieces that are expected from +CircuitPython. Unfortunately, some of these compatibility layers may not work in all environments. + +Unless you are working with all of the libaries at the same time, the easiest workflow for development is to fork an +individual library and make your changes there before submitting a PR back to the adafruit repository. If, however, you +want to programmatically modify all libraries in this bundle, it may be more efficient to do development within this +repository. + +Code Hygiene +------------ + +Adafruit libraries are not currently fully typed. If you would like to improve the typing coverage, we suggest +`installing mypy`_. You can then run mypy from the command line or from within your editor / IDE. + +.. _installing mypy: https://mypy.readthedocs.io/en/stable/getting_started.html#installing-and-running-mypy diff --git a/LIBRARY_DEVELOPMENT.rst.license b/LIBRARY_DEVELOPMENT.rst.license new file mode 100644 index 00000000..36fbc6f0 --- /dev/null +++ b/LIBRARY_DEVELOPMENT.rst.license @@ -0,0 +1,3 @@ +# SPDX-FileCopyrightText: 2022 Dav Clark (@davclark) +# +# SPDX-License-Identifier: Unlicense diff --git a/README.rst b/README.rst index 36f1594f..86395958 100644 --- a/README.rst +++ b/README.rst @@ -45,6 +45,8 @@ Development After you clone this repository you must run ``git submodule init`` and then ``git submodule update``. +For developing individual libraries, please see LIBRARY_DEVELOPMENT.rst. + Updating libraries ------------------- To update the libraries run ``update-submodules.sh``. The script will fetch the