-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
# Conflicts: # codegen/config/config.go # handler/graphql.go # handler/graphql_test.go
- Loading branch information
Showing
89 changed files
with
7,012 additions
and
2,849 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,10 @@ | ||
### Expected Behaviour | ||
### What happened? | ||
|
||
### Actual Behavior | ||
### What did you expect? | ||
|
||
### Minimal graphql.schema and models to reproduce | ||
|
||
### versions | ||
- `gqlgen version`? | ||
- `go version`? | ||
- dep or go modules? |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# Contribution Guidelines | ||
|
||
Want to contribute to gqlgen? Here are some guidelines for how we accept help. | ||
|
||
## Getting in Touch | ||
|
||
Our [gitter](https://gitter.im/gqlgen/Lobby) channel is the best place to ask questions or get advice on using gqlgen. | ||
|
||
## Reporting Bugs and Issues | ||
|
||
We use [GitHub Issues](https://github.com/99designs/gqlgen/issues) to track bugs, so please do a search before submitting to ensure your problem isn't already tracked. | ||
|
||
### New Issues | ||
|
||
Please provide the expected and observed behaviours in your issue. A minimal GraphQL schema or configuration file should be provided where appropriate. | ||
|
||
## Proposing a Change | ||
|
||
If you intend to implement a feature for gqlgen, or make a non-trivial change to the current implementation, we recommend [first filing an issue](https://github.com/99designs/gqlgen/issues/new) marked with the `proposal` tag, so that the engineering team can provide guidance and feedback on the direction of an implementation. This also help ensure that other people aren't also working on the same thing. | ||
|
||
Bug fixes are welcome and should come with appropriate test coverage. | ||
|
||
New features should be made against the `next` branch. | ||
|
||
### License | ||
|
||
By contributing to gqlgen, you agree that your contributions will be licensed under its MIT license. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,34 +1,31 @@ | ||
# gqlgen [![CircleCI](https://badgen.net/circleci/github/99designs/gqlgen/master)](https://circleci.com/gh/99designs/gqlgen) [![Read the Docs](https://badgen.net/badge/docs/available/green)](http://gqlgen.com/) | ||
|
||
This is a library for quickly creating strictly typed graphql servers in golang. | ||
|
||
See the [docs](https://gqlgen.com/) for a getting started guide. | ||
|
||
### Feature comparison | ||
|
||
| | [gqlgen](https://github.com/99designs/gqlgen) | [gophers](https://github.com/graph-gophers/graphql-go) | [graphql-go](https://github.com/graphql-go/graphql) | [thunder](https://github.com/samsarahq/thunder) | | ||
| --------: | :-------- | :-------- | :-------- | :-------- | | ||
| Kind | schema first | schema first | run time types | struct first | | ||
| Boilerplate | less | more | more | some | | ||
| Docs | [docs](https://gqlgen.com) & [examples](https://github.com/99designs/gqlgen/tree/master/example) | [examples](https://github.com/graph-gophers/graphql-go/tree/master/example/starwars) | [examples](https://github.com/graphql-go/graphql/tree/master/examples) | [examples](https://github.com/samsarahq/thunder/tree/master/example)| | ||
| Query | :+1: | :+1: | :+1: | :+1: | | ||
| Mutation | :+1: | :construction: [pr](https://github.com/graph-gophers/graphql-go/pull/182) | :+1: | :+1: | | ||
| Subscription | :+1: | :construction: [pr](https://github.com/graph-gophers/graphql-go/pull/182) | :+1: | :+1: | | ||
| Type Safety | :+1: | :+1: | :no_entry: | :+1: | | ||
| Type Binding | :+1: | :construction: [pr](https://github.com/graph-gophers/graphql-go/pull/194) | :no_entry: | :+1: | | ||
| Embedding | :+1: | :no_entry: | :construction: [pr](https://github.com/graphql-go/graphql/pull/371) | :no_entry: | | ||
| Interfaces | :+1: | :+1: | :+1: | :no_entry: [is](https://github.com/samsarahq/thunder/issues/78) | | ||
| Generated Enums | :+1: | :no_entry: | :no_entry: | :no_entry: | | ||
| Generated Inputs | :+1: | :no_entry: | :no_entry: | :no_entry: | | ||
| Stitching gql | :clock1: [is](https://github.com/99designs/gqlgen/issues/5) | :no_entry: | :no_entry: | :no_entry: | | ||
| Opentracing | :+1: | :+1: | :no_entry: | :scissors:[pr](https://github.com/samsarahq/thunder/pull/77) | | ||
| Hooks for error logging | :+1: | :no_entry: | :no_entry: | :no_entry: | | ||
| Dataloading | :+1: | :+1: | :+1: | :warning: | | ||
| Concurrency | :+1: | :+1: | :+1: | :+1: | | ||
| Custom errors & error.path | :+1: | :no_entry: [is](https://github.com/graphql-go/graphql/issues/259) | :no_entry: | :no_entry: | | ||
| Query complexity | :+1: | :no_entry: [is](https://github.com/graphql-go/graphql/issues/231) | :no_entry: | :no_entry: | | ||
|
||
|
||
### Help | ||
|
||
Create an issue or join the conversation on [gitter](https://gitter.im/gqlgen) | ||
## What is gqlgen? | ||
|
||
[gqlgen](https://github.com/99designs/gqlgen) is a Go library for building GraphQL servers without any fuss. gqlgen is: | ||
|
||
- **Schema first** — Define your API using the GraphQL [Schema Definition Language](http://graphql.org/learn/schema/). | ||
- **Type safe** — You should never see `map[string]interface{}` here. | ||
- **Codegen** — Let us generate the boring bits, so you can build your app quickly. | ||
|
||
[Feature Comparison](https://gqlgen.com/feature-comparison/) | ||
|
||
## Getting Started | ||
|
||
First work your way through the [Getting Started](https://gqlgen.com/getting-started/) tutorial. | ||
|
||
If you can't find what your looking for, look at our [examples](https://github.com/99designs/gqlgen/tree/master/example) for example usage of gqlgen. | ||
|
||
## Reporting Issues | ||
|
||
If you think you've found a bug, or something isn't behaving the way you think it should, please raise an [issue](https://github.com/99designs/gqlgen/issues) on GitHub. | ||
|
||
## Contributing | ||
|
||
Read our [Contribution Guidelines](https://github.com/99designs/gqlgen/blob/master/CONTRIBUTING.md) for information on how you can help out gqlgen. | ||
|
||
## Other Resources | ||
|
||
- [Christopher Biscardi @ Gophercon UK 2018](https://youtu.be/FdURVezcdcw) | ||
- [Introducing gqlgen: a GraphQL Server Generator for Go](https://99designs.com.au/blog/engineering/gqlgen-a-graphql-server-generator-for-go/) | ||
- [GraphQL workshop for Golang developers by Iván Corrales Solera](https://graphql-go.wesovilabs.com) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
package main | ||
package cmd | ||
|
||
import ( | ||
// Import and ignore the ambient imports listed below so dependency managers | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
package codegen | ||
|
||
func (o *Object) UniqueFields() map[string]*Field { | ||
m := map[string]*Field{} | ||
|
||
for _, f := range o.Fields { | ||
m[f.GoFieldName] = f | ||
} | ||
|
||
return m | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.