New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
proposal: cmd/go: support darcs vcs #44471
Comments
Are there any source code hosting sites that support Darcs? |
@ianlancetaylor currently I only know of https://hub.darcs.net/ |
A VCS with a similar model to Darcs is Pijul, with hosting at https://nest.pijul.com/. |
I would greatly appreciate Darcs support as well. |
Is there any way to support Golang modules in either Darcs or Pijul without the core Go team adding support? Didn’t know if there were work-around for non-native VCSes? I would think perforce falls into this category too. |
it's possible: the go command understands a "mod" vcs where it will request directly from a proxy. As long as the proxy can get the code and zip it up correctly (and respond to the metadata requests) then it will work |
Yes, that makes sense. Thank you for reminding me of that functionality |
For anyone interested you can find more details with Edit: More documentation is in |
So, I am at a loss for how this would work. I have a repository here. When I try to |
There are two approaches. The related documentation is in The "vcs" approachSupport for the darcs version control system should be added to the go command [*]. Additionally one of the following should happen: the go command should be taught to specially handle the hub.darcs.net code hosting service [**], or the hub.darcs.net repository URL should serve the "vcs" variant of the [*] The go command only knows of these version control systems: bzr, fossil, git, hg, svn. [**] The go command only knows of these code hosting services: Bitbucket, GitHub, Launchpad, IBM DevOps Services. The "mod" approachThe hub.darcs.net repository URL can serve the "mod" variant of the Edit: rewritten entirely. |
So, if I understand correctly, I have to wait until either Darcs Hub adds support for the meta tag or Go adds support for Darcs Hub without requiring the tag? |
Correct. There is another possibility. You can still use a darcs repository and Darcs Hub, but instead of an import path starting with "hub.darcs.net" use a custom import path with a domain that you control. For example:
Then at the URL For the vcs variant of the <meta> tag to work successfully, the go command would still need to support darcs as a version control system, so this might involve waiting. But for the mod variant of the <meta> tag, you could set up your own Go module proxy server—for example, at Module proxy server: https://go.dev/ref/mod#module-proxy |
Copied from Wikipedia: Darcs is a distributed version control system created by David Roundy. Key features include the ability to choose which changes to accept from other repositories, interaction with either other local (on-disk) repositories or remote repositories via SSH, HTTP, or email, and an unusually interactive interface. The developers also emphasize the use of advanced software tools for verifying correctness: the expressive type system of the functional programming language Haskell enforces some properties, and randomized testing via QuickCheck verifies many others. The name is a recursive acronym for Darcs Advanced Revision Control System.
The text was updated successfully, but these errors were encountered: