Re: [Zim-wiki] Multi user?

2012-03-20 Thread Jaap Karssenberg
After reviewing this proposal again I'm still worried about direct
multi-user usage. Locking single files seems doable, but I see
problems e.g. when you move a file and want to update links in X other
files. Would you need to lock all these files before proceeding ? If
so, lot of code needs to be touched.

Easier option is a single lock per notebook, but that essentially
enforces a single editor at a time, so not multi-user at all.

-- Jaap

On Thu, Mar 1, 2012 at 8:36 PM, Jaap Karssenberg
jaap.karssenb...@gmail.com wrote:
 On Thu, Mar 1, 2012 at 8:18 PM, João Santos j...@jsantos.eu wrote:

 Apparently renaming a directory is atomic on windows if you can guaranty
 that the destination name doesn't exist, so I think we can use that to
 ensure that the lock is removed atomically, if we use the an uuid based name
 as the destination name, and removing it after that.


 Agreed, so to summarize:

 When creating a lock, we need to create the directory first under another
 name, and then rename it to the lock directory. If someone tries to do the
 same at the same time, one of both should fail because the lock already
 exists.

 For remove we need to do the opposite, move it to another name, than delete
 it.

 Creating a folder, than the file, or first deleting the file, than the
 folder, could leave an empty folder if we crash in between the two actions.

 Becomes quite involved, so think we need to hide this from the user,
 probably I will put the locks in a .locks folder in the notebook folder to
 keep them out of sight.

 Maybe when zim initializes, we should do a cleanup of empty folders than are
 older than X minutes (so crashes get cleaned up).

 Also I would say re-touch the lockfile every few minutes, so if we want to
 acquire a lock, and the file is older than X hours, we just break it without
 bothering the user.

 Regards,

 Jaap


___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-03-01 Thread João Santos
The problem with unison is that it is no longer actively developed. And
beside that an automatic syncing method would probably be better for the
average user.

Com os melhores cumprimentos,
João Miguel Cardoso Santos



2012/3/1 hans...@gmail.com

 I am of the opinion that just like version control, Zim is best served by
 hooking into third-party best of breed tools for specialized functions like
 this. DokuWiki for example tries to do this, but I would turn it off if I
 could, as I keep my DW source files in VCS. If the bzr hook functionality
 were extended to work with other DVCS, and simply allowed the user to point
 to his preferred diff/merge tools, I think that would be better than trying
 to code this functionality into the program itself.

 I have used Unison for over a dozen years to allow for n-way sync'ing of
 folder trees, from small branches to whole filesystems.

 It is cross-platform open-source, virtually bulletproof, rides on SSH for
 security, allows for hub-and-spoke or mesh topologies, and regards to the
 specific topic here, allows the user to specify what diff/merge tools s/he
 wants to use to resolve conflicts.

 Regarding such tools, my choice in mswin is Winmerge, better than anything
 I've worked with on other platforms. Highly recommended for those looking
 to share between users or just for users sharing between multiple computers
 and/or drives if they don't need the version control aspect, just the
 sync'ing and don't trust third-party-controlled cloud services.

 The Unison documentation is quite extensive and points to the options
 needed to account for the 
 differenceshttp://www.cis.upenn.edu/%7Ebcpierce/unison/download/releases/stable/unison-manual.html#mergebetween
  how diff/merge tools handle their temp files. IMO those sponsoring
 the bounty should discuss such an approach.


 ___
 Mailing list: https://launchpad.net/~zim-wiki
 Post to : zim-wiki@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~zim-wiki
 More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-03-01 Thread Svenn Bjerkem
On Thu, 2012-03-01 at 08:02 +, João Santos wrote:
 The problem with unison is that it is no longer actively developed.
 And beside that an automatic syncing method would probably be better
 for the average user.

Well, git is also not automatically updating, but SparkleShare
developers put infrastructure around it to make it a Dropbox clone for
private networks. There are voices on the SparkleShare channels that
raise the unison issue from time to time. I personally like unison
better than git, as a git repository collect overhead on commits. This
overhead gets really big as time moves on. If the SparkleShare box
contains binary data which happens to be updated from time to time,
there is going to be a huge overhead. Nice thing is that there is always
previous versions available, so no need to use the vcs plugin in zim, at
least for me.

