{"id":13534255,"url":"https://github.com/bbangert/beaker","last_synced_at":"2025-05-14T01:07:10.189Z","repository":{"id":1755176,"uuid":"2587245","full_name":"bbangert/beaker","owner":"bbangert","description":"WSGI middleware for sessions and caching","archived":false,"fork":false,"pushed_at":"2025-03-15T00:40:10.000Z","size":1186,"stargazers_count":533,"open_issues_count":75,"forks_count":143,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-04-06T15:01:17.976Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://beaker.readthedocs.org/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bbangert.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2011-10-16T17:48:39.000Z","updated_at":"2025-04-01T12:35:55.000Z","dependencies_parsed_at":"2024-04-11T21:45:54.104Z","dependency_job_id":"abaee5f1-fedd-43f5-8a58-79670dccacdc","html_url":"https://github.com/bbangert/beaker","commit_stats":{"total_commits":715,"total_committers":95,"mean_commits":7.526315789473684,"dds":0.5636363636363637,"last_synced_commit":"a1eaad3bc7b7813327645b2293818924c89bf53d"},"previous_names":[],"tags_count":48,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbangert%2Fbeaker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbangert%2Fbeaker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbangert%2Fbeaker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbangert%2Fbeaker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bbangert","download_url":"https://codeload.github.com/bbangert/beaker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248751452,"owners_count":21155904,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T07:01:28.970Z","updated_at":"2025-04-13T17:25:28.088Z","avatar_url":"https://github.com/bbangert.png","language":"Python","readme":"=========================\nCache and Session Library\n=========================\n\nAbout\n=====\n\nBeaker is a web session and general caching library that includes WSGI\nmiddleware for use in web applications.\n\nAs a general caching library, Beaker can handle storing for various times\nany Python object that can be pickled with optional back-ends on a\nfine-grained basis.\n\nBeaker was built largely on the code from MyghtyUtils, then refactored and\nextended with database support.\n\nBeaker includes Cache and Session WSGI middleware to ease integration with\nWSGI capable frameworks, and is automatically used by `Pylons\n\u003chttps://pylonsproject.org/about-pylons-framework.html\u003e`_ and \n`TurboGears \u003chttps://www.turbogears.org/\u003e`_.\n\n\nFeatures\n========\n\n* Fast, robust performance\n* Multiple reader/single writer lock system to avoid duplicate simultaneous\n  cache creation\n* Cache back-ends include dbm, file, memory, memcached, Redis, MongoDB, and\n  database (Using SQLAlchemy for multiple-db vendor support)\n* Signed cookies to prevent session hijacking/spoofing\n* Cookie-only sessions to remove the need for a db or file backend (ideal\n  for clustered systems)\n* Extensible Container object to support new back-ends\n* Caches can be divided into namespaces (to represent templates, objects,\n  etc.) then keyed for different copies\n* Create functions for automatic call-backs to create new cache copies after\n  expiration\n* Fine-grained toggling of back-ends, keys, and expiration per Cache object\n\n\nDocumentation\n=============\n\nDocumentation can be found on the `Official Beaker Docs site\n\u003chttps://beaker.readthedocs.io/en/latest/\u003e`_.\n\n\nSource\n======\n\nThe latest developer version is available in a `GitHub repository\n\u003chttps://github.com/bbangert/beaker\u003e`_.\n\nContributing\n============\n\nBugs can be filed on GitHub, **should be accompanied by a test case** to\nretain current code coverage, and should be in a pull request when ready to be\naccepted into the beaker code-base.\n","funding_links":[],"categories":["Caching","缓存","Python","Data Caching","Caching [🔝](#readme)","Awesome Python"],"sub_categories":["Caching"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbangert%2Fbeaker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbbangert%2Fbeaker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbangert%2Fbeaker/lists"}