Skip to main content

The official TDengine Python WebSocket connector

Project description

The official TDengine Python websocket connector

GitHub Actions Workflow Status codecov GitHub commit activity PyPI GitHub License PyPI
Twitter Follow YouTube Channel Discord Community LinkedIn StackOverflow

Table of Contents

1. Introduction

taospy is the official Python Connector for TDengine, allowing Python developers to develop applications that access the TDengine database. It supports functions such as data writing, querying, subscription, schemaless writing, and parameter binding.

The API for taospy is compliant with the Python DB API 2.0 (PEP-249). It contains two modules:

  1. The taos module. It uses TDengine C client library for client server communications.
  2. The taosrest module. It wraps TDengine RESTful API to Python DB API 2.0 (PEP-249). With this module, you do not need to install the TDengine C client library.

2. Documentation

  • To use Python Connector, please check Developer Guide, which includes how an application can introduce the Python Connector , as well as examples of data writing, querying, schemaless writing, parameter binding, and data subscription.
  • For other reference information, please check Reference Manual, which includes version history, data types, example programs, API descriptions, and FAQs.
  • This quick guide is mainly for developers who like to contribute/build/test the Python Connector by themselves. To learn about TDengine, you can visit the official documentation.

3. Prerequisites

  • Python runtime environment (taospy: Python >= 3.6.2, taos-ws-py: Python >= 3.7)
  • TDengine has been deployed locally. For specific steps, please refer to Deploy TDengine, and taosd and taosAdapter have been started.

4. Build

Download the repository code and execute the following in root directory to build develop environment:

maturin build

5. Testing

5.1 Test Execution

The Python Connector testing framework is pytest.

The testing directory for taos-ws-py is located in the root directory: taos-ws-py/tests/ .

The test code has been written into one bash file. You can open and view the detailed testing process.

The following command runs all test cases on Linux platform:

# for taos-ws-py
bash ./test_taos-ws-py.sh

5.2 Test Case Addition

You can add new test files or add test cases in existing test files that comply with pytest standards

5.3 Performance Testing

Performance testing is in progress.

6. CI/CD

7. Submitting Issues

We welcome the submission of GitHub Issue. When submitting, please provide the following information:

  • Problem description, whether it always occurs, and it's best to include a detailed call stack.
  • Python Connector version.
  • Python Connection parameters (username and password not required).
  • TDengine server version.

8. Submitting PRs

We welcome developers to contribute to this project. When submitting PRs, please follow these steps:

  1. Fork this project, refer to (how to fork a repo).
  2. Create a new branch from the main branch with a meaningful branch name (git checkout -b my_branch). Do not modify the main branch directly.
  3. Modify the code, ensure all unit tests pass, and add new unit tests to verify the changes.
  4. Push the changes to the remote branch (git push origin my_branch).
  5. Create a Pull Request on GitHub (how to create a pull request).
  6. After submitting the PR, you can find your PR through the Pull Request. Click on the corresponding link to see if the CI for your PR has passed. If it has passed, it will display "All checks have passed". Regardless of whether the CI passes or not, you can click "Show all checks" -> "Details" to view the detailed test case logs.
  7. After submitting the PR, if CI passes, you can find your PR on the codecov page to check the test coverage.

9. References

10. License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

taos_ws_py-0.6.8-cp37-abi3-win_amd64.whl (4.8 MB view details)

Uploaded CPython 3.7+Windows x86-64

taos_ws_py-0.6.8-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ x86-64

taos_ws_py-0.6.8-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (4.0 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARMv7l

taos_ws_py-0.6.8-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARM64

taos_ws_py-0.6.8-cp37-abi3-macosx_10_12_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.7+macOS 10.12+ x86-64

taos_ws_py-0.6.8-cp37-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (8.1 MB view details)

Uploaded CPython 3.7+macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file taos_ws_py-0.6.8-cp37-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for taos_ws_py-0.6.8-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1dc7fa262ef69ee2705dd0b4743ea99983e0d4844aaa347ae06b122bbc2ed3aa
MD5 1654c1d68c137a1affdbdb098c363cdb
BLAKE2b-256 9605eec249cb34feab148624a2bcf405421c2e992d0adb70cbc209678731a13f

See more details on using hashes here.

File details

Details for the file taos_ws_py-0.6.8-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for taos_ws_py-0.6.8-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f93225048e4693bc5e264d331a76b320be5a5f6da09a2022b9d9bc7ce5931953
MD5 4ffe2b2be5ea7f90f94fc68990cd170a
BLAKE2b-256 ae5d83dbd730231d305aa4be58830f80f1eebc6bcad562aef817a403cf893bf9

See more details on using hashes here.

File details

Details for the file taos_ws_py-0.6.8-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for taos_ws_py-0.6.8-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 fc4d226f3222c38a02370afee5f1afaf2ca62ffbf1b8c1e55b7315a3572efa50
MD5 103ff7ad8c97c4b5fcb9cff2ed79df62
BLAKE2b-256 c4ca05d84dd51e6f34826cf4b740217830e71355f668337dcb7652c0a1a0423b

See more details on using hashes here.

File details

Details for the file taos_ws_py-0.6.8-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for taos_ws_py-0.6.8-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 413423b9a6ab755af9a2dd019ea4c7a45bffe38ad304315243abb0bebd76f170
MD5 9df0a48463674c4badfafe1063e92fae
BLAKE2b-256 fe9b87b1c0169e3a0179d784780ee76ffd83ec48229f49e9472f50991f2cf3ef

See more details on using hashes here.

File details

Details for the file taos_ws_py-0.6.8-cp37-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for taos_ws_py-0.6.8-cp37-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8aa5e2aadf28d794a731c97b2fcf89301f8b182260f7d088b952769c3411cab1
MD5 0503d7b83c17ecbbef28caed00890b76
BLAKE2b-256 442f56272f55774de84f3d4e69855bfd5529d1134a1f074f8ca095b4878899a4

See more details on using hashes here.

File details

Details for the file taos_ws_py-0.6.8-cp37-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for taos_ws_py-0.6.8-cp37-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 14b71db86b7780122c64a5827719e616f03075e02c448dc762f42af27e57dba4
MD5 3a52fda91bbf17735981cae134ea2707
BLAKE2b-256 065f8da2592ae09d0b5559955de700234933e2b1a0e15a78f41abea51c655e8a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page