diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-15 03:47:57 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-15 03:47:57 +0000 |
commit | 835e775a28c79fef7fca7b71ea44af6e0771e742 (patch) | |
tree | 3bd7cba8d61ec7f1be054ba6b882ab4ad3e4a02d | |
parent | 034fb80b63c067e4efc45f2492b3a27c4938c040 (diff) |
automatic import of python-redis-queue-tool
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-redis-queue-tool.spec | 761 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 763 insertions, 0 deletions
@@ -0,0 +1 @@ +/redis-queue-tool-4.8.7.tar.gz diff --git a/python-redis-queue-tool.spec b/python-redis-queue-tool.spec new file mode 100644 index 0000000..21a5d5c --- /dev/null +++ b/python-redis-queue-tool.spec @@ -0,0 +1,761 @@ +%global _empty_manifest_terminate_build 0 +Name: python-redis-queue-tool +Version: 4.8.7 +Release: 1 +Summary: 高并发reids队列,分布式爬虫利器(High concurrency RedisQueue,Distributed crawler weapon) +License: MIT License +URL: https://github.com/abo123456789/redis-queue-tool +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/10/e9/726e4e3becde2770c8cc1c84816c284b962af41368ef9966e751e809d66f/redis-queue-tool-4.8.7.tar.gz +BuildArch: noarch + +Requires: python3-redis +Requires: python3-tomorrow3 +Requires: python3-retrying +Requires: python3-py-log +Requires: python3-persist-queue +Requires: python3-gevent +Requires: python3-kafka-python +Requires: python3-pypattyrn + +%description +[中文文档](https://github.com/abo123456789/RedisQueue/blob/master/README.md) | [English Docs](https://github.com/abo123456789/RedisQueue/blob/master/README_EN.md) +### redis高并发队列 +#### 功能描述 +* 比scrapy更灵活,比celery更容易上手的分布式爬虫框架。用最少的代码,用最简单的方式,做最多的事情 +* 1分钟内能熟练运用该框架爬取数据,无需学习复杂文档.轻松扩展各种中间件 + +特色说明: + + 支持中间件: + 支持reids kafka sqlite memory 四种中间件(首推redis,支持批量发布任务,分布式消费快如闪电) + + 并发支持: + 支持process threading gevent三种并发消费模式(可混合使用) + + 控频限流: + 精确控制1秒钟运行多少次函数 + + 任务去重: + 如果重复推送消费成功的任务,自动过滤掉该任务 + + 消费确认: + 启用消费确认,消费任务宕机手动终止情况,任务不会丢失 + + 重试次数: + 当函数运行出错,会立即重试指定的次数,达到最大次重试数后任务会进入死信队列 + + 任务可视化: + 可以通过redis web版管理工具实时查看当前任务消费情况 +#### 版本说明 +* 支持版本: python 3.0+ + +#### pip安装 +```shell +pip install redis-queue-tool +``` + +#### DEMO说明 +[所有demo](https://github.com/abo123456789/redis-queue-tool/blob/master/redis_queue_tool/test_demo.py) + +##### 1.发布任务和消费任务(函数版) +```python +from redis_queue_tool import get_consumer +def f11(a: int = 1, b: int = 1): + print(f"t_demo11,a:{a},b:{b}") + +customer = get_consumer('test11', consuming_function=f11) + +for i in range(1, 200): + customer.publisher_queue.pub(a=i, b=i) + +customer.start() +``` + +##### 2.发布任务和消费任务(装饰器版) +```python +from redis_queue_tool import task_deco + +@task_deco('test0') # 消费函数上新增任务队列装饰器 +def f0(a, b): + print(f"t_demo0,a:{a},b:{b}") + +# 发布任务 +for i in range(1, 51): + f0.pub(i, i) + +# 消费任务 +f0.start() +``` + +##### 3.发布消费任务(类调用版) +```python +from redis_queue_tool import RedisPublish, RedisCustomer + + +for zz in range(1, 501): + param = {"a": zz, "b": zz, "c": zz} + RedisPublish(queue_name='test2').publish_redispy(param) + + +def print_msg_dict(a, b, c): + print(f"msg_dict:{a},{b},{c}") + + +# 消费多参数类型任务 queue_name消费队列名称 qps每秒消费任务数(默认没有限制) +RedisCustomer(queue_name='test2', consuming_function=print_msg_dict, + qps=50).start_consuming_message() +``` + +##### 4.发布消费任务(额外参数) +```python +from redis_queue_tool import task_deco + +@task_deco('test1', qps=30, threads_num=30, max_retry_times=3, ack=True) +def f1(a, b): + print(f"t_demo1,a:{a},b:{b}") + +# 发布任务 +for i in range(1, 31): + f1.pub(i, i + 1) # 或者 f1.publish_redispy(i,i+1) + +# 消费任务 +f1.start() + +# DLQ消息重入消费队列 +f1.publisher.dlq_re_queue() +``` + +##### 5.批量提交任务(使用协程消费) + +```python +from redis_queue_tool import task_deco +from gevent import monkey +monkey.patch_all() + +# #### 3.批量提交任务 +result = [{'a': i, 'b': i, 'c': i} for i in range(1, 51)] + +# customer_type 消费者类型(默认thread),max_push_size每次批量提交记录数(默认值50) +# 若使用gevent请在代码开头加入:from gevent import monkey monkey.patch_all() +@task_deco('test3', qps=50, customer_type='gevent', max_push_size=100) # 消费函数上新增任务队列装饰器 +def f3(a, b, c): + print(f"t_demo3:{a},{b},{c}") + +# 发布任务 +f3.pub_list(result) + +# 消费任务 +f3.start() +``` + +##### 6.切换任务队列中间件为sqlite(默认为redis) + +```python +from redis_queue_tool import task_deco, MiddlewareEum + +@task_deco('test4', middleware=MiddlewareEum.SQLITE, qps=10) +def f4(a, b, c): + print(f"t_demo4:{a},{b},{c}") + +for zz in range(1, 51): + f4.pub(zz, zz, zz) + +f4.start() +``` + +#### 消费函数参数详解 +``` +get_consumer(queue_name='test11', consuming_function=f11, process_num=2, threads_num=30, max_retry_times=5, qps=10) +:param queue_name: 队列名称 +:param consuming_function: 队列消息取出来后执行的方法 +:param process_num: 启动进程数量(默认值:1) +:param threads_num: 启动线程数(默认值:50) +:param max_retry_times: 错误重试次数(默认值:3) +:param qps: 每秒限制消费任务数量(默认0不限) +:param middleware: 消费中间件,默认redis 支持sqlite ,kafka, memory +:param specify_threadpool: 外部传入线程池 +:param customer_type: 消费者类型 string 支持('thread','gevent') 默认thread +:param fliter_rep: 消费任务是否去重 bool True:去重 False:不去重 +:param max_push_size : 每次批量推送任务数量 默认值50 +:param ack : 是否需要确认消费 默认值False +:param priority : 队列优先级 int[0-4] +``` +#### reids安装 +[reids 普通安装](https://www.runoob.com/redis/redis-install.html) + +reids docker安装 +```shell +docker run -d -p 6379:6379 redis +``` + +redis web版管理工具 [redisweb](https://github.com/abo123456789/redisweb) + + + +#### 特色说明 + +```shell +1 . 高并发分布式爬虫(经过线上千万级数据爬取验证) + +2 . 分布式数据清洗(清洗自动去重,支持任意时刻中断后继续清洗) + +3 . 短视频处理(视频下载上传,带宽足够无需等待) + +4 . 异步实时在线查询接口(速度达到毫秒级别) + +5 . 其它使用场景扩展中 + +``` + +#### 更新说明 + + +```java +2020-12-18 pip安装版本升级到4.8.0,新增支持优先级队列参数priority + +2020-11-17 新增支持优先级队列,priority值越大,队列消优先级越高 + +2020-11-01 版本4.6.9 新增支持DLQ死信队列支持,当ack=True消费失败消息都会进入死信队列 + +2020-06-11 版本4.1.5 新增支持gevent协程消费参数 customer_type='gevent' + +2020-05-20 新增消费函数超时时间参数 + +2020-05-10 新增sqlite中间件支持 + +2020-04-13 消费函数新增自动控制线程数 + +2020-04-10 消费函数新增限频参数 + +2020-01-08 消费函数支持多参数类型 + +2019-12-06 简化多线程消费队列类 + +2019-10-14 新增消费函数错误重试机制,默认重试3次 + +2019-10-12 任务去重忽略参数顺序 + +2019-09-27 修复提交列表任务BUG + +2019-05-25 新增添加任务时动态传参 + +2019-04-06 新增爬取任务自动去重功能 + +2019-03-23 新增单线程异步批量提交功能 +``` + + + + +%package -n python3-redis-queue-tool +Summary: 高并发reids队列,分布式爬虫利器(High concurrency RedisQueue,Distributed crawler weapon) +Provides: python-redis-queue-tool +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-redis-queue-tool +[中文文档](https://github.com/abo123456789/RedisQueue/blob/master/README.md) | [English Docs](https://github.com/abo123456789/RedisQueue/blob/master/README_EN.md) +### redis高并发队列 +#### 功能描述 +* 比scrapy更灵活,比celery更容易上手的分布式爬虫框架。用最少的代码,用最简单的方式,做最多的事情 +* 1分钟内能熟练运用该框架爬取数据,无需学习复杂文档.轻松扩展各种中间件 + +特色说明: + + 支持中间件: + 支持reids kafka sqlite memory 四种中间件(首推redis,支持批量发布任务,分布式消费快如闪电) + + 并发支持: + 支持process threading gevent三种并发消费模式(可混合使用) + + 控频限流: + 精确控制1秒钟运行多少次函数 + + 任务去重: + 如果重复推送消费成功的任务,自动过滤掉该任务 + + 消费确认: + 启用消费确认,消费任务宕机手动终止情况,任务不会丢失 + + 重试次数: + 当函数运行出错,会立即重试指定的次数,达到最大次重试数后任务会进入死信队列 + + 任务可视化: + 可以通过redis web版管理工具实时查看当前任务消费情况 +#### 版本说明 +* 支持版本: python 3.0+ + +#### pip安装 +```shell +pip install redis-queue-tool +``` + +#### DEMO说明 +[所有demo](https://github.com/abo123456789/redis-queue-tool/blob/master/redis_queue_tool/test_demo.py) + +##### 1.发布任务和消费任务(函数版) +```python +from redis_queue_tool import get_consumer +def f11(a: int = 1, b: int = 1): + print(f"t_demo11,a:{a},b:{b}") + +customer = get_consumer('test11', consuming_function=f11) + +for i in range(1, 200): + customer.publisher_queue.pub(a=i, b=i) + +customer.start() +``` + +##### 2.发布任务和消费任务(装饰器版) +```python +from redis_queue_tool import task_deco + +@task_deco('test0') # 消费函数上新增任务队列装饰器 +def f0(a, b): + print(f"t_demo0,a:{a},b:{b}") + +# 发布任务 +for i in range(1, 51): + f0.pub(i, i) + +# 消费任务 +f0.start() +``` + +##### 3.发布消费任务(类调用版) +```python +from redis_queue_tool import RedisPublish, RedisCustomer + + +for zz in range(1, 501): + param = {"a": zz, "b": zz, "c": zz} + RedisPublish(queue_name='test2').publish_redispy(param) + + +def print_msg_dict(a, b, c): + print(f"msg_dict:{a},{b},{c}") + + +# 消费多参数类型任务 queue_name消费队列名称 qps每秒消费任务数(默认没有限制) +RedisCustomer(queue_name='test2', consuming_function=print_msg_dict, + qps=50).start_consuming_message() +``` + +##### 4.发布消费任务(额外参数) +```python +from redis_queue_tool import task_deco + +@task_deco('test1', qps=30, threads_num=30, max_retry_times=3, ack=True) +def f1(a, b): + print(f"t_demo1,a:{a},b:{b}") + +# 发布任务 +for i in range(1, 31): + f1.pub(i, i + 1) # 或者 f1.publish_redispy(i,i+1) + +# 消费任务 +f1.start() + +# DLQ消息重入消费队列 +f1.publisher.dlq_re_queue() +``` + +##### 5.批量提交任务(使用协程消费) + +```python +from redis_queue_tool import task_deco +from gevent import monkey +monkey.patch_all() + +# #### 3.批量提交任务 +result = [{'a': i, 'b': i, 'c': i} for i in range(1, 51)] + +# customer_type 消费者类型(默认thread),max_push_size每次批量提交记录数(默认值50) +# 若使用gevent请在代码开头加入:from gevent import monkey monkey.patch_all() +@task_deco('test3', qps=50, customer_type='gevent', max_push_size=100) # 消费函数上新增任务队列装饰器 +def f3(a, b, c): + print(f"t_demo3:{a},{b},{c}") + +# 发布任务 +f3.pub_list(result) + +# 消费任务 +f3.start() +``` + +##### 6.切换任务队列中间件为sqlite(默认为redis) + +```python +from redis_queue_tool import task_deco, MiddlewareEum + +@task_deco('test4', middleware=MiddlewareEum.SQLITE, qps=10) +def f4(a, b, c): + print(f"t_demo4:{a},{b},{c}") + +for zz in range(1, 51): + f4.pub(zz, zz, zz) + +f4.start() +``` + +#### 消费函数参数详解 +``` +get_consumer(queue_name='test11', consuming_function=f11, process_num=2, threads_num=30, max_retry_times=5, qps=10) +:param queue_name: 队列名称 +:param consuming_function: 队列消息取出来后执行的方法 +:param process_num: 启动进程数量(默认值:1) +:param threads_num: 启动线程数(默认值:50) +:param max_retry_times: 错误重试次数(默认值:3) +:param qps: 每秒限制消费任务数量(默认0不限) +:param middleware: 消费中间件,默认redis 支持sqlite ,kafka, memory +:param specify_threadpool: 外部传入线程池 +:param customer_type: 消费者类型 string 支持('thread','gevent') 默认thread +:param fliter_rep: 消费任务是否去重 bool True:去重 False:不去重 +:param max_push_size : 每次批量推送任务数量 默认值50 +:param ack : 是否需要确认消费 默认值False +:param priority : 队列优先级 int[0-4] +``` +#### reids安装 +[reids 普通安装](https://www.runoob.com/redis/redis-install.html) + +reids docker安装 +```shell +docker run -d -p 6379:6379 redis +``` + +redis web版管理工具 [redisweb](https://github.com/abo123456789/redisweb) + + + +#### 特色说明 + +```shell +1 . 高并发分布式爬虫(经过线上千万级数据爬取验证) + +2 . 分布式数据清洗(清洗自动去重,支持任意时刻中断后继续清洗) + +3 . 短视频处理(视频下载上传,带宽足够无需等待) + +4 . 异步实时在线查询接口(速度达到毫秒级别) + +5 . 其它使用场景扩展中 + +``` + +#### 更新说明 + + +```java +2020-12-18 pip安装版本升级到4.8.0,新增支持优先级队列参数priority + +2020-11-17 新增支持优先级队列,priority值越大,队列消优先级越高 + +2020-11-01 版本4.6.9 新增支持DLQ死信队列支持,当ack=True消费失败消息都会进入死信队列 + +2020-06-11 版本4.1.5 新增支持gevent协程消费参数 customer_type='gevent' + +2020-05-20 新增消费函数超时时间参数 + +2020-05-10 新增sqlite中间件支持 + +2020-04-13 消费函数新增自动控制线程数 + +2020-04-10 消费函数新增限频参数 + +2020-01-08 消费函数支持多参数类型 + +2019-12-06 简化多线程消费队列类 + +2019-10-14 新增消费函数错误重试机制,默认重试3次 + +2019-10-12 任务去重忽略参数顺序 + +2019-09-27 修复提交列表任务BUG + +2019-05-25 新增添加任务时动态传参 + +2019-04-06 新增爬取任务自动去重功能 + +2019-03-23 新增单线程异步批量提交功能 +``` + + + + +%package help +Summary: Development documents and examples for redis-queue-tool +Provides: python3-redis-queue-tool-doc +%description help +[中文文档](https://github.com/abo123456789/RedisQueue/blob/master/README.md) | [English Docs](https://github.com/abo123456789/RedisQueue/blob/master/README_EN.md) +### redis高并发队列 +#### 功能描述 +* 比scrapy更灵活,比celery更容易上手的分布式爬虫框架。用最少的代码,用最简单的方式,做最多的事情 +* 1分钟内能熟练运用该框架爬取数据,无需学习复杂文档.轻松扩展各种中间件 + +特色说明: + + 支持中间件: + 支持reids kafka sqlite memory 四种中间件(首推redis,支持批量发布任务,分布式消费快如闪电) + + 并发支持: + 支持process threading gevent三种并发消费模式(可混合使用) + + 控频限流: + 精确控制1秒钟运行多少次函数 + + 任务去重: + 如果重复推送消费成功的任务,自动过滤掉该任务 + + 消费确认: + 启用消费确认,消费任务宕机手动终止情况,任务不会丢失 + + 重试次数: + 当函数运行出错,会立即重试指定的次数,达到最大次重试数后任务会进入死信队列 + + 任务可视化: + 可以通过redis web版管理工具实时查看当前任务消费情况 +#### 版本说明 +* 支持版本: python 3.0+ + +#### pip安装 +```shell +pip install redis-queue-tool +``` + +#### DEMO说明 +[所有demo](https://github.com/abo123456789/redis-queue-tool/blob/master/redis_queue_tool/test_demo.py) + +##### 1.发布任务和消费任务(函数版) +```python +from redis_queue_tool import get_consumer +def f11(a: int = 1, b: int = 1): + print(f"t_demo11,a:{a},b:{b}") + +customer = get_consumer('test11', consuming_function=f11) + +for i in range(1, 200): + customer.publisher_queue.pub(a=i, b=i) + +customer.start() +``` + +##### 2.发布任务和消费任务(装饰器版) +```python +from redis_queue_tool import task_deco + +@task_deco('test0') # 消费函数上新增任务队列装饰器 +def f0(a, b): + print(f"t_demo0,a:{a},b:{b}") + +# 发布任务 +for i in range(1, 51): + f0.pub(i, i) + +# 消费任务 +f0.start() +``` + +##### 3.发布消费任务(类调用版) +```python +from redis_queue_tool import RedisPublish, RedisCustomer + + +for zz in range(1, 501): + param = {"a": zz, "b": zz, "c": zz} + RedisPublish(queue_name='test2').publish_redispy(param) + + +def print_msg_dict(a, b, c): + print(f"msg_dict:{a},{b},{c}") + + +# 消费多参数类型任务 queue_name消费队列名称 qps每秒消费任务数(默认没有限制) +RedisCustomer(queue_name='test2', consuming_function=print_msg_dict, + qps=50).start_consuming_message() +``` + +##### 4.发布消费任务(额外参数) +```python +from redis_queue_tool import task_deco + +@task_deco('test1', qps=30, threads_num=30, max_retry_times=3, ack=True) +def f1(a, b): + print(f"t_demo1,a:{a},b:{b}") + +# 发布任务 +for i in range(1, 31): + f1.pub(i, i + 1) # 或者 f1.publish_redispy(i,i+1) + +# 消费任务 +f1.start() + +# DLQ消息重入消费队列 +f1.publisher.dlq_re_queue() +``` + +##### 5.批量提交任务(使用协程消费) + +```python +from redis_queue_tool import task_deco +from gevent import monkey +monkey.patch_all() + +# #### 3.批量提交任务 +result = [{'a': i, 'b': i, 'c': i} for i in range(1, 51)] + +# customer_type 消费者类型(默认thread),max_push_size每次批量提交记录数(默认值50) +# 若使用gevent请在代码开头加入:from gevent import monkey monkey.patch_all() +@task_deco('test3', qps=50, customer_type='gevent', max_push_size=100) # 消费函数上新增任务队列装饰器 +def f3(a, b, c): + print(f"t_demo3:{a},{b},{c}") + +# 发布任务 +f3.pub_list(result) + +# 消费任务 +f3.start() +``` + +##### 6.切换任务队列中间件为sqlite(默认为redis) + +```python +from redis_queue_tool import task_deco, MiddlewareEum + +@task_deco('test4', middleware=MiddlewareEum.SQLITE, qps=10) +def f4(a, b, c): + print(f"t_demo4:{a},{b},{c}") + +for zz in range(1, 51): + f4.pub(zz, zz, zz) + +f4.start() +``` + +#### 消费函数参数详解 +``` +get_consumer(queue_name='test11', consuming_function=f11, process_num=2, threads_num=30, max_retry_times=5, qps=10) +:param queue_name: 队列名称 +:param consuming_function: 队列消息取出来后执行的方法 +:param process_num: 启动进程数量(默认值:1) +:param threads_num: 启动线程数(默认值:50) +:param max_retry_times: 错误重试次数(默认值:3) +:param qps: 每秒限制消费任务数量(默认0不限) +:param middleware: 消费中间件,默认redis 支持sqlite ,kafka, memory +:param specify_threadpool: 外部传入线程池 +:param customer_type: 消费者类型 string 支持('thread','gevent') 默认thread +:param fliter_rep: 消费任务是否去重 bool True:去重 False:不去重 +:param max_push_size : 每次批量推送任务数量 默认值50 +:param ack : 是否需要确认消费 默认值False +:param priority : 队列优先级 int[0-4] +``` +#### reids安装 +[reids 普通安装](https://www.runoob.com/redis/redis-install.html) + +reids docker安装 +```shell +docker run -d -p 6379:6379 redis +``` + +redis web版管理工具 [redisweb](https://github.com/abo123456789/redisweb) + + + +#### 特色说明 + +```shell +1 . 高并发分布式爬虫(经过线上千万级数据爬取验证) + +2 . 分布式数据清洗(清洗自动去重,支持任意时刻中断后继续清洗) + +3 . 短视频处理(视频下载上传,带宽足够无需等待) + +4 . 异步实时在线查询接口(速度达到毫秒级别) + +5 . 其它使用场景扩展中 + +``` + +#### 更新说明 + + +```java +2020-12-18 pip安装版本升级到4.8.0,新增支持优先级队列参数priority + +2020-11-17 新增支持优先级队列,priority值越大,队列消优先级越高 + +2020-11-01 版本4.6.9 新增支持DLQ死信队列支持,当ack=True消费失败消息都会进入死信队列 + +2020-06-11 版本4.1.5 新增支持gevent协程消费参数 customer_type='gevent' + +2020-05-20 新增消费函数超时时间参数 + +2020-05-10 新增sqlite中间件支持 + +2020-04-13 消费函数新增自动控制线程数 + +2020-04-10 消费函数新增限频参数 + +2020-01-08 消费函数支持多参数类型 + +2019-12-06 简化多线程消费队列类 + +2019-10-14 新增消费函数错误重试机制,默认重试3次 + +2019-10-12 任务去重忽略参数顺序 + +2019-09-27 修复提交列表任务BUG + +2019-05-25 新增添加任务时动态传参 + +2019-04-06 新增爬取任务自动去重功能 + +2019-03-23 新增单线程异步批量提交功能 +``` + + + + +%prep +%autosetup -n redis-queue-tool-4.8.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-redis-queue-tool -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 4.8.7-1 +- Package Spec generated @@ -0,0 +1 @@ +ea5d9b10bcdedeef0b813125079d4b35 redis-queue-tool-4.8.7.tar.gz |