Skip to content

Commit db8365c

Browse files
authored
Merge pull request #1 from adafruit/master
merging from upstream
2 parents 7161038 + b93d6e8 commit db8365c

File tree

2,142 files changed

+108361
-235656
lines changed

Some content is hidden

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

2,142 files changed

+108361
-235656
lines changed

.github/workflows/build.yml

Lines changed: 279 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,279 @@
1+
name: Build CI
2+
3+
on:
4+
push:
5+
pull_request:
6+
release:
7+
types: [published]
8+
check_suite:
9+
types: [rerequested]
10+
11+
jobs:
12+
test:
13+
runs-on: ubuntu-16.04
14+
steps:
15+
- name: Dump GitHub context
16+
env:
17+
GITHUB_CONTEXT: ${{ toJson(github) }}
18+
run: echo "$GITHUB_CONTEXT"
19+
- name: Set up Python 3.5
20+
uses: actions/setup-python@v1
21+
with:
22+
python-version: 3.5
23+
- name: Install deps
24+
run: |
25+
sudo apt-get install -y eatmydata
26+
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64
27+
pip install requests sh click setuptools cpp-coveralls Sphinx sphinx-rtd-theme recommonmark sphinxcontrib-svg2pdfconverter polib pyyaml
28+
- name: Versions
29+
run: |
30+
gcc --version
31+
python3 --version
32+
- uses: actions/checkout@v1
33+
with:
34+
submodules: true
35+
- name: CircuitPython version
36+
run: git describe --dirty --always --tags
37+
- name: Build mpy-cross
38+
run: make -C mpy-cross -j2
39+
- name: Build unix port
40+
run: |
41+
make -C ports/unix deplibs -j2
42+
make -C ports/unix -j2
43+
make -C ports/unix coverage -j2
44+
- name: Test all
45+
run: MICROPY_CPYTHON3=python3.5 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1
46+
working-directory: tests
47+
- name: Print failure info
48+
run: |
49+
for exp in *.exp;
50+
do testbase=$(basename $exp .exp);
51+
echo -e "\nFAILURE $testbase";
52+
diff -u $testbase.exp $testbase.out;
53+
done
54+
working-directory: tests
55+
if: failure()
56+
- name: Native Tests
57+
run: MICROPY_CPYTHON3=python3.5 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1 --emit native
58+
working-directory: tests
59+
- name: mpy Tests
60+
run: MICROPY_CPYTHON3=python3.5 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1 --via-mpy -d basics float
61+
working-directory: tests
62+
- name: Docs
63+
run: sphinx-build -E -W -b html . _build/html
64+
- name: Translations
65+
run: make check-translate
66+
- name: New boards check
67+
run: python3 -u ci_new_boards_check.py
68+
working-directory: tools
69+
70+
- name: Build mpy-cross.static-raspbian
71+
run: make -C mpy-cross -j2 -f Makefile.static-raspbian
72+
- uses: actions/[email protected]
73+
with:
74+
name: mpy-cross.static-raspbian
75+
path: mpy-cross/mpy-cross.static-raspbian
76+
77+
- name: Build mpy-cross.static
78+
run: make -C mpy-cross -j2 -f Makefile.static
79+
- uses: actions/[email protected]
80+
with:
81+
name: mpy-cross.static-amd64-linux
82+
path: mpy-cross/mpy-cross.static
83+
84+
- name: Build mpy-cross.static-mingw
85+
run: make -C mpy-cross -j2 -f Makefile.static-mingw
86+
- uses: actions/[email protected]
87+
with:
88+
name: mpy-cross.static-x64-windows
89+
path: mpy-cross/mpy-cross.static.exe
90+
91+
mpy-cross-mac:
92+
runs-on: macos-latest
93+
steps:
94+
- name: Dump GitHub context
95+
env:
96+
GITHUB_CONTEXT: ${{ toJson(github) }}
97+
run: echo "$GITHUB_CONTEXT"
98+
- name: Install deps
99+
run: |
100+
brew link --force gettext
101+
- name: Versions
102+
run: |
103+
gcc --version
104+
python3 --version
105+
msgfmt --version
106+
- uses: actions/checkout@v1
107+
with:
108+
submodules: true
109+
- name: CircuitPython version
110+
run: git describe --dirty --always --tags
111+
- name: Build mpy-cross
112+
run: make -C mpy-cross -j2
113+
- uses: actions/[email protected]
114+
with:
115+
name: mpy-cross-macos-catalina
116+
path: mpy-cross/mpy-cross
117+
118+
build-arm:
119+
runs-on: ubuntu-16.04
120+
needs: test
121+
strategy:
122+
fail-fast: false
123+
matrix:
124+
board:
125+
- "aramcon_badge_2019"
126+
- "arduino_mkr1300"
127+
- "arduino_mkrzero"
128+
- "arduino_nano_33_ble"
129+
- "arduino_zero"
130+
- "bast_pro_mini_m0"
131+
- "capablerobot_usbhub"
132+
- "catwan_usbstick"
133+
- "circuitbrains_basic_m0"
134+
- "circuitbrains_deluxe_m4"
135+
- "circuitplayground_bluefruit"
136+
- "circuitplayground_express"
137+
- "circuitplayground_express_crickit"
138+
- "circuitplayground_express_displayio"
139+
- "clue_nrf52840_express"
140+
- "cp32-m4"
141+
- "datalore_ip_m4"
142+
- "datum_distance"
143+
- "datum_imu"
144+
- "datum_light"
145+
- "datum_weather"
146+
- "electronut_labs_blip"
147+
- "electronut_labs_papyr"
148+
- "escornabot_makech"
149+
- "espruino_pico"
150+
- "feather_bluefruit_sense"
151+
- "feather_m0_adalogger"
152+
- "feather_m0_basic"
153+
- "feather_m0_express"
154+
- "feather_m0_express_crickit"
155+
- "feather_m0_rfm69"
156+
- "feather_m0_rfm9x"
157+
- "feather_m0_supersized"
158+
- "feather_m4_express"
159+
- "feather_mimxrt1011"
160+
- "feather_mimxrt1062"
161+
- "feather_nrf52840_express"
162+
- "feather_radiofruit_zigbee"
163+
- "feather_stm32f405_express"
164+
- "gemma_m0"
165+
- "grandcentral_m4_express"
166+
- "hallowing_m0_express"
167+
- "hallowing_m4_express"
168+
- "imxrt1010_evk"
169+
- "imxrt1020_evk"
170+
- "imxrt1060_evk"
171+
- "itsybitsy_m0_express"
172+
- "itsybitsy_m4_express"
173+
- "itsybitsy_nrf52840_express"
174+
- "kicksat-sprite"
175+
- "makerdiary_nrf52840_mdk"
176+
- "makerdiary_nrf52840_mdk_usb_dongle"
177+
- "meowbit_v121"
178+
- "meowmeow"
179+
- "metro_m0_express"
180+
- "metro_m4_airlift_lite"
181+
- "metro_m4_express"
182+
- "metro_nrf52840_express"
183+
- "mini_sam_m4"
184+
- "monster_m4sk"
185+
- "ndgarage_ndbit6"
186+
- "ohs2020_badge"
187+
- "openbook_m4"
188+
- "particle_argon"
189+
- "particle_boron"
190+
- "particle_xenon"
191+
- "pca10056"
192+
- "pca10059"
193+
- "pewpew10"
194+
- "pewpew_m4"
195+
- "pirkey_m0"
196+
- "pyb_nano_v2"
197+
- "pybadge"
198+
- "pybadge_airlift"
199+
- "pyboard_v11"
200+
- "pygamer"
201+
- "pygamer_advance"
202+
- "pyportal"
203+
- "pyportal_titano"
204+
- "pyruler"
205+
- "robohatmm1_m4"
206+
- "sam32"
207+
- "seeeduino_xiao"
208+
- "serpente"
209+
- "shirtty"
210+
- "snekboard"
211+
- "sparkfun_lumidrive"
212+
- "sparkfun_nrf52840_mini"
213+
- "sparkfun_qwiic_micro_no_flash"
214+
- "sparkfun_qwiic_micro_with_flash"
215+
- "sparkfun_redboard_turbo"
216+
- "sparkfun_samd21_dev"
217+
- "sparkfun_samd21_mini"
218+
- "spresense"
219+
- "stm32f411ce_blackpill"
220+
- "stm32f411ve_discovery"
221+
- "stm32f412zg_discovery"
222+
- "stringcar_m0_express"
223+
- "teensy40"
224+
- "teknikio_bluebird"
225+
- "trellis_m4_express"
226+
- "trinket_m0"
227+
- "trinket_m0_haxpress"
228+
- "uchip"
229+
- "ugame10"
230+
- "winterbloom_sol"
231+
- "xinabox_cc03"
232+
- "xinabox_cs11"
233+
234+
steps:
235+
- name: Set up Python 3.5
236+
uses: actions/setup-python@v1
237+
with:
238+
python-version: 3.5
239+
- name: Install deps
240+
run: |
241+
sudo apt-get install -y gettext
242+
pip install requests sh click setuptools awscli
243+
wget https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
244+
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
245+
- name: Versions
246+
run: |
247+
gcc --version
248+
arm-none-eabi-gcc --version
249+
python3 --version
250+
- uses: actions/checkout@v1
251+
with:
252+
submodules: true
253+
- name: mpy-cross
254+
run: make -C mpy-cross -j2
255+
- name: build
256+
run: python3 -u build_release_files.py
257+
working-directory: tools
258+
env:
259+
BOARDS: ${{ matrix.board }}
260+
- uses: actions/[email protected]
261+
with:
262+
name: ${{ matrix.board }}
263+
path: bin/${{ matrix.board }}
264+
- name: Upload to S3
265+
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
266+
env:
267+
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
268+
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
269+
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
270+
- name: Install upload deps
271+
run: |
272+
pip install uritemplate
273+
- name: Upload to Release
274+
run: "[ -z \"$ADABOT_GITHUB_ACCESS_TOKEN\" ] || python3 -u upload_release_files.py"
275+
working-directory: tools
276+
env:
277+
UPLOAD_URL: ${{ github.event.release.upload_url }}
278+
ADABOT_GITHUB_ACCESS_TOKEN: ${{ secrets.BLINKA_GITHUB_ACCESS_TOKEN }}
279+
if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested')
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Update CircuitPython.org
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
jobs:
8+
website:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- name: Dump GitHub context
12+
env:
13+
GITHUB_CONTEXT: ${{ toJson(github) }}
14+
run: echo "$GITHUB_CONTEXT"
15+
- name: Set up Python 3.5
16+
uses: actions/setup-python@v1
17+
with:
18+
python-version: 3.5
19+
- name: Install deps
20+
run: |
21+
pip install requests sh click
22+
- name: Versions
23+
run: |
24+
gcc --version
25+
python3 --version
26+
- uses: actions/checkout@v1
27+
with:
28+
submodules: true
29+
- name: CircuitPython version
30+
run: git describe --dirty --always --tags
31+
- name: Website
32+
run: python3 build_board_info.py
33+
working-directory: tools
34+
env:
35+
RELEASE_TAG: ${{ github.event.release.tag_name }}
36+
ADABOT_GITHUB_ACCESS_TOKEN: ${{ secrets.BLINKA_GITHUB_ACCESS_TOKEN }}
37+
if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested')

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212