It is not necessarily negative that a package is not developed anymore
as long as it is packagable on newer distributions. Stable and function
complete software is the best there is. No surprises. (Unless there are
bugs, of course.)

Automatic sync is a necessity, Dropbox made that pretty clear. I moved
most of my non-sensitive things to Dropbox from unison and life became
quite different. No forgotten updates anymore.

-- 
Svenn


___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-03-01 Thread João Santos
Either way, ideally,  zim should support simultaneous access to the files,
for example in a NFS or SMB shared filesystem.



2012/3/1 Svenn Bjerkem svenn.bjer...@googlemail.com

 On Thu, 2012-03-01 at 08:02 +, João Santos wrote:
  The problem with unison is that it is no longer actively developed.
  And beside that an automatic syncing method would probably be better
  for the average user.

 Well, git is also not automatically updating, but SparkleShare
 developers put infrastructure around it to make it a Dropbox clone for
 private networks. There are voices on the SparkleShare channels that
 raise the unison issue from time to time. I personally like unison
 better than git, as a git repository collect overhead on commits. This
 overhead gets really big as time moves on. If the SparkleShare box
 contains binary data which happens to be updated from time to time,
 there is going to be a huge overhead. Nice thing is that there is always
 previous versions available, so no need to use the vcs plugin in zim, at
 least for me.

 It is not necessarily negative that a package is not developed anymore
 as long as it is packagable on newer distributions. Stable and function
 complete software is the best there is. No surprises. (Unless there are
 bugs, of course.)

 Automatic sync is a necessity, Dropbox made that pretty clear. I moved
 most of my non-sensitive things to Dropbox from unison and life became
 quite different. No forgotten updates anymore.

 --
 Svenn


 ___
 Mailing list: https://launchpad.net/~zim-wiki
 Post to : zim-wiki@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~zim-wiki
 More help   : https://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-03-01 Thread Svenn Bjerkem
On Thu, 2012-03-01 at 09:17 +, João Santos wrote:
 Either way, ideally,  zim should support simultaneous access to the
 files, for example in a NFS or SMB shared filesystem.

Yupp, that what it all boils down to.

-- 
Svenn


___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-03-01 Thread João Santos
I think the easiest way to implement this is by doing the following:

1 - User A opens a page. A lock file with a unique ID is created;
2 - User B tries to open the same page, it opens read only with a message
saying that file is being edited and giving the user the option to override
(this allows not only for the user to override another user, but also to
solve the problem of zim crashing without removing the lock file).
3 - If User B overrides the write block the lock file content is replaced
with his unique ID, and user A is presented with a message saying that
editing was blocked by another user, and also giving the option to override.
4 - When the user that leaves the page the lock file is deleted, one of the
read-only users (if any) creates a lock file, in a way similar to CSMA/CD
(basically a race to create a new lock file).


2012/3/1 Svenn Bjerkem svenn.bjer...@googlemail.com

 On Thu, 2012-03-01 at 09:17 +, João Santos wrote:
  Either way, ideally,  zim should support simultaneous access to the
  files, for example in a NFS or SMB shared filesystem.

 Yupp, that what it all boils down to.

 --
 Svenn


 ___
 Mailing list: https://launchpad.net/~zim-wiki
 Post to : zim-wiki@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~zim-wiki
 More help   : https://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-03-01 Thread Jaap Karssenberg
On Thu, Mar 1, 2012 at 10:35 AM, João Santos j...@jsantos.eu wrote:

 I think the easiest way to implement this is by doing the following:

 1 - User A opens a page. A lock file with a unique ID is created;
 2 - User B tries to open the same page, it opens read only with a message
 saying that file is being edited and giving the user the option to override
 (this allows not only for the user to override another user, but also to
 solve the problem of zim crashing without removing the lock file).
 3 - If User B overrides the write block the lock file content is replaced
 with his unique ID, and user A is presented with a message saying that
 editing was blocked by another user, and also giving the option to override.
 4 - When the user that leaves the page the lock file is deleted, one of
 the read-only users (if any) creates a lock file, in a way similar to
 CSMA/CD (basically a race to create a new lock file).


