Twilio SDK migration
Upgrade twilio-node across v4 and v5 with webhook validation intact and Conversations in place of Programmable Chat.
1 repository · 3 migrations a month · no card
What compat detects
- twilio
- @twilio/conversations
- @twilio/voice-sdk
- twilio-video
twilio-node's later majors changed the default export, typed the resources and raised the Node minimum, while Programmable Chat gave way to Conversations. compat updates the client, the typed calls and keeps signature validation intact.
What breaks across majors
- 01
v4 and v5: the default export is a function twilio(sid, token); client.messages.create returns typed resources; older Node versions dropped.
- 02
Webhook validation behaviour with proxies and ports changed; signature validation must stay intact.
- 03
Programmable Chat deprecated in favour of Conversations; Video SDK changes are separate packages.
Typecheck catches the typed resource changes. Webhook validation needs a live request test, listed as a manual step.
What a twilio v3 to v5 run looks like
Illustrativecompat updates the client construction, typed resource handling and Node engine field, preserves webhook validation, and opens the pull request with a manual webhook test. Illustrative; no public run recorded yet.
01
Detect
compat finds the Twilio packages your code imports and the upstream releases that affect them.
02
Migrate and verify
It edits only the affected code in a disposable sandbox, regenerates the lockfile, and runs your existing tests, type checks, lint and build where available.
03
Pull request
It opens a PR with the diff, verification results, warnings and manual steps. A person merges.
Questions
- Does compat merge the Twilio migration automatically?
- No. compat has no merge capability. It pushes a branch and opens a pull request with the diff, the recorded checks and any manual steps. A person on your team reviews and merges.
- Which checks run?
- Your repository's own: install, typecheck, lint, test and build where the scripts exist. Each is listed in the pull request as passed, failed or not run. A check that did not run is never shown as passed.
- Does compat need my production credentials?
- No. Migrations run in a disposable sandbox with your code and package manager, not your environment. Checks that need live credentials are reported as not run.
- How does compat know a release affects my repository?
- It watches the Twilio packages your code imports, reads new release notes, and judges relevance against the files that actually use the SDK. Irrelevant releases are dismissed with the reason; relevant ones become a proposal or, if you allow it, a run.