Rilascio del framework web Django 3.0

Si è tenuto rilascio del framework web Django 3.0, scritto in Python e destinato allo sviluppo di applicazioni web. La versione Django 3.0 è classificata come rilascio con supporto standard e sarà a ottenere aggiornata fino ad aprile 2021. Il ramo LTS 2.22 sarà supportato fino ad aprile 2022, mentre il ramo 1.11 fino ad aprile 2020. Il supporto per il ramo 2.1 è stato interrotto.

Le chiave miglioramenti:

  • È stata fornita supporto per il funzionamento in modalità asincrona con esecuzione come applicazione ASGI. L'interfaccia ASGI (Asynchronous Server Gateway Interface) è stata sviluppata come sostituzione del WSGI, mirata a garantire l'interazione tra server, framework e applicazioni che supportano l'esecuzione in modalità asincrona. È mantenuto il supporto per l'avvio utilizzando WSGI, mentre il codice correlato alla modalità asincrona viene incluso solo quando si avvia in ambienti basati su ASGI.

    Per la modalità asincrona è stato implementato un ciclo di elaborazione eventi separato (event loop), nel quale non è consentito richiamare codice contrassegnato come «async unsafe». A questo codice appartengono, ad esempio, le operazioni con il database (ORM), che non possono essere utilizzate in un contesto asincrono (in tal caso verrà restituito l'errore SynchronousOnlyOperation) e devono essere spostate in un thread sincrono separato.

  • Sono stati aggiunti tipi enumerati specializzati TextChoices, IntegerChoices e Choices, che possono di utilizzare essere utilizzati per definire campi testuali e interi nel modello, ad esempio, quando è necessario memorizzare nei campi set di etichette leggibili, tradotte in specifici attributi:

    class YearInSchool(models.TextChoices):
    FRESHMAN = 'FR', _('Freshman')
    SOPHOMORE = 'SO', _('Sophomore')
    JUNIOR = 'JR', _('Junior')
    SENIOR = 'SR', _('Senior')
    GRADUATE = 'GR', _('Graduate')

  • È stata aggiunta la possibilità di specificare espressioni che restituiscono BooleanField, direttamente nei filtri QuerySet senza bisogno di annotarli in anticipo, prima dell'applicazione per la filtrazione delle annotazioni.
  • È stato garantito il supporto ufficiale per i database MariaDB 10.1 e versioni più recenti.
  • Per PostgreSQL è stato implementato il classe ExclusionConstraint per utilizzare vincoli basati su espressioni ESCLUDI;
  • Il supporto per Python 3.5 è stato interrotto.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster