ravendb


Nameravendb JSON
Version 7.1.2.post1 PyPI version JSON
download
home_pagehttps://github.com/ravendb/ravendb-python-client
SummaryPython client for RavenDB NoSQL Database
upload_time2025-09-01 12:17:27
maintainerNone
docs_urlNone
authorRavenDB
requires_python~=3.9
licenseMIT
keywords ravendb nosql databasepyravendb
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
# Official Python client for RavenDB NoSQL Database

## Installation
Install from [PyPi](https://pypi.python.org/pypi), as [ravendb](https://pypi.org/project/ravendb/).
```bash
pip install ravendb
```

## Introduction
Python client API (v7.1) for [RavenDB](https://ravendb.net/) , a NoSQL document database.

**Type-hinted entire project and API results** - using the API is now much more comfortable with IntelliSense

## Releases

* [Click here](https://github.com/ravendb/ravendb-python-client/releases) to view all Releases and Changelog.

## What's new?

###### 5.2.5+
- Changes available in the [releases](https://github.com/ravendb/ravendb-python-client/releases) section.

###### 5.2.4
- Bulk insert dependencies [bugfix](https://github.com/ravendb/ravendb-python-client/pull/184) 

###### 5.2.3
- **Counters**
- Counters indexes

###### 5.2.2
- New feature - **[Bulk insert](https://github.com/ravendb/ravendb-python-client/pull/161)**
- Bugfixes - Cluster-wide operations ([here](https://github.com/ravendb/ravendb-python-client/pull/166))

###### 5.2.1
- Bugfixes - Serialization while loading/querying ([here](https://github.com/ravendb/ravendb-python-client/pull/163))

###### 5.2.0
- **Subscriptions**
  - Document streams
  - Secured subscriptions


- **Querying**
  - Major bugfixes
  - Spatial querying and indexing
  - Highlighting fixes
  - **Custom document parsers & loaders**
  
  
###### 5.2.0b3
- **New features**
  - Conditional Load
  - SelectFields & Facets
  - Projections
  - MoreLikeThis
  - Suggestions


- **Improvements**
  - Compare exchange
  - Querying
  - DocumentConventions
  - Patching
  - Spatial queries
  - Aggregations


###### 5.2.0b2

- **Lazy Operations**
  - Lazy loading
  - Lazy querying
  - Lazy compare exchange operations


- **Structure**
  - Important classes are now available to import from the top level `ravendb` module


...and many bugfixes

----

###### 5.2.0b1

- **Querying** 
  - Simpler, well type hinted querying
  - Group by, aggregations
  - Spatial querying
  - Boost, fuzzy, proximity
  - Subclauses support
  

 
- **Static Indexes**
  - Store fields, index fields, pick analyzers & more using `AbstractIndexCreationTask`
  - Full indexes CRUD
  - Index related commands (priority, erros, start/stop, pause, lock)
  - Additional assemblies, map-reduce, index query with results "of_type" 
  
    
- **CRUD**
  - Type hints for results and includes
  - Support for dataclasses
   
 ------


- **Attachments**
  - New attachments API
  - Better type hints 


- **HTTPS**
  - Support for https connection
  - Certificates CRUD operations

-----

- **Lazy load**
  - New feature


- **Cluster Transactions, Compare Exchange**
  - New feature
  
-----

### **Coming soon, work in progress**
- Replication & ETL Commands
- Streaming (https://github.com/ravendb/ravendb-python-client/pull/168)

----

### Demo

##### Working with secured server
```python
from ravendb import DocumentStore

URLS = ["https://raven.server.url"]
DB_NAME = "SecuredDemo"
CERT_PATH = "path\\to\\cert.pem"


class User:
    def __init__(self, name: str, tag: str):
        self.name = name
        self.tag = tag


store = DocumentStore(URLS, DB_NAME)
store.certificate_pem_path = CERT_PATH
store.initialize()
user = User("Gracjan", "Admin")

with store.open_session() as session:
    session.store(user, "users/1")
    session.save_changes()

with store.open_session() as session:
    user = session.load("users/1", User)
    assert user.name == "Gracjan"
    assert user.tag == "Admin"
```
----
#### RavenDB Documentation
https://ravendb.net/docs/article-page/5.3/python

----
#### GitHub
https://github.com/ravendb/ravendb-python-client

-----
##### Bug Tracker
http://issues.hibernatingrhinos.com/issues/RDBC

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ravendb/ravendb-python-client",
    "name": "ravendb",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "~=3.9",
    "maintainer_email": null,
    "keywords": "ravendb, nosql, databasepyravendb",
    "author": "RavenDB",
    "author_email": "support@ravendb.net",
    "download_url": "https://files.pythonhosted.org/packages/5f/41/bb8e722b1b4be659bc74c32e743584ba17c8f411e0069831d62f7569fe9f/ravendb-7.1.2.post1.tar.gz",
    "platform": null,
    "description": "\r\n# Official Python client for RavenDB NoSQL Database\r\n\r\n## Installation\r\nInstall from [PyPi](https://pypi.python.org/pypi), as [ravendb](https://pypi.org/project/ravendb/).\r\n```bash\r\npip install ravendb\r\n```\r\n\r\n## Introduction\r\nPython client API (v7.1) for [RavenDB](https://ravendb.net/) , a NoSQL document database.\r\n\r\n**Type-hinted entire project and API results** - using the API is now much more comfortable with IntelliSense\r\n\r\n## Releases\r\n\r\n* [Click here](https://github.com/ravendb/ravendb-python-client/releases) to view all Releases and Changelog.\r\n\r\n## What's new?\r\n\r\n###### 5.2.5+\r\n- Changes available in the [releases](https://github.com/ravendb/ravendb-python-client/releases) section.\r\n\r\n###### 5.2.4\r\n- Bulk insert dependencies [bugfix](https://github.com/ravendb/ravendb-python-client/pull/184) \r\n\r\n###### 5.2.3\r\n- **Counters**\r\n- Counters indexes\r\n\r\n###### 5.2.2\r\n- New feature - **[Bulk insert](https://github.com/ravendb/ravendb-python-client/pull/161)**\r\n- Bugfixes - Cluster-wide operations ([here](https://github.com/ravendb/ravendb-python-client/pull/166))\r\n\r\n###### 5.2.1\r\n- Bugfixes - Serialization while loading/querying ([here](https://github.com/ravendb/ravendb-python-client/pull/163))\r\n\r\n###### 5.2.0\r\n- **Subscriptions**\r\n  - Document streams\r\n  - Secured subscriptions\r\n\r\n\r\n- **Querying**\r\n  - Major bugfixes\r\n  - Spatial querying and indexing\r\n  - Highlighting fixes\r\n  - **Custom document parsers & loaders**\r\n  \r\n  \r\n###### 5.2.0b3\r\n- **New features**\r\n  - Conditional Load\r\n  - SelectFields & Facets\r\n  - Projections\r\n  - MoreLikeThis\r\n  - Suggestions\r\n\r\n\r\n- **Improvements**\r\n  - Compare exchange\r\n  - Querying\r\n  - DocumentConventions\r\n  - Patching\r\n  - Spatial queries\r\n  - Aggregations\r\n\r\n\r\n###### 5.2.0b2\r\n\r\n- **Lazy Operations**\r\n  - Lazy loading\r\n  - Lazy querying\r\n  - Lazy compare exchange operations\r\n\r\n\r\n- **Structure**\r\n  - Important classes are now available to import from the top level `ravendb` module\r\n\r\n\r\n...and many bugfixes\r\n\r\n----\r\n\r\n###### 5.2.0b1\r\n\r\n- **Querying** \r\n  - Simpler, well type hinted querying\r\n  - Group by, aggregations\r\n  - Spatial querying\r\n  - Boost, fuzzy, proximity\r\n  - Subclauses support\r\n  \r\n\r\n \r\n- **Static Indexes**\r\n  - Store fields, index fields, pick analyzers & more using `AbstractIndexCreationTask`\r\n  - Full indexes CRUD\r\n  - Index related commands (priority, erros, start/stop, pause, lock)\r\n  - Additional assemblies, map-reduce, index query with results \"of_type\" \r\n  \r\n    \r\n- **CRUD**\r\n  - Type hints for results and includes\r\n  - Support for dataclasses\r\n   \r\n ------\r\n\r\n\r\n- **Attachments**\r\n  - New attachments API\r\n  - Better type hints \r\n\r\n\r\n- **HTTPS**\r\n  - Support for https connection\r\n  - Certificates CRUD operations\r\n\r\n-----\r\n\r\n- **Lazy load**\r\n  - New feature\r\n\r\n\r\n- **Cluster Transactions, Compare Exchange**\r\n  - New feature\r\n  \r\n-----\r\n\r\n### **Coming soon, work in progress**\r\n- Replication & ETL Commands\r\n- Streaming (https://github.com/ravendb/ravendb-python-client/pull/168)\r\n\r\n----\r\n\r\n### Demo\r\n\r\n##### Working with secured server\r\n```python\r\nfrom ravendb import DocumentStore\r\n\r\nURLS = [\"https://raven.server.url\"]\r\nDB_NAME = \"SecuredDemo\"\r\nCERT_PATH = \"path\\\\to\\\\cert.pem\"\r\n\r\n\r\nclass User:\r\n    def __init__(self, name: str, tag: str):\r\n        self.name = name\r\n        self.tag = tag\r\n\r\n\r\nstore = DocumentStore(URLS, DB_NAME)\r\nstore.certificate_pem_path = CERT_PATH\r\nstore.initialize()\r\nuser = User(\"Gracjan\", \"Admin\")\r\n\r\nwith store.open_session() as session:\r\n    session.store(user, \"users/1\")\r\n    session.save_changes()\r\n\r\nwith store.open_session() as session:\r\n    user = session.load(\"users/1\", User)\r\n    assert user.name == \"Gracjan\"\r\n    assert user.tag == \"Admin\"\r\n```\r\n----\r\n#### RavenDB Documentation\r\nhttps://ravendb.net/docs/article-page/5.3/python\r\n\r\n----\r\n#### GitHub\r\nhttps://github.com/ravendb/ravendb-python-client\r\n\r\n-----\r\n##### Bug Tracker\r\nhttp://issues.hibernatingrhinos.com/issues/RDBC\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python client for RavenDB NoSQL Database",
    "version": "7.1.2.post1",
    "project_urls": {
        "Homepage": "https://github.com/ravendb/ravendb-python-client"
    },
    "split_keywords": [
        "ravendb",
        " nosql",
        " databasepyravendb"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6c4c9c2fe7fc748797e03c8fbd84f612297b5d4e513dae1668122663048e10c7",
                "md5": "916ccc72b7a3f44d3344295c2258b085",
                "sha256": "96ad32ea80d72afbb5d0f9b3d95d0be1db521998d4d0dc29414c39382880c3ad"
            },
            "downloads": -1,
            "filename": "ravendb-7.1.2.post1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "916ccc72b7a3f44d3344295c2258b085",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "~=3.9",
            "size": 355656,
            "upload_time": "2025-09-01T12:17:25",
            "upload_time_iso_8601": "2025-09-01T12:17:25.981233Z",
            "url": "https://files.pythonhosted.org/packages/6c/4c/9c2fe7fc748797e03c8fbd84f612297b5d4e513dae1668122663048e10c7/ravendb-7.1.2.post1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5f41bb8e722b1b4be659bc74c32e743584ba17c8f411e0069831d62f7569fe9f",
                "md5": "ffffccbce26aab77ccaa502f6263c09b",
                "sha256": "f2bcaa4d12906792caf29d666200ed92a864ee4483a5809ddaacdc3c6eb1b970"
            },
            "downloads": -1,
            "filename": "ravendb-7.1.2.post1.tar.gz",
            "has_sig": false,
            "md5_digest": "ffffccbce26aab77ccaa502f6263c09b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "~=3.9",
            "size": 282987,
            "upload_time": "2025-09-01T12:17:27",
            "upload_time_iso_8601": "2025-09-01T12:17:27.604178Z",
            "url": "https://files.pythonhosted.org/packages/5f/41/bb8e722b1b4be659bc74c32e743584ba17c8f411e0069831d62f7569fe9f/ravendb-7.1.2.post1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-01 12:17:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ravendb",
    "github_project": "ravendb-python-client",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "ravendb"
}
        
Elapsed time: 0.60275s