Skip to main content

My personal library collecting some useful snippets.

Project description

About

This 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 locking

  • A synchronization decorator

Feedback and getting involved

Send feedback and bug reports by email to hcs at furuvik dot net.

News

1.4rc2

Release date: 2013-03-21

  • Added unicode support to eq_str

1.4rc1

Release date: 2012-11-16

  • Compatible with python 2.7 and 3.3

  • Fixed problem in Lock, timeouts where not used when other thread in same process had the lock.

1.3

Release date: 2012-11-10

No changes since 1.3rc6

1.3rc6

Release date: 2012–

  • Storage: added storagify and unstoragify (to/from json style data structure)

1.3rc5

Release date: 2011-12-19

  • lock: Improved exception messages (added locking pid).

  • lock: Added some debug logging.

1.3rc4

Release date: 2011-09-13

  • Storage: Added generic support for key normalization.

1.3rc3

Release date: 2011-09-06

  • Storage: Added support for running case_insensitive.

  • Storage: Added support for default_factory.

1.3rc2

Release date: 2011-08-25

  • Storage: Minor fixes

  • daemon: A new module for creating a UNIX daemon.

  • lock: Added the option to steal a lock.

1.3rc1

Release date: 2011-07-11

  • PEP8 compliant

  • Better test coverage

  • added IDLock class to lock module

  • Memoize optimization

  • path.watch_file

1.3a9

Release date: 2011-05-31

  • Memoize: bugfixes

1.3a8

Release date: 2011-05-17

  • ItemStore: fixed bugs in rename and move

1.3a7

Release date: 2011-04-26

  • Memoize: Added support for instance methods

1.3a6

Release date: 2011-04-11

  • Added timeout to lockfile

1.3a5

Release date: 2011-04-06

  • Added locking to itemstore

  • Added a file change watcher

  • Some bugfixes

  • PEP8 cleanup

1.3a4

Release date: 2011-02-11

  • Optimized Store.__contains__

  • memoized functions can now be recursive

1.3a3

  • 1.3 will only support Python 2.6 and 2.7

  • Testing using py.test instead of nose

  • added hcs_utils.path.walkfiles() recursive file generator

  • hcs_utils.itemstore Kind of on disk object/file/directory store

  • some smaller functionality

  • bunch of fixes

1.2

Release date: 2011-01-07

No changes since 1.2rc5

1.2.rc5

Release date: 2010-11-30

  • unittest.eq_json, sorted output so that it can be used with dicts.

  • unittest switched place on ndiff arguments

1.2.rc4

Release date: 2010-06-15

  • Dropped support for Python 2.5

  • Added 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 helpers

  • Added hcs_utils.threading.synchronization decorator.

  • Memoize is now thread safe.

  • hcs_utils.path.list_dir now returns a namedtuple

1.1

Release date: 2010-04-22

  • Fixed unpickeling of Storage objects.

1.0

Release date: 2010-04-18

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hcs_utils-1.4rc2.tar.gz (22.5 kB view details)

Uploaded Source

File details

Details for the file hcs_utils-1.4rc2.tar.gz.

File metadata

  • Download URL: hcs_utils-1.4rc2.tar.gz
  • Upload date:
  • Size: 22.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for hcs_utils-1.4rc2.tar.gz
Algorithm Hash digest
SHA256 657d672e828ee11e89bdb28d595f2719df1643a1faed59f4a1b8c86c64864b55
MD5 95ad213e0503c3dc314cc4a1cd10cf98
BLAKE2b-256 c1ca0c43e76ef66fa369291dd2ad0e650476e9382a337ebe94e8f4b859777067

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page