Commit graph

127 commits

Author SHA1 Message Date
b3542087a0 remove entries for fixed projects 2025-01-04 19:42:32 -06:00
d7e66be0d5
Merge pull request #119 from jepler/circuitpython-mpy-cross-command
Add circuitpython-mpy-cross command
2024-10-07 20:19:35 -05:00
9524f770b3 Add circuitpython-mpy-cross
This wraps the process of building or downloading mpy-cross for a specified
version, then running it with specified arguments.

e.g.,
```
$ circuitpython-mpy-cross --circuitpython-version 9.x -- --version
CircuitPython 9.0.0-alpha.2 on 2023-10-27; mpy-cross emitting mpy v6.1
```
2024-06-16 11:40:19 -05:00
8fe3db1449 Finish converting mpy-cross building to use cache directory 2024-06-16 11:19:19 -05:00
c8a8513288 mpy_cross: Cache it in the user cache path
.. rather than in a build_deps folder, polluting the repo where it's used

this also enables sharing the copy of mpy-cross across multiple repos.
2024-06-15 10:49:11 -05:00
foamyguy
d1d1709f7f example subdirectories 2024-04-08 18:14:10 -05:00
Justin Myers
581f7c5380 Fix py build not using created temp file 2024-03-03 13:55:05 -08:00
90a2341e04
Add an "--only" flag to quickly build just one kind of artifact
Most often I find that I want to check just one kind of artifact
(e.g., mpy files) and this is a quicker syntax than excluding the
other 3 types with 3 --ignores.
2024-01-11 09:07:40 -06:00
ea28feb31d
Fix generation of dependencies[] array 2024-01-11 09:06:42 -06:00
ff6d40dca9
Fix json output when a bundle does not use submodules
Some bundles, such as circuitpython-fonts, don't use submodules to
contain their individual libraries.

Change build_bundle_json so that it works correctly if multiple
libraries come from the same submodule.

