Speedups
------------------------------------------------------------------------------
.. image:: https://github.com/wolph/speedups/actions/workflows/build_wheels.yml/badge.svg
:target: https://github.com/wolph/speedups/actions/workflows/build_wheels.yml
.. image:: https://github.com/wolph/speedups/actions/workflows/tox.yml/badge.svg
:target: https://github.com/wolph/speedups/actions/workflows/tox.yml
This library contains a number of functions for speeding up critical parts
of your Python code without having to bother with the hassle of building
binary extensions. That way you can keep your main packages simple `PEP517`_
based packages and still get the speedups.
Currently only a few functions are available, but several more are planned.
Generic endian conversion functions in `speedups.hton`_:
- ``void pack_int16(char *buf, int16_t x)``
- ``void pack_int32(char *buf, int32_t x)``
- ``void pack_int64(char *buf, int64_t x)``
- ``void pack_float(char *buf, float f)``
- ``void pack_double(char *buf, double f)``
- ``int16_t unpack_int16(const char *buf)``
- ``uint16_t unpack_uint16(const char *buf)``
- ``int32_t unpack_int32(const char *buf)``
- ``uint32_t unpack_uint32(const char *buf)``
- ``int64_t unpack_int64(const char *buf)``
- ``uint64_t unpack_uint64(const char *buf)``
- ``float unpack_float(const char *buf)``
- ``double unpack_double(const char *buf)``
These functions are used to convert between native and network byte order and
are meant to be used from Cython code. Examples can be found in the
`speedups.psycopg_array`_ code.
For the psycopg library we have a binary `COPY`_ loader_ to convert a
PostgreSQL array to a `numpy`_ ``ndarray``. This can be used with the ``copy()``
method of a psycopg cursor: https://www.psycopg.org/psycopg3/docs/basic/copy.html
It supports the following PostgreSQL types:
- ``float4`` (``numpy.float32``)
- ``float8`` (``numpy.float64``)
- ``smallint`` (``numpy.int16``)
- ``integer`` (``numpy.int32``)
- ``bigint`` (``numpy.int64``)
Additionally, it supports arrays varying from 1D to N-D so a 2D or 3D array
are supported.
.. code-block:: python
cursor: psycopg.Cursor
psycopg_loaders.NumpyLoader.install(cursor)
query = '''
COPY (
SELECT array_agg(x)
FROM generate_series(1, 100000) x
) TO STDOUT WITH BINARY
'''
copy: psycopg.Copy
with cursor.copy(query) as copy:
copy.set_types(['integer[]'])
for row in copy.rows():
print(row)
.. _numpy: http://www.numpy.org/
.. _COPY: https://www.postgresql.org/docs/current/static/sql-copy.html
.. _speedups.hton: https://github.com/WoLpH/speedups/blob/master/speedups/hton.pxd
.. _speedups.psycopg_array: https://github.com/WoLpH/speedups/blob/master/speedups/psycopg_array.pyx
.. _loader: https://github.com/WoLpH/speedups/blob/master/speedups/psycopg_loaders.py
.. _pep517: https://www.python.org/dev/peps/pep-0517/
Raw data
{
"_id": null,
"home_page": "https://github.com/WoLpH/speedups/",
"name": "speedups",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "",
"keywords": "Cython,C,C++,speedups,Numpy,PostgreSQL,PsycoPG",
"author": "Rick van Hattem, Joren Hammudoglu",
"author_email": "Wolph@Wol.ph, jhammudoglu@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/ad/bd/cc96f153b96f7eb5949720d6ea2a96a04a9c9e0a2ed146959a8e1209d91d/speedups-1.4.0.tar.gz",
"platform": null,
"description": "Speedups\n------------------------------------------------------------------------------\n\n.. image:: https://github.com/wolph/speedups/actions/workflows/build_wheels.yml/badge.svg\n :target: https://github.com/wolph/speedups/actions/workflows/build_wheels.yml\n\n.. image:: https://github.com/wolph/speedups/actions/workflows/tox.yml/badge.svg\n :target: https://github.com/wolph/speedups/actions/workflows/tox.yml\n\nThis library contains a number of functions for speeding up critical parts\nof your Python code without having to bother with the hassle of building\nbinary extensions. That way you can keep your main packages simple `PEP517`_\nbased packages and still get the speedups.\n\nCurrently only a few functions are available, but several more are planned.\n\nGeneric endian conversion functions in `speedups.hton`_:\n\n- ``void pack_int16(char *buf, int16_t x)``\n- ``void pack_int32(char *buf, int32_t x)``\n- ``void pack_int64(char *buf, int64_t x)``\n- ``void pack_float(char *buf, float f)``\n- ``void pack_double(char *buf, double f)``\n- ``int16_t unpack_int16(const char *buf)``\n- ``uint16_t unpack_uint16(const char *buf)``\n- ``int32_t unpack_int32(const char *buf)``\n- ``uint32_t unpack_uint32(const char *buf)``\n- ``int64_t unpack_int64(const char *buf)``\n- ``uint64_t unpack_uint64(const char *buf)``\n- ``float unpack_float(const char *buf)``\n- ``double unpack_double(const char *buf)``\n\nThese functions are used to convert between native and network byte order and\nare meant to be used from Cython code. Examples can be found in the\n`speedups.psycopg_array`_ code.\n\nFor the psycopg library we have a binary `COPY`_ loader_ to convert a\nPostgreSQL array to a `numpy`_ ``ndarray``. This can be used with the ``copy()``\nmethod of a psycopg cursor: https://www.psycopg.org/psycopg3/docs/basic/copy.html\n\nIt supports the following PostgreSQL types:\n\n- ``float4`` (``numpy.float32``)\n- ``float8`` (``numpy.float64``)\n- ``smallint`` (``numpy.int16``)\n- ``integer`` (``numpy.int32``)\n- ``bigint`` (``numpy.int64``)\n\nAdditionally, it supports arrays varying from 1D to N-D so a 2D or 3D array\nare supported.\n\n.. code-block:: python\n\n cursor: psycopg.Cursor\n psycopg_loaders.NumpyLoader.install(cursor)\n\n query = '''\n COPY (\n SELECT array_agg(x)\n FROM generate_series(1, 100000) x\n ) TO STDOUT WITH BINARY\n '''\n\n copy: psycopg.Copy\n with cursor.copy(query) as copy:\n copy.set_types(['integer[]'])\n\n for row in copy.rows():\n print(row)\n\n.. _numpy: http://www.numpy.org/\n.. _COPY: https://www.postgresql.org/docs/current/static/sql-copy.html\n.. _speedups.hton: https://github.com/WoLpH/speedups/blob/master/speedups/hton.pxd\n.. _speedups.psycopg_array: https://github.com/WoLpH/speedups/blob/master/speedups/psycopg_array.pyx\n.. _loader: https://github.com/WoLpH/speedups/blob/master/speedups/psycopg_loaders.py\n.. _pep517: https://www.python.org/dev/peps/pep-0517/\n",
"bugtrack_url": null,
"license": "BSD 3-Clause License",
"summary": "Library with some C and Cython code for speeding up common operations. This is externalized to avoid the hassle of building binary wheels in my other projects.",
"version": "1.4.0",
"project_urls": {
"Homepage": "https://github.com/WoLpH/speedups/"
},
"split_keywords": [
"cython",
"c",
"c++",
"speedups",
"numpy",
"postgresql",
"psycopg"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "70f82f555ac47e6958dcf435f78b8cba3f7fd4a021f45c7e7b0fd1bc1ea6f11a",
"md5": "db543e3f8f095dc817a8c2ee8ca06f75",
"sha256": "60be6a2276923bf3390101898a627b2f62410b75b20e053a75f8fb2e7d4c5135"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "db543e3f8f095dc817a8c2ee8ca06f75",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 276793,
"upload_time": "2024-02-21T11:56:06",
"upload_time_iso_8601": "2024-02-21T11:56:06.186781Z",
"url": "https://files.pythonhosted.org/packages/70/f8/2f555ac47e6958dcf435f78b8cba3f7fd4a021f45c7e7b0fd1bc1ea6f11a/speedups-1.4.0-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e1b58a36e8c0b781402792bff3d007354684752bbf79b3923494caa955455623",
"md5": "067d1c2e37f8f06242c9bd417d151c1c",
"sha256": "f357c74e91922b1430061161aec240a69e3a993ccc51bcc13f584a25d69ca391"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "067d1c2e37f8f06242c9bd417d151c1c",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 743711,
"upload_time": "2024-02-21T11:56:08",
"upload_time_iso_8601": "2024-02-21T11:56:08.156381Z",
"url": "https://files.pythonhosted.org/packages/e1/b5/8a36e8c0b781402792bff3d007354684752bbf79b3923494caa955455623/speedups-1.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e6a12a1aaec72c41fb18252cec1054398476f2b89befceda54e70ba78baeaf28",
"md5": "6671885c3bbb11718224d2e285197304",
"sha256": "901e1089db8b6d089dfc12327cbacadfb762277a36e1835e822d3258104f439a"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "6671885c3bbb11718224d2e285197304",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 263001,
"upload_time": "2024-02-21T11:56:09",
"upload_time_iso_8601": "2024-02-21T11:56:09.775857Z",
"url": "https://files.pythonhosted.org/packages/e6/a1/2a1aaec72c41fb18252cec1054398476f2b89befceda54e70ba78baeaf28/speedups-1.4.0-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f416bbd1e040e4674d5857fa9d5d569c416ac00bbe6bccf6ae0208733fa73aa0",
"md5": "93b0181776f12f7eb0ced8c0d53ebe6d",
"sha256": "ac7de083eccaea68a61e9709eef1027daaff1653ce2728040ce027b41dfbc75c"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "93b0181776f12f7eb0ced8c0d53ebe6d",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 276426,
"upload_time": "2024-02-21T11:56:12",
"upload_time_iso_8601": "2024-02-21T11:56:12.111342Z",
"url": "https://files.pythonhosted.org/packages/f4/16/bbd1e040e4674d5857fa9d5d569c416ac00bbe6bccf6ae0208733fa73aa0/speedups-1.4.0-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ad5c25a4d6e0e023cf6e82a5f13ecf684f5d2ba94bbfd9784498b2457c65908a",
"md5": "77e451ca785f661e1c6ab1c54df053ac",
"sha256": "98581e3a3216b6425633eb865c200a6376f8f8d56c7ed78ab9ecbf9261db459b"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp311-cp311-macosx_12_0_x86_64.whl",
"has_sig": false,
"md5_digest": "77e451ca785f661e1c6ab1c54df053ac",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 274583,
"upload_time": "2024-02-21T11:46:57",
"upload_time_iso_8601": "2024-02-21T11:46:57.268023Z",
"url": "https://files.pythonhosted.org/packages/ad/5c/25a4d6e0e023cf6e82a5f13ecf684f5d2ba94bbfd9784498b2457c65908a/speedups-1.4.0-cp311-cp311-macosx_12_0_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "081f2118c484dbaec8db18435ef029d9a4edb324cd43541981ede774bdd5ec17",
"md5": "942c8209d3ebfcc685a40f72f6eba435",
"sha256": "d8e4b4695ef085749244ac4cdbcb33679815de9b79ae12945bc5162b78c59bf3"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "942c8209d3ebfcc685a40f72f6eba435",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 793821,
"upload_time": "2024-02-21T11:56:13",
"upload_time_iso_8601": "2024-02-21T11:56:13.334201Z",
"url": "https://files.pythonhosted.org/packages/08/1f/2118c484dbaec8db18435ef029d9a4edb324cd43541981ede774bdd5ec17/speedups-1.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e8634f18ae845d8b817b5a8a7c26d8d7a4476b08620ba7b75d227ca47a6ee2b6",
"md5": "9fdc2319a5aa3d392a9870e17bde35c3",
"sha256": "8db868526434050a8e7adb164d4205dfe5ca3d1600c1674a2565d3b2660d9a0b"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "9fdc2319a5aa3d392a9870e17bde35c3",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 262955,
"upload_time": "2024-02-21T11:56:15",
"upload_time_iso_8601": "2024-02-21T11:56:15.241685Z",
"url": "https://files.pythonhosted.org/packages/e8/63/4f18ae845d8b817b5a8a7c26d8d7a4476b08620ba7b75d227ca47a6ee2b6/speedups-1.4.0-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "66072a70c722971901f247f694a285771119d3492f21c22c4b2f53fd6ce7334f",
"md5": "d20a42ec7a47e872cf3832a1330547a9",
"sha256": "45011bda14236e58a43f9143165c74e68d6f46924070c51c47a832cb1c13c3ee"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp312-cp312-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "d20a42ec7a47e872cf3832a1330547a9",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 279421,
"upload_time": "2024-02-21T11:56:17",
"upload_time_iso_8601": "2024-02-21T11:56:17.027082Z",
"url": "https://files.pythonhosted.org/packages/66/07/2a70c722971901f247f694a285771119d3492f21c22c4b2f53fd6ce7334f/speedups-1.4.0-cp312-cp312-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3c0658beba59bbeda0c3250d0adacc4983fb5e82db4eee9ebbf392b582491877",
"md5": "d62f31e2a1e7957cbd8c0c24b1a6aec3",
"sha256": "01f7da5188f805e8ddd68b49cbed08bc9b38c7919d79ad74c8002d538f1c5c78"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "d62f31e2a1e7957cbd8c0c24b1a6aec3",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 787494,
"upload_time": "2024-02-21T11:56:18",
"upload_time_iso_8601": "2024-02-21T11:56:18.201180Z",
"url": "https://files.pythonhosted.org/packages/3c/06/58beba59bbeda0c3250d0adacc4983fb5e82db4eee9ebbf392b582491877/speedups-1.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0aa10e1077ea356d7ecbc164962d999b55bdfb1bd1f3ea9dd166585f0cc89363",
"md5": "41604eb87e7f81c9040e4d9df5224f13",
"sha256": "13d70bb49fd3d4785f1fa30d240934d3417808b8da09470cf7a522efefd340df"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "41604eb87e7f81c9040e4d9df5224f13",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 263873,
"upload_time": "2024-02-21T11:56:19",
"upload_time_iso_8601": "2024-02-21T11:56:19.442229Z",
"url": "https://files.pythonhosted.org/packages/0a/a1/0e1077ea356d7ecbc164962d999b55bdfb1bd1f3ea9dd166585f0cc89363/speedups-1.4.0-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c92ec7e1d695f5f24d894c1b49d193789c3211100e7b7c7e898984e3af46ac71",
"md5": "629892fb311c8955ae4e5b8d1d2f0e18",
"sha256": "25e21c93ce06d1621c0da18155af799b7524e60b9a40423e550c036ba9b27ef6"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp38-cp38-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "629892fb311c8955ae4e5b8d1d2f0e18",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 275710,
"upload_time": "2024-02-21T11:56:21",
"upload_time_iso_8601": "2024-02-21T11:56:21.026869Z",
"url": "https://files.pythonhosted.org/packages/c9/2e/c7e1d695f5f24d894c1b49d193789c3211100e7b7c7e898984e3af46ac71/speedups-1.4.0-cp38-cp38-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b8ff4fd6191434df0f203590f2d7539a3f4be763fcbb847ad861f4b2b907df07",
"md5": "6cfe97195f2a16c0ba2dd3b90f5397bc",
"sha256": "baea077f04bd61bdf0858fed72d23e01d6b36d8a7f61ad6531a15414a0c0dbf1"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "6cfe97195f2a16c0ba2dd3b90f5397bc",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 754200,
"upload_time": "2024-02-21T11:56:22",
"upload_time_iso_8601": "2024-02-21T11:56:22.420614Z",
"url": "https://files.pythonhosted.org/packages/b8/ff/4fd6191434df0f203590f2d7539a3f4be763fcbb847ad861f4b2b907df07/speedups-1.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3a3d693d319361ee2a644b2abdf5b3e0f5c7e9f57acc0ce21a3af8642f018bfb",
"md5": "0fa5edf5343ce2ff326222b4e2da9ea1",
"sha256": "6d66ec97f52456900093a708a0aec838e70c1c9f7975056ced5ceb42ca801e33"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp38-cp38-win_amd64.whl",
"has_sig": false,
"md5_digest": "0fa5edf5343ce2ff326222b4e2da9ea1",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 263603,
"upload_time": "2024-02-21T11:56:24",
"upload_time_iso_8601": "2024-02-21T11:56:24.946971Z",
"url": "https://files.pythonhosted.org/packages/3a/3d/693d319361ee2a644b2abdf5b3e0f5c7e9f57acc0ce21a3af8642f018bfb/speedups-1.4.0-cp38-cp38-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1d08cc7039a7567d90554a1018e15994225716f05497a75343ae355afdbcd16b",
"md5": "7df50957a5ce73bfff176060fb690e12",
"sha256": "51b1c49baf0626352986a62b974aaaba63a535c4064c161e4f7ad880dff75b61"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp39-cp39-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "7df50957a5ce73bfff176060fb690e12",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 277404,
"upload_time": "2024-02-21T11:56:26",
"upload_time_iso_8601": "2024-02-21T11:56:26.676064Z",
"url": "https://files.pythonhosted.org/packages/1d/08/cc7039a7567d90554a1018e15994225716f05497a75343ae355afdbcd16b/speedups-1.4.0-cp39-cp39-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "dcb8be2f5448734f670099ee8ad4401f5b2975608084c8d53a05701cc2b7f3a1",
"md5": "034fec68f3223532348af63a9085b790",
"sha256": "510f03ea39805afc8f6126e546915dc29e1579e959ed68303af6d110ff3c3244"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "034fec68f3223532348af63a9085b790",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 746038,
"upload_time": "2024-02-21T11:56:28",
"upload_time_iso_8601": "2024-02-21T11:56:28.266594Z",
"url": "https://files.pythonhosted.org/packages/dc/b8/be2f5448734f670099ee8ad4401f5b2975608084c8d53a05701cc2b7f3a1/speedups-1.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0d472ccd790a6be8ffa1137dee0123257b5998ce092d5ba282db07799002d72d",
"md5": "ecc478e91af4de2002e84a091dc22d2f",
"sha256": "dbc1652d7c9dfd5b358939460feb7c064581cb52421f0e1f77246350f6eca557"
},
"downloads": -1,
"filename": "speedups-1.4.0-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "ecc478e91af4de2002e84a091dc22d2f",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 263523,
"upload_time": "2024-02-21T11:56:29",
"upload_time_iso_8601": "2024-02-21T11:56:29.515549Z",
"url": "https://files.pythonhosted.org/packages/0d/47/2ccd790a6be8ffa1137dee0123257b5998ce092d5ba282db07799002d72d/speedups-1.4.0-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "adbdcc96f153b96f7eb5949720d6ea2a96a04a9c9e0a2ed146959a8e1209d91d",
"md5": "9416d98abae2e9e0b2ef1cce391d1c42",
"sha256": "6458a2f732f0487c70a6ffcb3aa7da4ab0b092166585210db5334f83549d5e82"
},
"downloads": -1,
"filename": "speedups-1.4.0.tar.gz",
"has_sig": false,
"md5_digest": "9416d98abae2e9e0b2ef1cce391d1c42",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 176741,
"upload_time": "2024-02-21T11:46:59",
"upload_time_iso_8601": "2024-02-21T11:46:59.191663Z",
"url": "https://files.pythonhosted.org/packages/ad/bd/cc96f153b96f7eb5949720d6ea2a96a04a9c9e0a2ed146959a8e1209d91d/speedups-1.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-21 11:46:59",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "WoLpH",
"github_project": "speedups",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "speedups"
}