* ci: update golangci-lint to v2
update method:
```
golangci-lint migrate
golangci-lint run --fix
```
and fix the last ones manually
* Apply suggestion from @Copilot
* fix tests
---------
Co-authored-by: Hanzo Dev <[email protected]>
As of Go 1.16, the same functionality is now provided by package io or
package os, and those implementations should be preferred in new code.
So replacing all usage of ioutil pkg with io & os.