In Go 1.14, module support will be considered ready for production use, and all users will be encouraged to migrate to modules from other dependency management systems.
В Avito много команд, пишущих на Go свои сервисы и библиотеки. Некоторая часть из них всё ещё использует dep для управления зависимостями и/или даже старые версии компилятора.
На этом коротком семинаре я хочу показать
- почему нам стоит прислушаться к совету Russ Cox
- что поддерживать версии компилятора в актуальном состоянии это совсем не сложно
- и что перейти на
go mod
проще простого, и даже наш любимый Kubernetes сделал это ещё год назад
- GOPATH и миф о стабильном мастере
- GO15VENDOREXPERIMENT и зоопарк
- GO111MODULE и трудности перехода
go env -w GOPRIVATE=go.avito.ru
илиecho 'export GOPRIVATE=go.avito.ru' | tee -a ~/.bash_profile ~/.zshrc
.- go mod init.
- Удалить legacy.
- Обновить Dockerfile.
- Proposal: Versioned Go Modules
- Go & Versioning
- Go 1.11 Modules
- Go modules by example is a series of work-along guides
- Selected Go-internal packages factored out from the standard library
- Versioned Go Prototype
- A wrapper around the go tool that automatically sets GOPATH
- Make temporary edits to your Go module dependencies
- go mod vs dep, преимущества + терминология (проект, модуль, пакет)
- основные команды и кейсы для их использования, сравнение с dep
- совмещение vX/vY, replace для локальной разработки
made with ❤️ for everyone