Path: csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!rt.uk.eu.org!nntp-feed.chiark.greenend.org.uk!ewrotcd!news.nosignal.org!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.003 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'python,': 0.02; 'languages,': 0.04; 'url:launchpad': 0.05; 'gpl': 0.07; 'nicely': 0.07; 'php.': 0.07; 'postgresql': 0.07; 'python': 0.09; 'code"': 0.09; 'ide': 0.09; 'mysql.': 0.09; 'occasionally': 0.09; 'url:github': 0.09; 'sat,': 0.15; '"code': 0.16; '"official"': 0.16; '(and,': 0.16; 'finney': 0.16; 'gonna': 0.16; 'oracle.': 0.16; 'partly': 0.16; 'pgsql': 0.16; 'right;': 0.16; 'wrote:': 0.17; 'jan': 0.18; 'input': 0.18; 'sender:addr:gmail.com': 0.18; 'module': 0.19; 'community.': 0.20; 'equivalent': 0.20; 'suggested': 0.20; 'error.': 0.21; '(by': 0.22; 'lets': 0.22; 'this:': 0.23; "i've": 0.23; 'second': 0.24; 'script': 0.24; 'least': 0.25; 'header:In-Reply-To:1': 0.25; 'header:User- Agent:1': 0.26; 'am,': 0.27; 'right.': 0.27; 'rules': 0.27; 'ibm': 0.27; 'chris': 0.28; 'concern': 0.29; 'issues.': 0.29; 'writes:': 0.29; "i'm": 0.29; 'maybe': 0.29; 'code': 0.31; 'point': 0.31; 'problem.': 0.32; 'operate': 0.32; 'could': 0.32; 'certain': 0.33; 'goes': 0.33; 'oracle': 0.33; 'strict': 0.33; 'anyone': 0.33; 'to:addr:python-list': 0.33; 'received:google.com': 0.34; 'ben': 0.35; 'protocol': 0.35; 'doing': 0.35; 'too.': 0.35; 'received:209.85': 0.35; 'there': 0.35; 'but': 0.36; "didn't": 0.36; 'possible': 0.37; 'does': 0.37; 'two': 0.37; 'being': 0.37; 'quite': 0.37; 'received:209': 0.37; 'far': 0.37; 'well.': 0.37; 'subject:: ': 0.38; 'store': 0.38; 'nothing': 0.38; 'sure': 0.38; 'page': 0.38; 'gives': 0.39; 'performance': 0.39; 'to:addr:python.org': 0.39; 'release': 0.39; 'little': 0.39; 'where': 0.40; 'header:Received:5': 0.40; 'your': 0.60; 'easy': 0.60; 'solve': 0.62; 'subject:...': 0.63; 'more': 0.63; 'become': 0.65; 'license': 0.65; 'virtually': 0.65; 'wire': 0.71; 'message- id:@mx.google.com': 0.81; '2013': 0.84; 'discrete': 0.84; 'forced': 0.84; 'idiot': 0.84; 'irrelevant': 0.84; 'shop,': 0.84; 'system),': 0.84; 'tossing': 0.84; 'available:': 0.91; 'grew': 0.91; 'that),': 0.91; 'choice.': 0.93 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:sender:from:to:subject:in-reply-to:references:user-agent :date:message-id:mime-version:content-type; bh=3NYvh9+N0EozUQ8/1nQiStxqHwdQxxvKUYlfu084u+s=; b=xhrIoJ3A/nEWDIoIkOxChamXpa6BJWxvMQ96DkGzXydsP3VloK/uY4J+3l57w2SvPq QgVNWj9lLdwVY/O5R3yVMjRtjtftC2dSDTNNwXWzd7cY3aAMarLHeJ17OK8Lc1fNkN8C BbFaO66vOAAQ9PrKYCkFXhD9WUF9jFMfrFNq+vKhhzm40NGdn1/LP0RtmCKf+uQMmAaW 2xPXk4hM5kvhIzXQUkdHCDawr47FDPlTzhxy+pn1D82q2oJLLJ8Ip+5O44tWj7qAYOZK kE7YUf7QRnxc2Yv95CTYMvXZ8SN9Xq+vSztZqZudfyFAaaoIoQgPoK9u7ZXIKGVrEXF7 Qp6w== X-Received: by 10.68.137.131 with SMTP id qi3mr10282009pbb.114.1358558723600; Fri, 18 Jan 2013 17:25:23 -0800 (PST) Sender: Kushal Kumaran From: Kushal Kumaran To: python-list@python.org Subject: Re: Vote tallying... In-Reply-To: References: <50F8906D.9040203@r3dsolutions.com> <846C3A8E860C4344B567D813B63AA51D64BC9424@BL2PRD0610MB349.namprd06.prod.outlook.com> <7whames0hj.fsf@benfinney.id.au> User-Agent: Notmuch/0.14+83~gae459a3 (http://notmuchmail.org) Emacs/24.1.1 (x86_64-pc-linux-gnu) Date: Sat, 19 Jan 2013 06:55:15 +0530 MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 58 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1358558727 news.xs4all.nl 6913 [2001:888:2000:d::a6]:45930 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:37039 Chris Angelico writes: > On Sat, Jan 19, 2013 at 7:24 AM, Ben Finney wrote: >> * MySQL's development has suffered under Sun, and become virtually >> moribund under Oracle. They operate as a closed shop, occasionally >> tossing GPL-licensed releases over the wall, with very little input >> accepted from the community. > > I don't know whether it's a legit concern or pure FUD, but it's been > suggested that since the MySQL license is GPL and not LGPL, any code > that links against it is forced to be GPL too. I'm not sure how far > that goes (eg if you're using it from Python, at what point does it > stop being "code linked to GPL code" and start being a discrete > system), and IANAL, but I prefer to work with systems with more > freedom in their licensing. PostgreSQL is under a BSD-like license, so > it can be used without issues. > Oracle have a page about this: http://www.mysql.com/about/legal/licensing/foss-exception/ > Also, and a completely irrelevant point but maybe of curiosity: It's > perfectly possible to use PostgreSQL without linking against libpq (by > reimplementing the wire protocol - Pike's pgsql module does that), but > I've never heard of anyone doing that with MySQL. Perhaps if someone > cared, they could release a non-GPL equivalent to libmysql and that > would solve this problem. Not gonna be me, though, I'm quite happy > with PG 9.1. > As far as python goes, there are at least two pure-python implementations of the mysql protocol available: - https://github.com/petehunt/PyMySQL (MIT license) - https://launchpad.net/myconnpy (GPL) The second one is an "official" Oracle project. Both of them support python 3 as well. > MySQL works very nicely with PHP. They each have certain sloppinesses > that work well together to make it easy for an idiot to create a > dynamic web site. PostgreSQL works equally nicely with stricter > languages, where if you make a mistake, you get an error. MySQL gives > your script a place to store data; PostgreSQL lets you set up a > database and have application(s) manipulate it. The assumption in > MySQL is that the script is always right; the assumption in PostgreSQL > is that the database is always right. It's a philosophical > distinction, and you just have to take your choice. For me, that's an > easy choice, partly since I grew up with IBM DB2 on OS/2, with > extremely strict rules (and, by the way, nothing *like* the > performance of a modern database - old 200MB IDE hard drives didn't > give quite the same TPS as a modern SATA). > -- regards, kushal