ODPS Python SDK and data analysis framework
===========================================
|PyPI version| |Docs| |License| |Implementation|
Elegent way to access ODPS API.
`Documentation <http://pyodps.readthedocs.org/>`__
Installation
------------
The quick way:
::
pip install pyodps[full]
If you don’t need to use Jupyter, just type
::
pip install pyodps
The dependencies will be installed automatically.
Or from source code (not recommended for production use):
.. code:: shell
$ virtualenv pyodps_env
$ source pyodps_env/bin/activate
$ pip install git+https://github.com/aliyun/aliyun-odps-python-sdk.git
Dependencies
------------
- Python (>=2.7), including Python 3+, pypy, Python 3.7 recommended
- setuptools (>=3.0)
Run Tests
---------
- install pytest
- copy conf/test.conf.template to odps/tests/test.conf, and fill it
with your account
- run ``pytest odps``
Usage
-----
.. code:: python
>>> import os
>>> from odps import ODPS
>>> # Make sure environment variable ALIBABA_CLOUD_ACCESS_KEY_ID already set to Access Key ID of user
>>> # while environment variable ALIBABA_CLOUD_ACCESS_KEY_SECRET set to Access Key Secret of user.
>>> # Not recommended to hardcode Access Key ID or Access Key Secret in your code.
>>> o = ODPS(
>>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
>>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
>>> project='**your-project**',
>>> endpoint='**your-endpoint**',
>>> )
>>> dual = o.get_table('dual')
>>> dual.name
'dual'
>>> dual.table_schema
odps.Schema {
c_int_a bigint
c_int_b bigint
c_double_a double
c_double_b double
c_string_a string
c_string_b string
c_bool_a boolean
c_bool_b boolean
c_datetime_a datetime
c_datetime_b datetime
}
>>> dual.creation_time
datetime.datetime(2014, 6, 6, 13, 28, 24)
>>> dual.is_virtual_view
False
>>> dual.size
448
>>> dual.table_schema.columns
[<column c_int_a, type bigint>,
<column c_int_b, type bigint>,
<column c_double_a, type double>,
<column c_double_b, type double>,
<column c_string_a, type string>,
<column c_string_b, type string>,
<column c_bool_a, type boolean>,
<column c_bool_b, type boolean>,
<column c_datetime_a, type datetime>,
<column c_datetime_b, type datetime>]
DataFrame API
-------------
.. code:: python
>>> from odps.df import DataFrame
>>> df = DataFrame(o.get_table('pyodps_iris'))
>>> df.dtypes
odps.Schema {
sepallength float64
sepalwidth float64
petallength float64
petalwidth float64
name string
}
>>> df.head(5)
|==========================================| 1 / 1 (100.00%) 0s
sepallength sepalwidth petallength petalwidth name
0 5.1 3.5 1.4 0.2 Iris-setosa
1 4.9 3.0 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
3 4.6 3.1 1.5 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa
>>> df[df.sepalwidth > 3]['name', 'sepalwidth'].head(5)
|==========================================| 1 / 1 (100.00%) 12s
name sepalwidth
0 Iris-setosa 3.5
1 Iris-setosa 3.2
2 Iris-setosa 3.1
3 Iris-setosa 3.6
4 Iris-setosa 3.9
Command-line and IPython enhancement
------------------------------------
::
In [1]: %load_ext odps
In [2]: %enter
Out[2]: <odps.inter.Room at 0x10fe0e450>
In [3]: %sql select * from pyodps_iris limit 5
|==========================================| 1 / 1 (100.00%) 2s
Out[3]:
sepallength sepalwidth petallength petalwidth name
0 5.1 3.5 1.4 0.2 Iris-setosa
1 4.9 3.0 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
3 4.6 3.1 1.5 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa
Python UDF Debugging Tool
-------------------------
.. code:: python
#file: plus.py
from odps.udf import annotate
@annotate('bigint,bigint->bigint')
class Plus(object):
def evaluate(self, a, b):
return a + b
::
$ cat plus.input
1,1
3,2
$ pyou plus.Plus < plus.input
2
5
Contributing
------------
For a development install, clone the repository and then install from
source:
::
git clone https://github.com/aliyun/aliyun-odps-python-sdk.git
cd pyodps
pip install -r requirements.txt -e .
If you need to modify the frontend code, you need to install
`nodejs/npm <https://www.npmjs.com/>`__. To build and install your
frontend code, use
::
python setup.py build_js
python setup.py install_js
License
-------
Licensed under the `Apache License
2.0 <https://www.apache.org/licenses/LICENSE-2.0.html>`__
.. |PyPI version| image:: https://img.shields.io/pypi/v/pyodps.svg?style=flat-square
:target: https://pypi.python.org/pypi/pyodps
.. |Docs| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat-square
:target: http://pyodps.readthedocs.org/
.. |License| image:: https://img.shields.io/pypi/l/pyodps.svg?style=flat-square
:target: https://github.com/aliyun/aliyun-odps-python-sdk/blob/master/License
.. |Implementation| image:: https://img.shields.io/pypi/implementation/pyodps.svg?style=flat-square
Raw data
{
"_id": null,
"home_page": "http://github.com/aliyun/aliyun-odps-python-sdk",
"name": "pyodps",
"maintainer": "Wenjun Si",
"docs_url": null,
"requires_python": null,
"maintainer_email": "wenjun.swj@alibaba-inc.com",
"keywords": null,
"author": "Wu Wei",
"author_email": "weiwu@cacheme.net",
"download_url": "https://files.pythonhosted.org/packages/2e/ef/4733cc1790061c0cb58bfa8020d003ef1547d542103588ae0db00a4543bd/pyodps-0.12.2.tar.gz",
"platform": null,
"description": "ODPS Python SDK and data analysis framework\n===========================================\n\n|PyPI version| |Docs| |License| |Implementation|\n\nElegent way to access ODPS API.\n`Documentation <http://pyodps.readthedocs.org/>`__\n\nInstallation\n------------\n\nThe quick way:\n\n::\n\n pip install pyodps[full]\n\nIf you don\u2019t need to use Jupyter, just type\n\n::\n\n pip install pyodps\n\nThe dependencies will be installed automatically.\n\nOr from source code (not recommended for production use):\n\n.. code:: shell\n\n $ virtualenv pyodps_env\n $ source pyodps_env/bin/activate\n $ pip install git+https://github.com/aliyun/aliyun-odps-python-sdk.git\n\nDependencies\n------------\n\n- Python (>=2.7), including Python 3+, pypy, Python 3.7 recommended\n- setuptools (>=3.0)\n\nRun Tests\n---------\n\n- install pytest\n- copy conf/test.conf.template to odps/tests/test.conf, and fill it\n with your account\n- run ``pytest odps``\n\nUsage\n-----\n\n.. code:: python\n\n >>> import os\n >>> from odps import ODPS\n >>> # Make sure environment variable ALIBABA_CLOUD_ACCESS_KEY_ID already set to Access Key ID of user\n >>> # while environment variable ALIBABA_CLOUD_ACCESS_KEY_SECRET set to Access Key Secret of user.\n >>> # Not recommended to hardcode Access Key ID or Access Key Secret in your code.\n >>> o = ODPS(\n >>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),\n >>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),\n >>> project='**your-project**',\n >>> endpoint='**your-endpoint**',\n >>> )\n >>> dual = o.get_table('dual')\n >>> dual.name\n 'dual'\n >>> dual.table_schema\n odps.Schema {\n c_int_a bigint\n c_int_b bigint\n c_double_a double\n c_double_b double\n c_string_a string\n c_string_b string\n c_bool_a boolean\n c_bool_b boolean\n c_datetime_a datetime\n c_datetime_b datetime\n }\n >>> dual.creation_time\n datetime.datetime(2014, 6, 6, 13, 28, 24)\n >>> dual.is_virtual_view\n False\n >>> dual.size\n 448\n >>> dual.table_schema.columns\n [<column c_int_a, type bigint>,\n <column c_int_b, type bigint>,\n <column c_double_a, type double>,\n <column c_double_b, type double>,\n <column c_string_a, type string>,\n <column c_string_b, type string>,\n <column c_bool_a, type boolean>,\n <column c_bool_b, type boolean>,\n <column c_datetime_a, type datetime>,\n <column c_datetime_b, type datetime>]\n\nDataFrame API\n-------------\n\n.. code:: python\n\n >>> from odps.df import DataFrame\n >>> df = DataFrame(o.get_table('pyodps_iris'))\n >>> df.dtypes\n odps.Schema {\n sepallength float64\n sepalwidth float64\n petallength float64\n petalwidth float64\n name string\n }\n >>> df.head(5)\n |==========================================| 1 / 1 (100.00%) 0s\n sepallength sepalwidth petallength petalwidth name\n 0 5.1 3.5 1.4 0.2 Iris-setosa\n 1 4.9 3.0 1.4 0.2 Iris-setosa\n 2 4.7 3.2 1.3 0.2 Iris-setosa\n 3 4.6 3.1 1.5 0.2 Iris-setosa\n 4 5.0 3.6 1.4 0.2 Iris-setosa\n >>> df[df.sepalwidth > 3]['name', 'sepalwidth'].head(5)\n |==========================================| 1 / 1 (100.00%) 12s\n name sepalwidth\n 0 Iris-setosa 3.5\n 1 Iris-setosa 3.2\n 2 Iris-setosa 3.1\n 3 Iris-setosa 3.6\n 4 Iris-setosa 3.9\n\nCommand-line and IPython enhancement\n------------------------------------\n\n::\n\n In [1]: %load_ext odps\n\n In [2]: %enter\n Out[2]: <odps.inter.Room at 0x10fe0e450>\n\n In [3]: %sql select * from pyodps_iris limit 5\n |==========================================| 1 / 1 (100.00%) 2s\n Out[3]:\n sepallength sepalwidth petallength petalwidth name\n 0 5.1 3.5 1.4 0.2 Iris-setosa\n 1 4.9 3.0 1.4 0.2 Iris-setosa\n 2 4.7 3.2 1.3 0.2 Iris-setosa\n 3 4.6 3.1 1.5 0.2 Iris-setosa\n 4 5.0 3.6 1.4 0.2 Iris-setosa\n\nPython UDF Debugging Tool\n-------------------------\n\n.. code:: python\n\n #file: plus.py\n from odps.udf import annotate\n\n @annotate('bigint,bigint->bigint')\n class Plus(object):\n def evaluate(self, a, b):\n return a + b\n\n::\n\n $ cat plus.input\n 1,1\n 3,2\n $ pyou plus.Plus < plus.input\n 2\n 5\n\nContributing\n------------\n\nFor a development install, clone the repository and then install from\nsource:\n\n::\n\n git clone https://github.com/aliyun/aliyun-odps-python-sdk.git\n cd pyodps\n pip install -r requirements.txt -e .\n\nIf you need to modify the frontend code, you need to install\n`nodejs/npm <https://www.npmjs.com/>`__. To build and install your\nfrontend code, use\n\n::\n\n python setup.py build_js\n python setup.py install_js\n\nLicense\n-------\n\nLicensed under the `Apache License\n2.0 <https://www.apache.org/licenses/LICENSE-2.0.html>`__\n\n.. |PyPI version| image:: https://img.shields.io/pypi/v/pyodps.svg?style=flat-square\n :target: https://pypi.python.org/pypi/pyodps\n.. |Docs| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat-square\n :target: http://pyodps.readthedocs.org/\n.. |License| image:: https://img.shields.io/pypi/l/pyodps.svg?style=flat-square\n :target: https://github.com/aliyun/aliyun-odps-python-sdk/blob/master/License\n.. |Implementation| image:: https://img.shields.io/pypi/implementation/pyodps.svg?style=flat-square\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "ODPS Python SDK and data analysis framework",
"version": "0.12.2",
"project_urls": {
"Homepage": "http://github.com/aliyun/aliyun-odps-python-sdk"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "275d38137e08be8584e445cdd249171ca54a705052ac373f1fbd54ef463fb81a",
"md5": "543c9b3ba484d6c249e4ff1e045f3243",
"sha256": "e59e08643d636257951506a77692b3e7d2adb7b5f844b2104b4c30125792c138"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp27-cp27m-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "543c9b3ba484d6c249e4ff1e045f3243",
"packagetype": "bdist_wheel",
"python_version": "cp27",
"requires_python": null,
"size": 2001689,
"upload_time": "2025-01-03T02:22:28",
"upload_time_iso_8601": "2025-01-03T02:22:28.749759Z",
"url": "https://files.pythonhosted.org/packages/27/5d/38137e08be8584e445cdd249171ca54a705052ac373f1fbd54ef463fb81a/pyodps-0.12.2-cp27-cp27m-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "efcc44dd0857fe161c7293cb0eb2fa7f250305e34f54abce2a3ff948867a4244",
"md5": "10ef688ac56e9ddb6d1baec8a49924f0",
"sha256": "ada5d111d262bbd58960287b32df84e926142bb03cb8acd1072146ecb6b75398"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp27-cp27m-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "10ef688ac56e9ddb6d1baec8a49924f0",
"packagetype": "bdist_wheel",
"python_version": "cp27",
"requires_python": null,
"size": 4084705,
"upload_time": "2025-01-03T02:16:55",
"upload_time_iso_8601": "2025-01-03T02:16:55.001622Z",
"url": "https://files.pythonhosted.org/packages/ef/cc/44dd0857fe161c7293cb0eb2fa7f250305e34f54abce2a3ff948867a4244/pyodps-0.12.2-cp27-cp27m-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fa8181fe8707f2d782ff3552dba8e8a05cb77d51bfb9f3bbaa8fcaebd6d668a3",
"md5": "67e011f8bded3b6f3ffdc9d234ddf12d",
"sha256": "b2360e505fb135a983007f2f28de4f5e5b42c0639a4e87fcb72fbee96eafd751"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp27-cp27mu-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "67e011f8bded3b6f3ffdc9d234ddf12d",
"packagetype": "bdist_wheel",
"python_version": "cp27",
"requires_python": null,
"size": 4084713,
"upload_time": "2025-01-03T02:16:57",
"upload_time_iso_8601": "2025-01-03T02:16:57.960193Z",
"url": "https://files.pythonhosted.org/packages/fa/81/81fe8707f2d782ff3552dba8e8a05cb77d51bfb9f3bbaa8fcaebd6d668a3/pyodps-0.12.2-cp27-cp27mu-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "248df663509ebb40fd5907c5d6daf7aafd669783342110a798aefa9d8a29deed",
"md5": "2c87e33ec3ebe90b889c2668052c6963",
"sha256": "79c6d5fd99cf867e14e43590e3c88a25fd27969611e017a5e70991b5131e2c77"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp310-cp310-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "2c87e33ec3ebe90b889c2668052c6963",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 2695214,
"upload_time": "2025-01-03T02:13:50",
"upload_time_iso_8601": "2025-01-03T02:13:50.636505Z",
"url": "https://files.pythonhosted.org/packages/24/8d/f663509ebb40fd5907c5d6daf7aafd669783342110a798aefa9d8a29deed/pyodps-0.12.2-cp310-cp310-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9abc796ca8313ddcdf28f63986b9a7a2f3dc1ae4179ae77c6b59338aab471192",
"md5": "3e531244563c05034035be0d66e3f8d6",
"sha256": "d443badfe08961d3359fd171fea43e80fdd613a438de3756fc69d99a75550997"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "3e531244563c05034035be0d66e3f8d6",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 2079760,
"upload_time": "2025-01-03T02:22:30",
"upload_time_iso_8601": "2025-01-03T02:22:30.520298Z",
"url": "https://files.pythonhosted.org/packages/9a/bc/796ca8313ddcdf28f63986b9a7a2f3dc1ae4179ae77c6b59338aab471192/pyodps-0.12.2-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "160c26a16cd5bec39e420125eef08bee142f1e755ecfe9c8273b7981891af1c7",
"md5": "ec1a1d886cb12591278e58f0c7bcd016",
"sha256": "289ab118806f88066d4eda546c41b57965708e4ebc3224e99ba80b047f443e5e"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "ec1a1d886cb12591278e58f0c7bcd016",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 5659448,
"upload_time": "2025-01-03T02:17:00",
"upload_time_iso_8601": "2025-01-03T02:17:00.956553Z",
"url": "https://files.pythonhosted.org/packages/16/0c/26a16cd5bec39e420125eef08bee142f1e755ecfe9c8273b7981891af1c7/pyodps-0.12.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3a956294582e53a3c1c1823776bc399f43d270fc52cbc7b2eb7ac0710e6f8633",
"md5": "9b030a831a0c1ef7fe8933cda8cbddfa",
"sha256": "956131a6462899353dc51eaf15aece440e12d6da785377e60e7bba4ec94128ef"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp310-cp310-win32.whl",
"has_sig": false,
"md5_digest": "9b030a831a0c1ef7fe8933cda8cbddfa",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 1909354,
"upload_time": "2025-01-03T02:22:53",
"upload_time_iso_8601": "2025-01-03T02:22:53.839001Z",
"url": "https://files.pythonhosted.org/packages/3a/95/6294582e53a3c1c1823776bc399f43d270fc52cbc7b2eb7ac0710e6f8633/pyodps-0.12.2-cp310-cp310-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "384c813df7f6986debc23b9593cfb068239b93887552d42547424b8c64c4eccd",
"md5": "9640736415aac7925d4de88e0bb18366",
"sha256": "0fad5148bfca4441de34225541e30323b12d5505937698c47155bab108d91ab8"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "9640736415aac7925d4de88e0bb18366",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 1987826,
"upload_time": "2025-01-03T02:22:55",
"upload_time_iso_8601": "2025-01-03T02:22:55.349544Z",
"url": "https://files.pythonhosted.org/packages/38/4c/813df7f6986debc23b9593cfb068239b93887552d42547424b8c64c4eccd/pyodps-0.12.2-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6b23f307f19f48d74a61c5b9348fe779ce625465dd4dd5d58a2ee06fd87bd875",
"md5": "e733374581cd371604cca186b6ad8661",
"sha256": "5b9714901bac2bbf9cc1d84457f9e1988cb9996e8f1a13476f123072975f6161"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp311-cp311-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "e733374581cd371604cca186b6ad8661",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 2705129,
"upload_time": "2025-01-03T02:13:54",
"upload_time_iso_8601": "2025-01-03T02:13:54.252833Z",
"url": "https://files.pythonhosted.org/packages/6b/23/f307f19f48d74a61c5b9348fe779ce625465dd4dd5d58a2ee06fd87bd875/pyodps-0.12.2-cp311-cp311-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "14e62546c6ecb21d8bb56ab6d5af417f2b7ae1fa8f19437b8b5c6e02e855b606",
"md5": "18a803f56010e327a65b9123cdbafa6b",
"sha256": "1d4b127e53db8c10773328d223193ea78e0db078e67b18fa5bb9884bef517031"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "18a803f56010e327a65b9123cdbafa6b",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 2085893,
"upload_time": "2025-01-03T02:22:33",
"upload_time_iso_8601": "2025-01-03T02:22:33.202508Z",
"url": "https://files.pythonhosted.org/packages/14/e6/2546c6ecb21d8bb56ab6d5af417f2b7ae1fa8f19437b8b5c6e02e855b606/pyodps-0.12.2-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5fdcb258ae755eb735737ca274ffdb3d51d866f8cdfe5d35725c0ebf9060314b",
"md5": "23286da11e3eaf115ea8c797b739d850",
"sha256": "849bdf912b343c7e4d8cd5e0cde184e4a405e28be1aa96f28f873601fdde5ac1"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "23286da11e3eaf115ea8c797b739d850",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 6132992,
"upload_time": "2025-01-03T02:17:02",
"upload_time_iso_8601": "2025-01-03T02:17:02.961085Z",
"url": "https://files.pythonhosted.org/packages/5f/dc/b258ae755eb735737ca274ffdb3d51d866f8cdfe5d35725c0ebf9060314b/pyodps-0.12.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "59d859af2b12a1261c10913e28d7f2d8ed04242dbe608350f736ae704ffeea05",
"md5": "6d2575f168d13cbcf8d8730da0bcd6b2",
"sha256": "c9b9af84a448b1302ca6bbb8fb0e34ca2c077c6a9d118814253c7988d1cfba6e"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp311-cp311-win32.whl",
"has_sig": false,
"md5_digest": "6d2575f168d13cbcf8d8730da0bcd6b2",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 1908413,
"upload_time": "2025-01-03T02:22:56",
"upload_time_iso_8601": "2025-01-03T02:22:56.958722Z",
"url": "https://files.pythonhosted.org/packages/59/d8/59af2b12a1261c10913e28d7f2d8ed04242dbe608350f736ae704ffeea05/pyodps-0.12.2-cp311-cp311-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "83d917be78915577a5fa2721d51926b22b8fd3b4baf4f6075b0824ac104defce",
"md5": "7000db13cf7bf2df964ce0eb36700668",
"sha256": "f8c5fb23f0bd99ed78fb2245f60a39f6b6b4d6ee9480473e64acb6361ae969ea"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "7000db13cf7bf2df964ce0eb36700668",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 1988943,
"upload_time": "2025-01-03T02:22:58",
"upload_time_iso_8601": "2025-01-03T02:22:58.450477Z",
"url": "https://files.pythonhosted.org/packages/83/d9/17be78915577a5fa2721d51926b22b8fd3b4baf4f6075b0824ac104defce/pyodps-0.12.2-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "acddf33e77d746cf80183a5286beea928f01717d7041e8342b58d87325cdc63e",
"md5": "505b3f9fdf2fd026cb959f07d27f68ab",
"sha256": "f7807fc0333d52f05f73b4c9e0359442dff5ef1858ca3e62f8a742143cb1b020"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp312-cp312-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "505b3f9fdf2fd026cb959f07d27f68ab",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 2697352,
"upload_time": "2025-01-03T02:13:56",
"upload_time_iso_8601": "2025-01-03T02:13:56.901468Z",
"url": "https://files.pythonhosted.org/packages/ac/dd/f33e77d746cf80183a5286beea928f01717d7041e8342b58d87325cdc63e/pyodps-0.12.2-cp312-cp312-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f80cb5b6f2b80d31ad936aefed2260e5cc5309cce88eea2e02b995ca060e4cc6",
"md5": "1106325d37991f0a403e5b4d8bfd2faf",
"sha256": "e6f4b27e6e7f9e215189b219495342b485d20fb59ca56a3612c470d3e313a351"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp312-cp312-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "1106325d37991f0a403e5b4d8bfd2faf",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 2078288,
"upload_time": "2025-01-03T02:22:35",
"upload_time_iso_8601": "2025-01-03T02:22:35.988919Z",
"url": "https://files.pythonhosted.org/packages/f8/0c/b5b6f2b80d31ad936aefed2260e5cc5309cce88eea2e02b995ca060e4cc6/pyodps-0.12.2-cp312-cp312-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "48739084162337b672c76d094ef7abc83e046d5e90384489c2be24f20327a833",
"md5": "c9e61293e3731cb004731ab23e63df78",
"sha256": "2fb1aed81457e8f564c620bd01a4293d6f4fe8c0b74cc04dca86e0bd9fd6d69c"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "c9e61293e3731cb004731ab23e63df78",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 6107451,
"upload_time": "2025-01-03T02:17:04",
"upload_time_iso_8601": "2025-01-03T02:17:04.874581Z",
"url": "https://files.pythonhosted.org/packages/48/73/9084162337b672c76d094ef7abc83e046d5e90384489c2be24f20327a833/pyodps-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6f0676bef95b69031cbb01ce575d5befa1061e9f3d314c55cbe71cef51d2f255",
"md5": "784e158ae63aaa17430a5b53da1cb577",
"sha256": "39c4ba3e1b3ac80ab209ceccbb0263fff417923dac52c3cc97492e87114d1df1"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp312-cp312-win32.whl",
"has_sig": false,
"md5_digest": "784e158ae63aaa17430a5b53da1cb577",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 1891664,
"upload_time": "2025-01-03T02:23:00",
"upload_time_iso_8601": "2025-01-03T02:23:00.468545Z",
"url": "https://files.pythonhosted.org/packages/6f/06/76bef95b69031cbb01ce575d5befa1061e9f3d314c55cbe71cef51d2f255/pyodps-0.12.2-cp312-cp312-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cccb9fea19821f8b4437362515917b2efe0b0088fdaef8723abcbd66c3760881",
"md5": "a7bc21e70c17a9c9e14b3953f11d4a4c",
"sha256": "c4cef7084c7b2389fd0a1962f043d7b8de99747165141ed5284d3af4642e42db"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "a7bc21e70c17a9c9e14b3953f11d4a4c",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": null,
"size": 1974447,
"upload_time": "2025-01-03T02:23:03",
"upload_time_iso_8601": "2025-01-03T02:23:03.816435Z",
"url": "https://files.pythonhosted.org/packages/cc/cb/9fea19821f8b4437362515917b2efe0b0088fdaef8723abcbd66c3760881/pyodps-0.12.2-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "adcebc585df76d54aa984214c1a7a6fc6e17a1e684b1a9a61c9924a23a47acdd",
"md5": "133b69118a18e6db4cacdce9a020cd76",
"sha256": "f40337b095ad538df5641b1f3e0895238a3310998fde19be1bdc31726ef84a10"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp35-cp35m-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "133b69118a18e6db4cacdce9a020cd76",
"packagetype": "bdist_wheel",
"python_version": "cp35",
"requires_python": null,
"size": 4365401,
"upload_time": "2025-01-03T02:17:08",
"upload_time_iso_8601": "2025-01-03T02:17:08.160900Z",
"url": "https://files.pythonhosted.org/packages/ad/ce/bc585df76d54aa984214c1a7a6fc6e17a1e684b1a9a61c9924a23a47acdd/pyodps-0.12.2-cp35-cp35m-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1a802f386753bdcb629bdcceaa867f322661c8e098e90d027b0dcf99d6d43835",
"md5": "9bff75266c86278f9e93248b1b56d7ab",
"sha256": "e04617bb9a39a3ae261c59901c5fc067347f8d90acd7036f65dec22227eb687c"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp35-cp35m-win32.whl",
"has_sig": false,
"md5_digest": "9bff75266c86278f9e93248b1b56d7ab",
"packagetype": "bdist_wheel",
"python_version": "cp35",
"requires_python": null,
"size": 1918491,
"upload_time": "2025-01-03T02:23:08",
"upload_time_iso_8601": "2025-01-03T02:23:08.716372Z",
"url": "https://files.pythonhosted.org/packages/1a/80/2f386753bdcb629bdcceaa867f322661c8e098e90d027b0dcf99d6d43835/pyodps-0.12.2-cp35-cp35m-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4fe3439c321a7ac7ddee292e0f185db0d6a1388190be8da70f752a9393094368",
"md5": "c8027d23be43d811db04bad2084975d7",
"sha256": "d5429310a7b384668b8ff0e6e732a8d2c331f74470f62b25d97f8a3e5df931a7"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp35-cp35m-win_amd64.whl",
"has_sig": false,
"md5_digest": "c8027d23be43d811db04bad2084975d7",
"packagetype": "bdist_wheel",
"python_version": "cp35",
"requires_python": null,
"size": 2015194,
"upload_time": "2025-01-03T02:23:10",
"upload_time_iso_8601": "2025-01-03T02:23:10.249264Z",
"url": "https://files.pythonhosted.org/packages/4f/e3/439c321a7ac7ddee292e0f185db0d6a1388190be8da70f752a9393094368/pyodps-0.12.2-cp35-cp35m-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1a5092edbfea20f710ec383c5ebff868255eae5ceedd416380def6293fda0209",
"md5": "bf7fc10d6242b2497eb416ed88ed9042",
"sha256": "0d915199a716700294b3002c947f31acf7258592887c77bf193aee8c1df8c98e"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp36-cp36m-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "bf7fc10d6242b2497eb416ed88ed9042",
"packagetype": "bdist_wheel",
"python_version": "cp36",
"requires_python": null,
"size": 2043349,
"upload_time": "2025-01-03T02:22:38",
"upload_time_iso_8601": "2025-01-03T02:22:38.747313Z",
"url": "https://files.pythonhosted.org/packages/1a/50/92edbfea20f710ec383c5ebff868255eae5ceedd416380def6293fda0209/pyodps-0.12.2-cp36-cp36m-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0d91c52b7bf7c46433e169cab1fcfc0111e61cf0492748f9e9957d5728c72ffb",
"md5": "ff156c0d86934c57bac26fd65ba24b11",
"sha256": "00203891fafd95a81a0625edb317ab99d5958cf054ed7338727db906f8e032d3"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp36-cp36m-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "ff156c0d86934c57bac26fd65ba24b11",
"packagetype": "bdist_wheel",
"python_version": "cp36",
"requires_python": null,
"size": 4435661,
"upload_time": "2025-01-03T02:17:13",
"upload_time_iso_8601": "2025-01-03T02:17:13.765183Z",
"url": "https://files.pythonhosted.org/packages/0d/91/c52b7bf7c46433e169cab1fcfc0111e61cf0492748f9e9957d5728c72ffb/pyodps-0.12.2-cp36-cp36m-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c21cc8b46c7a2ff8395b7183503a86572522b08d24e928b9dbc12ca015a64eb7",
"md5": "297067dd5cf4ac51274f9ade88fe0f76",
"sha256": "af5d5cc7d2e344f19f1f8453f67cac61223fe72845e30d539c2b1477f0e98c7c"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp36-cp36m-win32.whl",
"has_sig": false,
"md5_digest": "297067dd5cf4ac51274f9ade88fe0f76",
"packagetype": "bdist_wheel",
"python_version": "cp36",
"requires_python": null,
"size": 1943187,
"upload_time": "2025-01-03T02:23:11",
"upload_time_iso_8601": "2025-01-03T02:23:11.732992Z",
"url": "https://files.pythonhosted.org/packages/c2/1c/c8b46c7a2ff8395b7183503a86572522b08d24e928b9dbc12ca015a64eb7/pyodps-0.12.2-cp36-cp36m-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e173aaad555242627f661630f0ade26d318db139574556f046d5e6f7b808ef99",
"md5": "a9dbff19474e446160b5ad53287e91b6",
"sha256": "e12640e78450987d79b344bdf308bc4dc0aa64b928044ef8e8247a8a56528092"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp36-cp36m-win_amd64.whl",
"has_sig": false,
"md5_digest": "a9dbff19474e446160b5ad53287e91b6",
"packagetype": "bdist_wheel",
"python_version": "cp36",
"requires_python": null,
"size": 2040217,
"upload_time": "2025-01-03T02:23:14",
"upload_time_iso_8601": "2025-01-03T02:23:14.599956Z",
"url": "https://files.pythonhosted.org/packages/e1/73/aaad555242627f661630f0ade26d318db139574556f046d5e6f7b808ef99/pyodps-0.12.2-cp36-cp36m-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5b6833accffa71a97b25d6c4bfb1d0edf56224af0a76ff7273e04ac62667a4b2",
"md5": "9757daa3b56958fa16f1b883efc47d69",
"sha256": "05dc82134b9b4cb2f2c20b03757a046f9e9fedd22d470e06e0e8ef4f738ca61a"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp37-cp37m-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "9757daa3b56958fa16f1b883efc47d69",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2061509,
"upload_time": "2025-01-03T02:22:41",
"upload_time_iso_8601": "2025-01-03T02:22:41.421379Z",
"url": "https://files.pythonhosted.org/packages/5b/68/33accffa71a97b25d6c4bfb1d0edf56224af0a76ff7273e04ac62667a4b2/pyodps-0.12.2-cp37-cp37m-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "29216f7f2620dc450c11ef9f03a9ed9c40d29ad38195ae70cff734b25afe0c5e",
"md5": "64f5004819745696d2d14c68d19f7693",
"sha256": "de95c66c814b6d2a0ec275610c92d38157a6cb9d403b29b1288de8994b9475ca"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp37-cp37m-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "64f5004819745696d2d14c68d19f7693",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 4632191,
"upload_time": "2025-01-03T02:17:16",
"upload_time_iso_8601": "2025-01-03T02:17:16.769559Z",
"url": "https://files.pythonhosted.org/packages/29/21/6f7f2620dc450c11ef9f03a9ed9c40d29ad38195ae70cff734b25afe0c5e/pyodps-0.12.2-cp37-cp37m-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "50bb597245f94c5c5431fcc322bf89a11b5401133456429aeb8ae3aae4a1ef23",
"md5": "7525bb2abf33b55edf73f6f021f1180e",
"sha256": "a1e156c3571bcde18ed38d67f3742285a987242d79941a14003aa370c1747fad"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp37-cp37m-win32.whl",
"has_sig": false,
"md5_digest": "7525bb2abf33b55edf73f6f021f1180e",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 1958988,
"upload_time": "2025-01-03T02:23:16",
"upload_time_iso_8601": "2025-01-03T02:23:16.035080Z",
"url": "https://files.pythonhosted.org/packages/50/bb/597245f94c5c5431fcc322bf89a11b5401133456429aeb8ae3aae4a1ef23/pyodps-0.12.2-cp37-cp37m-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "aa5a2c926394b8bf8bb350bced15afe3e5d14a97133ad934a63e12747d00746f",
"md5": "90fd4addb5a1c7467c2c3068eeb4a8d4",
"sha256": "25dad8fdbbe5438552893435520e700b339ce391c1bb329571b231b2822ae992"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp37-cp37m-win_amd64.whl",
"has_sig": false,
"md5_digest": "90fd4addb5a1c7467c2c3068eeb4a8d4",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2052658,
"upload_time": "2025-01-03T02:23:17",
"upload_time_iso_8601": "2025-01-03T02:23:17.552465Z",
"url": "https://files.pythonhosted.org/packages/aa/5a/2c926394b8bf8bb350bced15afe3e5d14a97133ad934a63e12747d00746f/pyodps-0.12.2-cp37-cp37m-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "343851832a950427c5c56e7044f8feab23b5478b18fcd1c972ccb9a0b181a901",
"md5": "b85f5d33b74c7e897687ece1db1f1443",
"sha256": "553c0338516c66ce6dab0f73455cd506bf8418d1741a2ab9e13849eb6c1ed526"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp38-cp38-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "b85f5d33b74c7e897687ece1db1f1443",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 2076972,
"upload_time": "2025-01-03T02:22:44",
"upload_time_iso_8601": "2025-01-03T02:22:44.450201Z",
"url": "https://files.pythonhosted.org/packages/34/38/51832a950427c5c56e7044f8feab23b5478b18fcd1c972ccb9a0b181a901/pyodps-0.12.2-cp38-cp38-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9378a520d831a9424e1c5296d3cbcdc91e082e13c66feb04d22b9888f033aa63",
"md5": "7af3b75dfb26f0e8ca179fe7773a17a3",
"sha256": "93b7a1d545c620040d705d50f771e672211eb43373be933940915aecfad4330d"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp38-cp38-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "7af3b75dfb26f0e8ca179fe7773a17a3",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 4801899,
"upload_time": "2025-01-03T02:17:20",
"upload_time_iso_8601": "2025-01-03T02:17:20.569741Z",
"url": "https://files.pythonhosted.org/packages/93/78/a520d831a9424e1c5296d3cbcdc91e082e13c66feb04d22b9888f033aa63/pyodps-0.12.2-cp38-cp38-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "94058fc0340a1893008972467fe49eecea2fb1c08dce931ec8f4b8597ec510cd",
"md5": "38a3446810007afcf16865d9f44d8c52",
"sha256": "be7b50ae0cf2d583fe2ba8e5715a58b94edaeadd92abec898ad0e4e8d64c72a9"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp38-cp38-win32.whl",
"has_sig": false,
"md5_digest": "38a3446810007afcf16865d9f44d8c52",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 1972795,
"upload_time": "2025-01-03T02:23:20",
"upload_time_iso_8601": "2025-01-03T02:23:20.155812Z",
"url": "https://files.pythonhosted.org/packages/94/05/8fc0340a1893008972467fe49eecea2fb1c08dce931ec8f4b8597ec510cd/pyodps-0.12.2-cp38-cp38-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fa112e2aa8aaa086b218dd551e3b597948fdfb4c3db8dd117d1a25cffd908837",
"md5": "2b3543d7ea01f4fe4565a4e443cdfadc",
"sha256": "e57a70ed0b11131a1e7ce9523710919c8f0cee8689f9e4d9804247cc87773066"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp38-cp38-win_amd64.whl",
"has_sig": false,
"md5_digest": "2b3543d7ea01f4fe4565a4e443cdfadc",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 2072858,
"upload_time": "2025-01-03T02:23:22",
"upload_time_iso_8601": "2025-01-03T02:23:22.923399Z",
"url": "https://files.pythonhosted.org/packages/fa/11/2e2aa8aaa086b218dd551e3b597948fdfb4c3db8dd117d1a25cffd908837/pyodps-0.12.2-cp38-cp38-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f88e95cce5bae642e0735e8dd55f695d7e1492ffbefa826566e82e78a834132e",
"md5": "8766a5898758b6412502900e29e5df6e",
"sha256": "2f749c5630d1477759532f1183b8d63960ab03f6f1798c1337b3d2dd44e78b8d"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp39-cp39-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "8766a5898758b6412502900e29e5df6e",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 2704638,
"upload_time": "2025-01-03T02:13:58",
"upload_time_iso_8601": "2025-01-03T02:13:58.820034Z",
"url": "https://files.pythonhosted.org/packages/f8/8e/95cce5bae642e0735e8dd55f695d7e1492ffbefa826566e82e78a834132e/pyodps-0.12.2-cp39-cp39-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c9300c343cabd045bb4ba1c6a32780a7b256151d0575752856bb4fceeccf14d7",
"md5": "08ff3958652dd0ce0f24f23f928b634e",
"sha256": "12833ea4b3f016e52832fbdb9f3bfdfafcc25d72f48cebbb462e859143aeec12"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp39-cp39-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "08ff3958652dd0ce0f24f23f928b634e",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 2084241,
"upload_time": "2025-01-03T02:22:46",
"upload_time_iso_8601": "2025-01-03T02:22:46.306282Z",
"url": "https://files.pythonhosted.org/packages/c9/30/0c343cabd045bb4ba1c6a32780a7b256151d0575752856bb4fceeccf14d7/pyodps-0.12.2-cp39-cp39-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a0b6047962e61e4651eab912e9ca7ef947d91f4d611fb646b271d9cc695cb274",
"md5": "593cb40a3f3389bf730f231eaa94ac31",
"sha256": "4f9d55b38cec4b4630fe2ef89cbd251eef911424abe71498d5c4aac653c52a0f"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "593cb40a3f3389bf730f231eaa94ac31",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 5675438,
"upload_time": "2025-01-03T02:17:23",
"upload_time_iso_8601": "2025-01-03T02:17:23.668675Z",
"url": "https://files.pythonhosted.org/packages/a0/b6/047962e61e4651eab912e9ca7ef947d91f4d611fb646b271d9cc695cb274/pyodps-0.12.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "bd8787e83aa7c6d1842230b9f347d7783241418ba3bb536c677727a457471574",
"md5": "2b232f8569d75530c91d6cf3410c2d27",
"sha256": "60c22bb9ab94abc2ea17c9e1810f2e7b5602866f6cd823cea7e6212c9a8985a1"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp39-cp39-win32.whl",
"has_sig": false,
"md5_digest": "2b232f8569d75530c91d6cf3410c2d27",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 1913055,
"upload_time": "2025-01-03T02:23:24",
"upload_time_iso_8601": "2025-01-03T02:23:24.451064Z",
"url": "https://files.pythonhosted.org/packages/bd/87/87e83aa7c6d1842230b9f347d7783241418ba3bb536c677727a457471574/pyodps-0.12.2-cp39-cp39-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a0cbb2785a7b1bf1c30202897927354643670c16e29649b6126bb06d69ccfe44",
"md5": "2c615f96fd330b88e4d202fc579e92bd",
"sha256": "2ce9355a10453b74f4e623f1d8fc9f77e44b64dde3efbd791c4f49bc9bae90b5"
},
"downloads": -1,
"filename": "pyodps-0.12.2-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "2c615f96fd330b88e4d202fc579e92bd",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 1992315,
"upload_time": "2025-01-03T02:23:25",
"upload_time_iso_8601": "2025-01-03T02:23:25.853909Z",
"url": "https://files.pythonhosted.org/packages/a0/cb/b2785a7b1bf1c30202897927354643670c16e29649b6126bb06d69ccfe44/pyodps-0.12.2-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2eef4733cc1790061c0cb58bfa8020d003ef1547d542103588ae0db00a4543bd",
"md5": "4a2a954b97530ef5d58eddd3245618c9",
"sha256": "b96480410c859c9f49c38bc0e533295a1bbca5ea1143cf3d93436e379a0986f2"
},
"downloads": -1,
"filename": "pyodps-0.12.2.tar.gz",
"has_sig": false,
"md5_digest": "4a2a954b97530ef5d58eddd3245618c9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1155918,
"upload_time": "2025-01-03T02:17:25",
"upload_time_iso_8601": "2025-01-03T02:17:25.182742Z",
"url": "https://files.pythonhosted.org/packages/2e/ef/4733cc1790061c0cb58bfa8020d003ef1547d542103588ae0db00a4543bd/pyodps-0.12.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-03 02:17:25",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "aliyun",
"github_project": "aliyun-odps-python-sdk",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "requests",
"specs": [
[
">=",
"2.4.0"
]
]
},
{
"name": "pyarrow",
"specs": [
[
">=",
"0.16.0"
]
]
},
{
"name": "pyarrow",
"specs": [
[
">=",
"2.0.0"
]
]
}
],
"lcname": "pyodps"
}