Skip to content

Commit ce59b54

Browse files
committed
Merge remote-tracking branch 'adafruit/main' into robots.txt
2 parents e1a8438 + 55c8075 commit ce59b54

File tree

1,065 files changed

+65791
-7091
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,065 files changed

+65791
-7091
lines changed

.github/workflows/build.yml

Lines changed: 77 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ on:
1414

1515
jobs:
1616
test:
17-
runs-on: ubuntu-18.04
17+
runs-on: ubuntu-20.04
1818
steps:
1919
- name: Dump GitHub context
2020
env:
@@ -28,20 +28,47 @@ jobs:
2828
- name: CircuitPython version
2929
run: |
3030
git describe --dirty --tags
31-
echo "::set-env name=CP_VERSION::$(git describe --dirty --tags)"
31+
echo >>$GITHUB_ENV CP_VERSION=$(git describe --dirty --tags)
3232
- name: Set up Python 3.8
3333
uses: actions/setup-python@v1
3434
with:
3535
python-version: 3.8
3636
- name: Install deps
3737
run: |
38+
sudo apt-get update
3839
sudo apt-get install -y eatmydata
39-
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64
40-
pip install requests sh click setuptools cpp-coveralls "Sphinx<4" sphinx-rtd-theme recommonmark sphinx-autoapi sphinxcontrib-svg2pdfconverter polib pyyaml astroid isort black awscli
40+
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64 latexmk texlive-fonts-recommended texlive-latex-recommended texlive-latex-extra
41+
pip install requests sh click setuptools cpp-coveralls "Sphinx<4" sphinx-rtd-theme recommonmark sphinx-autoapi sphinxcontrib-svg2pdfconverter polib pyyaml astroid isort black awscli mypy
4142
- name: Versions
4243
run: |
4344
gcc --version
4445
python3 --version
46+
- name: Translations
47+
run: make check-translate
48+
- name: New boards check
49+
run: python3 -u ci_new_boards_check.py
50+
working-directory: tools
51+
- name: Duplicate USB VID/PID Check
52+
run: python3 -u -m tools.ci_check_duplicate_usb_vid_pid
53+
- name: Build and Validate Stubs
54+
run: make check-stubs -j2
55+
- uses: actions/upload-artifact@v2
56+
with:
57+
name: stubs
58+
path: circuitpython-stubs*
59+
- name: Test Documentation Build (HTML)
60+
run: sphinx-build -E -W -b html -D version=${{ env.CP_VERSION }} -D release=${{ env.CP_VERSION }} . _build/html
61+
- uses: actions/upload-artifact@v2
62+
with:
63+
name: docs
64+
path: _build/html
65+
- name: Test Documentation Build (LaTeX/PDF)
66+
run: |
67+
make latexpdf
68+
- uses: actions/upload-artifact@v2
69+
with:
70+
name: docs
71+
path: _build/latex
4572
- name: Build mpy-cross
4673
run: make -C mpy-cross -j2
4774
- name: Build unix port
@@ -67,23 +94,6 @@ jobs:
6794
- name: mpy Tests
6895
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1 --via-mpy -d basics float
6996
working-directory: tests
70-
- name: Stubs
71-
run: make stubs -j2
72-
- uses: actions/upload-artifact@v2
73-
with:
74-
name: stubs
75-
path: circuitpython-stubs*
76-
- name: Docs
77-
run: sphinx-build -E -W -b html -D version=${{ env.CP_VERSION }} -D release=${{ env.CP_VERSION }} . _build/html
78-
- uses: actions/upload-artifact@v2
79-
with:
80-
name: docs
81-
path: _build/html
82-
- name: Translations
83-
run: make check-translate
84-
- name: New boards check
85-
run: python3 -u ci_new_boards_check.py
86-
working-directory: tools
8797
- name: Build mpy-cross.static-raspbian
8898
run: make -C mpy-cross -j2 -f Makefile.static-raspbian
8999
- uses: actions/upload-artifact@v2
@@ -102,12 +112,15 @@ jobs:
102112
with:
103113
name: mpy-cross.static-x64-windows
104114
path: mpy-cross/mpy-cross.static.exe
105-
- name: Upload mpy-cross builds to S3
115+
- name: Upload stubs and mpy-cross builds to S3
106116
run: |
107117
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross.static-raspbian s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross.static-raspbian-${{ env.CP_VERSION }} --no-progress --region us-east-1
108118
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross.static s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross.static-amd64-linux-${{ env.CP_VERSION }} --no-progress --region us-east-1
109119
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross.static.exe s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross.static-x64-windows-${{ env.CP_VERSION }}.exe --no-progress --region us-east-1
120+
zip -9r circuitpython-stubs.zip circuitpython-stubs
121+
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp circuitpython-stubs.zip s3://adafruit-circuit-python/bin/stubs/circuitpython-stubs-${{ env.CP_VERSION }}.zip --no-progress --region us-east-1
110122
env:
123+
AWS_PAGER: ''
111124
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
112125
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
113126
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
@@ -122,8 +135,8 @@ jobs:
122135
run: echo "$GITHUB_CONTEXT"
123136
- name: Install dependencies
124137
run: |
125-
brew install gettext awscli
126-
echo "::set-env name=PATH::/usr/local/opt/gettext/bin:$PATH"
138+
brew install gettext
139+
echo >>$GITHUB_PATH /usr/local/opt/gettext/bin
127140
- name: Versions
128141
run: |
129142
gcc --version
@@ -137,7 +150,7 @@ jobs:
137150
- name: CircuitPython version
138151
run: |
139152
git describe --dirty --tags
140-
echo "::set-env name=CP_VERSION::$(git describe --dirty --tags)"
153+
echo >>$GITHUB_ENV CP_VERSION=$(git describe --dirty --tags)
141154
- name: Build mpy-cross
142155
run: make -C mpy-cross -j2
143156
- uses: actions/upload-artifact@v2
@@ -148,19 +161,21 @@ jobs:
148161
run: |
149162
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross-macos-catalina-${{ env.CP_VERSION }} --no-progress --region us-east-1
150163
env:
164+
AWS_PAGER: ''
151165
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
152166
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
153167
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
154168

