I'm going through Nader Dabit's Web3 Blog and everything works just fine until I have to run yarn deploy
which runs a script from my package.json
{
"name": "casen-blog",
"license": "UNLICENSED",
"scripts": {
"codegen": "graph codegen",
"build": "graph build",
"deploy": "graph deploy --node https://api.thegraph.com/deploy/ cluck135/casen-blog",
"create-local": "graph create --node http://localhost:8020/ cluck135/casen-blog",
"remove-local": "graph remove --node http://localhost:8020/ cluck135/casen-blog",
"deploy-local": "graph deploy --node http://localhost:8020/ --ipfs http://localhost:5001 cluck135/casen-blog"
},
"dependencies": {
"@graphprotocol/graph-cli": "0.30.0",
"@graphprotocol/graph-ts": "0.27.0"
}
}
After running I get the following error message
✖ Failed to deploy to Graph node https://api.thegraph.com/deploy/: subgraph validation error: [The feature fullTextSearch, ipfsOnEthereumContracts
is used by the subgraph but it is not declared in the manifest.]
Honestly not sure what to do here as the manifest I believe has to do with the undefined.wasm file, so maybe it has to do with the build? but the build worked fine so I'm not sure. Let me know if you have any suggestions on where the problem is even if you're unsure.
subgraph.yaml below
specVersion: 0.0.5
schema:
file: schema.graphql
dataSources:
- kind: ethereum
name: undefined
network: mumbai
source:
address: "0x94BAee80630422d19D7b61f810e442b81ac1be7e"
abi: Blog
mapping:
kind: ethereum/events
apiVersion: 0.0.5
language: wasm/assemblyscript
entities:
- Post
abis:
- name: Blog
file: undefined/abis/Blog.json
eventHandlers:
- event: PostCreated(uint256,string,string)
handler: handlePostCreated
- event: PostUpdated(uint256,string,string,bool)
handler: handlePostUpdated
file: undefined/undefined.wasm
schema.graphql below
type _Schema_
@fulltext(
name: "postSearch"
language: en
algorithm: rank
include: [{ entity: "Post", fields: [{ name: "title" }, { name: "postContent" }] }]
)
type Post @entity {
id: ID!
title: String!
contentHash: String!
published: Boolean!
postContent: String!
createdAtTimestamp: BigInt!
updatedAtTimestamp: BigInt!
}