Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions devserver/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,16 @@
"commander": "^14.0.0",
"js-slang": "^1.0.85",
"re-resizable": "^6.9.11",
"react": "^18.3.1",
"react": "^19.0.0",
"react-ace": "^14.0.0",
"react-dom": "^18.3.1",
"react-dom": "^19.0.0",
"vite": "^7.1.11",
"vite-plugin-node-polyfills": "^0.25.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"@vitest/browser-playwright": "^4.0.18",
"eslint": "^9.35.0",
"playwright": "^1.55.1",
Expand Down
2 changes: 1 addition & 1 deletion lib/lintplugin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
"eslint-plugin-import": "^2.32.0",

This comment was marked as outdated.

"eslint-plugin-jsdoc": "^62.0.0",
"eslint-plugin-react": "^7.37.4",
"eslint-plugin-react-hooks": "^5.1.0",
"eslint-plugin-react-hooks": "^7.0.0",
"globals": "^17.0.0",
"typescript": "^5.8.2",
"typescript-eslint": "^8.53.1"
Expand Down
8 changes: 4 additions & 4 deletions lib/modules-lib/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/lodash": "^4.14.198",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"@vitejs/plugin-react": "^5.1.0",
"@vitest/browser-playwright": "^4.0.18",
"eslint": "^9.35.0",
Expand Down Expand Up @@ -36,8 +36,8 @@
"@blueprintjs/icons": "^6.0.0",
"js-slang": "^1.0.85",
"lodash": "^4.17.23",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
Comment on lines +39 to +40
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: The project's UI library, Blueprint.js v6, is not compatible with React 19, which will likely cause runtime errors in components like Popover and Select.
Severity: CRITICAL

Suggested Fix

Postpone the upgrade to React 19 until a version of Blueprint.js with official React 19 support is released. Alternatively, downgrade the application back to React 18 to resolve the peer dependency conflict and avoid the known compatibility issues.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.

Location: lib/modules-lib/package.json#L39-L40

