Subject: PyPy and in general python (reported) bloat issue

From: Banibrata Dutta <[email-masked]>
Date: Sun, 15 Nov 2020 22:54:44 +0530

Hi,

AFAIK Alpine doesn't support PyPy or PyPy3 JIT compiler for Python. Is this
true or did I somehow miss it's package in the repositories ?

Also, came across this article:
https://pythonspeed.com/articles/alpine-docker-python/  which states --

But if you’re using Python, Alpine Linux will quite often:

   1. Make your builds much slower.
   2. Make your images bigger.
   3. Waste your time.
   4. On occassion, introduce obscure runtime bugs.

Is there any plan or intent to change the above status-quo if true ?

cheers,
B

---

From: Vittorio Mori <[email-masked]>
Date: Sun, 15 Nov 2020 19:18:41 +0100

Any package relying on precompiled binary blobs to be "faster" will
eventually break portability, at some point.

This whole PyPy thing looks pretty fugly, like most Python-related stuff,
imho.

I'm pretty sure there are workarounds, but they require the user to do some
homework.

Canned stuff is something I've come to hate, seeing the package mess/hell
Ubuntu has become.

Il giorno dom 15 nov 2020 alle ore 18:25 Banibrata Dutta <
[email-masked]> ha scritto:

> Hi,
>
> AFAIK Alpine doesn't support PyPy or PyPy3 JIT compiler for Python. Is
> this true or did I somehow miss it's package in the repositories ?
>

---

From: Banibrata Dutta <[email-masked]>
Date: Mon, 16 Nov 2020 00:42:18 +0530

PyPy is opensource software, do not understand your point about precompiled
binary blobs ? It is a JIT compiler, and Alpine already ships OpenJDK with
Java JIT compiler.
Python powers ~44% of web-software (with java at about 40%) and ranks
pretty high on the popularity chart (statistica) -- so something at #2
being fugly is a matter of personal opinion.
Alpine is a server-centric distribution, and has fairly good support for
Python (which is very nice).

BTW, looks like someone has been doing this specifically for Docker images
https://github.com/JayH5/alpine-pypy

On Sun, Nov 15, 2020 at 11:48 PM Vittorio Mori <[email-masked]>
wrote:

> I'm pretty sure there are workarounds, but they require the user to do
> some homework.
>

-- 
regards,
Banibrata
http://www.linkedin.com/in/bdutta
http://twitter.com/edgeliving

---

From: Wolf <[email-masked]>
Date: Sun, 15 Nov 2020 21:33:47 +0100

Hello,

On 2020-11-16 00:42:18 +0530, Banibrata Dutta wrote:
> binary blobs ?

See comments below.

> >>    1. Make your builds much slower.

When installing python packages (I do not know if they have a name like
"gems" in ruby), lot of packages then include C code have already
compiled version available and pip uses them. So for glibc systems you
just download binary blob. That is faster then to compile it from source
code (which happens on alpine).

> >>    2. Make your images bigger.

This is usually caused by people leaving things like compilers in the
final image, so that is their mistake, not alpine's.

> >>    3. Waste your time.

Combination of 1 and 2.

> >>    4. On occassion, introduce obscure runtime bugs.

While this one might be true, the "on occassion" did not happen to me
yet, so it does not seem to be that common.

1 and 2 are both solvable given some engineering effort, it depends on
you situation if the work needed is justified or not.

W.

-- 
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.

---

From: Banibrata Dutta <[email-masked]>
Date: Mon, 16 Nov 2020 11:03:02 +0530

> code (which happens on alpine).

Okay got what the "binary blob" reference is to, indeed python packages,
extensions (native compiled, linked with glibc) -- needing wheel files etc.
Many of them are *not* part of typical Python distribution, and thus
porting them is a large, open-ended task, until a very large set of such
packages are ported.

> you situation if the work needed is justified or not.

Understand. Just wanted to see if this topic has come up on Alpine user's
group, is it indeed a problem people faced, and to see if anyone is aware
of any plans by Alpine developers to solve this in near future.

Wondering, if there is any concept of people voting on Github issues
(feature request) for Alpine ?

---

From: PICCORO McKAY Lenz <[email-masked]>
Date: Tue, 17 Nov 2020 09:32:44 -0400

> (feature request) for Alpine ?

you can start to make this! what are you waiting for?

remenber.. opensource = we can build by own!