%global _empty_manifest_terminate_build 0
Name: python-noraise
Version: 0.0.16
Release: 1
Summary: noraise
License: MIT License
URL: https://github.com/kkristof200/py_noraise
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/6d/39/855fc64b1f5b8851c5eae9aa95c077263dedd3aea9127f64e908e8080011/noraise-0.0.16.tar.gz
BuildArch: noarch
%description
# noraise
![PyPI - package version](https://img.shields.io/pypi/v/noraise?logo=pypi&style=flat-square)
![PyPI - license](https://img.shields.io/pypi/l/noraise?label=package%20license&style=flat-square)
![PyPI - python version](https://img.shields.io/pypi/pyversions/noraise?logo=pypi&style=flat-square)
![PyPI - downloads](https://img.shields.io/pypi/dm/noraise?logo=pypi&style=flat-square)
![GitHub - last commit](https://img.shields.io/github/last-commit/kkristof200/py_noraise?style=flat-square)
![GitHub - commit activity](https://img.shields.io/github/commit-activity/m/kkristof200/py_noraise?style=flat-square)
![GitHub - code size in bytes](https://img.shields.io/github/languages/code-size/kkristof200/py_noraise?style=flat-square)
![GitHub - repo size](https://img.shields.io/github/repo-size/kkristof200/py_noraise?style=flat-square)
![GitHub - lines of code](https://img.shields.io/tokei/lines/github/kkristof200/py_noraise?style=flat-square)
![GitHub - license](https://img.shields.io/github/license/kkristof200/py_noraise?label=repo%20license&style=flat-square)
## Description
Lightweight utility package, that provides a function decorator to easily catch and print exceptions
## Supported Args
| name | type | default value | description |
|----------------------|---------------------------|---------------|---------------------------------------------------------------------------------|
| print_exc | bool | True | If True, prints stacktrace |
| return_exception | bool | False | If True, returns caught exception |
| default_return_value | Optional[any] | None | What to return upon caught exception if
'return_exception' is False |
| ignored_error_types | Optional[List[Exception]] | None | In which cases should the stacktrace print
be skipped if 'print_exc' is True |
## Install
~~~~bash
pip install noraise
# or
pip3 install noraise
~~~~
## Usage
~~~~python
from noraise import noraise
@noraise(print_exc=True, return_exception=True, ignored_error_types=[ZeroDivisionError])
def f2():
return 1/0
res = f2()
print(type(res), res)
# This will not catch the crash, and print
#
#
# < ------------------------------------- Caught with @noraise ------------------------------------ >
#
# Traceback (most recent call last):
# File "/Users/kristofk/github/py_noraise/noraise/noraise.py", line 32, in wrapper
# return function(*args, **kwargs)
# File "demo.py", line 5, in f2
# return 1/0
# ZeroDivisionError: division by zero
#
# < ----------------------------------------------------------------------------------------------- >
#
#
# division by zero
~~~~
## Dependencies
%package -n python3-noraise
Summary: noraise
Provides: python-noraise
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-noraise
# noraise
![PyPI - package version](https://img.shields.io/pypi/v/noraise?logo=pypi&style=flat-square)
![PyPI - license](https://img.shields.io/pypi/l/noraise?label=package%20license&style=flat-square)
![PyPI - python version](https://img.shields.io/pypi/pyversions/noraise?logo=pypi&style=flat-square)
![PyPI - downloads](https://img.shields.io/pypi/dm/noraise?logo=pypi&style=flat-square)
![GitHub - last commit](https://img.shields.io/github/last-commit/kkristof200/py_noraise?style=flat-square)
![GitHub - commit activity](https://img.shields.io/github/commit-activity/m/kkristof200/py_noraise?style=flat-square)
![GitHub - code size in bytes](https://img.shields.io/github/languages/code-size/kkristof200/py_noraise?style=flat-square)
![GitHub - repo size](https://img.shields.io/github/repo-size/kkristof200/py_noraise?style=flat-square)
![GitHub - lines of code](https://img.shields.io/tokei/lines/github/kkristof200/py_noraise?style=flat-square)
![GitHub - license](https://img.shields.io/github/license/kkristof200/py_noraise?label=repo%20license&style=flat-square)
## Description
Lightweight utility package, that provides a function decorator to easily catch and print exceptions
## Supported Args
| name | type | default value | description |
|----------------------|---------------------------|---------------|---------------------------------------------------------------------------------|
| print_exc | bool | True | If True, prints stacktrace |
| return_exception | bool | False | If True, returns caught exception |
| default_return_value | Optional[any] | None | What to return upon caught exception if
'return_exception' is False |
| ignored_error_types | Optional[List[Exception]] | None | In which cases should the stacktrace print
be skipped if 'print_exc' is True |
## Install
~~~~bash
pip install noraise
# or
pip3 install noraise
~~~~
## Usage
~~~~python
from noraise import noraise
@noraise(print_exc=True, return_exception=True, ignored_error_types=[ZeroDivisionError])
def f2():
return 1/0
res = f2()
print(type(res), res)
# This will not catch the crash, and print
#
#
# < ------------------------------------- Caught with @noraise ------------------------------------ >
#
# Traceback (most recent call last):
# File "/Users/kristofk/github/py_noraise/noraise/noraise.py", line 32, in wrapper
# return function(*args, **kwargs)
# File "demo.py", line 5, in f2
# return 1/0
# ZeroDivisionError: division by zero
#
# < ----------------------------------------------------------------------------------------------- >
#
#
# division by zero
~~~~
## Dependencies
%package help
Summary: Development documents and examples for noraise
Provides: python3-noraise-doc
%description help
# noraise
![PyPI - package version](https://img.shields.io/pypi/v/noraise?logo=pypi&style=flat-square)
![PyPI - license](https://img.shields.io/pypi/l/noraise?label=package%20license&style=flat-square)
![PyPI - python version](https://img.shields.io/pypi/pyversions/noraise?logo=pypi&style=flat-square)
![PyPI - downloads](https://img.shields.io/pypi/dm/noraise?logo=pypi&style=flat-square)
![GitHub - last commit](https://img.shields.io/github/last-commit/kkristof200/py_noraise?style=flat-square)
![GitHub - commit activity](https://img.shields.io/github/commit-activity/m/kkristof200/py_noraise?style=flat-square)
![GitHub - code size in bytes](https://img.shields.io/github/languages/code-size/kkristof200/py_noraise?style=flat-square)
![GitHub - repo size](https://img.shields.io/github/repo-size/kkristof200/py_noraise?style=flat-square)
![GitHub - lines of code](https://img.shields.io/tokei/lines/github/kkristof200/py_noraise?style=flat-square)
![GitHub - license](https://img.shields.io/github/license/kkristof200/py_noraise?label=repo%20license&style=flat-square)
## Description
Lightweight utility package, that provides a function decorator to easily catch and print exceptions
## Supported Args
| name | type | default value | description |
|----------------------|---------------------------|---------------|---------------------------------------------------------------------------------|
| print_exc | bool | True | If True, prints stacktrace |
| return_exception | bool | False | If True, returns caught exception |
| default_return_value | Optional[any] | None | What to return upon caught exception if
'return_exception' is False |
| ignored_error_types | Optional[List[Exception]] | None | In which cases should the stacktrace print
be skipped if 'print_exc' is True |
## Install
~~~~bash
pip install noraise
# or
pip3 install noraise
~~~~
## Usage
~~~~python
from noraise import noraise
@noraise(print_exc=True, return_exception=True, ignored_error_types=[ZeroDivisionError])
def f2():
return 1/0
res = f2()
print(type(res), res)
# This will not catch the crash, and print
#
#
# < ------------------------------------- Caught with @noraise ------------------------------------ >
#
# Traceback (most recent call last):
# File "/Users/kristofk/github/py_noraise/noraise/noraise.py", line 32, in wrapper
# return function(*args, **kwargs)
# File "demo.py", line 5, in f2
# return 1/0
# ZeroDivisionError: division by zero
#
# < ----------------------------------------------------------------------------------------------- >
#
#
# division by zero
~~~~
## Dependencies
%prep
%autosetup -n noraise-0.0.16
%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-noraise -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Thu Jun 08 2023 Python_Bot - 0.0.16-1
- Package Spec generated