Archivi tag: f-spot

Si, ho “Adobe Flash 9” installato!

World of flickr Da qualche giorno ho sostituito il mio router wireless a casa (ho in lavorazione un post a parte su questo aspetto :P). Dal momento della sostituzione dell’apparecchio, non riesco più a fare l’upload delle immagini su Flickr. Peccato che negli stessi giorni, scoprivo l’aggiornamento del loro uploader web, e nel tentativo di capire se il problema fosse legato ad F-Spot (che l’upload non lo faceva) a Flickr o al router, mi trovo con Firefox che si pianta tentanto di usarlo.

Così, sempre nel cercare di capire quale fosse la fonte dei miei guai e dopo aver scoperto che F-Spot invia effettivamente dei dati a Flickr, che però pare non vengano gestiti, scrivo al loro supporto tecnico, segnalando il malfunzionamento ed il fatto che l’uploader web va in crash con Firefox su Linux.
Mi viene risposto che l’uploader web necessita l’installazione di Adobe Flash 9 e l’attivazione di Javascript. Mi vengono inoltre forniti i link per verificare la versione installata e all’uploader web, oltre che alcuni suggerimenti sull’uso del browser e lo svuotamento della cache (per Netscape Navigator ed Internet Explorer).

Verifico (per scrupolo più che altro) la versione di flash e l’attivazione di Javascript, e rispondo dicendo che il browser si blocca nel momento in cui parte l’upload della foto, e chiedendo se ci sono stati cambiamenti nelle API (che quindi non consentono a F-Spot di effettuare correttamente l’upload).

Mentre attendo risposta da loro, scopro che in realtà l’uploader web non va in crash: lasciato “computare” per una decina di minuti, si riprende e mi fornisce una pagina d’errore, che senza altre indicazioni mi dice che l’upload è fallito.
La risposta che ricevo da Flickr alla mia mail, (che viene da una persona diversa da quella che mi aveva scritto la prima volta), mi dice che non ci sono stati cambiamenti nelle API “di cui siamo consapevoli” (eh?) e che lo strumento di upload web richiede Javascript e Flash Player 9 per funzionare, e mi fornisce i link all’uploader web e alla pagina per verificare la versione di flash installata.
Rispondo facendo presente lo strano comportamento dell’uploader web da poco scoperto, e dichiarando palesemente l’attivazione di JavaScript e di “Adobe Flash Player 9,0,115,0”.

Qualche ora dopo, scopro per i fatti miei che cercando di caricare le foto dalla sede di un altro cliente, l’upload va a buon fine senza alcun problema, e che per di più anche da casa mia l’upload di foto di piccole dimensioni funziona senza intoppi.
Ma ecco arrivare la nuova risposta del supporto tecnico di Flickr (terza mail, terzo interlocutore), che mi fà presente che per vedere le foto caricate, devo caricarne almeno 5 (…) e che poi potrebbero essere necessari alcuni giorni prima di visualizzare le mie foto nelle ricerche (…). Mi viene poi suggerito di usare “tag accurati” per le mie foto in modo da semplificare le ricerche, e che “essendo un nuovo utente di flickr” mi viene chiesto di moderare adeguatamente il contenuto delle mie foto “classificandolo nelle categorie appropriate (sicuro, moderato o limitato)”.
Sperando in uno scambio di email, replico ancora una volta alla mail, dicendo che il problema non riguarda le ricerche, ma l’upload e che avendo scoperto che il problema è in qualche modo riconducibile al mio router, vorrei sapere se ci sono delle indicazioni da tenere a mente nella configurazione dello stesso affinchè funzioni correttamente l’upload (anche se ho in mente come funzionerebbe un meccanismo simile realizzato da me, e quindi senza speranza di ottenere ulteriori indicazioni in questo senso).

Mentre faccio prove scalando le foto a dimensioni diverse per vedere a che dimensione smette di fare l’upload, ricevo l’ennesima replica da Flickr, che mi ricorda che per usare l’uploader web devo aver attivato Javascript ed installato Adobe Flash Player 9, e mi fornisce i link alla pagina per controllare la versione di flash installata e a quella dell’uploader web.

Faccio da me, ho capito.

Annunci

Giocando con F-Spot, DBus and Gnome-Screensaver

Lavoro duro su F-Spot. Non il solito, banale, “noioso” lavoro si bug-fixing, che in comunque nasconde non poche difficoltà per coloro che, come me, non conoscono a fondo ne il C# ne il codice di F-Spot.

