-
Notifications
You must be signed in to change notification settings - Fork 701
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
source-repository versus source-repository-package #9701
source-repository versus source-repository-package #9701
Conversation
7a7376d
to
d63e3d8
Compare
d63e3d8
to
b82e775
Compare
@ulysses4ever this one is in need of a 2nd reviewer. |
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.
Thanks for the ping! Let's discuss!
b82e775
to
d7fec25
Compare
I corrected this disparity;
https://cabal.readthedocs.io/en/latest/cabal-package-description-file.html#source-repositories
|
18d83c7
to
a9bf878
Compare
Having source repos at the same level as package description and project description seems wrong to me. It'd make more sense to me to add a page to CABAL GUIDE, e.g.: "How to utilize source repositories" or some such. |
Maybe I went ahead of myself here: the current version of that page still looks more like a reference + some commentary rather than a full-fledged guide. I think it'd be better to leave it as it was before, i.e. as an entry in the package/project description pages, and if you want to avoid duplication (a noble goal), just reference from one to another. |
@ulysses4ever one is a set of Line 40 in 3a275e5
Line 58 in 3a275e5
What we have is basically the same fields taken two ways and unless they're both on the same page, the duplication will go unnoticed and drift apart. |
Hi! What's the status here? @ulysses4ever: are you satisfied with the PR? To the point of approving or of asking me for the second review? |
@Mikolaj I am on the verge. My first concern is this change:
I'm not sure it makes sense to have such a page on the top level. Then, I don't know that this page fits well into the new top-level sectioning: Guide vs Reference. Phil puts it into reference but it has a good bit of discussion. Probably not enough to be called a guide, but also it's more prose than you'd expect from a reference page imo. Finally, I don't know that it's a good idea to have one page for two things of which one belongs to .cabal files and one to project files. It feels wrong but maybe I just can't think out of the box. In light of this, I'm abstaining from approval but I don't block. I think the real reviewers for this PR are @malteneuss and @BinderDavid (in the light of #9214). Maybe if @andreabedini has a spare cycle... |
Might also help with #9816. |
@malteneuss, @BinderDavid, @andreabedini, could you have a look at this PR? |
Hi @philderbeast, sorry for the late reply as i've been busy with my full-time job and a 2 year old, and thanks for taking the time to extending the docs. Regarding the new structure i'm with @ulysses4ever on this one.
The package description reference ("cabal file") serves as a complete look-up list of all fields and values with their effects that you could add to a cabal file; here it would be wise to just add the missing values like In general reference section should just describe "what is" or "what exists" with minimal explanation, "simple and to the point" (See https://documentation.divio.com/reference.html). Looking at your suggested titles like "As a Package Author" you may have indeed some specific cabal-user-oriented use cases and therefore a guide in mind along the lines: "How to add Haskell from other sources than Hackage?" |
Thanks for the ping but when it comes to documentation I defer to @malteneuss |
a40b390
to
7717a78
Compare
This is not my experience. I tend to use hpack-dhall or hpack or Quite often I need to pick up a unmerged pull request or fork via If we want to avoid duplication, I'd prefer |
@philderbeast I see. Only after having read your new So i propose you
What do you think? |
I'll try it, thanks for the suggestion @malteneuss. |
Apparently, a PR needs two approvals by people with merge rights |
@geekosaur thanks for approving this once before. It has since had a lot of rework. |
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.
Minor nits
4a67315
to
300b006
Compare
Label merge+no rebase is necessary when the pull request is from an organisation. |
- Adds pijul as type - explicit dot is the same as root - Update doc/cabal-package-description-file.rst - Grammar, comma required for non-restrictive clause - Move warning down the section - Move repository stuff to its own page - Add author and consumer subsections - Keep consistent ordering - Put source-repository before source-repository-package - Reword intro and add hackage linking - A field of this type is always optional - Fix typo - Put the table into the field types section - Link to VCS kind, consistent casing - Introduce the VCS acronym early - Link to cabal get for this|head - Update doc/cabal-package-description-file.rst - Comma after as an example - Update doc/cabal-package-description-file.rst - There are two kinds comma - Split sentences. - Move to how to section - Add version control fields - Rewrite package consumer section - Bump source packages up a level - Rename as "how to source packages" - Rename section, "package source" - Fix whitespace - Mention manual download before cabal download - Use a description list for source-repository fields - Add a warning about the confusing field names - Clarify *source code* ``.tar.gz`` archive - Use Git uppercase - Source Marker section, marks out - Change to "inside a single VCS repository" - Taking a Dependency from a Source Code Repository - Lead with uppercase first letter for Darcs, Git - Fix whitespace - Use lowercase for titles - Change the guide title to "How to get package *source code*". - Hackage is for published, exact versus range of versions - Mention cabal get - Lead with uppercase for Cabal and Hackage - Move VCS fields up in the tree - Mention *source code* in all the section titles - Explain how linking helps contributors and maintainers - Add an example of conversion - Add a dependency vendoring section - Show cloning with cabal build --dry-run - Keep VCS fields small - Add diagrams - Warn about hash in clone folder name - Use code style for .cabal - Use lower caps in title to match other sections - Add missing _ for external link reference - Move package authoring section to last - Use subsections for vendoring - Add a section about publishing - Fix up anchors and references - Typo, "extracts it to a directory" - It is a "``cabal get`` unpacking step" - Use a comma in "Fork, don't vendor" - Add a tag to the src-repo-pkg example - The warning about commits is only for Git repositories - Move note to setting up section - Fix whitespace - Missing source-repository ead in the diff - Use with/without a "-package" suffix ... belongs - Add a reference to cabal get - How to locate and get - Add back the ref to the package consumer section - Replace arrowheads with ASCII - Replace ticked checkboxes with ASCII - Warn about project and the set of pkgs separately - Multiple dependency packages not multiple dependencies - Shorter explanation of vendoring - Lower caps for bold terms - Add references to VCS fields - A marker that points to - Use the shorter "shepherd" - Use grab (not obtain) before obtaining - Clarify terms in source code note - Hackage is only for published package dependencies - Add a link to hackage upload - Add a footnote about packages of a cabal.project - Revert section title to "Specifying the local packages" - Change shepherd to "deal with" - Put source after package, ordering how to guides - Comma after as Co-Authored-By: Artem Pelenitsyn <[email protected]> Co-Authored-By: brandon s allbery kf8nh <[email protected]>
300b006
to
d5dfd6e
Compare
@Mikolaj I don't understand what state this PR is in. The page is showing "1 approval" but two reviewers have approved it. Don't ask me why one tick is green but the other grey, next to the reviewers. Hovering over each tick, the tip says the reviewer has approved it. Time to review the review approvals, I guess? |
Well spotted. I've fixed this by bumping @malteneuss's authority from Triage to Write. |
@mergify refresh |
✅ Pull request refreshed |
@mergify rebase |
☑️ Nothing to do
|
Let me add the |
I still don't get why we have a "version control fields" page at the top level. (Available now as https://cabal.readthedocs.io/en/latest/ CABAL REFERENCE / 3) |
@ulysses4ever short summaries (required etc) in the following:
Details of these types of fields in: |
I didn't want to stand in the way as it gives more exposure to the fact that Cabal can use repositories raw without Hackage. |
It really wants to get its own section in the Field Syntax Reference, I think. |
@BinderDavid you redesigned the top-level sectioning of the Cabal Manual. Can you look into this PR and suggest a better place for the new page that currently goes under CABAL REFERENCE and talks about version control systems (or confirm that the current setup is the best possible in your opinion)? |
Sure. I am at Zurihac right now, and I can take a look tomorrow. I also have some unfinished cabal user guide PRs that I wanted to finish anyway, so that's a good occasion to pick them up again ^^ Edit: Also just so that praise is assigned correctly: @malteneuss did most of the redesign of the toplevel structure, and I gave some input and suggestions :) |
Updates the users guide adding a warning comparing
source-repository
withsource-repository-package
, see #9655. Also;type
.
is the same as rootIs this a PR that fixes CI? If so, it will need to be backported to older cabal release branches (ask maintainers for directions).