Skip to content
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

Conform grafting auto-resolve feature to latest main #805

Closed
wants to merge 16 commits into from
Closed
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .github/workflows/check-formatting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@ name: "Check Formatting"
on:
push:
branches: [main]
pull_request:
branches: [main]
pull_request: {}

jobs:
check:
Expand Down
17 changes: 8 additions & 9 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,15 @@ name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
pull_request: {}

jobs:
build:
strategy:
matrix:
node-version: [14, 16, 17]
node-version: [16, 18]
system:
- os: ubuntu-20.04
include:
- node_version: 18
system:
os: ubuntu-22.04
- os: ubuntu-22.04
runs-on: ${{ matrix.system.os }}
services:
postgres:
Expand All @@ -38,6 +33,10 @@ jobs:
--health-retries 5
steps:
- uses: actions/checkout@v2
- name: update OS
run: |
sudo apt-get update
sudo apt install -y --no-install-recommends gcc g++ make build-essential
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
Expand All @@ -52,5 +51,5 @@ jobs:
POSTGRES_TEST_DATABASE: indexer_tests
POSTGRES_TEST_USERNAME: testuser
POSTGRES_TEST_PASSWORD: testpass
NODE_OPTIONS: '--dns-result-order=ipv4first'
NODE_OPTIONS: "--dns-result-order=ipv4first"
INDEXER_TEST_JRPC_PROVIDER_URL: ${{ secrets.TESTS_RPC_PROVIDER }}
11 changes: 9 additions & 2 deletions .github/workflows/publish-native-binaries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,11 @@
name: "Publish binaries"

on:
workflow_dispatch:
release:
types:
- created
- published

jobs:
publish-github:
Expand All @@ -15,11 +17,11 @@ jobs:
# (https://github.com/bchr02/node-pre-gyp-github/issues/42)
fail-fast: false
matrix:
node_version: [14, 16, 17]
node_version: [16, 17, 18, 19, 20]
system:
- os: macos-latest
target: x86_64-apple-darwin
- os: ubuntu-18.04
- os: ubuntu-20.04
target: x86_64-unknown-linux-gnu
include:
- node_version: 18
Expand All @@ -34,6 +36,11 @@ jobs:
steps:
- name: Checkout the repo
uses: actions/checkout@v2
- name: update OS
run: |
sudo apt-get update
sudo apt install -y --no-install-recommends gcc g++ make build-essential
if: ${{ runner.os == 'Linux' }}
- name: Set up Node.js ${{ matrix.node-version }}
uses: actions/[email protected]
with:
Expand Down
2 changes: 1 addition & 1 deletion docs/action-queue.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Local usage from source
# Queue allocate action (allocateFrom())
./bin/graph-indexer indexer actions queue allocate QmeqJ6hsdyk9dVbo1tvRgAxWrVS3rkERiEMsxzPShKLco6 5000

# Queue reallocate action (closeAndAllocate())
# Queue reallocate action (close and allocate using multicall())
./bin/graph-indexer indexer actions queue reallocate QmeqJ6hsdyk9dVbo1tvRgAxWrVS3rkERiEMsxzPShKLco6 0x4a58d33e27d3acbaecc92c15101fbc82f47c2ae5 55000

# Queue unallocate action (closeAllocation())
Expand Down
70 changes: 39 additions & 31 deletions docs/feature-support-matrix.md
Original file line number Diff line number Diff line change
@@ -1,41 +1,49 @@
# Feature support matrix

As described in [GIP-0008](https://snapshot.org/#/council.graphprotocol.eth/proposal/0xbdd884654a393620a7e8665b4289201b7542c3ee62becfad133e951b0c408444), this defines indexing & querying features which are experimental or not fully supported for indexing & query rewards and arbitration.

Each deployment of The Graph Network has its own specific Feature support matrix, as features will be introduced to testnet & mainnet at different stages of the development and testing lifecycle.

An example:

| Subgraph Feature | Aliases | Implemented | Experimental | Query Arbitration | Indexing Arbitration | Indexing Rewards |
|--------------------------|---------|-------------|--------------|-------------------|----------------------|------------------|
| **Core Features** | | | | | | |
| Full-text Search | | Yes | No | No | Yes | Yes |
| Non-Fatal Errors | | Yes | Yes | Yes | Yes | Yes |
| Grafting | | Yes | Yes | Yes | Yes | Yes |
| **Data Source Types** | | | | | | |
| eip155:* | * | Yes | No | No | No | No |
| eip155:1 | mainnet | Yes | No | Yes | Yes | Yes |
| eip155:100 | gnosis | Yes | No | Yes | Yes | Yes |
| near:* | * | Yes | Yes | No | No | No |
| cosmos:* | * | Yes | Yes | No | No | No |
| arweave:* | * | Yes | Yes | No | No | No |
| eip155:42161 | arbitrum-one | Yes | Yes | Yes | Yes | Yes |
| eip155:42220 | celo | Yes | Yes | Yes | Yes | Yes |
| eip155:43114 | avalanche | Yes | Yes | Yes | Yes | Yes |
| **Data Source Features** | | | | | | |
| ipfs.cat in mappings | | Yes | Yes | No | No | No |
| ENS | | Yes | Yes | No | No | No |
| File data sources: IPFS | | Yes | Yes | No | Yes | Yes |

The accepted `graph-node` version range is also specificied, with an "upgrade window" from the previous version.
As described in [GIP-0008](https://snapshot.org/#/council.graphprotocol.eth/proposal/0xbdd884654a393620a7e8665b4289201b7542c3ee62becfad133e951b0c408444), the Feature support matrix defines indexing & querying features which are experimental or not fully supported for indexing & query rewards and arbitration.

The matrix below reflects the canonical Council-ratified version. As outlined in GIP-00008, Council ratification is currently required for each update, which may happen at different stages of feature development and testing lifecycle.


| Subgraph Feature | Aliases | Implemented | Experimental | Query Arbitration | Indexing Arbitration | Indexing Rewards |
| ------------------------ | ------------- | ----------- | ------------ | ----------------- | -------------------- | ---------------- |
| **Core Features** | | | | | | |
| Full-text Search | | Yes | No | No | Yes | Yes |
| Non-Fatal Errors | | Yes | Yes | Yes | Yes | Yes |
| Grafting | | Yes | Yes | Yes | Yes | Yes |
| **Data Source Types** | | | | | | |
| eip155:* | * | Yes | No | No | No | No |
| eip155:1 | mainnet | Yes | No | Yes | Yes | Yes |
| eip155:100 | gnosis | Yes | Yes | Yes | Yes | Yes |
| near:* | * | Yes | Yes | No | No | No |
| cosmos:* | * | Yes | Yes | No | No | No |
| arweave:* | * | Yes | Yes | No | No | No |
| eip155:42161 | artbitrum-one | Yes | Yes | Yes | Yes | Yes |
| eip155:42220 | celo | Yes | Yes | Yes | Yes | Yes |
| eip155:43114 | avalanche | Yes | Yes | Yes | Yes | Yes |
| eip155:250 | fantom | Yes | Yes | Yes | Yes | Yes |
| eip155:137 | polygon | Yes | Yes | Yes | Yes | Yes |
| **Data Source Features** | | | | | | |
| ipfs.cat in mappings | | Yes | Yes | No | No | No |
| ENS | | Yes | Yes | No | No | No |
| File data sources: IPFS | | Yes | Yes | No | Yes | Yes |
| Substreams data sources | mainnet | Yes | Yes | Yes | Yes | Yes |

The accepted `graph-node` version range must always be specified; it always comprises the latest available version and the one immediately preceding it.
The latest for the feature matrix above:

```
graph-node: ≥0.30.0 <0.31.0
valid from: 787
upgrade window: 795
graph-node: >=0.32 <0.33
```

### Latest Council snapshot
[GPP-0028 Update Feature Support Matrix (Graph Node v0.32.0)](https://snapshot.org/#/council.graphprotocol.eth/proposal/0xa7dcaf27d3b8cb6c135c398753a82fb4a6fc1ff5ad666cb131109f2de506253c)




### Other notes
- Currently, one single matrix is used to reflect protocol behaviour for both Ethereum mainnet and Arbitrum One.
- Aliases can be used in subgraph manifest files to refer to specific networks.
- Experimental features are generally not fully supported for indexing rewards and arbitration, and usage of experimental features will be considered during any arbitration that does occur.
- Query fees apply to all queries, regardless of the underlying features used by a subgraph.
Expand Down
12 changes: 9 additions & 3 deletions docs/networks.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,14 @@

> This content has been moved

[Mainnet configuration](./networks/mainnet.md)
[Ethereum Mainnet configuration](./networks/ethereum-mainnet.md)

[Testnet configuration](./networks/testnet.md)
[Arbitrum One configuration](./networks/arbitrum-one.md)

[Testnet setup instructions](./testnet-setup.md)
[Ethereum Goerli configuration](./networks/ethereum-goerli.md)

[Arbitrum Goerli configuration](./networks/arbitrum-goerli.md)

[Testnet setup instructions](./testnet-setup.md)

[Feature Support Matrix (Ethereum & Arbitrum One)](./feature-support-matrix.md)
Loading
Loading