I recently found out I hadstuff onhttps://pkg.go.dev/,the Go package repository.
Apparently the repository is updated automatically from:https://proxy.golang.org/, which indexes and adds Go packages it finds - and yes commands/tools/utilities are packages in Go.
So imagine my surprise, whenmy vanity search yielded results:
- punyencode
- punydecode
- testdemo
I love contributing to open source and I do much of mywork in the open, meaning most of what I do is on GitHub. I haveseveral Perl distributions on CPAN and I believe this was what surprised me.CPAN/PAUSE, likeRubygems,NPM,NuGET,Crates etc. all require explicit action in order to have your work included - with Go this is different - apparently.
So I do not mind my stuff being available onhttps://pkg.go.dev/, but theseprojects where never intended for publication, yes they are available publicly, but I have not put in any effort to make them comply with Go package guidelines.
Now that they are out there might as well present them. Lets start from the back of the list
testdemo (orgo-test-demo) is a basic repository, which can be used to test or demogotest
(orgo test
for that matter). I wrote upa blog post about the colourful toolgotest
, which is an implementation mimicking the regulargo test
command, which add colours, this was my contribution to demonstrate the use.
punyencode and it's cousinpunydecode were both experiments to learn writing Go command line tools and implementing basic testing. Both are available on GitHub and are currently archived, since they have been deprecated forpunycode, a tool which can handle both encoding and decoding punycode, since parsing a string can tell if it alreadypunycode or not.
So these packages listed onhttps://pkg.go.dev/, but as you can see they do not bring much value, if any, to the Go ecosystem etc. apart from increasing the number of available packages.
Retracting a module fromhttps://pkg.go.dev/ is possible according tothe documentation, but the process seem pretty complex, so my recommendation it to perhaps make you repositories private, until you are ready for public scrutiny.
You can also explicitlyrequest to have a package added, which seems like a more natural approach since it resembles the publication process of the other package repositories out there. And perhaps I should to this forpunycode, which is the replacement forpunyencode andpunydecode, but then again - it was also just a learning experiment.
I would love to contribute to the Go package ecosystem at some point, when I had something of value and something worthwhile sharing, but for know it seems that just putting stuff on GitHub does the job, even though I am unsure as two how and when this is done, since all my Go repositories are not there at the time of writing, well it is not that big a deal since my stuff is made in the open and it would require for somebody to search for my name - but for somebody else, I guess this could be.
This is just my heads-up - if you experimenting with Go in the open, please be aware that you might be contributing tohttps://pkg.go.dev/, which might not be what you intended - I guesshttps://pkg.go.dev/ is more a indexer acting as a repository, than a repository which is also indexed.
Top comments(0)
For further actions, you may consider blocking this person and/orreporting abuse