GNOME Bugzilla – Bug 526741
Port gnome-vfs to gvfs
Last modified: 2008-04-17 16:48:26 UTC
Port gnome-vfs to gvfs.
Created attachment 108927 [details] [review] proposed eds patch for evolution-data-server; Here we go. One major change in camel-stream-vfs, I changed API, one function prototype and the parent of this stream. Problem with gio streams is that they are either input or output, but gnome-vfs supports both in one. Thus changing this stream. I checked and we have it used in evo only on 4 places, thus very simple fix. The other not-so-big change is in calendar's file backend, there was in private structure a uri property, but there was a path actually, thus harmonizing it.
Matt, can you review this? My load is bit high for another 1-2 weeks and I want it to get it asap.
- You need to bump LIBCAMEL_CURRENT to 12 in configure.in, since we're breaking backward compatibility with this change (in CamelStreamVFS). - As long as we're already breaking backward compatibility, we should also do the off_t to goffset replacement that Jeff suggested, so we only need one soname bump. Then we could enable largefile support by default. http://mail.gnome.org/archives/evolution-hackers/2008-April/msg00017.html - <glib/gurifuncs.h> does not need to be included explicitly. Otherwise it looks pretty straight-forward to me for an initial port. In the future we should take a closer look at what we can do to minimize the overlap between CamelStream and GInputStream/GOutputStream. I would imagine Philip van Hoof has some ideas on this.
I did want to do that in a separate bug, but I can together with this, that's fine. There is only one problem, the off_t is saved in a summary, and if we will change it now, then it will not work properly with already saved files. Is there any way how to force rebuild of summaries in camel directly? Something like migrating (not everything is stored on the server)? I didn't find anything useful, somehow. The only thing I found is the summary version, which we will increase. But the migrating... It's only for 32 bit machines, I know, but anyway. Or maybe just check in runtime what is the actual version and how to store it? I think it would be real mess.
Created attachment 109059 [details] [review] proposed eds patch ][ for evolution-data-server; Just added changes related to this bug as Matt suggested. I would really like to do the other change in separate bug, it will not be easy.
Okay, I didn't realize the goffset thing was going to be complicated. Approved.
Committed to trunk. Committed revision 8655.