Looks like we have a volunteer to work on this ;)

Complexity comes in having a atomic lock system. Especially windows does
not have the atomic rename, so there is no way to ensure you got the
lock. Will need a bit of code for fallback scenarios. See the code in fs.py
to deal with atomic write on windows.

Another thing to consider is how to deal with lock files that are left
behind if a process crashes etc. -- have them time out after a certain
interval ? (Requiring live applications to refresh the locks every once in
a while -- say each auto-save ?)

Even with all that in place, it only solves the use case for a small number
of users (ay 2 or 3). It will not scale well to larger groups. But that is
not the intention in any case. For supporting larger groups we really need
to go with version control + a conflict resolve mechanism.

-- Jaap
___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-03-01 Thread João Santos
Wouldn't this module: http://packages.python.org/lockfile/lockfile.html do
the job?
As for stale lock files the easiest way to solve it is to allow the user to
override them, but having a timeout value would not be a bad idea.

2012/3/1 Jaap Karssenberg jaap.karssenb...@gmail.com

 On Thu, Mar 1, 2012 at 10:35 AM, João Santos j...@jsantos.eu wrote:

 I think the easiest way to implement this is by doing the following:

 1 - User A opens a page. A lock file with a unique ID is created;
 2 - User B tries to open the same page, it opens read only with a message
 saying that file is being edited and giving the user the option to override
 (this allows not only for the user to override another user, but also to
 solve the problem of zim crashing without removing the lock file).
 3 - If User B overrides the write block the lock file content is replaced
 with his unique ID, and user A is presented with a message saying that
 editing was blocked by another user, and also giving the option to override.
 4 - When the user that leaves the page the lock file is deleted, one of
 the read-only users (if any) creates a lock file, in a way similar to
 CSMA/CD (basically a race to create a new lock file).


 Looks like we have a volunteer to work on this ;)

 Complexity comes in having a atomic lock system. Especially windows does
 not have the atomic rename, so there is no way to ensure you got the
 lock. Will need a bit of code for fallback scenarios. See the code in fs.py
 to deal with atomic write on windows.

 Another thing to consider is how to deal with lock files that are left
 behind if a process crashes etc. -- have them time out after a certain
 interval ? (Requiring live applications to refresh the locks every once in
 a while -- say each auto-save ?)

 Even with all that in place, it only solves the use case for a small
 number of users (ay 2 or 3). It will not scale well to larger groups. But
 that is not the intention in any case. For supporting larger groups we
 really need to go with version control + a conflict resolve mechanism.

 -- Jaap



___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-03-01 Thread Jaap Karssenberg
On Thu, Mar 1, 2012 at 11:01 AM, João Santos j...@jsantos.eu wrote:

 Wouldn't this module: http://packages.python.org/lockfile/lockfile.htmldo the 
 job?


Afraid not. This module will do locking between multiple processes on the
same system, but it is not suitable for .e.g. multiple systems accessing
the same share drive.

I think the most important use case for this multi-user sharing is each
user having his or her own computer, but sharing a share drive.

So locking needs to be platform independent, and can only use the (shared)
file system.

Regards,

Jaap
___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-03-01 Thread João Santos
I've made a simple lock mechanism. I believe this lock mechanism should
work both on Windows and Linux (I've only tested on Linux and only on a
local filesystem). I'll test it in windows and shared filesystems later.


2012/3/1 Jaap Karssenberg jaap.karssenb...@gmail.com

 On Thu, Mar 1, 2012 at 11:01 AM, João Santos j...@jsantos.eu wrote:

 Wouldn't this module: http://packages.python.org/lockfile/lockfile.htmldo 
 the job?


 Afraid not. This module will do locking between multiple processes on the
 same system, but it is not suitable for .e.g. multiple systems accessing
 the same share drive.

 I think the most important use case for this multi-user sharing is each
 user having his or her own computer, but sharing a share drive.

 So locking needs to be platform independent, and can only use the (shared)
 file system.

 Regards,

 Jaap


import os
import uuid
import shutil


class LockFailedError(Exception):
pass


class NotMyLockError(Exception):
pass


class CrossLock(object):

def __init__(self, name):
Represents a lockfile with a name
self.lock = .{0}.lock.format(name)
#We will have a unique id to assure that the lock
#belongs to the instance
self.id = uuid.uuid1()
self.filename = {0}/{1}.format(self.lock, self.id)

def _create_lockfile(self):
Creates the lock dir and file
#mkdir is atomic on windows and linux
#and will fail if dir already exists
os.mkdir(self.lock)
os.mknod(self.filename)

def acquire(self):
Tries to acquire lock.
try:
self._create_lockfile()
except:
raise LockFailedError

def break_lock(self):
Removes the lock directory
shutil.rmtree(self.lock)

def is_locked(self):
Tests if the file is locked
return os.access(self.lock, os.F_OK)

def is_my_lock(self):
Tests if the lock belongs to the instance
return os.access(self.filename, os.F_OK)

def release(self):
Removes the lock but only if owned by the instance
if not self.is_my_lock():
raise NotMyLockError
else:
self.break_lock()

if __name__ == '__main__':
lock = CrossLock(teste)
lock2 = CrossLock(teste)

print Trying to get get lock
try:
lock.acquire()
print Correct (Succeeded)
except:
print Incorrect (Failed)

print Trying to get a lock again
try:
lock.acquire()
print Incorrect (Succeeded)
except:
print Correct (Failed)

print Trying to release the lock with the wrong instance
try:
lock2.release()
print Incorrect (Succeeded)
except:
print Correct (Failed)

print Tryng to release the lock with the correct instance
try:
lock.release()
print Correct (Succeeded)
except:
print Incorrect (Failed)
raise

print Testing if it's locked
if lock.is_locked():
print Incorrect (True)
else:
print Correct (False)

print Trying to get get lock again
try:
lock.acquire()
print Correct (Succeeded)
except:
print Incorrect (Failed)

print Testing if it's locked
if lock.is_locked():
print Correct (True)
else:
print Incorrect (False)

print Trying to break the lock
try:
lock2.break_lock()
print Correct (Succeeded)
except:
print Incorrect (Failed)
___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-02-29 Thread Jaap Karssenberg
On Wed, Feb 29, 2012 at 5:32 PM, Ulf Bro ulf@web.de wrote:

 Is it possible to leave all files on a server, for example on a samba
 server in Linux, and have more people working with it at the same time?
 One person can read what another has written just like in Wikipedia?

 Those who have a Windows client have their Zim running there and those
 who have a Linux client use the Linux Zim.

 Or is that not possible?


Yes and no. Yes you can do it. Make sure to set the shared notebook
toggle in the properties, so each user uses their own cache folder.

No it won't work well. Zim does not lock files etc. so you will get
constant conflicts when users edit the same page at the same time.

Also you might get performance issues - never tested for this use case.

Current recommendation for multi-user access is to sync with version
control, e.g. Bazaar. This is also available for all platforms, let's each
user change their local copy and then merge  push their changes. This way
you also can deal with tracking who changed what etc.

To make it really user friendly you might need to configure a custom tool
with a script that does the syncing.

Regards,

Jaap
___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-02-29 Thread Greg Warner
Or maybe something like a shared dropbox folder would work.  I'm not sure
how it does conflict resolution, but it's probably better than nothing and
might be more user friendly than a VCS.

On Wed, Feb 29, 2012 at 9:55 AM, Jaap Karssenberg 
jaap.karssenb...@gmail.com wrote:

 On Wed, Feb 29, 2012 at 5:32 PM, Ulf Bro ulf@web.de wrote:

 Is it possible to leave all files on a server, for example on a samba
 server in Linux, and have more people working with it at the same time?
 One person can read what another has written just like in Wikipedia?

 Those who have a Windows client have their Zim running there and those
 who have a Linux client use the Linux Zim.

 Or is that not possible?


 Yes and no. Yes you can do it. Make sure to set the shared notebook
 toggle in the properties, so each user uses their own cache folder.

 No it won't work well. Zim does not lock files etc. so you will get
 constant conflicts when users edit the same page at the same time.

 Also you might get performance issues - never tested for this use case.

 Current recommendation for multi-user access is to sync with version
 control, e.g. Bazaar. This is also available for all platforms, let's each
 user change their local copy and then merge  push their changes. This way
 you also can deal with tracking who changed what etc.

 To make it really user friendly you might need to configure a custom tool
 with a script that does the syncing.

 Regards,

 Jaap


 ___
 Mailing list: https://launchpad.net/~zim-wiki
 Post to : zim-wiki@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~zim-wiki
 More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-02-29 Thread Damien Accorsi
I believe the use of DVCS is the best way to use zim as a long-term 
wiki. Maybe we should define how it would work; I'm interested in 
upgrading the DVCS plugin in this direction.


Damien

On 02/29/2012 05:57 PM, Greg Warner wrote:

Or maybe something like a shared dropbox folder would work.  I'm not
sure how it does conflict resolution, but it's probably better than
nothing and might be more user friendly than a VCS.

On Wed, Feb 29, 2012 at 9:55 AM, Jaap Karssenberg
jaap.karssenb...@gmail.com mailto:jaap.karssenb...@gmail.com wrote:

On Wed, Feb 29, 2012 at 5:32 PM, Ulf Bro ulf@web.de
mailto:ulf@web.de wrote:

Is it possible to leave all files on a server, for example on a
samba
server in Linux, and have more people working with it at the
same time?
One person can read what another has written just like in Wikipedia?

Those who have a Windows client have their Zim running there and
those
who have a Linux client use the Linux Zim.

Or is that not possible?


Yes and no. Yes you can do it. Make sure to set the shared
notebook toggle in the properties, so each user uses their own
cache folder.

No it won't work well. Zim does not lock files etc. so you will get
constant conflicts when users edit the same page at the same time.

Also you might get performance issues - never tested for this use case.

Current recommendation for multi-user access is to sync with version
control, e.g. Bazaar. This is also available for all platforms,
let's each user change their local copy and then merge  push their
changes. This way you also can deal with tracking who changed what etc.

To make it really user friendly you might need to configure a custom
tool with a script that does the syncing.

Regards,

Jaap


___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
mailto:zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp




___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp



___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-02-29 Thread Frank Van Geirt

Hi,

Together with a friend I'm sharing a Zim notebook for a private project. 
We share the notebook via Dropbox. We did toggle the shared notebook 
setting.


It is working, but we have to be careful. We are aware about the pitfall 
that we can not change the same page at the same time.
However, we use the Dropbox RSS feed in order to know changes about 
files in the Dropbox folder. That way we have some view on our mutual 
actions.


A real multi-user environment would fit us too. We could use Google 
docs, but we like the specific features of Zim. We are both using Zim 
for a personal notebook too. I'm using Zim extensively for my project 
management. Don't like Google docs for that. The todo tags, separate 
moveable subpages and task list is a main tool for me. That's why I 
still want to use Zim for that private project, despite the lack of 
multi-user features.


Regards,
Frank

On 02/29/2012 05:57 PM, Greg Warner wrote:
Or maybe something like a shared dropbox folder would work.  I'm not 
sure how it does conflict resolution, but it's probably better than 
nothing and might be more user friendly than a VCS.


On Wed, Feb 29, 2012 at 9:55 AM, Jaap Karssenberg 
jaap.karssenb...@gmail.com mailto:jaap.karssenb...@gmail.com wrote:


On Wed, Feb 29, 2012 at 5:32 PM, Ulf Bro ulf@web.de
mailto:ulf@web.de wrote:

Is it possible to leave all files on a server, for example on
a samba
server in Linux, and have more people working with it at the
same time?
One person can read what another has written just like in
Wikipedia?

