Static task/collection definition in `invoke.yaml`
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
Research direction
Start by reading the current task discovery behavior around tasks.py and the existing invoke.yaml configuration. Compare the proposed invoke.yaml and .invoke.yaml locations, /tasks or /invoke keys, module and Collection targets, and the entry_points.console_scripts model. Done means agreeing on one configuration shape and supporting task discovery for non-installed Python projects such as Jupyter notebooks.
Written by the indexing model from the issue text.
Description
Instead of searching through tasks.py which might be picked up from PATH, I think it would be better to move this/prioritize static definitions in invoke.yaml (also should search for .invoke.yaml) and equivalents at an object /tasks or /invoke. The configuration could be to point to file/module to load and search ns and @task from as currently done. Or better yet, point to the specific Collection object that defines these in a format equivalent to entry_points.console_scripts.
This will make it easy to define executables in non-installed python projects, e.g. jupyter notebooks.
- Dominant language
- Python
- Stars
- 4.8k
- Forks
- 412
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from pyinvoke/invoke
-
[Security] Shell injection via Context.cd() path argument — metacharacters not escaped (CWE-78) Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 64/100
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 75/100
-
hcocena Openpolicies-accepted pre-review precheck-passed
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Bioconductor/BiocContributions#214 · 5 comments ·
-
Difficulty 1/5 Under an hour Newbie friendliness 92/100
TencentCloud/Octop#1169 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
521xueweihan/HelloGitHub#3778 ·
-
The version checker's trailing attribute region has no control for a less-than inside a quoted value Openarea: dashboard area: tests bug perceived difficulty: 2 python
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Nitjsefnie-Harness-Commons/daedalus#1105 · 1 comment ·