With this change, the generated metadata for circuitpython-fonts
contains an entry for every font, not just for one font.
2023-12-19 13:19:04 -06:00
4f50d277da
enable standard zip ("deflate") compression
This saves ~50% on the main bundle and will save ~85% on the fonts bundle
2023-12-19 11:23:53 -06:00
Brendan
1e64df5969 remove travis CI specific code 2023-12-16 20:02:27 -08:00
Brendan
7cd8379d01 addresses #103 2023-12-15 21:32:16 -08:00
Dan Halbert
f9a8aa3b1a
Change remaining blacklist to blocklist 2023-12-05 09:55:11 -05:00
0032a80387
Change terminology 2023-12-05 08:02:34 -06:00
b51d905d9d
blacklist should let this pass CI 2023-12-02 15:23:07 -06:00
373b256441
typo 2023-12-02 15:23:07 -06:00
ca779868d8
pyproject is the name of the file 2023-11-30 10:34:45 -06:00
0c58704d65
Restore behavior of shipping 0-byte py files as .py, not .mpy
(it's smaller on disk)
2023-11-30 09:11:58 -06:00
d8719e4d04
Get package name from settings.toml, allow arbitrary files in packages
This is more dependable, and when we know the package name we can
glob inside it to get all files such as bin or ttf files.

This will allow e.g., 5x8.bin & ov5640_autofocus.bin within
bundles.

the behavior of bundlefly and circup when encountering .bin files
needs to be checked.

Tested by building modified pycamera bundle and the autofocus.bin file
appears in the generated zip files:
```
pycamera-py-ec67bde/lib/adafruit_pycamera/ov5640_autofocus.bin 4077 4096
pycamera-8.x-mpy-ec67bde/lib/adafruit_pycamera/ov5640_autofocus.bin 4077 4096
pycamera-9.x-mpy-ec67bde/lib/adafruit_pycamera/ov5640_autofocus.bin 4077 4096
```

There's at least one library in the bundle that has incorrect metadata
and that leads to an error:
    https://github.com/adafruit/Adafruit_CircuitPython_Colorsys/pull/29
2023-11-30 09:06:27 -06:00
foamyguy
86b60039f2 include pyproject.toml file in the bundle if it exists. 2023-10-30 16:32:50 -05:00
Dan Halbert
653f4e9e50
Use 8.2.0 mpy-cross instead of 8.0.0
Its pathname will match the 9.0.0 name.
2023-10-27 14:58:29 -04:00
Scott Shawcroft
af26b78ea9
Update mpy-cross locations 2023-10-27 10:11:11 -07:00
Scott Shawcroft
4d5881b8c3
Add 9.x bundles 2023-10-27 09:34:40 -07:00
Scott Shawcroft
39377e3e2b
Stop building bundles for 7.x 2023-10-02 12:07:30 -07:00
Tekktrik
123186b725 Use click.Choice 2023-07-27 20:58:13 -04:00
Tekktrik
fa235526a8 Allow bundles to be skipped 2023-07-10 21:50:06 -04:00
foamyguy
0b44929f49 remote name argument 2023-06-27 19:12:21 -05:00
Dan Halbert
d10761a18f
Update to use mpy-cross-8.0.0 instead of 8.0.0-alpha.1 2023-02-16 14:23:35 -05:00
Neradoc
ad4908adbf add spidev to skipped pypi modules 2022-08-18 16:17:02 +02:00
Neradoc
795e3d2ff9 change normalize_dist_name to get back the bundle libraries 2022-08-18 15:55:22 +02:00
Alec Delaney
c3cf652f31
Change both version strings
Doesn't require a patch to be done simultaneously
2022-08-16 12:42:51 -04:00
Alec Delaney
26375aaa16 Update version string 2022-08-15 20:47:21 -04:00
38931db45e
Don't ignore busdevice
This is a weird one since some devices have it in core now, and others don't.

This happened in part because I copypasted the list currently in pipkin instead of tweaking the existing list, which was initially added with this module in the list: b9957133a9
2022-07-18 14:41:15 -05:00
9fb6ffb1ea
build_bundles: Ignore more packages that exist only on pypi
…and sort the existing list and use 'normalized' names

The implementation of normalize_dist_name is taken from pipkin.
2022-07-18 12:55:47 -05:00
Neradoc
a0e40b58da Fix the single file libraries being copied as source.
The code generates a temp file with the library version.
By mistake that was ALWAYS copied back to the mpy file for single file libraries.
The temporary files for the package libraries were also not deleted.

For windows compatibility, the temporary file must be copied (and therefore erased) outside of the with block. In this PR we only keep the temporary file open the time to write to it, and then do the rest.
2022-06-17 23:47:04 +02:00
Neradoc
d98fb9082c Generate Circuitpython 8.X bundle 2022-06-14 16:26:04 +02:00
Neradoc
f91e0108a4
Bump the mpy-cross version for fixes to the language
In Micropython 18 (and CP 7.3.0) there are some language fixes to previous syntax errors in f-strings, and maybe others.
A string like this would not compile prior to 7.3.0:
```py
string = "123456789"
print(f"{string[2:6]}")
```
Note that an MPY file with that code generated with mpy-cross 7.3.0 runs properly on 7.0.0 according to my tests.
2022-06-14 15:20:54 +02:00
2bndy5
a55a92367e self reviewed 2022-01-25 17:19:03 -08:00
2bndy5
bac3e8056f fix url for win x64 pre-built mpy-cross 2022-01-25 14:57:42 -08:00
2bndy5
2d53879c1a solution for #75 2022-01-21 14:29:44 -08:00
Scott Shawcroft
ec2e342ef2
Stop supporting 6.x
Libraries are being updated for 7.0.0 only which has been out since September 20th, 2021.

I've updated the FAQ with the last bundle: https://learn.adafruit.com/welcome-to-circuitpython/frequently-asked-questions
2021-12-13 15:05:19 -08:00
35880f474b update tag for 7.x 2021-10-08 21:55:52 -05:00
foamyguy
3845cee485 fix pypi names for circuitpython org libraries 2021-09-11 11:43:09 -05:00
James Carr
baec9067b8
Update target_versions.py to the latest versions 2021-06-07 23:59:03 +01:00
James Carr
eadbc29632
Add 'if not quiet' to the print statements 2021-05-30 15:45:33 +01:00
James Carr
385cbc607d
Add author info 2021-05-30 12:42:37 +01:00
James Carr
98b12389a8
Replace tab with spaces 2021-05-30 11:27:09 +01:00
James Carr
f69bc7b660
Add basic exception handling around the S3 request 2021-05-30 11:24:43 +01:00
James Carr
39b1fe192f
Add Linux/x86_64 to mpy-cross S3 check 2021-05-30 00:28:56 +01:00