- Changed the signal key cleanup operation do be done without any expires. This prevents lingering keys around for some time. Contributed by Andrew Pashkin in #38.
- Allow locks with given id to acquire. Previously it assumed that if you specify the id then the lock was already acquired. See #44 and #39.
- Changed the auto renewal to automatically stop the renewal thread if lock gets garbage collected. Contributed by Andrew Pashkin in #33.
- Changed
releaseso that it expires signal-keys immediately. Contributed by Andrew Pashkin in #28. - Resetting locks (
resetorreset_all) will release the lock. If there's someone waiting on the reset lock now it will acquire it. Contributed by Andrew Pashkin in #29. - Added the
extendmethod onLockobjects. Contributed by Andrew Pashkin in #24. - Documentation improvements on
releasemethod. Contributed by Andrew Pashkin in #22. - Fixed
acquire(block=True)handling whenexpireoption was used (it wasn't blocking indefinitely). Contributed by Tero Vuotila in #35. - Changed
releaseto check if lock was acquired with he same id. If not,NotAcquiredwill be raised. Previously there was just a check if it was acquired with the same instance (self._held). BACKWARDS INCOMPATIBLE - Removed the
forceoption fromrelease- it wasn't really necessary and it only encourages sloppy programming. See #25. BACKWARDS INCOMPATIBLE - Dropped tests for Python 2.6. It may work but it is unsupported.
- Added the
timeoutoption. Contributed by Victor Torres in #20.
- Added the
auto_renewaloption. Contributed by Nick Groenen in #18.
- New specific exception classes:
AlreadyAcquiredandNotAcquired. - Slightly improved efficiency when non-waiting acquires are used.
- Rename
Lock.tokentoLock.id. Now only allowed to be set via constructor. Contributed by Jardel Weyrich in #11.
- Fix Django integration. (reported by Jardel Weyrich)
- Reorganize tests to use py.test.
- Add test for Django integration.
- Add
reset_allfunctionality. Contributed by Yokotoka in #7. - Add
Lock.resetfunctionality. - Expose the
Lock.tokenattribute.
- ?
- ?
- ?
- First release on PyPI.