I just stumbled upon #130 which was kind of resolved by adding a note to the README.
Having a lock file is quite common with other dependency managers as well, but people who are not familiar with the concept will probably have difficulties understanding what this file is for. Even if the README and man page explain this, it would probably be a nice addition if the shard.lock file had a comment about this as well. It's a YAML file, so it's shouldn't be an issue putting a comment at the top.
:+1: just a small comment header with a link
I do't want to clutter lock files with the same message over and over again.
@ysbaddaden why not? What's the downside of having a short comment pointing users to the purpose of this file?
@ysbaddaden it'd be a single yaml comment, as easy as
io << "# Do not edit or delete this file, see: https://...\n"
lock.to_yaml(io)
Because:
If the information can't be found easily: fix documentation, don't clutter the lockfile with a useless message that will be repeated again an again.
That logic is probably not understood by all users. Making it easily discoverable would be helpful. Not every package manager uses lock files and not everybody is familiar with package managers.
Automatically generated files are often annotated with a notice about it's purpose and to avoide manual editing.
One line that points people at the documentation of this file is hardly clutter with a useless message. It's certainly not necessary for everyone (if you know what it is for) but it's a little improvement in terms of usability and helps getting new people on board.
And it's going to stay constant so it never shows up in diffs. You literally never have to worry about it.
Most helpful comment
That logic is probably not understood by all users. Making it easily discoverable would be helpful. Not every package manager uses lock files and not everybody is familiar with package managers.
Automatically generated files are often annotated with a notice about it's purpose and to avoide manual editing.
One line that points people at the documentation of this file is hardly clutter with a useless message. It's certainly not necessary for everyone (if you know what it is for) but it's a little improvement in terms of usability and helps getting new people on board.