diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index e8255bb00a7..836bbda1133 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -87,7 +87,7 @@ jobs: run: dotrun lint-python lint-jinja: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 @@ -102,7 +102,7 @@ jobs: - name: Get changed HTML files in the templates folder id: changed-files - uses: tj-actions/changed-files@v43 + uses: tj-actions/changed-files@v45 with: files: templates/**/*.html @@ -137,7 +137,7 @@ jobs: konf production deploy/site.yaml | kubeval -f - test-python: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 diff --git a/Dockerfile b/Dockerfile index bcb04cfcefb..d8e3794e099 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ # Build stage: Install python dependencies # === -FROM ubuntu:jammy AS python-dependencies +FROM ubuntu:noble AS python-dependencies RUN apt-get update && apt-get install --no-install-recommends --yes python3-pip python3-setuptools python3-wheel build-essential git ca-certificates ADD requirements.txt /tmp/requirements.txt RUN pip3 config set global.disable-pip-version-check true @@ -11,7 +11,7 @@ RUN --mount=type=cache,target=/root/.cache/pip pip3 install --user --requirement # Build stage: Install yarn dependencies # === -FROM node:20 AS yarn-dependencies +FROM node:22 AS yarn-dependencies WORKDIR /srv ADD package.json yarn.lock . RUN --mount=type=cache,target=/usr/local/share/.cache/yarn yarn install --production @@ -35,7 +35,7 @@ RUN yarn run build-css # Build the production image # === -FROM ubuntu:jammy +FROM ubuntu:noble # Install python and import python dependencies RUN apt-get update && apt-get install --no-install-recommends --yes python3-setuptools python3-lib2to3 python3-pkg-resources ca-certificates libsodium-dev gpg diff --git a/package.json b/package.json index a18c0bf0550..25bba8e0ced 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "axe-core": "4.10.0", "babel-jest": "^29.7.0", "babel-loader": "9.1.3", - "concurrently": "8.2.0", + "concurrently": "9.0.1", "csstype": "3.0.8", "enzyme": "3.11.0", "eslint": "^9.7.0", @@ -98,7 +98,7 @@ "@tanstack/react-query": "^5.51.11", "@tanstack/react-query-devtools": "^5.51.11", "autoprefixer": "10.4.19", - "date-fns": "3.6.0", + "date-fns": "4.1.0", "date-fns-tz": "3.1.3", "dotenv": "^16.3.1", "esbuild": "0.23.0", @@ -125,7 +125,7 @@ }, "resolutions": { "lodash": "4.17.21", - "minimatch": "3.1.2" + "minimatch": "10.0.1" }, "jest": { "testEnvironment": "jsdom", diff --git a/requirements.txt b/requirements.txt index e9435b103c2..89e0a257518 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,7 +6,7 @@ canonicalwebteam.templatefinder==1.0.0 canonicalwebteam.image-template==1.3.1 canonicalwebteam.discourse==5.7.2 python-dateutil==2.8.2 -pytz==2022.7.1 +pytz==2024.2 maxminddb-geolite2==2018.703 Flask-OpenID==1.3.0 feedgen==1.0.0 @@ -14,7 +14,7 @@ feedparser==6.0.10 pymacaroons==0.13.0 requests==2.28.2 marshmallow==3.19.0 -mistune==0.8.4 +mistune==3.0.2 pyyaml==6.0 ubuntu-release-info==21.1 macaroonbakery==1.3.1 @@ -29,6 +29,6 @@ django-openid-auth==0.17 time-machine==2.9.0 filelock==3.12.0 bleach==6.0.0 -numpy==1.24.4 +numpy==2.1.1 python-slugify==8.0.1 djlint==1.34.1 diff --git a/yarn.lock b/yarn.lock index 6a1928dc77d..b0355e9c603 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1112,13 +1112,6 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.21.0": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.8.tgz#5d958c3827b13cc6d05e038c07fb2e5e3420d82e" - integrity sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA== - dependencies: - regenerator-runtime "^0.14.0" - "@babel/template@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.7.tgz#02efcee317d0609d2c07117cb70ef8fb17ab7315" @@ -2733,13 +2726,12 @@ boolbase@^1.0.0: resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== dependencies: balanced-match "^1.0.0" - concat-map "0.0.1" braces@^3.0.2, braces@~3.0.2: version "3.0.2" @@ -2984,22 +2976,15 @@ common-path-prefix@^3.0.0: resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-3.0.0.tgz#7d007a7e07c58c4b4d5f433131a19141b29f11e0" integrity sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w== -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== - -concurrently@8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-8.2.0.tgz#cdc9f621a4d913366600355d68254df2c5e782f3" - integrity sha512-nnLMxO2LU492mTUj9qX/az/lESonSZu81UznYDoXtz1IQf996ixVqPAgHXwvHiHCAef/7S8HIK+fTFK7Ifk8YA== +concurrently@9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-9.0.1.tgz#01e171bf6c7af0c022eb85daef95bff04d8185aa" + integrity sha512-wYKvCd/f54sTXJMSfV6Ln/B8UrfLBKOYa+lzc6CHay3Qek+LorVSBdMVfyewFhRbH0Rbabsk4D+3PL/VjQ5gzg== dependencies: chalk "^4.1.2" - date-fns "^2.30.0" lodash "^4.17.21" rxjs "^7.8.1" shell-quote "^1.8.1" - spawn-command "0.0.2" supports-color "^8.1.1" tree-kill "^1.2.2" yargs "^17.7.2" @@ -3157,17 +3142,10 @@ date-fns-tz@3.1.3: resolved "https://registry.yarnpkg.com/date-fns-tz/-/date-fns-tz-3.1.3.tgz#643dfc7157008a3873cd717973e4074bb802f962" integrity sha512-ZfbMu+nbzW0mEzC8VZrLiSWvUIaI3aRHeq33mTe7Y38UctKukgqPR4nTDwcwS4d64Gf8GghnVsroBuMY3eiTeA== -date-fns@3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-3.6.0.tgz#f20ca4fe94f8b754951b24240676e8618c0206bf" - integrity sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww== - -date-fns@^2.30.0: - version "2.30.0" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0" - integrity sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw== - dependencies: - "@babel/runtime" "^7.21.0" +date-fns@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-4.1.0.tgz#64b3d83fff5aa80438f5b1a633c2e83b8a1c2d14" + integrity sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg== debug@4, debug@^4.3.2, debug@^4.3.4: version "4.3.5" @@ -5655,12 +5633,12 @@ min-indent@^1.0.0: resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimatch@3.1.2, minimatch@^3.0.4, minimatch@^3.1.2, minimatch@^9.0.4, minimatch@~0.2.11: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== +minimatch@10.0.1, minimatch@^3.0.4, minimatch@^3.1.2, minimatch@^9.0.4, minimatch@~0.2.11: + version "10.0.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.0.1.tgz#ce0521856b453c86e25f2c4c0d03e6ff7ddc440b" + integrity sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ== dependencies: - brace-expansion "^1.1.7" + brace-expansion "^2.0.1" minimist@^1.1.1: version "1.2.6" @@ -6413,11 +6391,6 @@ regenerator-runtime@^0.13.4: resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz" integrity sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew== -regenerator-runtime@^0.14.0: - version "0.14.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" - integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== - regenerator-transform@^0.15.2: version "0.15.2" resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4" @@ -6773,11 +6746,6 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -spawn-command@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/spawn-command/-/spawn-command-0.0.2.tgz#9544e1a43ca045f8531aac1a48cb29bdae62338e" - integrity sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ== - sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz"