From 1568d43b15aa48a6ab157b8a0a9a39832a687f96 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Fri, 5 May 2023 03:58:09 +0000 Subject: automatic import of python-funcnotify --- .gitignore | 1 + python-funcnotify.spec | 328 +++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 330 insertions(+) create mode 100644 python-funcnotify.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..8485ba6 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/FuncNotify-1.3.7.tar.gz diff --git a/python-funcnotify.spec b/python-funcnotify.spec new file mode 100644 index 0000000..982d17c --- /dev/null +++ b/python-funcnotify.spec @@ -0,0 +1,328 @@ +%global _empty_manifest_terminate_build 0 +Name: python-FuncNotify +Version: 1.3.7 +Release: 1 +Summary: Get notified when your functions finish running +License: MIT +URL: https://github.com/kevinfjiang/FuncNotify +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/1f/45/5c3aba354e8003fc1df51ee48efebce9564b5b831fa9bcbb1b8160ad127d/FuncNotify-1.3.7.tar.gz +BuildArch: noarch + +Requires: python3-dotenv +Requires: python3-requests +Requires: python3-slackclient +Requires: python3-twilio +Requires: python3-yagmail +Requires: python3-keyring +Requires: python3-sendgrid + +%description +# **FuncNotify ⏰** +> **Get notified when your code finishes/crashes with one line of code** + +![Build](https://img.shields.io/github/workflow/status/kevinfjiang/FuncNotify/CI?label=CI) ![Deploy](https://img.shields.io/github/workflow/status/kevinfjiang/FuncNotify/CD?label=CD) [![DOC](https://github.com/kevinfjiang/FuncNotify/actions/workflows/docs.yml/badge.svg)](https://kevinfjiang.github.io/FuncNotify/) ![LCommit](https://img.shields.io/github/last-commit/kevinfjiang/FuncNotify) ![release](https://img.shields.io/github/v/release/kevinfjiang/FuncNotify?include_prereleases) ![License](https://img.shields.io/github/license/kevinfjiang/FuncNotify.svg) +![wheel](https://img.shields.io/pypi/wheel/FuncNotify) + +**[Documentation](https://kevinfjiang.github.io/FuncNotify/#header-submodules) | [GitHub](https://github.com/kevinfjiang/FuncNotify) | [PyPI](https://pypi.org/project/FuncNotify/)** +### **Installation:** +```$ pip install FuncNotify``` +### **Quick Guide:** +```python +# Add more as projects grow! +from FuncNotify import time_func, time_text, time_slack + + +@time_func(NotifyMethod="Text", use_env=True, env_path".env", update_env=True, phone="8001234567") +def wait_func(): + """This function will use the text method and pull env variables from + `.env`, it will update the already determined env variables too!""" + do_something() + + +@time_Text() +def wait_func2(): + """All parameters are optional and each method has a personal decorator, + even the function call is optional see below""" + do_something() + +@time_Text +def wait_func3(): + """Auto pull from `.env` is enabled by default with Method specific + time decorators""" + do_something() + +@time_func(multi_target=[{...}, {...}], multi_env=["1.env", "2.env"]) +def wait_func4(): + """Send to multiple sources either through specifiying multiple + dictionaries of kwargs or multiple .env paths, or both in pairs!""" + do_something() + +custom_message("HELLO WORLD", NotifyMethod="Text", multi_target=[{...}, {...}], multi_env=["1.env", "2.env"]) +"""Custom messaging is here, pass the same arguments in as time_func and you +can mass send messages in many methods""" + +if __name__ == "__main__": + """You don't even need to use the timer as a decorator, + use it as a normal function This is how we do testing 😊 """ + time_func(function=wait_func5)(*func5_args, **func5_kwargs) +``` + +All accomplish the same objective of notifying the user after `wait_func()` completes, one does so with the phone number saved as an env variable in `.env` so it never accidentally gets exposed. + +#### **CLI arguments:** +```$ FuncNotify [command here] --kwargs NotifyMethod=Text phone=8001234567 ``` + +```$ FuncNotify go run main.go --kwargs NotifyMethod=Email multi_env=1.env multi_env=2.env ``` + +```$ FuncNotify sleep 5 --kwargs NotifyMethod=Text multi_target="[{'NotifyMethod': 'Print', 'verbose': True}, {'phone': '8001234567'}]"``` + +Anything after `--kwargs` with an equal sign will automatically be parsed as a key-word argument for FuncNotify. The remainder without `=` will be executed. Wrap lists, dicts, and tuples in `"` so they get read properly. This allows you to time any script. + +### **Demo:** +```$ pip install FuncNotify``` + +```$ FuncNotify sleep 5 --kwargs NotifyMethod=Print``` + +To expand, create a `.env` file and a twilio account according to these [instructions](https://www.twilio.com/docs/sms/quickstart/python) (it's free!). Instead of hard coding variables or exporting them to your env, just put them in the twilio alerts section of your `.env`, skip installing twilio as it's already installed. Then try: + +```$ FuncNotify sleep 5 --kwargs NotifyMethod=Text``` + +### **Supported Notify Methods:** +| Platform | +| :-----------------------------------: | +| Console Print | +| [Email Twilio](https://docs.sendgrid.com/for-developers/sending-email/v3-python-code-example) | +| [Email Yagmail](https://github.com/kootenpv/yagmail) | +| [Text](https://www.twilio.com/docs/sms/send-messages) | +| [Slack](https://api.slack.com/messaging/sending) | +| [Microsoft Teams](https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook) | + +### Create following .env in CWD +[.env](https://raw.githubusercontent.com/kevinfjiang/FuncNotify/master/template.env) + + + +%package -n python3-FuncNotify +Summary: Get notified when your functions finish running +Provides: python-FuncNotify +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-FuncNotify +# **FuncNotify ⏰** +> **Get notified when your code finishes/crashes with one line of code** + +![Build](https://img.shields.io/github/workflow/status/kevinfjiang/FuncNotify/CI?label=CI) ![Deploy](https://img.shields.io/github/workflow/status/kevinfjiang/FuncNotify/CD?label=CD) [![DOC](https://github.com/kevinfjiang/FuncNotify/actions/workflows/docs.yml/badge.svg)](https://kevinfjiang.github.io/FuncNotify/) ![LCommit](https://img.shields.io/github/last-commit/kevinfjiang/FuncNotify) ![release](https://img.shields.io/github/v/release/kevinfjiang/FuncNotify?include_prereleases) ![License](https://img.shields.io/github/license/kevinfjiang/FuncNotify.svg) +![wheel](https://img.shields.io/pypi/wheel/FuncNotify) + +**[Documentation](https://kevinfjiang.github.io/FuncNotify/#header-submodules) | [GitHub](https://github.com/kevinfjiang/FuncNotify) | [PyPI](https://pypi.org/project/FuncNotify/)** +### **Installation:** +```$ pip install FuncNotify``` +### **Quick Guide:** +```python +# Add more as projects grow! +from FuncNotify import time_func, time_text, time_slack + + +@time_func(NotifyMethod="Text", use_env=True, env_path".env", update_env=True, phone="8001234567") +def wait_func(): + """This function will use the text method and pull env variables from + `.env`, it will update the already determined env variables too!""" + do_something() + + +@time_Text() +def wait_func2(): + """All parameters are optional and each method has a personal decorator, + even the function call is optional see below""" + do_something() + +@time_Text +def wait_func3(): + """Auto pull from `.env` is enabled by default with Method specific + time decorators""" + do_something() + +@time_func(multi_target=[{...}, {...}], multi_env=["1.env", "2.env"]) +def wait_func4(): + """Send to multiple sources either through specifiying multiple + dictionaries of kwargs or multiple .env paths, or both in pairs!""" + do_something() + +custom_message("HELLO WORLD", NotifyMethod="Text", multi_target=[{...}, {...}], multi_env=["1.env", "2.env"]) +"""Custom messaging is here, pass the same arguments in as time_func and you +can mass send messages in many methods""" + +if __name__ == "__main__": + """You don't even need to use the timer as a decorator, + use it as a normal function This is how we do testing 😊 """ + time_func(function=wait_func5)(*func5_args, **func5_kwargs) +``` + +All accomplish the same objective of notifying the user after `wait_func()` completes, one does so with the phone number saved as an env variable in `.env` so it never accidentally gets exposed. + +#### **CLI arguments:** +```$ FuncNotify [command here] --kwargs NotifyMethod=Text phone=8001234567 ``` + +```$ FuncNotify go run main.go --kwargs NotifyMethod=Email multi_env=1.env multi_env=2.env ``` + +```$ FuncNotify sleep 5 --kwargs NotifyMethod=Text multi_target="[{'NotifyMethod': 'Print', 'verbose': True}, {'phone': '8001234567'}]"``` + +Anything after `--kwargs` with an equal sign will automatically be parsed as a key-word argument for FuncNotify. The remainder without `=` will be executed. Wrap lists, dicts, and tuples in `"` so they get read properly. This allows you to time any script. + +### **Demo:** +```$ pip install FuncNotify``` + +```$ FuncNotify sleep 5 --kwargs NotifyMethod=Print``` + +To expand, create a `.env` file and a twilio account according to these [instructions](https://www.twilio.com/docs/sms/quickstart/python) (it's free!). Instead of hard coding variables or exporting them to your env, just put them in the twilio alerts section of your `.env`, skip installing twilio as it's already installed. Then try: + +```$ FuncNotify sleep 5 --kwargs NotifyMethod=Text``` + +### **Supported Notify Methods:** +| Platform | +| :-----------------------------------: | +| Console Print | +| [Email Twilio](https://docs.sendgrid.com/for-developers/sending-email/v3-python-code-example) | +| [Email Yagmail](https://github.com/kootenpv/yagmail) | +| [Text](https://www.twilio.com/docs/sms/send-messages) | +| [Slack](https://api.slack.com/messaging/sending) | +| [Microsoft Teams](https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook) | + +### Create following .env in CWD +[.env](https://raw.githubusercontent.com/kevinfjiang/FuncNotify/master/template.env) + + + +%package help +Summary: Development documents and examples for FuncNotify +Provides: python3-FuncNotify-doc +%description help +# **FuncNotify ⏰** +> **Get notified when your code finishes/crashes with one line of code** + +![Build](https://img.shields.io/github/workflow/status/kevinfjiang/FuncNotify/CI?label=CI) ![Deploy](https://img.shields.io/github/workflow/status/kevinfjiang/FuncNotify/CD?label=CD) [![DOC](https://github.com/kevinfjiang/FuncNotify/actions/workflows/docs.yml/badge.svg)](https://kevinfjiang.github.io/FuncNotify/) ![LCommit](https://img.shields.io/github/last-commit/kevinfjiang/FuncNotify) ![release](https://img.shields.io/github/v/release/kevinfjiang/FuncNotify?include_prereleases) ![License](https://img.shields.io/github/license/kevinfjiang/FuncNotify.svg) +![wheel](https://img.shields.io/pypi/wheel/FuncNotify) + +**[Documentation](https://kevinfjiang.github.io/FuncNotify/#header-submodules) | [GitHub](https://github.com/kevinfjiang/FuncNotify) | [PyPI](https://pypi.org/project/FuncNotify/)** +### **Installation:** +```$ pip install FuncNotify``` +### **Quick Guide:** +```python +# Add more as projects grow! +from FuncNotify import time_func, time_text, time_slack + + +@time_func(NotifyMethod="Text", use_env=True, env_path".env", update_env=True, phone="8001234567") +def wait_func(): + """This function will use the text method and pull env variables from + `.env`, it will update the already determined env variables too!""" + do_something() + + +@time_Text() +def wait_func2(): + """All parameters are optional and each method has a personal decorator, + even the function call is optional see below""" + do_something() + +@time_Text +def wait_func3(): + """Auto pull from `.env` is enabled by default with Method specific + time decorators""" + do_something() + +@time_func(multi_target=[{...}, {...}], multi_env=["1.env", "2.env"]) +def wait_func4(): + """Send to multiple sources either through specifiying multiple + dictionaries of kwargs or multiple .env paths, or both in pairs!""" + do_something() + +custom_message("HELLO WORLD", NotifyMethod="Text", multi_target=[{...}, {...}], multi_env=["1.env", "2.env"]) +"""Custom messaging is here, pass the same arguments in as time_func and you +can mass send messages in many methods""" + +if __name__ == "__main__": + """You don't even need to use the timer as a decorator, + use it as a normal function This is how we do testing 😊 """ + time_func(function=wait_func5)(*func5_args, **func5_kwargs) +``` + +All accomplish the same objective of notifying the user after `wait_func()` completes, one does so with the phone number saved as an env variable in `.env` so it never accidentally gets exposed. + +#### **CLI arguments:** +```$ FuncNotify [command here] --kwargs NotifyMethod=Text phone=8001234567 ``` + +```$ FuncNotify go run main.go --kwargs NotifyMethod=Email multi_env=1.env multi_env=2.env ``` + +```$ FuncNotify sleep 5 --kwargs NotifyMethod=Text multi_target="[{'NotifyMethod': 'Print', 'verbose': True}, {'phone': '8001234567'}]"``` + +Anything after `--kwargs` with an equal sign will automatically be parsed as a key-word argument for FuncNotify. The remainder without `=` will be executed. Wrap lists, dicts, and tuples in `"` so they get read properly. This allows you to time any script. + +### **Demo:** +```$ pip install FuncNotify``` + +```$ FuncNotify sleep 5 --kwargs NotifyMethod=Print``` + +To expand, create a `.env` file and a twilio account according to these [instructions](https://www.twilio.com/docs/sms/quickstart/python) (it's free!). Instead of hard coding variables or exporting them to your env, just put them in the twilio alerts section of your `.env`, skip installing twilio as it's already installed. Then try: + +```$ FuncNotify sleep 5 --kwargs NotifyMethod=Text``` + +### **Supported Notify Methods:** +| Platform | +| :-----------------------------------: | +| Console Print | +| [Email Twilio](https://docs.sendgrid.com/for-developers/sending-email/v3-python-code-example) | +| [Email Yagmail](https://github.com/kootenpv/yagmail) | +| [Text](https://www.twilio.com/docs/sms/send-messages) | +| [Slack](https://api.slack.com/messaging/sending) | +| [Microsoft Teams](https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook) | + +### Create following .env in CWD +[.env](https://raw.githubusercontent.com/kevinfjiang/FuncNotify/master/template.env) + + + +%prep +%autosetup -n FuncNotify-1.3.7 + +%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-FuncNotify -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot - 1.3.7-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..e4b5190 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +a42f66b4aeec763b1a1960fa2622bbed FuncNotify-1.3.7.tar.gz -- cgit v1.2.3