Skip to content
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: Why GO decide to have internal dependency manager? #29161

Closed
OmidHekayati opened this issue Dec 9, 2018 · 6 comments
Closed

proposal: Why GO decide to have internal dependency manager? #29161

OmidHekayati opened this issue Dec 9, 2018 · 6 comments

Comments

@OmidHekayati
Copy link

It is very surprising for me each programming language wants dedicated "Dependency Management" like go get, NPM, PIP, ... when this is the feature of every version control services like Git. I can't find any feature in these services that version controls can't do them!

When in any engineered software project we need a type of version control like Git and Almost all of them have internal "Dependency Management" features like "Git submodule" why you decide to add a nonstandard and annoying way to manage dependencies outside of project version control? And even worse consume technical person resources to continue to develop other related ideas.

I suggest deprecating all related to go get, GOPATH, go modules and remote import paths. And suggest every one always use a good version control for any project even tiny one! In this way, Developers can take time to learn their version control deeply and go community can work on other good ideas!

@OmidHekayati OmidHekayati changed the title Why GO decide to have internal dependency manager? proposal: Why GO decide to have internal dependency manager? Dec 9, 2018
@gopherbot gopherbot added this to the Proposal milestone Dec 9, 2018
@MetalBreaker
Copy link

Go get DOES use git under the hood though, doesn't it? Correct me if I'm wrong.

Also, removing it would be a huge breaking change so I don't think it'll be happening anytime soon (if ever), and I'm pretty sure the devs won't be happy to scrap their work.

@OmidHekayati
Copy link
Author

Go get DOES use git under the hood though, doesn't it? Correct me if I'm wrong.

Also, removing it would be a huge breaking change so I don't think it'll be happening anytime soon (if ever), and I'm pretty sure the devs won't be happy to scrap their work.

1- Not always use git under the hood. you must read very carefully and deeply "Dependency Management" & "Version Control" before any misunderstanding from my proposal.
2- Be aware deprecating is not same as removing! so I don't suggest to remove these features.

@agnivade
Copy link
Contributor

agnivade commented Dec 9, 2018

Hi @OmidHekayati,

This appears to be more a discussion/question rather than a specific Go bug. We do not use the issue tracker for general discussions or questions like these. The Github bug tracker is only used for tracking bugs and proposals going through the Proposal Process.

Deprecating the entirety of go get, modules and GOPATH will be a drastic change at this point of the language. If you are proposing to replace all of this with just git, you should also propose how should we replace all of the go mod commands.

I will close this issue since this is not the right place to discuss this. But please do feel free to continue this discussion across various forums mentioned in the Questions wiki page; it has a list of good places for asking questions.

Thank you.

@agnivade agnivade closed this as completed Dec 9, 2018
@OmidHekayati
Copy link
Author

Hi @OmidHekayati,

This appears to be more a discussion/question rather than a specific Go bug. We do not use the issue tracker for general discussions or questions like these. The Github bug tracker is only used for tracking bugs and proposals going through the Proposal Process.

Deprecating the entirety of go get, modules and GOPATH will be a drastic change at this point of the language. If you are proposing to replace all of this with just git, you should also propose how should we replace all of the go mod commands.

I will close this issue since this is not the right place to discuss this. But please do feel free to continue this discussion across various forums mentioned in the Questions wiki page; it has a list of good places for asking questions.

Thank you.

1- My issue is not discussion||question. It is a real proposal to stop do the wrong thing in go!
2- In Questions wiki page said "GitHub Issues are used for tracking bugs and proposals." so I think it is the right place to propose my proposal.
3- Why you think to deprecate some bad idea is "drastic change"? Deprecate means tell everybody that GO community doesn't work anymore to improve these features anymore but you can always use it without any problem.
4- What go mod present that version control like Git can't do for you? I think it is better to understand what other people say and think at least a day before making the decision to close the issue.

@agnivade
Copy link
Contributor

agnivade commented Dec 9, 2018

It is not a proposal because it does not lay out the solutions very clearly. Your issue itself questions some basic things, and just suggests git as the solution.

Closing the issue does not mean it is not up for discussion. I apologize if that was the message. It is just that this issue tracker is not the right place for open-ended discussions like these. Please do feel free to ask this in golang-nuts/golang-dev to gauge what other people say. That is the right place.

@OmidHekayati
Copy link
Author

OmidHekayati commented Dec 10, 2018

It is not a proposal because it does not lay out the solutions very clearly. Your issue itself questions some basic things, and just suggests git as the solution.

Closing the issue does not mean it is not up for discussion. I apologize if that was the message. It is just that this issue tracker is not the right place for open-ended discussions like these. Please do feel free to ask this in golang-nuts/golang-dev to gauge what other people say. That is the right place.

1- I think it is obvious that I suggest using any version control that you use for your project for dependency management too. Proposal||Idea always start with a why question and give a solution!
I think everybody must study version controls like Git deeper!

2- Ok. But I don't have enough time to discuss more for this idea. I hope someone stops these unneeded features from Golang like other good languages like C, Erlang,... .

@golang golang locked and limited conversation to collaborators Dec 10, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants