-
Notifications
You must be signed in to change notification settings - Fork 394
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
DVC File guide reorg/rewrite #2098
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
BTW I wouldn't even look at the diff in this PR, except maybe the list of files (all collapsed). Best to check the review app |
This comment has been minimized.
This comment has been minimized.
I still don't the low level titles in the User Guide
Why don't we make There can be a section in user guide - It's one of the ideas of the structure that will be user friendly, will repeat Get Started to some extent which should make it easier to navigate. I guess there could be other approaches to this. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Good idea @shcheklein, maybe "Creating Pipelines"? We'll need a similar name for the .dvc file guide, perhaps "Tracking Existing Data"? One problem though, is where to redirect https://dvc.org/doc/user-guide/dvc-files to, since that currently has an index that lists the kinds of DVC Files. I'll also have to review 32 existing links to Also, so we won't have the "DVC FIle" concept around anymore? Or should it still be the term to unify .dvc, dvc.yaml, and dvc.lock (in the Basic Concepts section — not worked on in this PR but BTW that could be the final place to redirect the current DVC File guide index to).
I'm trying to avoid having another stand-alone ref. per the conclusions from #2059 (comment). |
and create .dvc file ref. sections in it
a647305
to
d23a42e
Compare
@shcheklein depends on when this gets merged. I'd rather keep it out for now and add it last minute if needed. |
@jorgeorpinel I thought we wanted to merge and iterate fast (and thus avoiding redirects and stuff). There are not major problems in this iteration from what I see. |
OK @shcheklein, added the 2.0 warning (and finished addressing your other comments). Does that mean you approve this? 😏 |
> Their paths will be evaluated based on | ||
> [`wdir`](/doc/user-guide/dvc-files/dvc.yaml#accepted-fields), if one given. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This note should be moved on "Stage-specific values" below.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[note on wdir] should be moved on "Stage-specific values
You mean also mentioned in that part? Because it's important here too (and this part comes first). For now I made it more general so people can assume it applies to local vars too.
|
||
### Parameter dependencies | ||
|
||
[Parameters](/doc/command-reference/params) are a special type of stage |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's no non-default case? Was it documented before?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's no non-default [params] case?
Sorry, Idk what you mean @skshetry.
Params was never explained in the dvc.yaml guide before (only mentioned the params
fields).
- ${model.filename} | ||
``` | ||
|
||
⚠️ Known limitations of local `vars`: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this warning is useful as both of them are expected.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmmm. Why would users expect or assume any of this? The one about wdir
is a logical consequence of the loading order but that's a complex thing to grasp (for example it wasn't obvious to me at first and I had to ask). The one about foreach
has some internal reason (I don't even remember it now) pretty much imposible for a user to know.
Plus we have all sorts of usage warnings throughout docs. I see this in line with that.
OK guys, I'm merging this since it's approved and I've gotten no further replies. But feel free to comment more: I can address anything left in another PR. |
Summarizing goals and principles here:
Come up with a consistent structure for all DVC file refs, try to separate the guides from the refs.
Write a proper guide for (basic) writing dvc.yaml (good story). Possible structure: dvc.yaml intro guide -> stage definition (ref+guide) -> "parametrization" -> "loops". But what about output entries and dvc.lock?
Structure: From the research above, looks like a single long page that starts as mostly guide and ends as mostly ref, with as many sections as needed (long right-side ToC) is the most effective. We can always separate the ref. into a different schema ref. section later if needed (criteria: if we consider the dvc.yaml "language" central to DVC). Separately, we should try to improve the UI/design for a boost. See guide: make proper DVC File guide + separate reference? #2059 (comment).