# Release changes

## Breaking Changes <a href="#a2db" id="a2db"></a>

### No longer auto adds patches for web3.js send errors

There is a bug in `web3.js` version `1.3.0` where the send function cannot be found, you can find a discussion of this in the `web3.js` repository: [issue#3790](https://github.com/ChainSafe/web3.js/issues/3790), [pr#3649](https://github.com/ChainSafe/web3.js/pull/3649#issuecomment-695200876), etc. this is usually displayed as the following error log:

```typescript
Uncaught (in promise) TypeError: this.send is not a function
// or
TypeError: this._eip1193Send is not a function. (In 'this._eip1193Send(payload.method, payload.params)', 'this._eip1193Send' is undefined)
```

In previous versions, the imToken App would automatically add a patch to fix bugs from third parties, but this had some side effects and we will remove the automatically applied patch starting with version `2.9.4` of the imToken App.

This is a bug from `web3.js`, so we recommend that you **upgrade** or **downgrade** the `web3.js` package to fix this issue.

### No longer injecting web3.js

Starting in 2021, the **imToken App will no longer inject the `web3.js` API**, so if you are still using such libraries, please package web3.js inside your web app yourself.

MetaMask also stopped injecting web3.js in early 2021. You can also read [this article by MetaMask](https://medium.com/metamask/no-longer-injecting-web3-js-4a899ad6e59e), which explains in detail why web3.js needs to be removed completely.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://imtoken.gitbook.io/developers/products/webview/release-changes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
