public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
From: Eli Schwartz <eschwartz@gentoo.org>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] Re: 17 new packages because pip wants to write poetry?
Date: Mon, 29 Jul 2024 14:59:05 -0400	[thread overview]
Message-ID: <f627ac31-9364-4bfb-a42b-2af517b9f0d4@gentoo.org> (raw)
In-Reply-To: <v88lko$lhm$1@ciao.gmane.io>


[-- Attachment #1.1: Type: text/plain, Size: 2963 bytes --]

On 7/29/24 2:05 PM, Grant Edwards wrote:
> On 2024-07-29, Eli Schwartz <eschwartz@gentoo.org> wrote:
>>
>>> It turns out dev-python/poetry has nothing to do with poetry, so my AI
>>> paranoia was unjustified (this time), but one wonders what devs are
>>> thinking when the decide they add dozens of new dependencies like
>>> that. Why does pip suddenly need to format (or produce?) both markdown
>>> and RTF when it's been able to get along fine without them for so many
>>> years?
>>
>> For many years, pip has contained bundled libraries. These libraries
>> recently got unbundled, and now you're installing a system copy.
> 
> Yep, I figured that was probably the answer.  I (for one) would
> appreciate some sort of notice when such an unbundling happens so that
> I don't waste time trying to track down why emerge suddenly wants to
> install a bunch of new packages.  I can't really come up with a good
> mechanism for that other than news items.


Well, it is there in the `git log` of the package. And at
https://packages.gentoo.org/packages/dev-python/pip/changelog


 Commits on 2024-06-23

dev-python/pip: Unbundle dependencies


>> pip has always "needed to format (or produce?) both markdown and RTF",
> 
> OK, now I'm genuinely curious: what does pip need to do with markdown
> and RTF? My first guess was that its man pages aren't written in nroff
> any more and somehow markdown was being used. [I already had at least
> one markdown implementation installed, but pip apparently demands a
> different one.] But there is no man page for pip. There are a bunch of
> documents in /usr/share/doc/pip-<ver>, but they're all reStructured Text.
> 
> Oh well, I guess I should be thankful it didn't force LaTeX and pandoc
> installs.


Python software loves to depend on python software and hates to depend
on anything that isn't written in python, so I think you're pretty safe
there. :)

As for why it needs to format markdown -- build dependencies of python
software often do, since they want to render the darned stuff into the
https://pypi.org display page for that software and the one and only way
to do so is to render it into the metadata files which get installed at
runtime -- and which are also directly displayed on https://pypi.org

I don't understand it myself, either.

In this case it's actually a bit worse because pip internally uses, and
usually bundles a code copy, of https://pypi.org/project/rich/

"rich" can do a lot of things, including take markdown and print it with
fancy formatting and colors to your terminal emulator. pip isn't using
most of the features of rich, but it is *using* rich at all, and
therefore markdown ends up as a recursive dependency.


...

aside: there are pip manpages, funny you should mention that.

I could totally add another bdepend on sphinx for this! But I would have
to package some things first. :(


-- 
Eli Schwartz


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]

  reply	other threads:[~2024-07-29 18:59 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-29 16:01 [gentoo-user] 17 new packages because pip wants to write poetry? Grant Edwards
2024-07-29 16:16 ` Eli Schwartz
2024-07-29 18:05   ` [gentoo-user] " Grant Edwards
2024-07-29 18:59     ` Eli Schwartz [this message]
2024-07-29 20:09       ` Grant Edwards
2024-07-29 20:49         ` Eli Schwartz
2024-07-29 17:46 ` [gentoo-user] " Andreas Fink

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f627ac31-9364-4bfb-a42b-2af517b9f0d4@gentoo.org \
    --to=eschwartz@gentoo.org \
    --cc=gentoo-user@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox