跳转到主要内容

Python项目开发者壳...

项目描述

Python项目的"dev-shell" ;)

Test codecov

ddev-shell @ PyPi Python Versions License GPL V3+

这个小项目旨在改善协作者的启动。

想法是尽可能简化项目设置。只需克隆源代码并启动脚本即可;)

为什么不是直接一个Makefile呢?因为Windows和MacOS上无法直接使用,dev-shell可以;)

运行测试?只需启动脚本并调用"运行测试命令"。

"dev-shell"是创建CLI和shell的基础。它还展示了如何尽可能简单地制作项目引导,例如。

~$ git clone https://github.com/jedie/dev-shell.git
~$ cd dev-shell
~/dev-shell$ ./devshell.py pytest

工作原理

Python脚本的首次启动 ./devshell.py 将进行引导

  • 生成Python虚拟环境(简称:venv
  • 安装poetry
  • 安装项目依赖项和项目本身

首次引导启动的输出如下

~/dev-shell$ ./devshell.py
Create venv here: ~/dev-shell/.venv
Collecting pip
...
Successfully installed pip-21.0.1
Collecting poetry
...
Installing dependencies from lock file

Package operations: 31 installs, 1 update, 0 removals

...

Installing the current project: dev-shell (0.0.1alpha0)


+ .venv/bin/python .venv/bin/devshell


Developer shell - dev_shell - v0.2.0


Documented commands (use 'help -v' for verbose/'help <topic>' for details):

dev-shell commands
==================
fix_code_style  linting  list_venv_packages  publish  pytest  update

...

(dev_shell) quit
~/dev-shell$

首次引导启动需要几秒钟。每次后续启动都会检测现有的虚拟环境,并且非常快

~/dev-shell$ ./devshell.py

Developer shell - dev_shell - v0.2.0

(dev_shell) help

信息:如果更改了poetry.lock文件,将通过poetry install调用自动更新.venv

带有--update的调用将强制调用一些创建/更新步骤,例如。

~/dev-shell$ ./devshell.py --update

您也可以直接删除/.venv/并再次启动devshell.py;)

(使用--update与"update"命令的调用不要混淆。)

兼容性

dev-shell版本 操作系统 Python版本
>=v0.7.0 Linux + MacOS + Windows 3.11, 3.10, 3.9
>=v0.5.0 Linux + MacOS + Windows 3.10, 3.9, 3.8, 3.7
>=v0.0.1 Linux + MacOS + Windows 3.9, 3.8, 3.7

请参阅github测试配置:.github/workflows/test.yml

历史

  • 开发
    • 待定
  • 0.8.0 - 2024-04-09
    • 移除"gnureadline"作为依赖项
    • 更新引导脚本
    • 更新需求
  • 0.7.0 - 2023-04-25
    • 更新测试矩阵
    • 更新需求
  • 0.6.1 - 2022-09-02
    • 将默认子进程超时设置为5分钟。
    • 跳过有问题的Poetry v1.2.0。
    • 更新依赖项
  • 0.6.0 - 2022-07-19
    • 将"pyupgrade"添加为shell命令
  • 0.5.0 - 2022-05-29
    • 将"tox"和"poetry"命令添加到在创建的.venv中调用的命令
    • 更新依赖项
  • v0.4.0 - 2022-02-28
    • 更新到新的cmd2、colorama和pytest版本
  • v0.3.0 - 2022-01-30
    • 从代码检查/修复代码风格中删除"flynt"
  • v0.2.4 - 2022-01-30
    • 更新依赖项
    • 使用darker作为代码格式化工具,并使用pytest-darker进行代码检查
  • v0.2.3 - 2021-11-15
  • v0.2.2 - 2021-04-13
    • 包含引导文件,使其也能在外部项目中使用。
  • v0.2.1 - 2021-04-12
    • 处理"poetry-publish"未安装的情况,因此使用"dev-shell"的项目不必安装它。
  • v0.2.0 - 2021-04-11
    • 重命名:"dev-shell.py => devshell.py",因为自动完成更好
    • 添加DevShellConfig.base_path并将其用于自己的命令,如pytestlinting等。(因此它们也可以在外部项目中使用。)
    • ./devshell.py调用中更好地识别"--update"和"--help"参数。
    • 在创建.venv时也更新setuptools
    • 修复Windows下的错误/测试
  • v0.1.0 - 2021-03-22
    • 修复CI使用:如果测试失败,则退出并返回正确的返回码
    • 通过新的run_cmd2_app()实现更好的"作为CLI运行"实现
    • 修复仅在Windows上出现的错误。
    • 简化devshell.py引导脚本,并修复如果ensurepip缺失则抛出错误的问题
  • v0.0.2 - 2021-03-19
    • 重构彩色快捷方式
    • 以分离的颜色显示子进程调用
  • v0.0.1 - 2021-03-19
    • 第一个"可使用"版本

项目链接

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

dev_shell-0.8.0.tar.gz (29.3 kB 查看散列)

上传时间:

构建分布

dev_shell-0.8.0-py3-none-any.whl (33.0 kB 查看散列)

上传时间: Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面