{"id":32619434,"url":"https://github.com/fnl/couchpy","last_synced_at":"2026-07-05T13:31:34.670Z","repository":{"id":19582961,"uuid":"22832909","full_name":"fnl/couchpy","owner":"fnl","description":"a python3 library to programmatically access CouchDB (written when there was none, \"long ago\"...)","archived":false,"fork":false,"pushed_at":"2014-08-11T09:12:49.000Z","size":160,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-30T18:03:02.097Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fnl.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-08-11T08:57:30.000Z","updated_at":"2024-05-29T14:46:14.000Z","dependencies_parsed_at":"2022-08-21T10:41:08.481Z","dependency_job_id":null,"html_url":"https://github.com/fnl/couchpy","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fnl/couchpy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fnl%2Fcouchpy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fnl%2Fcouchpy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fnl%2Fcouchpy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fnl%2Fcouchpy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fnl","download_url":"https://codeload.github.com/fnl/couchpy/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fnl%2Fcouchpy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35156494,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-05T02:00:06.290Z","response_time":100,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":"2025-10-30T18:01:13.081Z","updated_at":"2026-07-05T13:31:34.652Z","avatar_url":"https://github.com/fnl.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"###############################\ncouchpy -- A CouchDB client API\n###############################\n\nA CouchDB_ client API for Python 3000, ported from the Python (2.x) client code written by **Christopher Lenz**, CouchDB-Python_, but refactored to be used with Python 3.x interpreters (only).\n\nAs the ``couchpy`` package has been adapted to work with Python 3000, some parts of the original client API have changed, and only the very essential parts of Christopher's package (ie., only the ``client`` (now called ``broker``) and ``http`` (now ``network``)) have been ported.\nAll tools provided in addition by CouchDB-Python_ are not available and not planned.\nThe http/network module is substantially different from the original to be useful with Python 3000's modified `io` and `http.client` modules , while the client/broker API itself looks almost maintained \"as is\" from the outside except for some renamed methods, but everything that can be streamed from the CouchDB (``Transfer-Encoding: chunked``) is now by default handed on as such - eg., `couchpy.broker.Database.list` views return data streams.\n\nAll relevant classes and exceptions can be directly imported from the `couchpy` module itself::\n\n    from couchpy import *\n\nThat statement provides the following classes and exceptions in your namespace: `couchpy.broker.Database`, `couchpy.broker.Document`, and `couchpy.broker.Server`, as well as the the exceptions:\n\n* `couchpy.network.HTTPError`\n* `couchpy.network.PreconditionFailed`\n* `couchpy.network.RedirectLimitExceeded`\n* `couchpy.network.ResourceConflict`\n* `couchpy.network.ResourceNotFound`\n* `couchpy.network.ServerError`\n* `couchpy.network.Unauthorized`\n\nAll these errors treat connection, request and response problems as well as errors reported by CouchDB itself, and are all based on `http.client.HTTPException`.\nAlso, string encoding problems are reported as `UnicodeError`, JSON encoding problems as `TypeError`, and bad method parameters as `ValueError`.\nVirtually all methods provided through the ``broker`` classes might raise any of them, so if you need strict error recovery, wrap all calls to this API with ``except`` clauses for these four errors.\n\nIn addition to the three standard fields CouchDB sets on documents (**_id**, **_rev**, **_attachments**), the broker also adds the fields **created** and **modified** to every document upon saving it, as extended `ISO 8601`_ **UTC** (ie., without timezone) timestamps: \"YYYY-MM-DDTHH:MM:SS\".\nIn the case that \"created\" is not set, both fields will be set to the same value.\nOtherwise, only the \"modified\" timestamp is replaced.\n\n.. _CouchDB: http://couchdb.apache.org/\n.. _CouchDB-Python: http://code.google.com/p/couchdb-python\n.. _ISO 8601: http://en.wikipedia.org/wiki/ISO_8601\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffnl%2Fcouchpy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffnl%2Fcouchpy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffnl%2Fcouchpy/lists"}