# 说明文档
[![GitHub stars][github-stars-badge]][github-stars-link]
[![GitHub forks][github-forks-badge]][github-forks-link]
[![GitHub issues][github-issues-badge]][github-issues-link]
[![GitHub license][github-license-badge]][github-license-link]
[![Documentation Status][rtd-badge]][rtd-link]
[![Python version][python-badge]][pypi-link]
[![PyPI][pypi-badge]][pypi-link]
[![PyPI - Downloads][install-badge]][install-link]
## 简述
Python迷你工具箱,包含简化的常用工具,旨在帮助脚本快速开发。
它具有调用方式统一、参数简单、实现相对简明、文档相对清晰的特点。
功能描述详见[接口文档][rtd-link],常用功能如:执行系统命令、创建/删除文件夹、压缩解压、日志工具、哈希计算、字符加密、邮件发送、钉钉通知、ssh连接、xml解析等。
## 安装说明
```shell
# python版本要求
依赖python3.6+版本, 默认centos7环境yum安装的python3可以使用
# pip仓库配置示例(网速慢建议更换为镜像仓库)
# unix: ~/.pip/pip.conf
# win: %APPDATA%\pip\pip.ini
[global]
index-url = http://pypi.douban.com/simple
trusted-host = pypi.douban.com
# 安装方式
# 完全安装, 建议, 可以使用全部功能
pip3 install mini-toolbox[full]
# 最小化安装, 仅使用原生python3, 可用模块详见源码, 常用模块如下:
# utils/path/extra/logger/hash/archive/mail/pip_list/conifg/ftp
pip3 install mini-toolbox
# 发布地址
Download: https://pypi.org/project/mini-toolbox
Document: https://mini-toolbox.readthedocs.io
```
## 调用示例
```python
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
""" mini_toolbox调用示例, unix环境中执行 """
from mini_toolbox.path import mkdirs, pushd
from mini_toolbox.utils import exec_cmd
from mini_toolbox.logger import Logger
# 实例化日志工具
logger = Logger(logger_id='test_lib', to_file=False).logger
# 重建dir2文件夹
mkdirs('dir1/dir2', is_file=False, remake=True)
# 进入dir1/dir2文件夹, 执行结束后返回原路径
with pushd('dir1/dir2'):
# 创建dir3目录, 存在则忽略
mkdirs('dir3/file1', is_file=True)
# 执行`ls -lh`指令, 输出用日志工具打印
rst = exec_cmd('ls -lh')
logger.debug(rst)
# 执行`find .`指令, 输出直接打印
exec_cmd('find .', live=True)
```
## 格式规范
- **编码遵循[Google Python编码风格][google-style]**
- **文档编写遵循附录中的[Google风格文档编写示例](#sphinx-google-style)**
```shell
# 迭代说明
1. 版本采用三段式 x.y.z
2. x 表示主版本 - 当产生重大变更或重大里程碑时, x+1, y=z=0
3. y 表示增量版本 - 当z版本大于9时, y+1, z=0
4. z 表示补丁版本 - 当涉及变更时, z+1, z<=9
# 命名大小写
1. 类: 单词首字母大写
2. 全局变量: 字母大写, 下划线分隔
3. 内部函数/方法/对象/变量/模块: 单下划线开头, 小写字母, 下划线分隔
4. 其它函数/方法/对象/变量/模块: 小写字母, 下划线分隔
# 其它约定
1. 格式化 - 使用yapf插件格式化代码 # pip3 install yapf
2. 兼容性 - 相同x版本, 做到向后兼容, 尽量做到向前兼容
3. 更新日志 - 提供y版本的详细变更日志和时间, 做到描述简练、分类正确
4. 实现范围 - 不涉及业务代码, 删除冗余代码/注释, 做到相对独立性和通用性
5. 标点符号 - 代码段中的逗号、冒号、分号全部使用英文符号
5. 类型注释 - 尽量提供代码类型注释
- int/float/str/bool/None
- from typing import Dict, List, Tuple, Optional, Union, Any
```
## 打包说明
``` shell
# 将本地目录作为库安装调试
python3 -m pip install --upgrade pip setuptools wheel
pip3 install -e .[full,docs,build]
# 手动格式化代码
./build.sh format
# 编译和预览文档
./build.sh doc
# 编译全部
./build.sh
# 更新版本及编译 - x/y/z
./build.sh z
```
## 附录
<a id="sphinx-google-style"></a>
### Google风格文档编写示例
```shell
"""Example Google style docstrings(One line summary).
This module demonstrates documentation as specified by the `Google Python
Style Guide`_. Docstrings may extend over multiple lines. Sections are created
with a section header and a colon followed by a block of indented text.
Example:
Sections support any reStructuredText formatting, including literal
blocks::
$ python example_google.py
>>> print([i for i in example_generator(4)])
[0, 1, 2, 3]
Attributes:
likes_spam: A boolean indicating if we like SPAM or not.
eggs: An integer count of the eggs we have laid.
Args:
param1 (int): The first parameter.
param2 (str): The second parameter.
keys (str): A sequence of strings representing the key of each table \
row to fetch. String keys will be UTF-8 encoded.
Returns:
bool: The return value. True for success, False otherwise.
Raises:
IOError: An error occurred accessing the smalltable.
Todo:
* For module TODOs, need ``sphinx.ext.todo`` extension
* This is colorful block
Note:
This is colorful block
Warning:
This is colorful block
See Also:
This is colorful block. `PEP 484`_ type annotations are supported.
.. _Google Python Style Guide:
http://google.github.io/styleguide/pyguide.html
.. _PEP 484:
https://www.python.org/dev/peps/pep-0484/
"""
```
### Pypi官方打包说明
```shell
1. 注册账户, 配置token # https://pypi.org/
# cat ~/.pypirc
[pypi]
username = __token__
password = pypi-xxxxxxxxxxxxxxxxxxxxxxxxxx
2. 安装依赖
python3 -m pip install --upgrade pip setuptools wheel
pip3 install build virtualenv twine
3. 执行打包
python3 -m build
4. 执行上传
python3 -m twine upload --repository pypi dist/*
```
### 参考链接
- [[官方] Python项目打包](https://packaging.python.org/en/latest/tutorials/packaging-projects/)
- [[官方] Read the Docs简明文档](https://docs.readthedocs.io/en/stable/)
- [[官方] Sphinx文档](https://www.sphinx-doc.org/en/master/index.html)
- [[官方] Sphinx Read the Docs主题](https://sphinx-rtd-theme.readthedocs.io/en/stable/index.html)
- [[官方] Sphinx Google编码风格支持](https://sphinxcontrib-napoleon.readthedocs.io/en/latest/)
- [[官方] Google开源项目风格指南-中文版][google-style]
- [[官方] Python PEP-8](https://peps.python.org/pep-0008)
- [[官方] Python Cookbook](https://python3-cookbook.readthedocs.io/zh_CN/latest/copyright.html)
[google-style]: https://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/
[github-stars-badge]: https://img.shields.io/github/stars/gnzhoutian/mini_toolbox.svg
[github-stars-link]: https://github.com/gnzhoutian/mini_toolbox/stargazers
[github-forks-badge]: https://img.shields.io/github/forks/gnzhoutian/mini_toolbox.svg
[github-forks-link]: https://github.com/gnzhoutian/mini_toolbox/network
[github-issues-badge]: https://img.shields.io/github/issues/gnzhoutian/mini_toolbox.svg
[github-issues-link]: https://github.com/gnzhoutian/mini_toolbox/issues
[github-license-badge]: https://img.shields.io/badge/license-MIT-blue.svg
[github-license-link]: https://raw.githubusercontent.com/gnzhoutian/mini_toolbox/main/LICENSE
[python-badge]: https://img.shields.io/badge/python-3.6%2B-orange
[python-link]: https://pypi.org/project/mini-toolbox
[rtd-badge]: https://readthedocs.org/projects/mini-toolbox/badge/?version=latest
[rtd-link]: https://mini-toolbox.readthedocs.io?badge=latest
[pypi-badge]: https://img.shields.io/pypi/v/mini-toolbox.svg
[pypi-link]: https://pypi.org/project/mini-toolbox
[install-badge]: https://img.shields.io/pypi/dw/mini-toolbox?label=pypi%20installs
[install-link]: https://pypistats.org/packages/mini-toolbox
Raw data
{
"_id": null,
"home_page": null,
"name": "mini-toolbox",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "mini-toolbox, mini-tools, toolbox, tools",
"author": null,
"author_email": "gnzhoutian <gnzhoutian@qq.com>",
"download_url": "https://files.pythonhosted.org/packages/8d/e2/280fe8617aa07f73d4be1b01cda01f0546bf181349a759cf74c5fb9b58a2/mini_toolbox-1.1.0.tar.gz",
"platform": null,
"description": "# \u8bf4\u660e\u6587\u6863\n \n [![GitHub stars][github-stars-badge]][github-stars-link]\n [![GitHub forks][github-forks-badge]][github-forks-link]\n [![GitHub issues][github-issues-badge]][github-issues-link]\n [![GitHub license][github-license-badge]][github-license-link]\n [![Documentation Status][rtd-badge]][rtd-link]\n [![Python version][python-badge]][pypi-link]\n [![PyPI][pypi-badge]][pypi-link]\n [![PyPI - Downloads][install-badge]][install-link]\n\n## \u7b80\u8ff0\n\nPython\u8ff7\u4f60\u5de5\u5177\u7bb1\uff0c\u5305\u542b\u7b80\u5316\u7684\u5e38\u7528\u5de5\u5177\uff0c\u65e8\u5728\u5e2e\u52a9\u811a\u672c\u5feb\u901f\u5f00\u53d1\u3002\n\n\u5b83\u5177\u6709\u8c03\u7528\u65b9\u5f0f\u7edf\u4e00\u3001\u53c2\u6570\u7b80\u5355\u3001\u5b9e\u73b0\u76f8\u5bf9\u7b80\u660e\u3001\u6587\u6863\u76f8\u5bf9\u6e05\u6670\u7684\u7279\u70b9\u3002\n\n\u529f\u80fd\u63cf\u8ff0\u8be6\u89c1[\u63a5\u53e3\u6587\u6863][rtd-link]\uff0c\u5e38\u7528\u529f\u80fd\u5982\uff1a\u6267\u884c\u7cfb\u7edf\u547d\u4ee4\u3001\u521b\u5efa/\u5220\u9664\u6587\u4ef6\u5939\u3001\u538b\u7f29\u89e3\u538b\u3001\u65e5\u5fd7\u5de5\u5177\u3001\u54c8\u5e0c\u8ba1\u7b97\u3001\u5b57\u7b26\u52a0\u5bc6\u3001\u90ae\u4ef6\u53d1\u9001\u3001\u9489\u9489\u901a\u77e5\u3001ssh\u8fde\u63a5\u3001xml\u89e3\u6790\u7b49\u3002\n\n## \u5b89\u88c5\u8bf4\u660e\n\n```shell\n# python\u7248\u672c\u8981\u6c42\n \u4f9d\u8d56python3.6+\u7248\u672c, \u9ed8\u8ba4centos7\u73af\u5883yum\u5b89\u88c5\u7684python3\u53ef\u4ee5\u4f7f\u7528\n \n# pip\u4ed3\u5e93\u914d\u7f6e\u793a\u4f8b(\u7f51\u901f\u6162\u5efa\u8bae\u66f4\u6362\u4e3a\u955c\u50cf\u4ed3\u5e93)\n # unix: ~/.pip/pip.conf\n # win: %APPDATA%\\pip\\pip.ini\n \n [global]\n index-url = http://pypi.douban.com/simple\n trusted-host = pypi.douban.com\n\n# \u5b89\u88c5\u65b9\u5f0f\n # \u5b8c\u5168\u5b89\u88c5, \u5efa\u8bae, \u53ef\u4ee5\u4f7f\u7528\u5168\u90e8\u529f\u80fd\n pip3 install mini-toolbox[full]\n \n # \u6700\u5c0f\u5316\u5b89\u88c5, \u4ec5\u4f7f\u7528\u539f\u751fpython3, \u53ef\u7528\u6a21\u5757\u8be6\u89c1\u6e90\u7801, \u5e38\u7528\u6a21\u5757\u5982\u4e0b: \n # utils/path/extra/logger/hash/archive/mail/pip_list/conifg/ftp\n pip3 install mini-toolbox\n\n# \u53d1\u5e03\u5730\u5740\n Download: https://pypi.org/project/mini-toolbox\n Document: https://mini-toolbox.readthedocs.io\n```\n\n## \u8c03\u7528\u793a\u4f8b\n\n```python\n#!/usr/bin/env python3\n# -*- coding:utf-8 -*-\n\"\"\" mini_toolbox\u8c03\u7528\u793a\u4f8b, unix\u73af\u5883\u4e2d\u6267\u884c \"\"\"\n\nfrom mini_toolbox.path import mkdirs, pushd\nfrom mini_toolbox.utils import exec_cmd\nfrom mini_toolbox.logger import Logger\n\n# \u5b9e\u4f8b\u5316\u65e5\u5fd7\u5de5\u5177\nlogger = Logger(logger_id='test_lib', to_file=False).logger\n\n# \u91cd\u5efadir2\u6587\u4ef6\u5939\nmkdirs('dir1/dir2', is_file=False, remake=True)\n\n# \u8fdb\u5165dir1/dir2\u6587\u4ef6\u5939, \u6267\u884c\u7ed3\u675f\u540e\u8fd4\u56de\u539f\u8def\u5f84\nwith pushd('dir1/dir2'):\n # \u521b\u5efadir3\u76ee\u5f55, \u5b58\u5728\u5219\u5ffd\u7565\n mkdirs('dir3/file1', is_file=True)\n\n # \u6267\u884c`ls -lh`\u6307\u4ee4, \u8f93\u51fa\u7528\u65e5\u5fd7\u5de5\u5177\u6253\u5370\n rst = exec_cmd('ls -lh')\n logger.debug(rst)\n\n# \u6267\u884c`find .`\u6307\u4ee4, \u8f93\u51fa\u76f4\u63a5\u6253\u5370\nexec_cmd('find .', live=True)\n```\n\n## \u683c\u5f0f\u89c4\u8303\n\n- **\u7f16\u7801\u9075\u5faa[Google Python\u7f16\u7801\u98ce\u683c][google-style]**\n- **\u6587\u6863\u7f16\u5199\u9075\u5faa\u9644\u5f55\u4e2d\u7684[Google\u98ce\u683c\u6587\u6863\u7f16\u5199\u793a\u4f8b](#sphinx-google-style)**\n\n\n```shell\n# \u8fed\u4ee3\u8bf4\u660e\n 1. \u7248\u672c\u91c7\u7528\u4e09\u6bb5\u5f0f x.y.z\n 2. x \u8868\u793a\u4e3b\u7248\u672c - \u5f53\u4ea7\u751f\u91cd\u5927\u53d8\u66f4\u6216\u91cd\u5927\u91cc\u7a0b\u7891\u65f6, x+1, y=z=0\n 3. y \u8868\u793a\u589e\u91cf\u7248\u672c - \u5f53z\u7248\u672c\u5927\u4e8e9\u65f6, y+1, z=0\n 4. z \u8868\u793a\u8865\u4e01\u7248\u672c - \u5f53\u6d89\u53ca\u53d8\u66f4\u65f6, z+1, z<=9\n\n# \u547d\u540d\u5927\u5c0f\u5199\n 1. \u7c7b: \u5355\u8bcd\u9996\u5b57\u6bcd\u5927\u5199\n 2. \u5168\u5c40\u53d8\u91cf: \u5b57\u6bcd\u5927\u5199, \u4e0b\u5212\u7ebf\u5206\u9694\n 3. \u5185\u90e8\u51fd\u6570/\u65b9\u6cd5/\u5bf9\u8c61/\u53d8\u91cf/\u6a21\u5757: \u5355\u4e0b\u5212\u7ebf\u5f00\u5934, \u5c0f\u5199\u5b57\u6bcd, \u4e0b\u5212\u7ebf\u5206\u9694\n 4. \u5176\u5b83\u51fd\u6570/\u65b9\u6cd5/\u5bf9\u8c61/\u53d8\u91cf/\u6a21\u5757: \u5c0f\u5199\u5b57\u6bcd, \u4e0b\u5212\u7ebf\u5206\u9694\n \n# \u5176\u5b83\u7ea6\u5b9a\n 1. \u683c\u5f0f\u5316 - \u4f7f\u7528yapf\u63d2\u4ef6\u683c\u5f0f\u5316\u4ee3\u7801 # pip3 install yapf\n 2. \u517c\u5bb9\u6027 - \u76f8\u540cx\u7248\u672c, \u505a\u5230\u5411\u540e\u517c\u5bb9, \u5c3d\u91cf\u505a\u5230\u5411\u524d\u517c\u5bb9\n 3. \u66f4\u65b0\u65e5\u5fd7 - \u63d0\u4f9by\u7248\u672c\u7684\u8be6\u7ec6\u53d8\u66f4\u65e5\u5fd7\u548c\u65f6\u95f4, \u505a\u5230\u63cf\u8ff0\u7b80\u7ec3\u3001\u5206\u7c7b\u6b63\u786e\n 4. \u5b9e\u73b0\u8303\u56f4 - \u4e0d\u6d89\u53ca\u4e1a\u52a1\u4ee3\u7801, \u5220\u9664\u5197\u4f59\u4ee3\u7801/\u6ce8\u91ca, \u505a\u5230\u76f8\u5bf9\u72ec\u7acb\u6027\u548c\u901a\u7528\u6027\n 5. \u6807\u70b9\u7b26\u53f7 - \u4ee3\u7801\u6bb5\u4e2d\u7684\u9017\u53f7\u3001\u5192\u53f7\u3001\u5206\u53f7\u5168\u90e8\u4f7f\u7528\u82f1\u6587\u7b26\u53f7\n 5. \u7c7b\u578b\u6ce8\u91ca - \u5c3d\u91cf\u63d0\u4f9b\u4ee3\u7801\u7c7b\u578b\u6ce8\u91ca\n - int/float/str/bool/None\n - from typing import Dict, List, Tuple, Optional, Union, Any\n```\n\n## \u6253\u5305\u8bf4\u660e\n\n``` shell\n# \u5c06\u672c\u5730\u76ee\u5f55\u4f5c\u4e3a\u5e93\u5b89\u88c5\u8c03\u8bd5\npython3 -m pip install --upgrade pip setuptools wheel\npip3 install -e .[full,docs,build]\n\n# \u624b\u52a8\u683c\u5f0f\u5316\u4ee3\u7801\n./build.sh format\n\n# \u7f16\u8bd1\u548c\u9884\u89c8\u6587\u6863\n./build.sh doc\n\n# \u7f16\u8bd1\u5168\u90e8\n./build.sh\n\n# \u66f4\u65b0\u7248\u672c\u53ca\u7f16\u8bd1 - x/y/z\n./build.sh z\n```\n\n## \u9644\u5f55\n\n<a id=\"sphinx-google-style\"></a>\n\n### Google\u98ce\u683c\u6587\u6863\u7f16\u5199\u793a\u4f8b\n\n```shell\n\"\"\"Example Google style docstrings(One line summary).\n\nThis module demonstrates documentation as specified by the `Google Python\nStyle Guide`_. Docstrings may extend over multiple lines. Sections are created\nwith a section header and a colon followed by a block of indented text.\n\nExample:\n Sections support any reStructuredText formatting, including literal \n blocks::\n\n $ python example_google.py\n\n >>> print([i for i in example_generator(4)])\n [0, 1, 2, 3]\n\nAttributes:\n likes_spam: A boolean indicating if we like SPAM or not.\n eggs: An integer count of the eggs we have laid.\n\nArgs:\n param1 (int): The first parameter.\n param2 (str): The second parameter.\n keys (str): A sequence of strings representing the key of each table \\\n row to fetch. String keys will be UTF-8 encoded.\n\nReturns:\n bool: The return value. True for success, False otherwise.\n\nRaises:\n IOError: An error occurred accessing the smalltable.\n\nTodo:\n * For module TODOs, need ``sphinx.ext.todo`` extension\n * This is colorful block\n\nNote:\n This is colorful block\n\nWarning:\n This is colorful block\n\nSee Also:\n This is colorful block. `PEP 484`_ type annotations are supported.\n\n.. _Google Python Style Guide:\n http://google.github.io/styleguide/pyguide.html\n\n.. _PEP 484:\n https://www.python.org/dev/peps/pep-0484/\n\"\"\"\n```\n\n### Pypi\u5b98\u65b9\u6253\u5305\u8bf4\u660e\n\n```shell\n1. \u6ce8\u518c\u8d26\u6237, \u914d\u7f6etoken # https://pypi.org/\n # cat ~/.pypirc\n [pypi]\n username = __token__\n password = pypi-xxxxxxxxxxxxxxxxxxxxxxxxxx\n \n2. \u5b89\u88c5\u4f9d\u8d56\n python3 -m pip install --upgrade pip setuptools wheel\n pip3 install build virtualenv twine\n\n3. \u6267\u884c\u6253\u5305\n python3 -m build\n\n4. \u6267\u884c\u4e0a\u4f20\n python3 -m twine upload --repository pypi dist/*\n```\n\n\n### \u53c2\u8003\u94fe\u63a5\n\n- [[\u5b98\u65b9] Python\u9879\u76ee\u6253\u5305](https://packaging.python.org/en/latest/tutorials/packaging-projects/)\n- [[\u5b98\u65b9] Read the Docs\u7b80\u660e\u6587\u6863](https://docs.readthedocs.io/en/stable/)\n- [[\u5b98\u65b9] Sphinx\u6587\u6863](https://www.sphinx-doc.org/en/master/index.html)\n- [[\u5b98\u65b9] Sphinx Read the Docs\u4e3b\u9898](https://sphinx-rtd-theme.readthedocs.io/en/stable/index.html)\n- [[\u5b98\u65b9] Sphinx Google\u7f16\u7801\u98ce\u683c\u652f\u6301](https://sphinxcontrib-napoleon.readthedocs.io/en/latest/)\n- [[\u5b98\u65b9] Google\u5f00\u6e90\u9879\u76ee\u98ce\u683c\u6307\u5357-\u4e2d\u6587\u7248][google-style]\n- [[\u5b98\u65b9] Python PEP-8](https://peps.python.org/pep-0008)\n- [[\u5b98\u65b9] Python Cookbook](https://python3-cookbook.readthedocs.io/zh_CN/latest/copyright.html)\n\n[google-style]: https://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/\n\n[github-stars-badge]: https://img.shields.io/github/stars/gnzhoutian/mini_toolbox.svg\n[github-stars-link]: https://github.com/gnzhoutian/mini_toolbox/stargazers\n\n[github-forks-badge]: https://img.shields.io/github/forks/gnzhoutian/mini_toolbox.svg\n[github-forks-link]: https://github.com/gnzhoutian/mini_toolbox/network\n\n[github-issues-badge]: https://img.shields.io/github/issues/gnzhoutian/mini_toolbox.svg\n[github-issues-link]: https://github.com/gnzhoutian/mini_toolbox/issues\n\n[github-license-badge]: https://img.shields.io/badge/license-MIT-blue.svg\n[github-license-link]: https://raw.githubusercontent.com/gnzhoutian/mini_toolbox/main/LICENSE\n\n[python-badge]: https://img.shields.io/badge/python-3.6%2B-orange\n[python-link]: https://pypi.org/project/mini-toolbox\n\n[rtd-badge]: https://readthedocs.org/projects/mini-toolbox/badge/?version=latest\n[rtd-link]: https://mini-toolbox.readthedocs.io?badge=latest\n\n[pypi-badge]: https://img.shields.io/pypi/v/mini-toolbox.svg\n[pypi-link]: https://pypi.org/project/mini-toolbox\n\n[install-badge]: https://img.shields.io/pypi/dw/mini-toolbox?label=pypi%20installs\n[install-link]: https://pypistats.org/packages/mini-toolbox\n",
"bugtrack_url": null,
"license": null,
"summary": "Python\u8ff7\u4f60\u5de5\u5177\u7bb1\uff0c\u5305\u542b\u7b80\u5316\u7684\u5e38\u7528\u5de5\u5177\uff0c\u65e8\u5728\u5e2e\u52a9\u811a\u672c\u5feb\u901f\u5f00\u53d1\u3002",
"version": "1.1.0",
"project_urls": {
"Changelog": "https://mini-toolbox.readthedocs.io/latest/CHANGELOG.html",
"Documentation": "https://mini-toolbox.readthedocs.io",
"Homepage": "https://pypi.org/project/mini-toolbox",
"Issues": "https://github.com/gnzhoutian/mini_toolbox/issues",
"Repository": "https://github.com/gnzhoutian/mini_toolbox.git"
},
"split_keywords": [
"mini-toolbox",
" mini-tools",
" toolbox",
" tools"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b7866e4023cd1de5471586844a46c81185b9700ed7308231f666c9ef6302066e",
"md5": "40ce2d1b757f04813ca9f58c85341894",
"sha256": "8eb6068e254698649b932e90410de30734fb45649ab02284f68cf16a0b92813e"
},
"downloads": -1,
"filename": "mini_toolbox-1.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "40ce2d1b757f04813ca9f58c85341894",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 46320,
"upload_time": "2024-09-08T13:37:08",
"upload_time_iso_8601": "2024-09-08T13:37:08.078227Z",
"url": "https://files.pythonhosted.org/packages/b7/86/6e4023cd1de5471586844a46c81185b9700ed7308231f666c9ef6302066e/mini_toolbox-1.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8de2280fe8617aa07f73d4be1b01cda01f0546bf181349a759cf74c5fb9b58a2",
"md5": "97d0b7e7df89b82f812e908146185be1",
"sha256": "f41dd61965995b1af3c86d24cc0e8a661f415977f76f55ad906feaf36ced8a50"
},
"downloads": -1,
"filename": "mini_toolbox-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "97d0b7e7df89b82f812e908146185be1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 50379,
"upload_time": "2024-09-08T13:37:10",
"upload_time_iso_8601": "2024-09-08T13:37:10.105666Z",
"url": "https://files.pythonhosted.org/packages/8d/e2/280fe8617aa07f73d4be1b01cda01f0546bf181349a759cf74c5fb9b58a2/mini_toolbox-1.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-08 13:37:10",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "gnzhoutian",
"github_project": "mini_toolbox",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "mini-toolbox"
}