• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

graphql-go / graphql
86%
master: 92%

Build:
Build:
LAST BUILD BRANCH: cycle-guard
DEFAULT BRANCH: master
Repo Added 05 Nov 2015 03:12AM UTC
Files 17
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH plan-cache
branch: plan-cache
CHANGE BRANCH
x
Reset
  • plan-cache
  • 0.4.18
  • 1046102779/master
  • README-pkg-go-dev-badge-update
  • anon-contained-struct
  • atrniv/fix-cyclic-types
  • augustoroman/master
  • badge
  • bigdrum/edge
  • chris_issue_78
  • circleci
  • clean-up-merge-PR-149
  • coerce-float-improvement
  • context
  • context-example
  • contribute-back-section
  • custom-marshaler
  • custom-scalar-type-example
  • cycle-guard
  • dep
  • enable-go-module
  • enum-type-pointers
  • errcheck
  • examples-concurrent-fields
  • examples-http-post
  • examples-starwars
  • examples-todo
  • examples-todo-schema
  • extend-mutation-example
  • extensions
  • fieldsthunk
  • fix-gitter-badge
  • fix-multi-byte-comments
  • fix-panic-blockstring
  • fix-unique-name-nil
  • fix/multi-byte-parse
  • fix_getting_started_on_readme
  • formatted-error-private-original-error
  • gofmt-s
  • graphql-tag
  • housinganywhere/expose-default-resolve-function
  • issue-724
  • issue-726
  • issue-731
  • issue-issue-731
  • kr15h/master
  • lbarthonet/default-value-args
  • master
  • mentat-scripts-1
  • mentat-scripts-2
  • modify-context
  • neglectedvalue/expose-default-resolve-function
  • new-error-checks-nil-nodes
  • no-dependencies
  • nonnull-args-default-value
  • original-error-improvements
  • panic-handler
  • readme
  • readme_path_fixes
  • resolve-returns-error
  • revert-149-fix-parse-hang
  • scalar-datetime
  • sogko/0.5.0
  • sogko/0.6.0
  • sogko/experiment-parallel-resolve
  • sogko/float64
  • sogko/resolve-data-race
  • svenschneider/fix-input-object-default-value
  • titanous/fix-nil-crashes
  • titanous/fix-nil-crashes-rebased
  • titanous/fix-parse-hang
  • tracing-support
  • types_marshaler_implementation
  • union-types-test
  • updating-circleci
  • v0.4.18
  • v0.5.0
  • v0.6.0
  • v0.7.0
  • v0.7.1
  • v0.7.2
  • v0.7.3
  • v0.7.4
  • v0.7.5
  • v7.1.0
  • validator-skipped-tests
  • vendor

09 May 2026 10:10PM UTC coverage: 85.967% (-6.3%) from 92.284%
1912

Pull #740

circleci

Nthalk
perf: skip extension hooks when schema has no extensions

resolvePlannedField unconditionally called handleExtensionsResolveFieldDidStart,
which allocates a map[string]ResolveFieldFinishFunc + a closure on
every resolved field — even when the schema has zero extensions
registered. With ~1000 fields per request that's 2000 wasted allocs
per request on the common no-extensions case.

Gate the call (and the matching finish-handler invocation) behind
`len(eCtx.Schema.extensions) > 0`.

Wide-query bench (100 fields × 10 items):
  before: 1.15ms / 9043 allocs/op
  after:  0.99ms / 7040 allocs/op   (-14% time, -22% allocs)

Hot-loop with native variables:
  before: 1.44ms / 9888 allocs/op
  after:  1.30ms / 7884 allocs/op   (-10% time, -20% allocs)

Schemas with extensions registered take the same path as before.
Pull Request #740: Plan + PlanQuery + ExecutePlan + PlanCache (cacheable execution shape)

916 of 1070 new or added lines in 4 files covered. (85.61%)

97 existing lines in 1 file now uncovered.

8350 of 9713 relevant lines covered (85.97%)

1296.5 hits per line

Relevant lines Covered
Build:
Build:
9713 RELEVANT LINES 8350 COVERED LINES
1296.5 HITS PER LINE
Source Files on plan-cache
  • Tree
  • List 31
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
1912 plan-cache perf: skip extension hooks when schema has no extensions resolvePlannedField unconditionally called handleExtensionsResolveFieldDidStart, which allocates a map[string]ResolveFieldFinishFunc + a closure on every resolved field — even when the sche... Pull #740 09 May 2026 10:11PM UTC Nthalk circleci
85.97
1907 plan-cache test: cover plan_cache_normalize argument-kind & fragment paths Custom test schema with Int / Float / Bool / Enum / List / NonNull / InputObject args + an interface and a fragment-spreadable object, driving: - writeValue branches (Int/Float/Bo... Pull #740 09 May 2026 10:08PM UTC Nthalk circleci
85.96
1904 plan-cache ci: exclude testutil and language/ast from coverage measurement testutil is a test-helper package by design — measuring its coverage at all is a category mistake. language/ast is dominated by ~180 trivial interface-compliance stubs (GetLoc / Get... Pull #740 09 May 2026 09:50PM UTC Nthalk circleci
85.16
1902 plan-cache refactor: remove dead executor code superseded by Plan/ExecutePlan Execute now routes unconditionally through PlanQuery + ExecutePlan (see plan.go), so the entire pre-refactor execution machinery in executor.go is unreachable. Delete it: execu... Pull #740 09 May 2026 09:23PM UTC Nthalk circleci
83.71
1900 plan-cache ci: also exclude benchutil from coverpkg benchutil's code only runs under `go test -bench=.`, so including it in the coverage profile measures it against test runs that don't exercise it. Local total moves 82.2% → 83.2%. Pull #740 09 May 2026 09:14PM UTC Nthalk circleci
81.39
1895 plan-cache ci: measure unified coverage with -coverpkg, excluding examples The earlier `./...` change (659c616, applied per a CodeRabbit nitpick that framed it as restoring "incomplete coverage") actually dropped coveralls from ~92% → 67.9%: with plain ./..... Pull #740 09 May 2026 09:11PM UTC Nthalk circleci
80.48
1894 plan-cache test: schema-rebuild invalidation and concurrent Get coverage TestPlanCacheSchemaRebuildInvalidation verifies the schema-pointer guard: a structurally identical rebuilt *Schema must not collide on the cached plan from the original. TestPlanCache... Pull #740 09 May 2026 08:17PM UTC Nthalk circleci
67.89
1890 plan-cache fix: ExecutePlan uses the plan-bound schema, not p.Schema Plan documents itself as bound to plan.schema — sub-plans, abstractAlternatives, and field defs are all keyed off the *Object pointers from the plan-time schema. ExecutePlan was reading p.... Pull #740 09 May 2026 08:11PM UTC Nthalk circleci
84.07
1887 plan-cache chore: bump Go floor to 1.21 atomic.Uint64 (used in PlanCache) needs Go 1.19+. Raise go.mod to 1.21 and refresh CI: drop the 1.8/1.9/1.11 jobs and the test_without_go_modules path, switch to cimg/go images at 1.21 and 1.26, and replace `go get go... Pull #740 09 May 2026 07:55PM UTC Nthalk circleci
83.71
See All Builds (984)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc