commit 421cd152127022e5105e5e896d05ea4dd3bd0b25 (HEAD, tag: v1.2, origin/master, master)
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Fri Oct 7 23:53:32 2011 +0300

    use Mutex instead of Sync, drop the monkey patch

 lib/syncache/syncache.rb            |   26 ++++++++++---------
 lib/syncache/syncache_sync_patch.rb |   47 -----------------------------------
 2 files changed, 14 insertions(+), 59 deletions(-)

commit fa2035fc98f92e0beb0f8854dfa132b28348da46 (bejbus/master)
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Sun Nov 13 00:55:23 2011 +0300

    don't use Delegator classes for non-marshallable objects
    
    Delegator defines #marshal_dump and #marshal_load, that makes DRb think
    that this object can be marshalled, which doesn't really work for that
    DRbObject we put into @cache: after a trip through DRb it ends up being
    reset to nil. Solution: method_missing with no frills.

 lib/syncache/remote.rb |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

commit 50ca4a79dde80b71cb83ab1e7fdae578ef106767
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Sat Oct 8 00:37:30 2011 +0300

    ruby 1.9 drb deadlocks when stopped from within a signal handler

 bin/syncache-drb |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

commit 446fe51929149b0c7256eb1ac2560dd7cdd74b6c
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Sat Oct 8 00:14:41 2011 +0300

    make debug mode configurable in syncache-drb

 bin/syncache-drb         |   14 ++++++++++++--
 lib/syncache/syncache.rb |   18 ++++++++++++------
 man/syncache-drb.1       |    3 +++
 3 files changed, 27 insertions(+), 8 deletions(-)

commit a30f7f1c84838d53d79381587c78921b557e23cf
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Fri Oct 7 23:36:43 2011 +0300

    ruby 1.9 lambda checks the block arguments
    
    ...and Signal.trap documentation fails to mention that signal number is
    passed into the handler block as an argument.

 bin/syncache-drb |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

commit 31f70530a0521354b3b8f6335a5320623f82cbd2
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Tue Oct 4 19:49:26 2011 +0300

    call log wrapper properly to avoid crash on HUP

 bin/syncache-drb |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

commit 66338960c30931798710db3cf7ee27baae89f23c
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Tue Sep 27 23:40:23 2011 +0300

    untaint pidfile argument, too

 bin/syncache-drb |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

commit 9bd888a2dd5a7bee0507f83102dc96733e276dd8 (tag: v1.1)
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Tue Sep 27 01:14:49 2011 +0300

    fix require path to sync monkey patch

 lib/syncache/syncache.rb |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

commit 92e599345a5d6992917449b0aefa1f8f96732744
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Mon Sep 26 01:40:52 2011 +0300

    RemoteCache introduced to deal with limitations of unreliable clients

 README.rdoc              |   24 +++++++++++--
 bin/syncache-drb         |    2 +-
 lib/syncache.rb          |    1 +
 lib/syncache/remote.rb   |   86 ++++++++++++++++++++++++++++++++++++++++++++++
 lib/syncache/syncache.rb |    2 +-
 test/tc_remote.rb        |   86 ++++++++++++++++++++++++++++++++++++++++++++++
 test/tc_syncache.rb      |   63 +++++++++++++++++++++++++++++++++
 test/ts_syncache.rb      |   58 ++-----------------------------
 8 files changed, 262 insertions(+), 60 deletions(-)

commit 2e09c0f9a2851c907e04a41081d1e72f68a7932f
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Sun Sep 25 23:27:03 2011 +0300

    move syncache lib files into their own dir

 lib/syncache.rb                     |  267 +---------------------------------
 lib/syncache/syncache.rb            |  275 +++++++++++++++++++++++++++++++++++
 lib/syncache/syncache_sync_patch.rb |   47 ++++++
 lib/syncache_sync_patch.rb          |   47 ------
 4 files changed, 324 insertions(+), 312 deletions(-)

commit b0a9d503f2f984411871687d3c907811b1ddb5dc
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Sun Sep 25 23:09:57 2011 +0300

    use the same two-level locking routine for all cache access
    
    * the two-level locking routine is extracted from fetch_or_add into
      get_locked_entry and is reused in []= and []
    * [] no longer creates empty entries for cache misses
    * fetch_or_add now works properly when entry value == false
    * message is passed into debug() as a block instead of a parameter, so
      that message string composition only happens when debug mode is on

 lib/syncache.rb |   99 ++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 58 insertions(+), 41 deletions(-)

commit 0b5defa0c84abe1545138f168e237a7a341c44a4
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Fri Sep 16 22:15:58 2011 +0300

    old Monotone changelog

 ChangeLog.mtn |  183 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 183 insertions(+), 0 deletions(-)

commit 912b9c19605d17ed8a6facf66fd503e33bab1f4a
Author: Dmitry Borodaenko <angdraug@debian.org>
Date:   Fri Sep 16 22:01:57 2011 +0300

    apply sync.rb monkey patch on ruby above 1.9.0, too
    
    The same bug is still there in Ruby 1.9.2p290, and the monkey patch has
    to be more agressive to really stick.

 lib/syncache_sync_patch.rb |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)