155169

156170
build-arm:
157-
runs-on: ubuntu-18.04
171+
runs-on: ubuntu-20.04
158172
needs: test
159173
strategy:
160174
fail-fast: false
161175
matrix:
162176
board:
163177
- "8086_commander"
178+
- "ADM_B_NRF52840_1"
164179
- "TG-Watch02A"
165180
- "aloriumtech_evo_m51"
166181
- "aramcon_badge_2019"
@@ -170,7 +185,9 @@ jobs:
170185
- "arduino_nano_33_iot"
171186
- "arduino_zero"
172187
- "bast_pro_mini_m0"
173-
- "bdmicro_vina_m0"
188+
- "bastble"
189+
- "bdmicro_vina_d21"
190+
- "bdmicro_vina_d51"
174191
- "bless_dev_board_multi_sensor"
175192
- "blm_badge"
176193
- "capablerobot_usbhub"
@@ -183,11 +200,15 @@ jobs:
183200
- "circuitplayground_express_displayio"
184201
- "clue_nrf52840_express"
185202
- "cp32-m4"
203+
- "cp_sapling_m0"
204+
- "cp_sapling_m0_spiflash"
186205
- "datalore_ip_m4"
187206
- "datum_distance"
188207
- "datum_imu"
189208
- "datum_light"
190209
- "datum_weather"
210+
- "dynossat_edu_eps"
211+
- "dynossat_edu_obc"
191212
- "electronut_labs_blip"
192213
- "electronut_labs_papyr"
193214
- "escornabot_makech"
@@ -201,6 +222,7 @@ jobs:
201222
- "feather_m0_rfm69"
202223
- "feather_m0_rfm9x"
203224
- "feather_m0_supersized"
225+
- "feather_m4_can"
204226
- "feather_m4_express"
205227
- "feather_m7_1011"
206228
- "feather_mimxrt1011"
@@ -227,11 +249,13 @@ jobs:
227249
- "makerdiary_nrf52840_m2_devkit"
228250
- "makerdiary_nrf52840_mdk"
229251
- "makerdiary_nrf52840_mdk_usb_dongle"
252+
- "matrixportal_m4"
230253
- "meowbit_v121"
231254
- "meowmeow"
232255
- "metro_m0_express"
233256
- "metro_m4_airlift_lite"
234257
- "metro_m4_express"
258+
- "metro_m7_1011"
235259
- "metro_nrf52840_express"
236260
- "mini_sam_m4"
237261
- "monster_m4sk"
@@ -267,6 +291,8 @@ jobs:
267291
- "pyportal"
268292
- "pyportal_titano"
269293
- "pyruler"
294+
- "qtpy_m0"
295+
- "qtpy_m0_haxpress"
270296
- "raytac_mdbt50q-db-40"
271297
- "robohatmm1_m4"
272298
- "sam32"
@@ -286,6 +312,7 @@ jobs:
286312
- "sparkfun_samd21_mini"
287313
- "sparkfun_samd51_thing_plus"
288314
- "spresense"
315+
- "stackrduino_m0_pro"
289316
- "stm32f411ce_blackpill"
290317
- "stm32f411ve_discovery"
291318
- "stm32f412zg_discovery"
@@ -295,7 +322,8 @@ jobs:
295322
- "teensy40"
296323
- "teensy41"
297324
- "teknikio_bluebird"
298-
- "thunderpack"
325+
- "thunderpack_v11"
326+
- "thunderpack_v12"
299327
- "tinkeringtech_scoutmakes_azul"
300328
- "trellis_m4_express"
301329
- "trinket_m0"
@@ -317,8 +345,8 @@ jobs:
317345
run: |
318346
sudo apt-get install -y gettext
319347
pip install requests sh click setuptools awscli
320-
wget https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
321-
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
348+
wget --no-verbose https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
349+
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
322350
- name: Versions
323351
run: |
324352
gcc --version
@@ -343,12 +371,13 @@ jobs:
343371
- name: Upload to S3
344372
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
345373
env:
374+
AWS_PAGER: ''
346375
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
347376
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
348377
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
349378

