summaryrefslogtreecommitdiff
path: root/python-json-store-client.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-json-store-client.spec')
-rw-r--r--python-json-store-client.spec306
1 files changed, 306 insertions, 0 deletions
diff --git a/python-json-store-client.spec b/python-json-store-client.spec
new file mode 100644
index 0000000..d2235e2
--- /dev/null
+++ b/python-json-store-client.spec
@@ -0,0 +1,306 @@
+%global _empty_manifest_terminate_build 0
+Name: python-json-store-client
+Version: 1.1.0
+Release: 1
+Summary: A client library for jsonstore
+License: MIT License
+URL: https://github.com/leon332157/json-store-client
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/0d/43/a3fcdaf9db4f451fa7ab4c8fa6749e36612530d2e6feaa56a22e780c9668/json-store-client-1.1.0.tar.gz
+BuildArch: noarch
+
+
+%description
+# json-store-client
+A Python client for [jsonstore.io](https://www.jsonstore.io/)
+
+## Installation
+```bash
+pip install json-store-client
+```
+#### An optional installation of [ujson](https://pypi.org/project/ujson/) is recommended for faster json processing.
+##### Also installing [cchardet](https://pypi.org/project/cchardet/) and [aiodns](https://pypi.org/project/aiodns/) are recommended by aiohttp for faster performance.
+
+## Usage
+
+#### Demo of storing a Python json-friendly object with json-store-client in async on [repl.it](https://repl.it/@leon332157/json-store-client-demo).
+
+```python
+import json_store_client
+
+jsonStoreToken = '...' # Insert your token here.
+client = json_store_client.AsyncClient(jsonStoreToken)
+async def demo_function():
+ # Save data to the 'foo' key.
+ await client.store('foo', {'alfa': 'bravo', 'charlie': 'delta'})
+
+ # Save data with dict mapping
+ await client.save_multiple({'foo':{'alfa': 'bravo', 'charlie': 'delta'}})
+
+ # Get the data from the 'foo' key.
+ data = await client.retrieve('foo')
+
+ print(data['alfa']) # => 'bravo'
+
+ # Deletes the data after printing parts of it.
+ await client.delete('foo')
+```
+
+## json-store-client API
+
+### json_store_client.Client(token)
+### json_store_client.AsyncClient(token)
+
+Returns the client to use for data operations.
+
+###### token (str): The API token from [jsonstore.io](https://www.jsonstore.io)
+
+
+### client.store(key, data[, timeout])
+### await client.store(key, data[, timeout])
+
+Storing data in jsonstore with a key
+
+###### key (str): The key to be stored on jsonstore
+###### data (any): The data to be stored under the key. It can be any Python objects.
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+### client.store_multiple(data[, timeout])
+### await client.store_multiple(data[, timeout])
+
+Storing data in jsonstore with a dict mapping
+
+###### data (dict): A dict of {key(s):value(s)} to be updated.
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+### client.retrieve(key[, timeout])
+### await clent.retrieve(key[, timeout])
+Retrieve data in jsonstore with a key
+
+##### If nothing is saved under the key, it will return None.
+
+###### key (str): The key to get on jsonstore
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+
+### client.delete(key[, timeout])
+### await client.delete(key[, timeout])
+
+Delete data in jsonstore with a key
+
+###### key (str): The key to get on jsonstore
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+%package -n python3-json-store-client
+Summary: A client library for jsonstore
+Provides: python-json-store-client
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-json-store-client
+# json-store-client
+A Python client for [jsonstore.io](https://www.jsonstore.io/)
+
+## Installation
+```bash
+pip install json-store-client
+```
+#### An optional installation of [ujson](https://pypi.org/project/ujson/) is recommended for faster json processing.
+##### Also installing [cchardet](https://pypi.org/project/cchardet/) and [aiodns](https://pypi.org/project/aiodns/) are recommended by aiohttp for faster performance.
+
+## Usage
+
+#### Demo of storing a Python json-friendly object with json-store-client in async on [repl.it](https://repl.it/@leon332157/json-store-client-demo).
+
+```python
+import json_store_client
+
+jsonStoreToken = '...' # Insert your token here.
+client = json_store_client.AsyncClient(jsonStoreToken)
+async def demo_function():
+ # Save data to the 'foo' key.
+ await client.store('foo', {'alfa': 'bravo', 'charlie': 'delta'})
+
+ # Save data with dict mapping
+ await client.save_multiple({'foo':{'alfa': 'bravo', 'charlie': 'delta'}})
+
+ # Get the data from the 'foo' key.
+ data = await client.retrieve('foo')
+
+ print(data['alfa']) # => 'bravo'
+
+ # Deletes the data after printing parts of it.
+ await client.delete('foo')
+```
+
+## json-store-client API
+
+### json_store_client.Client(token)
+### json_store_client.AsyncClient(token)
+
+Returns the client to use for data operations.
+
+###### token (str): The API token from [jsonstore.io](https://www.jsonstore.io)
+
+
+### client.store(key, data[, timeout])
+### await client.store(key, data[, timeout])
+
+Storing data in jsonstore with a key
+
+###### key (str): The key to be stored on jsonstore
+###### data (any): The data to be stored under the key. It can be any Python objects.
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+### client.store_multiple(data[, timeout])
+### await client.store_multiple(data[, timeout])
+
+Storing data in jsonstore with a dict mapping
+
+###### data (dict): A dict of {key(s):value(s)} to be updated.
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+### client.retrieve(key[, timeout])
+### await clent.retrieve(key[, timeout])
+Retrieve data in jsonstore with a key
+
+##### If nothing is saved under the key, it will return None.
+
+###### key (str): The key to get on jsonstore
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+
+### client.delete(key[, timeout])
+### await client.delete(key[, timeout])
+
+Delete data in jsonstore with a key
+
+###### key (str): The key to get on jsonstore
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+%package help
+Summary: Development documents and examples for json-store-client
+Provides: python3-json-store-client-doc
+%description help
+# json-store-client
+A Python client for [jsonstore.io](https://www.jsonstore.io/)
+
+## Installation
+```bash
+pip install json-store-client
+```
+#### An optional installation of [ujson](https://pypi.org/project/ujson/) is recommended for faster json processing.
+##### Also installing [cchardet](https://pypi.org/project/cchardet/) and [aiodns](https://pypi.org/project/aiodns/) are recommended by aiohttp for faster performance.
+
+## Usage
+
+#### Demo of storing a Python json-friendly object with json-store-client in async on [repl.it](https://repl.it/@leon332157/json-store-client-demo).
+
+```python
+import json_store_client
+
+jsonStoreToken = '...' # Insert your token here.
+client = json_store_client.AsyncClient(jsonStoreToken)
+async def demo_function():
+ # Save data to the 'foo' key.
+ await client.store('foo', {'alfa': 'bravo', 'charlie': 'delta'})
+
+ # Save data with dict mapping
+ await client.save_multiple({'foo':{'alfa': 'bravo', 'charlie': 'delta'}})
+
+ # Get the data from the 'foo' key.
+ data = await client.retrieve('foo')
+
+ print(data['alfa']) # => 'bravo'
+
+ # Deletes the data after printing parts of it.
+ await client.delete('foo')
+```
+
+## json-store-client API
+
+### json_store_client.Client(token)
+### json_store_client.AsyncClient(token)
+
+Returns the client to use for data operations.
+
+###### token (str): The API token from [jsonstore.io](https://www.jsonstore.io)
+
+
+### client.store(key, data[, timeout])
+### await client.store(key, data[, timeout])
+
+Storing data in jsonstore with a key
+
+###### key (str): The key to be stored on jsonstore
+###### data (any): The data to be stored under the key. It can be any Python objects.
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+### client.store_multiple(data[, timeout])
+### await client.store_multiple(data[, timeout])
+
+Storing data in jsonstore with a dict mapping
+
+###### data (dict): A dict of {key(s):value(s)} to be updated.
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+### client.retrieve(key[, timeout])
+### await clent.retrieve(key[, timeout])
+Retrieve data in jsonstore with a key
+
+##### If nothing is saved under the key, it will return None.
+
+###### key (str): The key to get on jsonstore
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+
+### client.delete(key[, timeout])
+### await client.delete(key[, timeout])
+
+Delete data in jsonstore with a key
+
+###### key (str): The key to get on jsonstore
+###### timeout (int): The timeout for the http request. Default 5 seconds
+
+%prep
+%autosetup -n json-store-client-1.1.0
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-json-store-client -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 1.1.0-1
+- Package Spec generated