[pull] master from scrapinghub:master - #109
Merged
Merged
Conversation
* Run the test matrix nightly and turn warnings into errors CI only ran on push and pull request, so breakage that arrives without a commit -- a dependency release, a tz database update, the calendar rolling over -- stayed invisible until someone happened to push. Master saw CI on 41 distinct days in the last 13 months, twice going more than two months without a run, which is how #1286 reached a downstream packager first. A new Nightly workflow calls the existing Build matrix daily at 04:17 UTC and files one tracking issue per outage, since GitHub's own notification goes to a single person. The schedule lives in its own workflow because GitHub disables a workflow that has a schedule after 60 days without repository activity, and a disabled workflow answers none of its triggers: keeping the cron out of main.yml means an inactivity disable can never take pull request runs down with it. pytest.ini turns warnings into errors. The suite emits none today on 3.10 through 3.14, with and without the calendars and langdetect extras, against both current dependencies and the min pins, so the exemption list starts empty. The exception is the tzlocal 0.2 pin in the min environments, whose invalid string escapes become an import-time SyntaxError under an error filter whenever the installer does not byte-compile, so tox ignores that one message for those two environments. The matrix gains a plain 3.10 leg: 3.10 is a supported interpreter that was only ever tested against the oldest permitted dependency versions, since the Python bump in #1296 consumed the bare 3.10 row. CIFuzz uploads SARIF with github/codeql-action/upload-sarif@v4. v2 has been emitting a failure-level annotation on every run, and v3 emits one of its own, so v4 is what actually clears it. Fixes #1374 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * Address review findings on the nightly and warnings setup Scope the Nightly token to contents: read at the workflow level, which the called matrix inherits; the report job asks for issues: write itself (CodeQL actions/missing-workflow-permissions). Exempt three environmental warnings from the error filter: tzlocal's two UserWarnings on a host with no or stale time zone configuration, which CI never sees because it always sets TZ but which fail most of the suite for a contributor in a bare container or in nixpkgs' sandbox, and pytest's PytestCacheWarning in a read-only checkout, which turned a green run into exit 1. Drop the DeprecationWarning category from the tzlocal 0.2 escape filter, since CPython 3.12+ emits it as a SyntaxWarning, and carry it through PYTEST_ADDOPTS instead of a copied command line so min and min-all keep following [testenv] commands. Ignore pytest-codspeed's measurement-hook RuntimeWarnings in the benchmark env, so a runner glitch cannot turn CodSpeed red. Upload coverage only on push and pull_request, so a dispatched Nightly does not re-upload master's report. Gate the report job on master and on failure or cancelled, key the tracking issue on a dedicated nightly-failure label so retitling it does not defeat the dedupe, and let a transient listing failure fall through to filing rather than aborting. Lint W605 with ruff: pip's byte-compilation absorbs an invalid-escape warning before pytest can see it, so the linter is the only leg that can. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )