22 ms·
Python moved to GitHub
- jwilk 10y agohttps://news.ycombinator.com/item?id=13614253 https://news.ycombinator.com/item?id=13614253
- laurentdc 10y agoYes! I quite like the idea of "centralizing" development on GitHub, or similar services. It makes it much easier for everyone to fork, test, make a pull request, merge, etc.. For example, one reason why I gave up contributing to OpenWrt was their absolutely legacy contribution system [1], which required devs to submit code diff patches via email (good luck not messing up the formatting with a modern client) on a mailing list. It took me an hour to submit a patch for three lines of code. It seems like Python wasn't much different. [2] [1] https://dev.openwrt.org/wiki/SubmittingPatches#a1.Creatingapatch https://dev.openwrt.org/wiki/SubmittingPatches#a1.Creatingap... [2] https://docs.python.org/devguide/patch.html https://docs.python.org/devguide/patch.html
- corndoge 10y agoThe emailed patch model is still incredibly popular and combined with an application such as Patchwork remains efficient. good luck not messing up the formatting with a modern client $ git send-email GitHub is easier to get started with but both methods have their benefits. I personally prefer GitHub but don't have problems contributing to projects that use the emailed patch model.
- laurentdc 10y ago> $ git send-email Ah, thanks. If I only had known! :) Maybe someone at OpenWrt (with edit access to the Wiki and such) could write a simple script for git send-email with a wrapper for the [PATCH] [architecture] what subject and Signed-off-by thing. Would speed things up quite a bit imho, especially for newcomers. I see quite a few "not formatted properly" rejections.
- ycmbntrthrwaway 10y agoIt is up to you to put "[architecture] what" into your commit message. Signed-off-by is a legal procedure, it should not be automated, you should do "git commit --signoff" yourself. "[PATCH]" is added by "git send-email". If you don't want to setup your client properly and keep using some GUI or Web client, you can format your patch with "git format-patch" and submit whatever files it produces. OpenWrt rightfully expects you to read at least "man giteveryday", which is titled "A useful minimum set of commands for Everyday Git" and includes "format-patch" and "send-email" in "INDIVIDUAL DEVELOPER (PARTICIPANT)" section.
- cyphar 10y agoSigned-off-by is automatically added to commits if you add "-s" to the git commit command. In addition, git format-patch (and thus git send-email) already adds [PATCH X/Y] to the subject line (prepended to the short commit message). Which part of this needs to be better scripted?
- fake-name 10y agoThe entire part where this shit happens using email.
- cyphar 10y ago% git send-email Wow. So hard. So many characters.
- jwilk 10y agoAdding -s every time is too much work, so I added this to my git config instead: [format] signOff = true
- ycmbntrthrwaway 10y agoJust don't add it to global config
- deleted 10y ago[deleted]
- LeanderK 10y agoi don't like centralising development on github, but i welcome the competition for more user-friendly systems. I think the pressure is increasing for other service to provide an equal experience both for exploring an contributing to a project.
- ycmbntrthrwaway 10y agohttps://gitea.io/ https://gitea.io/
- tyteen4a03 10y agoThe closest competition to GitHub seems to be GitLab at the moment, but I heard it's slow to some users. The UI also felt a bit "off" to me (primarily because I'm used to having code, not the README, as the index page of a repo) I have my private projects on GitLab because it's free. (BitBucket before that; good riddance)
- cderwin 10y agoI definitely wouldn't say gitlab is slow in the empirical sense, but browsing repos is definitely a bit more sluggish than github. Maybe it's just more noticeable since it's an SPA. I say that as a someone who uses gitlab for all of my personal projects.
- gulaschbrot 10y agoMy university uses gitlab and it feels very slow. Pushing changes takes 5-10x longer than anywhere else, even from the university network. (compared to github or even my server sitting at home on a normal home DSL connection)
- ycmbntrthrwaway 10y agoCentralizing around proprietary software is not a good idea generally. Git is distributed, so when GitHub goes down, every developer has a backup of entire history. However, issues are lost forever. Python does not use "issues" feature for good. One way to avoid email without centralization is setting up Gerrit. That is how Ring [1] and LineageOS (former CyanogenMod) [2] manage their "pull requests". Still, being able to submit patches via email is an absolutely necessary skill for everyone who considers himself a hacker. Lack of it makes you unable to contribute to many great projects, such as all suckless [3] projects and Linux itself. [1] https://gerrit-ring.savoirfairelinux.com/ https://gerrit-ring.savoirfairelinux.com/ [2] https://review.lineageos.org/ https://review.lineageos.org/ [3] http://suckless.org/ http://suckless.org/
- fake-name 10y agoAnything is better then e-mail based systems. The discoverability, browsability, and useability of something with actual markup and design is infinitely better then e-mail. I've tried several times to make submissions to several e-mail based projects, never with any success. At the same time, I've had zero issues contributing to a dozen or so github hosted projects. E-mail systems are a shitshow. First, you generally have to join a mailing list, which is regularly broken, or requires someone somewhere to manually acknowledge your membership. Then, you have to figure out how they want shit formatted, figure out how to generate a diff (I've been using SVN for 8+ years, git for ~3 years, and have never had to deal with diff files!), send an e-mail, find the mailing list shat itself and troubleshoot, try again, etc.... Basically, e-mail is the death of any sort of low-effort contribution. If you're starting a new project, and chose a mailing list, you're probably excluding a huge quantity of potential contributors. If there's a project where I want to make a few-line change or minor enhancement, and it's on github, I'll generally PR it back into the original. If it's somewhere else, or requires another account, there's no way I'm going to spend the effort. Plus, just reading mailing lists is a fucking disaster. Literally no mailing list host I know of lets you just view a complete topic thread in simple chronological order on ONE PAGE. They all operate on a per-message response-tree structure, so just reading the discussion is a huge pain in the ass. E-mail is basically dying among younger people, including the ones that code, and with good reason. For actual forum-type discussions, it's a completely shit solution.
- newman314 10y agoIt's even worse with ddwrt. =( I've pretty much given up hope that any of these *-wrt devs take security or dev seriously.
- aljones 10y agoI agree, but there are risks in using a proprietary platform for this. See sourceforge.
- zeveb 10y ago> good luck not messing up the formatting with a modern client I wonder how 'modern' a client can be if it can't even post source code properly.
- di 10y agoMore details on the decision: https://snarky.ca/the-history-behind-the-decision-to-move-python-to-github/ https://snarky.ca/the-history-behind-the-decision-to-move-py...
- fairpx 10y agothis just adds to the mystery
- EvgeniyZh 10y agoI'd really like more big and important projects would move their development to GitHub-styled services. Maybe I'm just not hardcore enough, but I feel they make live easier, both for maintainers, contributors and newcomers. But it's probably too hard to switch and core developers don't see point in it (since they're totally ok with working their way). Maybe when a new generation developers will take core positions...
- hvidgaard 10y agoThe idea of GitHub is great, and frightning at the same time. The development community as a whole would be crippled if GitHub went under. Same thing with StackOverflow. I'm still dreaming of a decentralized GitHub based on something like ipfs.
- EvgeniyZh 10y agoWell, local running copy GitLab (or something other GitHub-styled) with a couple of backups is pretty safe and still gives all the advantages of GitHub. Decentralized GitHub is a nice idea. We gotta implement this)
- payne92 10y agoPart of Github's secret sauce: Web source tree browsing that's front and center, that's relatively decent, with OK search. (versus making the log/history the central part of the Web UI as other tools seem to do) There are SO many times I need a short peek at something, and am glad don't have to clone/download, etc.
- mythz 10y agoGitHub code search + file navigation is so good, that I prefer it to search/navigate code vs opening a VS.NET sln of a repo already cloned locally.
- kzrdude 10y agogit grep is still much better than github's search, when it comes to code. Github search doesn't show enough when there are many matches in the same file.
- aub3bhat 10y agoCould not agree more while I was learning to program, it took me months before realizing that it was possible to Browse a Google Code project online.
- gioele 10y ago> Part of Github's secret sauce: Web source tree browsing that's front and center, that's relatively decent, Plus decent rendering of README.md at the same base URL. You get a decent homepage for your project by just pushing your repo. I wish GitLab just copied the base project page of GitHub.
- hexa- 10y agoI was recently hit by an IPv4 routing outtage and had only IPv6 available to connect to the internet. I was therefore unable to connect to github.com, as there is no IPv6 support available: % host github.com github.com has address 192.30.253.112 github.com has address 192.30.253.113
- dbalan 10y agoSo python eventually moved to git from mercurial.
- xapata 10y agoIt's less about the VCS than the GitHub community.
- milesrout 10y agoI dislike Hg, but I'd much rather use Hg than have anything to do with the GitHub "community".
- xapata 10y agoOkay. The time to express those sentiments was back when PEP 512 [0] was being discussed. [0] https://www.python.org/dev/peps/pep-0512/ https://www.python.org/dev/peps/pep-0512/
- harry8 10y agoI'm not sure that's correct. https://hg.python.org/cpython/ https://hg.python.org/cpython/
- kzrdude 10y agoIt is, though
- harry8 10y agoWell that sure settles things. I'm totally sure now. Guido's last commit, in both the github repo and the mercurial repo. https://github.com/python/cpython/commit/934aba66ef09e94422bcac86dd221011242e141d https://github.com/python/cpython/commit/934aba66ef09e94422b... https://hg.python.org/cpython/rev/3db1959c2c53 https://hg.python.org/cpython/rev/3db1959c2c53 Someone sensible may be able to shed some light on it. Presumably there's a bridge between the two somewhere.
- gkya 10y agoThis is FUD. There are sensible responses to this comment, so I won't write a new one, but say one thing: You don't know how to use conventional tools, and and go on to blindly rant about them. > Basically, e-mail is the death of any sort of low-effort contribution. If you're starting a new project, and chose a mailing list, you're probably excluding a huge quantity of potential contributors. If those contributors are as incompetent to not be able to mail a patch, I'd rather be happy to have excluded them.
- fake-name 10y agoI think the core issue with your response is, unless the project in question is the "conventional tools", why do you seem to think knowing those tools is even germane to the quality of someone's contributions? I write python and some C++ stuff for fun in my free time. If your project interests me, but I have to spend said free time to learn esoteric tools to interact with it that aren't needed elsewhere in my life, how do you figure that's valid? It's not that I couldn't learn to deal with that kind of shit, it's that I don't see why I should bother. If everything else works without e-mailed diffs, all that does is make anyone with more then one hobby project do is look elsewhere.
- gkya 10y agoOne way or another, one has to learn the conventional communication tools if they want to contribute to any open-source project, be it GitHub or GitLab, or a mailing list and debbugs. The maintainers get to decide and it's their way or the highway. The project is theirs. Some skills only serve one purpose. Like shaving. I learnt how to shave when I was a teen, and that skill has only been useful to me in shaving my face, since ten years. And being able to use email and diffs is a transferable skill. I won't respond to you anymore, as I dislike your language and your contributions are trollish.
- mememachine 10y ago>not be able How about >dont want to waste their time This is a pretty nasty attitude you have.
- 10y ago
- misnome 10y agoWhy on earth have they done: > Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 Rather than just > Copyright (c) 2001-2017
- deleted 10y ago[deleted]
- makecheck 10y agoA couple of technical reasons might be: ensuring that you can "grep" for any 4-digit year and find applicable files; or, that a "diff" makes it more obvious what is being added. I prefer ranges personally. Also, I believe only the year of first publication is technically required anyway.
- jobigoud 10y ago> Also, I believe only the year of first publication is technically required anyway. Surely adding later years must have the effect of pushing the copyright expiration date?
- ponco 10y agoNot sure about US law, but in Australia, Copyright notices are not required at all, they're granted automatically under the law and only serve as a reminder -- so it's irrelevant.
- ufo 10y agoSince 1989, you also don't need copyright notices in the US https://en.wikipedia.org/wiki/Berne_Convention https://en.wikipedia.org/wiki/Berne_Convention
- sarreph 10y agoBetter still - Copyright (c) range(2001, 2018) ;)
- 10y ago
- gigatexal 10y agoPython 3.7 already in the works. The effort to push python 3.x is picking up steam it seems.
- akuchling 10y agoNothing surprising there. The version bump for 3.7 would have been committed immediately after branching off the 3.6 release branch.
- hayd 10y agoand nearly 100k commits... time to start making some PRs!
- agentgt 10y agoThis is a little disappointing for several reasons. I understand the merits of GitHub but I really wish Python at least stuck with Mercurial repository and some decentralization. It's especially sad because Mercurial is just now starting to be incredibly powerful with evolutions. I guess I'm an old fart but all the centralization has made me paranoid and I still absolutely prefer Mercurial (albeit with plugins) over git.
- jsmeaton 10y agoYou mention decentralization a lot, but nothing has really changed. All cpython devs still have a full clone on their machines. GitHub functions as a hub now rather than https://hg.python.org/cpython https://hg.python.org/cpython.
- agentgt 10y agoI must have missed some things but they not only switched repository formats they moved the central to github [1]. All opensource projects on github is centralization in my book creates unfair leverage that github has and will have. For people to work on Python they now have to share information with github which they may not want (they have to create an account and are probably tracked). 1: https://docs.python.org/devguide/setup.html https://docs.python.org/devguide/setup.html
- tracker1 10y agoTwo things, that's also an advantage... and the vast majority of programmers I know have a github account anyway. Github has made it very easy to access/port everything in and out if you choose to do so. Git itself is decentralized. Some of github tools are centralized, but that has both advantages and disadvantages, and I and a lot of others feel the advantages outweight the latter.
- agentgt 10y agoLike I said I don't argue with merits of github greatly widening the audience but I like said in other sibling threads github is more than just the source control itself: it is bugs, content, workflow, etc. I guess I'm just becoming more Stallman in my age but I don't like my development life turning into Facebook. I can't even communicate with a large portion of family and friend with out resorting to using FB. A platform without doubt tracks the hell out of you. And you could argue the web is decentralized (aka your comment Git itself is decentralized) so Facebook is not that bad but is it? Does that really matter?
- rectangletangle 10y agoWhere is the "issues" section? I wanna read about some gnarly low-level CPython bugs! Other than that, this is a welcome change.
- _ZeD_ 10y agohttp://bugs.python.org/ http://bugs.python.org/
- anamoulous 10y agoWow the black bar settled it for them, huh?
- ambivalence 10y agoI know you're joking but just for the record: this process was started in late 2015, it's a surprisingly complicated endeavour to switch source control hosting.
- deleted 10y ago[deleted]
- tbrock 10y agoWow if only we could get Gnome and Linux on there and give up this mailing list for patches nonsense we'd be golden.
- hueving 10y agoSad day. Don't forget that github is a closed source tool. This is equivalent to them announcing they are switching to Jira.
- Karunamon 10y agoBoth of those products allow for trivial data import/export. What exactly is the problem?
- hueving 10y agoThey are closed source. People that are really serious about open source software from top to bottom have issues with dependencies on closed source tooling because it promotes an ethos they don't support.
- a3_nm 10y agoThey are using pull requests on Github, and I don't think that these are trivial to import/export.
- emidln 10y agoThis is well-documented[1] in their API. You can list a repo's PRs and the associated metadata/links that make most of the github ui work (code reviews, linked comments, commit statuses, etc). [1] https://developer.github.com/v3/pulls/ https://developer.github.com/v3/pulls/
- echelon 10y agoI can't help but think Gitlab would have been in contention for this move had they not had the recent outage. Can anyone from the Python org comment on what other choices were considered?
- detaro 10y agoAll this has been decided for months and the discussion about has been going on for more than a year, so no, no recent outage could have been a factor. PEP 512 mentions why GitHub was choosen over GitLab. https://www.python.org/dev/peps/pep-0512/ https://www.python.org/dev/peps/pep-0512/
- tomcam 10y agotl;dr -- Devs are more familiar with Github, and Python's creator also prefers it (he modestly agreed to go with whatever the team decided and it appears they very much wanted to grant him the courtesy).
- imode 10y agoI'd question why it wasn't GitLab but after the recent outage it would somewhat be in bad taste. :P what exactly was Python using before/where was it hosted? all I can find are the source archives on python.org. I'm assuming this wasn't a hard transition but I'm genuinely curious as to their development strategy regarding distribution of source.
- grzm 10y agoThere are at least two comments in this thread that address this issue: - https://news.ycombinator.com/item?id=13633369 https://news.ycombinator.com/item?id=13633369 - https://news.ycombinator.com/item?id=13633271 https://news.ycombinator.com/item?id=13633271
- bombless 10y agoI wonder if it's possible that someone maintain a Linux distribution on Github.
- napolux 10y agoStill waiting for WordPress to move. ;)
- jaimebuelta 10y agoBackground info about why this migration and considered alternatives https://snarky.ca/the-history-behind-the-decision-to-move-python-to-github/ https://snarky.ca/the-history-behind-the-decision-to-move-py...
- faraggi 10y agoAnbody know what happend to Guido's contributions between 2008-2012? Maybe he had kids. :P
- meneses 10y agoFYI, Python was on Github but it was the read-only version. You still had to go to mercurial to push the updates.
- dustinmoris 10y agoOf course they went to GitHub, because GitHub actually works (looking over to GitLab), it doesn't suck (looking over to GitLab), the UI/UX is not fugly (looking over to GitLab) and it doesn't stop working when total users logged in > 10 (looking over to GitLab).
- Gikoskos 10y agoGitLab works and looks pretty well to me, for the past year I've been using it. Maybe these other problems are specific to your use-cases? You should send them an e-mail, or a pull-request since GitLab is open-source, if you encountered an issue with their website. If I had a product like that, and one of my clients was dissatisfied for various reasons, I'd want to listen to their feedback.
- dustinmoris 10y agoSorry, I got better things to do than fixing other people's products. I much rather focus on my work and pay for the product of another company who seems to be getting it right.
- lucidguppy 10y agoI wish PR's on github could be checked off per commit like in bitbucket.
- Fice 10y agoThis is scary. For increasingly many potential contributors a project effectively does not exist if it is not on GitHub. And, being a huge centralized service, GitHub is very susceptible to censorship (e.g. repos being taken down via DMCA or Russia blocking GitHub until they started to cooperate with the censors). I see this dependence as very bad and dangerous for the free software movement. Should we even consider convenience of a service that has serious ethical issues?
- deleted 10y ago[deleted]
- ianai 10y agoBitbucket does exist though.
- chaostheory 10y agoWhy is it scary? Is it that hard to move to bitbucket, gitlab, or another alternative git host if needed?
- wyldfire 10y agoIt's not hard, IMO. But it would be nice if these critical projects created gitlab or bitbucket mirrors.
- Fice 10y agoThis is not about how hard or easy it is to move from GitHub. What scares me is that it is increasingly hard to participate in the open source/free software community without using GitHub, and it is increasingly hard to find contributors for your own project if you are not willing to host it there.
- chaostheory 10y agoWhy is it scary to use Github? Is there some hidden cost that people aren't aware of?