Skip to content
This repository was archived by the owner on Sep 21, 2023. It is now read-only.

Fetch upstream #2

Draft
wants to merge 200 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
200 commits
Select commit Hold shift + click to select a range
16669ba
improve performance of `get_many`
jsteemann Oct 13, 2021
8b35fb4
apply code formatting
jsteemann Oct 13, 2021
1d0ee30
Merge pull request #177 from jsteemann/feature/improve-get_many-perfo…
joowani Oct 13, 2021
cec97a7
Updated repository in setup.py.
joerg84 Dec 3, 2021
4dc2d4b
Added query option for disabled fillBlockCache.
joerg84 Dec 3, 2021
3a36423
Attempt to fix CI (#183)
joerg84 Dec 3, 2021
912090a
Merge branch 'main' into fillBlockCache
aMahanna Dec 3, 2021
18d25a9
Merge branch 'main' into repo
aMahanna Dec 3, 2021
54d03c4
Merge pull request #181 from ArangoDB-Community/repo
joowani Dec 3, 2021
c65f5ee
Merge pull request #182 from ArangoDB-Community/fillBlockCache
joerg84 Dec 5, 2021
1900f4a
feature: host fallback support (#184)
aMahanna Dec 10, 2021
403d74a
adjusts workflow to accommodate drafts (#186)
cw00dw0rd Dec 16, 2021
281797b
initial commit
aMahanna Dec 23, 2021
b448ade
Merge pull request #189 from ArangoDB-Community/feature/fallback-host…
joowani Dec 30, 2021
f4b48a0
Update copyright year. (#190)
joerg84 Jan 6, 2022
77cbc68
Update http.rst (#191)
cw00dw0rd Jan 6, 2022
00b0f9c
Update badge URLs and untrack version.py
joowani Jan 29, 2022
52d5c1b
Add codecov badge URL
joowani Jan 29, 2022
4104cc3
Configure collection properties: add support for replicationFactor + …
maxkernbach Feb 1, 2022
b69a0df
Remove setuptools_scm from dependency and switch back to manual versi…
joowani Apr 1, 2022
daf384e
allow to disable TLS certificate verification
jsteemann Apr 13, 2022
4ff5c4d
black formatting fix
cw00dw0rd Apr 13, 2022
7d8d9e0
Merge pull request #199 from jsteemann/feature/certificate-verification
joerg84 Apr 13, 2022
3da03c7
Bump version to 7.3.3
joowani Apr 16, 2022
fd21695
Update .gitignore with direnv files
joowani Apr 17, 2022
252abe2
[Fix] Make overriding TLS verification optional (#202)
aquamatthias May 5, 2022
1bbcb98
Bump version to 7.3.4
joowani May 8, 2022
097f661
Add back pypi github workflow
joowani May 8, 2022
21c9e5d
Re-introduce setuptools-scm with correct usage (#206)
aMahanna Jun 17, 2022
917f699
Add batch_size parameter in import_bulk method (#207)
aMahanna Jun 24, 2022
76ca077
Prevent batch_size usage when overwrite is set to True in bulk_import
aMahanna Jun 28, 2022
0c51020
Remove discontinued collection export method (#211)
tjoubert Aug 7, 2022
faf1da9
Add new parameters to insert_many method (#212)
dvzubarev Aug 14, 2022
6da57e0
Add 'read_timeout' option in client.py (#213)
tjoubert Aug 17, 2022
17f4e49
Implement 3.10 index API changes (#215)
tjoubert Sep 21, 2022
eba6517
Implement query rules endpoint for ArangoDB version 3.10 (#216)
tjoubert Sep 21, 2022
909317b
Add additional cursor stats properties (#217)
tjoubert Sep 21, 2022
fd38882
Add computedValues to collection (#218)
tjoubert Sep 21, 2022
749cc84
Retrieve all jobs and the new 3.10 details element
tjoubert Sep 26, 2022
82b72d8
Removed deepcopy of detail element
tjoubert Sep 26, 2022
52683da
Removed List import
tjoubert Sep 26, 2022
ef48710
Merge pull request #220 from ArangoDB-Community/DE-361-pregel-api-upd…
tjoubert Sep 26, 2022
3824211
3.10 changes to views, indexes and analyzers (#221)
tjoubert Oct 4, 2022
cfd2122
3.10: Read from Followers (allow dirty read) (#222)
tjoubert Oct 4, 2022
745ad54
Only set computedValues if value exists and is not None (#224)
153957 Oct 13, 2022
d8f9eff
Extended normalize_headers() in request.py
tjoubert Nov 21, 2022
1f95af4
Reformatted files
tjoubert Nov 21, 2022
0de7d51
Re-sorted imports
tjoubert Nov 21, 2022
2219954
Fixed parameter issues
tjoubert Nov 21, 2022
94ba3b2
Fixed test_request.py
tjoubert Nov 21, 2022
86411ef
Fix persistent index creation signature (#229)
aquamatthias Nov 27, 2022
4a66501
Update Github actions and pre-commit config files (#230)
joowani Nov 27, 2022
c30a767
Fixes based on review
tjoubert Nov 29, 2022
008947e
Fixes post-review
tjoubert Nov 29, 2022
131aa4e
Merge pull request #228 from ArangoDB-Community/DE-429-227-header-for…
tjoubert Nov 29, 2022
2c7de35
Add certificates (TLS) in index.rst
joowani Nov 29, 2022
1c7412b
Removed reference to arango.version in request.py (#232)
tjoubert Nov 30, 2022
b9857ba
Fixed format_view to simply return the links
tjoubert Dec 13, 2022
a6daf27
Merge pull request #235 from ArangoDB-Community/view-link-properties
tjoubert Dec 13, 2022
ca2f418
Update github actions yaml files (#239)
joowani Dec 25, 2022
5c5a14d
Update error codes in errno.py
joowani Jan 9, 2023
1ab63c2
Add py.typed PEP 561 guideline (#208)
aMahanna Jan 9, 2023
016d4e3
Fixed view serialization code (#242)
tjoubert Jan 28, 2023
c2ccbb1
Install importlib-metadata if python version is 3.7
joowani Feb 1, 2023
d6d3dab
Upgrade precommit dependencies
joowani Feb 1, 2023
4d72749
Fix black issues in executors.py and test_client.py
joowani Feb 1, 2023
2093a17
Drop support for Python 3.7
joowani Feb 1, 2023
090d7b6
Fix python version badge in README.md
joowani Feb 1, 2023
ee274ff
Added importlib.metadata for version check (#233)
tjoubert Feb 1, 2023
20f9a0e
Added QueueTimeApiExecutor
tjoubert Dec 13, 2022
f731023
Added QueueTimeApiExecutor to exports
tjoubert Dec 13, 2022
7cc99c4
Added EnterpriseGraph example. (#243)
joerg84 Feb 2, 2023
00f6306
Revert "Added importlib.metadata for version check (#233)"
joowani Feb 21, 2023
d7a0b56
Update indexes.rst - fix parameter name
geomat0101 May 15, 2023
91f7895
Sending None instead of empty object
apetenchea May 19, 2023
2db2f34
Fixed spelling
apetenchea May 19, 2023
1c3359d
Adding missing fields since 3.10
apetenchea May 19, 2023
7a70a75
Skipping batch tests, as a few of them are known to fail, and the bat…
apetenchea May 19, 2023
7efc0cd
Adapting tests for new ArangoDB versions
apetenchea May 19, 2023
e32350f
Adding new testing functionality
apetenchea May 19, 2023
d787024
Changed supported Python and ArangoDB versions
apetenchea May 19, 2023
47a0047
Keep all previous Python versions in the test matrix
apetenchea May 22, 2023
8f7d4bd
Adapting tests for computedValues attribute. We are now removing all …
apetenchea May 30, 2023
8a34aa5
Merge pull request #247 from ArangoDB-Community/feature/de-593-suppor…
CryptoNinjaGeek May 30, 2023
4a45183
Replace deprecated pkg_resources with importlib_metadata (the backpor…
jbylund May 25, 2023
aecc467
Merging stats field together with plan.
apetenchea Jun 2, 2023
9d8d4c0
Added peak_memory_usage as a property of AQL queries.
apetenchea Jun 2, 2023
ab76947
Adding utility for comparing versions.
apetenchea Jun 2, 2023
2e37504
Modifying driver version
apetenchea Jun 2, 2023
e966bcc
Adding 3.11 testing
apetenchea Jun 2, 2023
4269b9e
Adding 3.11 testing
apetenchea Jun 2, 2023
52648c7
Adding tests for stats fields
apetenchea Jun 2, 2023
0c0adb9
Merge pull request #251 from ArangoDB-Community/feature/de-546-stats-…
CryptoNinjaGeek Jun 5, 2023
2690421
Merge branch 'main' into support-overload-control
apetenchea Jun 5, 2023
5a5783c
Adding QueueBoundedDatabase along with the appropriate executor.
apetenchea Jun 7, 2023
1eef151
Adding QueueBoundedDatabase test
apetenchea Jun 7, 2023
8008f86
Improvements (#252)
alexbakharew Jun 7, 2023
4006973
Making sure test coverage stays up
apetenchea Jun 7, 2023
e15a0b8
Renaming to OverloadControlDatabase
apetenchea Jun 8, 2023
045b4f1
Updated documentation
apetenchea Jun 8, 2023
10bd386
Merge branch 'main' into support-overload-control
apetenchea Jun 8, 2023
8b09e07
Changelog entry
apetenchea Jun 8, 2023
f330774
Merge pull request #237 from ArangoDB-Community/support-overload-control
CryptoNinjaGeek Jun 8, 2023
b82de8c
[DE-544] Retriable batch reads (#254)
apetenchea Jul 11, 2023
0dc641e
[DE-544] Adjusting allowRetry implementation (#255)
apetenchea Jul 11, 2023
a2f856a
Adding ArangoSearch view creation test (#256)
apetenchea Jul 11, 2023
350c36b
[BTS-1515] Pass PoolTimeout as argument (#257)
apetenchea Jul 14, 2023
4bb8c6c
[DE-558] ArangoSearch column cache (#258)
apetenchea Jul 14, 2023
5fdf941
[DE-562] Index Cache Refilling (#259)
apetenchea Jul 24, 2023
f905d6e
[DE-554] `serverId` query param (GET/PUT `/_admin/log/level`) (#262)
aMahanna Jul 28, 2023
064cd00
[DE-545] UTF-8 names (#260)
apetenchea Jul 28, 2023
74680ae
[DE-566] geo_s2 analyzer test case (#263)
aMahanna Jul 31, 2023
bb2ccce
Fix python-arango Client Serialization
geenen124 Aug 1, 2023
744a6e9
Merge pull request #264 from ArangoDB-Community/fix-serialization
geenen124 Aug 1, 2023
c5d38c3
initial commit
aMahanna Aug 1, 2023
9bb8b3b
Merge pull request #265 from ArangoDB-Community/fix-request-timeout-t…
geenen124 Aug 1, 2023
4abec73
update changelog (#266)
aMahanna Aug 1, 2023
b472775
Update cursor.rst (#267)
PhilipMay Aug 9, 2023
fc5ed39
Remove deprecated strict parameter from PoolManager (#269)
153957 Aug 10, 2023
10f6ece
Fix ReadTheDocs Builds (#271)
aMahanna Aug 16, 2023
f5b1d50
new: `raise_on_document_error` param for `collection.update_many` (#273)
aMahanna Aug 16, 2023
23de7d3
Computed Values support for PUT `/_api/collection/collection/properti…
aMahanna Aug 16, 2023
1dcc802
[DE-542] Adding support for shards retrieval (#274)
apetenchea Aug 21, 2023
022afc2
[DE-584] Refactor Deprecated `/_api/simple` methods (#275)
aMahanna Aug 22, 2023
68bf6e2
Preparing for release (#276)
apetenchea Aug 25, 2023
fda5a41
fix: `build_filter_conditions` utils method (#277)
aMahanna Aug 31, 2023
7ff79d3
initial commit (#282)
aMahanna Sep 15, 2023
7de41dd
[DE-670]: `GET /_api/database/user` (#281)
aMahanna Sep 15, 2023
96335e6
initial commit (#280)
aMahanna Sep 15, 2023
bedbd72
[DE-667]: `GET /_api/collection/{name}` & `PUT /_api/collection/{name…
aMahanna Sep 15, 2023
371be70
[DE-664] Deprecating Batch API (#279)
apetenchea Sep 15, 2023
e5ff4d7
[DE-671]: `GET + PUT /_api/admin/license` (#285)
aMahanna Sep 15, 2023
0729f20
[DE-666] Cluster Rebalance (#287)
apetenchea Sep 18, 2023
9776c1e
fix: Added all allowed data types to the bind_vars. (#289)
valentingregoire Sep 20, 2023
d78994d
[DE-665]: `GET /_api/transaction` (#283)
aMahanna Sep 21, 2023
a0e2efb
Prepare 7.7.0 (#290)
apetenchea Sep 22, 2023
9ca3538
Fix `graph.vertex_collections` docstring (#292)
aMahanna Nov 7, 2023
879434f
Authenticate using User JWT-Token (#293)
aMahanna Nov 7, 2023
8e35379
hotfix: build_filter_conditions (#296)
aMahanna Nov 13, 2023
52c7469
Circleci project setup (#291)
apetenchea Nov 21, 2023
bc5ad71
update readme badges (#298)
aMahanna Nov 21, 2023
9474172
DE-699 | Update global server logs retrieval (#299)
aMahanna Nov 23, 2023
3ca9ead
update readme badges (#300)
aMahanna Nov 24, 2023
5e93203
Migrate to `pyproject.toml` (#302)
aMahanna Dec 1, 2023
e94750e
ES-1867 | `force_one_shard_attribute_value` param (#314)
aMahanna Jan 5, 2024
f007137
fix: `docs/requirements.txt` (#315)
aMahanna Jan 11, 2024
99f5d9b
DE-701 | CodeCov Orb in CircleCI (#301)
aMahanna Jan 11, 2024
8127f33
new: `get/put /_admin/log/structured` (#307)
aMahanna Jan 26, 2024
cb338b6
new: `put /_admin/compact` (#308)
aMahanna Jan 26, 2024
6653c1b
new: `post /_admin/echo` (#310)
aMahanna Jan 26, 2024
70548d9
new: `get/put /_admin/server/mode` (#312)
aMahanna Jan 26, 2024
1265881
new: `post /_admin/execute` (#309)
aMahanna Jan 26, 2024
805425d
new: `get /_admin/support-info` (#311)
aMahanna Jan 26, 2024
ebd4664
remove `simple.rst` warning (#319)
aMahanna Jan 31, 2024
ed6df53
re-structure `Contents` in `index.rst` (#320)
aMahanna Jan 31, 2024
474359e
new: `get/put /_admin/cluster/maintenance/` (#306)
aMahanna Feb 2, 2024
9eeb3ec
DE-743 | MDI/ZKD Indexes (#316)
aMahanna Feb 2, 2024
97bf6d8
update `/metrics` endpoint to `v2` (#313)
aMahanna Feb 2, 2024
92b5f94
breaking: fix `geoJson` parameter (#318)
aMahanna Feb 2, 2024
f556d65
Pregel is deprecated starting from 3.12 (#325)
apetenchea Feb 6, 2024
d48bd79
update organization to `arangodb` (#326)
aMahanna Feb 19, 2024
ed35c9d
[3.12]: External versioning support (#327)
alexbakharew Mar 8, 2024
3e43b36
Updating docs (#330)
apetenchea Mar 11, 2024
21f25fe
new: `StandardDatabase.fetch_transaction` (#329) (#331)
Moortiii Mar 11, 2024
ead2e66
Failing Pregel Doctest (#332)
apetenchea Mar 12, 2024
dd0be28
[DE-716] Compression of requests and responses (#328)
apetenchea Mar 14, 2024
d5d867c
update arangodb matrix (#334)
aMahanna Apr 22, 2024
a0c5409
Traversal API no longer available in 3.12 (#335)
apetenchea Apr 23, 2024
dea2470
fix: `ServerConnectionError` (#336)
aMahanna Apr 23, 2024
b389b80
fix: autoincrement collection (#337)
aMahanna Apr 23, 2024
f4071f2
DE-741 | Options API [3.12] (#317)
aMahanna Apr 24, 2024
851a71c
DE-749 | `wildcard` analyzer [3.12] (#324)
aMahanna Apr 24, 2024
af582cf
DE-752 | `multi_delimiter` analyzer [3.12] (#322)
aMahanna Apr 24, 2024
238b3f9
Changing the config file expression (#339)
apetenchea Apr 24, 2024
56b2a09
Fix index values (#338)
apetenchea Apr 25, 2024
eb77382
Distribute shards like properti cannot be empty (#341)
apetenchea Apr 26, 2024
09ec84e
Increasing size limit for transactions (#342)
apetenchea Apr 26, 2024
a26e06a
DE-756 | `optimizeTopK` View [3.12] (#323)
aMahanna Apr 26, 2024
e44a3e8
Make `add_index` public (#321)
aMahanna May 29, 2024
95b791c
feat: Use HEAD HTTP method to check if a document exists (#192)
Darkheir Jul 2, 2024
324eb66
RTD update (#346)
apetenchea Jul 23, 2024
d8ea7cc
Integrate latest 3.12.1 changes (#347)
apetenchea Aug 7, 2024
0f46b50
Integrate latest 3.12.2 changes (#348)
apetenchea Sep 13, 2024
cc6646f
update: `create_graph` & `properties` (#349)
aMahanna Oct 1, 2024
630c41a
Fixing parameter information. (#350)
apetenchea Oct 6, 2024
8e6aaca
Adding more explanations to the license parameter. (#351)
apetenchea Oct 17, 2024
cdf3576
new: add `_hosts` to `BaseConnection` (#353)
aMahanna Nov 28, 2024
623c29b
update `find` to support nested fields (#354)
aMahanna Nov 28, 2024
542ed5b
Update README.md
aMahanna Nov 28, 2024
0d56bcf
ES-2276 | support level 2 query profiling (#355)
aMahanna Dec 10, 2024
a14913a
fix: `driver_version`
aMahanna Dec 10, 2024
a7ff90d
The method does not raise CursorStateError (#357)
apetenchea Jan 16, 2025
8df2fee
add support for sort in collection.find function (#359)
denizalpaslan Jan 31, 2025
a9e278e
Updating fragile test, so the next DB upgrade won't make it fail. (#360)
apetenchea Feb 7, 2025
392390e
attempt: 3.12 CI (#362)
aMahanna Feb 24, 2025
b26e3b0
3.12.4 updates (#361)
apetenchea Feb 24, 2025
adf29ae
Updating python version badge (#363)
apetenchea Feb 24, 2025
33e09e1
Removing "cancelled" response (#364)
apetenchea Feb 28, 2025
5724ae6
Cleaning up unused 3.10 files. (#365)
apetenchea Feb 28, 2025
04151f7
Updating certificates documentation (#366)
apetenchea Feb 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
111 changes: 111 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
version: 2.1

orbs:
codecov: codecov/codecov@3.3.0

workflows:
ci:
jobs:
- lint
- test:
name: Python (<< matrix.python_version >>) - ArangoDB (<< matrix.arangodb_license >>, << matrix.arangodb_version >> << matrix.arangodb_config >>)
matrix:
parameters:
python_version: ["3.9", "3.10", "3.11", "3.12"]
arangodb_config: ["single", "cluster"]
arangodb_license: ["community", "enterprise"]
arangodb_version: ["3.11", "latest"]

jobs:
lint:
docker:
- image: python:latest
steps:
- checkout
- run:
name: Install Dependencies
command: pip install .[dev]

- run:
name: Run black
command: black --check --verbose --diff --color --config=pyproject.toml ./arango ./tests/

- run:
name: Run flake8
command: flake8 ./arango ./tests

- run:
name: Run isort
command: isort --check ./arango ./tests

- run:
name: Run mypy
command: mypy ./arango

test:
parameters:
python_version:
type: string
arangodb_config:
type: string
arangodb_license:
type: string
arangodb_version:
type: string
# TODO: Reconsider using a docker image instead of a machine
# i.e cimg/python:<< parameters.python_version >>
machine:
image: ubuntu-2204:current
steps:
- checkout

- run:
name: Set Up ArangoDB
command: |
chmod +x starter.sh
./starter.sh << parameters.arangodb_config >> << parameters.arangodb_license >> << parameters.arangodb_version >>

- restore_cache:
key: pip-and-local-cache

# TODO: Revisit this bottleneck
- run:
name: Setup Python
command: |
pyenv --version
pyenv install -f << parameters.python_version >>
pyenv global << parameters.python_version >>

- run:
name: "Install Dependencies"
command: pip install -e .[dev]

- run: docker ps -a

- run: docker logs arango

- run:
name: "Run pytest"
command: |
mkdir test-results

args=("--junitxml=test-results/junit.xml" "--log-cli-level=DEBUG" "--host" "localhost" "--port=8529")
if [ << parameters.arangodb_config >> = "cluster" ]; then
args+=("--cluster" "--port=8539" "--port=8549")
fi

if [ << parameters.arangodb_license >> = "enterprise" ]; then
args+=("--enterprise")
fi

echo "Running pytest with args: ${args[@]}"
pytest --cov=arango --cov-report=xml --cov-report term-missing --color=yes --code-highlight=yes "${args[@]}"

- store_artifacts:
path: test-results

- store_test_results:
path: test-results

- codecov/upload:
file: coverage.xml
55 changes: 0 additions & 55 deletions .github/workflows/build.yaml

This file was deleted.

25 changes: 14 additions & 11 deletions .github/workflows/codeql.yaml
Original file line number Diff line number Diff line change
@@ -1,22 +1,25 @@
name: CodeQL

on:
push:
branches: [ main, dev ]
pull_request:
branches: [ main, dev ]
branches: [main]
schedule:
- cron: '21 2 * * 3'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest

permissions:
security-events: write

steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: 'python'
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
- name: Checkout repository
uses: actions/checkout@v3

- name: Initialize CodeQL
uses: github/codeql-action/init@v2

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
103 changes: 103 additions & 0 deletions .github/workflows/docs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
name: Docs

on:
pull_request:
workflow_dispatch:
inputs:
debug_enabled:
type: boolean
description: Debug with tmate
required: false
default: false

jobs:
# This has been migrated to CircleCI
# test:
# runs-on: ubuntu-latest

# strategy:
# fail-fast: false
# matrix:
# python_version: ["3.10"] #["3.8", "3.9", "3.10", "3.11", "3.12"]
# arangodb_config: ["single", "cluster"]
# arangodb_license: ["community", "enterprise"]
# arangodb_version: ["3.10.10", "3.11.4", "latest"]

# name: Test (${{ matrix.python_version }}:${{ matrix.arangodb_config }}:${{ matrix.arangodb_license }}:${{ matrix.arangodb_version }})

# steps:
# - name: Checkout code
# uses: actions/checkout@v4

# - name: Set up Python
# uses: actions/setup-python@v4
# with:
# python-version: ${{ matrix.python_version }}

# - name: Setup ArangoDB
# run: |
# chmod +x starter.sh
# ./starter.sh ${{ matrix.arangodb_config }} ${{ matrix.arangodb_license }} ${{ matrix.arangodb_version }}

# - name: Install Dependencies
# run: pip install -e .[dev]

# - name: List Docker Containers
# run: docker ps -a

# - name: Pytest
# run: |
# args=("--host" "localhost" "--port=8529")

# if [ ${{ matrix.arangodb_config }} = "cluster" ]; then
# args+=("--cluster" "--port=8539" "--port=8549")
# fi

# if [ ${{ matrix.arangodb_license }} = "enterprise" ]; then
# args+=("--enterprise")
# fi

# echo "Running pytest with args: ${args[@]}"
# pytest --cov=arango --cov-report=xml "${args[@]}"

docs:
runs-on: ubuntu-latest

name: Docs

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Fetch all tags and branches
run: git fetch --prune --unshallow

- name: Create ArangoDB Docker container
run: >
docker create --name arango -p 8529:8529 -e ARANGO_ROOT_PASSWORD=passwd -v "$(pwd)/tests/static/":/tests/static
arangodb/arangodb:latest --server.jwt-secret-keyfile=/tests/static/keyfile

- name: Start ArangoDB Docker container
run: docker start arango

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'

- name: Debug with tmate
uses: mxschmitt/action-tmate@v3
if: ${{ github.event_name == 'workflow_dispatch' && inputs.debug_enabled }}

- name: Run pre-commit checks
uses: pre-commit/action@v3.0.0

- name: Install dependencies
run: pip install .[dev]

- name: Run Sphinx doctest
run: python -m sphinx -b doctest docs docs/_build

# No longer needed as this is handled by Read the Docs
#- name: Generate Sphinx HTML
# run: python -m sphinx -b html -W docs docs/_build
69 changes: 45 additions & 24 deletions .github/workflows/pypi.yaml
Original file line number Diff line number Diff line change
@@ -1,31 +1,52 @@
name: Upload to PyPI

on:
release:
types: [created]
types: [published]
workflow_dispatch:
inputs:
debug_enabled:
type: boolean
description: Debug with tmate
required: false
default: false

jobs:
upload:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Fetch complete history for all tags and branches
run: git fetch --prune --unshallow
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.x'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install setuptools wheel twine setuptools-scm[toml]
- name: Build distribution
run: python setup.py sdist bdist_wheel
- name: Publish to PyPI Test
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_TEST_TOKEN }}
run: twine upload --repository testpypi dist/*
- name: Publish to PyPI
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }}
run: twine upload --repository pypi dist/*
- name: Checkout repository
uses: actions/checkout@v3

- name: Fetch all tags and branches
run: git fetch --prune --unshallow

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"

- name: Debug with tmate
uses: mxschmitt/action-tmate@v3
if: ${{ github.event_name == 'workflow_dispatch' && inputs.debug_enabled }}

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install build twine

- name: Build distribution
run: python -m build

- name: Publish to PyPI Test
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_TEST_TOKEN }}
run: twine upload --repository testpypi dist/*

- name: Publish to PyPI
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }}
run: twine upload --repository pypi dist/*
Loading