1313
# Packages
1414
############
15+
dist/
16+
*.egg-info
1517

1618
# Logs and Databases
1719
######################
@@ -25,6 +27,7 @@
2527
######################
2628
build/
2729
bin/
30+
circuitpython-stubs/
2831

2932
# Test failure outputs
3033
######################
@@ -62,6 +65,8 @@ TAGS
6265
*~
6366

6467
*.DS_Store
68+
**/*.DS_Store
69+
*.icloud
6570

6671
# POEdit mo files
6772
####################

.gitmodules

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,8 @@
7676
[submodule "lib/tinyusb"]
7777
path = lib/tinyusb
7878
url = https://github.com/hathach/tinyusb.git
79-
branch = develop
79+
branch = master
80+
fetchRecurseSubmodules = false
8081
[submodule "tools/huffman"]
8182
path = tools/huffman
8283
url = https://github.com/tannewt/huffman.git
@@ -95,3 +96,18 @@
9596
[submodule "frozen/circuitpython-stage"]
9697
path = frozen/circuitpython-stage
9798
url = https://github.com/python-ugame/circuitpython-stage.git
99+
[submodule "ports/stm32f4/stm32f4"]
100+
path = ports/stm32f4/stm32f4
101+
url = https://github.com/adafruit/stm32f4.git
102+
[submodule "ports/cxd56/spresense-exported-sdk"]
103+
path = ports/cxd56/spresense-exported-sdk
104+
url = https://github.com/sonydevworld/spresense-exported-sdk.git
105+
[submodule "frozen/Adafruit_CircuitPython_SD"]
106+
path = frozen/Adafruit_CircuitPython_SD
107+
url = https://github.com/adafruit/Adafruit_CircuitPython_SD.git
108+
[submodule "lib/mp3"]
109+
path = lib/mp3
110+
url = https://github.com/adafruit/Adafruit_MP3
111+
[submodule "ports/mimxrt10xx/sdk"]
112+
path = ports/mimxrt10xx/sdk
113+
url = https://github.com/adafruit/MIMXRT10xx_SDK

.readthedocs.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,10 @@
1+
# .readthedocs.yml
2+
# Read the Docs configuration file
3+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4+
5+
version: 2
6+
17
python:
28
version: 3
9+
install:
10+
- requirements: docs/requirements.txt

0 commit comments

Comments
 (0)