chore(deps): update @freecodecamp/curriculum helpers to v8.0.0 (#66240)

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
This commit is contained in:
Dario
2026-03-05 18:03:25 +01:00
committed by GitHub
parent e72a5dc1bb
commit dd571f965b
3 changed files with 17 additions and 35 deletions
+10 -24
View File
@@ -1112,8 +1112,8 @@ importers:
tools/client-plugins/browser-scripts: tools/client-plugins/browser-scripts:
dependencies: dependencies:
'@freecodecamp/curriculum-helpers': '@freecodecamp/curriculum-helpers':
specifier: ^7.2.0 specifier: ^8.0.0
version: 7.2.0(debug@4.3.4)(typescript@5.9.3) version: 8.0.0(debug@4.3.4)(typescript@5.9.3)
pyodide: pyodide:
specifier: ^0.23.3 specifier: ^0.23.3
version: 0.23.4 version: 0.23.4
@@ -3310,8 +3310,8 @@ packages:
'@fortawesome/fontawesome-svg-core': ~1 || ~6 || ~7 '@fortawesome/fontawesome-svg-core': ~1 || ~6 || ~7
react: ^16.3 || ^17.0.0 || ^18.0.0 || ^19.0.0 react: ^16.3 || ^17.0.0 || ^18.0.0 || ^19.0.0
'@freecodecamp/curriculum-helpers@7.2.0': '@freecodecamp/curriculum-helpers@8.0.0':
resolution: {integrity: sha512-C67fRaglYLDuj4YcjiprBafIanJdACWzeWk65ywD/8IGWThT85e6qKk80pCN1Z7XjSXec/L0wB7PBykqmppP+A==} resolution: {integrity: sha512-7AUPwVjm1LVUUMC8WypTbH9ufTRWuk+7+upbQnC10/zB+KmzCKtoZYm9tf8S2HJljq2kbhLrlzDAnPln8kQLSg==}
engines: {pnpm: '>= 10'} engines: {pnpm: '>= 10'}
'@freecodecamp/loop-protect@3.0.0': '@freecodecamp/loop-protect@3.0.0':
@@ -8627,15 +8627,6 @@ packages:
flatted@3.3.3: flatted@3.3.3:
resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
follow-redirects@1.15.3:
resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==}
engines: {node: '>=4.0'}
peerDependencies:
debug: '*'
peerDependenciesMeta:
debug:
optional: true
follow-redirects@1.15.9: follow-redirects@1.15.9:
resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==}
engines: {node: '>=4.0'} engines: {node: '>=4.0'}
@@ -17872,7 +17863,7 @@ snapshots:
prop-types: 15.8.1 prop-types: 15.8.1
react: 18.2.0 react: 18.2.0
'@freecodecamp/curriculum-helpers@7.2.0(debug@4.3.4)(typescript@5.9.3)': '@freecodecamp/curriculum-helpers@8.0.0(debug@4.3.4)(typescript@5.9.3)':
dependencies: dependencies:
'@sinonjs/fake-timers': 14.0.0 '@sinonjs/fake-timers': 14.0.0
'@types/jquery': 3.5.32 '@types/jquery': 3.5.32
@@ -21170,7 +21161,7 @@ snapshots:
sirv: 3.0.2 sirv: 3.0.2
tinyglobby: 0.2.15 tinyglobby: 0.2.15
tinyrainbow: 3.0.3 tinyrainbow: 3.0.3
vitest: 4.0.15(@opentelemetry/api@1.9.0)(@types/node@24.10.14)(@vitest/ui@4.0.15)(jiti@2.6.1)(jsdom@26.1.0)(msw@2.12.10(@types/node@24.10.14)(typescript@5.9.3))(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.1) vitest: 4.0.15(@opentelemetry/api@1.9.0)(@types/node@24.10.14)(@vitest/ui@4.0.15)(jiti@2.6.1)(jsdom@26.1.0)(msw@2.12.10(@types/node@24.10.14)(typescript@5.9.3))(terser@5.46.0)(tsx@4.19.1)(yaml@2.8.1)
'@vitest/utils@3.2.4': '@vitest/utils@3.2.4':
dependencies: dependencies:
@@ -24469,10 +24460,6 @@ snapshots:
flatted@3.3.3: {} flatted@3.3.3: {}
follow-redirects@1.15.3(debug@4.3.4):
optionalDependencies:
debug: 4.3.4(supports-color@8.1.1)
follow-redirects@1.15.9(debug@4.3.4): follow-redirects@1.15.9(debug@4.3.4):
optionalDependencies: optionalDependencies:
debug: 4.3.4(supports-color@8.1.1) debug: 4.3.4(supports-color@8.1.1)
@@ -25529,7 +25516,7 @@ snapshots:
http-proxy@1.18.1(debug@4.3.4): http-proxy@1.18.1(debug@4.3.4):
dependencies: dependencies:
eventemitter3: 4.0.7 eventemitter3: 4.0.7
follow-redirects: 1.15.3(debug@4.3.4) follow-redirects: 1.15.9(debug@4.3.4)
requires-port: 1.0.0 requires-port: 1.0.0
transitivePeerDependencies: transitivePeerDependencies:
- debug - debug
@@ -28192,7 +28179,7 @@ snapshots:
debug: 4.4.3 debug: 4.4.3
devtools-protocol: 0.0.1452169 devtools-protocol: 0.0.1452169
typed-query-selector: 2.12.0 typed-query-selector: 2.12.0
ws: 8.18.2 ws: 8.19.0
transitivePeerDependencies: transitivePeerDependencies:
- bare-buffer - bare-buffer
- bufferutil - bufferutil
@@ -28233,7 +28220,7 @@ snapshots:
dependencies: dependencies:
base-64: 1.0.0 base-64: 1.0.0
node-fetch: 2.7.0 node-fetch: 2.7.0
ws: 8.18.2 ws: 8.19.0
transitivePeerDependencies: transitivePeerDependencies:
- bufferutil - bufferutil
- encoding - encoding
@@ -31372,8 +31359,7 @@ snapshots:
ws@8.18.3: {} ws@8.18.3: {}
ws@8.19.0: ws@8.19.0: {}
optional: true
x-is-string@0.1.0: {} x-is-string@0.1.0: {}
@@ -1,6 +1,6 @@
{ {
"name": "@freecodecamp/browser-scripts", "name": "@freecodecamp/browser-scripts",
"version": "1.0.0", "version": "1.0.1",
"description": "The freeCodeCamp.org open-source codebase and curriculum", "description": "The freeCodeCamp.org open-source codebase and curriculum",
"license": "BSD-3-Clause", "license": "BSD-3-Clause",
"private": true, "private": true,
@@ -52,7 +52,7 @@
"webpack-cli": "4.10.0" "webpack-cli": "4.10.0"
}, },
"dependencies": { "dependencies": {
"@freecodecamp/curriculum-helpers": "^7.2.0", "@freecodecamp/curriculum-helpers": "^8.0.0",
"pyodide": "^0.23.3", "pyodide": "^0.23.3",
"sass.js": "0.11.1" "sass.js": "0.11.1"
} }
@@ -8,7 +8,7 @@
import { loadPyodide, type PyodideInterface } from 'pyodide/pyodide.js'; import { loadPyodide, type PyodideInterface } from 'pyodide/pyodide.js';
import pkg from 'pyodide/package.json'; import pkg from 'pyodide/package.json';
import type { PyProxy, PythonError } from 'pyodide/ffi'; import type { PyProxy, PythonError } from 'pyodide/ffi';
import * as helpers from '@freecodecamp/curriculum-helpers'; import { formatException } from '@freecodecamp/curriculum-helpers';
const ctx: Worker & typeof globalThis = self as unknown as Worker & const ctx: Worker & typeof globalThis = self as unknown as Worker &
typeof globalThis; typeof globalThis;
@@ -59,13 +59,9 @@ async function setupPyodide() {
Object.freeze(self); Object.freeze(self);
// eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
pyodide.FS.writeFile( pyodide.FS.writeFile('/home/pyodide/format_exception.py', formatException, {
'/home/pyodide/ast_helpers.py', encoding: 'utf8'
helpers.python.astHelpers, });
{
encoding: 'utf8'
}
);
ignoreRunMessages = true; ignoreRunMessages = true;
postMessage({ type: 'stopped' }); postMessage({ type: 'stopped' });
@@ -170,7 +166,7 @@ function initRunPython() {
`); `);
runPython(` runPython(`
def print_exception(): def print_exception():
from ast_helpers import format_exception from format_exception import format_exception
formatted = format_exception(exception=sys.last_value, traceback=sys.last_traceback, filename="<exec>", new_filename="main.py") formatted = format_exception(exception=sys.last_value, traceback=sys.last_traceback, filename="<exec>", new_filename="main.py")
print(formatted) print(formatted)
`); `);