CircuitPython 9.0.0 Alpha 4 je izdan! @circuitpython

CircuitPython 9.0.0 Alpha 4 je izdan! @circuitpython

Izvorno vozlišče: 2379732

Adafruit CircuitPython 9

Iz Stran za izdajo GitHub:

To je CircuitPython 9.0.0-alpha.4, izdaja alfa za 9.0.0. Ima pomembne znane napake in bo imel dodatne dodatke in popravke pred končno izdajo 9.0.0.

(9.0.0-alpha.3 je bil zavržen zaradi težave z gradnjo, ki jo je popravil #8587.)

OPOMBE: CircuitPython od različice 9.0.0-alpha.4 uporablja nov notranji dinamični mehanizem za shranjevanje (»split heap«), ki ga bo treba prilagoditi. Morda boste ugotovili, da nekateri programi CircuitPython ne uspejo z MemoryError or RuntimeError: PYSTACK exhausted izjeme. Prilagajanje settings.toml vrednost CIRCUITPY_HEAP_START_SIZE lahko pomaga. Prosim datoteko Vprašanja s primeri programov, ki se ne nalagajo več, in ali ste s prilagajanjem lahko odpravili težavo CIRCUITPY_HEAP_START_SIZE.

OPOZORILO samo za plošče nRF52: Če ima vaša plošča zagonski nalagalnik nRF52 UF2, katerega različica je pred 0.6.1, ne boste mogli naložiti CircuitPython 8.2.0 in novejših zaradi povečane velikosti vdelane programske opreme. glej ta navodila za posodobitev vašega zagonskega nalagalnika.

Pomembne spremembe 9.0.0

  • Nov mehanizem notranjega dinamičnega shranjevanja razdeljene kopice.
  • Združite posodobitve iz MicroPython v1.19.1, v1.20.0 in v1.21.0.
  • Espressif: posodobitev na ESP-IDF v5.1.
  • Reorganizirajte se in se razdelite displayio. Struktura poimenovanja 8.xx je na voljo v 9.xx, vendar bo odstranjena v 10.0.0.
  • Pogoni CIRCUITPY so zdaj nameščeni v sistemu Android.
  • Povečana zmogljivost datoteke na pogonih CIRCUITPY <= 128 kB.
  • Nadaljnja podpora za gostitelje USB na i.MX in RP2040.
  • Odstranite zastarele različice 8.xx: displayio.*.show(), I2CPeripheral preimenovano v I2CTarget.
  • Dodaj repl.py, ki se zažene tik pred zagonom REPL.
  • Dodaj OrderedDict.move_to_end().
  • Dodaj synthio.Synthesizer.note_state.
  • Dodaj warnings modul, podoben temu, kar je v CPython.
  • Dodajte podporo za I2S MCLK na Espressif.
  • Dodajte podporo za zapis mDNS TXT.

Prenesite s circuitpython.org

Prenosi vdelane programske opreme so na voljo pri stran za prenose on circuitpython.org. Spletno mesto olajša izbiro prave datoteke in jezika za vašo ploščo.

namestitev

Za namestitev sledite navodilom v Dobrodošli v CircuitPython! vodnik. Če želite namestiti najnovejše knjižnice, glejte stran v tem vodniku.

Poskusite najnovejšo različico urejevalnika Mu za ustvarjanje in urejanje vaših programov CircuitPython in za enostaven dostop do serijske povezave CircuitPython (REPL).

dokumentacija

Dokumentacija je na voljo v readthedocs.io.

Stanje vrat

CircuitPython ima številna »vrata«, ki so osnovne izvedbe za različne družine mikrokontrolerjev. Stabilnost se razlikuje glede na vrata. Od te izdaje se ta vrata štejejo za stabilna (vendar si oglejte znane težave spodaj):

  • atmel-samd: Microchip SAMD21, SAMx5x
  • cxd56: Sony Spresense
  • espressif: Espressif ESP32, ESP32-S2, ESP32-S3, ESP32-C3
  • nrf: nordijsko nRF52840, nRF52833
  • raspberrypi: Raspberry Pi RP2040
  • stm: Družina čipov ST STM32F4

Ta vrata veljajo za alfa in bodo imela hrošče in manjkajočo funkcionalnost:

  • broadcom: plošče Raspberry Pi, kot sta RPi 4, RPi Zero 2W
  • litex: fomu
  • mimxrt10xx: NXP i.MX RT10xxx
  • silabs: družina Silicon Labs MG24
  • stm: Družine čipov ST, ki niso STM32F4

Spremembe od 9.0.0-alpha.2

Popravki in izboljšave

  • Povečana zmogljivost datoteke na pogonih CIRCUITPY <= 128 kB. #8567. Hvala @eightycc.
  • Uporabite samodejno rastočo razdeljeno kopico. #8582, #8553. Hvala @tannewt.
  • Pogoni CIRCUITPY so zdaj nameščeni v sistemu Android. #8580. Hvala @eightycc.
  • Posodobite zamrznjene knjižnice. #8577. Hvala @dhalbert.
  • Popravite večkratna branja bliskovnih blokov, ko se branje začne pri MBR. #8575, #8565. Hvala @eightycc.
  • Popravite nepravilne deklaracije objektov tipa in obnovite dostop do lastnosti izvornega razreda. #8560, #8535. Hvala @dhalbert in @deshipu.
  • Dodajte podporo za zapis mDNS TXT. #8262. Hvala @thzinc.

Spremembe, specifične za vrata in ploščo

Broadcom

Espressif

  • Podpora za I2S MCLK na Espressifu. #8586, #8571. Hvala @lookfwd.

i.MX

nRF

RP2040

  • fiksna pulseio.PulseIn stanje dirke. #8575, #8505. Hvala @Snipeye.

SAMx

SiLabs

Spresense

STM

Posamezne plošče

  • Kamera Adafruit ESP32-S3: Posodobite zatiče na Rev D. #8557, #8528. Hvala @ladyada.

Spremembe dokumentacije

  • fiksna busio Primer skeniranja I2C. #8575, #8568. Hvala @dhalbert.

Gradnja in spremembe infrastrukture

  • Dodaj lib/tlsf do ci_fetch_deps.py za popravljanje gradenj izdaje. #8587. Hvala @dhalbert.
  • Posodobitve za Python 3.12. #8584, #8575, #8568. Hvala @dhalbert.
  • Preklopite na gcc 13.2. #8546. Hvala @tannewt.
  • Uporaba MP_ERROR_TEXT() Namesto translate() povsod. #8452. Hvala @jepler.
  • Uporaba mp_rom_error_text_t Namesto compressed_string_t. #8531, #8519. Hvala @tannewt in @jepler.

Dodatki in izboljšave prevoda

  • Hvala za prevode:
    • @andibing (angleščina – Združeno kraljestvo)
    • @hexthat (kitajščina – pinjin)
    • @jessyjones (francoščina)
    • @MuskoM (poljščina)
    • @supcik (francosko)
    • @wtuemura (portugalščina – Brazilija)

Nove plošče od 9.0.0-alpha.2

  • LILYGO T-deck. #8563. Hvala @rgrizzell.
  • Unexpected Maker BLING! #8575, #8495. Hvala @UnexpectedMaker.
  • Nepričakovani izdelovalec TinyWATCH S3. #8575, #8495. Hvala @UnexpectedMaker.
  • WeAct C6 N4. #8550. Hvala @bill88t.
  • WeAct C6 N8. #8550. Hvala @bill88t.

Znane težave

  • Oglejte si https://github.com/adafruit/circuitpython/issues za druge težave, vključno s težavami, ki jih je še treba obravnavati:

Hvala

Hvala vsem, ki ste uporabljali, testirali in prispeval od 9.0.0-alpha.2, vključno z zgornjimi sodelavci in številnimi drugimi na GitHub in Discord. Pridružite se nam na Nesoglasni klepet sodelovati.

Časovni žig:

Več od Ada Fruit