loading...
Cover image for โ˜„๏ธ How to update version's cache of your package in pkg.go.dev?

โ˜„๏ธ How to update version's cache of your package in pkg.go.dev?

koddr profile image Vic Shรณstak ใƒป2 min read

Introduction

Hi, DEV people! ๐Ÿ˜‰ Sometimes, when you publish a new version of your Go package, pkg.go.dev may still give away an old version for a long time.

This also means, that if other people are using your package, not be able to update to the new version until the cache is updated.

Let's fix this! ๐Ÿ‘Œ

๐Ÿ“ Table of contents

A little story from real-life

That's what we did at Fiber Go web framework a few months ago.

GitHub logo gofiber / fiber

โšก๏ธ Fiber is an Express inspired web framework written in Go with โ˜•๏ธ

After fixed a major bug, a new Fiber version could not be installed on users projects for about a couple of hours, because the cache was not updated. But the press release for the fix was already out (in official repository, Twitter, etc.) and users wanted to update and could not.

Worst-case scenario, isn't it? ๐Ÿ˜จ

โ†‘ Table of contents

Solution

Save this command to a Makefile (or a task manager you're using now):

# ...

update-pkg-cache:
    GOPROXY=https://proxy.golang.org GO111MODULE=on \
    go get github.com/$(USER)/$(PACKAGE)@v$(VERSION)

# ...

And use it, like this:

make update-pkg-cache USER=gofiber PACKAGE=fiber VERSION=1.12.4

Where:

  • USER your GitHub user or organization name
  • PACKAGE a name of your package to update cache
  • VERSION a version number to update cache

It's that simple and clear!

โ†‘ Table of contents

P.S.

If you want more โ†’ write a comment below & follow me. Thanks! ๐Ÿ˜˜

Discussion

pic
Editor guide
Collapse
sudden_dev profile image
Andrey Slotin

Hey Vic, nice write up. I've had the same problem earlier this year and came up with a Github Action that does pretty much the same every time a new package version is released: github.com/marketplace/actions/go-...