cget icon indicating copy to clipboard operation
cget copied to clipboard

Support for other version control systems.

Open larzw opened this issue 6 years ago • 3 comments

Hi,

I like the syntactic sugar you have for packages from github. Would you accept a PR for something similar for bitbucket and gitlab? Maybe something like...

  • cget install jgm/cmark --github which would be the same as cget install jgm/cmark
  • cget install jgm/cmark --bitbucket
  • cget install jgm/cmark --gitlab

Let me know and I can take a peek at it.

larzw avatar Nov 05 '17 00:11 larzw

I am thinking something like doing:

  • cget install gh/jgm/cmark for github
  • cget install bb/jgm/cmark for bitbucket
  • cget install gl/jgm/cmark for gitlab

This actually downloads the source tarballs, and doesn't actually use the version control directly. All these services above provide such tarball downloads, so its just a matter of mapping to that url, which happens here. It could be easily extended to support such formats.

pfultz2 avatar Nov 05 '17 03:11 pfultz2

@pfultz2,

Ok great! I like your syntax better. What are your thoughts on switching to a uri? For example, cget install gh?user=jgm&repo=cmark or cget install bb?user=jgm&repo=cmark&tag=1.0.0 or cget install www.foo.com?user=jgm&repo=cmark&branch=bar

it's a bit more verbose, but potentially more general.

Also, do you want to keep,

cget install jgm/cmark defaulted to github? Otherwise it's a breaking change.

Thanks!

larzw avatar Nov 05 '17 16:11 larzw

What are your thoughts on switching to a uri?

I think it will make it harder to have recipes override it. Also, the logic for checking if a dependency is installed would be more complicated as well.

Also, do you want to keep, cget install jgm/cmark defaulted to github?

Yes I do. Maybe in the future there could be a configuration to change the default. I also wonder if the names should drop the gh/, bb/, or gl/ in general. So then it would work like this:

cget install gl/owner/repo
cget list
owner/repo

That is the name of the package would drop the prefix. I am not sure, as maybe there could be conflicts(but could be resolved by using an alias).

pfultz2 avatar Nov 06 '17 16:11 pfultz2