-
Notifications
You must be signed in to change notification settings - Fork 25.6k
Update lint_urls.sh #153246
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
Update lint_urls.sh #153246
Conversation
Treat 403, 429 and 503 http errors as success. Ignore non-verbal hostnames.
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/153246
Note: Links to docs will display an error until the docs builds have been completed. ✅ You can merge normally! (2 Unrelated Failures)As of commit 1dca413 with merge base 916f6ba ( FLAKY - The following job failed but was likely due to flakiness present on trunk:
BROKEN TRUNK - The following job failed but was present on the merge base:👉 Rebase onto the `viable/strict` branch to avoid these failures
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
Not sure what's the logic behind this change? |
@albanD other things we likely want to catch: 410 - the resource used to exist, but is permanently removed So we're trying to be on a safer side and ignore only a few codes related to "too many requests" or Cloudflare and similar challenges. |
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.
Ok, what's your plan to monitor the flakyness of this to know when it's ok to re-enable?
The plan is to turn it back on once it proves to be green on nightly and in logs on every PR for a long period of time (except those that do actually break urls). |
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.
Sure, but is it possible to replace shell scripts with Python (grev -Ev
is GNU extension), so one would not be able to run this on their Mac or Win machine to reproduce linter failure
@malfet overall, yes, we can make it a python script in future to support Windows (for users w/o Cygwin, etc.). And it should work on macOS, feel free to try |
This does not sound like a good plan to me, because any system that relies on all the websites on the internet to be always available is flaky. There should be a periodic process that crawls the URLs and updates it's availability in DB of some sort, which can have something like |
@malfet if I got that right, you're proposing to remember for each URL whether it worked during past checks, and have some heuristics to either forgive or flag if it fails now, depending on its previous status? Let's step back for a moment. What problem we're trying to solve? How can we do that? Can URLs get temporarily broken not due to our fault? What do we do if we find a broken link with a nightly job? Can we make the nightly job always pass unless some URLs have been failing consistently for a long time? What do we do if we find a broken URL with a PR job? Anyhow, this particular PR is to improve the script and let it skip some of the expected HTTP errors. It doesn't change when the script is run. |
Or ignore them. Found by running the lint_urls.sh script locally with #153246 Pull Request resolved: #153277 Approved by: https://github.com/malfet
@pytorchbot merge -f "lint only changes" |
Merge startedYour change will be merged immediately since you used the force (-f) flag, bypassing any CI checks (ETA: 1-5 minutes). Please use Learn more about merging in the wiki. Questions? Feedback? Please reach out to the PyTorch DevX Team |
Summary: replace read_config with select For more info, please refer to the [doc](https://docs.google.com/document/d/1e0Hvht8WEHhcRvlCAodq_R9xnAtKBrAhdyvxcAqQjCw/edit?tab=t.hl8j18gza0cv) Test Plan: CI Reviewed By: malfet Differential Revision: D70267850 Pull Request resolved: #148925 Approved by: https://github.com/malfet
Treat 403, 429 and 503 http errors as success.
Ignore non-verbal hostnames.
Kill child jobs immediately.