[Backports] Backporting rpm-build-python to M24

Grigory Batalov bga на tepkom.ru
Вт Фев 14 16:30:34 MSK 2006


Здравствуйте!

Мне бы хотелось оценить трудоёмкость переноса текущего
rpm-build-python-0.27 из Сизифа в backports M24. Это упростило
бы поддержку питоньих модулей одновременно в Сизифе и в М24.

1. В rpm -alt55 было небольшое изменение касательно Питона, я
перенёс его в -alt40, который был в Мастере 2.4. См. прилагаемые
rpm-4.0.4-alt40.diff и rpm-4.0-alt-python-pth.patch

Пакеты

rpm-4.0.4-alt40.M24.1.src.rpm
rpm-build-python-0.27-alt0.M24.1.src.rpm

доступны здесь:

ftp://oops.tepkom.ru/ALTLinux/rpm-compare/

2. Там же лежат результаты пересборки пакетов из Мастера 2.4,
updates и backports к нему, зависимых от питона. "Зависимость
от питона" определялась наличием "python" в

rpmquery --requires -p <srpm>.

Результаты пересборки в хэшере с новыми rpm и rpm-build-python
сравнивались с оригинальными пакетами из Мастера, updates и
backports на предмет --requires, --provides и --list. Полный
лог сборки - в файле hasher.log, разница новых и старых
пакетов - в rpm-compare.diff, список srpm - в srpms.list.

3. Что касается --list, то отличились всего 6 пакетов:

boson-0.10-alt2.i586.rpm
CMFFormController-1.0-alt1.i586.rpm
Epoz-0.7.4-alt1.i586.rpm
Localizer-1.0.1-alt1.i586.rpm
Plone-2.0.RC6-alt1.i586.rpm
tcl-tix-8.2.0-alt2.i586.rpm

В них почему-то отсутствуют некоторые .pyc и .pyo.
Да jabberpy-0.4-alt3.noarch.rpm переехал из /usr/lib/python2.2
в /usr/lib/python2.3 по понятным причинам.

4. Из оставшихся --requires и --provides неприятностей можно
ожидать лишь от первого: если пакет при очередной пересборке
потребует модулей, которых раньше не требовал (даже если
потом и не работал), и которых раньше никто не предоставлял,
то в репозитарии backports возникнет суета с автоматическими
пересборками и его разбухание.

Проблемных пакетов оказалось 26 (см. new.requires.rpms).

Большинство из них требуют модулей, которые уже предоставлены
тем или иным пакетом в репозитарии, так что новые зависимости
можно проигнорировать. За исключением шести аутсайдеров:

Formulator-1.6.1-alt3.i586.rpm	python2.3(BasicForm)
Formulator-1.6.1-alt3.i586.rpm	python2.3(FormValidationError)
inn-2.4.1-alt4.1.i586.rpm	python2.3(nnrpd)
Localizer-1.0.1-alt1.i586.rpm	python2.3(Accept)
Localizer-1.0.1-alt1.i586.rpm	python2.3(zgettext)
Plone-2.0.RC6-alt1.i586.rpm	python2.3(migration_utils)
PyXML-0.8.3-alt1.i586.rpm	python2.3(XMLClient)
PyXML-0.8.3-alt1.i586.rpm	python2.3(xml_dc)
PyXML-0.8.3-alt1.i586.rpm	python2.3(XMLFactory)
PyXML-0.8.3-alt1.i586.rpm	python2.3(XMLinter)
scons-0.94-alt1.noarch.rpm	python2.3(SCons)

5. Что делать с проблемными пакетами из пп. 3 и 4 я пока
не придумал, разве что попробовать собрать более новые версии.
Ковыряться в пакетах самому пока не хочется, так что помощь
от их мэйнтейнеров была бы весьма кстати.

Formulator		Gennady Kovalev <gik на altlinux.ru>
inn			Konstantin Timoshenko <kt на altlinux.ru>
Localizer		Gennady Kovalev <gik на altlinux.ru>
Plone			Gennady Kovalev <gik на altlinux.ru>
PyXML			Dmitry V. Levin <ldv на altlinux.org>
(python-module-PyXML)	Vitaly Lipatov <lav на altlinux.ru>
scons			Yury Aliaev <mutabor на altlinux.ru>
			Vitaly Lipatov <lav на altlinux.ru>

boson			Sergey V Turchin <zerg at altlinux dot org>
CMFFormController	Gennady Kovalev <gik на altlinux.ru>
Epoz			Gennady Kovalev <gik на altlinux.ru>
jabberpy		Mikhail Zabaluev <mhz на altlinux.ru>
tcl-tix			Sergey Bolshakov <sbolshakov на altlinux.ru>

Радует, что этих пакетов всего 11 =). Так что я бы всё равно
рискнул. У кого есть соображения по изложенному материалу,
прошу высказываться.

-- 
 Григорий Баталов,
 программист
 ЗАО "Ланит-Терком"


-- 
 Григорий Баталов,
 программист
 ЗАО "Ланит-Терком"
----------- следущая часть -----------
--- rpm-4.0.4-alt40/rpm-4_0.spec	2004-06-29 15:28:37 +0000
+++ rpm-4.0.4-alt40.M24.1/rpm-4_0.spec	2006-01-17 10:46:47 +0000
@@ -6,7 +6,7 @@
 
 Name: %rpm_name
 Version: %rpm_version
-Release: alt40
+Release: alt40.M24.1
 
 %define ifdef() %if %{expand:%%{?%{1}:1}%%{!?%{1}:0}}
 %define get_dep() %(rpm -q --qf '%%{NAME} >= %%|SERIAL?{%%{SERIAL}:}|%%{VERSION}-%%{RELEASE}' %1 2>/dev/null || echo '%1 >= unknown')
@@ -34,6 +34,7 @@ Url: http://www.rpm.org/
 # 2. cvs -d :pserver:anonymous на cvs.rpm.org:/cvs/devel export -r rpm-4_0 rpm
 # 3. ALT Linux CVS
 Source: %srcname.tar.bz2
+Patch: rpm-4.0-alt-python-pth.patch
 
 Provides: %_sysconfdir/%name/macros.d
 
@@ -198,6 +199,7 @@ programs that will manipulate RPM packag
 
 %prep
 %setup -q -n %srcname
+%patch -p1
 
 find -type d -name CVS -print0 |
 	xargs -r0 %__rm -rf --
@@ -507,6 +509,11 @@ fi
 %endif #with contrib
 
 %changelog
+* Tue Jan 17 2006 Grigory Batalov <bga на altlinux.ru> 4.0.4-alt40.M24.1
+- Handle *.pth files like other python files
+  (#8812, patch from Ivan Fedorov).
+  Backported feature from Sisyphus (4.0.4-alt55).
+
 * Tue Jun 29 2004 Dmitry V. Levin <ldv на altlinux.org> 4.0.4-alt40
 - find-lang:
   + more tweaks (#4540).
End of diff

Files not compared in rpm-4.0.4-alt40:
rpm-4_0-4.0.4/


Files not compared in rpm-4.0.4-alt40.M24.1:
rpm-4_0-4.0.4/
rpm-4.0-alt-python-pth.patch


----------- следущая часть -----------
diff -ruN rpm-4_0-4.0.4-alt54/autodeps/linux.prov.in rpm-4_0-4.0.4-alt55/autodeps/linux.prov.in
--- rpm-4_0-4.0.4-alt54/autodeps/linux.prov.in	2005-06-16 20:18:15 +0400
+++ rpm-4_0-4.0.4-alt55/autodeps/linux.prov.in	2006-01-12 15:13:11 +0300
@@ -173,7 +167,7 @@
 		fi
 	fi
 
-	if [ -z "${f%%*.py}" -o -z "${f%%*.pyo}" -o -z "${f%%*.pyc}" ]; then
+	if [ -z "${f%%*.py}" -o -z "${f%%*.pyo}" -o -z "${f%%*.pyc}" -o -z "${f%%*.pth}" ]; then
 		if [ -n "$FIND_PYTHON" ]; then
 			[ -z "$LIST_PYTHON" ] && LIST_PYTHON="$f" || LIST_PYTHON="$LIST_PYTHON
 $f"

----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : rpm-compare.sh
Тип     : application/x-sh
Размер  : 2541 байтов
Описание: отсутствует
Url     : http://lists.altlinux.org/pipermail/backports/attachments/20060214/e0a62850/rpm-compare.sh
----------- следущая часть -----------
AqGuard-1.1.0-alt7.noarch.rpm
boson-0.10-alt2.i586.rpm
BTreeFolder2-1.0-alt1.i586.rpm
ClientCookie-python-0.4.18-alt0.1.i586.rpm
CMFActionIcons-1.0-alt1.i586.rpm
CMFFormController-1.0-alt1.i586.rpm
CMFQuickInstallerTool-1.4-alt1.i586.rpm
Epoz-0.7.4-alt1.i586.rpm
Formulator-1.6.1-alt3.i586.rpm
getmail-3.2.1-alt1.noarch.rpm
GroupUserFolder-2.0-alt1.i586.rpm
inn-2.4.1-alt4.1.i586.rpm
jabberpy-0.4-alt3.noarch.rpm
libAltDist-0.0.11-alt3.noarch.rpm
Localizer-1.0.1-alt1.i586.rpm
NauDoc-2.8.3-alt2.noarch.rpm
Plone-2.0.RC6-alt1.i586.rpm
Pymacs-0.22-alt1.i586.rpm
python-ClientForm-0.1.15-alt2.i586.rpm
python-module-pyparsing-1.1.2-alt5.noarch.rpm
PyXML-0.8.3-alt1.i586.rpm
RequestDecoder-1.1.2-alt3.noarch.rpm
scons-0.94-alt1.noarch.rpm
tcl-tix-8.2.0-alt2.i586.rpm
TranslationService-0.4-alt1.i586.rpm
yodl-1.31.18-ipl5mdk.i586.rpm


Подробная информация о списке рассылки Backports