Potential issue: The upgrade to React 19 introduces a compatibility issue with the
`@blueprintjs/core` library, version 6. This version explicitly lists React 18 as a peer
dependency. More critically, Blueprint.js v6 has known compatibility problems with React
19, particularly in components like `Popover` and `Select`. These issues stem from its
dependency, `react-popper`, which behaves unstably with React 19's updated ref handling.
Since the application extensively uses these components, this incompatibility is likely
to cause runtime errors or UI rendering failures, such as incorrect positioning of
dropdowns and popovers.

},
"scripts-info": {
Comment on lines +39 to 42
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: The upgrade to React 19 is incompatible with @blueprintjs/core@^6.0.0, which only supports React 18. This will break UI components like Popover and Tooltip.
Severity: CRITICAL

Suggested Fix

Downgrade React to version 18 until a version of BlueprintJS that supports React 19 is available. Alternatively, replace the usage of incompatible Blueprint components like Popover and Tooltip with custom implementations or components from a different, compatible library.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.

Location: lib/modules-lib/package.json#L39-L42

Potential issue: The pull request upgrades React to version 19, but a dependency,
`@blueprintjs/core@^6.0.0`, explicitly lists React 18 as a peer dependency. This version
of BlueprintJS is not compatible with React 19 due to breaking changes in how Refs are
handled and its reliance on the deprecated `react-popper` library. The codebase uses
Blueprint's `Popover` and `Tooltip` components, for example in
`devserver/src/components/Playground.tsx`. This incompatibility will cause runtime
errors and UI bugs, such as dropdowns and tooltips rendering incorrectly or being
positioned outside their intended components.

"docs": "Build the documentation for documentation server using Typedoc"
Expand Down
10 changes: 5 additions & 5 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,8 @@
"@sourceacademy/vitest-reporter": "workspace:^",
"@stylistic/eslint-plugin": "^5.0.0",
"@types/node": "^22.15.30",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"@vitest/coverage-v8": "^4.0.18",
"@vitest/eslint-plugin": "^1.6.6",
"@yarnpkg/types": "^4.0.1",
Expand All @@ -69,7 +69,7 @@
"eslint-plugin-jsdoc": "^62.0.0",
"eslint-plugin-mdx": "^3.6.2",
"eslint-plugin-react": "^7.37.4",
"eslint-plugin-react-hooks": "^5.1.0",
"eslint-plugin-react-hooks": "^7.0.0",
"eslint-plugin-yml": "^3.0.0",
"husky": "^9.1.7",
"jsdom": "^26.1.0",
Expand All @@ -84,8 +84,8 @@
"@blueprintjs/icons": "^6.0.0",
"js-slang": "^1.0.85",
"lodash": "^4.17.23",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^18.3.1 || ^19.0.0",
"react-dom": "^18.3.1 || ^19.0.0"
},
"devEngines": {
"packageManager": {
Expand Down
8 changes: 4 additions & 4 deletions src/archive/bundles/ar/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@
},
"dependencies": {
"os": "^0.1.2",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"saar": "^1.0.4",
"uniqid": "^5.4.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"typescript": "^5.8.2"
},
"scripts": {
Expand Down
8 changes: 4 additions & 4 deletions src/archive/tabs/AugmentedReality/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@
"@blueprintjs/icons": "^6.0.0",
"@sourceacademy/bundle-ar": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"saar": "^1.0.4"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1"
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Comment on lines +9 to 19

This comment was marked as outdated.

Comment on lines +9 to 19

This comment was marked as outdated.

Expand Down
6 changes: 3 additions & 3 deletions src/bundles/pix_n_flix/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@
"private": true,
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react": "^19.0.0",
"@vitest/browser-playwright": "^4.0.18",
"playwright": "^1.55.1",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"typescript": "^5.8.2",
"vitest": "^4.0.18",
"vitest-browser-react": "^2.0.4"
Expand Down
8 changes: 4 additions & 4 deletions src/bundles/unity_academy/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
"dependencies": {
"@blueprintjs/core": "^6.0.0",
"@blueprintjs/icons": "^6.0.0",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"typescript": "^5.8.2"
},
"type": "module",
Expand Down
8 changes: 4 additions & 4 deletions src/tabs/ArcadeTwod/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@
"@blueprintjs/icons": "^6.0.0",
"@sourceacademy/modules-lib": "workspace:^",
"phaser": "^3.54.0",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1"
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
8 changes: 4 additions & 4 deletions src/tabs/CopyGc/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
"@blueprintjs/core": "^6.0.0",
"@sourceacademy/bundle-copy_gc": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1"
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
8 changes: 4 additions & 4 deletions src/tabs/Csg/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@
"@blueprintjs/icons": "^6.0.0",
"@sourceacademy/bundle-csg": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1"
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
8 changes: 4 additions & 4 deletions src/tabs/Curve/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@
"@blueprintjs/icons": "^6.0.0",
"@sourceacademy/bundle-curve": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"@vitest/browser-playwright": "^4.0.18",
"@vitest/coverage-v8": "^4.0.18",
"playwright": "^1.55.1",
Expand Down
6 changes: 3 additions & 3 deletions src/tabs/Game/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@
"private": true,
"dependencies": {
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1"
"@types/react": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
6 changes: 3 additions & 3 deletions src/tabs/MarkSweep/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@
"dependencies": {
"@blueprintjs/core": "^6.0.0",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1"
"@types/react": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
6 changes: 3 additions & 3 deletions src/tabs/Nbody/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@
"@sourceacademy/modules-lib": "workspace:^",
"nbody": "^0.2.0",
"plotly.js-dist": "^2.17.1",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"three": "^0.181.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/plotly.js": "^2.35.4",
"@types/react": "^18.3.1",
"@types/react": "^19.0.0",
"@types/three": "^0.181.0"
},
"scripts": {
Expand Down
8 changes: 4 additions & 4 deletions src/tabs/Painter/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
"dependencies": {
"@sourceacademy/bundle-painter": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1"
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
6 changes: 3 additions & 3 deletions src/tabs/Physics2D/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@
"@box2d/debug-draw": "^0.10.0",
"@sourceacademy/bundle-physics_2d": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1"
"@types/react": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
6 changes: 3 additions & 3 deletions src/tabs/Pixnflix/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@
"@blueprintjs/icons": "^6.0.0",
"@sourceacademy/bundle-pix_n_flix": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1"
"@types/react": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
6 changes: 3 additions & 3 deletions src/tabs/Plotly/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@
"dependencies": {
"@sourceacademy/bundle-plotly": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1"
"@types/react": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
6 changes: 3 additions & 3 deletions src/tabs/Repeat/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@
"private": true,
"dependencies": {
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1"
"@types/react": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
8 changes: 4 additions & 4 deletions src/tabs/Repl/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@
"@sourceacademy/bundle-repl": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"ace-builds": "^1.25.1",
"react": "^18.3.1",
"react": "^19.0.0",
"react-ace": "^14.0.0",
"react-dom": "^18.3.1"
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1"
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
6 changes: 3 additions & 3 deletions src/tabs/RobotSimulation/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@
"@dimforge/rapier3d-compat": "^0.11.2",
"@sourceacademy/bundle-robot_simulation": "workspace:^",
"@sourceacademy/modules-lib": "workspace:^",
"react": "^18.3.1",
"react-dom": "^18.3.1"
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
"devDependencies": {
"@sourceacademy/modules-buildtools": "workspace:^",
"@types/react": "^18.3.1"
"@types/react": "^19.0.0"
},
"scripts": {
"build": "buildtools build tab .",
Expand Down
Loading
Loading