summaryrefslogtreecommitdiff
path: root/python-pyteal.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-15 06:06:56 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-15 06:06:56 +0000
commit8f3cf1d505e240d8ed4497b97d25be4cff1601a2 (patch)
treed3df86a2c7e010264ea3db97242a802a19788abd /python-pyteal.spec
parent943218422d80711da27f0cfb0efbbbcfc3cabed8 (diff)
automatic import of python-pyteal
Diffstat (limited to 'python-pyteal.spec')
-rw-r--r--python-pyteal.spec347
1 files changed, 347 insertions, 0 deletions
diff --git a/python-pyteal.spec b/python-pyteal.spec
new file mode 100644
index 0000000..bb6da61
--- /dev/null
+++ b/python-pyteal.spec
@@ -0,0 +1,347 @@
+%global _empty_manifest_terminate_build 0
+Name: python-pyteal
+Version: 0.24.1
+Release: 1
+Summary: Algorand Smart Contracts in Python
+License: MIT License
+URL: https://github.com/algorand/pyteal
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/90/f1/c53cace18bb43f7141e9590f553b0cce1f2abe473be5e34ba1e54c38b157/pyteal-0.24.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-docstring-parser
+Requires: python3-executing
+Requires: python3-py-algorand-sdk
+Requires: python3-semantic-version
+Requires: python3-tabulate
+
+%description
+ <!-- markdownlint-disable-file MD041 -->
+
+![PyTeal logo](https://github.com/algorand/pyteal/blob/master/docs/pyteal.png?raw=true)
+
+# PyTeal: Algorand Smart Contracts in Python
+
+[![Build Status](https://github.com/algorand/pyteal/actions/workflows/build.yml/badge.svg)](https://github.com/algorand/pyteal/actions)
+[![PyPI version](https://badge.fury.io/py/pyteal.svg)](https://badge.fury.io/py/pyteal)
+[![Documentation Status](https://readthedocs.org/projects/pyteal/badge/?version=latest)](https://pyteal.readthedocs.io/en/latest/?badge=latest)
+[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
+
+PyTeal is a Python language binding for [Algorand Smart Contracts (ASC1s)](https://developer.algorand.org/docs/features/asc1/).
+
+Algorand Smart Contracts are implemented using a new language that is stack-based,
+called [Transaction Execution Approval Language (TEAL)](https://developer.algorand.org/docs/features/asc1/teal/).
+
+However, TEAL is essentially an assembly language. With PyTeal, developers can express smart contract logic purely using Python.
+PyTeal provides high level, functional programming style abstractions over TEAL and does type checking at construction time.
+
+## Install
+
+PyTeal requires Python version >= 3.10.
+
+If your operating system (OS) Python version < 3.10, we recommend:
+* Rather than override the OS Python version, install Python >= 3.10 alongside the OS Python version.
+* Use [pyenv](https://github.com/pyenv/pyenv#installation) or similar tooling to manage multiple Python versions.
+
+### Recommended: Install from PyPi
+
+Install the latest official release from PyPi:
+
+* `pip install pyteal`
+
+### Install Latest Commit
+
+If needed, it's possible to install directly from the latest commit on master to use unreleased features:
+
+> **WARNING:** Unreleased code is experimental and may not be backwards compatible or function properly. Use extreme caution when installing PyTeal this way.
+
+* `pip install git+https://github.com/algorand/pyteal`
+
+## Documentation
+
+* [PyTeal Docs](https://pyteal.readthedocs.io/)
+* `docs/` ([README](docs/README.md)) contains raw docs.
+
+## Development Setup
+
+Setup venv (one time):
+
+* `python3 -m venv venv`
+
+Active venv:
+
+* `. venv/bin/activate` (if your shell is bash/zsh)
+* `. venv/bin/activate.fish` (if your shell is fish)
+
+Pip install PyTeal in editable state with dependencies:
+
+* `make setup-development`
+* OR if you don't have `make` installed:
+ * `pip install -e . && pip install -r requirements.txt`
+
+Format code:
+
+* `black .`
+
+Lint using flake8:
+
+* `flake8 docs examples pyteal scripts tests *.py`
+
+Type checking using mypy:
+
+* `mypy pyteal scripts`
+
+Run unit tests:
+
+* `pytest pyteal tests/unit`
+
+Run integration tests (assumes a developer-mode `algod` is available on port 4001):
+
+* `pytest tests/integration`
+
+Stand up developer-mode algod on ports 4001, 4002 and `tealdbg` on port 9392 (assumes [Docker](https://www.docker.com/) is available on your system):
+
+* `docker-compose up -d`
+
+Tear down and clean up resources for the developer-mode algod stood up above:
+
+* `docker-compose down`
+
+
+%package -n python3-pyteal
+Summary: Algorand Smart Contracts in Python
+Provides: python-pyteal
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-pyteal
+ <!-- markdownlint-disable-file MD041 -->
+
+![PyTeal logo](https://github.com/algorand/pyteal/blob/master/docs/pyteal.png?raw=true)
+
+# PyTeal: Algorand Smart Contracts in Python
+
+[![Build Status](https://github.com/algorand/pyteal/actions/workflows/build.yml/badge.svg)](https://github.com/algorand/pyteal/actions)
+[![PyPI version](https://badge.fury.io/py/pyteal.svg)](https://badge.fury.io/py/pyteal)
+[![Documentation Status](https://readthedocs.org/projects/pyteal/badge/?version=latest)](https://pyteal.readthedocs.io/en/latest/?badge=latest)
+[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
+
+PyTeal is a Python language binding for [Algorand Smart Contracts (ASC1s)](https://developer.algorand.org/docs/features/asc1/).
+
+Algorand Smart Contracts are implemented using a new language that is stack-based,
+called [Transaction Execution Approval Language (TEAL)](https://developer.algorand.org/docs/features/asc1/teal/).
+
+However, TEAL is essentially an assembly language. With PyTeal, developers can express smart contract logic purely using Python.
+PyTeal provides high level, functional programming style abstractions over TEAL and does type checking at construction time.
+
+## Install
+
+PyTeal requires Python version >= 3.10.
+
+If your operating system (OS) Python version < 3.10, we recommend:
+* Rather than override the OS Python version, install Python >= 3.10 alongside the OS Python version.
+* Use [pyenv](https://github.com/pyenv/pyenv#installation) or similar tooling to manage multiple Python versions.
+
+### Recommended: Install from PyPi
+
+Install the latest official release from PyPi:
+
+* `pip install pyteal`
+
+### Install Latest Commit
+
+If needed, it's possible to install directly from the latest commit on master to use unreleased features:
+
+> **WARNING:** Unreleased code is experimental and may not be backwards compatible or function properly. Use extreme caution when installing PyTeal this way.
+
+* `pip install git+https://github.com/algorand/pyteal`
+
+## Documentation
+
+* [PyTeal Docs](https://pyteal.readthedocs.io/)
+* `docs/` ([README](docs/README.md)) contains raw docs.
+
+## Development Setup
+
+Setup venv (one time):
+
+* `python3 -m venv venv`
+
+Active venv:
+
+* `. venv/bin/activate` (if your shell is bash/zsh)
+* `. venv/bin/activate.fish` (if your shell is fish)
+
+Pip install PyTeal in editable state with dependencies:
+
+* `make setup-development`
+* OR if you don't have `make` installed:
+ * `pip install -e . && pip install -r requirements.txt`
+
+Format code:
+
+* `black .`
+
+Lint using flake8:
+
+* `flake8 docs examples pyteal scripts tests *.py`
+
+Type checking using mypy:
+
+* `mypy pyteal scripts`
+
+Run unit tests:
+
+* `pytest pyteal tests/unit`
+
+Run integration tests (assumes a developer-mode `algod` is available on port 4001):
+
+* `pytest tests/integration`
+
+Stand up developer-mode algod on ports 4001, 4002 and `tealdbg` on port 9392 (assumes [Docker](https://www.docker.com/) is available on your system):
+
+* `docker-compose up -d`
+
+Tear down and clean up resources for the developer-mode algod stood up above:
+
+* `docker-compose down`
+
+
+%package help
+Summary: Development documents and examples for pyteal
+Provides: python3-pyteal-doc
+%description help
+ <!-- markdownlint-disable-file MD041 -->
+
+![PyTeal logo](https://github.com/algorand/pyteal/blob/master/docs/pyteal.png?raw=true)
+
+# PyTeal: Algorand Smart Contracts in Python
+
+[![Build Status](https://github.com/algorand/pyteal/actions/workflows/build.yml/badge.svg)](https://github.com/algorand/pyteal/actions)
+[![PyPI version](https://badge.fury.io/py/pyteal.svg)](https://badge.fury.io/py/pyteal)
+[![Documentation Status](https://readthedocs.org/projects/pyteal/badge/?version=latest)](https://pyteal.readthedocs.io/en/latest/?badge=latest)
+[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
+
+PyTeal is a Python language binding for [Algorand Smart Contracts (ASC1s)](https://developer.algorand.org/docs/features/asc1/).
+
+Algorand Smart Contracts are implemented using a new language that is stack-based,
+called [Transaction Execution Approval Language (TEAL)](https://developer.algorand.org/docs/features/asc1/teal/).
+
+However, TEAL is essentially an assembly language. With PyTeal, developers can express smart contract logic purely using Python.
+PyTeal provides high level, functional programming style abstractions over TEAL and does type checking at construction time.
+
+## Install
+
+PyTeal requires Python version >= 3.10.
+
+If your operating system (OS) Python version < 3.10, we recommend:
+* Rather than override the OS Python version, install Python >= 3.10 alongside the OS Python version.
+* Use [pyenv](https://github.com/pyenv/pyenv#installation) or similar tooling to manage multiple Python versions.
+
+### Recommended: Install from PyPi
+
+Install the latest official release from PyPi:
+
+* `pip install pyteal`
+
+### Install Latest Commit
+
+If needed, it's possible to install directly from the latest commit on master to use unreleased features:
+
+> **WARNING:** Unreleased code is experimental and may not be backwards compatible or function properly. Use extreme caution when installing PyTeal this way.
+
+* `pip install git+https://github.com/algorand/pyteal`
+
+## Documentation
+
+* [PyTeal Docs](https://pyteal.readthedocs.io/)
+* `docs/` ([README](docs/README.md)) contains raw docs.
+
+## Development Setup
+
+Setup venv (one time):
+
+* `python3 -m venv venv`
+
+Active venv:
+
+* `. venv/bin/activate` (if your shell is bash/zsh)
+* `. venv/bin/activate.fish` (if your shell is fish)
+
+Pip install PyTeal in editable state with dependencies:
+
+* `make setup-development`
+* OR if you don't have `make` installed:
+ * `pip install -e . && pip install -r requirements.txt`
+
+Format code:
+
+* `black .`
+
+Lint using flake8:
+
+* `flake8 docs examples pyteal scripts tests *.py`
+
+Type checking using mypy:
+
+* `mypy pyteal scripts`
+
+Run unit tests:
+
+* `pytest pyteal tests/unit`
+
+Run integration tests (assumes a developer-mode `algod` is available on port 4001):
+
+* `pytest tests/integration`
+
+Stand up developer-mode algod on ports 4001, 4002 and `tealdbg` on port 9392 (assumes [Docker](https://www.docker.com/) is available on your system):
+
+* `docker-compose up -d`
+
+Tear down and clean up resources for the developer-mode algod stood up above:
+
+* `docker-compose down`
+
+
+%prep
+%autosetup -n pyteal-0.24.1
+
+%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-pyteal -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 0.24.1-1
+- Package Spec generated