-
Notifications
You must be signed in to change notification settings - Fork 905
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Designate a better place for development requirements in Kedro projects #2519
Comments
For some more background context, this originally came up as a suggestion in #1077. As you can see there, the discussion eventually led to the deprecation of the commands like I'm not sure what the latest thinking is on (a) deprecation of these commands and (b) Amanda's opt-in utility approach, but I guess the solution here should take those into account. But yes, I fully agree with you that these don't belong in requirements.txt and shouldn't be packaged with the project, and moving them to Also relevant: #844. |
What is the other option you were going to mention here? Is it |
Oh yes, left the sentenced unfinished then wrote it down at the end of the comment:
|
Fix gh-2519. Signed-off-by: Juan Luis Cano Rodríguez <juan_luis_cano@mckinsey.com>
Fix gh-2519. Signed-off-by: Juan Luis Cano Rodríguez <juan_luis_cano@mckinsey.com>
This is in progress in gh-2569. |
Fix gh-2519. Signed-off-by: Juan Luis Cano Rodríguez <juan_luis_cano@mckinsey.com>
We went back and forth a bit with this, and in the end we closed my initial attempt #2569 and didn't make a final decision. This is the current contents of kedro/kedro/templates/project/{{ cookiecutter.repo_name }}/src/requirements.txt Lines 1 to 14 in 4563a4c
|
Coming back to this after finding that it is not possible to install Airflow with the official instructions and the dependencies of a Kedro project side by side:
However, the problem is much less severe in
The only remaining non-mandatory dependencies there are Jupyter (#2276) and kedro-telemetry (kedro-org/kedro-plugins#375). |
@astrojuanlu If it's just the jupyter and kedro-telemetry dependencies, is it really worth adding a separate |
@merelcht I think effectively However, this would mean that users would need to do Long story short: the moment we take Footnotes
|
This is blocked on kedro-org/kedro-plugins#375. |
Now that |
Description
At the moment, we are telling users in our documentation to place linters in
src/requirements.txt
:kedro/docs/source/development/linting.md
Line 25 in e7315a8
But this is weird, becuase they are actually development tools, and they shouldn't be part of
src/requirements.txt
, which will be packaged along with the project.Instead, common practice is to either have a
dev-requirements.txt
, or an "optional dependencies" table in the project metadata (see below).Context
(Comes from #2517 (comment))
Possible Implementation
We'd need
Possible Alternatives
Instead of
dev-requirements.txt
we could have adev
table in the[project.optional-requirements]
section ofpyproject.toml
(extras_require
in oldsetup.py
files). This would be blocked in #2280.The text was updated successfully, but these errors were encountered: