Skip to content

Conversation

dzienisz
Copy link
Member

@dzienisz dzienisz commented Sep 18, 2025

Remove regenerator-runtime dependency

Summary

Removes obsolete regenerator-runtime dependency that's no longer needed with our modern Vite + ESNext build setup.

Changes

  • ❌ Remove regenerator-runtime dependency and import
  • ⬆️ Update react-intersection-observer to ^9.11.0

Why?

  • Our TypeScript targets ESNext and browserslist targets modern browsers
  • Vite handles necessary polyfills automatically
  • No generator functions used in codebase
  • Modern browsers support async/await natively

Impact

  • Smaller bundle size
  • One less dependency to maintain
  • No breaking changes

Summary by CodeRabbit

  • New Features
    • No user-facing features added.
  • Refactor
    • Removed legacy polyfill import to streamline app initialization.
  • Chores
    • Upgraded react-intersection-observer to ^9.11.0.
    • Removed regenerator-runtime dependency to reduce bundle overhead.
  • Impact
    • Slightly faster startup and smaller bundle size.
    • No changes to public APIs or user workflows.

Copy link
Contributor

coderabbitai bot commented Sep 18, 2025

Walkthrough

Updated a dependency version in package.json, removed a dependency, and deleted a corresponding polyfill import from the app entry point. No other files or logic were changed.

Changes

Cohort / File(s) Summary
Dependencies
webapp/package.json
Bumped react-intersection-observer from ^9.10.1 to ^9.11.0; removed regenerator-runtime from dependencies.
App entry polyfill removal
webapp/src/index.tsx
Removed import 'regenerator-runtime/runtime'; no other changes.

Sequence Diagram(s)

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Suggested reviewers

  • JanCizmar
  • Anty0
  • stepan662

Poem

I nibbled the runtime, hop-hop, it’s gone,
A lighter entry, dawn to dawn.
Observers bumped, the carrots align,
Dependencies trimmed—oh, how they shine!
With whiskered pride I squeak, “All set!”
Ship the build—my fastest yet. 🥕✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title succinctly and accurately describes the PR’s primary changes—removing the regenerator-runtime dependency and updating react-intersection-observer to 9.11.0—which match the raw_summary and PR objectives, is a single clear sentence, and contains no noisy or unrelated information.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/remove-regenerator-runtime-dependency

Tip

👮 Agentic pre-merge checks are now available in preview!

Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.

  • Built-in checks – Quickly apply ready-made checks to enforce title conventions, require pull request descriptions that follow templates, validate linked issues for compliance, and more.
  • Custom agentic checks – Define your own rules using CodeRabbit’s advanced agentic capabilities to enforce organization-specific policies and workflows. For example, you can instruct CodeRabbit’s agent to verify that API documentation is updated whenever API schema files are modified in a PR. Note: Upto 5 custom checks are currently allowed during the preview period. Pricing for this feature will be announced in a few weeks.

Please see the documentation for more information.

Example:

reviews:
  pre_merge_checks:
    custom_checks:
      - name: "Undocumented Breaking Changes"
        mode: "warning"
        instructions: |
          Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal).

Please share your feedback with us on this Discord post.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (1)
webapp/package.json (1)

48-48: Runtime polyfill expectations

react-intersection-observer relies on native IntersectionObserver; your browserslist excludes legacy browsers, so no polyfill should be needed. If you still SSR anywhere, ensure calls remain guarded (library typically no-ops on server).

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b70d407 and 1e88c6e.

⛔ Files ignored due to path filters (1)
  • webapp/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (2)
  • webapp/package.json (1 hunks)
  • webapp/src/index.tsx (0 hunks)
💤 Files with no reviewable changes (1)
  • webapp/src/index.tsx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (24)
  • GitHub Check: E2E testing ‍🔎 (15, 14)
  • GitHub Check: E2E testing ‍🔎 (15, 13)
  • GitHub Check: E2E testing ‍🔎 (15, 12)
  • GitHub Check: E2E testing ‍🔎 (15, 7)
  • GitHub Check: E2E testing ‍🔎 (15, 10)
  • GitHub Check: E2E testing ‍🔎 (15, 9)
  • GitHub Check: E2E testing ‍🔎 (15, 6)
  • GitHub Check: E2E testing ‍🔎 (15, 11)
  • GitHub Check: E2E testing ‍🔎 (15, 5)
  • GitHub Check: E2E testing ‍🔎 (15, 4)
  • GitHub Check: E2E testing ‍🔎 (15, 1)
  • GitHub Check: E2E testing ‍🔎 (15, 2)
  • GitHub Check: E2E testing ‍🔎 (15, 8)
  • GitHub Check: E2E testing ‍🔎 (15, 0)
  • GitHub Check: E2E testing ‍🔎 (15, 3)
  • GitHub Check: BT ‍🔎 (security:test)
  • GitHub Check: BT ‍🔎 (ktlint:test)
  • GitHub Check: BT ‍🔎 (server-app:runStandardTests)
  • GitHub Check: BT ‍🔎 (data:test)
  • GitHub Check: BT ‍🔎 (server-app:runWebsocketTests)
  • GitHub Check: BT ‍🔎 (ee-test:test)
  • GitHub Check: BT ‍🔎 (server-app:runWithoutEeTests)
  • GitHub Check: BT ‍🔎 (server-app:runContextRecreatingTests)
  • GitHub Check: Frontend static check 🪲
🔇 Additional comments (2)
webapp/package.json (2)

48-48: react-intersection-observer → ^9.11.0: approved for React 17
Changelog shows only removal of the publish-dist script in 9.11.0 — no API or breaking changes vs 9.10.x; safe to upgrade.


6-64: Regenerator-runtime removal — no direct usages found; validate test/CRACO

Inspected webapp/package.json (no regenerator-runtime), webapp/tsconfig.json (target: ESNext), webapp/jest.config.js (preset: 'ts-jest'); npm --prefix webapp ls regenerator-runtime → not installed. However package.json test script uses "craco test" and repo-wide ripgrep checks were inconclusive for CRACO/Babel configs — confirm CRACO/Babel or CI toolchain will not inject regenerator transforms by running a local install + tests (npm ci && npm test) or by verifying CI/monorepo test config.

@dzienisz dzienisz self-assigned this Sep 19, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants