Category "go"

Range on Unbuffered chan with go routines throws all goroutines are asleep - deadlock [duplicate]

I have written a sample program to do file search, it does the search but fails at the end with fatal error: all goroutines are asleep - deadl

Golang Chromedp reload current page until find some html object

chromedp.Navigate(tragetUrl), chromedp.WaitVisible("#button"), chromedp.Click("#button"), Goal: if #button is not exist then reload the current page until butt

How to pass context in golang request to middleware

I am trying to understand how the context introduced in Golang 1.7 works and what would be the appropriate way to pass it to middleware and to a HandlerFunc. Sh

One type is coerced into another, can a method to determine the type of the receiver?

If types T1 and T2 are based on type T, and type T only comes into existence from a NewT1() or NewT2(), is there any way a function func (*T) WhoAmI() can know

How to prevent go mod tidy from looking up a replaced module path

Consider the following setup: go.mod module example.com/main require example.com/sub dummy replace example.com/sub => ./sub sub/go.mod module example.com/s

Cache "go get" in docker build

I want to encapsulate my golang unit testing in a docker-compose script because it depends on several external services. My application has quite a lot of depen

Terratest - How to pass Terraform outputs between functions

I tried to use 'test_structure.SaveTerraformOptions' but it doesn't save resources IDs. For example, I'm running 2 modules - Module 1 creating the networking an

Go closure variable scope

I'm reading 'CreateSpace An Introduction to Programming in Go 2012' and on page 86 I found this evil magic func makeEvenGenerator() func() uint { i := uin

How to transform [4]byte{1,2,3,4} to "1.2.3.4" in Golang?

Here is my code which was used to transfer a byte array to string but it was failed: package main import ( "bytes" "fmt" ) type IPAddr [4]byte // TO

Go << and >> operators

Could someone please explain to me the usage of << and >> in Go? I guess it is similar to some other languages.

Default value in Go's method

Is there a way to specify default value in Go's function? I am trying to find this in the documentation but I can't find anything that specifies that this is ev

Go linter in VS code not working for packages across multiple files?

I have installed the Go extension (version 0.11.4) in Visual Studio Code on MacOS: However, I find that the linter does not 'pick up' functions defined in th

Increase Heap size in GO

Is there a way howto instruct GO runtime to use larger heaps? I am running GO 1.5. My GO process is currently spending 34% of time in GC but it uses unly 1/3 o

How do I reverse an array in Go?

http://play.golang.org/p/W70J4GU7nA s := []int{5, 2, 6, 3, 1, 4} sort.Reverse(sort.IntSlice(s)) fmt.Println(s) // 5, 2, 6, 3, 1, 4 It is hard to unde

Mock functions in Go

I'm puzzled with dependencies. I want to be able to replace some function calls with mock ones. Here's a snippet of my code: func get_page(url string) string {

How to correctly set Mock Row and Query for go-sqlmock

I'm setting up testing in golang. I use go-sqlmock to test mysql connection. But sqlmock.NewRows and mock.ExpectQuery does not work well with error. I want to k

How to sort map by value and if value equals then by key in Go?

I came across a situation where I want to sort a map first by value and if the values are equal then by key in GO. Here is an example of input and expected outp

chromedp - Go - Show invalid printer settings error (-32000) - When setting WithMarginTop

I'm playing around with chromedp and been trying to replicate the functionality in puppeteer node.js but in golang. I'm finding that the same JSON payload to ch

Need help on creating a UDF, returning "Unable to create a new Lua state"

I need to ask a question on creating UDF on aerospike. My configuration is as below: M1 Macbook Pro Docker using latest aerospike My application is running this

How to delete an element from a Slice in Golang

fmt.Println("Enter position to delete::") fmt.Scanln(&pos) new_arr := make([]int, (len(arr) - 1)) k := 0 for i := 0; i < (len(arr) - 1); { if i != p