After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 526741 - Port gnome-vfs to gvfs
Port gnome-vfs to gvfs
Product: evolution-data-server
Classification: Platform
Component: general
Other Linux
: Normal normal
: ---
Assigned To: Evolution Shell Maintainers Team
Evolution QA team
Depends on:
Blocks: 526739
Reported: 2008-04-07 15:52 UTC by Milan Crha
Modified: 2008-04-17 16:48 UTC
See Also:
GNOME target: ---
GNOME version: ---

proposed eds patch (31.71 KB, patch)
2008-04-09 14:21 UTC, Milan Crha
reviewed Details | Review
proposed eds patch ][ (31.86 KB, patch)
2008-04-11 14:28 UTC, Milan Crha
committed Details | Review

Description Milan Crha 2008-04-07 15:52:16 UTC
Port gnome-vfs to gvfs.
Comment 1 Milan Crha 2008-04-09 14:21:50 UTC
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.
Comment 2 Srinivasa Ragavan 2008-04-11 08:15:33 UTC
Matt, can you review this? My load is bit high for another 1-2 weeks and I want it to get it asap.
Comment 3 Matthew Barnes 2008-04-11 12:49:39 UTC
- You need to bump LIBCAMEL_CURRENT to 12 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.

- <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.
Comment 4 Milan Crha 2008-04-11 13:58:17 UTC
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.
Comment 5 Milan Crha 2008-04-11 14:28:01 UTC
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.
Comment 6 Matthew Barnes 2008-04-11 16:24:04 UTC
Okay, I didn't realize the goffset thing was going to be complicated.  Approved.
Comment 7 Milan Crha 2008-04-17 16:48:26 UTC
Committed to trunk. Committed revision 8655.