python-arango 8.3.4__tar.gz → 8.3.5__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.
Files changed (98) hide show
  1. {python_arango-8.3.4 → python_arango-8.3.5}/.circleci/config.yml +10 -3
  2. {python_arango-8.3.4 → python_arango-8.3.5}/.github/workflows/codeql.yaml +3 -5
  3. python_arango-8.3.5/.github/workflows/docs.yaml +47 -0
  4. {python_arango-8.3.4 → python_arango-8.3.5}/.github/workflows/pypi.yaml +6 -18
  5. {python_arango-8.3.4/python_arango.egg-info → python_arango-8.3.5}/PKG-INFO +3 -4
  6. {python_arango-8.3.4 → python_arango-8.3.5}/README.md +1 -1
  7. {python_arango-8.3.4 → python_arango-8.3.5}/arango/collection.py +14 -2
  8. {python_arango-8.3.4 → python_arango-8.3.5}/arango/connection.py +1 -2
  9. {python_arango-8.3.4 → python_arango-8.3.5}/arango/formatter.py +4 -0
  10. python_arango-8.3.5/arango/version.py +1 -0
  11. {python_arango-8.3.4 → python_arango-8.3.5}/docs/foxx.rst +1 -1
  12. {python_arango-8.3.4 → python_arango-8.3.5}/docs/index.rst +1 -1
  13. {python_arango-8.3.4 → python_arango-8.3.5}/docs/indexes.rst +39 -0
  14. {python_arango-8.3.4 → python_arango-8.3.5}/pyproject.toml +1 -2
  15. {python_arango-8.3.4 → python_arango-8.3.5/python_arango.egg-info}/PKG-INFO +3 -4
  16. {python_arango-8.3.4 → python_arango-8.3.5}/python_arango.egg-info/SOURCES.txt +0 -1
  17. {python_arango-8.3.4 → python_arango-8.3.5}/python_arango.egg-info/requires.txt +1 -1
  18. {python_arango-8.3.4 → python_arango-8.3.5}/python_arango.egg-info/scm_file_list.json +0 -1
  19. python_arango-8.3.5/python_arango.egg-info/scm_version.json +8 -0
  20. {python_arango-8.3.4 → python_arango-8.3.5}/starter.sh +2 -2
  21. python_arango-8.3.4/.github/workflows/docs.yaml +0 -103
  22. python_arango-8.3.4/arango/version.py +0 -1
  23. python_arango-8.3.4/ci/conftest.py +0 -1
  24. python_arango-8.3.4/python_arango.egg-info/scm_version.json +0 -8
  25. {python_arango-8.3.4 → python_arango-8.3.5}/.gitignore +0 -0
  26. {python_arango-8.3.4 → python_arango-8.3.5}/.pre-commit-config.yaml +0 -0
  27. {python_arango-8.3.4 → python_arango-8.3.5}/.readthedocs.yaml +0 -0
  28. {python_arango-8.3.4 → python_arango-8.3.5}/CONTRIBUTING.md +0 -0
  29. {python_arango-8.3.4 → python_arango-8.3.5}/LICENSE +0 -0
  30. {python_arango-8.3.4 → python_arango-8.3.5}/MANIFEST.in +0 -0
  31. {python_arango-8.3.4 → python_arango-8.3.5}/arango/__init__.py +0 -0
  32. {python_arango-8.3.4 → python_arango-8.3.5}/arango/api.py +0 -0
  33. {python_arango-8.3.4 → python_arango-8.3.5}/arango/aql.py +0 -0
  34. {python_arango-8.3.4 → python_arango-8.3.5}/arango/backup.py +0 -0
  35. {python_arango-8.3.4 → python_arango-8.3.5}/arango/client.py +0 -0
  36. {python_arango-8.3.4 → python_arango-8.3.5}/arango/cluster.py +0 -0
  37. {python_arango-8.3.4 → python_arango-8.3.5}/arango/cursor.py +0 -0
  38. {python_arango-8.3.4 → python_arango-8.3.5}/arango/database.py +0 -0
  39. {python_arango-8.3.4 → python_arango-8.3.5}/arango/errno.py +0 -0
  40. {python_arango-8.3.4 → python_arango-8.3.5}/arango/exceptions.py +0 -0
  41. {python_arango-8.3.4 → python_arango-8.3.5}/arango/executor.py +0 -0
  42. {python_arango-8.3.4 → python_arango-8.3.5}/arango/foxx.py +0 -0
  43. {python_arango-8.3.4 → python_arango-8.3.5}/arango/graph.py +0 -0
  44. {python_arango-8.3.4 → python_arango-8.3.5}/arango/http.py +0 -0
  45. {python_arango-8.3.4 → python_arango-8.3.5}/arango/job.py +0 -0
  46. {python_arango-8.3.4 → python_arango-8.3.5}/arango/pregel.py +0 -0
  47. {python_arango-8.3.4 → python_arango-8.3.5}/arango/py.typed +0 -0
  48. {python_arango-8.3.4 → python_arango-8.3.5}/arango/replication.py +0 -0
  49. {python_arango-8.3.4 → python_arango-8.3.5}/arango/request.py +0 -0
  50. {python_arango-8.3.4 → python_arango-8.3.5}/arango/resolver.py +0 -0
  51. {python_arango-8.3.4 → python_arango-8.3.5}/arango/response.py +0 -0
  52. {python_arango-8.3.4 → python_arango-8.3.5}/arango/result.py +0 -0
  53. {python_arango-8.3.4 → python_arango-8.3.5}/arango/typings.py +0 -0
  54. {python_arango-8.3.4 → python_arango-8.3.5}/arango/utils.py +0 -0
  55. {python_arango-8.3.4 → python_arango-8.3.5}/arango/wal.py +0 -0
  56. {python_arango-8.3.4 → python_arango-8.3.5}/docs/Makefile +0 -0
  57. {python_arango-8.3.4 → python_arango-8.3.5}/docs/admin.rst +0 -0
  58. {python_arango-8.3.4 → python_arango-8.3.5}/docs/analyzer.rst +0 -0
  59. {python_arango-8.3.4 → python_arango-8.3.5}/docs/aql.rst +0 -0
  60. {python_arango-8.3.4 → python_arango-8.3.5}/docs/async.rst +0 -0
  61. {python_arango-8.3.4 → python_arango-8.3.5}/docs/auth.rst +0 -0
  62. {python_arango-8.3.4 → python_arango-8.3.5}/docs/backup.rst +0 -0
  63. {python_arango-8.3.4 → python_arango-8.3.5}/docs/batch.rst +0 -0
  64. {python_arango-8.3.4 → python_arango-8.3.5}/docs/certificates.rst +0 -0
  65. {python_arango-8.3.4 → python_arango-8.3.5}/docs/cluster.rst +0 -0
  66. {python_arango-8.3.4 → python_arango-8.3.5}/docs/collection.rst +0 -0
  67. {python_arango-8.3.4 → python_arango-8.3.5}/docs/compression.rst +0 -0
  68. {python_arango-8.3.4 → python_arango-8.3.5}/docs/conf.py +0 -0
  69. {python_arango-8.3.4 → python_arango-8.3.5}/docs/contributing.rst +0 -0
  70. {python_arango-8.3.4 → python_arango-8.3.5}/docs/cursor.rst +0 -0
  71. {python_arango-8.3.4 → python_arango-8.3.5}/docs/database.rst +0 -0
  72. {python_arango-8.3.4 → python_arango-8.3.5}/docs/document.rst +0 -0
  73. {python_arango-8.3.4 → python_arango-8.3.5}/docs/errno.rst +0 -0
  74. {python_arango-8.3.4 → python_arango-8.3.5}/docs/errors.rst +0 -0
  75. {python_arango-8.3.4 → python_arango-8.3.5}/docs/graph.rst +0 -0
  76. {python_arango-8.3.4 → python_arango-8.3.5}/docs/http.rst +0 -0
  77. {python_arango-8.3.4 → python_arango-8.3.5}/docs/logging.rst +0 -0
  78. {python_arango-8.3.4 → python_arango-8.3.5}/docs/make.bat +0 -0
  79. {python_arango-8.3.4 → python_arango-8.3.5}/docs/overload.rst +0 -0
  80. {python_arango-8.3.4 → python_arango-8.3.5}/docs/overview.rst +0 -0
  81. {python_arango-8.3.4 → python_arango-8.3.5}/docs/pregel.rst +0 -0
  82. {python_arango-8.3.4 → python_arango-8.3.5}/docs/replication.rst +0 -0
  83. {python_arango-8.3.4 → python_arango-8.3.5}/docs/requirements.txt +0 -0
  84. {python_arango-8.3.4 → python_arango-8.3.5}/docs/schema.rst +0 -0
  85. {python_arango-8.3.4 → python_arango-8.3.5}/docs/serializer.rst +0 -0
  86. {python_arango-8.3.4 → python_arango-8.3.5}/docs/simple.rst +0 -0
  87. {python_arango-8.3.4 → python_arango-8.3.5}/docs/specs.rst +0 -0
  88. {python_arango-8.3.4 → python_arango-8.3.5}/docs/static/logo.png +0 -0
  89. {python_arango-8.3.4 → python_arango-8.3.5}/docs/task.rst +0 -0
  90. {python_arango-8.3.4 → python_arango-8.3.5}/docs/threading.rst +0 -0
  91. {python_arango-8.3.4 → python_arango-8.3.5}/docs/transaction.rst +0 -0
  92. {python_arango-8.3.4 → python_arango-8.3.5}/docs/user.rst +0 -0
  93. {python_arango-8.3.4 → python_arango-8.3.5}/docs/view.rst +0 -0
  94. {python_arango-8.3.4 → python_arango-8.3.5}/docs/wal.rst +0 -0
  95. {python_arango-8.3.4 → python_arango-8.3.5}/python_arango.egg-info/dependency_links.txt +0 -0
  96. {python_arango-8.3.4 → python_arango-8.3.5}/python_arango.egg-info/top_level.txt +0 -0
  97. {python_arango-8.3.4 → python_arango-8.3.5}/setup.cfg +0 -0
  98. {python_arango-8.3.4 → python_arango-8.3.5}/setup.py +0 -0
@@ -37,12 +37,19 @@ workflows:
37
37
  arangodb_image: ["arangodb/enterprise:3.12"]
38
38
  arangodb_conf_version: ["3.12"]
39
39
  - integration-test:
40
- name: ArangoDB (enterprise-preview, 4.0-nightly << matrix.arangodb_config >>)
40
+ name: ArangoDB (core-preview, 4.0-nightly << matrix.arangodb_config >>)
41
+ matrix:
42
+ parameters:
43
+ arangodb_config: [ "single", "cluster" ]
44
+ arangodb_image: [ "arangodb/core-preview:4.0-nightly" ]
45
+ arangodb_conf_version: [ "4.0" ]
46
+ - integration-test:
47
+ name: ArangoDB (enterprise-preview, 3.12-nightly << matrix.arangodb_config >>)
41
48
  matrix:
42
49
  parameters:
43
50
  arangodb_config: ["single", "cluster"]
44
- arangodb_image: ["arangodb/enterprise-preview:4.0-nightly"]
45
- arangodb_conf_version: ["4.0"]
51
+ arangodb_image: ["arangodb/enterprise-preview:3.12-nightly"]
52
+ arangodb_conf_version: ["3.12"]
46
53
 
47
54
  jobs:
48
55
  lint:
@@ -3,8 +3,6 @@ name: CodeQL
3
3
  on:
4
4
  pull_request:
5
5
  branches: [main]
6
- schedule:
7
- - cron: '21 2 * * 3'
8
6
 
9
7
  jobs:
10
8
  analyze:
@@ -16,10 +14,10 @@ jobs:
16
14
 
17
15
  steps:
18
16
  - name: Checkout repository
19
- uses: actions/checkout@v3
17
+ uses: actions/checkout@v7
20
18
 
21
19
  - name: Initialize CodeQL
22
- uses: github/codeql-action/init@v2
20
+ uses: github/codeql-action/init@v4
23
21
 
24
22
  - name: Perform CodeQL Analysis
25
- uses: github/codeql-action/analyze@v2
23
+ uses: github/codeql-action/analyze@v4
@@ -0,0 +1,47 @@
1
+ name: Docs
2
+
3
+ on:
4
+ pull_request:
5
+ workflow_dispatch:
6
+
7
+ jobs:
8
+ docs:
9
+ runs-on: ubuntu-latest
10
+ name: Docs
11
+
12
+ steps:
13
+ - name: Checkout repository
14
+ uses: actions/checkout@v7
15
+
16
+ - name: Fetch all tags and branches
17
+ run: git fetch --prune --unshallow
18
+
19
+ - name: Create ArangoDB Docker container
20
+ run: >
21
+ docker create --name arango -p 8529:8529 -e ARANGO_ROOT_PASSWORD=passwd -v "$(pwd)/tests/static/":/tests/static
22
+ arangodb/enterprise:latest --server.jwt-secret-keyfile=/tests/static/keyfile --vector-index=true
23
+
24
+ - name: Start ArangoDB Docker container
25
+ run: docker start arango
26
+
27
+ - name: Wait for ArangoDB
28
+ run: |
29
+ for _ in {1..30}; do
30
+ if curl --fail --silent --user root:passwd http://localhost:8529/_api/version > /dev/null; then
31
+ exit 0
32
+ fi
33
+ sleep 1
34
+ done
35
+ docker logs arango
36
+ exit 1
37
+
38
+ - name: Set up Python
39
+ uses: actions/setup-python@v7
40
+ with:
41
+ python-version: '3.12'
42
+
43
+ - name: Install dependencies
44
+ run: pip install .[dev]
45
+
46
+ - name: Run Sphinx doctest
47
+ run: python -m sphinx -b doctest docs docs/_build
@@ -3,13 +3,6 @@ name: Upload to PyPI
3
3
  on:
4
4
  release:
5
5
  types: [published]
6
- workflow_dispatch:
7
- inputs:
8
- debug_enabled:
9
- type: boolean
10
- description: Debug with tmate
11
- required: false
12
- default: false
13
6
 
14
7
  jobs:
15
8
  upload:
@@ -17,19 +10,14 @@ jobs:
17
10
 
18
11
  steps:
19
12
  - name: Checkout repository
20
- uses: actions/checkout@v3
21
-
22
- - name: Fetch all tags and branches
23
- run: git fetch --prune --unshallow
24
-
25
- - name: Set up Python
26
- uses: actions/setup-python@v4
13
+ uses: actions/checkout@v7
27
14
  with:
28
- python-version: "3.10"
15
+ fetch-depth: 0
16
+ fetch-tags: true
29
17
 
30
- - name: Debug with tmate
31
- uses: mxschmitt/action-tmate@v3
32
- if: ${{ github.event_name == 'workflow_dispatch' && inputs.debug_enabled }}
18
+ - uses: actions/setup-python@v7
19
+ with:
20
+ python-version: "3.12"
33
21
 
34
22
  - name: Install dependencies
35
23
  run: |
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-arango
3
- Version: 8.3.4
3
+ Version: 8.3.5
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,6 @@ Classifier: License :: OSI Approved :: MIT License
33
33
  Classifier: Natural Language :: English
34
34
  Classifier: Operating System :: OS Independent
35
35
  Classifier: Programming Language :: Python :: 3
36
- Classifier: Programming Language :: Python :: 3.9
37
36
  Classifier: Programming Language :: Python :: 3.10
38
37
  Classifier: Programming Language :: Python :: 3.11
39
38
  Classifier: Programming Language :: Python :: 3.12
@@ -48,7 +47,7 @@ Requires-Dist: requests_toolbelt
48
47
  Requires-Dist: PyJWT>=2.10.0
49
48
  Requires-Dist: packaging>=23.1
50
49
  Provides-Extra: dev
51
- Requires-Dist: black==26.1.0; extra == "dev"
50
+ Requires-Dist: black==26.5.1; extra == "dev"
52
51
  Requires-Dist: flake8==7.3.0; extra == "dev"
53
52
  Requires-Dist: isort==5.10.1; extra == "dev"
54
53
  Requires-Dist: mypy==1.15.0; extra == "dev"
@@ -89,7 +88,7 @@ If you're interested in using asyncio, please check [python-arango-async](https:
89
88
  ## Requirements
90
89
 
91
90
  - ArangoDB version 3.11+
92
- - Python version 3.9+
91
+ - Python version 3.10+
93
92
 
94
93
  ## Installation
95
94
 
@@ -24,7 +24,7 @@ If you're interested in using asyncio, please check [python-arango-async](https:
24
24
  ## Requirements
25
25
 
26
26
  - ArangoDB version 3.11+
27
- - Python version 3.9+
27
+ - Python version 3.10+
28
28
 
29
29
  ## Installation
30
30
 
@@ -1274,17 +1274,29 @@ class Collection(ApiGroup):
1274
1274
  # Index Management #
1275
1275
  ####################
1276
1276
 
