GSoC application review - reimplementing personal metadata importers

Konrad Zemek konrad.zemek at gmail.com
Tue Apr 30 20:53:39 UTC 2013


Thank you for your tireless work! I outlined the changes below. I'm not 
posting the whole proposal this time since only two points were added in 
the text.

On 29.04.2013 23:12, Matěj Laitl wrote
> Some more things to iron out about StatSyncing::Amarok2Provider:
>   * would you support both a) connecting to a "live" database server and b)
> opening the database stored in a folder yourself using mysql-embedded
>   * Amarok database schema changes sometimes with versions, it would be nice if
> you could also sync against older versions (starting at least with let's say
> with Amarok 2.5) and perhaps also with future versions (unless the schema
> changes too much). You might do some fuzzy checks of the db schema before
> syncing to ensure you're working with what you expect.

Right. I added following points to "Implement Rhythmbox and Amarok 2.x 
importers" subsection:

  * Amarok 2.x importer should support importing data from both a full
    mysql server and mysql-embedded file. To ensure that metadata from
    current version of Amarok can always be synchronized,
    Collections::SqlCollection class will be used along with
    MySqlStorage and MySqlEmbeddedStorage classes.
  * As an optional goal, backwards compatibility for Amarok 2.x importer
    will be provided down to version 2.5. A version auto-detection based
    on database schema would be added for convenience, with user being
    able to specify the version explicitly.


I put backwards compatibility as an optional goal because it's 
significantly more work to both implement and maintain it than straight 
current-version provider. For current version, on the other hand, I can 
simply use Collections::SqlCollection for the provider, and it could 
even out-of-the-box work with StatSyncing::CollectionProvider.

>>        Junior job link
>>
>> [3] <#ref3>
> Also [4]?
>

Added.

>>        Images
>> [8] http://student.agh.edu.pl/~zemek/amarok/config_metadata_tab.png
> Nice, exactly as I imagined it. (nitpick: for better discoverability you might
> rename "Add..." to "Sync with Amarok 1.4/2.x/Rhythmbox...")

I left it as "Add" for now, as it gives out my intent quite nicely. 
There will be time later to come up with more fitting labels. One 
problem that I have with "Sync with [stuff]" or "Add [stuff] targets" it 
the length; I feel that labels should be both clear (which "Add" isn't, 
though) and concise.

> http://student.agh.edu.pl/~zemek/amarok/add_rhythmbox_synchronization_target_dialog.png
>
> Well, "Match Tracks by Metadata" would be the only way to match them, wouldn't
> it?

...it actually would. That didn't make much sense. I guess I was 
thinking too much about reflecting current capabilities (there's a 
"match by metadata" checkbox for Amarok 1.4 importer) in the new dialogs 
and got a bit ahead of myself. Changed that.

>
> 	Matěj
     Konrad
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/amarok-devel/attachments/20130430/e7c18a95/attachment.html>


More information about the Amarok-devel mailing list