Feature request: please add golang.org/x/exp/maps to Go test runner

Since generics were introduced maps.Keys() is now available to quickly get a slice of keys of a map (instead of having to iterate over the map and append to a slice). In 1.21, this function was moved from stdlib to golang.org/x/exp/maps. However, the test runners do not currently allow this library as an import.

Would it be possible to get the test runners to allow importing this library?

(cc @junedev @andrerfcsantos)

The test runner supports everything in that “exp” module already. @sbromberger It sounds like that is not working for you. Can you share the code you are trying to run and what (if any) error message you get?

@junedev -

The “Resistor Color” exercise fails on the runner with

resistor_color.go:3:8: no required module provides package golang.org/x/exp/maps; to add it:
	go get golang.org/x/exp/maps
'/usr/local/go/bin/go test --short --json .' returned exit code 1: exit status 1

(passes locally since that module is installed.)

Thanks for taking a look.

I tried resubmitting with go.mod and it failed complaining that there was no go.sum, so I submitted a third time with both go.mod and go.sum and the tests have been running now for ~3 minutes.

Edit: it’s still “processing” about 30 minutes later. I think the runner might be stuck.

I have this in my notes for one of my Go solutions:

/* The go test runner allows *this specific version*
 * $ go get golang.org/x/exp@v0.0.0-20221006183845-316c7553db56
 * go: downloading golang.org/x/exp v0.0.0-20221006183845-316c7553db56
 * go: downgraded golang.org/x/exp v0.0.0-20230315142452-642cacee5cc0 => v0.0.0-20221006183845-316c7553db56
 * $ go mod tidy
 * ...
 * $ exercism submit nth-prime.go go.mod go.sum

Am I off-base June?

Still shows “processing” - I’d hate to think this runner is just spinning, wasting money.