1277
- def indexes(self) -> Result[Jsons]:
1277
+ def indexes(
1278
+ self, with_stats: bool = False, with_hidden: bool = False
1279
+ ) -> Result[Jsons]:
1278
1280
  """Return the collection indexes.
1279
1281
 
1282
+ :param with_stats: Whether to include figures and estimates in the result.
1283
+ :type with_stats: bool
1284
+ :param with_hidden: Whether to include hidden indexes in the result.
1285
+ :type with_hidden: bool
1280
1286
  :return: Collection indexes.
1281
1287
  :rtype: [dict]
1282
1288
  :raise arango.exceptions.IndexListError: If retrieval fails.
1283
1289
  """
1290
+ params: Params = {"collection": self.name}
1291
+ if with_stats:
1292
+ params["withStats"] = True
1293
+ if with_hidden:
1294
+ params["withHidden"] = True
1295
+
1284
1296
  request = Request(
1285
1297
  method="get",
1286
1298
  endpoint="/_api/index",
1287
- params={"collection": self.name},
1299
+ params=params,
1288
1300
  )
1289
1301
 
1290
1302
  def response_handler(resp: Response) -> Jsons:
@@ -120,8 +120,7 @@ class BaseConnection:
120
120
  else:
121
121
  resp.body = resp.raw_body
122
122
 
123
- http_ok = 200 <= resp.status_code < 300
124
- resp.is_success = http_ok and resp.error_code is None
123
+ resp.is_success = 200 <= resp.status_code < 300
125
124
  return resp
126
125
 
