跳转到主要内容

Apollo API库

项目描述

https://travis-ci.org/galaxy-genome-annotation/python-apollo.svg?branch=master Documentation Status

Apollo是用于与Apollo交互的Python库。Arrow是其配套的CLI工具。

记录在案 … arrow使使用Apollo变得非常简单 —— Nathan Dunn,Apollo开发者

安装

pip install apollo

示例

示例代码:创建一个新的生物体并将自己添加到权限列表中

from apollo import ApolloInstance
wa = ApolloInstance('https://fqdn/apollo', 'jane.doe@fqdn.edu', 'password')

orgs = wa.organisms.add_organism(
    "Yeast",
    "/path/to/jbrowse/data",
    genus='Saccharomyces',
    species='cerevisiae',
    public=False
)

# Give Apollo a second to process the uploaded organism.
time.sleep(1)

# Then add yourself to permission list
data = wa.users.update_organism_permissions(
    "jane.doe@fqdn.edu",
    "Yeast",
    write=True,
    export=True,
    read=True,
)

如果您已经创建了Arrow配置文件(使用命令arrow init),您也可以在不明确编写凭证的情况下获取ApolloInstance

from arrow.apollo import get_apollo_instance
wa = get_apollo_instance()

或者使用Arrow客户端

$ arrow groups create_group university
{
    "publicGroup": false,
    "class": "org.bbop.apollo.UserGroup",
    "name": "university",
    "users": null,
    "id": 558319
}
# THEN
$ arrow users get_users | \
    jq '.[] | select(.username | contains("@tamu.edu")) | .username' | \
    xargs -n1 arrow users add_to_group university
# OR
$ arrow users get_users | \
    jq '.[] | select(.username | contains("@tamu.edu")) | .username' | \
    paste -s -d',' | \
    xargs arrow group update_membership 558319 --users

历史

  • 4.2.13
    • 放宽Biopython要求

  • 4.2.12
    • 不要从API响应中过滤用户名

  • 4.2.11
    • 更新了错误的版本号

  • 4.2.10
  • 4.2.9
    • 修复了在启用suppress_output时update_organism的bug

  • 4.2.8
    • 向update_organism添加了–suppress_output

  • 4.2.7
    • 重命名选项:将 –return_all 选项重命名为 –suppress_output

  • 4.2.6
    • 为 add_organism 和 delete_organism 方法添加 –return_all 选项

  • 4.2.5
    • 防止在日志中显示登录名/密码

  • 4.2.4
    • 删除未使用的依赖

  • 4.2.3
    • 修复 load_gff3,使其更准确地加载包括 CDS 在内的转录本,并更准确地处理非编码类型。

  • 4.2.2
    • 极大地加快了 load_gff3 的速度

    • load_gff3 现在如果它是基因或 mRNA 类型,将使用 Apollo 的 add_transcript 方法

    • 添加了对所有当前 Apollo 编码和非编码类型的支持

    • 停止支持 Python 2.7

  • 4.2.1
    • 修复通过名称获取组的问题

    • 为组 API 添加测试

  • 4.2
    • 改进用户更新方法

    • 为用户 API 添加测试

  • 4.1
    • 修复从 gff3 加载属性的问题

    • 更好地处理基因组序列更新,无论是否有 no_reload_sequences 选项

  • 4.0.1
    • 修复 pypi 包中缺少的文件,没有代码更改

  • 4.0
    • 添加了对远程创建/更新/删除生物体/轨道的支持

    • 添加了对在注释轨道中添加 GFF3 的支持

    • 添加了测试

  • 3.1
    • 添加了用户激活/停用功能

    • 为用户、组和生物体添加了 get_creator

    • 为 get_users 添加了 omitEmptyOrganisms

    • 添加了对组管理员的支持

    • 添加了对批量创建/删除组的支持

    • 修复了 GFF3/Fasta 下载问题

  • 3.0.4
  • 3.0.3
    • findAllOrganisms 正确工作,客户端过滤不再需要。

  • 3.0.2
    • 修复了 io.write 中发现的错误,感谢 Morgan!

  • 3.0
    • “箭头” CLI 工具

    • 更 Pythonic 的 API 以及许多针对 Apollo 错误或异常的解决方案

    • 完整包重构

    • 几乎所有函数都被重命名

  • 2.0
    • Galaxy 函数

    • TTL 缓存以解决 Galaxy 的行为问题

    • 来自 @abretaud 的状态和 canned* 客户端

  • 1.0
    • 初始发布

开发

docs 和 arrow 目录的内容自动从 apollo 目录中的代码生成。要重新生成它,请安装最新版本的代码,然后运行

make rebuild

许可证

在 MIT 许可证下可用

支持

本材料基于美国国家科学基金会资助的工作,资助编号为(奖号 1565146)

项目详情


下载文件

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

源分布

apollo-4.2.13.tar.gz (41.6 kB 查看散列)

构建分布

apollo-4.2.13-py2.py3-none-any.whl (90.8 kB 查看散列)

上传于 Python 2 Python 3

由以下支持