安装基于python的开发工具的便利包

toolup的Python项目详细描述


工具设置

安装基于python的开发工具的便利包

支持python>;=3.6.1

动机

python是一种强大的、可访问的读写语言。 因此,许多对跨多种语言的开发人员有用的工具都是用python编写的。 但是,开发环境的隔离是至关重要的,可以满足您的需求 使用you使用的工具和代码不使用的文件可能会适得其反。

但是,在系统python中安装东西可能是危险的 或者要求你没有的特权。

如果您使用python工具进行python开发, 工具和项目可能具有不同的版本约束。 例如,固执己见的代码格式化程序black适用于所有python代码, 但只能在版本>;=3.6.1中运行。

如果使用python工具进行其他语言的开发, 维护和移植单独的虚拟环境的开销可能不值得 只是为了这些工具。

toolup帮助您维护一套基于简单toml文件的开发工具, 它们被封装在虚拟环境中,但可以从任何地方访问。

安装

pip install toolup

用法

配置文件

有关示例,请参见toolup.toml.example。 如果你把这个文件作为.toolup.toml保存在主目录中, 如果toolup在没有参数的情况下运行,它将被自动拾取。

target应该是路径上的目录。 如果不存在,并且命令行中没有提供目标, 不会链接可执行文件。

每个部分都应该为一个工具命名。 我建议使用pypi上显示的名称: 这样,如果不提供install_args,就可以使用它来查找包。

在每个部分中,您可以包括install_args (将被传递到pip目录的字符串或字符串列表)。 这对于从github安装包或在可编辑模式下安装包等非常有用。 如果没有给出,将使用节名称。 您还可以包括entry_points; 此包安装的入口点的名称列表。 如果没有给出,将使用节名称。

命令行

usage: toolup [-h] [-c CONFIG] [-n NAME] [-i INSTALL_ARGS] [-e ENTRY_POINTS]
              [-t TARGET] [-f]

optional arguments:
  -h, --help            show this help message and exit
  -c CONFIG, --config CONFIG
                        Path to config TOML file
  -n NAME, --name NAME  Name to install
  -i INSTALL_ARGS, --install_args INSTALL_ARGS
                        Arguments to pass to pip
  -e ENTRY_POINTS, --entry_points ENTRY_POINTS
                        Entry points to copy
  -t TARGET, --target TARGET
                        Where to link executables
  -f, --force           Whether to delete existing executables

可以同时添加几个条目,如下所示:

toolup -n black -n pgcli

生成的名称、安装参数和入口点列表放在一起。 toolup将尝试从名称推断安装参数和入口点, 以及安装参数中的名称。

示例工作流

你刚开了一台新机器。 你有一个你最喜欢的开发工具列表, 在一些项目中很有用, 而实际上没有被这些项目中的任何代码使用。

你在你的.toolup.toml上复制(可能使用gnu stow之类的东西)。 为它创建一个virtualenv,pip install toolup && toolup, 你所有的工具都在你想要的地方。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Spring安全编程授权   java Android库AAR取决于另一个库   Java/Groovy双精度语句问题   爪哇。查看安卓监视器图形时,release()不会减少我的内存   java无法在子类中使用EventFiringWebDriver对象   java第一个if语句始终为true,但第二个if语句不为true   java如何从作为字符串提供的XML源代码创建可绘制(或XmlResourceParser对象)?   多线程Java并发问题锁和同步方法   java Android Studio注册链接   java ArrayList of ArrayList of String   使用Shadow重新定位的包中的java Kotlin属性不起作用   java在接口org上找不到方法。阿帕奇。伊巴蒂斯。遗嘱执行人。陈述名为prepare的语句处理程序   如何在Java中放大2倍?   java当参数作为RequestBody和RequestParam发送时,sprig控制器无法识别发送的请求