Skip to content

remove setImmediate and clearImmediate from injects#7939

Merged
petebacondarwin merged 1 commit intomainfrom
yagiz/update-timers-nodejs-compat
Jan 28, 2025
Merged

remove setImmediate and clearImmediate from injects#7939
petebacondarwin merged 1 commit intomainfrom
yagiz/update-timers-nodejs-compat

Conversation

@anonrig
Copy link
Copy Markdown
Contributor

@anonrig anonrig commented Jan 28, 2025

Removes setImmediate and clearImmediate from injects since they're enabled in workerd by default.


  • Tests
  • E2E Tests CI Job required? (Use "e2e" label or ask maintainer to run separately)
    • I don't know
    • Required
    • Not required because: workerd has tests.
  • Public documentation
    • TODO (before merge)
    • Cloudflare docs PR(s):
    • Documentation not necessary because: no behavioral change. it's only internal.

@anonrig anonrig requested review from a team and vicb January 28, 2025 15:26
@anonrig anonrig requested a review from a team as a code owner January 28, 2025 15:26
@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented Jan 28, 2025

🦋 Changeset detected

Latest commit: 8eb93c2

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@cloudflare/unenv-preset Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@anonrig anonrig force-pushed the yagiz/update-timers-nodejs-compat branch from ea6b903 to 8eb93c2 Compare January 28, 2025 15:38
@anonrig anonrig requested a review from jasnell January 28, 2025 15:39
Copy link
Copy Markdown
Contributor

@vicb vicb left a comment

Choose a reason for hiding this comment

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

Thanks!

Copy link
Copy Markdown
Contributor

@petebacondarwin petebacondarwin left a comment

Choose a reason for hiding this comment

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

Ideally we should exercise these globals in fixtures/nodejs-hybrid-app/src/index.ts.

I can add a test later since this change wouldn't actually be hit by that test until we switch over to use this preset (rather than the one from unenv itself).

#7941

"@cloudflare/unenv-preset": patch
---

Remove clearImmediate and setImmediate injects
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
Remove clearImmediate and setImmediate injects
Remove clearImmediate and setImmediate injects.
These are now available in workerd (as of ???? version)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Since: v1.20240815 - cloudflare/workerd@f07cd8e

Copy link
Copy Markdown
Contributor

@vicb vicb Jan 28, 2025

Choose a reason for hiding this comment

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

v1.20240815

Oh, not so long ago.
Do we want to have an implementation for those function in our preset.
It would be tree shakeable use setTimeout(0), i.e. 1 LOC.

Edit: We actually do not need the injects - set/clearImmediate are gated by nodejs_compat_v2 which is after 2024-08-15 (2024-09-23)

@github-actions
Copy link
Copy Markdown
Contributor

A wrangler prerelease is available for testing. You can install this latest build in your project with:

npm install --save-dev https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-wrangler-7939

You can reference the automatically updated head of this PR with:

npm install --save-dev https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/prs/7939/npm-package-wrangler-7939

Or you can use npx with this latest build directly:

npx https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-wrangler-7939 dev path/to/script.js
Additional artifacts:

cloudflare-workers-bindings-extension:

wget https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-cloudflare-workers-bindings-extension-7939 -O ./cloudflare-workers-bindings-extension.0.0.0-vfddc6e554.vsix && code --install-extension ./cloudflare-workers-bindings-extension.0.0.0-vfddc6e554.vsix

create-cloudflare:

npx https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-create-cloudflare-7939 --no-auto-update

@cloudflare/kv-asset-handler:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-cloudflare-kv-asset-handler-7939

miniflare:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-miniflare-7939

@cloudflare/pages-shared:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-cloudflare-pages-shared-7939

@cloudflare/unenv-preset:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-cloudflare-unenv-preset-7939

@cloudflare/vite-plugin:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-cloudflare-vite-plugin-7939

@cloudflare/vitest-pool-workers:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-cloudflare-vitest-pool-workers-7939

@cloudflare/workers-editor-shared:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-cloudflare-workers-editor-shared-7939

@cloudflare/workers-shared:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-cloudflare-workers-shared-7939

@cloudflare/workflows-shared:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/13014041620/npm-package-cloudflare-workflows-shared-7939

Note that these links will no longer work once the GitHub Actions artifact expires.


wrangler@3.106.0 includes the following runtime dependencies:

Package Constraint Resolved
miniflare workspace:* 3.20250124.0
workerd 1.20250124.0 1.20250124.0
workerd --version 1.20250124.0 2025-01-24

Please ensure constraints are pinned, and miniflare/workerd minor versions match.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants