Path: csiph.com!news.redatomik.org!aioe.org!bofh.it!news.nic.it!robomod From: Diane Trout Newsgroups: linux.debian.maint.python Subject: Re: MBF for deprecating Python2 usage Date: Tue, 08 Aug 2017 05:10:01 +0200 Message-ID: References: X-Original-To: debian-python@lists.debian.org X-Mailbox-Line: From debian-python-request@lists.debian.org Tue Aug 8 03:09:52 2017 Old-Return-Path: X-Amavis-Spam-Status: No, score=-7 tagged_above=-10000 required=5.3 tests=[BAYES_00=-2, LDO_WHITELIST=-5] autolearn=ham autolearn_force=no X-Policyd-Weight: using cached result; rate: -6.1 Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.22.6-1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Mailing-List: archive/latest/15116 List-ID: List-URL: List-Archive: https://lists.debian.org/msgid-search/1502161770.2351.63.camel@ghic.org Approved: robomod@news.nic.it Lines: 28 Organization: linux.* mail to news gateway Sender: robomod@news.nic.it X-Original-Date: Mon, 07 Aug 2017 20:09:30 -0700 X-Original-Message-ID: <1502161770.2351.63.camel@ghic.org> X-Original-References: <3109A909-3338-4717-BFD2-D65E9206FD7F@debian.org> <9614BFBC-E260-48A6-B722-DDD41E715A20@kitterman.com> <92E6FF73-391C-45FE-A213-6AAED284629D@debian.org> <1502142757.2351.35.camel@ghic.org> <690EAE7E-8005-4723-891E-C2E30C3B35AD@debian.org> <85shh3lzp1.fsf@benfinney.id.au> <1502149701.2351.60.camel@ghic.org> <85inhyn8zk.fsf@benfinney.id.au> <858tiun6wh.fsf@benfinney.id.au> Xref: csiph.com linux.debian.maint.python:9735 > What tearing need is there to change what the command ‘python’ does, > in > a backward-incompatible way? Personally, I'm ready for python to point to python3 now. I'm tired of writing python 2/3 compatible code because someone _might_ launch a script with "python my_python3_script.py instead of ./my_python3_script.py Python has been remarkably good at avoiding breakage, but I've seen other scripting languages have serious incompatibilities with far less warning. For example R packages need to be recompiled for point release updates. Some perl scripts we inherited broke somewhere between perl 5.8 and 5.12. Users have tools like virtualenv or conda to deal with the incompatibilities. It might be useful to add an option to the interpreter where if a python script is launched without a usr/bin/python2 or usr/bin/python3 header it reports a deprecation warning (either to console or syslog) so it's easier to find programs that still need updating. Diane