Re: GNOME ABI review



On Thu, 2003-08-07 at 06:34, Havoc Pennington wrote: 
> 8. VFS
> 
>  gnome-vfs has a sprawling API with UNIX-looking semantics. However, 
>  the backends don't conform to UNIX semantics (or really any semantics
>  at all). Moreover, we make up URI schemes, and otherwise suck.

Not to mention that most backends are buggy and unsupported (in the
'have no developers' sense).

>  The big ugly problem is that different apps (OpenOffice, etc.) 
>  see different sets of usable URIs - this simply _must_ be solved
>  in some way.
> 
>  A better gnome-vfs might have a very minimal required interface for
>  each backend, such as just listing files and getting their contents
>  in a single large block. Then additional interfaces discovered via a
>  queryInterface()-style approach would add features such as file
>  modification, streaming read/write, getting file permissions, file
>  copy, or whatever.
>  
>  Then the ABI is extensible and we can know when a backend is breaking 
>  the spec and when it isn't.

It would be nice to also make the gnome-vfs interface smaller and more
focused. For instance, while the "get mimetype for file" interface makes
sense for gnome-vfs the mimetype->application interface could as well be
somewhere else.

> 10. Nautilus views/extensions
> 
>  Are we happy with these interfaces? I'm not that familiar with them.

This is a hard problem. No, we're not happy that its hard to extend the
directory views in some ways, however we're pretty happy that we can fix
bugs, improve performance and add features without being bound to public
APIs that essentially make the app part of the supported platform.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
                   alexl redhat com    alla lysator liu se 
He's a Nobel prize-winning flyboy cowboy for the 21st century. She's a foxy 
cat-loving Hell's Angel from beyond the grave. They fight crime! 




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]