[Python-modules-commits] [beaker] 01/03: Import beaker_1.8.0.orig.tar.gz
Piotr Ożarowski
piotr at moszumanska.debian.org
Sat Jul 30 20:46:32 UTC 2016
This is an automated email from the git hooks/post-receive script.
piotr pushed a commit to branch master
in repository beaker.
commit dbce2ca89acae689c2f25105dfac2c33e9950ac0
Author: Piotr Ożarowski <piotr at debian.org>
Date: Sat Jul 30 21:59:33 2016 +0200
Import beaker_1.8.0.orig.tar.gz
---
.hgignore | 11 -
.hgtags | 45 ---
Beaker.egg-info/PKG-INFO | 28 +-
Beaker.egg-info/SOURCES.txt | 21 +-
Beaker.egg-info/pbr.json | 1 +
Beaker.egg-info/requires.txt | 13 +-
Beaker.egg-info/top_level.txt | 1 -
CHANGELOG | 515 --------------------------
LICENSE | 27 --
PKG-INFO | 28 +-
README.rst | 61 +++
beaker/__init__.py | 2 +-
beaker/_compat.py | 168 +++++++++
beaker/cache.py | 84 +++--
beaker/container.py | 25 +-
beaker/converters.py | 6 +-
beaker/cookie.py | 69 ++++
beaker/crypto/__init__.py | 20 +-
beaker/crypto/pbkdf2.py | 413 ++++-----------------
beaker/crypto/util.py | 24 +-
beaker/ext/database.py | 7 +-
beaker/ext/google.py | 11 +-
beaker/ext/memcached.py | 21 +-
beaker/ext/sqla.py | 5 +-
beaker/middleware.py | 10 +-
beaker/session.py | 112 +++---
beaker/util.py | 150 ++++----
setup.cfg | 11 +-
setup.py | 111 ++----
tests/test_cache.py | 305 ---------------
tests/test_container.py | 181 ---------
tests/test_cookie_only.py | 147 --------
tests/test_database.py | 108 ------
tests/test_increment.py | 181 ---------
tests/test_memcached.py | 324 ----------------
tests/test_namespacing_files/__init__.py | 0
tests/test_namespacing_files/namespace_get.py | 15 -
tests/test_namespacing_files/namespace_go.py | 25 --
tests/test_syncdict.py | 90 -----
tests/test_synchronizer.py | 27 --
40 files changed, 737 insertions(+), 2666 deletions(-)
diff --git a/.hgignore b/.hgignore
deleted file mode 100644
index a2aeb9d..0000000
--- a/.hgignore
+++ /dev/null
@@ -1,11 +0,0 @@
-
-# Automatically generated by `hgimportsvn`
-syntax:glob
-.svn
-*.pyc
-*.egg-info
-beaker/docs/build
-container_file
-container_dbm
-tests/*/container_*
-glob:*.komodoproject
diff --git a/.hgtags b/.hgtags
deleted file mode 100644
index 91d7861..0000000
--- a/.hgtags
+++ /dev/null
@@ -1,45 +0,0 @@
-4cfae69a4e425396c8aafad69e620d669f14a986 v0.5
-793218d03763817d98c5b6b3ee1e11e68171d8a7 v0.7.5
-19d215f1d4489d1b49ca05f41846e3983317e508 v0.8
-30ab3a978bec66c3437c29fceadcbc68ef9e9d0b v0.8.1
-d3a283832eea93bde5370f6696e09bb710a72547 v0.9
-d3a283832eea93bde5370f6696e09bb710a72547 v0.9
-05692a4bedf24524666bc59fb9cce6a13f9536ac v0.9.1
-4522f4b074ede11e63f07c7027bea5c9ca4f9bcd v0.9.2
-80f0cede0705ef6362e539ce4b5f0c87349eeef4 v0.9.3
-59237dd1d96262a83685617b2d305b7e55ae86a2 v0.9.4
-7ba1c094218b52c2e5d88c3687cab50bbbe81c81 v0.9.5
-0c772cbe08f3f6f02bf930b8f0f5fc0e1b225239 v1.0
-a3fa827c70246a57f3893c2496c73edf93ab77fe v1.0.1
-c258512c54efa7665b777393fcee5c9bd7e5f57a v1.0.2
-2fe6b4dbd73f6ce8e46a6709e9b1ca33d31d2df0 v1.0.3
-92506e9abe02c6147a15ba6de622b2eb1d9de029 v1.1
-2d2ac26bae8e5f6684da9564ba4e78f772fa8519 v1.1.1
-93b9dfcbe1dd9a7b78a88d502fb3e0c1cdb13d2e v1.1.2
-9fccf9544e4a9596102958e6eaa9f6724d35b064 v1.1.3
-b958d0a51dde75a72754c3befab63879552b2048 v1.2
-3c524e8a984ba2b6ecfb14055dcbfa56a9709575 v1.2.1
-279caf5065d3364b5f4de073b7728cd42f692b39 v1.2.2
-648a4ef26097991c40e29b6e8c17d44efe812363 v1.3
-0321f770855c4c272d08bd803bd7f37116b9aa9b v1.3.1
-345f9530e54d250a0456257ede314debb6acea77 v1.4
-2aca643bd310fdb35452374f7cbd913c8dbb7899 v1.4.1
-cc263261eeb77d4d98be3a7063be4e16134ed6b6 s
-cc263261eeb77d4d98be3a7063be4e16134ed6b6 s
-0000000000000000000000000000000000000000 s
-d2c61ed5e5f4907e0fb44d597677b3a1c3aa8856 v1.4.2
-c15d2898ba5cfe9f11406e94e8d1e81f5a3d158b 1.5
-e0b1c5983fa21c320367e3f2f0bbb3374da7dfa6 1.5.1
-3da2e2b3fd25ae1d86193b14a493738ace346773 v1.5.1
-c15d2898ba5cfe9f11406e94e8d1e81f5a3d158b 1.5
-0000000000000000000000000000000000000000 1.5
-e0b1c5983fa21c320367e3f2f0bbb3374da7dfa6 1.5.1
-0000000000000000000000000000000000000000 1.5.1
-c15d2898ba5cfe9f11406e94e8d1e81f5a3d158b v1.5
-554a46f4a946ef5f3cce2469e1a71a1806039b2d v1.5.2
-72cef491c002f25ae0c93df7b7633c360aaf29a5 v1.5.3
-1389359f2097384d7842394bb5fcb98894b897f7 v1.5.4
-123078d900cb10703a76a9616d1c6f874bac72b0 v1.6
-bf403d3a8acbc29080fb33ca1d2faf542d290c58 v.1.6.1
-0ac0a62ddfd9d2833842c96304761f2526538ed3 v1.6.2
-e8886108d70df667bda174416328c5497d2862d7 v1.6.4
diff --git a/Beaker.egg-info/PKG-INFO b/Beaker.egg-info/PKG-INFO
index 216d7da..680c2bf 100644
--- a/Beaker.egg-info/PKG-INFO
+++ b/Beaker.egg-info/PKG-INFO
@@ -1,13 +1,14 @@
-Metadata-Version: 1.0
+Metadata-Version: 1.1
Name: Beaker
-Version: 1.6.4
+Version: 1.8.0
Summary: A Session and Caching library with WSGI Middleware
Home-page: http://beaker.rtfd.org/
-Author: Ben Bangert, Mike Bayer, Philip Jenvey
-Author-email: ben at groovie.org, pjenvey at groovie.org
+Author: Ben Bangert, Mike Bayer, Philip Jenvey, Alessandro Molina
+Author-email: ben at groovie.org, pjenvey at groovie.org, amol at turbogears.org
License: BSD
-Description: Cache and Session Library
- +++++++++++++++++++++++++
+Description: =========================
+ Cache and Session Library
+ =========================
About
=====
@@ -24,7 +25,8 @@ Description: Cache and Session Library
Beaker includes Cache and Session WSGI middleware to ease integration with
WSGI capable frameworks, and is automatically used by `Pylons
- <http://pylonshq.com/>`_.
+ <http://www.pylonsproject.org/projects/pylons-framework/about>`_ and
+ `TurboGears <http://www.turbogears.org/>`_.
Features
@@ -59,6 +61,13 @@ Description: Cache and Session Library
The latest developer version is available in a `github repository
<https://github.com/bbangert/beaker>`_.
+ Contributing
+ ============
+
+ Bugs can be filed on github, **should be accompanied by a test case** to
+ retain current code coverage, and should be in a Pull request when ready to be
+ accepted into the beaker code-base.
+
Keywords: wsgi myghty session web cache middleware
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
@@ -66,12 +75,13 @@ Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 2.4
-Classifier: Programming Language :: Python :: 2.5
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
+Classifier: Programming Language :: Python :: 3.3
+Classifier: Programming Language :: Python :: 3.4
+Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Middleware
diff --git a/Beaker.egg-info/SOURCES.txt b/Beaker.egg-info/SOURCES.txt
index c2b73b9..09706d3 100644
--- a/Beaker.egg-info/SOURCES.txt
+++ b/Beaker.egg-info/SOURCES.txt
@@ -1,7 +1,4 @@
-.hgignore
-.hgtags
-CHANGELOG
-LICENSE
+README.rst
setup.cfg
setup.py
Beaker.egg-info/PKG-INFO
@@ -9,12 +6,15 @@ Beaker.egg-info/SOURCES.txt
Beaker.egg-info/dependency_links.txt
Beaker.egg-info/entry_points.txt
Beaker.egg-info/not-zip-safe
+Beaker.egg-info/pbr.json
Beaker.egg-info/requires.txt
Beaker.egg-info/top_level.txt
beaker/__init__.py
+beaker/_compat.py
beaker/cache.py
beaker/container.py
beaker/converters.py
+beaker/cookie.py
beaker/exceptions.py
beaker/middleware.py
beaker/session.py
@@ -30,15 +30,4 @@ beaker/ext/__init__.py
beaker/ext/database.py
beaker/ext/google.py
beaker/ext/memcached.py
-beaker/ext/sqla.py
-tests/test_cache.py
-tests/test_container.py
-tests/test_cookie_only.py
-tests/test_database.py
-tests/test_increment.py
-tests/test_memcached.py
-tests/test_syncdict.py
-tests/test_synchronizer.py
-tests/test_namespacing_files/__init__.py
-tests/test_namespacing_files/namespace_get.py
-tests/test_namespacing_files/namespace_go.py
\ No newline at end of file
+beaker/ext/sqla.py
\ No newline at end of file
diff --git a/Beaker.egg-info/pbr.json b/Beaker.egg-info/pbr.json
new file mode 100644
index 0000000..ea52c6c
--- /dev/null
+++ b/Beaker.egg-info/pbr.json
@@ -0,0 +1 @@
+{"is_release": false, "git_version": "5c407db"}
\ No newline at end of file
diff --git a/Beaker.egg-info/requires.txt b/Beaker.egg-info/requires.txt
index 54ec2da..d36d58f 100644
--- a/Beaker.egg-info/requires.txt
+++ b/Beaker.egg-info/requires.txt
@@ -1,4 +1,15 @@
+funcsigs
+[testsuite]
+nose
+webtest
+Mock
+pycrypto
+coverage
+SQLALchemy
[crypto]
-pycryptopp>=0.5.12
\ No newline at end of file
+pycryptopp>=0.5.12
+
+[pycrypto]
+pycrypto
\ No newline at end of file
diff --git a/Beaker.egg-info/top_level.txt b/Beaker.egg-info/top_level.txt
index a390f3d..fbd5ed4 100644
--- a/Beaker.egg-info/top_level.txt
+++ b/Beaker.egg-info/top_level.txt
@@ -1,2 +1 @@
beaker
-tests
diff --git a/CHANGELOG b/CHANGELOG
deleted file mode 100644
index 0f3ecc2..0000000
--- a/CHANGELOG
+++ /dev/null
@@ -1,515 +0,0 @@
-Release 1.6.4 (8/13/2012)
-=========================
-
-.. warning::
-
- Session hashing for encrypted sessions using PyCrypto has changed. This
- will result in sessions being invalidated upon upgrading if PyCrypto is
- used.
-
-* Fix bug with key_length not being coerced to a int for comparison. Patch by
- Greg Lavallee.
-* Fix bug with cookie invalidation not clearing the cookie data. Patch by
- Vasiliy Lozovoy.
-* Added ability to pass in cookie_path for the Session. Patch by Marcin
- Kuzminski.
-* Add NSS crypto support to Beaker. Patch by Miloslav Trmac of Redhat.
-* Fix security bug with pycrypto not securing data such that an attacker could
- possibly determine parts of the encrypted payload. Patch by Miloslav Trmac of
- Redhat. See `CVE-2012-3458 <http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-3458>`_.
-* Add ability to specify schema for database-backed sessions. Patch by Vladimir
- Tananko.
-* Fix issue with long key names in memcached backend. Patch by Guillaume
- Taglang.
-
-Release 1.6.3 (2/29/2012)
-=========================
-
-* Fix bug with cookie deletion on leap years. Patch contributed by Greg
- Nelson and Michael Wirth.
-* Fix issue with referencing same module via different import paths. Patch
- contributed by brianfrantz.
-* Fix cookie expiration check. Patch contributed by Mike Dirolf.
-
-Release 1.6.2 (12/13/2011)
-==========================
-
-* Updated dogpile lock so that it locks per namespace+key rather than on the
- entire namespace. (#101)
-* Added encryption option for any backend. Patch contributed by Toby Elliot.
-
-Release 1.6.1 (10/20/2011)
-==========================
-
-* Remove stray print statement.
-* Include .app for consistency instead of requiring wrap_app.
-
-Release 1.6 (10/16/2011)
-========================
-
-* Fix bug with cache_key length calculation.
-* Fix bug with how path was set so that its restored properly and propagated.
-* Fix bug with CacheMiddleware clobbering enabled setting.
-* Update option for ``cookie_expires`` so that it can now handle an integer
- which will be used as the seconds till the cookie expires.
-* Merge fix for Issue 31, can now handle unicode cache keys.
-* Add ``key_length`` option for cache regions, and for keyword args passed
- into the cache system. Cache keys longer than this will be SHA'd.
-* added runtime beaker.__version__
-* Add ``webtest_varname`` option to configuration to optionally include
- the session value in the environ vars when using Beaker with WebTest.
-* Defer running of pkg_resources to look for external cache modules
- until requested. #66
-* memcached backend uses pylibmc.ThreadMappedPool to ensure thread-local
- usage of pylibmc when that library is in use. (#60)
-* memcached backend also has ``memcache_module`` string argument, allows
- direct specification of the name of which memcache backend to use.
-* Basic container/file-based Session support working in Py3K. (#72)
-* Further Python 3 fixes
-* Added an optimization to the FileNamespaceContainer when used with
- Session, such that the pickled contents of the file are not
- read a second time when session.save() is called. (#64)
-* Fixed bug whereby CacheManager.invalidate wouldn't work for a function
- decorated by cache.cache(). (#61)
-* cache decorators @cache.cache(), @cache_region() won't include first
- argument named 'self' or 'cls' as part of the cache key. This allows
- reasonably safe usage for methods as well as functions. (#55)
-* file backend no longer squashes unpickling errors. This was inconsistent
- behavior versus all the other backends.
-* invalidate_corrupt flag on Session now emits a warning. (#52)
-* cache.remove_value() removes the value even if it's already marked
- 'expired' (#42)
-
-Release 1.5.4 (6/16/2010)
-=========================
-
-* Fix import error with InvalidCryptoBackendError.
-* Fix for domain querying on property.
-* Test cleanups
-* Fix bug with warnings preventing proper running under Jython.
-
-Release 1.5.3 (3/2/2010)
-========================
-
-* Fix Python 2.4 incompatibility with google import.
-
-Release 1.5.2 (3/1/2010)
-========================
-
-* pkg_resources scanning for additional Beaker back-ends gracefully handles
- situations where its not present (GAE). Fixes #36.
-* Avoid timing attacks on hash comparison.
-* Provide abstract base for MemoryNamespaceManager that deals with
- "dictionaries".
-* Added tests for invalidating cache, and fixed bug with function cache when
- no args are present.
-* The SQLAlchemy backends require SQLAlchemy 0.4 or greater (0.6 recommended).
-* Rudimental Python 3 support is now available. Simply use Python 3 with
- Distribute and "python setup.py install" to run 2to3 automatically,
- or manually run 2to3 on "beaker" and "tests" to convert to a
- Python 3 version.
-* Added support for PyCrypto module to encrypted session, etc. in addition
- to the existing pycryptopp support.
-
-Release 1.5.1 (12/17/2009)
-==========================
-
-* Fix cache namespacing.
-
-Release 1.5 (11/23/2009)
-========================
-
-* Update memcached to default to using pylibmc when available.
-* Fix bug when cache value doesn't exist causing has_key to throw
- an exception rather than return False. Fixes #24.
-* Fix bug where getpid under GAE is used improperly to assume it
- should be a non-string. Fixes #22.
-* Add cache_region decorator that works *before* configuration of
- the cache regions have been completed for use in module-level
- decorations.
-* Fix bug where has_value sees the value before its removed.
-* Improved accuracy of "dogpile" checker by removing dependency
- on "self" attributes, which seem to be slightly unreliable
- in highly concurrent scenarios.
-
-Release 1.4.2 (9/25/2009)
-=========================
-
-* Fix bug where memcached may yank a value after the has_value but before
- the value can be fetched.
-* Fix properties for setting the path. Fixes #15.
-* Fix the 'TypeError: argument must be an int, or have a fileno()
- method' erorr sporadically emitted by FileSynchronizer under moderate
- load.
-
-Release 1.4.1 (9/10/2009)
-=========================
-
-* Fix verification of options to throw an error if a beaker param is an
- empty string.
-* Add CacheManager.invalidate function to easily invalidate cache
- spaces created by the use of the cache decorator.
-* Add CacheManager.region_invalidate function to easily invalidate cache
- spaces created by the use of the cache_region decorator.
-* Fix the InvalidCryptoBackendError exception triggering a TypeError. Patch
- from dz, fixes #13.
-
-Release 1.4 (7/24/2009)
-=======================
-
-* Fix bug with hmac on Python 2.4. Patch from toshio, closes ticket #2133
- from the TurboGears2 Trac.
-* Fix bug with occasional ValueError from FileNamespaceManager.do_open.
- Fixes #10.
-* Fixed bug with session files being saved despite being new and not
- saved.
-* Fixed bug with CacheMiddleware overwriting configuration with default
- arguments despite prior setting.
-* Fixed bug with SyntaxError not being caught properly in entry point
- discovery.
-* Changed to using BlobProperty for Google Datastore.
-* Added domain/path properties to the session. This allows one to
- dynamically set the cookie's domain and/or path on the fly, which
- will then be set on the cookie for the session.
-* Added support for cookie-based sessions in Jython via the JCE (Java
- Cryptography Extensions). Patch from Alex Grönholm.
-* Update Beaker database extensions to work with SQLAlchemy 0.6
- PostgreSQL, and Jython.
-
-Release 1.3.1 (5/5/2009)
-========================
-
-* Added a whole bunch of Sphinx documentation for the updated site.
-* Added corresponding remove as an alias to the caches remove_value.
-* Fixed cookie session not having an invalidate function.
-* Fix bug with CacheMiddleware not using proper function to load
- configuration options, missing the cache regions.
-
-Release 1.3 (4/6/2009)
-======================
-
-* Added last_accessed attribute to session to indicate the previous time the
- session was last accessed.
-* Added setuptools entry points to dynamically discover additional namespace
- backends.
-* Fixed bug with invalidate and locks, fixes #594.
-* Added cache.cache decorator for arbitrary caching.
-* Added cache.region decorator to the CacheManager object.
-* Added cache regions. Can be provided in a configuration INI type, or
- by adding in a cache_regions arg to the CacheManager.
-* Fix bug with timeout not being saved properly.
-* Fix bug with cookie-only sessions sending cookies for new sessions even
- if they weren't supposed to be saved.
-* Fix bug that caused a non-auto accessed session to not record the time it
- was previously accessed resulting in session timeouts.
-* Add function to parse configuration dicts as appropriate for use with the
- CacheManager.
-* The "expiretime" is no longer passed to the memcached backend - since
- if memcached makes the expired item unavailable at the same time the
- container expires it, then all actors must block until the new value
- is available (i.e. breaks the anti-dogpile logic).
-
-
-Release 1.2.3 (3/2/2009)
-========================
-
-* Fix accessed increment to take place *after* the accessed time is checked
- to see if it has expired. Fixes #580.
-* data_dir/lock_dir parameters are optional to most backends; if not
- present, mutex-based locking will be used for creation functions
-* Adjustments to Container to better account for backends which
- don't provide read/write locks, such as memcached. As a result,
- the plain "memory" cache no longer requires read/write mutexing.
-
-
-Release 1.2.2 (2/14/2009)
-=========================
-
-* Fix delete bug reported by andres with session not being deleted.
-
-
-Release 1.2.1 (2/09/2009)
-=========================
-
-* Fix memcached behavior as memcached returns None on nonexistent key
- fetch which broke invalid session checking.
-
-
-Release 1.2 (1/22/2009)
-=======================
-
-* Updated session to only save to the storage *once* no under any/all
- conditions rather than every time save() is called.
-* Added session.revert() function that reverts the session to the state at
- the beginning of the request.
-* Updated session to store entire session data in a single namespace key,
- this lets memcached work properly, and makes for more efficient use of the
- storage system for sessions.
-
-
-Release 1.1.3 (12/29/2008)
-==========================
-
-* Fix the 1.1.2 old cache/session upgrader to handle the has_current_value
- method.
-* Make InvalidCacheBackendError an ImportError.
-
-
-Release 1.1.2 (11/24/2008)
-==========================
-
-* Upgrade Beaker pre-1.1 cache/session values to the new format rather than
- throwing an exception.
-
-
-Release 1.1.1 (11/24/2008)
-==========================
-
-* Fixed bug in Google extension which passed arguments it should no longer
- pass to NamespaceManager.
-* Fixed bug involving lockfiles left open during cache "value creation"
- step.
-
-
-Release 1.1 (11/16/2008)
-========================
-
-* file-based cache will not hold onto cached value once read from file;
- will create new value if the file is deleted as opposed to re-using
- what was last read. This allows external removal of files to be
- used as a cache-invalidation mechanism.
-* file-based locking will not unlink lockfiles; this can interfere
- with the flock() mechanism in the event that a concurrent process
- is accessing the files.
-* Sending "type" and other namespace config arguments to cache.get()/
- cache.put()/cache.remove_value() is deprecated. The namespace
- configuration is now preferred at the Cache level, i.e. when you construct
- a Cache or call cache_manager.get_cache(). This removes the ambiguity
- of Cache's dictionary interface and has_key() methods, which have
- no awareness of those arguments.
-* the "expiretime" in use is stored in the cache itself, so that it is
- always available when calling has_key() and other methods. Between
- this change and the deprecation of 'type', the Cache no longer has
- any need to store cache configuration in memory per cache key, which in a
- dynamically-generated key scenario stores an arbitrarily large number
- of configurations - essentially a memory leak.
-* memcache caching has been vastly improved, no longer stores a list of
- all keys, which along the same theme prevented efficient usage for an
- arbitrarily large number of keys. The keys() method is now unimplemented,
- and cache.remove() clears the entire memcache cache across all namespaces.
- This is what the memcache API provides so it's the best we can do.
-* memcache caching passes along "expiretime" to the memcached "time"
- parameter, so that the cache itself can reduce its size for elements which
- are expired (memcache seems to manage its size in any case, this is just a
- hint to improve its operation).
-* replaced homegrown ThreadLocal implementation with threading.local, falls
- back to a 2.3 compat one for python<2.4
-
-
-Release 1.0.3 (10/14/2008)
-==========================
-
-* Fixed os.getpid issue on GAE.
-* CookieSession will add '_expires' value to data when an expire time is set,
- and uses it
-
-
-Release 1.0.2 (9/22/2008)
-=========================
-
-* Fixed bug caused when attempting to invalidate a session that hadn't
- previously been created.
-
-
-Release 1.0.1 (8/19/2008)
-=========================
-
-* Bug fix for cookie sessions to retain id before clearing values.
-
-
-Release 1.0 (8/13/2008)
-=======================
-
-* Added cookie delete to both cookie only sessions and normal sessions, to
- help with proxies and such that may determine whether a user is logged in
- via a cookie. (cookie varies, etc.). Suggested by Felix Schwarz.
-* cache.get_value() now uses the given **kwargs in all cases in the same
- manner as cache.set_value(). This way you can send a new createfunc
- to cache.get_value() each time and it will be used.
-
-
-Release 0.9.5 (6/19/2008)
-=========================
-
-* Fixed bug in memcached to be tolerant of keys disappearing when memcached
- expires them.
-* Fixed the cache functionality to actually work, previously set_value was
- ignored if there was already a value set.
-
-
-Release 0.9.4 (4/13/2008)
-=========================
-
-* Adding 'google' backend datastore, available by specifying 'google' as the
- cache/session type. Note that this takes an optional table_name used to name
- the model class used.
-* SECURITY BUG: Fixed security issue with Beaker not properly removing
- directory escaping characters from the session ID when un-signed sessions
- are used. Reported with patch by Felix Schwarz.
-* Fixed bug with Beaker not playing well with Registry when its placed above
- it in the stack. Thanks Wichert Akkerman.
-
-
-Release 0.9.3 (2/28/2008)
-=========================
-
-* Adding 'id' to cookie-based sessions for better compatibility.
-* Fixed error with exception still raised for PyCrypto missing.
-* WARNING: Session middleware no longer catches Paste HTTP Exceptions, apps
- are now expected to capture and handle Paste HTTP Exceptions themselves.
-* Fixed Python 2.4 compatibility bug in hmac.
-* Fixed key lookup bug on cache object to only use the settings for the key
- lookup. Found by Andrew Stromnov.
-
-
-Release 0.9.2 (2/13/2008)
-=========================
-
-* Added option to make Beaker use a secure cookie.
-* Removed CTRCipher as pycryptopp doesn't need it.
-* Changed AES to use 256 bit.
-* Fixed signing code to use hmac with sha for better signing security.
-* Fixed memcached code to use delete_multi on clearing the keys for efficiency
- and updated key retrieval to properly store and retrieve None values.
-* Removing cookie.py and signed cookie middleware, as the environ_key option
- for session middleware provides a close enough setting.
-* Added option to use just cookie-based sessions without requiring
- encryption.
-* Switched encryption requirement from PyCrypto to pycryptopp which uses a
- proper AES in Counter Mode.
-
-
-Release 0.9.1 (2/4/2008)
-========================
-
-* Fixed bug in middleware using module that wasn't imported.
-
-
-Release 0.9 (12/17/07)
-======================
-
-* Fixed bug in memcached replace to actually replace spaces properly.
-* Fixed md5 cookie signature to use SHA-1 when available.
-* Updated cookie-based session storage to use 256-bit AES-CTR mode with a
- SHA-1 HMAC signature. Now requires PyCrypto to use for AES scheme.
-* WARNING: Moved session and cache middleware to middleware, as per the old
- deprecation warnings had said was going to happen for 0.8.
-* Added cookie-only session storage with RC4 ciphered encryption, requires
- Python 2.4.
-* Add the ability to specify the cookie's domain for sessions.
-
-
-Release 0.8.1 (11/15/07)
-========================
-
-* Fixed bug in database.py not properly handling missing sqlalchemy library.
-
-
-Release 0.8 (10/17/07)
-======================
-
-* Fixed bug in prior db update causing session to occasionally not be written
- back to the db.
-* Fixed memcached key error with keys containing spaces. Thanks Jim Musil.
-* WARNING: Major change to ext:database to use a single row per namespace.
- Additionally, there's an accessed and created column present to support
- easier deletion of old cache/session data. You *will* need to drop any
- existing tables being used by the ext:database backend.
-* Streamline ext:database backend to avoid unnecessary database selects for
- repeat data.
-* Added SQLAlchemy 0.4 support to ext:database backend.
-
-
-Release 0.7.5 (08/18/07)
-========================
-
-* Fixed data_dir parsing for session string coercions, no longer picks up None
- as a data_dir.
-* Fixed session.get_by_id to lookup recently saved sessions properly, also
- updates session with creation/access time upon save.
-* Add unit tests for get_by_id function. Updated get_by_id to not result in
- additional session files.
-* Added session.get_by_id function to retrieve a session of the given id.
-
-
-Release 0.7.4 (07/09/07)
-========================
-
-* Fixed issue with Beaker not properly handling arguments as Pylons may pass
- them in.
-* Fixed unit test to catch file removal exception.
-* Fixed another bug in synchronization, this one involving reentrant
- conditions with file synchronization
-* If a file open fails due to pickling errors, locks just opened
- are released unconditionally
-
-
-Release 0.7.3 (06/08/07)
-========================
-
-* Beaker was not properly parsing input options to session middleware. Thanks
- to Yannick Gingras and Timothy S for spotting the issue.
-* Changed session to only send the cookie header if its a new session and
- save() was called. Also only creates the session file under these
- conditions.
-
-
-Release 0.7.2 (05/19/07)
-========================
-
-* Added deprecation warning for middleware move, relocated middleware to cache
- and session modules for backwards compatibility.
-
-
-Release 0.7.1 05/18/07)
-=======================
-
-* adjusted synchronization logic to account for Mako/new Cache object's
- multithreaded usage of Container.
-
-
-Release 0.7 (05/18/07)
-======================
-
-* WARNING: Cleaned up Cache object based on Mako cache object, this changes
- the call interface slightly for creating a Cache object directly. The
- middleware cache object is unaffected from an end-user view. This change
- also avoids duplicate creations of Cache objects.
-* Adding database backend and unit tests.
-* Added memcached test, fixed memcached namespace arg passing.
-* Fixed session and cache tests, still failing syncdict test. Added doctests
- for Cache and Session middleware.
-* Cleanup of container/cache/container_test
-* Namespaces no longer require a context, removed NamespaceContext?
-* Logging in container.py uses logging module
-* Cleanup of argument passing, use name **kwargs instead of **params for
- generic kwargs
-* Container classes contain a static create_namespace() method, namespaces are
- accessed from the ContainerContext? via string name + container class alone
-* Implemented (but not yet tested) clear() method on Cache, locates all
- Namespaces used thus far and clears each one based on its keys() collection
-* Fixed Cache.clear() method to actually clear the Cache namespace.
-* Updated memcached backend to split servers on ';' for multiple memcached
- backends.
-* Merging MyghtyUtils code into Beaker.
-
-
-Release 0.6.3 (03/18/2007)
-==========================
-
-* Added api with customized Session that doesn't require a Myghty request
- object, just a dict. Updated session to use the new version.
-* Removing unicode keys as some dbm backends can't handle unicode keys.
-* Adding core files that should've been here.
-* More stringent checking for existence of a session.
-* Avoid recreating the session object when it's empty.
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index 2167676..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,27 +0,0 @@
-Copyright (c) 2006, 2007 Ben Bangert, Mike Bayer, Philip Jenvey
- and contributors.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-3. The name of the author or contributors may not be used to endorse or
- promote products derived from this software without specific prior
- written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGE.
diff --git a/PKG-INFO b/PKG-INFO
index 216d7da..680c2bf 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,13 +1,14 @@
-Metadata-Version: 1.0
+Metadata-Version: 1.1
Name: Beaker
-Version: 1.6.4
+Version: 1.8.0
Summary: A Session and Caching library with WSGI Middleware
Home-page: http://beaker.rtfd.org/
-Author: Ben Bangert, Mike Bayer, Philip Jenvey
-Author-email: ben at groovie.org, pjenvey at groovie.org
+Author: Ben Bangert, Mike Bayer, Philip Jenvey, Alessandro Molina
+Author-email: ben at groovie.org, pjenvey at groovie.org, amol at turbogears.org
License: BSD
-Description: Cache and Session Library
- +++++++++++++++++++++++++
+Description: =========================
+ Cache and Session Library
+ =========================
About
=====
@@ -24,7 +25,8 @@ Description: Cache and Session Library
Beaker includes Cache and Session WSGI middleware to ease integration with
WSGI capable frameworks, and is automatically used by `Pylons
- <http://pylonshq.com/>`_.
+ <http://www.pylonsproject.org/projects/pylons-framework/about>`_ and
+ `TurboGears <http://www.turbogears.org/>`_.
Features
@@ -59,6 +61,13 @@ Description: Cache and Session Library
The latest developer version is available in a `github repository
<https://github.com/bbangert/beaker>`_.
+ Contributing
+ ============
+
+ Bugs can be filed on github, **should be accompanied by a test case** to
+ retain current code coverage, and should be in a Pull request when ready to be
+ accepted into the beaker code-base.
+
Keywords: wsgi myghty session web cache middleware
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
@@ -66,12 +75,13 @@ Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 2.4
-Classifier: Programming Language :: Python :: 2.5
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
+Classifier: Programming Language :: Python :: 3.3
+Classifier: Programming Language :: Python :: 3.4
+Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Middleware
diff --git a/README.rst b/README.rst
new file mode 100644
index 0000000..a75ba20
--- /dev/null
+++ b/README.rst
@@ -0,0 +1,61 @@
+=========================
+Cache and Session Library
+=========================
+
+About
+=====
+
+Beaker is a web session and general caching library that includes WSGI
+middleware for use in web applications.
+
+As a general caching library, Beaker can handle storing for various times
+any Python object that can be pickled with optional back-ends on a
+fine-grained basis.
+
+Beaker was built largely on the code from MyghtyUtils, then refactored and
+extended with database support.
+
+Beaker includes Cache and Session WSGI middleware to ease integration with
+WSGI capable frameworks, and is automatically used by `Pylons
+<http://www.pylonsproject.org/projects/pylons-framework/about>`_ and
+`TurboGears <http://www.turbogears.org/>`_.
+
+
+Features
+========
+
+* Fast, robust performance
+* Multiple reader/single writer lock system to avoid duplicate simultaneous
+ cache creation
+* Cache back-ends include dbm, file, memory, memcached, and database (Using
+ SQLAlchemy for multiple-db vendor support)
+* Signed cookie's to prevent session hijacking/spoofing
+* Cookie-only sessions to remove the need for a db or file backend (ideal
+ for clustered systems)
+* Extensible Container object to support new back-ends
+* Cache's can be divided into namespaces (to represent templates, objects,
+ etc.) then keyed for different copies
+* Create functions for automatic call-backs to create new cache copies after
+ expiration
+* Fine-grained toggling of back-ends, keys, and expiration per Cache object
+
+
+Documentation
+=============
+
+Documentation can be found on the `Official Beaker Docs site
+<http://beaker.groovie.org/>`_.
+
+
+Source
+======
+
+The latest developer version is available in a `github repository
+<https://github.com/bbangert/beaker>`_.
+
+Contributing
+============
+
+Bugs can be filed on github, **should be accompanied by a test case** to
+retain current code coverage, and should be in a Pull request when ready to be
+accepted into the beaker code-base.
diff --git a/beaker/__init__.py b/beaker/__init__.py
index d07785c..b280975 100644
--- a/beaker/__init__.py
+++ b/beaker/__init__.py
@@ -1 +1 @@
-__version__ = '1.6.4'
+__version__ = '1.8.0'
diff --git a/beaker/_compat.py b/beaker/_compat.py
new file mode 100644
index 0000000..1f85d5f
--- /dev/null
+++ b/beaker/_compat.py
@@ -0,0 +1,168 @@
+import sys
+
+# True if we are running on Python 2.
+PY2 = sys.version_info[0] == 2
+PYVER = sys.version_info[:2]
+JYTHON = sys.platform.startswith('java')
+
+if PY2 and not JYTHON: # pragma: no cover
+ import cPickle as pickle
+else: # pragma: no cover
+ import pickle
+
+
+if not PY2: # pragma: no cover
+ xrange_ = range
+ NoneType = type(None)
+
+ string_type = str
+ unicode_text = str
+ byte_string = bytes
+
+ from urllib.parse import urlencode as url_encode
+ from urllib.parse import quote as url_quote
+ from urllib.parse import unquote as url_unquote
+ from urllib.parse import urlparse as url_parse
+ from urllib.request import url2pathname
+ import http.cookies as http_cookies
+ from base64 import b64decode as _b64decode, b64encode as _b64encode
+
+ try:
+ import dbm as anydbm
+ except:
+ import dumbdbm as anydbm
+
... 3443 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/beaker.git
More information about the Python-modules-commits
mailing list