Ily*_*rov 15 javascript python dependency-management
我正在编写软件,允许人们将数学书籍作为网站发布.它主要基于Python + Flask,但是为了处理我正在使用MathJax的方程式.MathJax可以在客户端或服务器端使用(通过MathJax节点).在后一种情况下,我必须使用npm在我的主Python脚本可访问的某个地方安装MathJax节点,然后从脚本调用它.在前一种情况下,我必须提供MathJax.js作为资产,可供客户使用(目前我使用Flask的send_from_directory功能).
我的问题是:在Python中处理这种异构依赖的最佳实践是什么?我的目标是使安装过程尽可能简单,至少在类Unix系统(Linux或MacOS的),前提是node和npm已经上市.
我可以将我需要的所有javascript源代码放入我的发行版本中,但也许有更好的方法可以做到这一点?
我的问题是:在Python中处理这种异构依赖的最佳实践是什么?
在Node依赖项的情况下,我将package.json在目录中包含一个文件,该文件指定所需的Node依赖项.对于其他语言/包管理器,我也会使用任何指定依赖项的传统方法(例如为Ruby依赖项添加Gemfile).
Python/Flask提出的另一个常见示例是使用Bower包管理器来实现静态前端依赖.在这种情况下,依赖项在bower.json文件中指定,通常被拉入Flask static目录中的bower文件夹.
我可以将我需要的所有javascript源代码放入我的发行版本中,但也许有更好的方法可以做到这一点?
一旦你获得了package.json指定的依赖项,你可以获取并安装运行所需的所有Node依赖项npm install,在我看来,这是一个比包含项目的javascript源更优雅的解决方案.
现在您已经拥有多个包管理器(例如pip,除了npmNode依赖项之外,您可能还在使用Python依赖项),您可能希望创建一个Makefile或一些部署/构建脚本来使用它们来获取/安装(例如,如果我使用Travis CI,我会更新我.travis.yml的电话npm install除了pip install -r).
| 归档时间: |
|
| 查看次数: |
1014 次 |
| 最近记录: |