127
126
  def process_request(
@@ -73,6 +73,8 @@ def format_index(body: Json, formatter: bool = True) -> Json:
73
73
  result["cacheEnabled"] = body["cacheEnabled"]
74
74
  if "legacyPolygons" in body:
75
75
  result["legacyPolygons"] = body["legacyPolygons"]
76
+ if "figures" in body:
77
+ result["figures"] = body["figures"]
76
78
  if "estimates" in body:
77
79
  result["estimates"] = body["estimates"]
78
80
  if "analyzer" in body:
@@ -123,6 +125,8 @@ def format_index(body: Json, formatter: bool = True) -> Json:
123
125
  result["error_message"] = body["errorMessage"]
124
126
  if "trainingState" in body:
125
127
  result["training_state"] = body["trainingState"]
128
+ if "shards" in body:
129
+ result["shards"] = body["shards"]
126
130
 
127
131
  return verify_format(body, result)
128
132
 
@@ -0,0 +1 @@
1
+ __version__ = "8.3.5"
@@ -13,7 +13,7 @@ information, refer to `ArangoDB manual`_.
13
13
 
14
14
  **Example:**
15
15
 
16
- .. testcode::
16
+ .. code-block:: python
17
17
 
18
18
  from arango import ArangoClient
19
19
 
@@ -13,7 +13,7 @@ Requirements
13
13
  =============
14
14
 
15
15
  - ArangoDB version 3.11+
16
- - Python version 3.9+
16
+ - Python version 3.10+
17
17
 
18
18
  Installation
19
19
  ============
@@ -62,4 +62,43 @@ on fields ``_from`` and ``_to``. For more information on indexes, refer to
62
62
  # Delete the last index from the collection.
63
63
  cities.delete_index(index['id'])
64
64
 
65
+ # Insert documents with vector embeddings.
66
+ cities.insert_many([
67
+ {
68
+ '_key': f'city{i}',
69
+ 'continent': f'continent{i}',
70
+ 'country': f'country{i}',
71
+ 'population': i,
72
+ 'coordinates': [float(i % 180), float(i % 90)],
73
+ 'x': float(i),
74
+ 'y': float(i),
75
+ 'embedding': [float(i), float(i % 7), float(i % 11), 1.0],
76
+ }
77
+ for i in range(100)
78
+ ])
79
+
80
+ # Let ArangoDB determine the number of vector-index centroids.
81
+ vector_index = cities.add_index({
82
+ 'type': 'vector',
83
+ 'fields': ['embedding'],
84
+ 'name': 'vector_index',
85
+ 'params': {
86
+ 'metric': 'cosine',
87
+ 'dimension': 4,
88
+ },
89
+ })
90
+
91
+ # Index creation may succeed even if vector training fails.
92
+ if vector_index.get('trainingState') != 'ready':
93
+ raise RuntimeError(
94
+ vector_index.get('errorMessage', 'Vector index is not ready')
95
+ )
96
+
97
+ Omitted or scaling-object ``nLists``, ``numberOfDocsPerCentroid``, factory
98
+ placeholders such as ``IVF{},Flat``, and successful-but-unusable creation
99
+ behavior require ArangoDB 3.12.10 or later. A successful creation response
100
+ means that the index exists, but callers should check ``trainingState`` before
101
+ using it. If training fails permanently, the state is ``"unusable"`` and
102
+ ``errorMessage`` describes the failure.
103
+
65
104
  See :ref:`StandardCollection` for API specification.
@@ -26,7 +26,6 @@ classifiers = [
26
26
  "Natural Language :: English",
27
27
  "Operating System :: OS Independent",
28
28
  "Programming Language :: Python :: 3",
29
- "Programming Language :: Python :: 3.9",
30
29
  "Programming Language :: Python :: 3.10",
31
30
  "Programming Language :: Python :: 3.11",
32
31
  "Programming Language :: Python :: 3.12",
@@ -47,7 +46,7 @@ version = { attr = "arango.version.__version__" }
47
46
 
48
47
  [project.optional-dependencies]
49
48
  dev = [
50
- "black==26.1.0",
49
+ "black==26.5.1",
51
50
  "flake8==7.3.0",
52
51
  "isort==5.10.1",
53
52
  "mypy==1.15.0",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-arango
3
- Version: 8.3.4
3
+ Version: 8.3.5
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,6 @@ Classifier: License :: OSI Approved :: MIT License
33
33
  Classifier: Natural Language :: English
34
34
  Classifier: Operating System :: OS Independent
35
35
  Classifier: Programming Language :: Python :: 3
36
- Classifier: Programming Language :: Python :: 3.9
37
36
  Classifier: Programming Language :: Python :: 3.10
38
37
  Classifier: Programming Language :: Python :: 3.11
39
38
  Classifier: Programming Language :: Python :: 3.12
@@ -48,7 +47,7 @@ Requires-Dist: requests_toolbelt
48
47
  Requires-Dist: PyJWT>=2.10.0
49
48
  Requires-Dist: packaging>=23.1
50
49
  Provides-Extra: dev
51
- Requires-Dist: black==26.1.0; extra == "dev"
50
+ Requires-Dist: black==26.5.1; extra == "dev"
52
51
  Requires-Dist: flake8==7.3.0; extra == "dev"
53
52
  Requires-Dist: isort==5.10.1; extra == "dev"
54
53
  Requires-Dist: mypy==1.15.0; extra == "dev"
@@ -89,7 +88,7 @@ If you're interested in using asyncio, please check [python-arango-async](https:
89
88
  ## Requirements
90
89
 
91
90
  - ArangoDB version 3.11+
92
- - Python version 3.9+
91
+ - Python version 3.10+
93
92
 
94
93
  ## Installation
95
94
 
@@ -42,7 +42,6 @@ arango/typings.py
42
42
  arango/utils.py
43
43
  arango/version.py
44
44
  arango/wal.py
45
- ci/conftest.py
46
45
  docs/Makefile
47
46
  docs/admin.rst
48
47
  docs/analyzer.rst
@@ -5,7 +5,7 @@ PyJWT>=2.10.0
5
5
  packaging>=23.1
6
6
 
7
7
  [dev]
8
- black==26.1.0
8
+ black==26.5.1
9
9
  flake8==7.3.0
10
10
  isort==5.10.1
11
11
  mypy==1.15.0
@@ -40,7 +40,6 @@
40
40
  "arango/utils.py",
41
41
  "arango/version.py",
42
42
  "arango/wal.py",
43
- "ci/conftest.py",
44
43
  "docs/Makefile",
45
44
  "docs/admin.rst",
46
45
  "docs/analyzer.rst",
@@ -0,0 +1,8 @@
1
+ {
2
+ "tag": "8.3.5",
3
+ "distance": 0,
4
+ "node": "ga90d0b72830ee6a7db388833e77110a53fe59708",
5
+ "dirty": false,
6
+ "branch": "HEAD",
7
+ "node_date": "2026-08-31"
8
+ }
@@ -8,8 +8,8 @@
8
8
  # ./starter.sh [single|cluster] [image[:tag]]
9
9
  # Example:
10
10
  # ./starter.sh cluster enterprise 3.12.4
11
- # ./starter.sh single enterprise-preview 4.0-nightly
12
- # ./starter.sh single arangodb/enterprise-preview:4.0-nightly
11
+ # ./starter.sh single core-preview 4.0-nightly
12
+ # ./starter.sh single arangodb/enterprise-preview:3.12-nightly
13
13
 
14
14
  setup="${1:-single}"
15
15
  image="${2:-community}"
@@ -1,103 +0,0 @@
1
- name: Docs
2
-
3
- on:
4
- pull_request:
5
- workflow_dispatch:
6
- inputs:
7
- debug_enabled:
8
- type: boolean
9
- description: Debug with tmate
10
- required: false
11
- default: false
12
-
13
- jobs:
14
- # This has been migrated to CircleCI
15
- # test:
16
- # runs-on: ubuntu-latest
17
-
18
- # strategy:
19
- # fail-fast: false
20
- # matrix:
21
- # python_version: ["3.10"] #["3.8", "3.9", "3.10", "3.11", "3.12"]
22
- # arangodb_config: ["single", "cluster"]
23
- # arangodb_license: ["community", "enterprise"]
24
- # arangodb_version: ["3.10.10", "3.11.4", "latest"]
25
-
26
- # name: Test (${{ matrix.python_version }}:${{ matrix.arangodb_config }}:${{ matrix.arangodb_license }}:${{ matrix.arangodb_version }})
27
-
28
- # steps:
29
- # - name: Checkout code
30
- # uses: actions/checkout@v4
31
-
32
- # - name: Set up Python
33
- # uses: actions/setup-python@v4
34
- # with:
35
- # python-version: ${{ matrix.python_version }}
36
-
37
- # - name: Setup ArangoDB
38
- # run: |
39
- # chmod +x starter.sh
40
- # ./starter.sh ${{ matrix.arangodb_config }} ${{ matrix.arangodb_license }} ${{ matrix.arangodb_version }}
41
-
42
- # - name: Install Dependencies
43
- # run: pip install -e .[dev]
44
-
45
- # - name: List Docker Containers
46
- # run: docker ps -a
47
-
48
- # - name: Pytest
49
- # run: |
50
- # args=("--host" "localhost" "--port=8529")
51
-
52
- # if [ ${{ matrix.arangodb_config }} = "cluster" ]; then
53
- # args+=("--cluster" "--port=8539" "--port=8549")
54
- # fi
55
-
56
- # if [ ${{ matrix.arangodb_license }} = "enterprise" ]; then
57
- # args+=("--enterprise")
58
- # fi
59
-
60
- # echo "Running pytest with args: ${args[@]}"
61
- # pytest --cov=arango --cov-report=xml "${args[@]}"
62
-
63
- docs:
64
- runs-on: ubuntu-latest
65
-
66
- name: Docs
67
-
68
- steps:
69
- - name: Checkout repository
70
- uses: actions/checkout@v4
71
-
72
- - name: Fetch all tags and branches
73
- run: git fetch --prune --unshallow
74
-
75
- - name: Create ArangoDB Docker container
76
- run: >
77
- docker create --name arango -p 8529:8529 -e ARANGO_ROOT_PASSWORD=passwd -v "$(pwd)/tests/static/":/tests/static
78
- arangodb/arangodb:latest --server.jwt-secret-keyfile=/tests/static/keyfile
79
-
80
- - name: Start ArangoDB Docker container
81
- run: docker start arango
82
-
83
- - name: Set up Python
84
- uses: actions/setup-python@v4
85
- with:
86
- python-version: '3.10'
87
-
88
- - name: Debug with tmate
89
- uses: mxschmitt/action-tmate@v3
90
- if: ${{ github.event_name == 'workflow_dispatch' && inputs.debug_enabled }}
91
-
92
- - name: Run pre-commit checks
93
- uses: pre-commit/action@v3.0.0
94
-
95
- - name: Install dependencies
96
- run: pip install .[dev]
97
-
98
- - name: Run Sphinx doctest
99
- run: python -m sphinx -b doctest docs docs/_build
100
-
101
- # No longer needed as this is handled by Read the Docs
102
- #- name: Generate Sphinx HTML
103
- # run: python -m sphinx -b html -W docs docs/_build
@@ -1 +0,0 @@
1
- __version__ = "8.3.4"
@@ -1 +0,0 @@
1
- from tests.conftest import * # noqa: F401,F403
@@ -1,8 +0,0 @@
1
- {
2
- "tag": "8.3.4",
3
- "distance": 0,
4
- "node": "ga0e06656116c8188cd58aefa5c0766d67bc65d11",
5
- "dirty": false,
6
- "branch": "HEAD",
7
- "node_date": "2026-08-25"
8
- }
File without changes
File without changes
File without changes
File without changes
File without changes