python-arango 8.2.1__tar.gz → 8.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {python_arango-8.2.1 → python_arango-8.2.2}/PKG-INFO +1 -1
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/backup.py +1 -1
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/cluster.py +1 -1
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/collection.py +16 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/database.py +40 -1
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/exceptions.py +8 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/request.py +1 -1
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/foxx.rst +2 -2
- {python_arango-8.2.1 → python_arango-8.2.2}/python_arango.egg-info/PKG-INFO +1 -1
- {python_arango-8.2.1 → python_arango-8.2.2}/.circleci/config.yml +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/.github/workflows/codeql.yaml +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/.github/workflows/docs.yaml +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/.github/workflows/pypi.yaml +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/.gitignore +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/.pre-commit-config.yaml +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/.readthedocs.yaml +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/CONTRIBUTING.md +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/LICENSE +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/MANIFEST.in +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/README.md +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/__init__.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/api.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/aql.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/client.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/connection.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/cursor.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/errno.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/executor.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/formatter.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/foxx.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/graph.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/http.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/job.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/pregel.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/py.typed +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/replication.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/resolver.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/response.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/result.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/typings.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/utils.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/arango/wal.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/Makefile +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/admin.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/analyzer.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/aql.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/async.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/auth.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/backup.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/batch.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/certificates.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/cluster.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/collection.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/compression.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/conf.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/contributing.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/cursor.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/database.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/document.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/errno.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/errors.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/graph.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/http.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/index.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/indexes.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/logging.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/make.bat +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/overload.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/overview.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/pregel.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/replication.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/requirements.txt +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/schema.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/serializer.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/simple.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/specs.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/static/logo.png +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/task.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/threading.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/transaction.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/user.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/view.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/docs/wal.rst +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/pyproject.toml +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/python_arango.egg-info/SOURCES.txt +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/python_arango.egg-info/dependency_links.txt +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/python_arango.egg-info/requires.txt +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/python_arango.egg-info/top_level.txt +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/setup.cfg +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/setup.py +0 -0
- {python_arango-8.2.1 → python_arango-8.2.2}/starter.sh +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-arango
|
|
3
|
-
Version: 8.2.
|
|
3
|
+
Version: 8.2.2
|
|
4
4
|
Summary: Python Driver for ArangoDB
|
|
5
5
|
Author-email: Joohwan Oh <joohwan.oh@outlook.com>
|
|
6
6
|
Maintainer-email: Joohwan Oh <joohwan.oh@outlook.com>, Alexandru Petenchea <alex.petenchea@gmail.com>, Anthony Mahanna <anthony.mahanna@arangodb.com>
|
|
@@ -33,7 +33,7 @@ class Backup(ApiGroup): # pragma: no cover
|
|
|
33
33
|
:type backup_id: str
|
|
34
34
|
:return: Backup details.
|
|
35
35
|
:rtype: dict
|
|
36
|
-
:raise arango.exceptions.BackupGetError: If
|
|
36
|
+
:raise arango.exceptions.BackupGetError: If the operation fails.
|
|
37
37
|
"""
|
|
38
38
|
request = Request(
|
|
39
39
|
method="post",
|
|
@@ -261,7 +261,7 @@ class Cluster(ApiGroup): # pragma: no cover
|
|
|
261
261
|
|
|
262
262
|
:return: List of endpoints.
|
|
263
263
|
:rtype: [str]
|
|
264
|
-
:raise arango.exceptions.
|
|
264
|
+
:raise arango.exceptions.ClusterEndpointsError: If retrieval fails.
|
|
265
265
|
"""
|
|
266
266
|
request = Request(method="get", endpoint="/_api/cluster/endpoints")
|
|
267
267
|
|
|
@@ -537,10 +537,18 @@ class Collection(ApiGroup):
|
|
|
537
537
|
def load(self) -> Result[bool]:
|
|
538
538
|
"""Load the collection into memory.
|
|
539
539
|
|
|
540
|
+
.. note::
|
|
541
|
+
The load function is deprecated from version 3.8.0 onwards and is a
|
|
542
|
+
no-op from version 3.9.0 onwards. It should no longer be used, as it
|
|
543
|
+
may be removed in a future version of ArangoDB.
|
|
544
|
+
|
|
540
545
|
:return: True if collection was loaded successfully.
|
|
541
546
|
:rtype: bool
|
|
542
547
|
:raise arango.exceptions.CollectionLoadError: If operation fails.
|
|
543
548
|
"""
|
|
549
|
+
m = "The load function is deprecated from version 3.8.0 onwards and is a no-op from version 3.9.0 onwards." # noqa: E501
|
|
550
|
+
warn(m, DeprecationWarning, stacklevel=2)
|
|
551
|
+
|
|
544
552
|
request = Request(method="put", endpoint=f"/_api/collection/{self.name}/load")
|
|
545
553
|
|
|
546
554
|
def response_handler(resp: Response) -> bool:
|
|
@@ -553,10 +561,18 @@ class Collection(ApiGroup):
|
|
|
553
561
|
def unload(self) -> Result[bool]:
|
|
554
562
|
"""Unload the collection from memory.
|
|
555
563
|
|
|
564
|
+
.. note::
|
|
565
|
+
The unload function is deprecated from version 3.8.0 onwards and is a
|
|
566
|
+
no-op from version 3.9.0 onwards. It should no longer be used, as it
|
|
567
|
+
may be removed in a future version of ArangoDB.
|
|
568
|
+
|
|
556
569
|
:return: True if collection was unloaded successfully.
|
|
557
570
|
:rtype: bool
|
|
558
571
|
:raise arango.exceptions.CollectionUnloadError: If operation fails.
|
|
559
572
|
"""
|
|
573
|
+
m = "The unload function is deprecated from version 3.8.0 onwards and is a no-op from version 3.9.0 onwards." # noqa: E501
|
|
574
|
+
warn(m, DeprecationWarning, stacklevel=2)
|
|
575
|
+
|
|
560
576
|
request = Request(method="put", endpoint=f"/_api/collection/{self.name}/unload")
|
|
561
577
|
|
|
562
578
|
def response_handler(resp: Response) -> bool:
|
|
@@ -27,6 +27,7 @@ from arango.exceptions import (
|
|
|
27
27
|
AsyncJobListError,
|
|
28
28
|
CollectionCreateError,
|
|
29
29
|
CollectionDeleteError,
|
|
30
|
+
CollectionKeyGeneratorsError,
|
|
30
31
|
CollectionListError,
|
|
31
32
|
DatabaseCompactError,
|
|
32
33
|
DatabaseCreateError,
|
|
@@ -44,6 +45,7 @@ from arango.exceptions import (
|
|
|
44
45
|
PermissionResetError,
|
|
45
46
|
PermissionUpdateError,
|
|
46
47
|
ServerAvailableOptionsGetError,
|
|
48
|
+
ServerCheckAvailabilityError,
|
|
47
49
|
ServerCurrentOptionsGetError,
|
|
48
50
|
ServerDetailsError,
|
|
49
51
|
ServerEchoError,
|
|
@@ -444,7 +446,7 @@ class Database(ApiGroup):
|
|
|
444
446
|
:type force: bool
|
|
445
447
|
:return: Server license.
|
|
446
448
|
:rtype: dict
|
|
447
|
-
:raise arango.exceptions.
|
|
449
|
+
:raise arango.exceptions.ServerLicenseSetError: If retrieval fails.
|
|
448
450
|
"""
|
|
449
451
|
request = Request(
|
|
450
452
|
method="put",
|
|
@@ -480,6 +482,25 @@ class Database(ApiGroup):
|
|
|
480
482
|
|
|
481
483
|
return self._execute(request, response_handler)
|
|
482
484
|
|
|
485
|
+
def check_availability(self) -> Result[str]:
|
|
486
|
+
"""Return ArangoDB server availability mode.
|
|
487
|
+
|
|
488
|
+
:return: Server availability mode ("readonly" or "default").
|
|
489
|
+
:rtype: str
|
|
490
|
+
:raise arango.exceptions.ServerCheckAvailabilityError: If retrieval fails.
|
|
491
|
+
"""
|
|
492
|
+
request = Request(
|
|
493
|
+
method="get",
|
|
494
|
+
endpoint="/_admin/server/availability",
|
|
495
|
+
)
|
|
496
|
+
|
|
497
|
+
def response_handler(resp: Response) -> str:
|
|
498
|
+
if not resp.is_success:
|
|
499
|
+
raise ServerCheckAvailabilityError(resp, request)
|
|
500
|
+
return str(resp.body["mode"])
|
|
501
|
+
|
|
502
|
+
return self._execute(request, response_handler)
|
|
503
|
+
|
|
483
504
|
def compact(
|
|
484
505
|
self,
|
|
485
506
|
change_level: Optional[bool] = None,
|
|
@@ -1068,6 +1089,7 @@ class Database(ApiGroup):
|
|
|
1068
1089
|
|
|
1069
1090
|
:return: Server metrics in Prometheus format.
|
|
1070
1091
|
:rtype: str
|
|
1092
|
+
:raise arango.exceptions.ServerMetricsError: If operation fails.
|
|
1071
1093
|
"""
|
|
1072
1094
|
request = Request(method="get", endpoint="/_admin/metrics/v2")
|
|
1073
1095
|
|
|
@@ -1623,6 +1645,23 @@ class Database(ApiGroup):
|
|
|
1623
1645
|
|
|
1624
1646
|
return self._execute(request, response_handler)
|
|
1625
1647
|
|
|
1648
|
+
def key_generators(self) -> Result[List[str]]:
|
|
1649
|
+
"""Returns the available key generators for collections.
|
|
1650
|
+
|
|
1651
|
+
:return: List of available key generators.
|
|
1652
|
+
:rtype: [str]
|
|
1653
|
+
:raise arango.exceptions.CollectionKeyGeneratorsError: If retrieval fails.
|
|
1654
|
+
""" # noqa: E501
|
|
1655
|
+
request = Request(method="get", endpoint="/_api/key-generators")
|
|
1656
|
+
|
|
1657
|
+
def response_handler(resp: Response) -> List[str]:
|
|
1658
|
+
if not resp.is_success:
|
|
1659
|
+
raise CollectionKeyGeneratorsError(resp, request)
|
|
1660
|
+
result: List[str] = resp.body["keyGenerators"]
|
|
1661
|
+
return result
|
|
1662
|
+
|
|
1663
|
+
return self._execute(request, response_handler)
|
|
1664
|
+
|
|
1626
1665
|
####################
|
|
1627
1666
|
# Graph Management #
|
|
1628
1667
|
####################
|
|
@@ -298,6 +298,10 @@ class CollectionTruncateError(ArangoServerError):
|
|
|
298
298
|
"""Failed to truncate collection."""
|
|
299
299
|
|
|
300
300
|
|
|
301
|
+
class CollectionKeyGeneratorsError(ArangoServerError):
|
|
302
|
+
"""Failed to retrieve key generators."""
|
|
303
|
+
|
|
304
|
+
|
|
301
305
|
class CollectionLoadError(ArangoServerError):
|
|
302
306
|
"""Failed to load collection."""
|
|
303
307
|
|
|
@@ -650,6 +654,10 @@ class ServerTimeError(ArangoServerError):
|
|
|
650
654
|
"""Failed to retrieve server system time."""
|
|
651
655
|
|
|
652
656
|
|
|
657
|
+
class ServerCheckAvailabilityError(ArangoServerError):
|
|
658
|
+
"""Failed to retrieve server availability mode."""
|
|
659
|
+
|
|
660
|
+
|
|
653
661
|
class ServerEchoError(ArangoServerError):
|
|
654
662
|
"""Failed to retrieve details on last request."""
|
|
655
663
|
|
|
@@ -12,7 +12,7 @@ def normalize_headers(
|
|
|
12
12
|
if driver_flags is not None:
|
|
13
13
|
for flag in driver_flags:
|
|
14
14
|
flags = flags + flag + ";"
|
|
15
|
-
driver_version = "8.2.
|
|
15
|
+
driver_version = "8.2.2"
|
|
16
16
|
driver_header = "python-arango/" + driver_version + " (" + flags + ")"
|
|
17
17
|
normalized_headers: Headers = {
|
|
18
18
|
"charset": "utf-8",
|
|
@@ -83,9 +83,9 @@ information, refer to `ArangoDB manual`_.
|
|
|
83
83
|
foxx.readme(service_mount)
|
|
84
84
|
foxx.swagger(service_mount)
|
|
85
85
|
foxx.download(service_mount)
|
|
86
|
-
foxx.commit(
|
|
86
|
+
foxx.commit()
|
|
87
87
|
foxx.scripts(service_mount)
|
|
88
|
-
foxx.run_script(service_mount, 'setup',
|
|
88
|
+
foxx.run_script(service_mount, 'setup', {})
|
|
89
89
|
foxx.run_tests(service_mount, reporter='xunit', output_format='xml')
|
|
90
90
|
|
|
91
91
|
# Delete a service.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-arango
|
|
3
|
-
Version: 8.2.
|
|
3
|
+
Version: 8.2.2
|
|
4
4
|
Summary: Python Driver for ArangoDB
|
|
5
5
|
Author-email: Joohwan Oh <joohwan.oh@outlook.com>
|
|
6
6
|
Maintainer-email: Joohwan Oh <joohwan.oh@outlook.com>, Alexandru Petenchea <alex.petenchea@gmail.com>, Anthony Mahanna <anthony.mahanna@arangodb.com>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|