trufflesuite/truffle
### [`v5.4.33`](https://togithub.com/trufflesuite/truffle/releases/v5.4.33)
[Compare Source](https://togithub.com/trufflesuite/truffle/compare/v5.4.32...v5.4.33)
Hello all! 👋
This week we've added support for a large number of networks to `@truffle/fetch-and-compile`! 🐕 It now supports nearly every network supported by either [Sourcify](https://togithub.com/ethereum/sourcify/) or [Etherscan](https://etherscan.io/) (and its [associated](https://optimistic.etherscan.io/) [family](https://arbiscan.io/) of [websites](https://polygonscan.com/), of [which](https://bscscan.com/) [there](https://ftmscan.com/) are [quite](https://hecoinfo.com/) a [few](https://moonscan.io/)), with only a few exceptions for technical reasons. And the two of them together support a lot of networks! We've also added a `getSupportedNetworks()` function to the package so you can know just what these supported networks are without having to read all of our release notes. 🕵
Example of using getSupportedNetworks()
```javascript
const { fetchAndCompile, getSupportedNetworks } = require("@truffle/fetch-and-compile");
const networks = getSupportedNetworks();
// networks = {
// mainnet: { name: "mainnet", networkId: 1, chainId: 1, fetchers: ["etherscan", "sourcify"] },
// ropsten: { name: "ropsten", networkId: 3, chainId: 3, fetchers: ["etherscan", "sourcify"] },
// sokol: { name: "sokol", networkId: 77, chainId: 77, fetchers: ["sourcify"] }, //not supported by etherscan
// ...
// }
// armed with knowledge, invoke fetchAndCompile
const { compileResult } = fetchAndCompile(/* ... */);
```
You can also pass in a Truffle Config with the `sourceFetchers` property set, if you want to restrict to the network supported by a specific fetcher (`"etherscan"` or `"sourcify"`).
```javascript
const { getSupportedNetworks } = require("@truffle/fetch-and-compile")
const Config = require("@truffle/config");
const config = Config.default().with({ sourceFetchers: ["etherscan"] });
const networks = getSupportedNetworks(config); //will only list those supported by etherscan and associated websites
```
That's not the only way we've improved Truffle's reporting this week; we've also made it so that `truffle version` will now report 📜 which version of Ganache Truffle will use for `truffle develop` and `truffle test` if you're not connecting to an existing network.
That's all for now, but we'll be back next week as always with more!
#### How to upgrade
We recommend upgrading to the latest version of Truffle by running:
npm uninstall -g truffle
npm install -g truffle
#### Changelog
##### Enhancements
- Add a lot of networks to source-fetcher and fetch-and-compile ([#4715](https://togithub.com/trufflesuite/truffle/pull/4715) by [@haltman-at](https://togithub.com/haltman-at))
- Add `getSupportedNetworks()` to source-fetcher and fetch-and-compile ([#4705](https://togithub.com/trufflesuite/truffle/pull/4705) by [@haltman-at](https://togithub.com/haltman-at))
- Add managed Ganache version info to the output of `truffle version` ([#4686](https://togithub.com/trufflesuite/truffle/pull/4686) by [@lsqproduction](https://togithub.com/lsqproduction))
##### Bug fixes
- Prevent debugger from splitting surrogate pairs ([#4706](https://togithub.com/trufflesuite/truffle/pull/4706) by [@haltman-at](https://togithub.com/haltman-at))
##### Internal improvements
- Replace `lodash.assignIn` with native JS implementation ([#4699](https://togithub.com/trufflesuite/truffle/pull/4699) by [@cds-amal](https://togithub.com/cds-amal))
- Remove `@ensdomains/resolver` and use pre-compiled contract in deployer ([#4657](https://togithub.com/trufflesuite/truffle/pull/4657) by [@eggplantzzz](https://togithub.com/eggplantzzz))
- Remove `@ensdomains/ens` and include `ENSRegistry` artifact in deployer ([#4647](https://togithub.com/trufflesuite/truffle/pull/4647) by [@eggplantzzz](https://togithub.com/eggplantzzz))
- Remove unused `lodash.pick` types dependency ([#4703](https://togithub.com/trufflesuite/truffle/pull/4703) by [@cds-amal](https://togithub.com/cds-amal))
- Put all BUNDLE globals in main `.eslintrc.json` ([#4698](https://togithub.com/trufflesuite/truffle/pull/4698) by [@haltman-at](https://togithub.com/haltman-at))
- Dedupe slack notification channel ([#4694](https://togithub.com/trufflesuite/truffle/pull/4694) by [@cds-amal](https://togithub.com/cds-amal))
- Downgrade remaining TS packages to `target: es2016` ([#4691](https://togithub.com/trufflesuite/truffle/pull/4691) by [@haltman-at](https://togithub.com/haltman-at))
##### Dependency updates
- Upgrade simple-get from 2.8.1 to 2.8.2 ([#4690](https://togithub.com/trufflesuite/truffle/pull/4690) by [@dependabot\[bot\]](https://togithub.com/apps/dependabot))
Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR contains the following updates:
5.4.32
->5.4.33
Release Notes
trufflesuite/truffle
### [`v5.4.33`](https://togithub.com/trufflesuite/truffle/releases/v5.4.33) [Compare Source](https://togithub.com/trufflesuite/truffle/compare/v5.4.32...v5.4.33) Hello all! 👋 This week we've added support for a large number of networks to `@truffle/fetch-and-compile`! 🐕 It now supports nearly every network supported by either [Sourcify](https://togithub.com/ethereum/sourcify/) or [Etherscan](https://etherscan.io/) (and its [associated](https://optimistic.etherscan.io/) [family](https://arbiscan.io/) of [websites](https://polygonscan.com/), of [which](https://bscscan.com/) [there](https://ftmscan.com/) are [quite](https://hecoinfo.com/) a [few](https://moonscan.io/)), with only a few exceptions for technical reasons. And the two of them together support a lot of networks! We've also added a `getSupportedNetworks()` function to the package so you can know just what these supported networks are without having to read all of our release notes. 🕵Example of using
```javascript const { fetchAndCompile, getSupportedNetworks } = require("@truffle/fetch-and-compile"); const networks = getSupportedNetworks(); // networks = { // mainnet: { name: "mainnet", networkId: 1, chainId: 1, fetchers: ["etherscan", "sourcify"] }, // ropsten: { name: "ropsten", networkId: 3, chainId: 3, fetchers: ["etherscan", "sourcify"] }, // sokol: { name: "sokol", networkId: 77, chainId: 77, fetchers: ["sourcify"] }, //not supported by etherscan // ... // } // armed with knowledge, invoke fetchAndCompile const { compileResult } = fetchAndCompile(/* ... */); ``` You can also pass in a Truffle Config with the `sourceFetchers` property set, if you want to restrict to the network supported by a specific fetcher (`"etherscan"` or `"sourcify"`). ```javascript const { getSupportedNetworks } = require("@truffle/fetch-and-compile") const Config = require("@truffle/config"); const config = Config.default().with({ sourceFetchers: ["etherscan"] }); const networks = getSupportedNetworks(config); //will only list those supported by etherscan and associated websites ```getSupportedNetworks()
Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.