25832 Commits

Author SHA1 Message Date
Jim Mussared
1d9e489af3 extmod/modbluetooth: Add send_update arg to gatts_write.
This allows the write to trigger a notification or indication, but only to
subscribed clients. This is different to gatts_notify/gatts_indicate,
which will unconditionally notify/indicate.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-08-14 22:21:55 +10:00
Jim Mussared
5733c49174 stm32,esp32,rp2: Enable MICROPY_PY_FSTRINGS by default.
Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-08-14 16:58:40 +10:00
Jim Mussared
692d36d779 py: Implement partial PEP-498 (f-string) support.
This implements (most of) the PEP-498 spec for f-strings and is based on
https://github.com/micropython/micropython/pull/4998 by @klardotsh.

It is implemented in the lexer as a syntax translation to `str.format`:
  f"{a}" --> "{}".format(a)

It also supports:
  f"{a=}" --> "a={}".format(a)

This is done by extracting the arguments into a temporary vstr buffer,
then after the string has been tokenized, the lexer input queue is saved
and the contents of the temporary vstr buffer are injected into the lexer
instead.

There are four main limitations:
- raw f-strings (`fr` or `rf` prefixes) are not supported and will raise
  `SyntaxError: raw f-strings are not supported`.

- literal concatenation of f-strings with adjacent strings will fail
    "{}" f"{a}" --> "{}{}".format(a)    (str.format will incorrectly use
                                         the braces from the non-f-string)
    f"{a}" f"{a}" --> "{}".format(a) "{}".format(a) (cannot concatenate)

- PEP-498 requires the full parser to understand the interpolated
  argument, however because this entirely runs in the lexer it cannot
  resolve nested braces in expressions like
    f"{'}'}"

- The !r, !s, and !a conversions are not supported.

Includes tests and cpydiffs.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-08-14 16:58:40 +10:00
microDev
82a952b6aa
Merge pull request #5127 from tannewt/fix_samd_timer_leak
Reset timers separate from pwmio
2021-08-14 11:26:18 +05:30
Scott Shawcroft
3ffab36cdc
Merge remote-tracking branch 'adafruit/main' into fix_samd_timer_leak 2021-08-13 15:20:25 -07:00
Dan Halbert
ffb9ecfeca
Merge pull request #5139 from tannewt/onewireio
Move OneWire to `onewireio`
2021-08-13 18:10:04 -04:00
Scott Shawcroft
af823cce07
Merge pull request #5137 from jepler/codeformat-error-checking
Codeformat version checking
2021-08-13 14:53:51 -07:00
Mark
9deba6b3f8
Merge pull request #5147 from tannewt/tweak_tx_power
Increase tx power for BLE workflow pairing
2021-08-13 16:49:41 -05:00
Scott Shawcroft
d528386d4e
Merge pull request #5143 from tylercrumpton/add-crumps2
Add CrumpS2 ESP32-S2 board
2021-08-13 12:03:42 -07:00
Scott Shawcroft
bc23140392
Merge pull request #5144 from rpavlik/patch-2
Update README.rst
2021-08-13 11:34:26 -07:00
Scott Shawcroft
49dcdef512
Fix copy pasta 2021-08-13 11:32:26 -07:00
Scott Shawcroft
fdf49a4b2f
Increase tx power for BLE workflow pairing 2021-08-13 11:30:09 -07:00
Scott Shawcroft
bfbd954240
Merge pull request #5142 from weblate/weblate-circuitpython-main
Translations update from Weblate
2021-08-13 11:21:27 -07:00
Ryan A. Pavlik
69d995aa4d
Update README.rst
Fix typo in URL text: the actual link was fine.
2021-08-13 10:57:09 -05:00
foamyguy
4d8494f1cd fix stubs 2021-08-13 10:42:21 -05:00
foamyguy
ec8b31e7b4 code format and translations 2021-08-13 10:13:38 -05:00
foamyguy
c1e164e1ff rename to boundary_fill and clean up comments 2021-08-13 09:52:51 -05:00
foamyguy
0bbb0f1d06 Merge branch 'adafruit_main' into bitmaptools_paint_fill 2021-08-13 09:49:24 -05:00
Damien George
162bf3c5d8 tools/mpremote: Add "devs" shortcut for "connect list".
See issue #7480.

Signed-off-by: Damien George <damien@micropython.org>
2021-08-14 00:13:35 +10:00
Damien George
1f48934312 tools/mpremote: Fix connect-list in case VID/PID are None.
Which can be the case on Windows and macOS for certain serial devices.

Fixes issue #7636.

Signed-off-by: Damien George <damien@micropython.org>
2021-08-14 00:13:35 +10:00
Damien George
8fcdb5490c extmod/modlwip: Fix close and clean up of UDP and raw sockets.
The correct callback-deregister functions must be called dependent on the
socket type, otherwise resources may not be freed correctly.

Signed-off-by: Damien George <damien@micropython.org>
2021-08-13 23:46:11 +10:00
Damien George
90d47ee34d tests/run-multitests.py: Add broadcast and wait facility.
Test instances can now use the following methods to synchronise their
execution:

    multitest.broadcast("sync message")
    multitest.wait("sync message")

