<h1 id="pyreindexer">pyreindexer</h1>
The pyreindexer module provides a connector and its auxiliary tools for interaction with Reindexer.
<h1 id="pyreindexer.rx_connector">pyreindexer.rx_connector</h1>
<h2 id="pyreindexer.rx_connector.RxConnector">RxConnector</h2>
```python
RxConnector(self, dsn)
```
RxConnector provides a binding to Reindexer upon two shared libraries (hereinafter - APIs): 'rawpyreindexerb.so' and 'rawpyreindexerc.so'.
The first one is aimed to a builtin way usage. That API embeds Reindexer so it could be used right in-place as is.
The second one acts as a lightweight client which establishes a connection to Reindexer server via RPC.
The APIs interfaces are completely the same.
__Attributes:__
api (module): An API module loaded dynamically for Reindexer calls
rx (int): A memory pointer to Reindexer instance
err_code (int): the API error code
err_msg (string): the API error message
<h3 id="pyreindexer.rx_connector.RxConnector.close">close</h3>
```python
RxConnector.close(self)
```
Closes an API instance with Reindexer resources freeing
__Returns:__
None
<h3 id="pyreindexer.rx_connector.RxConnector.namespace_open">namespace_open</h3>
```python
RxConnector.namespace_open(self, namespace)
```
Opens a namespace specified or creates a namespace if it does not exist
__Arguments:__
namespace (string): A name of a namespace
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.namespace_close">namespace_close</h3>
```python
RxConnector.namespace_close(self, namespace)
```
Closes a namespace specified
__Arguments:__
namespace (string): A name of a namespace
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.namespace_drop">namespace_drop</h3>
```python
RxConnector.namespace_drop(self, namespace)
```
Drops a namespace specified
__Arguments:__
namespace (string): A name of a namespace
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.namespaces_enum">namespaces_enum</h3>
```python
RxConnector.namespaces_enum(self, enum_not_opened=False)
```
Gets a list of namespaces available
__Arguments:__
enum_not_opened (bool, optional): An enumeration mode flag. If it is
set then closed namespaces are in result list too. Defaults to False.
__Returns:__
(:obj:`list` of :obj:`dict`): A list of dictionaries which describe each namespace.
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.index_add">index_add</h3>
```python
RxConnector.index_add(self, namespace, index_def)
```
Adds an index to the namespace specified
__Arguments:__
namespace (string): A name of a namespace
index_def (dict): A dictionary of index definiton
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.index_update">index_update</h3>
```python
RxConnector.index_update(self, namespace, index_def)
```
Updates an index in the namespace specified
__Arguments:__
namespace (string): A name of a namespace
index_def (dict): A dictionary of index definiton
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.index_drop">index_drop</h3>
```python
RxConnector.index_drop(self, namespace, index_name)
```
Drops an index from the namespace specified
__Arguments:__
namespace (string): A name of a namespace
index_name (string): A name of an index
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.item_insert">item_insert</h3>
```python
RxConnector.item_insert(self, namespace, item_def, precepts=[])
```
Inserts an item with its precepts to the namespace specified.
__Arguments:__
namespace (string): A name of a namespace
item_def (dict): A dictionary of item definiton
precepts (:obj:`list` of :obj:`str`): A dictionary of index definiton
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.item_update">item_update</h3>
```python
RxConnector.item_update(self, namespace, item_def, precepts=[])
```
Updates an item with its precepts in the namespace specified.
__Arguments:__
namespace (string): A name of a namespace
item_def (dict): A dictionary of item definiton
precepts (:obj:`list` of :obj:`str`): A dictionary of index definiton
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.item_upsert">item_upsert</h3>
```python
RxConnector.item_upsert(self, namespace, item_def, precepts=[])
```
Updates an item with its precepts in the namespace specified. Creates the item if it not exist.
__Arguments:__
namespace (string): A name of a namespace
item_def (dict): A dictionary of item definiton
precepts (:obj:`list` of :obj:`str`): A dictionary of index definiton
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.item_delete">item_delete</h3>
```python
RxConnector.item_delete(self, namespace, item_def)
```
Deletes an item from the namespace specified.
__Arguments:__
namespace (string): A name of a namespace
item_def (dict): A dictionary of item definiton
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.meta_put">meta_put</h3>
```python
RxConnector.meta_put(self, namespace, key, value)
```
Puts metadata to a storage of Reindexer by key
__Arguments:__
namespace (string): A name of a namespace
key (string): A key in a storage of Reindexer for metadata keeping
value (string): A metadata for storage
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.meta_get">meta_get</h3>
```python
RxConnector.meta_get(self, namespace, key)
```
Gets metadata from a storage of Reindexer by key specified
__Arguments:__
namespace (string): A name of a namespace
key (string): A key in a storage of Reindexer where metadata is kept
__Returns:__
string: A metadata value
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.meta_delete">meta_delete</h3>
```python
RxConnector.meta_delete(self, namespace, key)
```
Deletes metadata from a storage of Reindexer by key specified
__Arguments:__
namespace (string): A name of a namespace
key (string): A key in a storage of Reindexer where metadata is kept
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.meta_enum">meta_enum</h3>
```python
RxConnector.meta_enum(self, namespace)
```
Gets a list of metadata keys from a storage of Reindexer
__Arguments:__
namespace (string): A name of a namespace
__Returns:__
(:obj:`list` of :obj:`str`): A list of all metadata keys.
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h3 id="pyreindexer.rx_connector.RxConnector.select">select</h3>
```python
RxConnector.select(self, query)
```
Executes an SQL query and returns query results
__Arguments:__
query (string): An SQL query
__Returns:__
(:obj:`QueryResults`): A QueryResults iterator.
__Raises:__
Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.
Exception: Raises with an error message of API return on non-zero error code.
<h1 id="pyreindexer.query_results">pyreindexer.query_results</h1>
<h2 id="pyreindexer.query_results.QueryResults">QueryResults</h2>
```python
QueryResults(self, api, qres_wrapper_ptr, qres_iter_count)
```
QueryResults is a disposable iterator of Reindexer results for such queries as SELECT and etc.
When the results are fetched the iterator closes and frees a memory of results buffer of Reindexer
__Attributes:__
api (module): An API module for Reindexer calls
err_code (int): the API error code
err_msg (string): the API error message
qres_wrapper_ptr (int): A memory pointer to Reindexer iterator object
qres_iter_count (int): A count of results for iterations
pos (int): The current result position in iterator
<h3 id="pyreindexer.query_results.QueryResults.count">count</h3>
```python
QueryResults.count(self)
```
Returns a count of results
__Returns__
`int`: A count of results
<h1 id="pyreindexer.index_definition">pyreindexer.index_definition</h1>
<h2 id="pyreindexer.index_definition.IndexDefinition">IndexDefinition</h2>
```python
IndexDefinition(self, /, *args, **kwargs)
```
IndexDefinition is a dictionary subclass which allows to construct and manage indexes more efficiently.
NOT IMPLEMENTED YET. USE FIELDS DESCRIPTION ONLY.
__Arguments:__
name (str): An index name.
json_paths (:obj:`list` of :obj:`str`): A name for mapping a value to a json field.
field_type (str): A type of a field. Possible values are: `int`, `int64`, `double`, `string`, `bool`, `composite`.
index_type (str): An index type. Possible values are: `hash`, `tree`, `text`, `-`.
is_pk (bool): True if a field is a primary key.
is_array (bool): True if an index is an array.
is_dense (bool): True if an index is dense. reduce index size. Saves 8 bytes per unique key value for 'hash' and 'tree' index types.
For '-' index type saves 4-8 bytes per each element. Useful for indexes with high selectivity, but for tree and hash indexes with low selectivity could
significantly decrease update performance.
is_sparse (bool): True if a value of an index may be not presented.
collate_mode (str): Sets an order of values by collate mode. Possible values are: `none`, `ascii`, `utf8`, `numeric`, `custom`.
sort_order_letters (str): Order for a sort sequence for a custom collate mode.
config (dict): A config for a fulltext engine. [More](https://github.com/Restream/reindexer/blob/master/fulltext.md) .
Raw data
{
"_id": null,
"home_page": "https://github.com/Restream/reindexer-py",
"name": "pyreindexer",
"maintainer": "Reindexer Team",
"docs_url": null,
"requires_python": "<3.13,>=3.6",
"maintainer_email": "contactus@reindexer.io",
"keywords": "reindexer, in-memory-database, database, python, connector",
"author": "Igor Tulmentyev",
"author_email": "igtulm@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/06/2b/ae55179e119f5ac522a89a0af64a4874c66637239a61a5d225af666fc288/pyreindexer-0.2.37.tar.gz",
"platform": "ALT Linux",
"description": "<h1 id=\"pyreindexer\">pyreindexer</h1>\n\n\nThe pyreindexer module provides a connector and its auxiliary tools for interaction with Reindexer.\n\n<h1 id=\"pyreindexer.rx_connector\">pyreindexer.rx_connector</h1>\n\n\n<h2 id=\"pyreindexer.rx_connector.RxConnector\">RxConnector</h2>\n\n```python\nRxConnector(self, dsn)\n```\nRxConnector provides a binding to Reindexer upon two shared libraries (hereinafter - APIs): 'rawpyreindexerb.so' and 'rawpyreindexerc.so'.\nThe first one is aimed to a builtin way usage. That API embeds Reindexer so it could be used right in-place as is.\nThe second one acts as a lightweight client which establishes a connection to Reindexer server via RPC.\nThe APIs interfaces are completely the same.\n\n__Attributes:__\n\n api (module): An API module loaded dynamically for Reindexer calls\n rx (int): A memory pointer to Reindexer instance\n err_code (int): the API error code\n err_msg (string): the API error message\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.close\">close</h3>\n\n```python\nRxConnector.close(self)\n```\nCloses an API instance with Reindexer resources freeing\n\n__Returns:__\n\n None\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.namespace_open\">namespace_open</h3>\n\n```python\nRxConnector.namespace_open(self, namespace)\n```\nOpens a namespace specified or creates a namespace if it does not exist\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.namespace_close\">namespace_close</h3>\n\n```python\nRxConnector.namespace_close(self, namespace)\n```\nCloses a namespace specified\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.namespace_drop\">namespace_drop</h3>\n\n```python\nRxConnector.namespace_drop(self, namespace)\n```\nDrops a namespace specified\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.namespaces_enum\">namespaces_enum</h3>\n\n```python\nRxConnector.namespaces_enum(self, enum_not_opened=False)\n```\nGets a list of namespaces available\n\n__Arguments:__\n\n enum_not_opened (bool, optional): An enumeration mode flag. If it is\n set then closed namespaces are in result list too. Defaults to False.\n\n__Returns:__\n\n (:obj:`list` of :obj:`dict`): A list of dictionaries which describe each namespace.\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.index_add\">index_add</h3>\n\n```python\nRxConnector.index_add(self, namespace, index_def)\n```\nAdds an index to the namespace specified\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n index_def (dict): A dictionary of index definiton\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.index_update\">index_update</h3>\n\n```python\nRxConnector.index_update(self, namespace, index_def)\n```\nUpdates an index in the namespace specified\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n index_def (dict): A dictionary of index definiton\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.index_drop\">index_drop</h3>\n\n```python\nRxConnector.index_drop(self, namespace, index_name)\n```\nDrops an index from the namespace specified\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n index_name (string): A name of an index\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.item_insert\">item_insert</h3>\n\n```python\nRxConnector.item_insert(self, namespace, item_def, precepts=[])\n```\nInserts an item with its precepts to the namespace specified.\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n item_def (dict): A dictionary of item definiton\n precepts (:obj:`list` of :obj:`str`): A dictionary of index definiton\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.item_update\">item_update</h3>\n\n```python\nRxConnector.item_update(self, namespace, item_def, precepts=[])\n```\nUpdates an item with its precepts in the namespace specified.\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n item_def (dict): A dictionary of item definiton\n precepts (:obj:`list` of :obj:`str`): A dictionary of index definiton\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.item_upsert\">item_upsert</h3>\n\n```python\nRxConnector.item_upsert(self, namespace, item_def, precepts=[])\n```\nUpdates an item with its precepts in the namespace specified. Creates the item if it not exist.\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n item_def (dict): A dictionary of item definiton\n precepts (:obj:`list` of :obj:`str`): A dictionary of index definiton\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.item_delete\">item_delete</h3>\n\n```python\nRxConnector.item_delete(self, namespace, item_def)\n```\nDeletes an item from the namespace specified.\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n item_def (dict): A dictionary of item definiton\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.meta_put\">meta_put</h3>\n\n```python\nRxConnector.meta_put(self, namespace, key, value)\n```\nPuts metadata to a storage of Reindexer by key\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n key (string): A key in a storage of Reindexer for metadata keeping\n value (string): A metadata for storage\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.meta_get\">meta_get</h3>\n\n```python\nRxConnector.meta_get(self, namespace, key)\n```\nGets metadata from a storage of Reindexer by key specified\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n key (string): A key in a storage of Reindexer where metadata is kept\n\n__Returns:__\n\n string: A metadata value\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.meta_delete\">meta_delete</h3>\n\n```python\nRxConnector.meta_delete(self, namespace, key)\n```\nDeletes metadata from a storage of Reindexer by key specified\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n key (string): A key in a storage of Reindexer where metadata is kept\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.meta_enum\">meta_enum</h3>\n\n```python\nRxConnector.meta_enum(self, namespace)\n```\nGets a list of metadata keys from a storage of Reindexer\n\n__Arguments:__\n\n namespace (string): A name of a namespace\n\n__Returns:__\n\n (:obj:`list` of :obj:`str`): A list of all metadata keys.\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h3 id=\"pyreindexer.rx_connector.RxConnector.select\">select</h3>\n\n```python\nRxConnector.select(self, query)\n```\nExecutes an SQL query and returns query results\n\n__Arguments:__\n\n query (string): An SQL query\n\n__Returns:__\n\n (:obj:`QueryResults`): A QueryResults iterator.\n\n__Raises:__\n\n Exception: Raises with an error message of API return if Reindexer instance is not initialized yet.\n Exception: Raises with an error message of API return on non-zero error code.\n\n\n<h1 id=\"pyreindexer.query_results\">pyreindexer.query_results</h1>\n\n\n<h2 id=\"pyreindexer.query_results.QueryResults\">QueryResults</h2>\n\n```python\nQueryResults(self, api, qres_wrapper_ptr, qres_iter_count)\n```\nQueryResults is a disposable iterator of Reindexer results for such queries as SELECT and etc.\nWhen the results are fetched the iterator closes and frees a memory of results buffer of Reindexer\n\n__Attributes:__\n\n api (module): An API module for Reindexer calls\n err_code (int): the API error code\n err_msg (string): the API error message\n qres_wrapper_ptr (int): A memory pointer to Reindexer iterator object\n qres_iter_count (int): A count of results for iterations\n pos (int): The current result position in iterator\n\n<h3 id=\"pyreindexer.query_results.QueryResults.count\">count</h3>\n\n```python\nQueryResults.count(self)\n```\nReturns a count of results\n\n__Returns__\n\n`int`: A count of results\n\n\n<h1 id=\"pyreindexer.index_definition\">pyreindexer.index_definition</h1>\n\n\n<h2 id=\"pyreindexer.index_definition.IndexDefinition\">IndexDefinition</h2>\n\n```python\nIndexDefinition(self, /, *args, **kwargs)\n```\nIndexDefinition is a dictionary subclass which allows to construct and manage indexes more efficiently.\nNOT IMPLEMENTED YET. USE FIELDS DESCRIPTION ONLY.\n\n__Arguments:__\n\n name (str): An index name.\n json_paths (:obj:`list` of :obj:`str`): A name for mapping a value to a json field.\n field_type (str): A type of a field. Possible values are: `int`, `int64`, `double`, `string`, `bool`, `composite`.\n index_type (str): An index type. Possible values are: `hash`, `tree`, `text`, `-`.\n is_pk (bool): True if a field is a primary key.\n is_array (bool): True if an index is an array.\n is_dense (bool): True if an index is dense. reduce index size. Saves 8 bytes per unique key value for 'hash' and 'tree' index types.\n For '-' index type saves 4-8 bytes per each element. Useful for indexes with high selectivity, but for tree and hash indexes with low selectivity could\n significantly decrease update performance.\n is_sparse (bool): True if a value of an index may be not presented.\n collate_mode (str): Sets an order of values by collate mode. Possible values are: `none`, `ascii`, `utf8`, `numeric`, `custom`.\n sort_order_letters (str): Order for a sort sequence for a custom collate mode.\n config (dict): A config for a fulltext engine. [More](https://github.com/Restream/reindexer/blob/master/fulltext.md) .\n\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "A connector that allows to interact with Reindexer",
"version": "0.2.37",
"project_urls": {
"Documentation": "https://reindexer.io/",
"Homepage": "https://github.com/Restream/reindexer-py",
"Releases": "https://github.com/Restream/reindexer-py/releases",
"Tracker": "https://github.com/Restream/reindexer-py/issues"
},
"split_keywords": [
"reindexer",
" in-memory-database",
" database",
" python",
" connector"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "062bae55179e119f5ac522a89a0af64a4874c66637239a61a5d225af666fc288",
"md5": "91cae2ab3d4036d16888f937911a5b39",
"sha256": "f3ba6efb48d49542824bc98654b3505bf4c107e3f8ff242d6086a27ff73f9c10"
},
"downloads": -1,
"filename": "pyreindexer-0.2.37.tar.gz",
"has_sig": false,
"md5_digest": "91cae2ab3d4036d16888f937911a5b39",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.13,>=3.6",
"size": 28499,
"upload_time": "2024-10-08T12:37:48",
"upload_time_iso_8601": "2024-10-08T12:37:48.184864Z",
"url": "https://files.pythonhosted.org/packages/06/2b/ae55179e119f5ac522a89a0af64a4874c66637239a61a5d225af666fc288/pyreindexer-0.2.37.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-08 12:37:48",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Restream",
"github_project": "reindexer-py",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "pyreindexer"
}