Ben Kraft and GitHub
700392315a
Enable golangci-lint ( #49 )
...
## Summary:
It would be nice to have some linting beyond `go vet`! Now we do. I
started by copying the config from Khan/webapp. I did remove a couple
of staticcheck checks that I didn't feel were useful. (Note also that
exportloopref is the replacement for scopelint in newer golangci-lint.)
Included are all the needed lint fixes; most are stylistic but the
changes in the example are a (minor) bugfix.
Fixes #22 .
Issue: https://github.com/Khan/genqlient/issues/22
## Test plan:
make check
Author: benjaminjkraft
Reviewers: aberkan, dnerdy, benjaminjkraft, csilvers, MiguelCastillo
Required Reviewers:
Approved by: aberkan, dnerdy
Checks: ✅ Test (1.17), ✅ Test (1.16), ✅ Test (1.15), ✅ Test (1.14), ✅ Test (1.13), ✅ Lint, ✅ Test (1.17), ✅ Test (1.16), ✅ Test (1.15), ✅ Test (1.14), ✅ Test (1.13), ✅ Lint
Pull request URL: https://github.com/Khan/genqlient/pull/49
2021-08-20 10:39:12 -07:00
Ben Kraft
dfc9f02efc
Actually build the generated code in tests
...
This revealed one bug already (a redux of #43 )! And will hopefully help
more as unmarshalers get more complicated (thanks to
interfaces/fragments).
2021-06-03 15:48:05 -07:00
Ben Kraft
1f442da041
Switch to cupaloy for snapshots
...
Slightly uglier filenames, but less code and free diffing! Approved in
ADR-466 for Khan use. Fixes #23 .
2021-06-03 12:08:56 -07:00
Ben Kraft
3c11f07e62
Make test ID type actually exist
...
This way I can start to test that the code compiles.
2021-06-03 11:36:45 -07:00
Ben Kraft
c2e7dc4e5b
Handle omitempty correctly for slices
...
We were generating broken code; fixes #43 . Also fixes a bug where
applying omitempty to the entire query was broken by e597cac74c .
2021-06-01 15:49:42 -07:00
Ben Kraft and GitHub
589680f323
Notes from meeting about content-library
...
In general it seems like they are happy with the potential future fragments plan!
2021-05-11 14:32:11 -07:00
Ben Kraft
caa72dae6a
Remove line numbers from export-operations file, again
...
I messed it up in 6adfe3b2377! This shows it's really time to turn on
more linters, which would have caught this.
2021-05-03 11:16:13 -07:00
Ben Kraft and GitHub
870284271a
Some more ideas on how to allow fragments for code-sharing
...
And clarified some existing ideas and tradeoffs. This is enough to
make me think we may not need to implement both options, at
least to start.
2021-04-30 16:55:11 -07:00
Ben Kraft
c34c5ff505
Turn on test coverage in Makefile/actions
2021-04-23 18:18:07 -07:00
Ben Kraft
6adfe3b237
Remove line numbers from export-operations file
...
This was sort of accidental from putting them in line numbers, and it
turns out it's more annoying than useful. Easy enough to remove.
Fixes #40 .
2021-04-23 18:14:09 -07:00
Ben Kraft
d449acdda3
Clarify object type documentation
...
Craig pointed out this is a bit confusing when you don't have all the
fields. Now we say so, but still include the type's description in case
it's useful.
Fixes #37 .
2021-04-23 18:13:32 -07:00
Ben Kraft
f1914cd9ef
log response body, not request body, on non-200
2021-04-22 10:14:26 -07:00
Ben Kraft
b399e0d740
move TODOs into issues
2021-04-21 19:05:38 -07:00
Ben Kraft
748f2cf072
Add documentation to types and fields
...
Fixes #3 .
2021-04-21 18:07:36 -07:00
Ben Kraft
32fea7fae4
fix incorrect enum-value type names for enums used as inputs
...
luckily webapp is now a much more complete test suite and genqlient's
own tests, so it caught this!
2021-04-21 17:41:33 -07:00
Ben Kraft
9bc97108ea
fix ExportOperations relative to config file if it's omitted
2021-04-21 11:42:19 -07:00
Ben Kraft
76d372919c
make ExportOperations relative to config file
2021-04-21 11:34:25 -07:00
Ben Kraft
2272ad8a12
allow map[string]interface{}, and other such things, as scalars
2021-04-21 11:32:49 -07:00
Ben Kraft and GitHub
f97d33e6ae
more design notes on interfaces/fragments
2021-04-21 10:23:03 -07:00
Ben Kraft
288657fcb9
TODOs
2021-04-16 11:55:35 -07:00
Ben Kraft
93df752ac3
a few more tiny steps in types.go
2021-04-15 19:11:12 -07:00
Ben Kraft
be225ba9d0
actually starting to make progress on types.go
2021-04-15 19:00:41 -07:00
Ben Kraft
234c683e21
add a test with a pile of nested interfaces
2021-04-15 18:46:24 -07:00
Ben Kraft
89fe78e11a
bit more nibbling at types.go
2021-04-15 18:00:31 -07:00
Ben Kraft
40fc7fdbc5
handle nested lists correctly
2021-04-15 17:49:09 -07:00
Ben Kraft
e82a32f47a
few more attempts at cleaning up types.go
2021-04-15 17:46:13 -07:00
Ben Kraft
f72cb9d346
try to clean up types.go a bit, mostly fail
2021-04-15 17:36:04 -07:00
Ben Kraft
2c087c7821
big overhaul of error-formatting, to get positions more consistently
...
fixes #2
2021-04-15 17:01:46 -07:00
Ben Kraft
ade01c9280
test for uppercasing aliases
2021-04-15 15:50:22 -07:00
Ben Kraft
1bd7f7cb16
put example-test verbose flag in right place
2021-04-15 15:43:46 -07:00
Ben Kraft
f8f81dad7b
snapshots for errors
2021-04-15 15:42:05 -07:00
Ben Kraft
ddf4b03350
allow interface{} as a scalar
2021-04-15 11:50:52 -07:00
Ben Kraft
a5fe0943bd
only print diff in example_test if test.v is set
2021-04-15 11:38:39 -07:00
Ben Kraft
136ac7729f
include alias even if we don't need it
2021-04-15 11:36:46 -07:00
Ben Kraft
e597cac74c
add option to force using a pointer
2021-04-12 16:01:21 -07:00
Ben Kraft
74411faf52
TODO: auto-caching
2021-04-09 12:18:09 -07:00
Ben Kraft
16523c1f81
add omitempty
2021-04-09 11:51:30 -07:00
Ben Kraft
25a2b45ccc
redo comment parsing to set up for field-level config
2021-04-09 09:53:53 -07:00
Ben Kraft
b4e8316c6a
add support for custom scalars -- mainly adding proper import machinery
2021-04-08 13:07:31 -07:00
Ben Kraft
e68787ad35
add TODO
2021-04-08 11:28:10 -07:00
Ben Kraft
b8f922a41b
err explicitly if there's no operation name
2021-04-07 17:18:03 -07:00
Ben Kraft and GitHub
eae8553c04
couple more TODOs
2021-04-06 15:49:52 -07:00
Ben Kraft and GitHub
a33595b4b3
update & reorganize TODOs
2021-04-06 15:44:03 -07:00
Ben Kraft
e7d9c7d140
update repo to match official open source guidelines
2021-04-06 12:29:28 -07:00
Ben Kraft
574f704ce9
just use the filename, no line number, in source-location
2021-04-06 12:19:12 -07:00
Ben Kraft
6404ba0e58
fix error message when a go string-query fails to parse
2021-04-05 17:48:34 -07:00
Ben Kraft
d880512499
set content-type header
2021-04-05 12:50:30 -07:00
Ben Kraft
77804e3475
naming things
2021-04-02 18:13:10 -07:00
Ben Kraft
28dfeb5b46
more notes on testing
2021-04-02 18:08:13 -07:00
Ben Kraft
9c8cf02181
proper test wiring for example test in github actions
2021-04-02 18:04:05 -07:00
Ben Kraft
efc6549d7e
fix example args in github actions
2021-04-02 17:18:37 -07:00
Ben Kraft
5ab592ac18
try example in github actions again
2021-04-02 17:17:38 -07:00
Ben Kraft
21954ac62d
general pass of README cleanup
2021-04-02 17:01:49 -07:00
Ben Kraft
0432f3f434
miscellaneous test coverage
2021-04-02 16:34:15 -07:00
Ben Kraft
4669ea00d0
TODOs
2021-04-02 16:26:22 -07:00
Ben Kraft
334c186944
error if you try to use features that aren't done (fragments/interfaces)
2021-04-02 16:19:50 -07:00
Ben Kraft
edb12e3e0a
pretty-print JSON in query-export
2021-04-02 16:01:52 -07:00
Ben Kraft
4b06c94eed
put config-file-relative paths in exported queries (and error messages)
2021-04-01 16:51:00 -07:00
Ben Kraft
9fe8f09e8c
more miscellaneous fixes while integrating into webapp
2021-04-01 15:04:36 -07:00
Ben Kraft
fbf00f3bef
add option to export all operations
2021-04-01 13:11:23 -07:00
Ben Kraft
de038dc428
shorten enum and input-object type-names
2021-04-01 12:40:54 -07:00
Ben Kraft
eae68e43c9
allow globbing, and extract queries from .go files
2021-04-01 12:34:51 -07:00
Ben Kraft
ec6681e715
allow multiple queries-files
2021-04-01 12:29:24 -07:00
Ben Kraft and GitHub
10ae5ff5d8
formatting
2021-03-31 18:09:50 -07:00
Ben Kraft and GitHub
19cd9a01f7
formatting
2021-03-31 18:09:34 -07:00
Ben Kraft and GitHub
291ce980b3
another idea on query extraction
2021-03-31 10:43:08 -07:00
Ben Kraft
fb3c0b3cb4
more TODOs around type naming
2021-03-30 17:56:14 -07:00
Ben Kraft
27ee3c2dbd
fixes while integrating into webapp
2021-03-30 17:53:31 -07:00
Ben Kraft
b125191f99
fix png
2021-03-30 13:26:43 -07:00
Ben Kraft
be8952f11a
embed png because fonts
2021-03-30 13:23:16 -07:00
Ben Kraft
9e84417584
kern
2021-03-30 13:17:22 -07:00
Ben Kraft
0c80d0c656
actually fix svg
2021-03-30 13:03:25 -07:00
Ben Kraft
45dd9b5c1d
fix svg?
2021-03-30 13:00:13 -07:00
Ben Kraft
cf1965160b
logo of sorts
2021-03-30 12:59:39 -07:00
Ben Kraft
315617261d
silliness
2021-03-30 12:48:35 -07:00
Ben Kraft
470222e118
check some boxes off the README
2021-03-30 12:46:03 -07:00
Ben Kraft
cbebeaaed4
rename in code
2021-03-30 12:41:37 -07:00
Ben Kraft and GitHub
db3ee65854
Rename and do some fun heading nonsense in the README
2021-03-30 12:39:59 -07:00
Ben Kraft
2c52314494
set opname
2021-03-30 11:27:43 -07:00
Ben Kraft
e3f6afeb78
more documentation in client.go, simplify unmarshaling slightly
2021-03-25 14:26:25 -07:00
Ben Kraft
f136758db4
misc bits of documentation
2021-03-25 14:13:14 -07:00
Ben Kraft
937540d244
make client an interface
2021-03-25 14:08:12 -07:00
Ben Kraft
a9054e484f
remove a stray printf
2021-03-22 19:17:45 -07:00
Ben Kraft
dd85597577
more wiring for configurable context/client, theoretically should be good enough for khan use
2021-03-22 19:17:06 -07:00
Ben Kraft
59ca841a6b
start of wiring for configurable context
2021-03-22 19:09:17 -07:00
Ben Kraft
17a95fd4de
more TODOs, and especially clarify the situation for input type names
2021-03-22 18:45:52 -07:00
Ben Kraft
088ec53ad5
fix branch name in github actions
2021-03-22 18:14:16 -07:00
Ben Kraft
a42c9b8166
clean up various TODOs and comments
2021-03-22 18:11:51 -07:00
Ben Kraft
463e3ed319
remove pointers for optionality -- shockingly easy
2021-03-22 17:39:22 -07:00
Ben Kraft
fed38e4f55
redo type naming
2021-03-19 18:40:58 -07:00
Ben Kraft
58f4aff83b
more design updates -- clarify what's decided and decide some things
2021-03-19 17:22:23 -07:00
Ben Kraft
5accc088c5
more docs about design and what remains to be done
2021-03-16 19:01:45 -07:00
Ben Kraft and GitHub
8d46de3a9b
Bit more detail on what we need to use non-fragment queries in prod
2021-03-16 12:42:43 -07:00
Ben Kraft and GitHub
f3282426f2
TODOs
2020-09-04 17:14:40 -07:00
Ben Kraft
58dc311289
rename selection to field
2020-07-16 13:50:52 -07:00
Ben Kraft
036d39622d
move everything into snapshot-based testing; update it a bit
2020-07-16 13:42:58 -07:00
Ben Kraft
cf7136ca65
total rewrite to interface handling; not complete but it compiles
2020-07-16 13:28:43 -07:00
Ben Kraft
af4a765a32
back out interfaces/unions, in preparation for new approach
2020-07-16 09:53:21 -07:00
Ben Kraft
e9b90d861f
fix tests
2020-07-15 17:38:47 -07:00
Ben Kraft
d2d5c9469d
notes on approaches to the interface/fragment problem
2020-07-15 17:36:24 -07:00