Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
8 changes: 8 additions & 0 deletions .changeset/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Changesets

Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
with multi-package repos, or single-package repos to help you version and publish your code. You can
find the full documentation for it [in our repository](https://github.com/changesets/changesets)

We have a quick list of common questions to get you started engaging with this project in
[our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md)
6 changes: 6 additions & 0 deletions .changeset/beige-ladybugs-confess.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"hardhat": patch
---

Added a notification when a new Hardhat version is available

5 changes: 5 additions & 0 deletions .changeset/bright-onions-switch.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@nomicfoundation/hardhat-chai-matchers": patch
---
Added support for Typed objects (thanks @RenanSouza2!)

18 changes: 12 additions & 6 deletions .changeset/config.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
{
"$schema": "https://unpkg.com/@changesets/config@1.6.0/schema.json",
"changelog": "@changesets/cli/changelog",
"commit": false,
"linked": [],
"$schema": "https://unpkg.com/@changesets/config@2.3.1/schema.json",
"access": "public",
"baseBranch": "main",
"updateInternalDependencies": "minor",
"ignore": ["@nomiclabs/common"],
"changelog": ["@changesets/changelog-github", { "repo": "wevm/wagmi" }],
"commit": false,
"ignore": [
"*-register",
"@wagmi/test",
"site",
"next-app",
"nuxt-app",
"vite-*"
],
"updateInternalDependencies": "patch",
"___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH": {
"onlyUpdatePeerDependentsWhenOutOfRange": true
}
Expand Down
7 changes: 7 additions & 0 deletions .changeset/curvy-cherries-beg.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
"@nomicfoundation/hardhat-chai-matchers": patch
"hardhat": patch
"@nomicfoundation/hardhat-viem": patch
---

Improved loading performance
5 changes: 5 additions & 0 deletions .changeset/dry-pianos-scream.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"hardhat": patch
---

Fixed a bug during project initialization when using yarn or pnpm
5 changes: 5 additions & 0 deletions .changeset/lucky-items-peel.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---

---

Patch 4
6 changes: 6 additions & 0 deletions .changeset/modern-fishes-look.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"hardhat": patch
---

Added a fix to prevent submitting transactions with 0 priority fee (thanks @itsdevbear!)

5 changes: 5 additions & 0 deletions .changeset/new-elephants-travel.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@wagmi/cli": patch
---

Updated block explorer chains.
5 changes: 5 additions & 0 deletions .changeset/nice-pandas-clap.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---

---

Circleci project setup
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
"@nomiclabs/hardhat-etherscan": patch
"@iconoclasm/hardhat-etherscan": patch
---

Fix URLs for the Aurora networks (thanks @zZoMROT!)
6 changes: 6 additions & 0 deletions .changeset/quick-hairs-scream.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"wagmi": patch
"@wagmi/core": patch
---

Added `chainId` parameter to `getCapabilities`/`useCapabilities`.
6 changes: 6 additions & 0 deletions .changeset/spicy-bats-juggle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@wagmi/cli": patch
"site": patch
---

Circleci project setup
6 changes: 6 additions & 0 deletions .changeset/tall-fans-mate.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@wagmi/cli": patch
"site": patch
---

Circleci project setup
5 changes: 5 additions & 0 deletions .changeset/thin-peaches-taste.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"hardhat": patch
---

feat: support chainId values above 2^32 - 1 for local account transac…
5 changes: 5 additions & 0 deletions .changeset/tiny-laws-dream.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@fake-scope/fake-pkg": patch
---

Circleci project setup
5 changes: 5 additions & 0 deletions .changeset/tricky-points-wash.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---

---

Patch 4
5 changes: 5 additions & 0 deletions .changeset/twelve-mails-heal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@nomicfoundation/hardhat-verify": patch
---
Added support for programmatic verification in Sourcify

5 changes: 5 additions & 0 deletions .changeset/young-guests-care.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"site": patch
---

docs(readme): fix typo
26 changes: 26 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Use the latest 2.1 version of CircleCI pipeline process engine.
# See: https://circleci.com/docs/configuration-reference

version: 2.1
executors:
my-custom-executor:
docker:
- image: cimg/base:stable
auth:
# ensure you have first added these secrets
# visit app.circleci.com/settings/project/github/Dargon789/hardhat-project/environment-variables
username: $DOCKER_HUB_USER
password: $DOCKER_HUB_PASSWORD
jobs:
web3-defi-game-project-:

executor: my-custom-executor
steps:
- checkout
- run: |
# echo Hello, World!

workflows:
my-custom-workflow:
jobs:
- web3-defi-game-project-
83 changes: 83 additions & 0 deletions .devcontainer/Dockerfile.dev
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
FROM ubuntu:22.04

ARG USERNAME=foundry
ARG USER_UID=1000
ARG USER_GID=$USER_UID
ARG PYTHON_VERSION=3.14
ARG NODE_MAJOR=20
ARG VYPER_VERSION=0.4.3

ENV DEBIAN_FRONTEND=noninteractive
ENV CARGO_TERM_COLOR=always \
RUST_BACKTRACE=full

WORKDIR /workspace

RUN apt-get update && apt-get install -y --no-install-recommends \
# Build tools
build-essential \
clang \
lld \
pkg-config \
# Network/SSL
curl \
ca-certificates \
gnupg \
libssl-dev \
# Version control & utils
git \
sudo \
unzip \
# Python
python${PYTHON_VERSION} \
python3-pip \
python${PYTHON_VERSION}-venv \
# Add Node.js repo
&& mkdir -p /etc/apt/keyrings \
&& curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg \
&& echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_${NODE_MAJOR}.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list \
# Update again after adding repo and install Node.js
&& apt-get update && apt-get install -y --no-install-recommends \
nodejs \
# Clean up apt cache
&& apt-get clean && rm -rf /var/lib/apt/lists/*

# Ensure python points to the installed python version
RUN ln -sf /usr/bin/python${PYTHON_VERSION} /usr/bin/python && \
ln -sf /usr/bin/python${PYTHON_VERSION} /usr/bin/python3

# Create non-root user with sudo privileges
RUN groupadd --gid $USER_GID $USERNAME \
&& useradd --uid $USER_UID --gid $USER_GID -m $USERNAME -s /bin/bash \
# Setup sudo without password prompt
&& echo "$USERNAME ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/$USERNAME \
&& chmod 0440 /etc/sudoers.d/$USERNAME \
# Add user to the sudo group (standard practice)
&& usermod -aG sudo $USERNAME

# Switch to the non-root user
USER $USERNAME
WORKDIR /home/$USERNAME

# --- User-specific installations ---

# Install Bun
ENV BUN_INSTALL="/home/$USERNAME/.bun"
ENV PATH="$BUN_INSTALL/bin:$PATH"
RUN curl -fsSL https://bun.sh/install | bash

# Install Rust & cargo-nextest
ENV CARGO_HOME="/home/$USERNAME/.cargo"
ENV RUSTUP_HOME="/home/$USERNAME/.rustup"
ENV PATH="$CARGO_HOME/bin:$PATH"
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y \
&& cargo install cargo-nextest --locked

# Install Vyper using pip
# Ensure pip user install directory is in PATH
ENV PYTHONUSERBASE="/home/$USERNAME/.local"
ENV PATH="$PYTHONUSERBASE/bin:$PATH"
RUN pip3 install --user vyper==${VYPER_VERSION}

# Switch back to the main workspace directory
WORKDIR /workspace
64 changes: 64 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{
"name": "Hardhat + EDR",
"image": "mcr.microsoft.com/devcontainers/base:bullseye",
"features": {
"ghcr.io/devcontainers/features/node:1": {
"version": "16" /* Keep in sync with the oldest version of Node.js that Hardhat supports */
},
"ghcr.io/devcontainers/features/rust:1": {
"version": "1.70" /* Keep in sync with rust-toolchain */,
"profile": "default"
}
},
/* libudev-dev is required by hardhat-ledger. pkg-config is required by EDR to use OpenSSL */
"postCreateCommand": "sudo apt update && sudo apt install -y libudev-dev pkg-config"
}
// For format details, see https://aka.ms/devcontainer.json.
{
"name": "Foundry Development",
"build": {
"context": "..",
"dockerfile": "Dockerfile.dev"
},

"features": {
"ghcr.io/devcontainers/features/common-utils:2": {
"installZsh": true,
"configureZshAsDefaultShell": true,
"installOhMyZsh": true,
"upgradePackages": true
}
},

"forwardPorts": [],

"postCreateCommand": "rustup default stable && rustup update",

"customizations": {
"vscode": {
"extensions": [
"rust-lang.rust-analyzer",
"serayuzgur.crates",
"tamasfe.even-better-toml",
"ms-python.python",
"dbaeumer.vscode-eslint",
"oven.bun-vscode"
],
"settings": {
"rust-analyzer.checkOnSave": true,
"rust-analyzer.cargo.features": "all"
}
}
},

"remoteUser": "foundry",

"workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=cached",

"workspaceFolder": "/workspace",

"mounts": [
"source=${localEnv:HOME}/.cargo/registry,target=/home/foundry/.cargo/registry,type=bind,consistency=cached",
"source=${localEnv:HOME}/.cargo/git,target=/home/foundry/.cargo/git,type=bind,consistency=cached"
]
}
5 changes: 5 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
@tmm @jxom

