Repository navigation
Security refresh: update the lock files and group Dependabot updates monthly - #99
Open
maxipavlovic wants to merge 5 commits into
Open
maxipavlovic wants to merge 5 commits into
maxipavlovic wants to merge 5 commits into
Conversation
Every locked Python and npm package moves to the newest release the constraints allow. That clears 12 of the 35 open alerts on poetry.lock and 57 of the 62 on package-lock.json. No requirement of the extension and no development tool range changes, so Python 3.8 stays supported. What is left on poetry.lock is held in place: - starlette (7 alerts) by connect-eaas-core 28, which needs fastapi 0.95; - urllib3 (7) by the urllib3 < 2 requirement of the extension itself; - setuptools, pygments, requests, anyio and pytest (8) by the Python 3.8 that is still supported, because their fixed releases need Python 3.9 or 3.10; - h11 (1) by pytest-httpx 0.22, which connect-openapi-client 29.3 asks for on Python 3.8. On package-lock.json, serialize-javascript (3) stays because css-minimizer-webpack-plugin, which package.json lists under dependencies, needs the 6.x line, deepmerge (1) has no fixed release, and minimatch (1) is pinned below 11 by eslint, glob and test-exclude. jq moves from 1.4.1 to 1.12.0, which words one error message differently. The test that checked it is adjusted in the next commit.
jq 1.12 reports where a formula goes wrong as "line 1, column 393:" where 1.4 said "line 1:". The test for an undefined variable now checks the part of the message that both versions share.
The repository had alerts but no Dependabot configuration. Version updates for pip, npm and GitHub Actions now come as a single monthly pull request per ecosystem, and security updates as another, and a release has to be a week old before Dependabot proposes it, which leaves time for a bad one to be pulled from the registry. The pip and npm updates are limited to two open pull requests each.
CloudBlue's minimum Python is now 3.10, and GitHub's ubuntu-latest no longer provides Python 3.9, so the 3.8 and 3.9 jobs cannot start. The python range becomes >=3.10,<4 and no other requirement changes. The test matrix runs on 3.10 and 3.11. The lock file is generated again for the new range: no locked release changes, only the markers that named Python 3.8 and 3.9.
Every locked Python package moves to the newest release the constraints allow for Python 3.10 and newer, except setuptools, which stays at 81.0.0. From 82 on setuptools no longer contains pkg_resources, which connect-eaas-core 28 imports when the extension starts and which flake8-commas (limited to 2.0 by pyproject.toml) imports too, so the extension and lint would fail with it. The two alerts that need setuptools 83 or 84.1 stay open until that is dealt with. connect-openapi-client goes from 29.3 to 34.0, with httpx, httpcore, h11 and pytest-httpx, and jq from 1.12 to 1.13. No requirement of the extension changes. This clears 6 of the 25 alerts that were open on poetry.lock and pyproject.toml after the first refresh: anyio (2), setuptools (1), Pygments, requests and h11. The 19 that stay open are held in place: - starlette (7) by connect-eaas-core 28, which needs fastapi 0.95; - urllib3 (8) by the urllib3 < 2 that the extension and connect-eaas-core ask for; - pytest (2) by the cap below 8 in pyproject.toml, while the fix is in 9.0.3; - setuptools (2), see above.
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
What
>=3.10,<4and test matrix 3.10 and 3.11, because the 3.8 and 3.9 jobs can't start on ubuntu-latest. No other range in pyproject.toml or package.json changes.Why
Key decisions
urllib3 < 2. One of them is on pyproject.toml.dependenciesand the fix needs its 8.x and copy-webpack-plugin 14, both Node 20.9 or newer; deepmerge (1), which has no fixed release; minimatch (1), which eslint and glob pin below 11.^1.4.1. It bundles a newer jq that words one error message differently ("line 1, column 393:"). Worth a look at the formula and filter row behaviour before a release.poetry update, which ignores the lock and now picks setuptools 84, without pkg_resources. It was not built here.How it worked before / after