summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-10 08:06:02 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-10 08:06:02 +0000
commit495dde8581136576b224c9d88946d483bdd8c878 (patch)
treea1e7319830e3c35d439cf26edb7a8a69e4f40f43
parent3fcbfc912a02ba5005977206a1a3e0d529633cca (diff)
automatic import of python-bareasgi
-rw-r--r--.gitignore1
-rw-r--r--python-bareasgi.spec245
-rw-r--r--sources1
3 files changed, 247 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..0c0148c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/bareasgi-4.4.1.tar.gz
diff --git a/python-bareasgi.spec b/python-bareasgi.spec
new file mode 100644
index 0000000..7a2b591
--- /dev/null
+++ b/python-bareasgi.spec
@@ -0,0 +1,245 @@
+%global _empty_manifest_terminate_build 0
+Name: python-bareasgi
+Version: 4.4.1
+Release: 1
+Summary: A lightweight ASGI framework
+License: Apache-2.0
+URL: https://github.com/rob-blackbourn/bareasgi
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/6e/5a/4c5135db83cfacd1a933b080c5481a5f0838ad4c2987b55c92b6c6f7653d/bareasgi-4.4.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-bareutils
+Requires: python3-jetblack-asgi-typing
+
+%description
+# bareASGI
+
+A lightweight Python [ASGI](user-guide/asgi) web server framework
+(read the [docs](https://rob-blackbourn.github.io/bareASGI/)).
+
+## Overview
+
+This is a _bare_ ASGI web server framework. The goal is to provide
+a minimal implementation, with other facilities (serving static files, CORS,
+sessions, etc.) being implemented by optional packages.
+
+The framework is targeted at micro-services which require a light footprint
+(in a container for example), or as a base for larger frameworks.
+
+Python 3.8+ is required.
+
+## Optional Packages
+
+- [bareASGI-cors](https://github.com/rob-blackbourn/bareASGI-cors) for cross origin resource sharing,
+- [bareASGI-static](https://github.com/rob-blackbourn/bareASGI-static) for serving static files,
+- [bareASGI-jinja2](https://github.com/rob-blackbourn/bareASGI-jinja2) for [Jinja2](https://github.com/pallets/jinja) template rendering,
+- [bareASGI-graphql-next](https://github.com/rob-blackbourn/bareASGI-graphql-next) for [GraphQL](https://github.com/graphql-python/graphql-core) and [graphene](https://github.com/graphql-python/graphene),
+- [bareASGI-rest](https://github.com/rob-blackbourn/bareASGI-rest) for REST support,
+- [bareASGI-prometheus](https://github.com/rob-blackbourn/bareASGI-prometheus) for [prometheus](https://prometheus.io/) metrics,
+- [bareASGI-session](https://github.com/rob-blackbourn/bareASGI-session) for sessions.
+
+## Functionality
+
+The framework provides the basic functionality required for developing a web
+application, including:
+
+- Http,
+- WebSockets,
+- Routing,
+- Lifecycle,
+- Middleware
+
+## Simple Server
+
+Here is a simple server with a request handler that returns some text.
+
+```python
+import uvicorn
+from bareasgi import Application, HttpRequest, HttpResponse, text_writer
+
+async def example_handler(request: HttpRequest) -> HttpResponse:
+ return HttpResponse(
+ 200,
+ [(b'content-type', b'text/plain')],
+ text_writer('This is not a test')
+ )
+
+app = Application()
+app.http_router.add({'GET'}, '/', example_handler)
+
+uvicorn.run(app, port=9009)
+```
+
+
+%package -n python3-bareasgi
+Summary: A lightweight ASGI framework
+Provides: python-bareasgi
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-bareasgi
+# bareASGI
+
+A lightweight Python [ASGI](user-guide/asgi) web server framework
+(read the [docs](https://rob-blackbourn.github.io/bareASGI/)).
+
+## Overview
+
+This is a _bare_ ASGI web server framework. The goal is to provide
+a minimal implementation, with other facilities (serving static files, CORS,
+sessions, etc.) being implemented by optional packages.
+
+The framework is targeted at micro-services which require a light footprint
+(in a container for example), or as a base for larger frameworks.
+
+Python 3.8+ is required.
+
+## Optional Packages
+
+- [bareASGI-cors](https://github.com/rob-blackbourn/bareASGI-cors) for cross origin resource sharing,
+- [bareASGI-static](https://github.com/rob-blackbourn/bareASGI-static) for serving static files,
+- [bareASGI-jinja2](https://github.com/rob-blackbourn/bareASGI-jinja2) for [Jinja2](https://github.com/pallets/jinja) template rendering,
+- [bareASGI-graphql-next](https://github.com/rob-blackbourn/bareASGI-graphql-next) for [GraphQL](https://github.com/graphql-python/graphql-core) and [graphene](https://github.com/graphql-python/graphene),
+- [bareASGI-rest](https://github.com/rob-blackbourn/bareASGI-rest) for REST support,
+- [bareASGI-prometheus](https://github.com/rob-blackbourn/bareASGI-prometheus) for [prometheus](https://prometheus.io/) metrics,
+- [bareASGI-session](https://github.com/rob-blackbourn/bareASGI-session) for sessions.
+
+## Functionality
+
+The framework provides the basic functionality required for developing a web
+application, including:
+
+- Http,
+- WebSockets,
+- Routing,
+- Lifecycle,
+- Middleware
+
+## Simple Server
+
+Here is a simple server with a request handler that returns some text.
+
+```python
+import uvicorn
+from bareasgi import Application, HttpRequest, HttpResponse, text_writer
+
+async def example_handler(request: HttpRequest) -> HttpResponse:
+ return HttpResponse(
+ 200,
+ [(b'content-type', b'text/plain')],
+ text_writer('This is not a test')
+ )
+
+app = Application()
+app.http_router.add({'GET'}, '/', example_handler)
+
+uvicorn.run(app, port=9009)
+```
+
+
+%package help
+Summary: Development documents and examples for bareasgi
+Provides: python3-bareasgi-doc
+%description help
+# bareASGI
+
+A lightweight Python [ASGI](user-guide/asgi) web server framework
+(read the [docs](https://rob-blackbourn.github.io/bareASGI/)).
+
+## Overview
+
+This is a _bare_ ASGI web server framework. The goal is to provide
+a minimal implementation, with other facilities (serving static files, CORS,
+sessions, etc.) being implemented by optional packages.
+
+The framework is targeted at micro-services which require a light footprint
+(in a container for example), or as a base for larger frameworks.
+
+Python 3.8+ is required.
+
+## Optional Packages
+
+- [bareASGI-cors](https://github.com/rob-blackbourn/bareASGI-cors) for cross origin resource sharing,
+- [bareASGI-static](https://github.com/rob-blackbourn/bareASGI-static) for serving static files,
+- [bareASGI-jinja2](https://github.com/rob-blackbourn/bareASGI-jinja2) for [Jinja2](https://github.com/pallets/jinja) template rendering,
+- [bareASGI-graphql-next](https://github.com/rob-blackbourn/bareASGI-graphql-next) for [GraphQL](https://github.com/graphql-python/graphql-core) and [graphene](https://github.com/graphql-python/graphene),
+- [bareASGI-rest](https://github.com/rob-blackbourn/bareASGI-rest) for REST support,
+- [bareASGI-prometheus](https://github.com/rob-blackbourn/bareASGI-prometheus) for [prometheus](https://prometheus.io/) metrics,
+- [bareASGI-session](https://github.com/rob-blackbourn/bareASGI-session) for sessions.
+
+## Functionality
+
+The framework provides the basic functionality required for developing a web
+application, including:
+
+- Http,
+- WebSockets,
+- Routing,
+- Lifecycle,
+- Middleware
+
+## Simple Server
+
+Here is a simple server with a request handler that returns some text.
+
+```python
+import uvicorn
+from bareasgi import Application, HttpRequest, HttpResponse, text_writer
+
+async def example_handler(request: HttpRequest) -> HttpResponse:
+ return HttpResponse(
+ 200,
+ [(b'content-type', b'text/plain')],
+ text_writer('This is not a test')
+ )
+
+app = Application()
+app.http_router.add({'GET'}, '/', example_handler)
+
+uvicorn.run(app, port=9009)
+```
+
+
+%prep
+%autosetup -n bareasgi-4.4.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-bareasgi -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 4.4.1-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..8a9d51a
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+c000c553430f05d40694587ecd734a61 bareasgi-4.4.1.tar.gz