Signed-off-by: Damien George <damien@micropython.org>
2021-08-13 23:26:34 +10:00
Patrick Van Oosterwijck
e49f609186 tools/autobuild: Add auto build for Silicognition wESP32. 2021-08-13 23:25:24 +10:00
Daniel Mizyrycki
8f45f5ee4f nrf: Set .mpy features consistent with documentation and other ports.
This allows nrf devices to load .mpy files.  And nrf52840 and nrf9160 based
boards also support compiling and loading native code.
2021-08-13 23:22:54 +10:00
Jim Mussared
d7fbc755dc docs/library/index.rst: Clarify module naming and purpose.
Adds section about extending built-in modules from Python.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-08-13 23:14:08 +10:00
Jim Mussared
ee549d725a tools/gen-cpydiff.py: Don't rename foo to ufoo in diff output.
Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-08-13 23:14:08 +10:00
Jim Mussared
c737cde947 docs: Replace ufoo with foo in all docs.
Anywhere a module is mentioned, use its "non-u" name for consistency.

The "import module" vs "import umodule" is something of a FAQ, and this
commit intends to help clear that up.  As a first approximation MicroPython
is Python, and so imports should work the same as Python and use the same
name, to a first approximation.  The u-version of a module is a detail that
can be learned later on, when the user wants to understand more and have
finer control over importing.

Existing Python code should just work, as much as it is possible to do that
within the constraints of embedded systems, and the MicroPython
documentation should match the idiomatic way to write Python code.

With universal weak links for modules (via MICROPY_MODULE_WEAK_LINKS) users
can consistently use "import foo" across all ports (with the exception of
the minimal ports).  And the ability to override/extend via "foo.py"
continues to work well.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-08-13 22:53:29 +10:00
Jonny Bergdahl
780d158d40
Translated using Weblate (Swedish)
Currently translated at 100.0% (1015 of 1015 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/sv/
2021-08-13 14:33:10 +02:00
Wellington Terumi Uemura
6f72b02d3e
Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1015 of 1015 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/pt_BR/
2021-08-13 14:33:09 +02:00
Jim Mussared
218606351c docs: Rename ufoo.rst to foo.rst.
This is a simple rename of the files, no content changes
(other than updating index.rst to use the new paths)

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-08-13 20:31:32 +10:00
Damien George
671f012306 docs/templates: Add unix and zephyr quickref links to top-index.
Signed-off-by: Damien George <damien@micropython.org>
2021-08-13 20:21:21 +10:00
Julia Hathaway
6ed6990625 docs/library/zephyr: Add libraries specific to the Zephyr port.
Includes documentation for Zephyr specific modules (zephyr and zsensor),
classes (DiskAccess and FlashArea), and functions.

Signed-off-by: Julia Hathaway <julia.hathaway@nxp.com>
2021-08-13 20:21:14 +10:00
Julia Hathaway
333e16521b docs/zephyr: Add quick reference for the Zephyr port.
Includes an introduction to using the Zephyr port on MicroPython.  The
quickref details examples of how to use each module the port currently
supports.  The tutorial provides additional details for Zephyr specific
modules.

Signed-off-by: Julia Hathaway <julia.hathaway@nxp.com>
2021-08-13 20:20:57 +10:00
microDev
78f073c457
Merge pull request #5138 from jepler/refresh-defaults
Displayio: change refresh minimum_frames_per_second default to 0
2021-08-13 09:35:50 +05:30
Jeff Epler
a36b930ead check uncrustify version 2021-08-12 14:19:29 -05:00
Scott Shawcroft
7e55905d95
Fix up onewireio docs and other notes
Not all of the notes were marked correctly.
2021-08-12 11:15:04 -07:00
Jeff Epler
a89f1c806f
Update Display.c 2021-08-12 12:50:38 -05:00
Scott Shawcroft
de796e2304
Move OneWire to onewireio from busio
This will allow finer grained inclusion in 8.0.0

Fixes #5135
2021-08-12 10:47:14 -07:00
Jeff Epler
e8df829714 Displayio: change refresh minimum_frames_per_second default to 0
Closes: #5133
2021-08-12 12:00:07 -05:00
Scott Shawcroft
d294692c4e
Merge pull request #5100 from tannewt/fix_cp_irremote
Switch SAMD21 ticks to PER event
2021-08-12 09:52:29 -07:00
Scott Shawcroft
f8b7d5faba
Merge pull request #5131 from lesamouraipourpre/epaperdisplay-docs
Update the __init__ documentation for EPaperDisplay
2021-08-12 09:28:43 -07:00
Dan Halbert
6c1dbea8b0
Merge pull request #5129 from skieast/add-morphesp240
Add morphesp240
2021-08-12 12:27:51 -04:00
Scott Shawcroft
9c77d2653f
Merge pull request #5099 from ZodiusInfuser/main
Added definitions for some upcoming Pimoroni LED driver boards
2021-08-12 09:27:21 -07:00
Scott Shawcroft
74770861ac
Merge pull request #5130 from dhalbert/update-adabot
update tools/adabot submodule
2021-08-12 09:26:37 -07:00
Dan Halbert
5d6706ce88
Merge pull request #5128 from weblate/weblate-circuitpython-main
Translations update from Weblate
2021-08-12 10:23:18 -04:00
James Carr
670d295db5 Update the __init__ documentation for EPaperDisplay.
The unknown parameter `single_byte_bounds` was removed.
The missing parameters `set_current_column_command` and `set_current_row_command` were added.
2021-08-12 14:05:17 +01:00
Dan Halbert
a48aa97974 riscv buidl: pip install -r requirements-dev.txt 2021-08-12 07:47:34 -04:00
Dan Halbert
05205259c6 update tools/adabot submodule 2021-08-11 23:14:58 -04:00
ZodiusInfuser
47c8ff0570 Removed unnecessary defines 2021-08-11 23:34:20 +01:00
Scott Shawcroft
fb6b438580
Make getpass and traceback full build only
This leaves much more space on SAMD21 builds that aren't "full builds".
These are new APIs that we don't need to add to old boards.

Also, tweak two Arduino boards to save space on them.
2021-08-11 14:47:35 -07:00