遵循gocept python包约定的paste.script模板。

gocept.package的Python项目详细描述


gocept.package

这个包按照在gocept中使用的约定生成python包。

它由两部分组成:一个为 python包和用于配置sphinx的python模块 具有必要的软件包依赖项。

该包适用于python版本2.7、3.4、3.5和pypy 2。

用法

要使Paster模板可用,请在Paster可以使用的位置安装gocept.package 找到它。然后运行粘贴程序:

$ paster create --template gocept-package NAMESPACE.PROJECTNAME

这将生成一个鸡蛋分配的样板,包括 buildout配置,sphinx包文档的框架,以及 Mercurial存储库已初始化。构建配置的目标是 开发,因此它将在 bin/test 和 文档生成器位于 bin/doc

包装内容

这是为了解释生成的文件和目录的用途,以及 提供何时编辑哪些文件的建议。许多文件不需要编辑 总之,

python发行版 <表> < COL/> < COL/> <正文> setup.py:包定义和元数据。至少在任何时候更新此文件 软件包的版本号、依赖项、入口点都会更改。 src:包的源代码树。不要修改命名空间包的 \uu init\uuuu.py 文件,以免同一命名空间中的其他包无法 进口。 < > <表>

汞储存库 <表> < COL/> < COL/> <正文> .hg:当包已经初始化时,Mercurial存储库已经初始化 创建。生成的文件尚未提交。 .hg/hgrc:指向中包的未来url的存储库配置 Gocept的公共变幻莫测的主持。编辑(或使用hg persona) 您需要为此软件包设置一个与默认作者不同的作者。 .hginore:mercurial要忽略的文件和目录。这包括本地 构建将生成的配置和内容, 文档生成或包发布。它不包括文件 由python生成(例如 *.pyc )、distribute( *.egg info ),或 其他更通用的工具,比如编辑器 项目。这样的模式应该在默认的mercurial ignore列表中。 < > <表>

开发建设 <表> < COL/> < COL/> <正文> bootstrap.py:创建 bin/buildout 脚本。用相同的python运行这个 构建的解释器应该使用。无需编辑此文件。 buildout.cfg:创建测试运行程序和 包的文档生成器。包本身包含为 developlegg和buildout配置为只使用任何 其他包裹。编辑此项以配置包的官方开发 构建本地定制,但将其放在 local.cfg 中。版本固定 进入 versions/versions.cfg 只有撤消声明的包的固定,才能使用相同的 文件的构建部分。 本地.cfg:本地客户不感兴趣的构建配置 给其他开发者。这被Mercurial忽略了。如果你改变 从那时起,运行这个文件 bin/buildout -c local.cfg 。今年五月 一开始听起来很麻烦,将非本地配置保持在 buildout.cfg 并且在版本控制下对于这样的用例很重要 在持续集成服务器上测试软件包。 版本/versions.cfg: 版本固定,用于构建所使用的任何不属于 Zope工具包。所需的gocept.package版本 生成文档被固定到创建 打包文件。稍后升级gocept.package时,此版本固定 需要与包中已更改的任何文件一起更新 两个版本之间的模板。编辑此文件以锁定任何 您的套餐或建筑所需的鸡蛋。 版本/ztk-versions-x.y.z.cfg: Zope工具包的固定版本,包含在我们的版本固定中。 保留本地副本允许在没有网络的情况下构建构建 存取。不要编辑此文件。 < > <表>

其他

<表> < COL/> < COL/> <正文> .coveragerc:coverage.py的配置 < > <表>

通用包文档

在包的顶层中可以找到许多文本文件 包含标准文档的目录,因此 在那个地方以他们的名字出现 与狮身人面像无关。这些文件需要进行有效的重组 当他们被狮身人面像处理时的文本 文件,除了版权声明和许可文本 包括逐字记录。

<表> < COL/> < COL/> <正文> 自述文件。rst:包的用途、内容和用法的概述 它的pypi页面和文档索引页面的一部分。这应该 始终与包裹内容保持最新。 更改。rst:需要用包的任何更改更新的更改日志 与包的用户相关的。文件的格式是 由Zest.Releaser和当前版本(即 公共Mercurial存储库中的"提示"版本)将指向 PYPI页面和构建包文档。 黑客攻击。rst:关于包及其作者的一些指针,例如后者的 电子邮件地址和包文档的url,pypi页面, 发布跟踪程序和源代码以及当前日志。 copyright.txt:软件包的版权信息:包括 版权年和使用许可证的一些建议,这是zope 公共许可证,默认版本2.1。至少编辑此以更新 年, license.txt:所用许可证的正式文本副本。请勿编辑此内容,除非 将其换成其他许可证。 < > <表>

完整的文档,使用sphinx构建 <表> < COL/> < COL/> <正文> 文档:仅与狮身人面像生成的文档相关的所有内容。我们 对sphinx输入文件使用后缀 .txt 。而一些 存在 doc 目录内容的约定,没有什么不好的 如果您自由地修改它,将发生在包的其余部分;只需使 确保它保持有效的Sphinx输入。 doc/conf.py:狮身人面像配置。基本上所有的配置值跟随我们 因此,从 gocept.package 导入 必须保留对 gocept.package.sphinxconf的导入和调用 完整的。如果要更改某些内容,必须编辑此文件 关于元数据或文档的外观 包裹。更新sphinx生成文档的约定 将通过更新gocept.package获得。 doc/index.txt:文档的首页。它包括来自 顶层的readme.rst文件和指向 完整文档的章节。其中包括生成的api 文档,关于包和更改日志的一些元信息。 如果要添加顶级部分(如叙述),请编辑此文件 包装说明。 doc/api.txt:生成的api文档的根文档。API是 半自动记录,你必须在此文件中列出 autosummary指令,所有要记录的模块,其中 从那时起自动发生。注释掉的示例模块列表 包括在内。 doc/about.txt:包的元信息,组合顶级文件 hacking.rst copyright.txt license.txt 。你不需要 编辑此文件。 文档/更改.txt: 包含顶层文件的存根changes.rst 。无需编辑此 文件. < > <表>

建立完整的文档

生成的构建配置在 bin/doc 处安装一个脚本 调用sphinx来构建文档。要运行此脚本,当前 工作目录必须是包根目录。脚本将把 文档(HTML格式)转换成 build/doc/ (相对于包的 顶级目录)。传递给 bin/doc 的选项将传递给 基本的sphinx build命令,但注意位置参数不会 工作,

作为默认html输出的替代,bin/doc生成pdf 在 build/pdf中输出(通过sphinx'latex toolchain)。

狮身人面像配置值

只需设置 您的conf.py中的各个变量。调用 gocept.package.sphinxconf.set_defaults 需要在末尾发生:

source_suffix = '.foo'

import gocept.package.sphinxconf
gocept.package.sphinxconf.set_defaults()

相反,sphinxconf尝试使用 conf.py 中的变量来计算 价值观。如果指定了这些变量,也必须在 调用设置默认值。目前,只有一个这样的变量:

<表> < COL/> < COL/> <正文> 项目开始年份的可选值。默认为 本年度(在文件编制时),但如果是 与当前年份不同,用于构造 版权声明,如"2001-2012作者"。 < > <表>

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

推荐PyPI第三方库


热门话题
JBossJava进程内存持续增长   Java postincrement(++)在作为参数传递时表现不符合预期   TableView列的java编辑值   java根据springboot@Scheduled注释使用的条件动态修改调度程序计时   java无法将jsp表单值设置为类变量   java ParseQuery from字段未保存   java为什么日历返回月份。是否获取(Calendar.MONTH)上个月而不是当前月?   java无法获取api密钥的md5指纹   java通用DAO和嵌套属性支持   javapomi的版本已经改变了。从OJDBC6到OJDBC8的xml。使用新版本OJDBC8执行某些查询时出现锁定问题   java IntelliJ颜色方案定制   java从第三方读取Linux存储库   amazon s3在AWS s3 Java SDK中设置对象元数据   java一对多映射比