350379
build-riscv:
351-
runs-on: ubuntu-18.04
380+
runs-on: ubuntu-20.04
352381
needs: test
353382
strategy:
354383
fail-fast: false
@@ -391,19 +420,29 @@ jobs:
391420
- name: Upload to S3
392421
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
393422
env:
423+
AWS_PAGER: ''
394424
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
395425
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
396426
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
397427
build-xtensa:
398-
runs-on: ubuntu-latest
428+
runs-on: ubuntu-20.04
399429
needs: test
400430
strategy:
401431
fail-fast: false
402432
matrix:
403433
board:
434+
- "adafruit_magtag_2.9_grayscale"
435+
- "adafruit_metro_esp32s2"
436+
- "electroniccats_bastwifi"
437+
- "espressif_kaluga_1"
404438
- "espressif_saola_1_wroom"
405439
- "espressif_saola_1_wrover"
440+
- "microdev_micro_s2"
441+
- "muselab_nanoesp32_s2"
442+
- "targett_module_clip_wroom"
443+
- "targett_module_clip_wrover"
406444
- "unexpectedmaker_feathers2"
445+
- "unexpectedmaker_feathers2_prerelease"
407446

408447
steps:
409448
- name: Set up Python 3.8
@@ -423,6 +462,11 @@ jobs:
423462
with:
424463
path: ${{ github.workspace }}/.idf_tools
425464
key: ${{ runner.os }}-idf-tools-${{ hashFiles('.git/modules/ports/esp32s2/esp-idf/HEAD') }}-20200801
465+
- name: Clone IDF submodules
466+
run: |
467+
(cd $IDF_PATH && git submodule update --init)
468+
env:
469+
IDF_PATH: ${{ github.workspace }}/ports/esp32s2/esp-idf
426470
- name: Install IDF tools
427471
run: |
428472
$IDF_PATH/tools/idf_tools.py --non-interactive install required
@@ -471,6 +515,7 @@ jobs:
471515
- name: Upload to S3
472516
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
473517
env:
518+
AWS_PAGER: ''
474519
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
475520
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
476521
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))

