Skip to main content

Log plugin for snakemake using Rich

Project description

Snakemake Logger Plugin: Rich

Note: This plugin is currently in development and may not be fully stable. Use at your own discretion and report any issues to the repository's issue tracker.

Introduction

A logging plugin for Snakemake that utilizes rich for enhanced terminal styling and progress bars.

Usage

  1. Install via pip:

    pip install snakemake-logger-plugin-rich
    
  2. Run Snakemake with the --logger rich option:

    snakemake --logger rich
    

Development

This project uses pixi for environment management.

Setting up the development environment

  1. Fork the repository

  2. Clone the repository:

    git clone https://github.com/<your-username>/snakemake-logger-plugin-rich.git
    cd snakemake-logger-plugin-rich
    
  3. Install dependencies using pixi:

    pixi install
    
  4. Activate the development environment:

    pixi shell -e dev
    

Available development tasks

Run these commands with pixi run:

  • Demo: pixi run demo [snakefile] - Runs a complete demo workflow and cleans up afterward. Uses demo/Snakefile by default, or specify a custom Snakefile path
  • Run Demo: pixi run run-demo [snakefile] - Runs a demonstration Snakemake workflow using the plugin. Uses demo/Snakefile by default, or specify a custom Snakefile path
  • Dry Run: pixi run dryrun [snakefile] - Performs a dry run of the demo workflow. Uses demo/Snakefile by default, or specify a custom Snakefile path
  • Clean Demo: pixi run clean-demo - Cleans up demo output files
  • Quality Control: pixi run qc - Runs formatting, linting, and type checking
  • Format: pixi run format - Format code with ruff
  • Lint: pixi run lint - Lint code with ruff
  • Lint Fix: pixi run lint-fix - Lint and auto-fix code with ruff
  • Type Check: pixi run type-check - Type check with mypy

Testing the plugin

To test the plugin with the demo workflow:

pixi run demo

Or to run just the demo workflow without cleanup:

pixi run run-demo

To test with a custom Snakefile:

pixi run demo path/to/your/Snakefile

Project details


Download files

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

Source Distribution

snakemake_logger_plugin_rich-0.4.0.tar.gz (13.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

snakemake_logger_plugin_rich-0.4.0-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file snakemake_logger_plugin_rich-0.4.0.tar.gz.

File metadata

File hashes

Hashes for snakemake_logger_plugin_rich-0.4.0.tar.gz
Algorithm Hash digest
SHA256 9e62c3ba0ca48408c56c5408a518a796672be8e5360f01fa4f50514b6181cef3
MD5 45a5472585a74f7430ed73ed24407876
BLAKE2b-256 88d29a6bface98c6780205aac5e6991a724c21ea0e55d149d2afe1c22e34520d

See more details on using hashes here.

Provenance

The following attestation bundles were made for snakemake_logger_plugin_rich-0.4.0.tar.gz:

Publisher: release.yml on cademirch/snakemake-logger-plugin-rich

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file snakemake_logger_plugin_rich-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for snakemake_logger_plugin_rich-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8f724dae07976b20fe6494f3482798db4053e3fb635ccf64951996b40a9aa96a
MD5 dc7860716d17f5b565eae7d6441c2cfb
BLAKE2b-256 33014e81368d391402f99e437c1d4b6ff4619da3d60743e0677a587a0a766373

See more details on using hashes here.

Provenance

The following attestation bundles were made for snakemake_logger_plugin_rich-0.4.0-py3-none-any.whl:

Publisher: release.yml on cademirch/snakemake-logger-plugin-rich

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page