filmov
tv
Learning Golang: Dependencies, Modules and How to manage Packages

Показать описание
Welcome! Let's learn about Go Modules!
* Module path: indicates how our package will be imported by our users, and
* Dependency Requirements, indicate the packages we depend on.
"Dependency Requirements" not only covers the actual packages but also ways to "Replace" or "Exclude" them, using the corresponding directives:
* Replace: allows replacing a version of a dependency with another one, for example in cases where local deployment is still happening or when working for forked versions; and
* Exclude: allows excluding a version of a dependency from use, for example in cases those versions include security issues or bugs.
"Go Modules" were introduced in Go 1.11 and enabled by default in Go 1.16, they use "Semantic Versioning" (SemVer) as the main versioning system, were versions are defined using three numbers: Major.Minor.Patch.
The Go toolchain allows interacting with Modules via the "mod" command, but not only that other commands like "get" or "build" are also compatible with Go Modules, the most used commands are:
* "go mod tidy" to remove unused dependencies.
---
Real life examples of versioning Go Modules:
Tools:
---
00:00 - Start
00:08 - What is a Go Module?
03:58 - Versioning Go Modules: Path or Branch
05:29 - Demo, go mod init
08:59 - Module upgrade and downgrade
13:18 - Requesting available updates
14:19 - Versioning: Real life examples
15:26 - Go Modules: Conclusion and parting words
---
Who am I:
Hello👋🏼! I'm Mario, a Hands-on Software Architect and Lead Backend Engineer with more than 16 years of professional experience building all kinds of software including on-premise Industrial Automation Systems, Linux Accessibility Desktop and Browser Components as well as Distributed Advertising Microservices.
Every week I will share with you different topics I've learned while working for small startups and large companies including the processes I've followed over the years for successfully delivering complex enterprise systems from start to end.
Subscribe if you like Software Development, Software Architecture and Systems Design!
Keep it up. Don't give up!
#golang #tutorial #programming
--- Our affiliate links below
--- Our Vlog Channel
* Module path: indicates how our package will be imported by our users, and
* Dependency Requirements, indicate the packages we depend on.
"Dependency Requirements" not only covers the actual packages but also ways to "Replace" or "Exclude" them, using the corresponding directives:
* Replace: allows replacing a version of a dependency with another one, for example in cases where local deployment is still happening or when working for forked versions; and
* Exclude: allows excluding a version of a dependency from use, for example in cases those versions include security issues or bugs.
"Go Modules" were introduced in Go 1.11 and enabled by default in Go 1.16, they use "Semantic Versioning" (SemVer) as the main versioning system, were versions are defined using three numbers: Major.Minor.Patch.
The Go toolchain allows interacting with Modules via the "mod" command, but not only that other commands like "get" or "build" are also compatible with Go Modules, the most used commands are:
* "go mod tidy" to remove unused dependencies.
---
Real life examples of versioning Go Modules:
Tools:
---
00:00 - Start
00:08 - What is a Go Module?
03:58 - Versioning Go Modules: Path or Branch
05:29 - Demo, go mod init
08:59 - Module upgrade and downgrade
13:18 - Requesting available updates
14:19 - Versioning: Real life examples
15:26 - Go Modules: Conclusion and parting words
---
Who am I:
Hello👋🏼! I'm Mario, a Hands-on Software Architect and Lead Backend Engineer with more than 16 years of professional experience building all kinds of software including on-premise Industrial Automation Systems, Linux Accessibility Desktop and Browser Components as well as Distributed Advertising Microservices.
Every week I will share with you different topics I've learned while working for small startups and large companies including the processes I've followed over the years for successfully delivering complex enterprise systems from start to end.
Subscribe if you like Software Development, Software Architecture and Systems Design!
Keep it up. Don't give up!
#golang #tutorial #programming
--- Our affiliate links below
--- Our Vlog Channel
Комментарии