Releases: Steffo99/sophon
Beta 3 (Release candidate)
The last bugs were fixed and everything seems to be working correctly!
Beta 2
Beta 1
Week 6 (2021-09-09 → 2021-09-16)
-
✨ Creata immagine Docker apposita per Sophon
- 📦 Pubblicata l'immagine Docker su DockerHub e GitHub Containers
-
✨ Riscritta la pagina di login del frontend
-
✨ Configurato il Continuous Deployment su Vercel
- ℹ️ Il frontend del branch
main
di questo repository è ora disponibile a questo link: https://sophon.steffo.eu
- ℹ️ Il frontend del branch
-
🐛 Sistemati bug minori su bluelib e bluelib-react
Week 5 (2021-09-02 → 2021-09-08)
-
✨ Creato tema di JupyterLab ispirato al tema Sophon di bluelib
-
✨ Completata l'app Django "notebooks", contenente tutti i metodi relativi al deployment dei notebooks
-
💬 L'architettura è quella descritta nello schema implementativo creato durante la Week 1, con la differenza che tutti i Notebook sono "Internet Notebook", in quanto non è possibile esporre porte da reti interne con Docker.
-
✨ Implementata la funzionalità di deployment e gestione dei container Docker dall'API di Django, con l'aggiunta di routine per la gestione di stati non validi
-
✨ Implementato proxying
http://
ews://
dinamico attraverso Apache per i Notebook istanziati da Django-
✨ Configurato record wildcard
A
DNS per permettere a ciascun Notebook di avere un suo sottodominio personalizzato-
💬 Ad esempio, il notebook
prova
sarà automaticamente accessibile al dominioprova.dev.sophon.steffo.eu
. -
🔧 Il suffisso è configurabile previa appropriata configurazione del server DNS.
-
-
-
✨ Implementato login automatico su JupyterLab / Jupyter Notebook (attraverso token) per gli utenti con accesso al notebook
-
-
-
✨ Gettato le fondamenta per lo sviluppo del frontend usando bluelib-react
-
⬆️ Installato bluelib-react
-
🔧 Copiato e aggiornato l'hook React
useStorageState
dal progetto di Progetto del Software
-
-
🐛 Sistemati problemi con i campi
null=True
eblank=True
-
🐛 Sistemato bug riguardante l'eliminazione di qualsiasi oggetto attraverso chiamata API
DELETE
Week 4 (2021-08-26 → 2021-09-01)
-
📦 Pubblicata su npm la versione 3.0.7 di bluelib-react
-
🐛 Risolto il bug di caricamento CSS
-
🐛 Risolto il bug che causava un reload indesiderato della pagina premendo invio in un campo di un form
-
-
🔍 Effettuato un po' di ricerche sulle nuove release di Project Jupyter:
-
🔍 JupyterLab (il successore di Jupyter Notebook)
-
🔍 JupyterHub (una soluzione multiutente simile a Sophon per creare istanze di JupyterLab)
-
🔍 Binder (una soluzione per creare istanze di JupyterLab temporanee condivisibili)
-
💭 Riconsiderato l'obiettivo del progetto e deciso di sospendere lo sviluppo della feature sulle fonti di dati
-
-
✨ Creato un'estensione di JupyterLab che aggiunge il tema di Sophon all'editor
-
✨ Creato il modello database dei Notebook instanziabili su Sophon
- 🔍 Indagato sulle immagini Docker da usare per instanziare i Notebook
-
🐛 Risolti anticipatamente alcuni bug dovuti a comportamenti inaspettati di Django
-
🧹 Creata la base dell'applicazione frontend
-
🔧 Vari piccoli miglioramenti al backend
Week 3 (2021-08-19 → 2021-08-25)
-
✨ Completato il porting a React della libreria grafica!
-
✨ Effettuato il porting di
lists
,inputs
,forms
,common
,annotations
, esemantics
- ℹ️
inputs
eforms
mi hanno richiesto molto tempo rispetto al resto, in quanto volevo creare dei componenti molto versatili per la creazione di form con React
- ℹ️
-
📦 Aggiornata la documentazione interattiva di conseguenza
-
📦 Pubblicato il pacchetto su npm
-
✨ Creata una configurazione di Webpack personalizzata per permettere la creazione del pacchetto
- 🎓 Imparato le basi di Webpack (dopo aver perso un sacco di tempo a provare di fare funzionare
create-react-app
,nwb
etsdx
per creare pacchetto...)
- 🎓 Imparato le basi di Webpack (dopo aver perso un sacco di tempo a provare di fare funzionare
-
-
🐛 Un bug attualmente impedisce ai browser di caricare correttamente il CSS, ma conto di risolverlo in poco tempo...
-
Week 2 (2021-08-12 → 2021-08-18)
-
🧪 Implementata una base per il testing dei metodi dell'API
-
💡 Progettato buona parte dell'interfaccia grafica e parte della user experience
-
✨ Creato un tema della mia libreria grafica Bluelib da usare per il frontend
-
🔧 Sistemati alcuni dettagli grafici della libreria
-
✨ Aggiunto alla libreria il supporto per elementi
<table>
,<ul>
,<ol>
,<dl>
-
🐛 Sistemato un bug nel layout predefinito a tre colonne
-
-
✨ Iniziato il porting a React della libreria grafica
-
📔 Configurato una documentazione interattiva che permette di
sperimentare con i componenti grafici- 📦 Effettuato il deploy della documentazione su GitHub Pages
-
✨ Effettuato il porting di
layouts
,panels
,chapters
,separators
,images
e parte dellelists
-
🎓 Imparato le basi di TypeScript!
-
Week 1 (2021-08-03 → 2021-08-11)
-
🗒 Scritto un README un po' più dettagliato
-
🔨 Configurato IntelliJ IDEA Ultimate per sviluppare più efficientemente con Django e React
-
📈 Progettato i meccanismi principali dell'applicazione attraverso uno schema
-
✨ Implementato il concetto di Gruppo di ricerca, un gruppo di utenti che hanno accesso ai dati, progetti e paper del gruppo
-
✨ Implementata la possibilità per il creatore del gruppo di specificare se gli utenti possono unirsi liberamente al gruppo o necessitano di un invito per entrare
-
✨ Implementata la possibilità per gli utenti di unirsi a gruppi aperti
-
✨ Implementata la possibilità per gli utenti di lasciare gruppi di cui sono parte
-
-
✨ Implementato il concetto di Progetto di ricerca, un raccoglitore di fonti dati, notebooks e paper relativi a uno specifico argomento (più o meno l'equivalente di un repository su GitHub / GitLab)
-
✨ Implementati tre livelli di privacy per i progetti, ispirati a quelli di GitLab:
- Pubblico: tutti possono vedere i contenuti del progetto
- Interno: chiunque abbia un account universitario può vedere i contenuti del progetto
- Privato: solo i membri del gruppo possono vedere i contenuti del progetto
In ogni caso, solo i membri del gruppo possono apportare modifiche al progetto.
-
-
🚧 Parzialmente implementato il concetto di Tag, categorie per i progetti di ricerca (e in futuro anche altre entità)
-
🚧 (Ri)progettato e parzialmente (ri)implementato il concetto di sorgente di dati
-
✨ Aggiunta la possibilità di autenticarsi all'API utilizzando degli API Token
-
🔧 Implementato un sistema di permessi molto più dettagliato rispetto a quello base di REST Framework basato sull'appartenenza degli utenti al gruppo di ricerca che possiede gli oggetti
-
🔧 Creato una nuova classe
SophonModel
che genera automaticamente deiSerializer
in base al livello di accesso dell'utente che effettua la richiesta -
🔧 Creato una nuova classe
SophonViewSet
che permette una maggiore flessibilità nella gestione delle richieste- 🙁 Al
ModelViewSet
base di REST Framework mancavano un sacco di funzionalità, quali il riempimento dinamico di campi degli oggetti serializzati e la possibilità di restituire errori personalizzati durante la gestione di una richiesta senza effettuare l'override dell'intera azione
- 🙁 Al
-
📔 Documentato e commentato (quasi) tutte le nuove classi e funzioni
Week 0 (2021-04-03 → 2021-04-20)
week-0 🐛 Enable django.contrib.postgres