top

Package gorilla/schema fills a struct with form values.

The basic usage is really simple. Given this struct:

type Person struct {
	Name  string
	Phone string
}

...we can fill it passing a map to the Decode() function:

values := map[string][]string{
	"Name":  {"John"},
	"Phone": {"999-999-999"},
}
person := new(Person)
decoder := schema.NewDecoder()
decoder.Decode(person, values)

This is just a simple example and it doesn't make a lot of sense to create the map manually. Typically it will come from a http.Request object and will be of type url.Values: http.Request.Form or http.Request.MultipartForm:

func MyHandler(w http.ResponseWriter, r *http.Request) {
	err := r.ParseForm()

	if err != nil {
		// Handle error
	}

	decoder := schema.NewDecoder()
	// r.PostForm is a map of our POST form values
	err := decoder.Decode(person, r.PostForm)

	if err != nil {
		// Handle error
	}

	// Do something with person.Name or person.Phone
}

Note: it is a good idea to set a Decoder instance as a package global, because it caches meta-data about structs, and a instance can be shared safely:

var decoder = schema.NewDecoder()

To define custom names for fields, use a struct tag "schema". To not populate certain fields, use a dash for the name and it will be ignored:

type Person struct {
	Name  string `schema:"name"`  // custom name
	Phone string `schema:"phone"` // custom name
	Admin bool   `schema:"-"`     // this field is never set
}

The supported field types in the destination struct are:

* bool
* float variants (float32, float64)
* int variants (int, int8, int16, int32, int64)
* string
* uint variants (uint, uint8, uint16, uint32, uint64)
* struct
* a pointer to one of the above types
* a slice or a pointer to a slice of one of the above types

Non-supported types are simply ignored, however custom types can be registered to be converted.

To fill nested structs, keys must use a dotted notation as the "path" for the field. So for example, to fill the struct Person below:

type Phone struct {
	Label  string
	Number string
}

type Person struct {
	Name  string
	Phone Phone
}

...the source map must have the keys "Name", "Phone.Label" and "Phone.Number". This means that an HTML form to fill a Person struct must look like this:

<form>
	<input type="text" name="Name">
	<input type="text" name="Phone.Label">
	<input type="text" name="Phone.Number">
</form>

Single values are filled using the first value for a key from the source map. Slices are filled using all values for a key from the source map. So to fill a Person with multiple Phone values, like:

type Person struct {
	Name   string
	Phones []Phone
}

...an HTML form that accepts three Phone values would look like this:

<form>
	<input type="text" name="Name">
	<input type="text" name="Phones.0.Label">
	<input type="text" name="Phones.0.Number">
	<input type="text" name="Phones.1.Label">
	<input type="text" name="Phones.1.Number">
	<input type="text" name="Phones.2.Label">
	<input type="text" name="Phones.2.Number">
</form>

Notice that only for slices of structs the slice index is required. This is needed for disambiguation: if the nested struct also had a slice field, we could not translate multiple values to it if we did not use an index for the parent struct.

There's also the possibility to create a custom type that implements the TextUnmarshaler interface, and in this case there's no need to registry a converter, like:

type Person struct {
  Emails []Email
}

type Email struct {
  *mail.Address
}

func (e *Email) UnmarshalText(text []byte) (err error) {
	e.Address, err = mail.ParseAddress(string(text))
	return
}

...an HTML form that accepts three Email values would look like this:

<form>
	<input type="email" name="Emails.0">
	<input type="email" name="Emails.1">
	<input type="email" name="Emails.2">
</form>