/packages/connectors/src/metaMask @ecp4224 @omridan159 @abretonc7s @elefantel @BjornGunnarsson @EdouardBougon
/packages/connectors/src/safe @DaniSomoza @dasanra @mikhailxyz @yagopv
/packages/connectors/src/walletConnect @ganchoradkov @glitch-txs @ignaciosantise @tomiir
1 change: 1 addition & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[View Contributing Guide on wagmi.sh](https://wagmi.sh/dev/contributing)
51 changes: 51 additions & 0 deletions .github/DISCUSSION_TEMPLATE/connector-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
title: '[Connector Request] '
body:
- type: markdown
attributes:
value: |
Thanks for your interest in contributing a new Connector to the Wagmi! If you haven't already, please read the [Contributing Guidelines](https://wagmi.sh/dev/contributing). Once you submit the form, the Wagmi team will follow up in the discussion thread to discuss next steps.

Please note that in order for connector requests to be accepted, the team creating the Connector must [sponsor Wagmi](https://github.com/sponsors/wevm). It takes time and effort to maintain third-party connectors. Wagmi is an OSS project that depends on sponsors and grants to continue our work. Please get in touch via [dev@wevm.dev](mailto:dev@wevm.dev) if you have questions about sponsoring.

- type: textarea
attributes:
label: What **novel use-case** does the Connector provide?
description: |
A novel use-case is likely one that is not already covered by or not easily extended from another Connector (such as the `injected` or `walletConnect`).

Examples of **novel** use-cases could be a connector that integrates with:

- the injected `window.ethereum` provider (a la `injected`)
- a series of wallets via QR Codes or Mobile Deep Links (a la `walletConnect`)
- a wallet with it's own SDK (a la `coinbaseWallet`)
- hardware wallet(s) via Web USB/Bluetooth
- an Externally Owned Account via a private key or some other method

Examples of **nonnovel** use-cases would be a connector that:

- extends another connector (e.g. `walletConnect`) with no significant differences in functionality other than branding, etc.
placeholder: Info on what makes this connector different.
validations:
required: true

- type: textarea
attributes:
label: Are the Connector's integrations production-ready and generally available?
description: Connectors are intended to be used by consumers in production as part of Wagmi. As such, the Connector and all dependencies must be production-ready and generally available. This means your connector should not rely on non-production software or be restricted to a limited group of users. For example, if your connector requires a wallet that has a closed beta, it is not ready for inclusion in Wagmi.
placeholder: Info about the Connector and any dependencies (e.g. browser extension, wallet app, npm package).
validations:
required: true

- type: checkboxes
attributes:
label: Are you committed to actively maintaining the Connector?
description: It is critical connectors are updated in a timely manner and actively maintained so that users of Wagmi can rely on them in production settings. The Wagmi core team will provide as much assistance as possible to keep connectors up-to-date with breaking changes from Wagmi, but it is your responsibility to ensure that any dependencies and issues/discussions related to the Connector are handled in a timely manner. If this is not done, the Connector could be removed from the future versions.
options:
- label: Yes, my team is or I am committed to actively maintaining the Connector.
required: true

- type: textarea
attributes:
label: Additional comments
description: Feel free to jot down any additional info you think might be helpful.
placeholder: Additional comments, questions, feedback.
Loading
Loading