On Jan 29, 2014, at 11:17 PM, Donald Stufft <don...@stufft.io> wrote:

> 
> On Jan 29, 2014, at 11:16 PM, Evgeny Sazhin <eug...@sazhin.us> wrote:
> 
>> 
>> On Jan 29, 2014, at 10:49 PM, Donald Stufft <don...@stufft.io> wrote:
>> 
>>> 
>>> On Jan 29, 2014, at 10:47 PM, Evgeny Sazhin <eug...@sazhin.us> wrote:
>>> 
>>>>> 
>>>>> Wheel is a package format. Packages are for transmitting and installing 
>>>>> bits. If you want to make some kind of self-unpacking executable please 
>>>>> do it with something built for it. makeself is an excellent choice for 
>>>>> these.
>>>>> 
>>>> 
>>>> I didn’t say anything about self-unpacking executable. Egg already knows 
>>>> to do what is needed, so i was correct in expecting the wheel to do the 
>>>> same. Plus the notion of packages for transmitting and installing should 
>>>> not exclude the running and importing. Otherwise it is useless, at least 
>>>> for my purposes. As discussed before - jar does that just fine and it is a 
>>>> package format.
>>>> 
>>>> Funny thing - wheel allows to do the same! Why would i want to use 
>>>> anything else then???
>>> 
>>> Because Python is not Java and Wheels are not Jars. You’ll find very few 
>>> packages actually support being run from a zipped file and the failure 
>>> modes are not always obvious.
>> 
>> I understand that not a lot of currently existing project are using this 
>> capability - but I’m 100% positive that if the running from wheel would be 
>> properly supported on error handling level and officially declared at least 
>> for the pure python - most of the people would be happy to have that! If we 
>> think about that, why would i want to use anything else other than wheel and 
>> pip if this pair gives the possibility to 
> 
> Pip does not install zipped wheels, and while it’s not entirely up to me I 
> would be opposed to it getting the ability to do so.

I might be poorly wording things - but i never said I want pip to install the 
zipped wheel. It seems that you’re missing the point a bit.
I’m totally fine with the way pip handles things. 

again briefly My idea is to use the following:

central location - flat folder with wheels, accessible to read for everybody in 
network.

for development : pip and virtual env. project has the virtual env created, 
dependencies are deployed and available for development and debugging in a 
standard manner. When done the project is packaged into wheel that is getting 
deployed to central location.

To *run* the program: i would create a script that bases on the pip ability to 
resolve dependencies and basing on the requirements.txt from inside my wheel it 
would generate PYTHONPATH to prepend the starting call like that:
PYTHONPATH=1.whl:2.whl; python 3.whl

where 3.whl is program with __main__.py and 1.whl and 2.whl are dependencies 
needed. This works as of now!




> 
>> 1. use minimum of “standard” tools, 
>> 
>> 2. *manage dependencies* in a unified and standardized way 
>> 
>> 3. use only *one format* and *one artifact* per project for everything 
>> related to the code development, shipment, deployment and execution. 
>> 
>> What would be a motivation to learn yet another tool like buildout or 
>> anything, pollute infrastructure with more libraries, manage several 
>> different ways of working with the code, overcomplicate the production area 
>> by requiring stuff to be unzipped and whatnot? 
>> 
>> I hope nobody would want to strip any of those nice features from the wheel, 
>> but improve the running from it!;)
> 
> I don’t understand what any of the rest of this have to do with wether you 
> add zipped Wheels to your sys.path or not.

see above 


> 
>> 
>> Thanks,
>> Eugene 
>> 
>>> 
>>>> 
>>>> Thanks,
>>>> Eugene
>>>> _______________________________________________
>>>> Distutils-SIG maillist  -  Distutils-SIG@python.org
>>>> https://mail.python.org/mailman/listinfo/distutils-sig
>>> 
>>> 
>>> -----------------
>>> Donald Stufft
>>> PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA
> 
> 
> -----------------
> Donald Stufft
> PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA

_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to