Those who have a Windows client have their Zim running there
and those
who have a Linux client use the Linux Zim.

Or is that not possible?


Yes and no. Yes you can do it. Make sure to set the shared
notebook toggle in the properties, so each user uses their own
cache folder.

No it won't work well. Zim does not lock files etc. so you will
get constant conflicts when users edit the same page at the same time.

Also you might get performance issues - never tested for this use
case.

Current recommendation for multi-user access is to sync with
version control, e.g. Bazaar. This is also available for all
platforms, let's each user change their local copy and then merge
 push their changes. This way you also can deal with tracking who
changed what etc.

To make it really user friendly you might need to configure a
custom tool with a script that does the syncing.

Regards,

Jaap


___
Mailing list: https://launchpad.net/~zim-wiki
https://launchpad.net/%7Ezim-wiki
Post to : zim-wiki@lists.launchpad.net
mailto:zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
https://launchpad.net/%7Ezim-wiki
More help   : https://help.launchpad.net/ListHelp




___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp



--
***
*   Frank Van Geirt   *
* fvange...@gmail.com *
***

___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-02-29 Thread Jaap Karssenberg
Btw. just so you guys are aware, there is a 100,- euro bounty open on
resolving conflicts. This draft is targetting a generic mechanism to show
and resolve conflicts in zim - regardless of the backend (dropbox, bazaar,
...). So far nobody has notified me that they are working on this, so open
for the taking ;)

-- Jaap
___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-02-29 Thread Frank Van Geirt
Alright, I'm gonna strike when the iron is hot. Both my Python knowledge 
and my time is limited to do this myself, but I definitely want this 
feature. As a project manager and an open source believer, I see many 
opportunities for Zim to become a main tool for small project teams.


So, I want to raise the bounty with another 100,- euro. Jaap, do you 
want me to send the money on beforehand to you or do you contact me 
after the implementation?


Regards,
Frank

On 02/29/2012 06:24 PM, Jaap Karssenberg wrote:
Btw. just so you guys are aware, there is a 100,- euro bounty open on 
resolving conflicts. This draft is targetting a generic mechanism to 
show and resolve conflicts in zim - regardless of the backend 
(dropbox, bazaar, ...). So far nobody has notified me that they are 
working on this, so open for the taking ;)


-- Jaap


___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp



___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-02-29 Thread Svenn Are Bjerkem
SparkleShare is nice with zim. I notice that due to the frequent
saving in zim, there is a rush of updates being pushed to the git
server. The problem is, as Jaap notes, that if a page changes behind
the scene while somebody is editing a page, there will be a conflict.

-- 
Svenn

___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Multi user?

2012-02-29 Thread hansbkk
I am of the opinion that just like version control, Zim is best served by
hooking into third-party best of breed tools for specialized functions like
this. DokuWiki for example tries to do this, but I would turn it off if I
could, as I keep my DW source files in VCS. If the bzr hook functionality
were extended to work with other DVCS, and simply allowed the user to point
to his preferred diff/merge tools, I think that would be better than trying
to code this functionality into the program itself.

I have used Unison for over a dozen years to allow for n-way sync'ing of
folder trees, from small branches to whole filesystems.

It is cross-platform open-source, virtually bulletproof, rides on SSH for
security, allows for hub-and-spoke or mesh topologies, and regards to the
specific topic here, allows the user to specify what diff/merge tools s/he
wants to use to resolve conflicts.

Regarding such tools, my choice in mswin is Winmerge, better than anything
I've worked with on other platforms. Highly recommended for those looking
to share between users or just for users sharing between multiple computers
and/or drives if they don't need the version control aspect, just the
sync'ing and don't trust third-party-controlled cloud services.

The Unison documentation is quite extensive and points to the options
needed to account for the
differenceshttp://www.cis.upenn.edu/%7Ebcpierce/unison/download/releases/stable/unison-manual.html#mergebetween
how diff/merge tools handle their temp files. IMO those sponsoring
the bounty should discuss such an approach.
___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp