Skip to content

Commit 53f0bb3

Browse files
author
Enrique Casado
committed
Merge remote-tracking branch 'origin/master' into main
2 parents bff40fc + 984f1a1 commit 53f0bb3

File tree

649 files changed

+18040
-3292
lines changed

Some content is hidden

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

649 files changed

+18040
-3292
lines changed

.github/workflows/build.yml

Lines changed: 50 additions & 35 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:
@@ -35,13 +35,40 @@ jobs:
3535
python-version: 3.8
3636
- name: Install deps
3737
run: |
38+
sudo apt-get update
3839
sudo apt-get install -y eatmydata
3940
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64 latexmk texlive-fonts-recommended texlive-latex-recommended texlive-latex-extra
4041
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,32 +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: Build and Validate Stubs
71-
run: make check-stubs -j2
72-
- uses: actions/upload-artifact@v2
73-
with:
74-
name: stubs
75-
path: circuitpython-stubs*
76-
- name: Test Documentation Build (HTML)
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: Test Documentation Build (LaTeX/PDF)
83-
run: |
84-
make latexpdf
85-
- uses: actions/upload-artifact@v2
86-
with:
87-
name: docs
88-
path: _build/latex
89-
- name: Translations
90-
run: make check-translate
91-
- name: New boards check
92-
run: python3 -u ci_new_boards_check.py
93-
working-directory: tools
94-
- name: Duplicate USB VID/PID Check
95-
run: python3 -u -m tools.ci_check_duplicate_usb_vid_pid
9697
- name: Build mpy-cross.static-raspbian
9798
run: make -C mpy-cross -j2 -f Makefile.static-raspbian
9899
- uses: actions/upload-artifact@v2
@@ -119,6 +120,7 @@ jobs:
119120
zip -9r circuitpython-stubs.zip circuitpython-stubs
120121
[ -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
121122
env:
123+
AWS_PAGER: ''
122124
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
123125
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
124126
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
@@ -159,21 +161,22 @@ jobs:
159161
run: |
160162
[ -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
161163
env:
164+
AWS_PAGER: ''
162165
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
163166
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
164167
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
165168

166169

167170
build-arm:
168-
runs-on: ubuntu-18.04
171+
runs-on: ubuntu-20.04
169172
needs: test
170173
strategy:
171174
fail-fast: false
172175
matrix:
173176
board:
174177
- "8086_commander"
175178
- "ADM_B_NRF52840_1"
176-
- "TG-Watch02A"
179+
- "TG-Watch"
177180
- "aloriumtech_evo_m51"
178181
- "aramcon_badge_2019"
179182
- "arduino_mkr1300"
@@ -182,6 +185,7 @@ jobs:
182185
- "arduino_nano_33_iot"
183186
- "arduino_zero"
184187
- "bast_pro_mini_m0"
188+
- "bastble"
185189
- "bdmicro_vina_d21"
186190
- "bdmicro_vina_d51"
187191
- "bless_dev_board_multi_sensor"
@@ -196,6 +200,8 @@ jobs:
196200
- "circuitplayground_express_displayio"
197201
- "clue_nrf52840_express"
198202
- "cp32-m4"
203+
- "cp_sapling_m0"
204+
- "cp_sapling_m0_spiflash"
199205
- "datalore_ip_m4"
200206
- "datum_distance"
201207
- "datum_imu"
@@ -255,6 +261,7 @@ jobs:
255261
- "monster_m4sk"
256262
- "ndgarage_ndbit6"
257263
- "ndgarage_ndbit6_v2"
264+
- "neopixel_trinkey_m0"
258265
- "nfc_copy_cat"
259266
- "nice_nano"
260267
- "nucleo_f746zg"
@@ -306,7 +313,9 @@ jobs:
306313
- "sparkfun_samd21_mini"
307314
- "sparkfun_samd51_thing_plus"
308315
- "spresense"
316+
- "stackrduino_m0_pro"
309317
- "stm32f411ce_blackpill"
318+
- "stm32f411ce_blackpill_with_flash"
310319
- "stm32f411ve_discovery"
311320
- "stm32f412zg_discovery"
312321
- "stm32f4_discovery"
@@ -315,7 +324,8 @@ jobs:
315324
- "teensy40"
316325
- "teensy41"
317326
- "teknikio_bluebird"
318-
- "thunderpack"
327+
- "thunderpack_v11"
328+
- "thunderpack_v12"
319329
- "tinkeringtech_scoutmakes_azul"
320330
- "trellis_m4_express"
321331
- "trinket_m0"
@@ -337,8 +347,8 @@ jobs:
337347
run: |
338348
sudo apt-get install -y gettext
339349
pip install requests sh click setuptools awscli
340-
wget https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
341-
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
350+
wget --no-verbose https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
351+
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
342352
- name: Versions
343353
run: |
344354
gcc --version
@@ -363,12 +373,13 @@ jobs:
363373
- name: Upload to S3
364374
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
365375
env:
376+
AWS_PAGER: ''
366377
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
367378
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
368379
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
369380

370381
build-riscv:
371-
runs-on: ubuntu-18.04
382+
runs-on: ubuntu-20.04
372383
needs: test
373384
strategy:
374385
fail-fast: false
@@ -411,16 +422,19 @@ jobs:
411422
- name: Upload to S3
412423
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
413424
env:
425+
AWS_PAGER: ''
414426
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
415427
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
416428
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
417429
build-xtensa:
418-
runs-on: ubuntu-latest
430+
runs-on: ubuntu-20.04
419431
needs: test
420432
strategy:
421433
fail-fast: false
422434
matrix:
423435
board:
436+
- "adafruit_feather_esp32s2_nopsram"
437+
- "adafruit_feather_esp32s2_tftback_nopsram"
424438
- "adafruit_magtag_2.9_grayscale"
425439
- "adafruit_metro_esp32s2"
426440
- "electroniccats_bastwifi"
@@ -451,7 +465,7 @@ jobs:
451465
id: idf-cache
452466
with:
453467
path: ${{ github.workspace }}/.idf_tools
454-
key: ${{ runner.os }}-idf-tools-${{ hashFiles('.git/modules/ports/esp32s2/esp-idf/HEAD') }}-20200801
468+
key: ${{ runner.os }}-idf-tools-${{ hashFiles('.git/modules/ports/esp32s2/esp-idf/HEAD') }}-20210114
455469
- name: Clone IDF submodules
456470
run: |
457471
(cd $IDF_PATH && git submodule update --init)
@@ -505,6 +519,7 @@ jobs:
505519
- name: Upload to S3
506520
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
507521
env:
522+
AWS_PAGER: ''
508523
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
509524
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
510525
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: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,14 @@ 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
18+
- name: Install deps
19+
run: sudo apt-get update && sudo apt-get install -y gettext
20+
- name: Populate selected submodules
21+
run: git submodule update --init extmod/ulab
1822
- name: set PY
1923
run: echo >>$GITHUB_ENV PY="$(python -c 'import hashlib, sys;print(hashlib.sha256(sys.version.encode()+sys.executable.encode()).hexdigest())')"
2024
- uses: actions/cache@v1

.gitmodules

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,4 +152,22 @@
152152
url = https://github.com/adafruit/Adafruit_CircuitPython_RFM69.git
153153
[submodule "ports/esp32s2/esp-idf"]
154154
path = ports/esp32s2/esp-idf
155-
url = https://github.com/espressif/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
159+
[submodule "frozen/Adafruit_CircuitPython_ST7789"]
160+
path = frozen/Adafruit_CircuitPython_ST7789
161+
url = https://github.com/adafruit/Adafruit_CircuitPython_ST7789
162+
[submodule "frozen/Adafruit_CircuitPython_Display_Shapes"]
163+
path = frozen/Adafruit_CircuitPython_Display_Shapes
164+
url = https://github.com/adafruit/Adafruit_CircuitPython_Display_Shapes
165+
[submodule "frozen/Adafruit_CircuitPython_Display_Text"]
166+
path = frozen/Adafruit_CircuitPython_Display_Text
167+
url = https://github.com/adafruit/Adafruit_CircuitPython_Display_Text
168+
[submodule "frozen/Adafruit_CircuitPython_ProgressBar"]
169+
path = frozen/Adafruit_CircuitPython_ProgressBar
170+
url = https://github.com/adafruit/Adafruit_CircuitPython_ProgressBar
171+
[submodule "frozen/Adafruit_CircuitPython_LC709203F"]
172+
path = frozen/Adafruit_CircuitPython_LC709203F
173+
url = https://github.com/adafruit/Adafruit_CircuitPython_LC709203F

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -222,7 +222,7 @@ pseudoxml:
222222
all-source:
223223

224224
locale/circuitpython.pot: all-source
225-
find $(TRANSLATE_SOURCES) -type d \( $(TRANSLATE_SOURCES_EXC) \) -prune -o -type f \( -iname "*.c" -o -iname "*.h" \) -print | (LC_ALL=C sort) | xgettext -f- -L C -s --add-location=file --keyword=translate -o circuitpython.pot -p locale
225+
find $(TRANSLATE_SOURCES) -type d \( $(TRANSLATE_SOURCES_EXC) \) -prune -o -type f \( -iname "*.c" -o -iname "*.h" \) -print | (LC_ALL=C sort) | xgettext -f- -L C -s --add-location=file --keyword=translate -o - | sed -e '/"POT-Creation-Date: /d' > $@
226226

227227
# Historically, `make translate` updated the .pot file and ran msgmerge.
228228
# However, this was a frequent source of merge conflicts. Weblate can perform
@@ -265,7 +265,7 @@ update-frozen-libraries:
265265
@echo "Updating all frozen libraries to latest tagged version."
266266
cd frozen; for library in *; do cd $$library; ../../tools/git-checkout-latest-tag.sh; cd ..; done
267267

268-
one-of-each: samd21 samd51 esp32s2 litex mimxrt10xx nrf stm
268+
one-of-each: samd21 litex mimxrt10xx nrf stm
269269

270270
samd21:
271271
$(MAKE) -C ports/atmel-samd BOARD=trinket_m0

README.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,14 +114,14 @@ Behavior
114114
finishes or is interrupted. After it is done running, the vm and
115115
hardware is reinitialized. **This means you cannot read state from**
116116
``code.py`` **in the REPL anymore.** CircuitPython's goal for this
117-
change includes reduce confusion about pins and memory being used.
117+
change includes reducing confusion about pins and memory being used.
118118
- After ``code.py`` the REPL can be entered by pressing any key. It no
119119
longer shares state with ``code.py`` so it is a fresh vm.
120120
- Autoreload state will be maintained across reload.
121121
- Adds a safe mode that does not run user code after a hard crash or
122122
brown out. The hope is that this will make it easier to fix code that
123123
causes nasty crashes by making it available through mass storage
124-
after the crash. A reset (the button) is needed after its fixed to
124+
after the crash. A reset (the button) is needed after it's fixed to
125125
get back into normal mode.
126126
- RGB status LED indicating CircuitPython state, and errors through a sequence of colored flashes.
127127
- Re-runs ``code.py`` or other main file after file system writes over USB mass storage. (Disable with

conf.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import subprocess
2424
import sys
2525
import urllib.parse
26+
import time
2627

2728
import recommonmark
2829
from sphinx.transforms import SphinxTransform
@@ -101,9 +102,12 @@
101102
# The master toctree document.
102103
#master_doc = 'index'
103104

105+
# Get current date (execution) for copyright year
106+
current_date = time.localtime()
107+
104108
# General information about the project.
105109
project = 'Adafruit CircuitPython'
106-
copyright = '2014-2020, MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)'
110+
copyright = f'2014-{current_date.tm_year}, MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)'
107111

108112
# These are overwritten on ReadTheDocs.
109113
# The version info for the project you're documenting, acts as replacement for
@@ -172,6 +176,7 @@
172176
"ports/atmel-samd/tools",
173177
"ports/cxd56/mkspk",
174178
"ports/cxd56/spresense-exported-sdk",
179+
"ports/esp32s2/certificates",
175180
"ports/esp32s2/esp-idf",
176181
"ports/esp32s2/peripherals",
177182
"ports/litex/hw",
@@ -275,7 +280,7 @@
275280
# Add any extra paths that contain custom files (such as robots.txt or
276281
# .htaccess) here, relative to this directory. These files are copied
277282
# directly to the root of the documentation.
278-
#html_extra_path = []
283+
html_extra_path = ["docs/robots.txt"]
279284

280285
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
281286
# using the given strftime format.

0 commit comments

Comments
 (0)