Imported by 444 package(s)

  1. bitbucket.org/kirkmcdonald/broken
  2. bitbucket.org/kirkmcdonald/handling/forms
  3. github.com/42wim/matterbridge/matterhook
  4. github.com/9elements/gotoolbox/controllers
  5. github.com/AdoHe/go-restful/examples
  6. github.com/Akagi201/learning-golang/src/http
  7. github.com/AlexKomrakov/gohub/server
  8. github.com/AlexSnet/go-restful/examples
  9. github.com/BTBurke/twiml
  10. github.com/CptSpaceToaster/adventurebot
  11. github.com/CptSpaceToaster/slackbot
  12. github.com/Crockeo/cerekhillen/controllers
  13. github.com/Crockeo/cerekhillen/middleware
  14. github.com/DrewWeth/eta/src/app/controllers/commentcontroller
  15. github.com/DrewWeth/eta/src/app/controllers/postcontroller
  16. github.com/ElectronicsExtreme/exeoauth2/handler/change_password
  17. github.com/ElectronicsExtreme/exeoauth2/handler/user
  18. github.com/EverythingMe/vertex
  19. github.com/FSX/WAD/beep
  20. github.com/FurqanSoftware/papyrus/ui
  21. github.com/Ishukone/codetainer
  22. github.com/Ivan8R/goShop
  23. github.com/JiscRDSS/rdss-archivematica-channel-adapter/amclient
  24. github.com/LastZactionHero/graynote_server
  25. github.com/Leon2012/go-restful/examples
  26. github.com/Logiraptor/mosaic
  27. github.com/LunaNode/lobster
  28. github.com/LunaNode/lobster/core/support
  29. github.com/Manbeardo/eventreporter
  30. github.com/Manbeardo/go-restful/examples
  31. github.com/Misrab/bookshare-backend-api/handlers
  32. github.com/Misrab/goapi/handlers
  33. github.com/Moddus/go-restful/examples
  34. github.com/MrToy/business
  35. github.com/NYC-Camp/authenticator/libuser
  36. github.com/ONSdigital/go-ns/validator
  37. github.com/Omie/messages/api/v1/messages
  38. github.com/Orion90/guessify
  39. github.com/OsvaldoTCF/o2go/controllers
  40. github.com/OsvaldoTCF/order2go/controllers
  41. github.com/PepperSalt42/api
  42. github.com/ReSc/godel/core/mvc
  43. github.com/ReneKroon/go-restful/examples
  44. github.com/RobotsAndPencils/marvin
  45. github.com/StefanKjartansson/stadfangaskra-rest/rest
  46. github.com/SvenDowideit/codetainer
  47. github.com/Throckmortra/go-restful/examples
  48. github.com/TimothyJones/trec-liveqa-server
  49. github.com/YouthBuild-USA/godata/forms
  50. github.com/Zenithar/api/utils
  51. github.com/aarondl/cinotify/coveralls
  52. github.com/abadcafe/kellyframework
  53. github.com/abci/go-restful/examples
  54. github.com/abh/dellingr
  55. github.com/abhiunc/go-restful/examples
  56. github.com/adohe/go-restful/examples
  57. github.com/agamble/lockbox
  58. github.com/aiyi/go-restful/examples
  59. github.com/alaska/go-restful/examples
  60. github.com/alecthomas/rapid
  61. github.com/alesstimec/juju/apiserver
  62. github.com/alexkomrakov/gohub/server
  63. github.com/alexsaveliev/vcsstore/server
  64. github.com/alt234/affadmin-go/controllers
  65. github.com/alt234/affadmin/controllers
  66. github.com/aluzzardi/go-restful/examples
  67. github.com/ammario/paypal-ipn
  68. github.com/anthonynsimon/parrot/parrot-api/auth
  69. github.com/aquilax/novigeroi-go
  70. github.com/arjandepooter/slack-exact
  71. github.com/athega/whistler
  72. github.com/augustoroman/handler
  73. github.com/axw/juju/apiserver
  74. github.com/barnslig/oauth-account-manager
  75. github.com/bbuck/graphql-go-handler
  76. github.com/bcampbell/superfastmatch/document
  77. github.com/bcampbell/superfastmatch/posting
  78. github.com/beati/mortg-exp/mortg-exp-gameserver
  79. github.com/bkputnam/gamestatemanager
  80. github.com/blockloop/boar
  81. github.com/bmbernie/utron/fixtures/todo/controllers
  82. github.com/bosssauce/ponzu/system/addon
  83. github.com/bosssauce/ponzu/system/admin
  84. github.com/bosssauce/ponzu/system/db
  85. github.com/brendandburns/go-restful/examples
  86. github.com/bulletind/khabar-admin/handlers/preferences
  87. github.com/bussiere/LDVLH
  88. github.com/c0gent/unframed
  89. github.com/caesarxuchao/go-restful/examples
  90. github.com/caikaijie/igo-middleware/rest
  91. github.com/carbocation/go.graf
  92. github.com/carbocation/go.graf/example
  93. github.com/cbroglie/go-restful/examples
  94. github.com/cedmundo/resty
  95. github.com/celeskyking/codetainer
  96. github.com/changboter/go-restful/examples
  97. github.com/chaosknight/aha/json_service
  98. github.com/chrisscott/flippy
  99. github.com/clsung/go-restful/examples
  100. github.com/cocoonlife/gop
  101. github.com/codetainerapp/codetainer
  102. github.com/coreos/cetcd
  103. github.com/cptspacetoaster/adventurebot
  104. github.com/crockeo/cerekhillen/controllers
  105. github.com/crockeo/cerekhillen/middleware
  106. github.com/cwc/asset-tracker
  107. github.com/cwc/webconf
  108. github.com/davemachado/public-api
  109. github.com/davidbogue/lucid/controllers
  110. github.com/dbtleonia/bowl
  111. github.com/ddysher/go-restful/examples
  112. github.com/deet/govenmo/local_sandbox
  113. github.com/derekdowling/bursa/controller/home
  114. github.com/devchakraborty/stokr/server
  115. github.com/diegogub/framgo
  116. github.com/dimiro1/experiments/bestpractices
  117. github.com/dimitern/juju/apiserver
  118. github.com/dodohq/images-store
  119. github.com/dominicphillips/slackbot
  120. github.com/donovanhide/superfastmatch/document
  121. github.com/donovanhide/superfastmatch/posting
  122. github.com/donovanhide/superfastmatch/query
  123. github.com/dooferlad/juju/apiserver
  124. github.com/drewweth/eta/src/app/controllers/commentcontroller
  125. github.com/drewweth/eta/src/app/controllers/postcontroller
  126. github.com/duane/go-restful/examples
  127. github.com/duanebester/go-restful/examples
  128. github.com/edoardo849/go-restful/examples
  129. github.com/elivoa/got/core/lifecircle
  130. github.com/elivoa/got/coreservice/coercion
  131. github.com/emicklei/go-restful/examples
  132. github.com/eremetic-framework/eremetic/server
  133. github.com/ericsnowcurrently/juju/apiserver
  134. github.com/ernestoalejo/closurer/app
  135. github.com/ernestokarim/closurer/app
  136. github.com/ernestokarim/serverlib/app
  137. github.com/evq/go-restful/examples
  138. github.com/eyesight-tech/go-restful/examples
  139. github.com/fadib/thesrc/api
  140. github.com/fadib/thesrc/app
  141. github.com/fallenhitokiri/leeroyci/web
  142. github.com/faryon93/util
  143. github.com/faxal/idp/providers/form
  144. github.com/fitstar/slackbot
  145. github.com/fladz/slack-oncall-command
  146. github.com/fmpwizard/go-restful/examples
  147. github.com/foxycoder/goqu
  148. github.com/franciscocpg/go-restful/examples
  149. github.com/frankban/juju/apiserver
  150. github.com/fromkeith/gorest
  151. github.com/gaego/auth/dev
  152. github.com/gaego/auth/password
  153. github.com/gaigepr/list-app/handlers
  154. github.com/gdamore/go-restful/examples
  155. github.com/gedn/gowiki
  156. github.com/genghisjahn/slackbot
  157. github.com/gerbenjacobs/go-restful/examples
  158. github.com/gernest/utron/fixtures/todo/controllers
  159. github.com/gernest/zedlist/routes/dash
  160. github.com/ggitau/google-go
  161. github.com/gistia/slackbot
  162. github.com/gnotclub/albumify-next/controllers
  163. github.com/go-authboss/authboss-sample
  164. github.com/go-carrot/fsm-twilio
  165. github.com/go-web/httpio
  166. github.com/goanywhere/rex/form
  167. github.com/gocarina/pi
  168. github.com/gopheracademy/slackbot
  169. github.com/gophergala/gotoolbox/controllers
  170. github.com/gophergala2016/papyrus/ui
  171. github.com/guilhermebr/slackbot
  172. github.com/gust1n/thesrc/api
  173. github.com/gust1n/thesrc/app
  174. github.com/guus-vanweelden/zedlist/routes/dash
  175. github.com/hackclub-archive/orbit/api
  176. github.com/hackclub/orbit/api
  177. github.com/hackedu/orbit/api
  178. github.com/halk/in-common/api
  179. github.com/hariharan-uno/athena
  180. github.com/hariharan-uno/webhasher
  181. github.com/hashtock/hashtock-go/webapp
  182. github.com/hc5duke/bones/web/forms
  183. github.com/henrylee2cn/go-restful/examples
  184. github.com/heridev/gophergala_repositories/gotoolbox/controllers
  185. github.com/hjr265/loadcat/ui
  186. github.com/hnlq715/doggy
  187. github.com/hoenirvili/juju/apiserver
  188. github.com/housinganywhere/handler
  189. github.com/howbazaar/juju/apiserver
  190. github.com/huichen/aha/json_service
  191. github.com/ian-kent/go-webapp/render
  192. github.com/ian-kent/service.go/web/render
  193. github.com/idebruijn/go-restful/examples
  194. github.com/igungor/cmd/filmdizibot
  195. github.com/ilgooz/formutils
  196. github.com/itshosted/mcore/valid/valid
  197. github.com/jabong/go-restful/examples
  198. github.com/jandre/codetainer
  199. github.com/jasonrdsouza/foosball_monkey
  200. github.com/javinc/playgo/goryo/controllers
  201. github.com/javinc/puto
  202. github.com/jbaikge/ingress-inventory
  203. github.com/jbert/gop
  204. github.com/jcharlesworth/thesrc/api
  205. github.com/jcharlesworth/thesrc/app
  206. github.com/jeeyoungk/reversi/web
  207. github.com/jefferai/go-restful/examples
  208. github.com/jelder/bownse
  209. github.com/jessewalia/gocode
  210. github.com/jetsanix/go-restful/examples
  211. github.com/jgastal/goplay
  212. github.com/jimmy-go/srest
  213. github.com/jinuljt/goformvalidator
  214. github.com/jirwin/quadlek/quadlek
  215. github.com/jmoiron/gowiki
  216. github.com/johnnylee/goutil/httprequest
  217. github.com/jonas747/yagpdb/web
  218. github.com/jonaswouters/goclerk/routers/api/v1/contact
  219. github.com/jonaswouters/goclerk/routers/api/v1/organization
  220. github.com/joncalhoun/sockets
  221. github.com/josephyzhou/go-restful/examples
  222. github.com/joshheinrichs/geosource/server/api
  223. github.com/jschalkwijk/GolangBlog/admin/model/pages
  224. github.com/jsimnz/go-restful/examples
  225. github.com/jskrepnek/goldie
  226. github.com/jstoja/api
  227. github.com/juju/juju/apiserver
  228. github.com/kat-co/juju/apiserver
  229. github.com/katco-/juju/apiserver
  230. github.com/kch42/mailremind
  231. github.com/kenng/authboss-sample
  232. github.com/ketchuphq/ketchup/server/api
  233. github.com/kiwih/heyfyi-example/heyfyiserver
  234. github.com/kiwih/heyfyi/heyfyiserver
  235. github.com/kokeroulis/modip/api
  236. github.com/kouphax/dopi
  237. github.com/kyleterry/sufr/app
  238. github.com/lavab/api/utils
  239. github.com/leonardoeloy/persona
  240. github.com/lexandro/go-restful/examples
  241. github.com/liujianping/go-restful/examples
  242. github.com/lixiangzhong/ostent/params
  243. github.com/luismiramirez/ok-go/routes
  244. github.com/lunanode/lobster
  245. github.com/lunanode/lobster/core/support
  246. github.com/m0sth8/go-restful/examples
  247. github.com/maddevsio/comedian/api
  248. github.com/makyo/goexplore/gorillastat/handlers
  249. github.com/mantasmatelis/stokr/server
  250. github.com/mathcamp/go-restful/examples
  251. github.com/mattermost/mattermost-server/web
  252. github.com/mattwallington/perfmon
  253. github.com/mbruzek/juju/apiserver
  254. github.com/megadeezl/go-restful/examples
  255. github.com/metcalf/saypi/say
  256. github.com/mikedanese/go-restful/examples
  257. github.com/milliant/go-restful/examples
  258. github.com/mirceamironenco/thesrc/api
  259. github.com/mirceamironenco/thesrc/app
  260. github.com/misrab/bookshare-backend-api/handlers
  261. github.com/misrab/goapi/handlers
  262. github.com/misrab/stellar-watch
  263. github.com/mmcfarland/prc
  264. github.com/moul/sapin/cmd/appspot
  265. github.com/moul/showcase
  266. github.com/mpdroog/rootdev-home
  267. github.com/mpnordland/blgr/posts
  268. github.com/mprobst/blog
  269. github.com/mshockwave/Share-Sound-API-Server/handlers
  270. github.com/mshockwave/share-sound-api-server/handlers
  271. github.com/mtojek/go-restful/examples
  272. github.com/muesli/go-restful/examples
  273. github.com/natefinch/juju/apiserver
  274. github.com/negz/kuberos
  275. github.com/nicomo/abacaxi/controllers
  276. github.com/nicowernli/gorequest
  277. github.com/niedbalski/juju/apiserver
  278. github.com/niels-s/go-restful/examples
  279. github.com/nilslice/cms/system/addon
  280. github.com/nilslice/cms/system/db
  281. github.com/ninjasphere/go-daikin-ac
  282. github.com/nsan1129/unframed
  283. github.com/nucleardump/go-wires-old/controllers
  284. github.com/nucleardump/go-wires/models
  285. github.com/nucleartide/go-wires/models
  286. github.com/nucleartide/mango/models
  287. github.com/nullbus/go-restful/examples
  288. github.com/nyaruka/courier/handlers
  289. github.com/nyc-camp/authenticator/libuser
  290. github.com/nytopop/utron/fixtures/todo/controllers
  291. github.com/ohlinux/go-restful/examples
  292. github.com/ojrac/asphodel-go/methods
  293. github.com/omie/messages/api/v1/messages
  294. github.com/opbk/openbook-landing
  295. github.com/openshift/go-restful/examples
  296. github.com/orian/authboss-sample
  297. github.com/ostrost/ostent/params
  298. github.com/outself/go-restful/examples
  299. github.com/oxfeeefeee/appgo/server
  300. github.com/paceline/autosite-go/autosite
  301. github.com/parrot-translate/parrot/parrot-api/auth
  302. github.com/paultyng/resttransport/echotransport
  303. github.com/pavelbyles/Inforce
  304. github.com/perrito666/juju/apiserver
  305. github.com/peterskeide/bones/web/forms
  306. github.com/pgu/go-restful/examples
  307. github.com/phonkee/gopypi
  308. github.com/piinecone/handler
  309. github.com/pingcap/etcdv3-gateway/gateway
  310. github.com/plouc/gonode/plugins/api
  311. github.com/plouc/gonode/plugins/guard
  312. github.com/plouc/gonode/plugins/search
  313. github.com/plouc/pompoco
  314. github.com/plouc/pompoco/projects
  315. github.com/plouc/pompoco/users
  316. github.com/pnelson/httpc
  317. github.com/polyglottis/platform/frontend/handle
  318. github.com/ponzu-cms/ponzu/system/addon
  319. github.com/ponzu-cms/ponzu/system/admin
  320. github.com/ponzu-cms/ponzu/system/api
  321. github.com/ponzu-cms/ponzu/system/db
  322. github.com/porjo/go-restful/examples
  323. github.com/qingchengnus/cab-republic
  324. github.com/qor/qor-example/app/orders
  325. github.com/quintans/maze
  326. github.com/rande/gonode/core/guard
  327. github.com/rande/gonode/modules/search
  328. github.com/reedobrien/go-restful/examples
  329. github.com/rentongzhang/go-restful/examples
  330. github.com/resc/godel/core/mvc
  331. github.com/retro486/go-asset-repo/assets
  332. github.com/retro486/go-asset-repo/auth
  333. github.com/rhinoman/go-restful/examples
  334. github.com/rickt/slack-flipper
  335. github.com/rickt/slack-team-directory-bot
  336. github.com/riftbit/go-vapi
  337. github.com/rkorkosz/goauth
  338. github.com/rlguarino/urlshortener/frontend
  339. github.com/rm8x/golang-demoserver
  340. github.com/rmulley/jc-hasher/src
  341. github.com/robdimsdale/raspberryfly
  342. github.com/robzienert/authboss-sample
  343. github.com/rosenhouse/cnsim/handlers
  344. github.com/runemadsen/ok-go/routes
  345. github.com/runtakun/go-api-generation-sample/templates
  346. github.com/runtakun/go-api-generation-sample/test/gen
  347. github.com/s41nn0n/go-restful/examples
  348. github.com/sabzil/ladybug
  349. github.com/sabzil/ladybug/interfacer
  350. github.com/samertm/githubstreaks
  351. github.com/schleppy/go-restful/examples
  352. github.com/scristofari/golang-poll/api
  353. github.com/scristofari/translate
  354. github.com/sebber/go-wiki-web
  355. github.com/shantanuraj/bookshelf-api
  356. github.com/shawnps/mappuri
  357. github.com/silvasur/mailremind
  358. github.com/sirsean/packhunter/api
  359. github.com/sirsean/textback/sms
  360. github.com/sjhitchner/go-restful/examples
  361. github.com/skatsuta/codetainer
  362. github.com/slspeek/go-restful/examples
  363. github.com/smarterclayton/go-restful/examples
  364. github.com/smithfox/beego/context
  365. github.com/sogko/handler
  366. github.com/sourcegraph/thesrc/api
  367. github.com/sourcegraph/thesrc/app
  368. github.com/sourcegraph/vcsstore/server
  369. github.com/spuranam/trifles/mpush
  370. github.com/squishyent/go-restful/examples
  371. github.com/stackdocker/cloudfoundry-broker-kubernetes-docker/api
  372. github.com/stgraber/juju/apiserver
  373. github.com/straumur/straumur
  374. github.com/stuart-warren/go-restful/examples
  375. github.com/studygolang/studygolang/src/logic
  376. github.com/stunndard/lobster
  377. github.com/subuk/vmango/src/vmango/handlers
  378. github.com/sunfmin/batchbuy
  379. github.com/tehleach/go-restful/examples
  380. github.com/theplant/gmo
  381. github.com/timtadh/cc-survey/models
  382. github.com/timtadh/cc-survey/views
  383. github.com/tj/auth/dev
  384. github.com/tj/auth/password
  385. github.com/topher200/forty-thieves/handlers
  386. github.com/topher200/forty-thieves/webcmd/handlers
  387. github.com/tortuoise/fiandsri
  388. github.com/tortuoise/wattwerks
  389. github.com/trendmicro/gop
  390. github.com/turnkey-commerce/go-ping-sites/controllers
  391. github.com/ubccr/mokey
  392. github.com/uvelichitel/nezabu/go.graf
  393. github.com/uvelichitel/nezabu/go.graf/example
  394. github.com/vikstrous/go-restful/examples
  395. github.com/vimdude/go-restful/examples
  396. github.com/wallyworld/juju-snap/apiserver
  397. github.com/wallyworld/juju/apiserver
  398. github.com/wanghe4096/go-restful/examples
  399. github.com/wangyibin/echoswg
  400. github.com/wangyibin/gonext
  401. github.com/wawandco/gontact/handlers
  402. github.com/wcl48/go-api-generation-sample/templates
  403. github.com/wisedog/ladybug
  404. github.com/wisedog/ladybug/interfacer
  405. github.com/wolfeidau/assembly/api
  406. github.com/wolfeidau/authinator/api
  407. github.com/wolfeidau/proxy-auth
  408. github.com/wongak/go-restful/examples
  409. github.com/wuub/go-restful/examples
  410. github.com/wvdeutekom/GoQuotes/api
  411. github.com/xjdrew/goweb/app/controllers
  412. github.com/yargevad/httpin
  413. github.com/zach-klippenstein/goregen-demo
  414. github.com/zdebeer99/webapp
  415. github.com/zdebeer99/weblib
  416. github.com/zedio/zedlist/modules/forms
  417. github.com/zenithar/api/utils
  418. github.com/zethra/Name-Tag-Auto-Printing-Go/src
  419. github.com/zhymin77/go-restful/examples
  420. github.com/zond/goaeoas
  421. github.com/zykzhang/practice/pacpackge/gorilla-schema
  422. gopkg.in/Nainterceptor/go-restful.v1/examples
  423. gopkg.in/emicklei/go-restful.v1/examples
  424. gopkg.in/evq/go-restful.v1/examples
  425. gopkg.in/goanywhere/web.v0/form
  426. gopkg.in/jabong/go-restful.v1/examples
  427. gopkg.in/jimmy-go/srest.v0
  428. sourcegraph.com/sourcegraph/sourcegraph/app/internal/schemautil
  429. sourcegraph.com/sourcegraph/sourcegraph/errcode
  430. sourcegraph.com/sourcegraph/sourcegraph/httpapi
  431. sourcegraph.com/sourcegraph/sourcegraph/pkg/errcode
  432. sourcegraph.com/sourcegraph/sourcegraph/pkg/handlerutil
  433. sourcegraph.com/sourcegraph/sourcegraph/ui
  434. sourcegraph.com/sourcegraph/sourcegraph/util/errcode
  435. sourcegraph.com/sourcegraph/sourcegraph/util/handlerutil
  436. sourcegraph.com/sourcegraph/thesrc/api
  437. sourcegraph.com/sourcegraph/thesrc/app
  438. sourcegraph.com/sourcegraph/vcsstore/server
  439. src.sourcegraph.com/apps/tracker
  440. src.sourcegraph.com/sourcegraph/app/internal/schemautil
  441. src.sourcegraph.com/sourcegraph/errcode
  442. src.sourcegraph.com/sourcegraph/httpapi
  443. src.sourcegraph.com/sourcegraph/ui
  444. src.sourcegraph.com/sourcegraph/util/handlerutil

Imported only in test by 5 package(s)

  1. github.com/PuerkitoBio/httpparms
  2. github.com/keegancsmith/go-sourcegraph/sourcegraph
  3. github.com/marciol/go-sourcegraph/sourcegraph
  4. github.com/rande/gonode/modules/api
  5. github.com/salsita/go-sprintly/sprintly