Skip to content

Commit 9c141a8

Browse files
authored
Merge pull request #1 from adafruit/master
mybadzZzZz
2 parents b1b89c4 + 2c2b533 commit 9c141a8

3,537 files changed

Lines changed: 279973 additions & 372651 deletions

File tree

Some content is hidden

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

.gitattributes

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212
*.dxf binary
1313
*.mpy binary
1414
*.deb binary
15+
*.zip binary
16+
*.pdf binary
1517

1618
# These should also not be modified by git.
1719
tests/basics/string_cr_conversion.py -text
1820
tests/basics/string_crlf_conversion.py -text
1921
ports/stm32/pybcdc.inf_template -text
20-
ports/stm32/usbd_* -text
21-
ports/stm32/usbdev/** -text
2222
ports/stm32/usbhost/** -text
2323
ports/cc3200/hal/aes.c -text
2424
ports/cc3200/hal/aes.h -text

.github/workflows/build.yml

Lines changed: 361 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,361 @@
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-18.04
14+
steps:
15+
- name: Dump GitHub context
16+
env:
17+
GITHUB_CONTEXT: ${{ toJson(github) }}
18+
run: echo "$GITHUB_CONTEXT"
19+
- uses: actions/checkout@v2
20+
with:
21+
submodules: true
22+
fetch-depth: 0
23+
- run: git fetch --recurse-submodules=no https://github.com/adafruit/circuitpython refs/tags/*:refs/tags/*
24+
- run: git submodule sync
25+
- run: git submodule foreach git remote -v
26+
- run: git submodule foreach git fetch --recurse-submodules=no origin +refs/tags/*:refs/tags/*
27+
- name: CircuitPython version
28+
run: git describe --dirty --tags
29+
- name: Set up Python 3.8
30+
uses: actions/setup-python@v1
31+
with:
32+
python-version: 3.8
33+
- name: Install deps
34+
run: |
35+
sudo apt-get install -y eatmydata
36+
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64
37+
pip install requests sh click setuptools cpp-coveralls "Sphinx<4" sphinx-rtd-theme recommonmark sphinx-autoapi sphinxcontrib-svg2pdfconverter polib pyyaml astroid
38+
- name: Versions
39+
run: |
40+
gcc --version
41+
python3 --version
42+
- name: Build mpy-cross
43+
run: make -C mpy-cross -j2
44+
- name: Build unix port
45+
run: |
46+
make -C ports/unix deplibs -j2
47+
make -C ports/unix -j2
48+
make -C ports/unix coverage -j2
49+
- name: Test all
50+
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1
51+
working-directory: tests
52+
- name: Print failure info
53+
run: |
54+
for exp in *.exp;
55+
do testbase=$(basename $exp .exp);
56+
echo -e "\nFAILURE $testbase";
57+
diff -u $testbase.exp $testbase.out;
58+
done
59+
working-directory: tests
60+
if: failure()
61+
- name: Native Tests
62+
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1 --emit native
63+
working-directory: tests
64+
- name: mpy Tests
65+
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1 --via-mpy -d basics float
66+
working-directory: tests
67+
- name: Stubs
68+
run: make stubs -j2
69+
- name: Docs
70+
run: sphinx-build -E -W -b html . _build/html
71+
- name: Translations
72+
run: make check-translate
73+
- name: New boards check
74+
run: python3 -u ci_new_boards_check.py
75+
working-directory: tools
76+
77+
- name: Build mpy-cross.static-raspbian
78+
run: make -C mpy-cross -j2 -f Makefile.static-raspbian
79+
- uses: actions/upload-artifact@v1.0.0
80+
with:
81+
name: mpy-cross.static-raspbian
82+
path: mpy-cross/mpy-cross.static-raspbian
83+
84+
- name: Build mpy-cross.static
85+
run: make -C mpy-cross -j2 -f Makefile.static
86+
- uses: actions/upload-artifact@v1.0.0
87+
with:
88+
name: mpy-cross.static-amd64-linux
89+
path: mpy-cross/mpy-cross.static
90+
91+
- name: Build mpy-cross.static-mingw
92+
run: make -C mpy-cross -j2 -f Makefile.static-mingw
93+
- uses: actions/upload-artifact@v1.0.0
94+
with:
95+
name: mpy-cross.static-x64-windows
96+
path: mpy-cross/mpy-cross.static.exe
97+
98+
mpy-cross-mac:
99+
runs-on: macos-10.15
100+
steps:
101+
- name: Dump GitHub context
102+
env:
103+
GITHUB_CONTEXT: ${{ toJson(github) }}
104+
run: echo "$GITHUB_CONTEXT"
105+
- name: Make gettext programs available
106+
run: |
107+
brew install gettext
108+
echo "::set-env name=PATH::/usr/local/opt/gettext/bin:$PATH"
109+
- name: Versions
110+
run: |
111+
gcc --version
112+
python3 --version
113+
msgfmt --version
114+
- uses: actions/checkout@v2
115+
with:
116+
submodules: true
117+
fetch-depth: 0
118+
- run: git fetch --recurse-submodules=no https://github.com/adafruit/circuitpython refs/tags/*:refs/tags/*
119+
- run: git submodule sync
120+
- run: git submodule foreach git remote -v
121+
- run: git submodule foreach git fetch --recurse-submodules=no origin +refs/tags/*:refs/tags/*
122+
- name: CircuitPython version
123+
run: git describe --dirty --tags
124+
- name: Build mpy-cross
125+
run: make -C mpy-cross -j2
126+
- uses: actions/upload-artifact@v1.0.0
127+
with:
128+
name: mpy-cross-macos-catalina
129+
path: mpy-cross/mpy-cross
130+
131+
build-arm:
132+
runs-on: ubuntu-18.04
133+
needs: test
134+
strategy:
135+
fail-fast: false
136+
matrix:
137+
board:
138+
- "8086_commander"
139+
- "TG-Watch02A"
140+
- "aramcon_badge_2019"
141+
- "arduino_mkr1300"
142+
- "arduino_mkrzero"
143+
- "arduino_nano_33_ble"
144+
- "arduino_nano_33_iot"
145+
- "arduino_zero"
146+
- "bast_pro_mini_m0"
147+
- "bdmicro_vina_m0"
148+
- "capablerobot_usbhub"
149+
- "catwan_usbstick"
150+
- "circuitbrains_basic_m0"
151+
- "circuitbrains_deluxe_m4"
152+
- "circuitplayground_bluefruit"
153+
- "circuitplayground_express"
154+
- "circuitplayground_express_crickit"
155+
- "circuitplayground_express_displayio"
156+
- "clue_nrf52840_express"
157+
- "cp32-m4"
158+
- "datalore_ip_m4"
159+
- "datum_distance"
160+
- "datum_imu"
161+
- "datum_light"
162+
- "datum_weather"
163+
- "electronut_labs_blip"
164+
- "electronut_labs_papyr"
165+
- "escornabot_makech"
166+
- "espruino_pico"
167+
- "espruino_wifi"
168+
- "feather_bluefruit_sense"
169+
- "feather_m0_adalogger"
170+
- "feather_m0_basic"
171+
- "feather_m0_express"
172+
- "feather_m0_express_crickit"
173+
- "feather_m0_rfm69"
174+
- "feather_m0_rfm9x"
175+
- "feather_m0_supersized"
176+
- "feather_m4_express"
177+
- "feather_m7_1011"
178+
- "feather_mimxrt1011"
179+
- "feather_mimxrt1062"
180+
- "feather_nrf52840_express"
181+
- "feather_radiofruit_zigbee"
182+
- "feather_stm32f405_express"
183+
- "gemma_m0"
184+
- "grandcentral_m4_express"
185+
- "hallowing_m0_express"
186+
- "hallowing_m4_express"
187+
- "imxrt1010_evk"
188+
- "imxrt1020_evk"
189+
- "imxrt1060_evk"
190+
- "itsybitsy_m0_express"
191+
- "itsybitsy_m4_express"
192+
- "itsybitsy_nrf52840_express"
193+
- "kicksat-sprite"
194+
- "makerdiary_nrf52840_mdk"
195+
- "makerdiary_nrf52840_mdk_usb_dongle"
196+
- "meowbit_v121"
197+
- "meowmeow"
198+
- "metro_m0_express"
199+
- "metro_m4_airlift_lite"
200+
- "metro_m4_express"
201+
- "metro_nrf52840_express"
202+
- "mini_sam_m4"
203+
- "monster_m4sk"
204+
- "ndgarage_ndbit6"
205+
- "nfc_copy_cat"
206+
- "nucleo_f746zg"
207+
- "nucleo_f767zi"
208+
- "nucleo_h743zi_2"
209+
- "ohs2020_badge"
210+
- "openbook_m4"
211+
- "openmv_h7"
212+
- "particle_argon"
213+
- "particle_boron"
214+
- "particle_xenon"
215+
- "pca10056"
216+
- "pca10059"
217+
- "pca10100"
218+
- "pewpew10"
219+
- "pewpew_m4"
220+
- "pirkey_m0"
221+
- "pitaya_go"
222+
- "pyb_nano_v2"
223+
- "pybadge"
224+
- "pybadge_airlift"
225+
- "pyboard_v11"
226+
- "pycubed"
227+
- "pycubed_mram"
228+
- "pygamer"
229+
- "pygamer_advance"
230+
- "pyportal"
231+
- "pyportal_titano"
232+
- "pyruler"
233+
- "robohatmm1_m4"
234+
- "sam32"
235+
- "seeeduino_xiao"
236+
- "serpente"
237+
- "shirtty"
238+
- "simmel"
239+
- "snekboard"
240+
- "sparkfun_lumidrive"
241+
- "sparkfun_nrf52840_mini"
242+
- "sparkfun_qwiic_micro_no_flash"
243+
- "sparkfun_qwiic_micro_with_flash"
244+
- "sparkfun_redboard_turbo"
245+
- "sparkfun_samd21_dev"
246+
- "sparkfun_samd21_mini"
247+
- "sparkfun_samd51_thing_plus"
248+
- "spresense"
249+
- "stm32f411ce_blackpill"
250+
- "stm32f411ve_discovery"
251+
- "stm32f412zg_discovery"
252+
- "stm32f4_discovery"
253+
- "stm32f746g_discovery"
254+
- "stringcar_m0_express"
255+
- "teensy40"
256+
- "teensy41"
257+
- "teknikio_bluebird"
258+
- "thunderpack"
259+
- "trellis_m4_express"
260+
- "trinket_m0"
261+
- "trinket_m0_haxpress"
262+
- "uartlogger2"
263+
- "uchip"
264+
- "ugame10"
265+
- "winterbloom_big_honking_button"
266+
- "winterbloom_sol"
267+
- "xinabox_cc03"
268+
- "xinabox_cs11"
269+
270+
steps:
271+
- name: Set up Python 3.8
272+
uses: actions/setup-python@v1
273+
with:
274+
python-version: 3.8
275+
- name: Install deps
276+
run: |
277+
sudo apt-get install -y gettext
278+
pip install requests sh click setuptools awscli
279+
wget https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
280+
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
281+
- name: Versions
282+
run: |
283+
gcc --version
284+
arm-none-eabi-gcc --version
285+
python3 --version
286+
- uses: actions/checkout@v2
287+
with:
288+
submodules: true
289+
fetch-depth: 0
290+
- run: git fetch --recurse-submodules=no https://github.com/adafruit/circuitpython refs/tags/*:refs/tags/*
291+
- run: git submodule sync
292+
- run: git submodule foreach git remote -v
293+
- run: git submodule foreach git fetch --recurse-submodules=no origin +refs/tags/*:refs/tags/*
294+
- name: mpy-cross
295+
run: make -C mpy-cross -j2
296+
- name: build
297+
run: python3 -u build_release_files.py
298+
working-directory: tools
299+
env:
300+
BOARDS: ${{ matrix.board }}
301+
- uses: actions/upload-artifact@v1.0.0
302+
with:
303+
name: ${{ matrix.board }}
304+
path: bin/${{ matrix.board }}
305+
- name: Upload to S3
306+
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
307+
env:
308+
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
309+
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
310+
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
311+
312+
build-riscv:
313+
runs-on: ubuntu-18.04
314+
needs: test
315+
strategy:
316+
fail-fast: false
317+
matrix:
318+
board:
319+
- "fomu"
320+
321+
steps:
322+
- name: Set up Python 3.8
323+
uses: actions/setup-python@v1
324+
with:
325+
python-version: 3.8
326+
- name: Install deps
327+
run: |
328+
sudo apt-get install -y gettext
329+
pip install requests sh click setuptools awscli
330+
wget https://static.dev.sifive.com/dev-tools/riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-centos6.tar.gz
331+
sudo tar -C /usr --strip-components=1 -xaf riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-centos6.tar.gz
332+
- name: Versions
333+
run: |
334+
gcc --version
335+
riscv64-unknown-elf-gcc --version
336+
python3 --version
337+
- uses: actions/checkout@v2
338+
with:
339+
submodules: true
340+
fetch-depth: 0
341+
- run: git fetch --recurse-submodules=no https://github.com/adafruit/circuitpython refs/tags/*:refs/tags/*
342+
- run: git submodule sync
343+
- run: git submodule foreach git remote -v
344+
- run: git submodule foreach git fetch --recurse-submodules=no origin +refs/tags/*:refs/tags/*
345+
- name: mpy-cross
346+
run: make -C mpy-cross -j2
347+
- name: build
348+
run: python3 -u build_release_files.py
349+
working-directory: tools
350+
env:
351+
BOARDS: ${{ matrix.board }}
352+
- uses: actions/upload-artifact@v1.0.0
353+
with:
354+
name: ${{ matrix.board }}
355+
path: bin/${{ matrix.board }}
356+
- name: Upload to S3
357+
run: "[ -z \"$AWS_ACCESS_KEY_ID\" ] || aws s3 cp bin/ s3://adafruit-circuit-python/bin/ --recursive --no-progress --region us-east-1"
358+
env:
359+
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
360+
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
361+
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))

0 commit comments

Comments
 (0)