*** Cittadella/UX 0.3.2 Release notes *** (08/01/2004) Grandi novita' per la versione 0.3.2 del vostro software preferito! Il punto forte sono i nuovi sondaggi, che vedono la luce dopo la riscrittura totale dell'urna da parte di LePetit: piu' stabili, piu' semplici e piacevoli da usare, e molto piu' flessibili. Ma ci sono anche altre piccole novita' per utenti e sysop, e vari bugfixes. Ecco la descrizione delle novita`: 1) Nuovi sondaggi (LePetit) La gestione dei sondaggi e` stata completamente riscritta, migliorando il codice, eliminando diversi bachi e implementando le seguenti novita': * Nuovo tipo di referendum: il "referendum propositivo". Gli utenti propongono dei nomi che verranno riportati fedelmente alla fine del sondaggio... Tutto da testare :-) * Scelta semplificata dei sondaggi: Ad ogni sondaggio ora viene associata una lettera, che puo' venire usata per sceglierlo piu' semplicemente, in alternativa al numero del sondaggio. In ogni caso, l'interfaccia riconosce quando c'e` solo un sondaggio disponibile, e chiede conferma ("vuoi **** questo?") * Creazione semplificata dei sondaggi: - e` ora possibile interrompere la creazione di un sondaggio in qualunque momento mediante la pressione di Ctrl-X, - non chiede in anticipo quante voci si vogliono immettere, ma permette di aggiungerne e toglierne finche' si vuole, - La data di termine e` (semicausualmente) predefinita. 2) Friend/Enemy lists. La vecchia friend-list e' stata eliminata, a favore di due liste, la lista di amici (friend-list) e la lista di nemici (enemy-list). In ognuna delle liste si possono inserire i nomi di dieci utenti. Per vedere il contenuto delle liste, si usa il comando: <.>riend ead Per modificarne il contenuto, <.fe> : <.>riend edit nemy-list : Modifica lista amici <.ff> : <.>riend edit riend-list : Modifica lista nemici La friend-list ha il vecchio comportamento, ovvero tramite configurazione utenti <.ec> e' possibile accettare gli X provenienti da amici anche se gli X sono disabilitati (equivalentemente utilizzando il comando 'toggle friends' <.tf>), e richiedere la notifica dei login/logout degli amici anche quando le notifiche sono disattivate. L'effetto dell'enemy-list invece e' di rifiutare sempre gli X provenienti dai nemici, anche quando avete gli X abilitati. Inoltre, i nomi degli utenti vengono colorati diversamente a seconda della lista alla quale appartengono: gli amici in rosso, i nemici in grigio scuro. Nelle liste utenti infine l'utente vede il proprio nome in azzurro chiaro. Tutti gli altri utenti sono blu. 3) Destinatari multipli per gli express-messages. E' ora possibile inviare un X a piu' utenti simultaneamen- te. Semplicemente, dopo aver digitato il nome di un destinatario, invece di premere per inviare l'X, potete inserire una virgola <,> seguita dal nome di un secondo destinatario. Potete avere fino a 10 destinatari distinti. Per inserire il nome di un amico piu' rapidamente, potete digitare <&n>, dove n e' il suo numero nella lista. La stessa cosa funziona con i nemici, <^n> viene sostituito dal nome dell'ennesimo nemico nella enemy-list. Nel diario degli X, che potete chiamare con <&>, appaiono tutti i destinatari degli X multipli. Se uno o piu' utenti si scollegano mentre scrivete l'X, vi verra' chiesto se volete forwardare l'X in Mail. Infine, potete interrompere l'immissione dei destinatari degli X in qualunque momento, premendo . L'invio dell'X-message verra' cosi' annullato. 4) Nuova opzione di configurazione: "Ricevo Newsletter BBS via Email" Potete modificarne il valore con il comando <.ec> Se rispondete di "Si", riceverete via Email la newsletter che gli Aide vi manderanno di tanto in tanto. Il supporto per la newsletter verra' ampliato in futuro. Controllate che questa opzione sia abilitata per il vostro account. 5) Altre novita': - Nel profile personale i dati non visibili a tutti vengono visualizzati fra parentesi quadre. (Feature gentilmente offerta da Furjo) - E' stato implementato un sistema di keepalive per mantenere in vita la connessione con il server anche durante lunghi periodi d'inattivita'. - da room prompt cancella tutto lo schermo. - Nel pager e' ora possibile usare anche i tasti di cursore su/giu' e i tasti e per scorrere il testo. - Alla fine del collegamento, appaiono alcune statistiche sulla trasmissione tra client e server durante connessione. 6) Per la gioia dei Sysop: a) Istruzioni per un upgrade indolore dalla 0.3.1: Per effettuare il passaggio, fare lo shutdown della bbs, loggarsi come utente che fa girare la bbs ed eseguire make ; make bininstall come al solito dalla directory con i nuovi sorgenti. Prima di rilanciare la BBS, vanno convertiti alcuni file/ Per questo, andare nella directory del server: cd citta/server ed eseguire la routine di conversione: ./bin/conv_0.3.2 questa chiede conferma, poi fa una copia dei dati vecchi. Se esce senza problemi, ha convertito tutto correttamente. Il file urnaconv contiene i log della conversione. Fatto questo, si puo' far ripartire la bbs: ./bin/cittaserver b) Nuova gestione del reboot: Il server, quando parte, genera un file ./lib/server/lock con il PID del proprio processo: se il lock file e' presente il server si rifiuta di partire (in caso di crash del sistema, il file di lock va eliminato manualmente prima di lanciare il server). La gestione del reboot quotidiano e dell'esecuzione degli script "backup" e "logrotate" viene configurata editando nel file server/src/config.h le variabili DAILY_REBOOT_HOUR REBOOT_INTERVAL BACKUP_MIN_INTERVAL LOGROT_MIN_INTERVAL Il reboot giornaliero avviene all'ora definita da DAILY_REBOOT_HOUR (di default le 4am) per non eseguirlo nell'orario di maggiore traffico. La nuova variabile REBOOT_INTERVAL fissa il numero di giorni che devono trascorrere tra un reboot e l'altro: se vale 1 il reboot e' quotidiano, 2 a giorni alterni, etc. Se vale 0 il server rimane sempre su e non fa il reboot (questo e` sconsigliato in quanto gli script di 'backup' e 'logrotate' vengono eseguiti solamente durante il reboot. Per quanto riguarda il backup, c'e' la nuova variabile di config BACKUP_MIN_INTERVAL che setta il numero minimo di ore che devono trascorrere tra due backup. Quindi, ad esempio, se REBOOT_INTERVAL e' 1 ma BACKUP_MIN_INTERVAL vale 48, fa il reboot quotidianamente ma il backup a giorni alterni. (conviene mettere 47 in realta', perche' c'e' una tolleranza di circa 15 minuti sul momento in cui avviene il reboot). Stessa cosa per il logrotate: con LOGROT_MIN_INTERVAL si fissa il numero minimo di ore che devono trascorrere tra due logrotate. Per forzare l'esecuzione degli script backup e logrotate al successivo reboot e/o shutdown, ci sono tre modi: 1) eseguire ./bin/cittaserver -f 2) oppure fare "touch ./lib/server/force_scripts" 3) <.>ysop hutdown orce script execution dal client c) Nuove opzioni di linea del Cittaserver: $ ./server/bin/cittaserver -b 'msg' invia un broadcast a tutti gli utenti, proveniente da "Cittadella BBS", con testo 'msg'. $ ./server/bin/cittaserver -f per forzare l'esecuzione degli script al prossimo reboot/shutdown. $ ./server/bin/cittaserver -h per vedere tutte le opzioni di linea disponibili. $ ./bin/cittaserver -M file invia per posta elettronica il file a tutti gli utenti validati. $ ./bin/cittaserver -m file invia per posta elettronica il file a tutti gli utenti validati che hanno scelto di ricevere la newsletter (opzione UT_NEWSLETTER settata). $ ./bin/cittaserver -s invia un segnale di "shutdown now" al server corrispondente al PID registrato in ./lib/server/lock (anche se ci sono piu' server cittadella su porte diverse, invia il segnale al server giusto). 7) Bug fixes: - Il quote con editor esterno funziona ora correttamente, andando correttamente a capo. (LePetit) - Appiccicato il ':' a 'Reply e 'Subject' (grazie LightKnight!) Sistemati i reply a post anonimi. - Ora il socket pop3 viene chiuso durante shutdown e il reboot funziona nuovamente. - Eliminati diversi buffer overflow/memory leaks grazie alle segnalazioni di Abel. - Sistemato il comando <.aeu> - Bugfix in POP3: "TOP num 0" viene accettato conformemente all'RFC1939. (Gabrillo) - bugfix in find_remote_host() (LePetit) - bugfix FILE_DOUBLE_EMAIL (Abel) Ecco tutto. Ricordo agli utilizzatori del client locale di scaricarsi l'ultima versione disponibile da http://www.cittadellabbs.it/ Vi auguriamo un buon anno 2004 su Cittadella BBS! :)