1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
|
NEWS -- history of user-visible changes -*- mode: org; -*-
* master (unreleased)
- The 'localrule' keyword (new in Snakemake v7.25.0) is now
recognized.
* v2.0.0
- Support for Emacs versions older than 26.1 has been dropped.
- The Magit Popup command ~snakemake-popup~ has been rewritten as a
transient, ~snakemake~. snakemake.el now depends on Transient
rather than Magit Popup.
- The ~--jobs~ argument in the ~snakemake~ transient has been replaced
by ~--cores~ to follow upstream changes. ~--cores~ is bound to
~-c~, and ~--use-conda~ has been moved from ~-c~ to ~-C~.
- Snakemake's new module syntax (added in v6.0) is now supported.
- Additional Snakemake keywords are now recognized: 'containerized'
(new in Snakemake v6.0.0), 'default_target' (new in Snakemake
v6.15.0), 'handover' (new in Snakemake v6.2.0), 'name' (new in
Snakemake v5.31.0), and 'notebook' (new in Snakemake v5.10.0).
- The ~snakemake-compile~ command, marked obsolete in v1.2.0 in favor
of ~snakemake-build~, has been removed.
* v1.8.0
- Additional Snakemake keywords are now recognized: 'envmodules' (new
in Snakemake v5.9.0), 'envvars' (new in v5.11.0), 'container' (new
in v5.11.0), and 'cache' (new in v5.12.0).
* v1.7.0
- The 'multiext' built-in (new in Snakemake v5.8.2) is now recognized.
- The font-lock handling has been updated to be compatible with
python.el changes in Emacs 27.
* v1.6.0
- Checkpoints (new in Snakemake v5.4) are now recognized.
* v1.5.0
- ~snakemake-popup~ now includes ~--use-conda~.
- Additional Snakemake keywords are now recognized: 'group' keyword
(new in Snakemake v5.0), report (both the keyword and function; new
in Snakemake v5.1), and 'localrules'.
* v1.4.0
- The 'cwl' keyword (new in Snakemake v4.8.0), 'pipe' (new in
Snakemake v5.2.0), 'directory' (new in Snakemake v5.2.0), and
'ancient' built-in are now recognized.
- The minimum Emacs version is now specified as 24.5. Although the
previous specification was a looser "24", Snakemake's indentation
function is incompatible with Emacs 24.4 and below.
* v1.3.0
- The 'singularity' keyword (new in Snakemake v4.2.0) is now
recognized.
- ".smk" has been added as a suffix for Snakemake files.
* v1.2.0
- ~snakemake-popup~ commands learned to call Snakemake through a
terminal rather than through ~compile~. This allows a persistent
environment to be maintained between Snakemake calls, which is
useful for running Snakemake in isolated environments created by
tools like Guix.
* v1.1.0
- The 'conda' keyword (new in Snakemake v3.9.0) is now recognized.
* v1.0.0
- The 'wildcard_constraints' keyword (new in Snakemake v3.8.0) is now
recognized.
* v0.5.0
- New command ~snakemake-graph-this-file~ displays the graph for the
first rule of the current file. Similar functionality is available
from ~snakemake-graph~, which supports graphing any target in the
file, but you may find the new command useful if your workflow
involves frequently using Snakemake's ~--snakefile~ option.
- New function ~snakemake-mode-setup-mmm~ configures MMM mode to
highlight string-embedded R code. (Contributed by Endre Bakken
Stovner.)
- ".rules" has been added as a suffix for Snakemake files.
- ~beginning-of-defun~ and ~end-of-defun~ implementations for rule
blocks are now defined.
- Rule blocks are now recognized by ~add-log-current-defun~.
* v0.4.0
- New library snakemake.el provides a popup interface for running
Snakemake from Emacs.
- New command ~snakemake-graph~ displays the graph of dependencies for
a rule. (Thanks to Endre Bakken Stovner for the idea and initial
implementation.)
- ".snakefile" has been added as a suffix for Snakemake files.
- Anonymous rule blocks are now supported.
- The 'wrapper' keyword is now recognized.
* v0.3.0
- The keywords 'configfile', 'onsuccess', 'onerror', 'log', and
'benchmark', 'script', 'shadow', as well as the 'touch' function,
are now recognized.
- Indentation for field values starting on the line below a field key
is now supported. New variable ~snakemake-indent-value-offset~
controls the offset for the value and replaces the variable
~snakemake-indent-run-offset~. If these values are continued on
another line, indentation cycling now includes a step that indents
according to Python mode.
- ~snakemake-compile-rule~ can now pass the '--touch' flag to
snakemake.
- The Imenu index now includes Python mode items in addition to rule
blocks.
- Errors in Snakefiles are now highlighted in complilation buffers.
* v0.2.0
- Both the executable and flags for the Snakemake ~compile-command~ are
now customizable.
- New command ~snakemake-compile-rule~ runs Snakemake with the rule at
point as the target.
- Subworkflow blocks are now supported.
- The 'ruleorder' keyword is now recognized.
|