Skip to main content

Small library of helper tools for setting up, graphing, and working with Snakemake rules.

Project description

https://img.shields.io/pypi/v/snaketools.svg https://img.shields.io/travis/xguse/snaketools.svg?style=flat-square Documentation Status Test Coverage Status Updates

Small library of helper tools for setting up, graphing, and working with Snakemake rules.

Features

  • SnakeRun object to initialize and manage information common to the whole run, such as:
    • a copy of the config values from the config file provided to snakemake.
    • a place to store global variables needed throughout the run.
    • more
  • SnakeRule object to manage the initialization and deployment of rule-specific information including:
    • the rule name
    • a default out directory deduced from the SnakeRun object
    • a default log file path
    • a “pretty name” for the rule to be displayed in the DAG graphs.
    • attributes that store the input, output, and params values for later use.
    • a copy of the values specific to this rule from the original configuration file.
    • more
  • recode_graph function that cleans up the default output of snakemake --dag and allows the use of pretty names stored in the SnakeRule objects.

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

Change Log

v0.0.8 / 2018-06-08

  • stopped using pinned versions.

v0.0.7 / 2017-12-18

  • change pyup check to monthly
  • update reqs from PYUP
  • snaketools: SnakeRule now registers with SnakeRun
  • snaketools: added attr SnakeRule.extra for more params
  • snaketools: added attr SnakeRun.rules
  • snaketools: use __all__ for importing from file
  • update makefile
  • update reqs

v0.0.6 / 2017-10-26

  • added rewrite_snakefile_no_rules()
  • flake8
  • requirements.txt: removed dev-reqs
  • requirements.txt: pinned flake8
  • setup.py: upgraded to read from req files
  • MANIFEST.in: include req files
  • upgraded Makefile
  • tox.ini: set line-length etc
  • setup.cfg: ignore W292
  • setup.cfg: exclude lib & bin from flake8
  • updated .gitignore
  • added coveralls badge
  • HISTORY.rst: replaced header text

v0.0.5 / 2017-10-10

  • requirements_dev.txt: update and pin reqs
  • flake8 fixes
  • tox.ini: simplified config
  • added flake8 to reqs

v0.0.4 / 2017-10-10

  • added preliminary test suite
  • Makefile: changed install to use pip install -e .
  • added example files for testing
  • requirements.txt: created with pipreqs
  • snaketools.py: reorder functions
  • snaketools.py: formatting
  • ignore .vscode/
  • pin all reqs since pyup now manages

v0.0.3 / 2017-09-15

  • Configure pyup
  • SnakeRun.d -> SnakeRune.interim_dir

v0.0.2 / 2017-09-06

  • fixed bumpversion artifact
  • errors.py: pulls metadata from top module
  • updated dev reqs for doc building
  • activated travis ci
  • Set up flake8 configuration
  • Docs build corrected

v0.0.1 / 2017-09-06

  • README.rst: added prelim description of features.
  • snaketools.py: fixed typo
  • Initial commit

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for snaketools, version 0.0.8
Filename, size File type Python version Upload date Hashes
Filename, size snaketools-0.0.8-py2.py3-none-any.whl (6.4 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size snaketools-0.0.8.tar.gz (21.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page