As recently found on an undisclosed gentoo channel, various git processes need SSL to work.
> Send this email? ([y]es|[n]o|[e]dit|[q]uit|[a]ll): y
> Not using SSL_VERIFY_PEER due to out-of-date IO::Socket::SSL.
> To use SSL please install IO::Socket::SSL with version>=2.007 at /usr/lib64/perl5/5.30.3/Net/SMTP.pm line 268.
In the old days, where they used Net-SMTP-SSL, this was fine.
In the old days, even when git code didn't use Net-SMTP-SSL, but still depended on Net-SMTP-SSL, this was fine, due to the pull dep of IO-Socket-SSL
However, Net::SMTP (in perl itself) inhaled "support" for doing SSL SMTP stuff, Net-SMTP-SSL was officially deprecated, and Git moved to using that.
But its a "weak" optional dep, in that, the code just doesn't support SSL stuff without it, and barfs when you try.
And this means on systems without IO-Socket-SSL, `git send-email` is broken, and due to the change in dependencies, this is currently highly likely to occur if you depclean anything.
Subsequently, unless git forces IO-Socket-SSL into the dep graph, send-email can't work, ( though will continue to work if you USE="subversion" due to the libwww-perl dep )
And it seems rather strange for git to *directly* depend on IO-Socket-SSL, given it is now an indirect dependency.
But we can't really stuff this into perl with a USE flag on dev-lang/perl, as this would be prohibitive for stabilization and keywording and everything.
Instead, I propose that we add a PDEPEND to virtual/perl-libnet, who's job it is to make sure Net::SMTP is installed, which ensures IO-Socket-SSL is installed with USE="ssl"
Then, git can simply depend on that however it likes, with whatever USE flag gating it wants.
This is overall not a great thing still, given how IO-Socket-SSL has in the past been a difficult target for arches to keyword, exacerbated by the openssl-vs-libressl thing, which requires profile hackery for all arches who can't/don't want to support libressl
But at least by putting it in libnet, not perl-itself, the scope of *users* who are forced to install this are minimized.
This bug *probably* affects dev-perl/Email-Sender too.
The bug has been referenced in the following commit(s):
Author: Kent Fredric <firstname.lastname@example.org>
AuthorDate: 2020-08-28 19:55:23 +0000
Commit: Kent Fredric <email@example.com>
CommitDate: 2020-08-28 19:55:42 +0000
virtual/perl-libnet: PDEPEND dev-perl/IO-Socket-SSL re bug #735004
This is necessary due to Net::SMTP having ssl mechanics, that don't work
unless IO-Socket-SSL is available.
However, adding this dep presently drops support for m68k and m68k-mint
due to those arches not keeping on top of keywording for IO-Socket-SSL
Package-Manager: Portage-2.3.103, Repoman-2.3.22
Signed-off-by: Kent Fredric <firstname.lastname@example.org>
virtual/perl-libnet/perl-libnet-3.110.0-r4.ebuild | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)