Closed dakochik closed 2 years ago
@dakochik PR is ok, have you checked the requested behaviour on runtime in snakemake? I'm not 100% sure that it is till true in up-to-date snakemake
As far as I remember we implement rules.
without CP in order not to confuse the user, because normally he need to access it via syntax like checkpoints.foo.get(**wildcards).output.key1
in order to get checkpoint dependent rules to work correctly. So not sure that 1) the issue was correct 2) if it works so, not clear how to help users to differ CP usage syntax like in boo
from all
. Maybe is better not to implement the above feature at all.
When I'm running an example from the issue, I'm getting an RE: expected string or bytes-like object
in the first expand
argument.
But when I'm running more simple example:
checkpoint foo:
output: "{sample}_in"
rule boo:
input: expand(rules.foo.output, sample=["boo"])
output: "boo_out"
run:
shell("touch {output}")
print(rules.foo.output)
for rule in workflow.rules:
print("RULE",rule.name)
print(rule.input)
I'm getting the following messages:
{sample}_in
RULE foo
RULE boo
boo_in
And no RE
IDK if it is really necessary feature (I think you are more experienced with snakemake to consider that), but looks like it is still a valid case.
Now resolve/completion allow using checkpoints after 'rules' keyword.
262