diff options
Diffstat (limited to 'python-eth-abi.spec')
-rw-r--r-- | python-eth-abi.spec | 399 |
1 files changed, 399 insertions, 0 deletions
diff --git a/python-eth-abi.spec b/python-eth-abi.spec new file mode 100644 index 0000000..7c2ade9 --- /dev/null +++ b/python-eth-abi.spec @@ -0,0 +1,399 @@ +%global _empty_manifest_terminate_build 0 +Name: python-eth-abi +Version: 4.0.0 +Release: 1 +Summary: eth_abi: Python utilities for working with Ethereum ABI definitions, especially encoding and decoding +License: MIT +URL: https://github.com/ethereum/eth-abi +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/f7/2a/13370581fbafc40cf4aaa6ce18d587047ead579c6095b360adc3dbb028cc/eth_abi-4.0.0.tar.gz +BuildArch: noarch + +Requires: python3-eth-utils +Requires: python3-eth-typing +Requires: python3-parsimonious +Requires: python3-bumpversion +Requires: python3-pytest-watch +Requires: python3-wheel +Requires: python3-twine +Requires: python3-ipython +Requires: python3-pytest +Requires: python3-pytest-pythonpath +Requires: python3-pytest-xdist +Requires: python3-tox +Requires: python3-eth-hash[pycryptodome] +Requires: python3-hypothesis +Requires: python3-flake8 +Requires: python3-isort +Requires: python3-mypy +Requires: python3-pydocstyle +Requires: python3-black +Requires: python3-sphinx +Requires: python3-jinja2 +Requires: python3-sphinx-rtd-theme +Requires: python3-towncrier +Requires: python3-sphinx +Requires: python3-jinja2 +Requires: python3-sphinx-rtd-theme +Requires: python3-towncrier +Requires: python3-flake8 +Requires: python3-isort +Requires: python3-mypy +Requires: python3-pydocstyle +Requires: python3-black +Requires: python3-pytest +Requires: python3-pytest-pythonpath +Requires: python3-pytest-xdist +Requires: python3-tox +Requires: python3-eth-hash[pycryptodome] +Requires: python3-hypothesis +Requires: python3-hypothesis + +%description +# Ethereum Contract Interface (ABI) Utility + +[](https://gitter.im/ethereum/eth-abi?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) +[](https://circleci.com/gh/ethereum/eth-abi) +[](https://badge.fury.io/py/eth-abi) +[](https://pypi.python.org/pypi/eth-abi) +[](http://eth-abi.readthedocs.io/en/latest/?badge=latest) + + +Python utilities for working with Ethereum ABI definitions, especially encoding and decoding + +Read more in the [documentation on ReadTheDocs](https://eth-abi.readthedocs.io/). [View the change log](https://eth-abi.readthedocs.io/en/latest/release_notes.html). + +## Quickstart + +```sh +pip install eth_abi +``` + +## Developer Setup + +If you would like to hack on eth-abi, please check out the [Snake Charmers +Tactical Manual](https://github.com/ethereum/snake-charmers-tactical-manual) +for information on how we do: + +- Testing +- Pull Requests +- Code Style +- Documentation + +### Development Environment Setup + +You can set up your dev environment with: + +```sh +git clone git@github.com:ethereum/eth-abi.git +cd eth-abi +virtualenv -p python3 venv +. venv/bin/activate +pip install -e .[dev] +``` + +### Testing Setup + +During development, you might like to have tests run on every file save. + +Show flake8 errors on file change: + +```sh +# Test flake8 +when-changed -v -s -r -1 eth_abi/ tests/ -c "clear; flake8 eth_abi tests && echo 'flake8 success' || echo 'error'" +``` + +Run multi-process tests in one command, but without color: + +```sh +# in the project root: +pytest --numprocesses=4 --looponfail --maxfail=1 +# the same thing, succinctly: +pytest -n 4 -f --maxfail=1 +``` + +Run in one thread, with color and desktop notifications: + +```sh +cd venv +ptw --onfail "notify-send -t 5000 'Test failure ⚠⚠⚠⚠⚠' 'python 3 test on eth-abi failed'" ../tests ../eth_abi +``` + +### Release setup + +For Debian-like systems: +``` +apt install pandoc +``` + +To release a new version: + +```sh +make release bump=$$VERSION_PART_TO_BUMP$$ +``` + +#### How to bumpversion + +The version format for this repo is `{major}.{minor}.{patch}` for stable, and +`{major}.{minor}.{patch}-{stage}.{devnum}` for unstable (`stage` can be alpha or beta). + +To issue the next version in line, specify which part to bump, +like `make release bump=minor` or `make release bump=devnum`. This is typically done from the +master branch, except when releasing a beta (in which case the beta is released from master, +and the previous stable branch is released from said branch). + +If you are in a beta version, `make release bump=stage` will switch to a stable. + +To issue an unstable version when the current version is stable, specify the +new version explicitly, like `make release bump="--new-version 4.0.0-alpha.1 devnum"` + + +%package -n python3-eth-abi +Summary: eth_abi: Python utilities for working with Ethereum ABI definitions, especially encoding and decoding +Provides: python-eth-abi +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-eth-abi +# Ethereum Contract Interface (ABI) Utility + +[](https://gitter.im/ethereum/eth-abi?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) +[](https://circleci.com/gh/ethereum/eth-abi) +[](https://badge.fury.io/py/eth-abi) +[](https://pypi.python.org/pypi/eth-abi) +[](http://eth-abi.readthedocs.io/en/latest/?badge=latest) + + +Python utilities for working with Ethereum ABI definitions, especially encoding and decoding + +Read more in the [documentation on ReadTheDocs](https://eth-abi.readthedocs.io/). [View the change log](https://eth-abi.readthedocs.io/en/latest/release_notes.html). + +## Quickstart + +```sh +pip install eth_abi +``` + +## Developer Setup + +If you would like to hack on eth-abi, please check out the [Snake Charmers +Tactical Manual](https://github.com/ethereum/snake-charmers-tactical-manual) +for information on how we do: + +- Testing +- Pull Requests +- Code Style +- Documentation + +### Development Environment Setup + +You can set up your dev environment with: + +```sh +git clone git@github.com:ethereum/eth-abi.git +cd eth-abi +virtualenv -p python3 venv +. venv/bin/activate +pip install -e .[dev] +``` + +### Testing Setup + +During development, you might like to have tests run on every file save. + +Show flake8 errors on file change: + +```sh +# Test flake8 +when-changed -v -s -r -1 eth_abi/ tests/ -c "clear; flake8 eth_abi tests && echo 'flake8 success' || echo 'error'" +``` + +Run multi-process tests in one command, but without color: + +```sh +# in the project root: +pytest --numprocesses=4 --looponfail --maxfail=1 +# the same thing, succinctly: +pytest -n 4 -f --maxfail=1 +``` + +Run in one thread, with color and desktop notifications: + +```sh +cd venv +ptw --onfail "notify-send -t 5000 'Test failure ⚠⚠⚠⚠⚠' 'python 3 test on eth-abi failed'" ../tests ../eth_abi +``` + +### Release setup + +For Debian-like systems: +``` +apt install pandoc +``` + +To release a new version: + +```sh +make release bump=$$VERSION_PART_TO_BUMP$$ +``` + +#### How to bumpversion + +The version format for this repo is `{major}.{minor}.{patch}` for stable, and +`{major}.{minor}.{patch}-{stage}.{devnum}` for unstable (`stage` can be alpha or beta). + +To issue the next version in line, specify which part to bump, +like `make release bump=minor` or `make release bump=devnum`. This is typically done from the +master branch, except when releasing a beta (in which case the beta is released from master, +and the previous stable branch is released from said branch). + +If you are in a beta version, `make release bump=stage` will switch to a stable. + +To issue an unstable version when the current version is stable, specify the +new version explicitly, like `make release bump="--new-version 4.0.0-alpha.1 devnum"` + + +%package help +Summary: Development documents and examples for eth-abi +Provides: python3-eth-abi-doc +%description help +# Ethereum Contract Interface (ABI) Utility + +[](https://gitter.im/ethereum/eth-abi?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) +[](https://circleci.com/gh/ethereum/eth-abi) +[](https://badge.fury.io/py/eth-abi) +[](https://pypi.python.org/pypi/eth-abi) +[](http://eth-abi.readthedocs.io/en/latest/?badge=latest) + + +Python utilities for working with Ethereum ABI definitions, especially encoding and decoding + +Read more in the [documentation on ReadTheDocs](https://eth-abi.readthedocs.io/). [View the change log](https://eth-abi.readthedocs.io/en/latest/release_notes.html). + +## Quickstart + +```sh +pip install eth_abi +``` + +## Developer Setup + +If you would like to hack on eth-abi, please check out the [Snake Charmers +Tactical Manual](https://github.com/ethereum/snake-charmers-tactical-manual) +for information on how we do: + +- Testing +- Pull Requests +- Code Style +- Documentation + +### Development Environment Setup + +You can set up your dev environment with: + +```sh +git clone git@github.com:ethereum/eth-abi.git +cd eth-abi +virtualenv -p python3 venv +. venv/bin/activate +pip install -e .[dev] +``` + +### Testing Setup + +During development, you might like to have tests run on every file save. + +Show flake8 errors on file change: + +```sh +# Test flake8 +when-changed -v -s -r -1 eth_abi/ tests/ -c "clear; flake8 eth_abi tests && echo 'flake8 success' || echo 'error'" +``` + +Run multi-process tests in one command, but without color: + +```sh +# in the project root: +pytest --numprocesses=4 --looponfail --maxfail=1 +# the same thing, succinctly: +pytest -n 4 -f --maxfail=1 +``` + +Run in one thread, with color and desktop notifications: + +```sh +cd venv +ptw --onfail "notify-send -t 5000 'Test failure ⚠⚠⚠⚠⚠' 'python 3 test on eth-abi failed'" ../tests ../eth_abi +``` + +### Release setup + +For Debian-like systems: +``` +apt install pandoc +``` + +To release a new version: + +```sh +make release bump=$$VERSION_PART_TO_BUMP$$ +``` + +#### How to bumpversion + +The version format for this repo is `{major}.{minor}.{patch}` for stable, and +`{major}.{minor}.{patch}-{stage}.{devnum}` for unstable (`stage` can be alpha or beta). + +To issue the next version in line, specify which part to bump, +like `make release bump=minor` or `make release bump=devnum`. This is typically done from the +master branch, except when releasing a beta (in which case the beta is released from master, +and the previous stable branch is released from said branch). + +If you are in a beta version, `make release bump=stage` will switch to a stable. + +To issue an unstable version when the current version is stable, specify the +new version explicitly, like `make release bump="--new-version 4.0.0-alpha.1 devnum"` + + +%prep +%autosetup -n eth-abi-4.0.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-eth-abi -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 4.0.0-1 +- Package Spec generated |