Skip to main content

a simple, persistent, file-based cache module for Python

Project description

fcache
======

About
-----

fcache is a simple, persistent, file-based cache module for Python. It uses `cPickle <http://docs.python.org/2/library/pickle.html#module-cPickle>`_ to store objects into a cache file and `appdirs <http://pypi.python.org/pypi/appdirs>`_ to ensure that cache files are stored in platform-appropriate, application-specific directories. It supports optional, time-based data expiration.

It's Simple
-----------

.. code:: python

>>> import fcache
>>> cache = fcache.Cache("population", "statistics-fetcher")
>>> cache.set("chicago", 9729825)
>>> print cache.get("chicago")
9729825

Using fcache is as simple as creating a ``Cache`` object, setting data, and getting data back.

It's Persistent
---------------

.. code:: python

>>> exit()
$ python
>>> import fcache
>>> cache = fcache.Cache("population", "statistics-fetcher")
>>> print cache.get("chicago")
9729825

Cached data doesn't disappear when you stop using a ``Cache`` object. When you create a new object with the same arguments, your data is still there, just like you left it.

It's File-Based
---------------

.. code:: python

>>> print cache.filename
/Users/tsr/Library/Caches/statistics-fetcher/248081ecb337c85ec8e4330e6099625a

Cached data is stored in a file, plain and simple. You can see it on the file system. You can delete it, copy it, or write your own library to open it.

It's Time-Aware
---------------

.. code:: python
>>> import time
>>> cache.set("chicago", 9729825, 30)
>>> print cache.get("chicago")
9729825
>>> time.sleep(30)
>>> print cache.get("chicago")
None

Just like an orange, some data goes bad after awhile. fcache can keep track of when data should expire.

Documentation
-------------

`fcache's documentation <http://tsroten.github.com/fcache/>`_ contains an introduction along with an API overview. For more information on how to get started with fcache, be sure to read the documentation.

Bug/Issues Tracker
------------------

fcache uses its `GitHub Issues page <https://github.com/tsroten/fcache/issues>`_ to track bugs, feature requests, and support questions.

License
-------

fcache is released under the OSI-approved `MIT License <http://opensource.org/licenses/MIT>`_. See the file LICENSE.txt for more information.

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

fcache-0.2.tar.gz (382.7 kB view details)

Uploaded Source

File details

Details for the file fcache-0.2.tar.gz.

File metadata

  • Download URL: fcache-0.2.tar.gz
  • Upload date:
  • Size: 382.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for fcache-0.2.tar.gz
Algorithm Hash digest
SHA256 894f53e2e026f3ff4365ee165825af61c148708872c46059fe8979269985895c
MD5 e6eee8f00038e8be7504e830a9ee4c5e
BLAKE2b-256 a8ccdc7f5d0c342b82974264ec5d2ae40d0b0e64837cd0094f6d4450d9f0e723

See more details on using hashes here.

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