Package: hcs_utils
AboutThis is my personal collection of snippets that I use in multiple projects.
Each one feels a bit to small to merit it’s own library.So what does it include?memoize decorator (caching)a storage class wrapping a dict.unittest assert functions.Functions for handling large JSON documents.list_dir(path) -> (dirnames, filenames)PID file lockingA synchronization decoratorFeedback and getting involvedSend feedback and bug reports by email to hcs at furuvik dot net.Code Repository:http://gitorious.org/hcs_utilsNews2.0Release date: 2015-09-14Now only supports Python 3.4Improved thread safety for LockBugfix for file handling i daemonCode cleanup and some more tests1.5Release date: 2014-02-11Added support to path.watch_files_callback for controlled shutdownLock, improved exception handling for edge case.1.4Release date: 2013-11-19Fix for daemon, started even if it already was started.1.4rc5Release date: 2013-04-16Fix for daemon sigterm handler1.4rc4Release date: 2013-04-15Added logging to Daemon1.4rc3Release date: 2013-04-11fixed bug relating to daemon handle sigtermAdded option to to force recalc of cached value for memoized call1.4rc2Release date: 2013-03-21Added unicode support to eq_str1.4rc1Release date: 2012-11-16Compatible with python 2.7 and 3.3Fixed problem in Lock, timeouts where not used when other thread in same process had the lock.1.3Release date: 2012-11-10No changes since 1.3rc61.3rc6Release date: 2012–Storage: added storagify and unstoragify (to/from json style data structure)1.3rc5Release date: 2011-12-19lock: Improved exception messages (added locking pid).lock: Added some debug logging.1.3rc4Release date: 2011-09-13Storage: Added generic support for key normalization.1.3rc3Release date: 2011-09-06Storage: Added support for running case_insensitive.Storage: Added support for default_factory.1.3rc2Release date: 2011-08-25Storage: Minor fixesdaemon: A new module for creating a UNIX daemon.lock: Added the option to steal a lock.1.3rc1Release date: 2011-07-11PEP8 compliantBetter test coverageadded IDLock class to lock moduleMemoize optimizationpath.watch_file1.3a9Release date: 2011-05-31Memoize: bugfixes1.3a8Release date: 2011-05-17ItemStore: fixed bugs in rename and move1.3a7Release date: 2011-04-26Memoize: Added support for instance methods1.3a6Release date: 2011-04-11Added timeout to lockfile1.3a5Release date: 2011-04-06Added locking to itemstoreAdded a file change watcherSome bugfixesPEP8 cleanup1.3a4Release date: 2011-02-11Optimized Store.__contains__memoized functions can now be recursive1.3a31.3 will only support Python 2.6 and 2.7Testing using py.test instead of noseadded hcs_utils.path.walkfiles() recursive file generatorhcs_utils.itemstore Kind of on disk object/file/directory storesome smaller functionalitybunch of fixes1.2Release date: 2011-01-07No changes since 1.2rc51.2.rc5Release date: 2010-11-30unittest.eq_json, sorted output so that it can be used with dicts.unittest switched place on ndiff arguments1.2.rc4Release date: 2010-06-15Dropped support for Python 2.5Added hcs_utils.collections.ListBuilder, a nice way to manually build lists.Added hcs_utils.lock.Lock, Interprocess locking using a PID symlink.Added hcs_utils.path.scan_for_new_files()Added hcs_utils.path.tempdir context.Added hcs_utils.storage.Storage.__contains__ and __iter__Added hcs_utils.storage.json*  Storage vs. json helpersAdded hcs_utils.threading.synchronization decorator.Memoize is now thread safe.hcs_utils.path.list_dir now returns a namedtuple1.1Release date: 2010-04-22Fixed unpickeling of Storage objects.1.0Release date: 2010-04-18Initial release