Commit Graph

17553 Commits

Author SHA1 Message Date
DavePutz c014ac3089
Reworked check for input taking too long 2020-09-14 10:54:57 -05:00
DavePutz 6b93f97de1
Removing some prior changes 2020-09-14 10:53:30 -05:00
DavePutz 127346f7ae
Removing some prior changes 2020-09-14 10:52:46 -05:00
DavePutz c68098777d
Fixing up locale/circuitpython.pot date 2020-09-14 10:50:57 -05:00
Lucian Copeland ecc219fe50 Merge remote-tracking branch 'upstream/main' into esp32-displayio-fix 2020-09-14 10:44:31 -04:00
Wellington Terumi Uemura 6bf6995022
Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (795 of 795 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/pt_BR/
2020-09-14 15:47:37 +02:00
Jeff Epler 94e261370b
Merge pull request #3413 from weblate/weblate-circuitpython-main
Translations update from Weblate
2020-09-14 08:47:30 -05:00
Kamil Tomaszewski ce7ee58e92 camera: Update camera module 2020-09-14 13:12:20 +02:00
Kamil Tomaszewski a25e3c2858 locale: make translate 2020-09-14 13:12:20 +02:00
Kamil Tomaszewski c2fc592c2c camera: Change API 2020-09-14 13:11:15 +02:00
Kamil Tomaszewski 143a1ff94a spresense: change the GC to do 32-byte blocks 2020-09-14 13:11:15 +02:00
Kamil Tomaszewski fbf4431aa0 locale: make translate 2020-09-14 13:11:15 +02:00
Kamil Tomaszewski 1fde8ef9bc spresense: Add support for camera 2020-09-14 13:11:15 +02:00
Kamil Tomaszewski 064c597b60 camera: Implement new library for camera 2020-09-14 13:11:15 +02:00
Hosted Weblate 90b21ce548
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/
2020-09-14 04:29:00 +02:00
Jeff Epler 814339abb9
Merge pull request #3405 from jepler/implicit-fallthrough-diagnostic
Enable implicit fallthrough diagnostic, note intentional fallthroughs.
2020-09-13 21:28:51 -05:00
Jeff Epler 9409a2c34c
Merge pull request #3412 from weblate/weblate-circuitpython-main
Translations update from Weblate
2020-09-13 20:41:06 -05:00
Jeff Epler b3bdd4686b PacketBuffer: add missing 'break's, remove unneeded {} 2020-09-13 15:10:38 -05:00
Jeff Epler af24c8ae06 Merge remote-tracking branch 'origin/main' into implicit-fallthrough-diagnostic
Conflict in locale/circuitpython.pot resolved with 'make translate'
2020-09-13 14:21:21 -05:00
Hosted Weblate bbf2e98827
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/
2020-09-13 21:19:10 +02:00
Jeff Epler 73ad78ed1b
Merge pull request #3395 from microDev1/safeMode
Add esp32s2 safe mode support & fix user_safe_mode output
2020-09-13 14:18:59 -05:00
Jeff Epler 90f7340bfc move implicit-fallthrough warning enable to defns.mk 2020-09-13 13:13:09 -05:00
Jeff Epler 9abfc51ced
Merge pull request #3 from ciscorn/dict-comp
Small improvements to the dictionary compression
2020-09-13 12:58:13 -05:00
Jeff Epler a81a2cff02
Merge pull request #3411 from jepler/ble-doc-typo
_bleio: fix markup typo
2020-09-13 12:50:12 -05:00
microDev 506bb097f7
Update safe_mode.c 2020-09-13 23:17:14 +05:30
microDev 36da92075b Update safe mode reason 2020-09-13 22:57:24 +05:30
Jeff Epler e5122b1acf _bleio: fix markup typo 2020-09-13 11:56:34 -05:00
Taku Fukada d18d79ac47 Small improvements to the dictionary compression 2020-09-14 01:50:01 +09:00
microDev 5deac8d249 Update board specific safe mode message 2020-09-13 18:22:40 +05:30
Limor "Ladyada" Fried ca136db210
Merge pull request #3407 from ladyada/qtpy_m0
cutie variant
2020-09-12 21:58:46 -04:00
Jeff Epler 15964a4750 makeqstrdata: Avoid encoding problems
Most users and the CI system are running in configurations where Python
configures stdout and stderr in UTF-8 mode.  However, Windows is different,
setting values like CP1252.  This led to a build failure on Windows, because
makeqstrdata printed Unicode strings to its stdout, expecting them to be
encoded as UTF-8.

This script is writing (stdout) to a compiler input file and potentially
printing messages (stderr) to a log or console.  Explicitly configure stdout to
use utf-8 to get consistent behavior on all platforms, and configure stderr so
that if any log/diagnostic messages are printed that cannot be displayed
correctly, they are still displayed instead of creating an error while trying
to print the diagnostic information.

I considered setting the encodings both to ascii, but this would just be
occasionally inconvenient to developers like me who want to show diagnostic
info on stderr and in comments while working with the compression code.

Closes: #3408
2020-09-12 19:43:08 -05:00
lady ada cc57ef8368 add to buildyml! 2020-09-12 19:58:27 -04:00
lady ada 2fac4851a5 fix typo, tested hardware, neopixel doesnt work tho 2020-09-12 19:56:13 -04:00
lady ada 6fff4ec00d cutie variant 2020-09-12 19:00:26 -04:00
Jeff Epler 11eb55cade
Merge pull request #3406 from CarlFK/main
doc fix: remove the text about the non-existing clock specification
2020-09-12 17:51:28 -05:00
Jeff Epler 01fdd9598a disable iimplicit-fallthrough warning inside asf4
.. there is an instance of it that looks like a "true positive", but it only
affects sdhc transfers that are not a multiple of 4 bytes, which I don't think
happens. (sd card blocks are always 512 bytes)  I can fix this in our
asf4 repo but that would mean this should be deferred until after #3384 is
merged, since that also touches asf4 very invasively by adding a whole new
chip family.
2020-09-12 17:48:42 -05:00
Jeff Epler 7151ee85ce _bleio: add missing break statement 2020-09-12 16:30:12 -05:00
Carl Karsten 2f058029e9 doc fix: remove the text about the non-existing clock specification 2020-09-12 15:25:04 -05:00
Jeff Epler 487de0551c
Merge pull request #3401 from weblate/weblate-circuitpython-main
Translations update from Weblate
2020-09-12 15:21:43 -05:00
Jeff Epler 5729097bc4 atmel-samd: enable build error for implicit fallthrough
If any diagnostics occur, we will want to either add `/* FALLTHROUGH */`
or `break;` as appropriate.  I only tested a few builds (trinket m0
and metro m4 express)
2020-09-12 15:11:29 -05:00
Jeff Epler 12d826d941 Add FALLTHROUGH comments as needed
I investigated these cases and confirmed that the fallthrough behavior
was intentional.
2020-09-12 15:11:29 -05:00
Jeff Epler 4d70872b2b make translate 2020-09-12 15:11:02 -05:00
Jeff Epler 54d97251fe modstruct: Improve compliance with python3
While checking whether we can enable -Wimplicit-fallthrough, I encountered
a diagnostic in mp_binary_set_val_array_from_int which led to discovering
the following bug:
```
>>> struct.pack("xb", 3)
b'\x03\x03'
```
That is, the next value (3) was used as the value of a padding byte, while
standard Python always fills "x" bytes with zeros.  I initially thought
this had to do with the unintentional fallthrough, but it doesn't.
Instead, this code would relate to an array.array with a typecode of
padding ('x'), which is ALSO not desktop Python compliant:
```
>>> array.array('x', (1, 2, 3))
array('x', [1, 0, 0])
```
Possibly this is dead code that used to be shared between struct-setting
and array-setting, but it no longer is.

I also discovered that the argument list length for struct.pack
and struct.pack_into were not checked, and that the length of binary data
passed to array.array was not checked to be a multiple of the element
size.

I have corrected all of these to conform more closely to standard Python
and revised some tests where necessary.  Some tests for micropython-specific
behavior that does not conform to standard Python and is not present
in CircuitPython was deleted outright.
2020-09-12 14:07:23 -05:00
Wellington Terumi Uemura 7cb60d3b69 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (793 of 793 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/pt_BR/
2020-09-12 20:18:38 +02:00
Limor "Ladyada" Fried b24d3b886a
Merge pull request #3399 from jepler/feather-m4-quadspi
feather_m4_express: Use quad data mode on flash
2020-09-12 14:18:32 -04:00
Jeff Epler 4fa419a751
Merge pull request #3390 from weblate/weblate-circuitpython-main
Translations update from Weblate
2020-09-12 12:27:07 -05:00
Jeff Epler 40ab5c6b21 compression: Implement ciscorn's dictionary approach
Massive savings.  Thanks so much @ciscorn for providing the initial
code for choosing the dictionary.

This adds a bit of time to the build, both to find the dictionary
but also because (for reasons I don't fully understand), the binary
search in the compress() function no longer worked and had to be
replaced with a linear search.

I think this is because the intended invariant is that for codebook
entries that encode to the same number of bits, the entries are ordered
in ascending value.  However, I mis-placed the transition from "words"
to "byte/char values" so the codebook entries for words are in word-order
rather than their code order.

Because this price is only paid at build time, I didn't care to determine
exactly where the correct fix was.

I also commented out a line to produce the "estimated total memory size"
-- at least on the unix build with TRANSLATION=ja, this led to a build
time KeyError trying to compute the codebook size for all the strings.
I think this occurs because some single unicode code point ('ァ') is
no longer present as itself in the compressed strings, due to always
being replaced by a word.

As promised, this seems to save hundreds of bytes in the German translation
on the trinket m0.

Testing performed:
 - built trinket_m0 in several languages
 - built and ran unix port in several languages (en, de_DE, ja) and ran
   simple error-producing codes like ./micropython -c '1/0'
2020-09-12 10:10:45 -05:00
microDev e9f411bebc Add translation for safe mode 2020-09-12 18:10:04 +05:30
microDev 4da478382d Fix serial console output & add more boards 2020-09-12 17:46:52 +05:30
Scott Shawcroft 8f58669ddd
Fix bug with socket.recv_into size == 0.
It returned 0 when it should have filled the buffer.

Python reference: https://docs.python.org/3/library/socket.html#socket.socket.recv_into
2020-09-11 16:17:20 -07:00