-
Notifications
You must be signed in to change notification settings - Fork 42
feat
: migrate to @icp-sdk/core
(breaking changes)
#3471
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…o update @dfinity dependencies more easily
3ac1f9b
to
1586d7e
Compare
feat
: migrate to @icp-sdk/core
@codex review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR migrates from the deprecated @dfinity
packages to the new @icp-sdk/core
package for IC blockchain development. This is a major dependency migration that updates imports across the entire codebase while maintaining the same functionality.
- Consolidates multiple
@dfinity
packages (@dfinity/agent
,@dfinity/candid
,@dfinity/principal
, etc.) into the single@icp-sdk/core
package - Updates all import statements throughout the codebase to use the new package structure
- Modifies the candid generation process to automatically replace
@dfinity/
imports with@icp-sdk/core/
imports
Reviewed Changes
Copilot reviewed 196 out of 226 changed files in this pull request and generated no comments.
Show a summary per file
File | Description |
---|---|
package.json | Updates main dependency from @dfinity/agent to @icp-sdk/core and removes separate dfinity packages |
src/stable/build/commands/generate/index.ts | Adds automatic replacement of @dfinity/ with @icp-sdk/core/ in generated code |
src/stable/build/commands/new.ts | Removes legacy dfinity identity dependency from new project template |
src/stable/lib/*.ts | Updates all core library imports to use @icp-sdk/core subpaths |
src/experimental/*.ts | Updates experimental feature imports to new package structure |
examples/*/package.json | Updates example project dependencies and removes legacy dfinity packages |
.github/workflows/*.yml | Updates CI workflow dependency installation commands |
Files not reviewed (27)
- examples/experimental/demo/hello_world_http_server/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/apollo_server/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/audio_and_video/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/autoreload/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/ethers/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/ethers_base/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/express/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/fetch_ic/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/file_protocol/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/fs/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/http_outcall_fetch/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/hybrid_canister/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/ic_evm_rpc/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/internet_identity/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/large_files/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/multi_deploy/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/nest/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/tfjs/package-lock.json: Language not supported
- examples/experimental/test/end_to_end/http_server/web_assembly/package-lock.json: Language not supported
- examples/package-lock.json: Language not supported
- examples/stable/test/end_to_end/candid_rpc/motoko_examples/cert-var/package-lock.json: Language not supported
- examples/stable/test/end_to_end/candid_rpc/motoko_examples/whoami/package-lock.json: Language not supported
- examples/stable/test/property/candid_rpc/canister_methods/inspect_message/package-lock.json: Language not supported
- examples/stable/test/property/ic_api/caller/package-lock.json: Language not supported
- examples/stable/test/property/ic_api/certified_data/package-lock.json: Language not supported
- examples/stable/test/property/ic_api/is_controller/package-lock.json: Language not supported
- package-lock.json: Language not supported
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting
feat
: migrate to @icp-sdk/core
feat
: migrate to @icp-sdk/core
(breaking changes)
Contributor
feat:
prefix used if functionality should be included in theFeatures
section of the release notesReviewer
feat:
prefix used if functionality should be included in theFeatures
section of the release notesFeatures
@icp-sdk/core
, removing all uses of@dfinity/*
packages besides@dfinity/auth-client
.Breaking Changes
npx azle generate
command now imports from@icp-sdk/core
instead of@dfinity/*
. You may need to install@icp-sdk/core
to use the generated code.azle-experimental-deps
:npm install https://github.com/demergent-labs/azle-experimental-deps#0afef5f615bc77fb303c5e95211daf6d7bb73dd3