From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Wed, 23 Sep 2020 09:30:40 +0300 From: "Dmitry V. Levin" To: ALT Devel discussion list Message-ID: <20200923063040.GB14436@altlinux.org> References: <20200922170601.GA23636@dad.imath.kiev.ua> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20200922170601.GA23636@dad.imath.kiev.ua> Subject: Re: [devel] Q: PEP-503/566 normalized names for python? X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2020 06:30:40 -0000 Archived-At: List-Archive: List-Post: On Tue, Sep 22, 2020 at 08:06:01PM +0300, Igor Vlasenko wrote: > Уважаемые господа, > > Обсуждал с rider@ недостаточный охват python* пакетов сервисом watch, > вспомнил, что там не хватает сервиса pypi watch, > а написать его мешает тот факт, что у нас > до сих пор не реализованы канонические имена > для исходных питоньих модулей. > Так называемые "normalized names" > сначала https://www.python.org/dev/peps/pep-0503/ > потом https://www.python.org/dev/peps/pep-0566/ > > В rpm-based дистрибутивах (SuSE,Mandriva,Fedora) уже сложился > стандарт их применения: > 1) в бинарных файлах есть pythonNNdist(normalizedname) Provides. > Пример из OpenSuSE: > $ rpmquery --provides -p python3-ZEO-5.2.1-3.5.noarch.rpm | grep dist > python3.8dist(zeo) = 5.2.1 > python3dist(zeo) = 5.2.1 > > И что хорошо, normalized names в пакет руками добавлять не нужно. > Эти имена используются в egg-info, их легко получить оттуда. > если добавить в rpm-build-pythonN pythonNdist.prov, > который будет генерировать Provides: python3dist(normalizedname). > При чем готовый код для prov можно подсмотреть из той же Fedora. > > 2) рекомендовать называть пакет > pythonN-module-normalizedname. А не лучше ли вместо этих балластных provides, как в вашем примере из OpenSuSE, просто обязать все без исключения бинарные пакеты из pypi называться python3-module-normalizedname? > А то у нас бардак. Проект с именем PyFoo и normalized name pyfoo > может быть упакетван как > python3-module-foo > python3-module-pyfoo > python3-module-Foo > python3-module-PyFoo А какова сейчас в Сизифе доля неправильно названных пакетов для python3? -- ldv