summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-04-10 19:15:38 +0000
committerCoprDistGit <infra@openeuler.org>2023-04-10 19:15:38 +0000
commite6f318ea1e7410974a23bc80cef33e06c9a2a33f (patch)
tree5ed27b93086ee0ef7818aedd6ac06f4234acd2c2
parent9b585a1f96668cb9f3a096ab2caf2e4b4d12d991 (diff)
automatic import of python-chiapos
-rw-r--r--.gitignore1
-rw-r--r--python-chiapos.spec407
-rw-r--r--sources1
3 files changed, 409 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..258a684 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/chiapos-1.0.11.tar.gz
diff --git a/python-chiapos.spec b/python-chiapos.spec
new file mode 100644
index 0000000..a10b588
--- /dev/null
+++ b/python-chiapos.spec
@@ -0,0 +1,407 @@
+%global _empty_manifest_terminate_build 0
+Name: python-chiapos
+Version: 1.0.11
+Release: 1
+Summary: Chia proof of space plotting, proving, and verifying (wraps C++)
+License: Apache License
+URL: https://github.com/Chia-Network/chiapos
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/b8/f0/236bbf5e57efa58bfcf4e3991db81ed5412b8e9ad199baf21a4a893fed3a/chiapos-1.0.11.tar.gz
+
+
+%description
+# Chia Proof of Space
+![Build](https://github.com/Chia-Network/chiapos/workflows/Build/badge.svg)
+![PyPI](https://img.shields.io/pypi/v/chiapos?logo=pypi)
+![PyPI - Format](https://img.shields.io/pypi/format/chiapos?logo=pypi)
+![GitHub](https://img.shields.io/github/license/Chia-Network/chiapos?logo=Github)
+
+[![Total alerts](https://img.shields.io/lgtm/alerts/g/Chia-Network/chiapos.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Chia-Network/chiapos/alerts/)
+[![Language grade: Python](https://img.shields.io/lgtm/grade/python/g/Chia-Network/chiapos.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Chia-Network/chiapos/context:python)
+[![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/Chia-Network/chiapos.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Chia-Network/chiapos/context:cpp)
+
+Chia's proof of space is written in C++. Includes a plotter, prover, and
+verifier. It exclusively runs on 64 bit architectures. Read the
+[Proof of Space document](https://www.chia.net/assets/Chia_Proof_of_Space_Construction_v1.1.pdf) to
+learn about what proof of space is and how it works.
+
+## C++ Usage Instructions
+
+### Compile
+
+```bash
+# Requires cmake 3.14+
+
+mkdir -p build && cd build
+cmake ../
+cmake --build . -- -j 6
+```
+
+## Static Compilation With glibc
+### Statically compile ProofOfSpace
+```bash
+mkdir -p build && cd build
+cmake -DBUILD_PROOF_OF_SPACE_STATICALLY=ON ../
+cmake --build . -- -j 6
+```
+
+### Run tests
+
+```bash
+./RunTests
+```
+
+### CLI usage
+
+```bash
+./ProofOfSpace -k 25 -f "plot.dat" -m "0x1234" create
+./ProofOfSpace -k 25 -f "final-plot.dat" -m "0x4567" -t TMPDIR -2 SECOND_TMPDIR create
+./ProofOfSpace -f "plot.dat" prove <32 byte hex challenge>
+./ProofOfSpace -k 25 verify <hex proof> <32 byte hex challenge>
+./ProofOfSpace -f "plot.dat" check <iterations>
+```
+
+### Benchmark
+
+```bash
+time ./ProofOfSpace -k 25 create
+```
+
+
+### Hellman Attacks usage
+
+There is an experimental implementation which implements some of the Hellman
+Attacks that can provide significant space savings for the final file.
+
+
+```bash
+./HellmanAttacks -k 18 -f "plot.dat" -m "0x1234" create
+./HellmanAttacks -f "plot.dat" check <iterations>
+```
+
+## Python
+
+Finally, python bindings are provided in the python-bindings directory.
+
+### Install
+
+```bash
+python3 -m venv .venv
+. .venv/bin/activate
+pip3 install .
+```
+
+### Run python tests
+
+Testings uses pytest. Linting uses flake8 and mypy.
+
+```bash
+py.test ./tests -s -v
+```
+
+## ci Building
+The primary build process for this repository is to use GitHub Actions to
+build binary wheels for MacOS, Linux (x64 and aarch64), and Windows and publish
+them with a source wheel on PyPi. See `.github/workflows/build.yml`. CMake uses
+[FetchContent](https://cmake.org/cmake/help/latest/module/FetchContent.html)
+to download [pybind11](https://github.com/pybind/pybind11). Building is then
+managed by [cibuildwheel](https://github.com/joerick/cibuildwheel). Further
+installation is then available via `pip install chiapos` e.g.
+
+## Contributing and workflow
+Contributions are welcome and more details are available in chia-blockchain's
+[CONTRIBUTING.md](https://github.com/Chia-Network/chia-blockchain/blob/main/CONTRIBUTING.md).
+
+The main branch is usually the currently released latest version on PyPI.
+Note that at times chiapos will be ahead of the release version that
+chia-blockchain requires in it's main/release version in preparation for a
+new chia-blockchain release. Please branch or fork main and then create a
+pull request to the main branch. Linear merging is enforced on main and
+merging requires a completed review. PRs will kick off a GitHub actions ci build
+and analysis of chiapos at
+[lgtm.com](https://lgtm.com/projects/g/Chia-Network/chiapos/?mode=list). Please
+make sure your build is passing and that it does not increase alerts at lgtm.
+
+
+%package -n python3-chiapos
+Summary: Chia proof of space plotting, proving, and verifying (wraps C++)
+Provides: python-chiapos
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+BuildRequires: python3-cffi
+BuildRequires: gcc
+BuildRequires: gdb
+%description -n python3-chiapos
+# Chia Proof of Space
+![Build](https://github.com/Chia-Network/chiapos/workflows/Build/badge.svg)
+![PyPI](https://img.shields.io/pypi/v/chiapos?logo=pypi)
+![PyPI - Format](https://img.shields.io/pypi/format/chiapos?logo=pypi)
+![GitHub](https://img.shields.io/github/license/Chia-Network/chiapos?logo=Github)
+
+[![Total alerts](https://img.shields.io/lgtm/alerts/g/Chia-Network/chiapos.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Chia-Network/chiapos/alerts/)
+[![Language grade: Python](https://img.shields.io/lgtm/grade/python/g/Chia-Network/chiapos.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Chia-Network/chiapos/context:python)
+[![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/Chia-Network/chiapos.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Chia-Network/chiapos/context:cpp)
+
+Chia's proof of space is written in C++. Includes a plotter, prover, and
+verifier. It exclusively runs on 64 bit architectures. Read the
+[Proof of Space document](https://www.chia.net/assets/Chia_Proof_of_Space_Construction_v1.1.pdf) to
+learn about what proof of space is and how it works.
+
+## C++ Usage Instructions
+
+### Compile
+
+```bash
+# Requires cmake 3.14+
+
+mkdir -p build && cd build
+cmake ../
+cmake --build . -- -j 6
+```
+
+## Static Compilation With glibc
+### Statically compile ProofOfSpace
+```bash
+mkdir -p build && cd build
+cmake -DBUILD_PROOF_OF_SPACE_STATICALLY=ON ../
+cmake --build . -- -j 6
+```
+
+### Run tests
+
+```bash
+./RunTests
+```
+
+### CLI usage
+
+```bash
+./ProofOfSpace -k 25 -f "plot.dat" -m "0x1234" create
+./ProofOfSpace -k 25 -f "final-plot.dat" -m "0x4567" -t TMPDIR -2 SECOND_TMPDIR create
+./ProofOfSpace -f "plot.dat" prove <32 byte hex challenge>
+./ProofOfSpace -k 25 verify <hex proof> <32 byte hex challenge>
+./ProofOfSpace -f "plot.dat" check <iterations>
+```
+
+### Benchmark
+
+```bash
+time ./ProofOfSpace -k 25 create
+```
+
+
+### Hellman Attacks usage
+
+There is an experimental implementation which implements some of the Hellman
+Attacks that can provide significant space savings for the final file.
+
+
+```bash
+./HellmanAttacks -k 18 -f "plot.dat" -m "0x1234" create
+./HellmanAttacks -f "plot.dat" check <iterations>
+```
+
+## Python
+
+Finally, python bindings are provided in the python-bindings directory.
+
+### Install
+
+```bash
+python3 -m venv .venv
+. .venv/bin/activate
+pip3 install .
+```
+
+### Run python tests
+
+Testings uses pytest. Linting uses flake8 and mypy.
+
+```bash
+py.test ./tests -s -v
+```
+
+## ci Building
+The primary build process for this repository is to use GitHub Actions to
+build binary wheels for MacOS, Linux (x64 and aarch64), and Windows and publish
+them with a source wheel on PyPi. See `.github/workflows/build.yml`. CMake uses
+[FetchContent](https://cmake.org/cmake/help/latest/module/FetchContent.html)
+to download [pybind11](https://github.com/pybind/pybind11). Building is then
+managed by [cibuildwheel](https://github.com/joerick/cibuildwheel). Further
+installation is then available via `pip install chiapos` e.g.
+
+## Contributing and workflow
+Contributions are welcome and more details are available in chia-blockchain's
+[CONTRIBUTING.md](https://github.com/Chia-Network/chia-blockchain/blob/main/CONTRIBUTING.md).
+
+The main branch is usually the currently released latest version on PyPI.
+Note that at times chiapos will be ahead of the release version that
+chia-blockchain requires in it's main/release version in preparation for a
+new chia-blockchain release. Please branch or fork main and then create a
+pull request to the main branch. Linear merging is enforced on main and
+merging requires a completed review. PRs will kick off a GitHub actions ci build
+and analysis of chiapos at
+[lgtm.com](https://lgtm.com/projects/g/Chia-Network/chiapos/?mode=list). Please
+make sure your build is passing and that it does not increase alerts at lgtm.
+
+
+%package help
+Summary: Development documents and examples for chiapos
+Provides: python3-chiapos-doc
+%description help
+# Chia Proof of Space
+![Build](https://github.com/Chia-Network/chiapos/workflows/Build/badge.svg)
+![PyPI](https://img.shields.io/pypi/v/chiapos?logo=pypi)
+![PyPI - Format](https://img.shields.io/pypi/format/chiapos?logo=pypi)
+![GitHub](https://img.shields.io/github/license/Chia-Network/chiapos?logo=Github)
+
+[![Total alerts](https://img.shields.io/lgtm/alerts/g/Chia-Network/chiapos.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Chia-Network/chiapos/alerts/)
+[![Language grade: Python](https://img.shields.io/lgtm/grade/python/g/Chia-Network/chiapos.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Chia-Network/chiapos/context:python)
+[![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/Chia-Network/chiapos.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/Chia-Network/chiapos/context:cpp)
+
+Chia's proof of space is written in C++. Includes a plotter, prover, and
+verifier. It exclusively runs on 64 bit architectures. Read the
+[Proof of Space document](https://www.chia.net/assets/Chia_Proof_of_Space_Construction_v1.1.pdf) to
+learn about what proof of space is and how it works.
+
+## C++ Usage Instructions
+
+### Compile
+
+```bash
+# Requires cmake 3.14+
+
+mkdir -p build && cd build
+cmake ../
+cmake --build . -- -j 6
+```
+
+## Static Compilation With glibc
+### Statically compile ProofOfSpace
+```bash
+mkdir -p build && cd build
+cmake -DBUILD_PROOF_OF_SPACE_STATICALLY=ON ../
+cmake --build . -- -j 6
+```
+
+### Run tests
+
+```bash
+./RunTests
+```
+
+### CLI usage
+
+```bash
+./ProofOfSpace -k 25 -f "plot.dat" -m "0x1234" create
+./ProofOfSpace -k 25 -f "final-plot.dat" -m "0x4567" -t TMPDIR -2 SECOND_TMPDIR create
+./ProofOfSpace -f "plot.dat" prove <32 byte hex challenge>
+./ProofOfSpace -k 25 verify <hex proof> <32 byte hex challenge>
+./ProofOfSpace -f "plot.dat" check <iterations>
+```
+
+### Benchmark
+
+```bash
+time ./ProofOfSpace -k 25 create
+```
+
+
+### Hellman Attacks usage
+
+There is an experimental implementation which implements some of the Hellman
+Attacks that can provide significant space savings for the final file.
+
+
+```bash
+./HellmanAttacks -k 18 -f "plot.dat" -m "0x1234" create
+./HellmanAttacks -f "plot.dat" check <iterations>
+```
+
+## Python
+
+Finally, python bindings are provided in the python-bindings directory.
+
+### Install
+
+```bash
+python3 -m venv .venv
+. .venv/bin/activate
+pip3 install .
+```
+
+### Run python tests
+
+Testings uses pytest. Linting uses flake8 and mypy.
+
+```bash
+py.test ./tests -s -v
+```
+
+## ci Building
+The primary build process for this repository is to use GitHub Actions to
+build binary wheels for MacOS, Linux (x64 and aarch64), and Windows and publish
+them with a source wheel on PyPi. See `.github/workflows/build.yml`. CMake uses
+[FetchContent](https://cmake.org/cmake/help/latest/module/FetchContent.html)
+to download [pybind11](https://github.com/pybind/pybind11). Building is then
+managed by [cibuildwheel](https://github.com/joerick/cibuildwheel). Further
+installation is then available via `pip install chiapos` e.g.
+
+## Contributing and workflow
+Contributions are welcome and more details are available in chia-blockchain's
+[CONTRIBUTING.md](https://github.com/Chia-Network/chia-blockchain/blob/main/CONTRIBUTING.md).
+
+The main branch is usually the currently released latest version on PyPI.
+Note that at times chiapos will be ahead of the release version that
+chia-blockchain requires in it's main/release version in preparation for a
+new chia-blockchain release. Please branch or fork main and then create a
+pull request to the main branch. Linear merging is enforced on main and
+merging requires a completed review. PRs will kick off a GitHub actions ci build
+and analysis of chiapos at
+[lgtm.com](https://lgtm.com/projects/g/Chia-Network/chiapos/?mode=list). Please
+make sure your build is passing and that it does not increase alerts at lgtm.
+
+
+%prep
+%autosetup -n chiapos-1.0.11
+
+%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-chiapos -f filelist.lst
+%dir %{python3_sitearch}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.11-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..22978ca
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+9501989cc6297828defbbc85af2099f2 chiapos-1.0.11.tar.gz