Il gran lavoro di questi giorni è legato al tentativo di fix del bug #427478, che può apparire estremamente semplice a prima vista, ma nasconde una serie di insidie da non sottovalutare.
Scovare il punto del codice di F-Spot dove andare a mettere le mani e lanciare messaggi di “inibizione” e “deinibizione”, è stato piuttosto semplice. Il codice è ben scritto, e con un po’ di ricerche si trova tutto.
Il problema si è posto nel tentativo di comprendere come si potesse parlare con DBus, da Mono. L’unica implementazione di cui ho notizia, è DBus-sharp a cui si fa riferimento anche come “managed D-Bus” in quanto si tratta di una completa riscrittura della libreria, che mal si adattava all’interazione con Mono.

Innanzi tutto sembra che non esistano esempi comprensibili a disposizione. Pullula di casi di test, ma un pezzo di codice d’esempio che faccia la classica cosa stupidissima, non c’è verso di trovarlo. Ci ho bestemmiato dietro per 2 giorni, finché il buon Stephane Delcroix non se n’è uscito con questo sample:

using NDesk.DBus;
using System;

public class ScreenSaver {

        [Interface ("org.gnome.ScreenSaver")]
        public interface IScreenSaver {
                uint Inhibit (string appname, string reason);
                void Lock ();
        }

        public static void Main () {
                IScreenSaver screensaver = Bus.Session.GetObject<IScreenSaver>("org.gnome.ScreenSaver", new ObjectPath ("/org/gnome/ScreenSaver"));
                screensaver.Lock ();
        }
}

da compilare tramite il comando gmcs ScreenSaver.cs -r:NDesk.DBus.dll per ottenere uno stupidissimo programmino che richiede, tramite DBus, l’attivazione dello screensaver di Gnome. Era davvero cosi difficile da ottenere? :/

Una volta capito il meccanismo, inviare la chiamata di inhibit e dehinibit allo screensaver è stato piuttosto semplice, con l’unica difficoltà di dover suddividere il codice in due files, e doverli quindi mettere insieme, inserendo in entrambi tutte le condizioni a contorno per il relativo funzionamento.

Al lavoro su f-spot

Dopo aver giocato a fare lo sviluppatore patchando f-spot, l’altro giorno, mi sono reso conto che ci sta lavorando praticamente il solo Stephane Delcroix. Cosi ho deciso di dargli una mano, cominciando con il fixare qualche bug che le mie competenze sul codice in questione (zero) mi consentono di fare.

code

Nel frattempo ho scoperto che la mia patch relativa a Flickr, è servita a Lor enzo Milesi a sistemare un bug analogo anche per PicasaWeb. Ottimo 🙂

F-Spot, flickr e patch

F-Spot mi piace molto. Funziona bene, mi consente di gestire le foto, di importarle dalla scheda SD o dalla macchina fotografica, di esportarle su Flickr, di taggarle, riordinarle, modificarle… insomma, un bel prodotto, ben fatto.
Peccato che abbia, da tempo immemore ormai, un bug: inverte l’ordine delle foto durante l’upload su Flickr. In realtà lo fà solo se è non è impostato il “Reverse Order” del menu. Il workaround sarebbe semplice, quindi: si abilita il “Reverse Order”, si fà l’upload, e si ripristina l’ordine precedente.

Ma perchè rassegnarsi ad un malfunzionamento? Cosi questa mattina mi sono pescato il codice dell’SVN di sviluppo su Gnome, trovato il punto incriminato, modificato, testato, scritto la patch e l’ho attaccata al bug in questione. Già che c’ero, ho anche segnalato la cosa al team di ArchLinux, in modo che (magari) patchino il pacchetto della distro, in attesa di una nuova release di F-Spot che (spero) integri la patch e corregga il problema.

Il fatto positivo? Avviare la versione SVN di F-Spot modifica la struttura del database delle foto, che è cosi incompatibile con la versione “normale” (0.4.0). Mi sono dovuto pacchettizzare la SVN e lavorare con quella. Pazienz…

Edit: poche ore dopo, la patch viene accettata, integrata, il bug fixato. Ottimo.

Index: f-spot/ChangeLog
===================================================================
— f-spot/ChangeLog (revision 3355)
+++ f-spot/ChangeLog (revision 3356)
@@ -1,5 +1,10 @@
2007-09-10 Stephane Delcroix <stephane@delcroix.org>

+ * src/FlickrExport.cs: ensure correct upload order. Patch from Giacomo
+ Rizzo. Fixes bgo #345864.
+
+2007-09-10 Stephane Delcroix <stephane@delcroix.org>
+
* src/PhotoStore.cs: Creates versions with the same extension as the
default version, not original.