├── .github ├── snippet-bot.yml ├── flakybot.yaml ├── ISSUE_TEMPLATE │ ├── support_request.md │ ├── feature_request.md │ └── bug_report.md ├── header-checker-lint.yml ├── workflows │ ├── mypy.yml │ ├── lint.yml │ ├── docs.yml │ └── unittest.yml ├── PULL_REQUEST_TEMPLATE.md ├── auto-label.yaml ├── blunderbuss.yml ├── CODEOWNERS └── CONTRIBUTING.md ├── testing ├── constraints-3.10.txt ├── constraints-3.11.txt ├── constraints-3.12.txt ├── constraints-3.13.txt ├── constraints-3.9.txt ├── constraints-3.14.txt ├── constraints-3.8.txt ├── .gitignore └── constraints-3.7.txt ├── tests ├── system │ ├── __init__.py │ ├── utils │ │ ├── __init__.py │ │ └── clear_datastore.py │ ├── index.yaml │ ├── _helpers.py │ ├── conftest.py │ ├── test_allocate_reserve_ids.py │ └── test_read_consistency.py ├── __init__.py ├── unit │ ├── __init__.py │ ├── gapic │ │ ├── __init__.py │ │ ├── datastore_v1 │ │ │ └── __init__.py │ │ └── datastore_admin_v1 │ │ │ └── __init__.py │ ├── test_packaging.py │ ├── test__gapic.py │ └── test_query_profile.py └── doctests.py ├── docs ├── changelog.md ├── keys.rst ├── batches.rst ├── helpers.rst ├── queries.rst ├── entities.rst ├── client.rst ├── aggregations.rst ├── transactions.rst ├── usage.html ├── admin_client.rst ├── _static │ └── custom.css ├── summary_overview.md ├── index.rst ├── _templates │ └── layout.html └── UPGRADING.md ├── .release-please-manifest.json ├── samples └── snippets │ ├── requirements.txt │ ├── schedule-export │ ├── requirements.txt │ ├── requirements-test.txt │ ├── README.md │ ├── noxfile_config.py │ ├── main.py │ └── schedule_export_test.py │ ├── requirements-test.txt │ └── noxfile_config.py ├── google └── cloud │ ├── datastore │ ├── py.typed │ ├── version.py │ ├── gapic_version.py │ ├── _app_engine_key.proto │ ├── _gapic.py │ ├── __init__.py │ ├── _app_engine_key_pb2.py │ └── query_profile.py │ ├── datastore_admin │ ├── py.typed │ ├── gapic_version.py │ └── __init__.py │ ├── datastore_v1 │ ├── py.typed │ ├── services │ │ ├── __init__.py │ │ └── datastore │ │ │ ├── transports │ │ │ ├── README.rst │ │ │ └── __init__.py │ │ │ └── __init__.py │ ├── gapic_version.py │ ├── types │ │ ├── __init__.py │ │ ├── aggregation_result.py │ │ └── query_profile.py │ └── gapic_metadata.json │ └── datastore_admin_v1 │ ├── py.typed │ ├── services │ ├── __init__.py │ └── datastore_admin │ │ ├── transports │ │ ├── README.rst │ │ └── __init__.py │ │ └── __init__.py │ ├── gapic_version.py │ ├── types │ ├── __init__.py │ └── index.py │ └── gapic_metadata.json ├── .kokoro ├── samples │ ├── lint │ │ ├── periodic.cfg │ │ ├── presubmit.cfg │ │ ├── continuous.cfg │ │ └── common.cfg │ ├── python3.7 │ │ ├── presubmit.cfg │ │ ├── continuous.cfg │ │ ├── periodic.cfg │ │ ├── periodic-head.cfg │ │ └── common.cfg │ ├── python3.8 │ │ ├── presubmit.cfg │ │ ├── continuous.cfg │ │ ├── periodic.cfg │ │ ├── periodic-head.cfg │ │ └── common.cfg │ ├── python3.9 │ │ ├── presubmit.cfg │ │ ├── continuous.cfg │ │ ├── periodic.cfg │ │ ├── periodic-head.cfg │ │ └── common.cfg │ ├── python3.10 │ │ ├── continuous.cfg │ │ ├── presubmit.cfg │ │ ├── periodic.cfg │ │ ├── periodic-head.cfg │ │ └── common.cfg │ ├── python3.11 │ │ ├── continuous.cfg │ │ ├── presubmit.cfg │ │ ├── periodic.cfg │ │ ├── periodic-head.cfg │ │ └── common.cfg │ ├── python3.12 │ │ ├── continuous.cfg │ │ ├── presubmit.cfg │ │ ├── periodic.cfg │ │ ├── periodic-head.cfg │ │ └── common.cfg │ ├── python3.13 │ │ ├── continuous.cfg │ │ ├── presubmit.cfg │ │ ├── periodic.cfg │ │ ├── periodic-head.cfg │ │ └── common.cfg │ └── python3.14 │ │ ├── continuous.cfg │ │ ├── presubmit.cfg │ │ ├── periodic.cfg │ │ ├── periodic-head.cfg │ │ └── common.cfg ├── presubmit │ ├── system-3.12.cfg │ ├── system-3.14.cfg │ ├── prerelease-deps.cfg │ ├── presubmit.cfg │ └── common.cfg ├── continuous │ ├── prerelease-deps.cfg │ ├── continuous.cfg │ └── common.cfg ├── trampoline.sh ├── test-samples-against-head.sh ├── populate-secrets.sh ├── test-samples.sh ├── build.sh └── test-samples-impl.sh ├── SECURITY.md ├── scripts ├── readme-gen │ ├── templates │ │ ├── auth.tmpl.rst │ │ ├── auth_api_key.tmpl.rst │ │ ├── install_deps.tmpl.rst │ │ ├── install_portaudio.tmpl.rst │ │ └── README.tmpl.rst │ └── readme_gen.py └── decrypt-secrets.sh ├── renovate.json ├── mypy.ini ├── release-please-config.json ├── .gitignore ├── MANIFEST.in ├── pylint.config.py ├── .flake8 ├── .coveragerc ├── .repo-metadata.json ├── .librarian ├── generator-input │ ├── .repo-metadata.json │ ├── librarian.py │ └── setup.py └── state.yaml ├── .pre-commit-config.yaml ├── .trampolinerc ├── librarian.py ├── UPGRADING.md ├── setup.py └── CODE_OF_CONDUCT.md /.github/snippet-bot.yml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /testing/constraints-3.10.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /testing/constraints-3.11.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /testing/constraints-3.12.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /testing/constraints-3.13.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /testing/constraints-3.9.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/system/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/changelog.md: -------------------------------------------------------------------------------- 1 | ../CHANGELOG.md -------------------------------------------------------------------------------- /tests/system/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.github/flakybot.yaml: -------------------------------------------------------------------------------- 1 | issuePriority: p2 2 | -------------------------------------------------------------------------------- /testing/constraints-3.14.txt: -------------------------------------------------------------------------------- 1 | grpcio >= 1.75.1 -------------------------------------------------------------------------------- /.release-please-manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | ".": "2.21.0" 3 | } -------------------------------------------------------------------------------- /testing/constraints-3.8.txt: -------------------------------------------------------------------------------- 1 | google-api-core==2.14.0 2 | -------------------------------------------------------------------------------- /samples/snippets/requirements.txt: -------------------------------------------------------------------------------- 1 | google-cloud-datastore==2.20.0 -------------------------------------------------------------------------------- /testing/.gitignore: -------------------------------------------------------------------------------- 1 | test-env.sh 2 | service-account.json 3 | client-secrets.json -------------------------------------------------------------------------------- /samples/snippets/schedule-export/requirements.txt: -------------------------------------------------------------------------------- 1 | google-cloud-datastore==2.20.0 2 | -------------------------------------------------------------------------------- /docs/keys.rst: -------------------------------------------------------------------------------- 1 | Keys 2 | ~~~~ 3 | 4 | .. automodule:: google.cloud.datastore.key 5 | :members: 6 | :show-inheritance: 7 | -------------------------------------------------------------------------------- /google/cloud/datastore/py.typed: -------------------------------------------------------------------------------- 1 | # Marker file for PEP 561. 2 | # The google-cloud-datastore package uses inline types. 3 | -------------------------------------------------------------------------------- /google/cloud/datastore_admin/py.typed: -------------------------------------------------------------------------------- 1 | # Marker file for PEP 561. 2 | # The google-cloud-datastore package uses inline types. 3 | -------------------------------------------------------------------------------- /google/cloud/datastore_v1/py.typed: -------------------------------------------------------------------------------- 1 | # Marker file for PEP 561. 2 | # The google-cloud-datastore package uses inline types. 3 | -------------------------------------------------------------------------------- /google/cloud/datastore_admin_v1/py.typed: -------------------------------------------------------------------------------- 1 | # Marker file for PEP 561. 2 | # The google-cloud-datastore package uses inline types. 3 | -------------------------------------------------------------------------------- /docs/batches.rst: -------------------------------------------------------------------------------- 1 | Batches 2 | ~~~~~~~ 3 | 4 | .. automodule:: google.cloud.datastore.batch 5 | :members: 6 | :show-inheritance: 7 | -------------------------------------------------------------------------------- /docs/helpers.rst: -------------------------------------------------------------------------------- 1 | Helpers 2 | ~~~~~~~ 3 | 4 | .. automodule:: google.cloud.datastore.helpers 5 | :members: 6 | :show-inheritance: 7 | -------------------------------------------------------------------------------- /docs/queries.rst: -------------------------------------------------------------------------------- 1 | Queries 2 | ~~~~~~~ 3 | 4 | .. automodule:: google.cloud.datastore.query 5 | :members: 6 | :show-inheritance: 7 | -------------------------------------------------------------------------------- /samples/snippets/schedule-export/requirements-test.txt: -------------------------------------------------------------------------------- 1 | pytest===7.4.3; python_version == '3.7' 2 | pytest==8.3.2; python_version >= '3.8' -------------------------------------------------------------------------------- /docs/entities.rst: -------------------------------------------------------------------------------- 1 | Entities 2 | ~~~~~~~~ 3 | 4 | .. automodule:: google.cloud.datastore.entity 5 | :members: 6 | :show-inheritance: 7 | -------------------------------------------------------------------------------- /docs/client.rst: -------------------------------------------------------------------------------- 1 | Datastore Client 2 | ================ 3 | 4 | .. automodule:: google.cloud.datastore.client 5 | :members: 6 | :show-inheritance: 7 | -------------------------------------------------------------------------------- /docs/aggregations.rst: -------------------------------------------------------------------------------- 1 | Aggregations 2 | ~~~~~~~~~~~~ 3 | 4 | .. automodule:: google.cloud.datastore.aggregation 5 | :members: 6 | :show-inheritance: 7 | -------------------------------------------------------------------------------- /.kokoro/samples/lint/periodic.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "False" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/lint/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/lint/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.7/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.8/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.9/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /docs/transactions.rst: -------------------------------------------------------------------------------- 1 | Transactions 2 | ~~~~~~~~~~~~ 3 | 4 | .. automodule:: google.cloud.datastore.transaction 5 | :members: 6 | :show-inheritance: 7 | :inherited-members: 8 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.10/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.10/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.11/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.11/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.12/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.12/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.13/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.13/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.14/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.14/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.7/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.7/periodic.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "False" 6 | } 7 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.8/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.8/periodic.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "False" 6 | } 7 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.9/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } -------------------------------------------------------------------------------- /.kokoro/samples/python3.9/periodic.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "False" 6 | } 7 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.10/periodic.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "False" 6 | } 7 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.11/periodic.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "False" 6 | } 7 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.12/periodic.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "False" 6 | } 7 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.13/periodic.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "False" 6 | } 7 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.14/periodic.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "False" 6 | } 7 | -------------------------------------------------------------------------------- /.kokoro/presubmit/system-3.12.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | # Only run this nox session. 4 | env_vars: { 5 | key: "NOX_SESSION" 6 | value: "system-3.12" 7 | } -------------------------------------------------------------------------------- /.kokoro/presubmit/system-3.14.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | # Only run this nox session. 4 | env_vars: { 5 | key: "NOX_SESSION" 6 | value: "system-3.14" 7 | } -------------------------------------------------------------------------------- /docs/usage.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/admin_client.rst: -------------------------------------------------------------------------------- 1 | Datastore Admin Client 2 | ====================== 3 | 4 | .. automodule:: google.cloud.datastore_admin_v1.services.datastore_admin.client 5 | :members: 6 | :show-inheritance: 7 | -------------------------------------------------------------------------------- /.kokoro/continuous/prerelease-deps.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | # Only run this nox session. 4 | env_vars: { 5 | key: "NOX_SESSION" 6 | value: "prerelease_deps" 7 | } 8 | -------------------------------------------------------------------------------- /.kokoro/presubmit/prerelease-deps.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | # Only run this nox session. 4 | env_vars: { 5 | key: "NOX_SESSION" 6 | value: "prerelease_deps" 7 | } 8 | -------------------------------------------------------------------------------- /samples/snippets/requirements-test.txt: -------------------------------------------------------------------------------- 1 | backoff===1.11.1; python_version < "3.7" 2 | backoff==2.2.1; python_version >= "3.7" 3 | pytest===7.4.3; python_version == '3.7' 4 | pytest==8.3.2; python_version >= '3.8' 5 | flaky==3.8.1 6 | -------------------------------------------------------------------------------- /.kokoro/continuous/continuous.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | # Disable system tests. 4 | env_vars: { 5 | key: "RUN_SYSTEM_TESTS" 6 | value: "false" 7 | } 8 | 9 | env_vars: { 10 | key: "NOX_SESSION" 11 | value: "blacken doctests format" 12 | } 13 | -------------------------------------------------------------------------------- /.kokoro/presubmit/presubmit.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | # Disable system tests. 4 | env_vars: { 5 | key: "RUN_SYSTEM_TESTS" 6 | value: "false" 7 | } 8 | 9 | env_vars: { 10 | key: "NOX_SESSION" 11 | value: "blacken doctests format" 12 | } 13 | -------------------------------------------------------------------------------- /samples/snippets/schedule-export/README.md: -------------------------------------------------------------------------------- 1 | # Scheduling Datastore exports with Cloud Functions and Cloud Scheduler 2 | 3 | This sample application demonstrates how to schedule exports of your Datastore entities. To deploy this sample, see: 4 | 5 | [Scheduling exports](https://cloud.google.com/datastore/docs/schedule-export) 6 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.10/periodic-head.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } 7 | 8 | env_vars: { 9 | key: "TRAMPOLINE_BUILD_FILE" 10 | value: "github/python-datastore/.kokoro/test-samples-against-head.sh" 11 | } 12 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.11/periodic-head.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } 7 | 8 | env_vars: { 9 | key: "TRAMPOLINE_BUILD_FILE" 10 | value: "github/python-datastore/.kokoro/test-samples-against-head.sh" 11 | } 12 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.12/periodic-head.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } 7 | 8 | env_vars: { 9 | key: "TRAMPOLINE_BUILD_FILE" 10 | value: "github/python-datastore/.kokoro/test-samples-against-head.sh" 11 | } 12 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.13/periodic-head.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } 7 | 8 | env_vars: { 9 | key: "TRAMPOLINE_BUILD_FILE" 10 | value: "github/python-datastore/.kokoro/test-samples-against-head.sh" 11 | } 12 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.14/periodic-head.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } 7 | 8 | env_vars: { 9 | key: "TRAMPOLINE_BUILD_FILE" 10 | value: "github/python-datastore/.kokoro/test-samples-against-head.sh" 11 | } 12 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.7/periodic-head.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } 7 | 8 | env_vars: { 9 | key: "TRAMPOLINE_BUILD_FILE" 10 | value: "github/python-datastore/.kokoro/test-samples-against-head.sh" 11 | } 12 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.8/periodic-head.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } 7 | 8 | env_vars: { 9 | key: "TRAMPOLINE_BUILD_FILE" 10 | value: "github/python-datastore/.kokoro/test-samples-against-head.sh" 11 | } 12 | -------------------------------------------------------------------------------- /.kokoro/samples/python3.9/periodic-head.cfg: -------------------------------------------------------------------------------- 1 | # Format: //devtools/kokoro/config/proto/build.proto 2 | 3 | env_vars: { 4 | key: "INSTALL_LIBRARY_FROM_SOURCE" 5 | value: "True" 6 | } 7 | 8 | env_vars: { 9 | key: "TRAMPOLINE_BUILD_FILE" 10 | value: "github/python-datastore/.kokoro/test-samples-against-head.sh" 11 | } 12 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | To report a security issue, please use [g.co/vulnz](https://g.co/vulnz). 4 | 5 | The Google Security Team will respond within 5 working days of your report on g.co/vulnz. 6 | 7 | We use g.co/vulnz for our intake, and do coordination and disclosure here using GitHub Security Advisory to privately discuss and fix the issue. 8 | -------------------------------------------------------------------------------- /scripts/readme-gen/templates/auth.tmpl.rst: -------------------------------------------------------------------------------- 1 | Authentication 2 | ++++++++++++++ 3 | 4 | This sample requires you to have authentication setup. Refer to the 5 | `Authentication Getting Started Guide`_ for instructions on setting up 6 | credentials for applications. 7 | 8 | .. _Authentication Getting Started Guide: 9 | https://cloud.google.com/docs/authentication/getting-started 10 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/support_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Support request 3 | about: If you have a support contract with Google, please create an issue in the Google Cloud Support console. 4 | 5 | --- 6 | 7 | **PLEASE READ**: If you have a support contract with Google, please create an issue in the [support console](https://cloud.google.com/support/) instead of filing on GitHub. This will ensure a timely response. 8 | -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": [ 3 | "config:base", 4 | "group:all", 5 | ":preserveSemverRanges", 6 | ":disableDependencyDashboard" 7 | ], 8 | "ignorePaths": [".pre-commit-config.yaml", ".kokoro/requirements.txt", "setup.py", ".github/workflows/unittest.yml"], 9 | "pip_requirements": { 10 | "fileMatch": ["requirements-test.txt", "samples/[\\S/]*constraints.txt", "samples/[\\S/]*constraints-test.txt"] 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /.github/header-checker-lint.yml: -------------------------------------------------------------------------------- 1 | {"allowedCopyrightHolders": ["Google LLC"], 2 | "allowedLicenses": ["Apache-2.0", "MIT", "BSD-3"], 3 | "ignoreFiles": ["**/requirements.txt", "**/requirements-test.txt", "**/__init__.py", "samples/**/constraints.txt", "samples/**/constraints-test.txt"], 4 | "sourceFileExtensions": [ 5 | "ts", 6 | "js", 7 | "java", 8 | "sh", 9 | "Dockerfile", 10 | "yaml", 11 | "py", 12 | "html", 13 | "txt" 14 | ] 15 | } -------------------------------------------------------------------------------- /docs/_static/custom.css: -------------------------------------------------------------------------------- 1 | div#python2-eol { 2 | border-color: red; 3 | border-width: medium; 4 | } 5 | 6 | /* Ensure minimum width for 'Parameters' / 'Returns' column */ 7 | dl.field-list > dt { 8 | min-width: 100px 9 | } 10 | 11 | /* Insert space between methods for readability */ 12 | dl.method { 13 | padding-top: 10px; 14 | padding-bottom: 10px 15 | } 16 | 17 | /* Insert empty space between classes */ 18 | dl.class { 19 | padding-bottom: 50px 20 | } 21 | -------------------------------------------------------------------------------- /testing/constraints-3.7.txt: -------------------------------------------------------------------------------- 1 | # This constraints file is used to check that lower bounds 2 | # are correct in setup.py 3 | # List *all* library dependencies and extras in this file. 4 | # Pin the version to the lower bound. 5 | # 6 | # e.g., if setup.py has "foo >= 1.14.0, < 2.0.0dev", 7 | # Then this file should have foo==1.14.0 8 | google-api-core==1.34.0 9 | google-auth==2.14.1 10 | google-cloud-core==1.4.0 11 | proto-plus==1.22.0 12 | libcst==0.2.5 13 | protobuf==3.20.2 14 | -------------------------------------------------------------------------------- /scripts/readme-gen/templates/auth_api_key.tmpl.rst: -------------------------------------------------------------------------------- 1 | Authentication 2 | ++++++++++++++ 3 | 4 | Authentication for this service is done via an `API Key`_. To obtain an API 5 | Key: 6 | 7 | 1. Open the `Cloud Platform Console`_ 8 | 2. Make sure that billing is enabled for your project. 9 | 3. From the **Credentials** page, create a new **API Key** or use an existing 10 | one for your project. 11 | 12 | .. _API Key: 13 | https://developers.google.com/api-client-library/python/guide/aaa_apikeys 14 | .. _Cloud Console: https://console.cloud.google.com/project?_ 15 | -------------------------------------------------------------------------------- /.github/workflows/mypy.yml: -------------------------------------------------------------------------------- 1 | on: 2 | pull_request: 3 | branches: 4 | - main 5 | name: mypy 6 | jobs: 7 | mypy: 8 | runs-on: ubuntu-latest 9 | steps: 10 | - name: Checkout 11 | uses: actions/checkout@v4 12 | - name: Setup Python 13 | uses: actions/setup-python@v5 14 | with: 15 | python-version: "3.14" 16 | - name: Install nox 17 | run: | 18 | python -m pip install --upgrade setuptools pip wheel 19 | python -m pip install nox 20 | - name: Run mypy 21 | run: | 22 | nox -s mypy 23 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly: 2 | - [ ] Make sure to open an issue as a [bug/issue](https://github.com/googleapis/python-datastore/issues/new/choose) before writing your code! That way we can discuss the change, evaluate designs, and agree on the general idea 3 | - [ ] Ensure the tests and linter pass 4 | - [ ] Code coverage does not decrease (if any source code was changed) 5 | - [ ] Appropriate docs were updated (if necessary) 6 | 7 | Fixes #