Skip to content
This repository has been archived by the owner on May 6, 2022. It is now read-only.

Discussion: Stop using Python? #103

Closed
krancour opened this issue Dec 2, 2016 · 8 comments
Closed

Discussion: Stop using Python? #103

krancour opened this issue Dec 2, 2016 · 8 comments

Comments

@krancour
Copy link
Contributor

krancour commented Dec 2, 2016

This goes above and beyond #102

As @duglin has pointed out (tangentially) in #97, limiting the number of languages contributors need to know seems like laudable goal.

@martinmaly
Copy link
Contributor

While I agree with limiting # of languages is a great goal I do think that role of Python (or a scripting language) is going to need to be filled in this repo by something. There may be bash demi-gods among us but I am not quite sure how I would implement boilerplate in pure Bash, and there is big advantage in not having to implement it in a compiled language (go). Of course, I haven't used go in this manner (for scripting-like needs) so maybe it is a great fit for Go and my argument doesn't hold.

I'd be curious what others' experience has been in situations like this.

@krancour
Copy link
Contributor Author

krancour commented Dec 2, 2016

fwiw, my personal feelings are that I don't like bash any better than I like python, but I recognize the need for one or the other. You may even be making a strong argument for both. This issue is just a way of opening that discussion. I'll retitle it as a proposal so it's clear that this is open to discussion and isn't actionable yet.

@krancour krancour changed the title Stop using Python Discussion: Stop using Python? Dec 2, 2016
@krancour
Copy link
Contributor Author

krancour commented Dec 2, 2016

@martinmaly:

I am not quite sure how I would implement boilerplate in pure Bash

Can you summarize what boilerplate is for? More generally, can you summarize what we've got in the /hack directory? It's not really documented. It would be helpful to get a sense for what's in there.

@duglin
Copy link
Contributor

duglin commented Dec 2, 2016

LOL I like the title as a statement :-)

@martinmaly
Copy link
Contributor

@krancour

the boilerplate link I included actually points at the k8s core repository and it was intended to point out that k8s core uses Python. I can't speak to what is in that hack/ directory as I am not familiar with k8s core hacks.

what boilerplate does is to check that files have appropriate license header.

@pmorie
Copy link
Contributor

pmorie commented Dec 5, 2016

While I do think we should be careful about adding new languages willy-nilly, we might not be able to escape from python. It is used in a number of places in kubernetes mungescripts, iirc, and I would like to begin directly consuming those scripts instead of copying them (as I did with the boilerplate scripts).

@duglin
Copy link
Contributor

duglin commented Dec 28, 2016

I think boilerplate is a good example to look at because I think it does fall into an "in-between" spot - more than a simple bash script but not beefy enough for a compiled language. However, there is another aspect to it and that's its intended use. A lot of the time when a tool becomes more real than what bash can easily support its often a tool that might be useful in broader contexts, and I think boilerplate is a good example of that. By that I mean, it might actually be useful beyond its initial project. Once that happens, and its often done in conjunction with the tool getting moved into a more easily accessible/generic repo, I think the list of prereqs for its use becomes an issue/factor. If people really do intent for it to be used in multiple spots/projects then what it mandates on those projects should be given scrutiny.

So far this project do not require python - aside from non-critical tools - so my preference is that we not be forced to have a dependency on python just to run a tool. This means I would prefer to be able to download an exe (or sh script) to run it - nothing else. So this comment is really more directed at "boilerplate" than us - unless one of us has the time to rewrite it in something other than python.

@pmorie
Copy link
Contributor

pmorie commented Jan 11, 2017

Closing; we put the boilerplate verification into the repo-infra repository.

@pmorie pmorie closed this as completed Jan 11, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants