3 个版本
0.1.3 | 2024年4月26日 |
---|---|
0.1.2 |
|
0.1.1 | 2024年4月26日 |
0.1.0 | 2024年4月26日 |
928 在 数据库接口
692 每月下载
在 gqlint 中使用
30KB
609 行
graphql-lint
GraphQL SDL 架构的 Rust 基础检查器。
graphql-lint
在 Grafbase 平台和 CLI 中使用。
当前支持的检查
- 命名约定
- 类型:
PascalCase
- 禁止的前缀:
"Type"
- 禁止的后缀:
"Type"
- 禁止的前缀:
- 字段:
camelCase
- 输入值:
camelCase
- 参数:
camelCase
- 指令:
camelCase
- 枚举:
PascalCase
- 禁止的前缀:
"Enum"
- 禁止的后缀:
"Enum"
- 禁止的前缀:
- 联合体
- 禁止的前缀:
"Union"
- 禁止的后缀:
"Union"
- 禁止的前缀:
- 枚举值:
SCREAMING_SNAKE_CASE
- 接口
- 禁止的前缀:
"Interface"
- 禁止的后缀:
"Interface"
- 禁止的前缀:
- 查询字段
- 禁止的前缀:
["query", "get", "list"]
- 禁止的后缀:
"Query"
- 禁止的前缀:
- 突变字段
- 禁止的前缀:
["mutation", "put", "post", "patch"]
- 禁止的后缀:
"Mutation"
- 禁止的前缀:
- 订阅字段
- 禁止的前缀:
"subscription"
- 禁止的后缀:
"Subscription"
- 禁止的前缀:
- 类型:
- 使用
@deprecated
指令需要指定reason
参数
用法
[dependencies]
graphql-lint = "0.1.3"
use graphql_lint::lint;
fn main () {
let schema = r#"
type Query {
hello: String!
}
"#;
let violations = lint(schema).unwrap();
}
依赖项
~4MB
~56K SLoC