@umnik Ну и не стоит злоупотреблять panic только ради отработки defer, оно отработает в конце функции и/или ближайшем return.
У panic немного иная семантика. Это "исключение", чем-то напоминающее try/catch. Это "аварийный выход" в случаях когда дальнейшая работа невозможна. recover в этом случае позволяет ненадолго вернуться во времени чтобы завернуть стек во что-то читаемое, но, цитирую: "Паника всегда фатальна для вашей программы, это конец." ©️ https://dave.cheney.net/2012/01/18/why-go-gets-exceptions-right
@toby3d
У меня дефер в мейне, потому что архив с данными нужен сразу при запуске