Recent Releases of snakefmt

snakefmt - v0.11.0

0.11.0 (2025-03-21)

Features

  • adapt to Snakemake 8 and 9 (add inputflags, outputflags, storage directive support, remove version and subworkflow directive support) (4709fcf)
  • add support for inputflags and outputflags (dab68fa)

- Python
Published by snakemake-bot about 1 year ago

snakefmt - v0.10.3

0.10.3 (2025-03-14)

Documentation

- Python
Published by snakemake-bot about 1 year ago

snakefmt - snakefmt v0.10.2

Bug Fixes

- Python
Published by github-actions[bot] about 2 years ago

snakefmt - snakefmt v0.10.1

Bug Fixes

  • correctly find config file after updating min. black to v24.3 (0f20494)
  • don't add spacing between consencutive braces in string closes #222

- Python
Published by github-actions[bot] about 2 years ago

snakefmt - snakefmt v0.10.0

Features

Bug Fixes

  • preserve double curly braces in python code #215

- Python
Published by github-actions[bot] over 2 years ago

snakefmt - snakefmt v0.9.0

⚠ BREAKING CHANGES

  • update black, which bumps min. req. python

Bug Fixes

Build System

  • update black, which bumps min. req. python (022d6ab)

Continuous Integration

  • correct version for next release (f28c08d)

- Python
Published by github-actions[bot] over 2 years ago

snakefmt - snakefmt v0.8.5

Bug Fixes

  • make default exclude regex more specific #202

- Python
Published by github-actions[bot] over 2 years ago

snakefmt - snakefmt v0.8.4

Bug Fixes

- Python
Published by github-actions[bot] about 3 years ago

snakefmt - snakefmt v0.8.3

Bug Fixes

- Python
Published by github-actions[bot] about 3 years ago

snakefmt - snakefmt v0.8.2

