diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-15 09:15:27 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-15 09:15:27 +0000 |
commit | ddd6070c74a9037a5fc2f0b8a0d5e6181695451f (patch) | |
tree | 91e96f618224cd37c2ec17dd6f840583fc3887e5 | |
parent | ea6630c3144c1e8f60de39b8172993ebe9331d75 (diff) |
automatic import of python-duniterpy
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-duniterpy.spec | 501 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 503 insertions, 0 deletions
@@ -0,0 +1 @@ +/duniterpy-1.1.0.tar.gz diff --git a/python-duniterpy.spec b/python-duniterpy.spec new file mode 100644 index 0000000..1a5ed18 --- /dev/null +++ b/python-duniterpy.spec @@ -0,0 +1,501 @@ +%global _empty_manifest_terminate_build 0 +Name: python-duniterpy +Version: 1.1.0 +Release: 1 +Summary: Python library for developers of Duniter clients +License: GPL-3.0-or-later +URL: https://git.duniter.org/clients/python/duniterpy +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/04/df/0a2a4fc14659700508c2004636a63fa99227321b197cedc1bb711583d70e/duniterpy-1.1.0.tar.gz +BuildArch: noarch + +Requires: python3-graphql-core +Requires: python3-websocket-client +Requires: python3-jsonschema +Requires: python3-pypeg2 +Requires: python3-attrs +Requires: python3-base58 +Requires: python3-libnacl +Requires: python3-pyaes +Requires: python3-mnemonic + +%description +# DuniterPy +Most complete client oriented Python library for [Duniter](https://git.duniter.org/nodes/typescript/duniter)/Ğ1 ecosystem. + +This library was originally developed for [Sakia](http://sakia-wallet.org/) desktop client which is now discontinued. +It is currently used by following programs: +- [Tikka](https://git.duniter.org/clients/python), the desktop client (Work In Progress, not yet available). +- [Silkaj](https://silkaj.duniter.org/), command line client. +- [Jaklis](https://git.p2p.legal/axiom-team/jaklis), command line client for Cs+/Gchange pods. +- [Ğ1Dons](https://git.duniter.org/matograine/g1pourboire), Ğ1Dons, paper-wallet generator aimed at giving tips in Ğ1. + +## Features +### Network +- APIs support: BMA, GVA, WS2P, and CS+: + - [Basic Merkle API](https://git.duniter.org/nodes/typescript/duniter/-/blob/dev/doc/HTTP_API.md), first Duniter API to be deprecated + - GraphQL Verification API, Duniter API in developement meant to replace BMA. Based on GraphQL. + - Websocket to Peer, Duniter inter-nodes (servers) API + - Cesium+, non-Duniter API, used to store profile data related to the blockchain as well as ads for Cesium and Ğchange. +- Non-threaded asynchronous/synchronous connections +- Support HTTP, HTTPS, and WebSocket transport for the APIs +- Endpoints management + +### Blockchain +- Support [Duniter blockchain protocol](https://git.duniter.org/documents/rfcs#duniter-blockchain-protocol-dubp) +- Duniter documents management: transaction, block and WoT documents +- Multiple authentication methods +- Duniter signing key +- Sign/verify and encrypt/decrypt messages with Duniter credentials + +## Requirements +- Python >= 3.7.0 +- [websocket-client](https://pypi.org/project/websocket-client) +- [jsonschema](https://pypi.org/project/jsonschema) +- [pyPEG2](https://pypi.org/project/pyPEG2) +- [attrs](https://pypi.org/project/attrs) +- [base58](https://pypi.org/project/base58) +- [libnacl](https://pypi.org/project/libnacl) +- [pyaes](https://pypi.org/project/pyaes) + +## Installation +You will require following dependencies: +```bash +sudo apt install python3-pip python3-dev python3-wheel libsodium23 +``` + +You can install DuniterPy and its dependencies with following command: +```bash +pip3 install duniterpy --user +``` + +## Install the development environment +- [Install Poetry](https://python-poetry.org/docs/#installation) + +## Documentation +[Online official automaticaly generated documentation](https://clients.duniter.io/python/duniterpy/index.html) + +## Examples +The [examples folder](https://git.duniter.org/clients/python/duniterpy/tree/master/examples) contains scripts to help you! + +- Have a look at the `examples` folder +- Run examples from parent folder directly +```bash +poetry run python examples/request_data.py +``` + +Or from Python interpreter: +```bash +poetry run python +>>> import examples +>>> help(examples) +>>> examples.create_public_key() +``` + +`request_data_async` example requires to be run with `asyncio`: +```bash +>>> import examples, asyncio +>>> asyncio.get_event_loop().run_until_complete(examples.request_data_async()) +``` + +### How to generate and read locally the autodoc + +- Install Sphinx, included into the development dependencies: +```bash +poetry install +``` + +- Generate HTML documentation in `public` directory: +```bash +make docs +``` + +## Development +* When writing docstrings, use the reStructuredText format recommended by https://www.python.org/dev/peps/pep-0287/#docstring-significant-features +* Use `make check` commands to check the code and the format. + +* Install runtime dependencies +```bash +poetry install --no-dev +``` + +* Before submitting a merge requests, please check the static typing and tests. + +* Install dev dependencies +```bash +poetry install +``` + +* Check static typing with [mypy](http://mypy-lang.org/) +```bash +make mypy +``` + +## Packaging and deploy +### PyPI +Change and commit and tag the new version number (semantic version number) +```bash +./release.sh 0.42.3 +``` + +Build the PyPI package in the `dist` folder +```bash +make build +``` + +Deploy the package to PyPI test repository: +```bash +make deploy_test +``` + +Install the package from PyPI test repository +```bash +pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.python.org/simple/ duniterpy +``` + +Deploy the package on the PyPI repository: +```bash +make deploy +``` + +## Packaging status +[](https://repology.org/project/python:duniterpy/versions) + + +%package -n python3-duniterpy +Summary: Python library for developers of Duniter clients +Provides: python-duniterpy +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-duniterpy +# DuniterPy +Most complete client oriented Python library for [Duniter](https://git.duniter.org/nodes/typescript/duniter)/Ğ1 ecosystem. + +This library was originally developed for [Sakia](http://sakia-wallet.org/) desktop client which is now discontinued. +It is currently used by following programs: +- [Tikka](https://git.duniter.org/clients/python), the desktop client (Work In Progress, not yet available). +- [Silkaj](https://silkaj.duniter.org/), command line client. +- [Jaklis](https://git.p2p.legal/axiom-team/jaklis), command line client for Cs+/Gchange pods. +- [Ğ1Dons](https://git.duniter.org/matograine/g1pourboire), Ğ1Dons, paper-wallet generator aimed at giving tips in Ğ1. + +## Features +### Network +- APIs support: BMA, GVA, WS2P, and CS+: + - [Basic Merkle API](https://git.duniter.org/nodes/typescript/duniter/-/blob/dev/doc/HTTP_API.md), first Duniter API to be deprecated + - GraphQL Verification API, Duniter API in developement meant to replace BMA. Based on GraphQL. + - Websocket to Peer, Duniter inter-nodes (servers) API + - Cesium+, non-Duniter API, used to store profile data related to the blockchain as well as ads for Cesium and Ğchange. +- Non-threaded asynchronous/synchronous connections +- Support HTTP, HTTPS, and WebSocket transport for the APIs +- Endpoints management + +### Blockchain +- Support [Duniter blockchain protocol](https://git.duniter.org/documents/rfcs#duniter-blockchain-protocol-dubp) +- Duniter documents management: transaction, block and WoT documents +- Multiple authentication methods +- Duniter signing key +- Sign/verify and encrypt/decrypt messages with Duniter credentials + +## Requirements +- Python >= 3.7.0 +- [websocket-client](https://pypi.org/project/websocket-client) +- [jsonschema](https://pypi.org/project/jsonschema) +- [pyPEG2](https://pypi.org/project/pyPEG2) +- [attrs](https://pypi.org/project/attrs) +- [base58](https://pypi.org/project/base58) +- [libnacl](https://pypi.org/project/libnacl) +- [pyaes](https://pypi.org/project/pyaes) + +## Installation +You will require following dependencies: +```bash +sudo apt install python3-pip python3-dev python3-wheel libsodium23 +``` + +You can install DuniterPy and its dependencies with following command: +```bash +pip3 install duniterpy --user +``` + +## Install the development environment +- [Install Poetry](https://python-poetry.org/docs/#installation) + +## Documentation +[Online official automaticaly generated documentation](https://clients.duniter.io/python/duniterpy/index.html) + +## Examples +The [examples folder](https://git.duniter.org/clients/python/duniterpy/tree/master/examples) contains scripts to help you! + +- Have a look at the `examples` folder +- Run examples from parent folder directly +```bash +poetry run python examples/request_data.py +``` + +Or from Python interpreter: +```bash +poetry run python +>>> import examples +>>> help(examples) +>>> examples.create_public_key() +``` + +`request_data_async` example requires to be run with `asyncio`: +```bash +>>> import examples, asyncio +>>> asyncio.get_event_loop().run_until_complete(examples.request_data_async()) +``` + +### How to generate and read locally the autodoc + +- Install Sphinx, included into the development dependencies: +```bash +poetry install +``` + +- Generate HTML documentation in `public` directory: +```bash +make docs +``` + +## Development +* When writing docstrings, use the reStructuredText format recommended by https://www.python.org/dev/peps/pep-0287/#docstring-significant-features +* Use `make check` commands to check the code and the format. + +* Install runtime dependencies +```bash +poetry install --no-dev +``` + +* Before submitting a merge requests, please check the static typing and tests. + +* Install dev dependencies +```bash +poetry install +``` + +* Check static typing with [mypy](http://mypy-lang.org/) +```bash +make mypy +``` + +## Packaging and deploy +### PyPI +Change and commit and tag the new version number (semantic version number) +```bash +./release.sh 0.42.3 +``` + +Build the PyPI package in the `dist` folder +```bash +make build +``` + +Deploy the package to PyPI test repository: +```bash +make deploy_test +``` + +Install the package from PyPI test repository +```bash +pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.python.org/simple/ duniterpy +``` + +Deploy the package on the PyPI repository: +```bash +make deploy +``` + +## Packaging status +[](https://repology.org/project/python:duniterpy/versions) + + +%package help +Summary: Development documents and examples for duniterpy +Provides: python3-duniterpy-doc +%description help +# DuniterPy +Most complete client oriented Python library for [Duniter](https://git.duniter.org/nodes/typescript/duniter)/Ğ1 ecosystem. + +This library was originally developed for [Sakia](http://sakia-wallet.org/) desktop client which is now discontinued. +It is currently used by following programs: +- [Tikka](https://git.duniter.org/clients/python), the desktop client (Work In Progress, not yet available). +- [Silkaj](https://silkaj.duniter.org/), command line client. +- [Jaklis](https://git.p2p.legal/axiom-team/jaklis), command line client for Cs+/Gchange pods. +- [Ğ1Dons](https://git.duniter.org/matograine/g1pourboire), Ğ1Dons, paper-wallet generator aimed at giving tips in Ğ1. + +## Features +### Network +- APIs support: BMA, GVA, WS2P, and CS+: + - [Basic Merkle API](https://git.duniter.org/nodes/typescript/duniter/-/blob/dev/doc/HTTP_API.md), first Duniter API to be deprecated + - GraphQL Verification API, Duniter API in developement meant to replace BMA. Based on GraphQL. + - Websocket to Peer, Duniter inter-nodes (servers) API + - Cesium+, non-Duniter API, used to store profile data related to the blockchain as well as ads for Cesium and Ğchange. +- Non-threaded asynchronous/synchronous connections +- Support HTTP, HTTPS, and WebSocket transport for the APIs +- Endpoints management + +### Blockchain +- Support [Duniter blockchain protocol](https://git.duniter.org/documents/rfcs#duniter-blockchain-protocol-dubp) +- Duniter documents management: transaction, block and WoT documents +- Multiple authentication methods +- Duniter signing key +- Sign/verify and encrypt/decrypt messages with Duniter credentials + +## Requirements +- Python >= 3.7.0 +- [websocket-client](https://pypi.org/project/websocket-client) +- [jsonschema](https://pypi.org/project/jsonschema) +- [pyPEG2](https://pypi.org/project/pyPEG2) +- [attrs](https://pypi.org/project/attrs) +- [base58](https://pypi.org/project/base58) +- [libnacl](https://pypi.org/project/libnacl) +- [pyaes](https://pypi.org/project/pyaes) + +## Installation +You will require following dependencies: +```bash +sudo apt install python3-pip python3-dev python3-wheel libsodium23 +``` + +You can install DuniterPy and its dependencies with following command: +```bash +pip3 install duniterpy --user +``` + +## Install the development environment +- [Install Poetry](https://python-poetry.org/docs/#installation) + +## Documentation +[Online official automaticaly generated documentation](https://clients.duniter.io/python/duniterpy/index.html) + +## Examples +The [examples folder](https://git.duniter.org/clients/python/duniterpy/tree/master/examples) contains scripts to help you! + +- Have a look at the `examples` folder +- Run examples from parent folder directly +```bash +poetry run python examples/request_data.py +``` + +Or from Python interpreter: +```bash +poetry run python +>>> import examples +>>> help(examples) +>>> examples.create_public_key() +``` + +`request_data_async` example requires to be run with `asyncio`: +```bash +>>> import examples, asyncio +>>> asyncio.get_event_loop().run_until_complete(examples.request_data_async()) +``` + +### How to generate and read locally the autodoc + +- Install Sphinx, included into the development dependencies: +```bash +poetry install +``` + +- Generate HTML documentation in `public` directory: +```bash +make docs +``` + +## Development +* When writing docstrings, use the reStructuredText format recommended by https://www.python.org/dev/peps/pep-0287/#docstring-significant-features +* Use `make check` commands to check the code and the format. + +* Install runtime dependencies +```bash +poetry install --no-dev +``` + +* Before submitting a merge requests, please check the static typing and tests. + +* Install dev dependencies +```bash +poetry install +``` + +* Check static typing with [mypy](http://mypy-lang.org/) +```bash +make mypy +``` + +## Packaging and deploy +### PyPI +Change and commit and tag the new version number (semantic version number) +```bash +./release.sh 0.42.3 +``` + +Build the PyPI package in the `dist` folder +```bash +make build +``` + +Deploy the package to PyPI test repository: +```bash +make deploy_test +``` + +Install the package from PyPI test repository +```bash +pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.python.org/simple/ duniterpy +``` + +Deploy the package on the PyPI repository: +```bash +make deploy +``` + +## Packaging status +[](https://repology.org/project/python:duniterpy/versions) + + +%prep +%autosetup -n duniterpy-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-duniterpy -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 1.1.0-1 +- Package Spec generated @@ -0,0 +1 @@ +92fe74bd18d7cf1c314137a06897643d duniterpy-1.1.0.tar.gz |