Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-20 Thread Eric V. Smith
On 04/14/2012 02:12 PM, Brett Cannon wrote: My multi-year project -- started in 2006 according to my blog -- to rewrite import in pure Python and then bootstrap it into CPython as *the* implementation of __import__() is finally over (mostly)! Maybe I'm missing something, but it seems that I

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-20 Thread Brett Cannon
On Fri, Apr 20, 2012 at 09:54, Eric V. Smith e...@trueblade.com wrote: On 04/14/2012 02:12 PM, Brett Cannon wrote: My multi-year project -- started in 2006 according to my blog -- to rewrite import in pure Python and then bootstrap it into CPython as *the* implementation of __import__() is

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-20 Thread Eric Snow
On Fri, Apr 20, 2012 at 7:54 AM, Eric V. Smith e...@trueblade.com wrote: On 04/14/2012 02:12 PM, Brett Cannon wrote: My multi-year project -- started in 2006 according to my blog -- to rewrite import in pure Python and then bootstrap it into CPython as *the* implementation of __import__() is

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-20 Thread Brett Cannon
On Fri, Apr 20, 2012 at 11:02, Eric Snow ericsnowcurren...@gmail.comwrote: On Fri, Apr 20, 2012 at 7:54 AM, Eric V. Smith e...@trueblade.com wrote: On 04/14/2012 02:12 PM, Brett Cannon wrote: My multi-year project -- started in 2006 according to my blog -- to rewrite import in pure Python

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-20 Thread Eric V. Smith
On 04/20/2012 10:59 AM, Brett Cannon wrote: On Fri, Apr 20, 2012 at 09:54, Eric V. Smith e...@trueblade.com mailto:e...@trueblade.com wrote: On 04/14/2012 02:12 PM, Brett Cannon wrote: My multi-year project -- started in 2006 according to my blog -- to rewrite import in

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-17 Thread Antoine Pitrou
On Mon, 16 Apr 2012 20:41:56 -0400 Brett Cannon br...@python.org wrote: On Mon, Apr 16, 2012 at 20:27, Antoine Pitrou solip...@pitrou.net wrote: On Tue, 17 Apr 2012 01:11:14 +0200 Georg Brandl g.bra...@gmx.net wrote: No, it's not just an existing Python, it is (at least currently) the

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-17 Thread Eric V. Smith
On 4/17/2012 5:52 AM, Antoine Pitrou wrote: On Mon, 16 Apr 2012 20:41:56 -0400 Brett Cannon br...@python.org wrote: On Mon, Apr 16, 2012 at 20:27, Antoine Pitrou solip...@pitrou.net wrote: On Tue, 17 Apr 2012 01:11:14 +0200 Georg Brandl g.bra...@gmx.net wrote: No, it's not just an existing

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-17 Thread R. David Murray
On Tue, 17 Apr 2012 01:11:14 +0200, Georg Brandl g.bra...@gmx.net wrote: On 16.04.2012 18:15, R. David Murray wrote: I don't see how depending on Cython is better than depending on having an existing Python. No, it's not just an existing Python, it is (at least currently) the same version

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-17 Thread Brett Cannon
On Tue, Apr 17, 2012 at 06:43, Eric V. Smith e...@trueblade.com wrote: On 4/17/2012 5:52 AM, Antoine Pitrou wrote: On Mon, 16 Apr 2012 20:41:56 -0400 Brett Cannon br...@python.org wrote: On Mon, Apr 16, 2012 at 20:27, Antoine Pitrou solip...@pitrou.net wrote: On Tue, 17 Apr 2012

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-17 Thread Antoine Pitrou
On Tue, 17 Apr 2012 11:41:32 -0400 Brett Cannon br...@python.org wrote: Actually Cython would help with a subtle maintenance burden of maintaining *any* C code for import. Right now, Python/import.c:PyImport_ImportModuleLevelObject() is an accelerated C version of importlib.__import__()

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-17 Thread Brett Cannon
On Tue, Apr 17, 2012 at 13:39, Antoine Pitrou solip...@pitrou.net wrote: On Tue, 17 Apr 2012 11:41:32 -0400 Brett Cannon br...@python.org wrote: Actually Cython would help with a subtle maintenance burden of maintaining *any* C code for import. Right now,

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Stefan Behnel
Brett Cannon, 14.04.2012 20:12: My multi-year project -- started in 2006 according to my blog -- to rewrite import in pure Python and then bootstrap it into CPython as *the* implementation of __import__() is finally over (mostly)! Hopefully I didn't break too much code in the process. =)

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Antoine Pitrou
On Mon, 16 Apr 2012 09:54:41 +0200 Stefan Behnel stefan...@behnel.de wrote: The new import cache broke Cython's load of on-the-fly compiled extension modules, which naively used __import__(module_name) after building them. I could fix that by moving to imp.load_dynamic() (we know where we put

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Stefan Behnel
Antoine Pitrou, 16.04.2012 13:13: On Mon, 16 Apr 2012 09:54:41 +0200 Stefan Behnel wrote: The new import cache broke Cython's load of on-the-fly compiled extension modules, which naively used __import__(module_name) after building them. I could fix that by moving to imp.load_dynamic() (we

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Martin v. Löwis
We have other instances of this (e.g. the Objects/typeslots.inc file is generated and checked in), but in the case of importlib, we have to use the ./python binary for freezing to avoid bytecode incompatibilities, which obviously is a problem if ./python isn't built yet. As for dependencies

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Brett Cannon
On Mon, Apr 16, 2012 at 10:07, Martin v. Löwis mar...@v.loewis.de wrote: We have other instances of this (e.g. the Objects/typeslots.inc file is generated and checked in), but in the case of importlib, we have to use the ./python binary for freezing to avoid bytecode incompatibilities,

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread R. David Murray
On Mon, 16 Apr 2012 11:21:34 -0400, Brett Cannon br...@python.org wrote: On Mon, Apr 16, 2012 at 10:07, Martin v. Löwis mar...@v.loewis.de wrote: We have other instances of this (e.g. the Objects/typeslots.inc file is generated and checked in), but in the case of importlib, we have to

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Antoine Pitrou
On Mon, 16 Apr 2012 12:15:16 -0400 R. David Murray rdmur...@bitdance.com wrote: I don't see how depending on Cython is better than depending on having an existing Python. If the only benefit is semi-readable code, surely we do have source code for the pre-frozen module, and it is just a

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Brett Cannon
On Mon, Apr 16, 2012 at 12:31, Antoine Pitrou solip...@pitrou.net wrote: On Mon, 16 Apr 2012 12:15:16 -0400 R. David Murray rdmur...@bitdance.com wrote: I don't see how depending on Cython is better than depending on having an existing Python. If the only benefit is semi-readable code,

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Martin v. Löwis
I don't see how depending on Cython is better than depending on having an existing Python. If the only benefit is semi-readable code, surely we do have source code for the pre-frozen module, and it is just a matter of convincing hg that the bytecode is binary, not text? Cython-generated C

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Martin v. Löwis
So like execute hg diff on the dependent files and if nothing changed then touch the auto-generated file w/ 'touch' to prevent future attempts to execute the target? Exactly. There might be something better than hg diff, perhaps some form of hg status. Regards, Martin

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Brett Cannon
On Mon, Apr 16, 2012 at 13:04, Martin v. Löwis mar...@v.loewis.de wrote: I don't see how depending on Cython is better than depending on having an existing Python. If the only benefit is semi-readable code, surely we do have source code for the pre-frozen module, and it is just a matter

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Brett Cannon
On Mon, Apr 16, 2012 at 13:08, Martin v. Löwis mar...@v.loewis.de wrote: So like execute hg diff on the dependent files and if nothing changed then touch the auto-generated file w/ 'touch' to prevent future attempts to execute the target? Exactly. There might be something better than hg

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Eric Snow
On Mon, Apr 16, 2012 at 11:32 AM, Brett Cannon br...@python.org wrote: On Mon, Apr 16, 2012 at 13:04, Martin v. Löwis mar...@v.loewis.de wrote: I don't see how depending on Cython is better than depending on having an existing Python.  If the only benefit is semi-readable code, surely we

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Antoine Pitrou
On Mon, 16 Apr 2012 13:33:45 -0400 Brett Cannon br...@python.org wrote: On Mon, Apr 16, 2012 at 13:08, Martin v. Löwis mar...@v.loewis.de wrote: So like execute hg diff on the dependent files and if nothing changed then touch the auto-generated file w/ 'touch' to prevent future attempts

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Barry Warsaw
On Apr 16, 2012, at 07:44 PM, Antoine Pitrou wrote: Wouldn't it be better if Python could compile regardless of the presence of a hg repository? If you want it in your $DISTRO, yes please! -Barry ___ Python-Dev mailing list Python-Dev@python.org

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread R. David Murray
On Mon, 16 Apr 2012 13:51:35 -0400, Barry Warsaw ba...@python.org wrote: On Apr 16, 2012, at 07:44 PM, Antoine Pitrou wrote: Wouldn't it be better if Python could compile regardless of the presence of a hg repository? If you want it in your $DISTRO, yes please! My impression is that our

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Stefan Behnel
Martin v. Löwis, 16.04.2012 16:07: We have other instances of this (e.g. the Objects/typeslots.inc file is generated and checked in), but in the case of importlib, we have to use the ./python binary for freezing to avoid bytecode incompatibilities, which obviously is a problem if ./python

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Amaury Forgeot d'Arc
Hi, 2012/4/16 Stefan Behnel stefan...@behnel.de On the down side, we would depend on Cython for evolving . Right, although not as a strict dependency. The code would still work just fine in plain Python. Not quite, we are talking of the imp module here... -- Amaury Forgeot d'Arc

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Martin v. Löwis
Am 16.04.2012 19:44, schrieb Antoine Pitrou: On Mon, 16 Apr 2012 13:33:45 -0400 Brett Cannon br...@python.org wrote: On Mon, Apr 16, 2012 at 13:08, Martin v. Löwis mar...@v.loewis.de wrote: So like execute hg diff on the dependent files and if nothing changed then touch the auto-generated

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Georg Brandl
On 16.04.2012 18:15, R. David Murray wrote: On Mon, 16 Apr 2012 11:21:34 -0400, Brett Cannonbr...@python.org wrote: On Mon, Apr 16, 2012 at 10:07, Martin v. Löwismar...@v.loewis.de wrote: We have other instances of this (e.g. the Objects/typeslots.inc file is generated and

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Antoine Pitrou
On Tue, 17 Apr 2012 01:11:14 +0200 Georg Brandl g.bra...@gmx.net wrote: No, it's not just an existing Python, it is (at least currently) the same version of Python being built. Therefore I wrote about the bootstrapping problems when bytecode changes. Depending on Cython is better in that

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Brett Cannon
On Mon, Apr 16, 2012 at 20:27, Antoine Pitrou solip...@pitrou.net wrote: On Tue, 17 Apr 2012 01:11:14 +0200 Georg Brandl g.bra...@gmx.net wrote: No, it's not just an existing Python, it is (at least currently) the same version of Python being built. Therefore I wrote about the

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Stefan Behnel
Amaury Forgeot d'Arc, 16.04.2012 22:43: 2012/4/16 Stefan Behnel On the down side, we would depend on Cython for evolving . Right, although not as a strict dependency. The code would still work just fine in plain Python. Not quite, we are talking of the imp module here... Hmm, right, after

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-16 Thread Stefan Behnel
Antoine Pitrou, 17.04.2012 02:27: On Tue, 17 Apr 2012 01:11:14 +0200 Georg Brandl wrote: No, it's not just an existing Python, it is (at least currently) the same version of Python being built. Therefore I wrote about the bootstrapping problems when bytecode changes. Depending on Cython is

[Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-14 Thread Brett Cannon
My multi-year project -- started in 2006 according to my blog -- to rewrite import in pure Python and then bootstrap it into CPython as *the* implementation of __import__() is finally over (mostly)! Hopefully I didn't break too much code in the process. =) Now this is mostly finished because the

Re: [Python-Dev] importlib is now bootstrapped (and what that means)

2012-04-14 Thread Georg Brandl
On 14.04.2012 20:12, Brett Cannon wrote: My multi-year project -- started in 2006 according to my blog -- to rewrite import in pure Python and then bootstrap it into CPython as *the* implementation of __import__() is finally over (mostly)! Hopefully I didn't break too much code in the process.