Name | nucliadb JSON |
Version |
6.6.1.post4665
JSON |
| download |
home_page | None |
Summary | NucliaDB |
upload_time | 2025-07-10 13:23:12 |
maintainer | None |
docs_url | None |
author | None |
requires_python | <4,>=3.9 |
license | None |
keywords |
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
|
# nucliadb
This module contains most of the Python components for NucliaDB:
- ingest
- reader
- writer
- search
- train
# NucliaDB Migrations
This module is used to manage NucliaDB Migrations.
All migrations will be provided in the `migrations` folder and have a filename
that follows the structure: `[sequence]_[migration name].py`.
Where `sequence` is the order the migration should be run in with zero padding.
Example: `0001_migrate_data.py`.
Each migration should have the following:
```python
from nucliadb.migrator.context import ExecutionContext
async def migrate(context: ExecutionContext) -> None:
"""
Non-kb type of migration. Migrate global data.
"""
async def migrate_kb(context: ExecutionContext, kbid: str) -> None:
"""
Migrate kb.
Must have both types of migrations.
"""
```
## How migrations are managed
- All migrations utilize a distributed lock to prevent simulateously running jobs
- Global migration state:
- current version
- target version
- KBs to migrate
- KB Migration State:
- current version
- Migrations are currently run with a deployment and will be continuously retried on failure.
- Running migrations in a deployment is to make sure a migration does not prevent code deployment.
Raw data
{
"_id": null,
"home_page": null,
"name": "nucliadb",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.9",
"maintainer_email": null,
"keywords": null,
"author": null,
"author_email": "Nuclia <nucliadb@nuclia.com>",
"download_url": null,
"platform": null,
"description": "# nucliadb\n\nThis module contains most of the Python components for NucliaDB:\n\n- ingest\n- reader\n- writer\n- search\n- train\n\n# NucliaDB Migrations\n\nThis module is used to manage NucliaDB Migrations.\n\nAll migrations will be provided in the `migrations` folder and have a filename\nthat follows the structure: `[sequence]_[migration name].py`.\nWhere `sequence` is the order the migration should be run in with zero padding.\nExample: `0001_migrate_data.py`.\n\nEach migration should have the following:\n\n```python\nfrom nucliadb.migrator.context import ExecutionContext\n\n\nasync def migrate(context: ExecutionContext) -> None:\n \"\"\"\n Non-kb type of migration. Migrate global data.\n \"\"\"\n\n\nasync def migrate_kb(context: ExecutionContext, kbid: str) -> None:\n \"\"\"\n Migrate kb.\n\n Must have both types of migrations.\n \"\"\"\n```\n\n\n## How migrations are managed\n\n- All migrations utilize a distributed lock to prevent simulateously running jobs\n- Global migration state:\n - current version\n - target version\n - KBs to migrate\n- KB Migration State:\n - current version\n\n- Migrations are currently run with a deployment and will be continuously retried on failure.\n- Running migrations in a deployment is to make sure a migration does not prevent code deployment.\n",
"bugtrack_url": null,
"license": null,
"summary": "NucliaDB",
"version": "6.6.1.post4665",
"project_urls": {
"API Reference": "https://docs.nuclia.dev/docs/api",
"Github": "https://github.com/nuclia/nucliadb",
"Nuclia": "https://nuclia.com",
"Slack": "https://nuclia-community.slack.com"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "fd08d802f628e56d247c56621a646cb51f7ff8eb20dcf376eb2bec44475ee780",
"md5": "78366b35ba6d9f5cafeadb8d70fa0a3a",
"sha256": "4c7efcccaf14a29d0c3296db7e35823b721940a1c4d7b66dc28da106367c1cde"
},
"downloads": -1,
"filename": "nucliadb-6.6.1.post4665-py3-none-any.whl",
"has_sig": false,
"md5_digest": "78366b35ba6d9f5cafeadb8d70fa0a3a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.9",
"size": 683660,
"upload_time": "2025-07-10T13:23:12",
"upload_time_iso_8601": "2025-07-10T13:23:12.041401Z",
"url": "https://files.pythonhosted.org/packages/fd/08/d802f628e56d247c56621a646cb51f7ff8eb20dcf376eb2bec44475ee780/nucliadb-6.6.1.post4665-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-10 13:23:12",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "nuclia",
"github_project": "nucliadb",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "nucliadb"
}