-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
[DOC]: workflow to check links automatically #1794
Conversation
Regarding enabling About 1500 warnings, most of which aren't really "broken links" in the sense that we meant in #1789. ~500 of them ( I think For |
Thanks for reviewing @kandersolar , I didn't expect this draft PR to be reviewed. Ofc
It is about 4 mins on a Ubuntu virtual machine provided by my university. A bottle neck are GitHub links, there are a lot of them and most are ok (except for usernames renamed like yours, and some redirects because PRs, issues or discussions were linked as something else). I can exclude all of them or just the whatsnew files.
I had proposed so, but I feel like it would be better to add an action so any contributor can help with that periodically, not only you on each release without executing locally and waiting. (maybe should I add running it on version tags?)
This action does not exclude doing so on the release procedure, but I would not limit who can help with that. Run linkcheck on remote Ubuntugit clone https://github.com/pvlib/pvlib-python sudo apt-get install python3.8 python3.8-venv cd docs/sphinx |
I don't want to leave this PR open. If you agree, I'm either going to add the instructions in the release procedure wiki page or just closing this (I still believe checking & fixing links is out of scope for the person tagging the version). The addition would be in this section, another step:
This is the output of the last command
Some text is in Spanish, but the problem is still legible.
The process can be sped up with this statement, although it requires changes in the repo.
|
Are lines in the report truncated? For example, the report says
The link in the code file is https://doi.org/10.1175/1520-0469(1972)029<0959:AOTSS>2.0.CO;2 and that link works. |
Aha, it appears that the '>' character in the URL is a problem at least for github, probably similar for the linkcheck. |
sphinx breaks that link at the close parentheses ')' #1953 |
@echedey-ls can you re-run the link check after #1960 is merged? I am not able to reproduce the report you posted as I'm not capable enough to do it. |
@cwhanse , I can checkout that branch and move the report to that PR, if its scope is broad enough. If I can help you running the linkchecker, let me know. EDIT: nevermind, found the issue: |
Is there still interest in this feature? Understand it by documenting more steps in the release procedure or including some CI, periodically or on main commits/PRs. I'd like to take some action regarding it. |
I will close this issue at the end of September if no further interest in this feature is shown; I don't want to have a dangling PR out there with changes that may not work when somebody comes back to try something like this. |
I would appreciate if this existed as a script somewhere with a guide for those that do the release procedure. We could agree that it might only be done for major releases to reduce the work load. |
Ok with that; one question:
|
I think it is ok to just add the instructions. But I would call them "find" broken links |
Wonderful, I've added a new section at https://github.com/pvlib/pvlib-python/wiki/Release-procedures#find-broken-links, I would like a review on it. I've updated the builder commands to reflect last changes in Thanks for all the input guys. Feel free to make any modifications to the step or move it anywhere else. |
[ ] Tests addeddocs/sphinx/source/reference
for API changes.[ ] Adds description and name entries in the appropriate "what's new" file indocs/sphinx/source/whatsnew
for all changes. Includes link to the GitHub Issue with:issue:`num`
or this Pull Request with:pull:`num`
. Includes contributor name and/or GitHub username (link with:ghuser:`user`
).[ ] New code is fully documented. Includes numpydoc compliant docstrings, examples, and comments where necessary.remote-data
) and Milestone are assigned to the Pull Request and linked Issue.Additions
GitHub action to run the sphinx linkchecker builder periodically
That. Right now configured to run every two weeks. Still under test and development.
(Context) Copypasting my comment from #1789:
Let me know what you think about this. I'm open to try anything, but I feel the easiest approach is to run the linkchecker on releases. Maybe some kind of grep over the output could leverage the work put into reading it.