Open emlun opened 5 years ago
Thanks @emlun for the work :) I tried it quickly and it is sooooo much faster! And it worked out of the box on my current workspace as expected. I also looked a bit at the code and it looks well done, congrats!
Concerning the future, I think your version would be better suited than this one, and having a number (2) in the name does not look nice and is definitively not helpful. For me, you can take the gws
name for continuing with your version (except if you want to give it is own name).
This bash version should stay here because:
So what I would suggest, once your project is ready to be released, is to put a notice at the top of this readme explaining that this project his kept here for historical reason and the development is continuing on your own project with a link to it. Then you can ask the linux distros packages to be build on your new version. Hopefully the fact that you are the current maintainer and that there is this message saying that I agree with this will be enough to convince them to do the change.
And if I may suggest something: do not get too attached to backward compatibility. The .projects.gws
file syntax was build out of nowhere with bash limitations in mind. Use something like yaml
, it will offer much more flexibility, readability, syntax coloration and so on. And even the name .projects.gws
does not sound cool. .gws
would be far better and simplier.
repos:
my/repo: https://…
my/other_repo: https://…
a_repo/with_upstream:
origin: https://…
upstream: https://…
another/one:
branch1: https://…
branch2: https://…
This if far better no? :smile:
Thanks @StreakyCobra! I agree with you on all points. I'm not quite sure what to do about the name - I do want to distribute the binary as gws
and not gws2
, but I also would like to keep the project named gws2
to disambiguate it from the original. In the end I might go with renaming it to gws
to avoid confusion between the project name and binary name, but I don't know. Maybe keep it gws2
and just encourage packagers to rename it to gws
when distributed.
As for the config file format, if you look closely at the sources you'll see I've already prepared for that - the config file parsers module is named gws2::config::parse::legacy
. :wink: I wanted to start off backwards-compatible so it could be a drop-in replacement, but I agree on moving to a more capable config format in future versions.
Why do you want to disambiguate it from the original? As you made it backward compatible, it is not a totally new project, it is a rewrite in another language. This is technical choice, the usage stays the same. You can simply take the name gws
and continue with it :smiley: But this choice is yours at the end, just my humble opinion!
As for the config file format, if you look closely at the sources you'll see I've already prepared for that - the config file parsers module is named gws2::config::parse::legacy. wink I wanted to start off backwards-compatible so it could be a drop-in replacement, but I agree on moving to a more capable config format in future versions.
Amazing :1st_place_medal:
True, good points. :slightly_smiling_face: I just pushed out an AUR package, and in packaging it with shell completion I decided it probably does make the most sense to rename it to gws
. So now I've renamed everything except for the GitHub repository to that. :smile: I think I'll let gws2
remain in the repo name and AUR package name for now, and rename those in conjunction with the 1.0 release.
Hello gws users!
For a while now I've been working on porting gws to a language easier to maintain, and I'm pleased to announce that my Rust port gws2 is now complete enough to let it try its wings in the real world and see what breaks. It's meant to be a backwards compatible drop-in replacement, but hasn't yet reached feature parity with the original. Still, the most important commands (
status
,update
,fetch
,ff
) are implemented and seem to be working reliably. See the project readme for a fuller description of the feature differences. I hope to close the gap soon enough, and of course you're all invited to help.I did include a link above, but here it is more prominently: https://github.com/emlun/gws2
This is a beta, so please be prepared that there might be some bugs. Thanks for trying it out if you do, and if not, thanks for using gws!