diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-17 05:10:58 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-17 05:10:58 +0000 |
commit | aed244025402bc3dc238619bce2cfa7dd325fb09 (patch) | |
tree | a1298e428efdb00300ca2dcb21509cd87523da19 | |
parent | b2ca9e106e33ae2a1c85a1dbe6014fe32a22dd0a (diff) |
automatic import of python-actfw-core
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-actfw-core.spec | 369 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 371 insertions, 0 deletions
@@ -0,0 +1 @@ +/actfw_core-2.2.0.tar.gz diff --git a/python-actfw-core.spec b/python-actfw-core.spec new file mode 100644 index 0000000..8545842 --- /dev/null +++ b/python-actfw-core.spec @@ -0,0 +1,369 @@ +%global _empty_manifest_terminate_build 0 +Name: python-actfw-core +Version: 2.2.0 +Release: 1 +Summary: Core components of actfw, independent of specific devices +License: MIT +URL: https://github.com/Idein/actfw-core +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/9a/cd/aed60800a6a41dcb32a0d1a22fa85d4d3deffd6bf47bbe0ab39908281f7e/actfw_core-2.2.0.tar.gz +BuildArch: noarch + +Requires: python3-Pillow +Requires: python3-Pillow +Requires: python3-dataclasses + +%description +# actfw-core + +Core components of actfw, a framework for Actcast Application written in Python. +actfw-core is intended to be independent of any specific device. + +## Installation + +```console +sudo apt-get update +sudo apt-get install -y python3-pip python3-pil +sudo apt-get install -y libv4l-0 libv4lconvert0 # if using `V4LCameraCapture` +pip3 install actfw-core +``` + +## Document + +* [API References](https://idein.github.io/actfw-core/latest/) + +## Usage + +Construct your application with a task parallel model + +* Application + * `actfw_core.Application` : Main application +* Workers + * `actfw_core.task.Producer` : Task generator + * `actfw_core.capture.V4LCameraCapture` : Generate UVC camera capture image + * `actfw_core.task.Pipe` : Task to Task converter + * `actfw_core.task.Consumer` : Task terminator + +Each worker is executed in parallel. + +User should + +* Define subclass of `Producer/Pipe/Consumer` + +```python +class MyPipe(actfw_core.task.Pipe): + def proc(self, i): + ... +``` + +* Connect defined worker objects + +```python +p = MyProducer() +f1 = MyPipe() +f2 = MyPipe() +c = MyConsumer() +p.connect(f1) +f1.connect(f2) +f2.connect(c) +``` + +* Register to `Application` + +```python +app = actfw_core.Application() +app.register_task(p) +app.register_task(f1) +app.register_task(f2) +app.register_task(c) +``` + +* Execute application + +```python +app.run() +``` + +## Development Guide + +### Installation of dev requirements + +```console +pip3 install poetry +poetry install +``` + +### Running tests + +```console +poetry run nose2 -v +``` + +### Releasing package & API doc + +CI will automatically do. +Follow the following branch/tag rules. + +1. Make changes for next version in `master` branch (via pull-requests). +2. Make a PR that updates version in `pyproject.toml` and merge it to `master` branch. +3. Create GitHub release from `master` branch's HEAD. + 1. [Draft a new release](https://github.com/Idein/actfw-core/releases/new). + 2. Create new tag named `release-<New version>` (e.g. `release-1.4.0`) from `Choose a tag` pull down menu. + 3. Write title and description. + 4. Publish release. +4. Then CI will build/upload package to PyPI & API doc to GitHub Pages. + + +%package -n python3-actfw-core +Summary: Core components of actfw, independent of specific devices +Provides: python-actfw-core +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-actfw-core +# actfw-core + +Core components of actfw, a framework for Actcast Application written in Python. +actfw-core is intended to be independent of any specific device. + +## Installation + +```console +sudo apt-get update +sudo apt-get install -y python3-pip python3-pil +sudo apt-get install -y libv4l-0 libv4lconvert0 # if using `V4LCameraCapture` +pip3 install actfw-core +``` + +## Document + +* [API References](https://idein.github.io/actfw-core/latest/) + +## Usage + +Construct your application with a task parallel model + +* Application + * `actfw_core.Application` : Main application +* Workers + * `actfw_core.task.Producer` : Task generator + * `actfw_core.capture.V4LCameraCapture` : Generate UVC camera capture image + * `actfw_core.task.Pipe` : Task to Task converter + * `actfw_core.task.Consumer` : Task terminator + +Each worker is executed in parallel. + +User should + +* Define subclass of `Producer/Pipe/Consumer` + +```python +class MyPipe(actfw_core.task.Pipe): + def proc(self, i): + ... +``` + +* Connect defined worker objects + +```python +p = MyProducer() +f1 = MyPipe() +f2 = MyPipe() +c = MyConsumer() +p.connect(f1) +f1.connect(f2) +f2.connect(c) +``` + +* Register to `Application` + +```python +app = actfw_core.Application() +app.register_task(p) +app.register_task(f1) +app.register_task(f2) +app.register_task(c) +``` + +* Execute application + +```python +app.run() +``` + +## Development Guide + +### Installation of dev requirements + +```console +pip3 install poetry +poetry install +``` + +### Running tests + +```console +poetry run nose2 -v +``` + +### Releasing package & API doc + +CI will automatically do. +Follow the following branch/tag rules. + +1. Make changes for next version in `master` branch (via pull-requests). +2. Make a PR that updates version in `pyproject.toml` and merge it to `master` branch. +3. Create GitHub release from `master` branch's HEAD. + 1. [Draft a new release](https://github.com/Idein/actfw-core/releases/new). + 2. Create new tag named `release-<New version>` (e.g. `release-1.4.0`) from `Choose a tag` pull down menu. + 3. Write title and description. + 4. Publish release. +4. Then CI will build/upload package to PyPI & API doc to GitHub Pages. + + +%package help +Summary: Development documents and examples for actfw-core +Provides: python3-actfw-core-doc +%description help +# actfw-core + +Core components of actfw, a framework for Actcast Application written in Python. +actfw-core is intended to be independent of any specific device. + +## Installation + +```console +sudo apt-get update +sudo apt-get install -y python3-pip python3-pil +sudo apt-get install -y libv4l-0 libv4lconvert0 # if using `V4LCameraCapture` +pip3 install actfw-core +``` + +## Document + +* [API References](https://idein.github.io/actfw-core/latest/) + +## Usage + +Construct your application with a task parallel model + +* Application + * `actfw_core.Application` : Main application +* Workers + * `actfw_core.task.Producer` : Task generator + * `actfw_core.capture.V4LCameraCapture` : Generate UVC camera capture image + * `actfw_core.task.Pipe` : Task to Task converter + * `actfw_core.task.Consumer` : Task terminator + +Each worker is executed in parallel. + +User should + +* Define subclass of `Producer/Pipe/Consumer` + +```python +class MyPipe(actfw_core.task.Pipe): + def proc(self, i): + ... +``` + +* Connect defined worker objects + +```python +p = MyProducer() +f1 = MyPipe() +f2 = MyPipe() +c = MyConsumer() +p.connect(f1) +f1.connect(f2) +f2.connect(c) +``` + +* Register to `Application` + +```python +app = actfw_core.Application() +app.register_task(p) +app.register_task(f1) +app.register_task(f2) +app.register_task(c) +``` + +* Execute application + +```python +app.run() +``` + +## Development Guide + +### Installation of dev requirements + +```console +pip3 install poetry +poetry install +``` + +### Running tests + +```console +poetry run nose2 -v +``` + +### Releasing package & API doc + +CI will automatically do. +Follow the following branch/tag rules. + +1. Make changes for next version in `master` branch (via pull-requests). +2. Make a PR that updates version in `pyproject.toml` and merge it to `master` branch. +3. Create GitHub release from `master` branch's HEAD. + 1. [Draft a new release](https://github.com/Idein/actfw-core/releases/new). + 2. Create new tag named `release-<New version>` (e.g. `release-1.4.0`) from `Choose a tag` pull down menu. + 3. Write title and description. + 4. Publish release. +4. Then CI will build/upload package to PyPI & API doc to GitHub Pages. + + +%prep +%autosetup -n actfw-core-2.2.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-actfw-core -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Wed May 17 2023 Python_Bot <Python_Bot@openeuler.org> - 2.2.0-1 +- Package Spec generated @@ -0,0 +1 @@ +60d50fc92292153872ed6bdd747864b9 actfw_core-2.2.0.tar.gz |