Bug Fixes

  • add .template to default excludes (610762f)
  • dont raise NotAnIdentifier function (#179) (932df73)
  • only show diff for changed files (7b35c16)

- Python
Published by github-actions[bot] about 3 years ago

snakefmt - snakefmt v0.8.1

Bug Fixes

  • collate consecutive directives after if block #172
  • comments causing indenting issues #169 (e736235)
  • indenation of line-wrapped code #171 (f524574)

Build

  • updated black to version ^23.1.0 (5462512)

- Python
Published by github-actions[bot] over 3 years ago

snakefmt - snakefmt v0.8.0

Features

  • add support for resource_scopes directive (67fb11b)
  • add support for resource_scopes directive (514192a)

Bug Fixes

  • 159 (1423e6b)
  • indentation issues from #124 (399ec55)
  • relax importlib_metadata version pin #162
  • relax importlib_metadata version pin #162

- Python
Published by github-actions[bot] over 3 years ago

snakefmt - snakefmt v0.7.0

Features

  • add support for new exclude expressions in use rule statements (9f03019)

Bug Fixes

  • do not align the inside of multiline strings [#123]] (bb4aabf)
  • don't format r-strings #123
  • formatting of triple quoted strings #152
  • line spacing after snakemake keyword (beca978)

- Python
Published by github-actions[bot] over 3 years ago

snakefmt - snakefmt v0.6.1

Added

  • Support for retries keyword [[#145][145]] - thanks @maarten-k

Fixed

  • Keyword argument lambdas are now allowed inside rules [[#135][135]]
  • Improve reported line number in Snakefile when black fails to parse [[#127][127]]
  • Better handling of snakemake code inside nested if-else statements with comments at differing indentation levels [[#126][126]] - a HUGE thank you to @siebrenf for testing

- Python
Published by github-actions[bot] almost 4 years ago

snakefmt - 0.6.1 - 01/06/2022

0.6.1

Added

Fixed

  • Keyword argument lambdas are now allowed inside rules [#135]
  • Improve reported line number in Snakefile when black fails to parse [#127]
  • Better handling of snakemake code inside nested if-else statements with comments at differing indentation levels [#126] - a HUGE thank you to @siebrenf for testing

- Python
Published by mbhall88 almost 4 years ago

snakefmt - snakefmt v0.6.0

Features

  • add template_engine keyword from Snakemake 7.0 (1502504)

- Python
Published by github-actions[bot] about 4 years ago

snakefmt - 0.5.0

0.5.0

Added

  • Support for prefix and default_target keywords [#131]

Changed

  • Updated snakemake dependency to ^6.15.0
  • Updated black dependency to stable version (v22.1.0). See the release changes for details of style changes. This also required updating click to v8.0.0.

Fixed

  • Fix edge case for keywords inside Python if/else [#115]

Removed

  • No longer raise error if multiple keywords have the same name (e.g. rule a used twice)

- Python
Published by mbhall88 over 4 years ago

snakefmt - Version 0.4.4

Fixed

  • Collapsing of multi-line strings does not cause syntax error now [#118]
  • Version detection adapts to python version
  • Single-quoted multi-line strings are now supported [#121]

Credit

118 @fgypas @SultanOrazbayev @Benjamin-Lee

- Python
Published by bricoletc over 4 years ago

snakefmt - Version 0.4.3

Added

Changed

  • Upgraded minimum black version to 21.7b0 #116

- Python
Published by mbhall88 over 4 years ago

snakefmt - Version 0.4.2

Fixed

  • Three parsing-related bugs:
    • Complex lambda function syntax ([#108])
    • Argument unpacking ([#109])
    • Multiline parameters ([#111])

- Python
Published by bricoletc almost 5 years ago

snakefmt - Version 0.4.1

Fixed

  • Add support for multiple anonymous rules, as per snakemake grammar (#103)
  • Newline bug in use syntax (#106)

- Python
Published by bricoletc almost 5 years ago

snakefmt - Version 0.4.0

Added

  • Support for module syntax: module keyword and use rule syntax ([#99][99])
  • Support for containerized keyword

Changed

  • Updated snakemake dependency to ^6.0.0 ([#99][99])

- Python
Published by bricoletc about 5 years ago

snakefmt - Version 0.3.1

Fixed

  • Support nested python code following python/snakemake nested code ([#96])

Removed

  • Dockerfile has been removed as the biocontainers images are smaller and some recent changes to the cryptography dependency require Rust to be installed (on Alpine) which further bloats our DockerHub image.

- Python
Published by bricoletc over 5 years ago

snakefmt - Version 0.3.0

Changed

  • Update click, toml and black (major version) to latest releases (@jlewis91) [#97]

The reason for the minor version bump is that the new version of black may give slightly different formatting to previous versions.

- Python
Published by mbhall88 over 5 years ago

snakefmt - Version 0.2.6

Fixed

  • Remove use of a Python 3.8-only logging module feature (#89)
  • Update Python support to ^3.6.1 due to use of typing module NamedTuples
  • Better support for python/snakemake interspersed code (#91; #93)

- Python
Published by mbhall88 over 5 years ago

snakefmt - Version 0.2.5

Added

  • Documentation for integration with Visual Studio Code (#80; thanks @austinkeller)
  • Issue warnings for comment-related formatting (#85)
  • File-specific logging: warnings and errors during reformatting now automatically refer to the raising source file. ### Fixed Better comment-related formatting (#85; thanks @dlaehnemann):
  • PEP8 inline comment formatting: use 2 spaces
  • Comments above keywords stay untouched
  • Inline comments in inline-formatted keywords get relocated above keyword

- Python
Published by bricoletc over 5 years ago

snakefmt - Version 0.2.4

Added

  • pre-commit hook integration (@jfear) [#81]

Fixed

  • Proper indentation of nested if/else python code mixed with snakemake keywords [#78]

Changed

  • Vim plugin imports: snakefmt and black module imports raise distinct errors (@dcroote) [#79]

- Python
Published by mbhall88 over 5 years ago

snakefmt - Version 0.2.3

Added

  • Add a vim plugin to snakefmt [#62] and instructions to use it
  • New searching for project configuration. Used to look for pyproject.toml in current working directory, now recursively search for it in directories of formatted file(s).

- Python
Published by bricoletc over 5 years ago

snakefmt - Version 0.2.2

0.2.2

Fixed

  • black config was not being used if it did not contain [tool.snakefmt] [#73]
  • better handling of black.FileMode params [#73]

- Python
Published by mbhall88 over 5 years ago

snakefmt - Version 0.2.1

Added

  • new scattergather directive to the grammar [#74]

- Python
Published by mbhall88 over 5 years ago

snakefmt - Version 0.2.0

0.2.0

Added

  • repeated top-level, single-parameter keywords get placed on consecutive lines [#67]

Changed

  • allow --check and --diff to be used together [#68]

- Python
Published by mbhall88 over 5 years ago

snakefmt - Version 0.1.5

0.1.5

Fixed

  • dedented comments were being tied to previous indented context in run directive [#61]
  • single version sourcing from pyproject.toml was failing on pip installed distributions [#65]. Fixed by using importlib_metadata.

- Python
Published by mbhall88 over 5 years ago

snakefmt - Version 0.1.4

0.1.4

Fixed

  • Add parsing support for format and raw (f/r) triple-quoted strings [#59].

- Python
Published by mbhall88 over 5 years ago

snakefmt - Version 0.1.3

0.1.3

Fixed

  • Version was not correctly updated in 0.1.2.

- Python
Published by mbhall88 almost 6 years ago

snakefmt - Version 0.1.2

0.1.2

This release will potentially produce different output to previous versions. Previously, when passing code to black for formatting, we were not allowing for the indentation level of the code. For example, if a line has an indentation level of two and the code is 40 characters long, the line is 48 characters long. However, we were only passing the 40 characters of code to black meaning, in the running example, if you had set --line-length 45 the line would not have been formatted. This behaviour is now fixed.

Changed

  • When passing code to black, reduce the line length by the indentation level.

- Python
Published by mbhall88 almost 6 years ago

snakefmt - Version 0.1.1

0.1.1

Fixed

  • f-strings with triple quotes are now correctly handled [#55]

- Python
Published by mbhall88 almost 6 years ago

snakefmt - First release v0.1.0!

0.1.0

Added

  • First release - so everything you see is new!

- Python
Published by mbhall88 almost 6 years ago