.github/workflows/create_website_pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ on:
1010

1111
jobs:
1212
website:
13-
runs-on: ubuntu-latest
13+
runs-on: ubuntu-20.04
1414
steps:
1515
- name: Dump GitHub context
1616
env:

.github/workflows/pre-commit.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ on:
1111

1212
jobs:
1313
pre-commit:
14-
runs-on: ubuntu-latest
14+
runs-on: ubuntu-20.04
1515
steps:
1616
- uses: actions/checkout@v1
1717
- uses: actions/setup-python@v1
1818
- name: set PY
19-
run: echo "::set-env name=PY::$(python -c 'import hashlib, sys;print(hashlib.sha256(sys.version.encode()+sys.executable.encode()).hexdigest())')"
19+
run: echo >>$GITHUB_ENV PY="$(python -c 'import hashlib, sys;print(hashlib.sha256(sys.version.encode()+sys.executable.encode()).hexdigest())')"
2020
- uses: actions/cache@v1
2121
with:
2222
path: ~/.cache/pre-commit

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ TAGS
8080
*.mo
8181

8282
.vscode
83+
.idea
8384

8485
# Python Virtual Environments
8586
####################

.gitmodules

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,15 @@
144144
[submodule "frozen/Adafruit_CircuitPython_BLE_Apple_Notification_Center"]
145145
path = frozen/Adafruit_CircuitPython_BLE_Apple_Notification_Center
146146
url = https://github.com/adafruit/Adafruit_CircuitPython_BLE_Apple_Notification_Center
147+
[submodule "frozen/Adafruit_CircuitPython_RFM9x"]
148+
path = frozen/Adafruit_CircuitPython_RFM9x
149+
url = https://github.com/adafruit/Adafruit_CircuitPython_RFM9x.git
150+
[submodule "frozen/Adafruit_CircuitPython_RFM69"]
151+
path = frozen/Adafruit_CircuitPython_RFM69
152+
url = https://github.com/adafruit/Adafruit_CircuitPython_RFM69.git
147153
[submodule "ports/esp32s2/esp-idf"]
148154
path = ports/esp32s2/esp-idf
149-
url = https://github.com/tannewt/esp-idf.git
155+
url = https://github.com/adafruit/esp-idf.git
156+
[submodule "ports/esp32s2/certificates/nina-fw"]
157+
path = ports/esp32s2/certificates/nina-fw
158+
url = https://github.com/adafruit/nina-fw.git

.pre-commit-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@ repos:
88
hooks:
99
- id: check-yaml
1010
- id: end-of-file-fixer
11-
exclude: '^(tests/.*\.exp|tests/cmdline/.*|tests/.*/data/.*)'
11+
exclude: '^(tests/.*\.exp|tests/cmdline/.*|tests/.*/data/.*|ports/esp32s2/esp-idf-config/.*|ports/esp32s2/boards/.*/sdkconfig)'
1212
- id: trailing-whitespace
1313
exclude: '^(tests/.*\.exp|tests/cmdline/.*|tests/.*/data/.*)'

.readthedocs.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ submodules:
1212
include:
1313
- extmod/ulab
1414

15+
formats:
16+
- pdf
17+
1518
python:
1619
version: 3
1720
install:

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ SPDX-License-Identifier: MIT
66

77
# Contributing
88
Please note that this project is released with a
9-
[Contributor Code of Conduct](https://github.com/adafruit/circuitpython/blob/main/CODE_OF_CONDUCT.md).
9+
[Contributor Code of Conduct](CODE_OF_CONDUCT.md).
1010
By participating in this project you agree to abide by its terms. Participation
1111
covers any forum used to converse about CircuitPython including unofficial and official spaces. Failure to do
1212
so will result in corrective actions such as time out or ban from the project.

0 commit comments

Comments
 (0)