tony-o / raku-fez

This project is for 'fez', raku's cool new shiny dist uploader & manager. If you're a module author you should definitely be using this sweet thang. ;;;;;;;;;;;;;; This project and the underlying infrastructure is supported out of my own pocket and through donations. If you'd like to donate please check here: https://www.patreon.com/oynot
Artistic License 2.0
20 stars 12 forks source link

Please "git tag" your RAKU modules with its versions #108

Open AntonOks opened 11 months ago

AntonOks commented 11 months ago

Can you please "GIT TAG" your RAKU modules with it's version, similar and at the same time you maintain it's "version": "x.y.z" in your META6.json file?

I was told, this will happen "for free" going forward with mi6 anyhow, but for now it would be great if you spend those 2 seconds already now :)

"Tagging" is generally highly appreciated in regards to "reproducible builds" and here especially for the "Rakudo Star" modules

For your latest version change, the command could look like: git tag -a v55 5c89c88 -m "v55 release"

Afterwards please remember to push the new tag to the remote. So something like git push --tags

THANK YOU!

tony-o commented 11 months ago

@AntonOks what does the tag do for us? The code in the zef ecosystem is not updatable/changeable and git is not a source of truth for fez, a reproducable build and/or rakudo star should be pulling source from the ecosystem and not from git.

AntonOks commented 11 months ago

@tony-o What do you mean with "us"? Are you referring to you and others, who develop Raku modules? So then, you refer to "Raku developers". And developers in general do use GIT today. I would guess, 99% of all developers do so. Seems like you do so also. We wouldn't talk here if you wouldn't.

Developers, who use GIT, love it's "commit-based" architecture and features, say branches, tags, ... and the majority of those dev's use tags for their software version management. Also the Raku "core" dev team is doing so. Feel free to ask them what "git tags" do for them.


The Rakudo Star modules were installed in a recursive way, one after the other, without resolving conflicts, "since ever" via https://github.com/rakudo/star/blob/master/lib/install-module.raku! This often resulted in a lot of broken or simply not installed Raku modules. From old PERL5 days, I still call it a "module dependency hell", but that's for another post ;)

As a temp. solution, to get the Star modules installed, I've switched to ZEF, using it's capability to install a local module, say a GIT repo. Again, this is a temp. solution on the way to a reproducible Star build!

Finally, Raku dev's do a lot of different things to keep modules available. ZEF is great, the so called "de-facto standard" installer for Raku. But there are "and always will be" other tools as well.

And also FEZ is new and great. But there are other ways to gain the same. And who knows if FEZ (or ZEF :O ) is there to stay forever... BUT GIT is there to stay for a very very very looong time (for sure much longer than Raku will exist ;) ). And if GIT should ever have a "successor", with the code base it manages today, the "next big thing" will have to bring a migration strategy, which definitely will have to include "tag migrations".


After all this long text, let me ask YOU... why does a "GIT tag" harm YOU?

AntonOks commented 9 months ago

@JJ

Dear @tony-o

Is there any hope you will tag your release(s) soon? I'd consider this "change" as a very minor one.... doable in 5-10 seconds. As said, I'd like to include FEZ into the Star releases, but expect GIT tags to reflect the module releases...

tony-o commented 7 months ago

Yea i can tag releases, not sure what the obnoxious reply about git tagging is about - if it's for star releases then yea that's good enough reason to do so. To start I'll tag the next release coming shortly.

After all this long text, let me ask YOU... why does a "GIT tag" harm YOU?

I don't do things if the only reason is that other people do them. As stated, so star can consume fez easily then that's enough of a reason to tag.

AntonOks commented 7 months ago

Yea i can tag releases, not sure what the obnoxious reply about git tagging is about - if it's for star releases then yea that's good enough reason to do so. To start I'll tag the next release coming shortly.

Great, thanks! I've subscribed for "releases" just now and will happily add your module to the Star modules.txt once there are git tags available.