From 178596ee090e54d4b2b3df660f14362b35957746 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Tue, 31 Oct 2006 14:39:17 +0000 Subject: [PATCH 001/150] update devel branch --- sources | 1 + yum-utils.spec | 28 +++++++++++++++++++++++++--- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/sources b/sources index f4c721f..ba1ead0 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ e9af7d38f47e5d2cd945790061fa5f8b yum-utils-1.0.tar.gz +53ba387a337b605c5490eac8229da32d yum-utils-1.0.1.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index dfce1a4..30f6dfb 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.0 -Release: 2%{?dist} +Version: 1.0.1 +Release: 1%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -120,6 +120,16 @@ Requires: yum >= 3.0 This plugin adds a --ignore-broken to yum to make it possible to check packages for dependency problems and skip the one with problems. +%package -n yum-priorities +Summary: plugin to give priorities to packages from different repos +Group: System Environment/Base +Requires: yum >= 3.0 + +%description -n yum-priorities +This plugin allows repositories to have different priorities. +Packages in a repository with a lower priority can't be overridden by packages +from a repository with a higher priority even if repo has a later version. + %prep %setup -q @@ -129,7 +139,7 @@ make DESTDIR=$RPM_BUILD_ROOT install make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install -plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken" +plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ cd plugins @@ -223,7 +233,19 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/skip-broken.conf /usr/lib/yum-plugins/skip-broken.* +%files -n yum-priorities +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/priorities.conf +/usr/lib/yum-plugins/priorities.* + + %changelog +* Tue Oct 31 2006 Tim Lauridsen +- mark it as 1.0.1 + +* Fri Oct 27 2006 Tim Lauridsen +- Added priorities plugin written by Daniel de Kok + * Wed Oct 4 2006 Seth Vidal - mark it as 1.0 - change requires for the packages to yum 3.0 From 384e36c6034fb9769fe7a9706002d812382b172a Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Tue, 6 Feb 2007 11:06:53 +0000 Subject: [PATCH 002/150] yum-utils release 1.0.2 --- .cvsignore | 2 +- sources | 3 +-- yum-utils.spec | 9 ++++++--- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.cvsignore b/.cvsignore index d23967e..a297769 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.0.tar.gz +yum-utils-1.0.2.tar.gz diff --git a/sources b/sources index ba1ead0..15949e8 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -e9af7d38f47e5d2cd945790061fa5f8b yum-utils-1.0.tar.gz -53ba387a337b605c5490eac8229da32d yum-utils-1.0.1.tar.gz +3d63ecea2d0472ca2e1d893e7b5bfb78 yum-utils-1.0.2.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 30f6dfb..d905f93 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.0.1 -Release: 1%{?dist} +Version: 1.0.2 +Release: 1 License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -157,7 +157,7 @@ rm -rf $RPM_BUILD_ROOT %preun -n yum-updateonboot if [ $1 = 0 ]; then /sbin/service yum-updateonboot stop >/dev/null 2>&1 || :; - /sbin/chkconfig --del yum >/dev/null 2>&1 || :; + /sbin/chkconfig --del yum-updateonboot >/dev/null 2>&1 || :; fi %files @@ -240,6 +240,9 @@ fi %changelog +* Sun Dec 31 2006 Tim Lauridsen +- mark it as 1.0.2 + * Tue Oct 31 2006 Tim Lauridsen - mark it as 1.0.1 From 74d3877c33c53ab45ceb1ddfd93e6de67f9f1e84 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Tue, 6 Feb 2007 11:17:56 +0000 Subject: [PATCH 003/150] Added dist tag and bumped release --- yum-utils.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index d905f93..a4a54eb 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.0.2 -Release: 1 +Release: 2%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -240,6 +240,10 @@ fi %changelog + +* Tue Feb 6 2007 Tim Lauridsen +- bumped release and added %%{dist} tag + * Sun Dec 31 2006 Tim Lauridsen - mark it as 1.0.2 From 6289be063c56172a38afa1984ec310570668588b Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Mon, 19 Feb 2007 10:07:16 +0000 Subject: [PATCH 004/150] yum-utils release 1.1.0 (yum >= 3.1.1 only) --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 48 ++++++++++++++++++++++++++++++++++++++++++------ 3 files changed, 44 insertions(+), 8 deletions(-) diff --git a/.cvsignore b/.cvsignore index a297769..f89d031 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.0.2.tar.gz +yum-utils-1.1.0.tar.gz diff --git a/sources b/sources index 15949e8..686d0ff 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3d63ecea2d0472ca2e1d893e7b5bfb78 yum-utils-1.0.2.tar.gz +e6f7ab679089936a598fa9730a6b6128 yum-utils-1.1.0.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index a4a54eb..0942b40 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,14 +1,14 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.0.2 -Release: 2%{?dist} +Version: 1.1.0 +Release: 1%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz URL: http://linux.duke.edu/yum/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.0 +Requires: python >= 2.4 , yum >= 3.1.1 %description yum-utils is a collection of utilities and examples for the yum package @@ -117,7 +117,7 @@ Group: System Environment/Base Requires: yum >= 3.0 %description -n yum-skip-broken -This plugin adds a --ignore-broken to yum to make it possible to +This plugin adds a --skip-broken to yum to make it possible to check packages for dependency problems and skip the one with problems. %package -n yum-priorities @@ -130,6 +130,17 @@ This plugin allows repositories to have different priorities. Packages in a repository with a lower priority can't be overridden by packages from a repository with a higher priority even if repo has a later version. +%package -n yum-refresh-updatesd +Summary: Tell yum-updatesd to check for updates when yum exits +Group: System Environment/Base +Requires: yum >= 3.0 + +%description -n yum-refresh-updatesd +yum-refresh-updatesd tells yum-updatesd to check for updates when yum exits. +This way, if you run 'yum list updates' and yum says there's a new version +of (for example) zsh available, puplet will almost instantly update itself +to reflect this. + %prep %setup -q @@ -139,7 +150,7 @@ make DESTDIR=$RPM_BUILD_ROOT install make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install -plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities" +plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities refresh-updatesd" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ cd plugins @@ -187,6 +198,8 @@ fi %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/changelog.conf /usr/lib/yum-plugins/changelog.* +%{_mandir}/man1/yum-changelog.1.* +%{_mandir}/man5/yum-changelog.conf.5.* %files -n yum-fastestmirror %defattr(-, root, root) @@ -238,11 +251,34 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/priorities.conf /usr/lib/yum-plugins/priorities.* +%files -n yum-refresh-updatesd +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/refresh-updatesd.conf +/usr/lib/yum-plugins/refresh-updatesd.* %changelog +* Mon Feb 19 2007 Tim Lauridsen +- mark it as 1.1.0 (again) + +* Thu Feb 15 2007 Tim Lauridsen +- removed versionlock.list installation. + +* Wed Feb 14 2007 Tim Lauridsen +- Added versionlock.list installation. +- fixed skip-broken description (--ignore-broken -> --skip-broken) + +* Tue Feb 13 2007 James Bowes +- Add yum-refresh-updatesd plugin + +* Thu Feb 8 2007 Tim Lauridsen +- Added man dirs to yum-changelog files section + +* Wed Feb 7 2007 Tim Lauridsen +- mark it as 1.1.0 +- Requires: yum >= 3.1.1 for yum-utils. * Tue Feb 6 2007 Tim Lauridsen -- bumped release and added %%{dist} tag +- Added %%{?dist} tag * Sun Dec 31 2006 Tim Lauridsen - mark it as 1.0.2 From c0082b4b20bdf5a9fcffbc2072fc14d58aa2debb Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Tue, 20 Feb 2007 11:36:19 +0000 Subject: [PATCH 005/150] yum-utils release 1.1.1-1 (yum >= 3.1.1 only) --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 5 ++++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.cvsignore b/.cvsignore index f89d031..274b62c 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.0.tar.gz +yum-utils-1.1.1.tar.gz diff --git a/sources b/sources index 686d0ff..b6ec560 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -e6f7ab679089936a598fa9730a6b6128 yum-utils-1.1.0.tar.gz +861b98053c27b6768cc10f2f60b7e081 yum-utils-1.1.1.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 0942b40..02355ac 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.0 +Version: 1.1.1 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -257,6 +257,9 @@ fi /usr/lib/yum-plugins/refresh-updatesd.* %changelog +* Mon Feb 19 2007 Tim Lauridsen +- mark it as 1.1.1 + * Mon Feb 19 2007 Tim Lauridsen - mark it as 1.1.0 (again) From 85b519fa20378e81ba634ead3b4fb4b6eb4d6f0a Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 18 Apr 2007 13:36:30 +0000 Subject: [PATCH 006/150] Release 1.1.2 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 24 ++++++++++++++++++++++-- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/.cvsignore b/.cvsignore index 274b62c..4f48a77 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.1.tar.gz +yum-utils-1.1.2.tar.gz diff --git a/sources b/sources index b6ec560..27107f3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -861b98053c27b6768cc10f2f60b7e081 yum-utils-1.1.1.tar.gz +60daeb7e379bae4a604f973a8a2deb39 yum-utils-1.1.2.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 02355ac..8c92358 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.1 +Version: 1.1.2 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -141,6 +141,17 @@ This way, if you run 'yum list updates' and yum says there's a new version of (for example) zsh available, puplet will almost instantly update itself to reflect this. +%package -n yum-merge-conf +Summary: Yum plugin to merge configuration changes when installing packages +Group: System Environment/Base +Requires: yum >= 3.0 + +%description -n yum-merge-conf +This yum plugin adds the "--merge-conf" command line option. With this option, +Yum will ask you what to do with config files which have changed on updating a +package. + + %prep %setup -q @@ -150,7 +161,7 @@ make DESTDIR=$RPM_BUILD_ROOT install make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install -plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities refresh-updatesd" +plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ cd plugins @@ -256,7 +267,16 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/refresh-updatesd.conf /usr/lib/yum-plugins/refresh-updatesd.* +%files -n yum-merge-conf +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/merge-conf.conf +/usr/lib/yum-plugins/merge-conf.* + %changelog +* Thu Apr 12 2007 Tim Lauridsen +- mark as 1.1.2 +- Added merge-conf plugin written by Aurelien Bompard + * Mon Feb 19 2007 Tim Lauridsen - mark it as 1.1.1 From 71fb324da28d49c367c485dbeb5c3f7fe9d815ae Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 2 May 2007 07:25:48 +0000 Subject: [PATCH 007/150] Release 1.1.3-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 33 ++++++++++++++++++++++++++++++--- 3 files changed, 32 insertions(+), 5 deletions(-) diff --git a/.cvsignore b/.cvsignore index 4f48a77..fd0ebb0 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.2.tar.gz +yum-utils-1.1.3.tar.gz diff --git a/sources b/sources index 27107f3..97ec540 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -60daeb7e379bae4a604f973a8a2deb39 yum-utils-1.1.2.tar.gz +2c0d7f3fed065329696589dd25c4549a yum-utils-1.1.3.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 8c92358..cee9311 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.2 +Version: 1.1.3 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -151,6 +151,17 @@ This yum plugin adds the "--merge-conf" command line option. With this option, Yum will ask you what to do with config files which have changed on updating a package. +%package -n yum-security +Summary: Yum plugin to enable security filters +Group: System Environment/Base +Requires: yum >= 3.0.5 + +%description -n yum-security +This plugin adds ther options --security, --cve, --bz and --advisory flags +to yum and the list-security and info-security commands. +The options make it possible to limit list/upgrade of packages to specific +security relevant ones. The commands give you the security information. + %prep %setup -q @@ -161,7 +172,7 @@ make DESTDIR=$RPM_BUILD_ROOT install make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install -plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf" +plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf security" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ cd plugins @@ -184,9 +195,10 @@ fi %files %defattr(-, root, root) -%doc README +%doc README yum-util-cli-template %doc COPYING %doc plugins/README +%{_bindir}/debuginfo-install %{_bindir}/package-cleanup %{_bindir}/repoclosure %{_bindir}/repomanage @@ -272,7 +284,22 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/merge-conf.conf /usr/lib/yum-plugins/merge-conf.* +%files -n yum-security +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/security.conf +/usr/lib/yum-plugins/security.* +%{_mandir}/man8/yum-security.8.* + %changelog +* Tue May 1 2007 Tim Lauridsen +- mark as 1.1.3 + +* Tue May 1 2007 Seth Vidal +- added debuginfo-install + +* Fri Apr 20 2007 Tim Lauridsen +- Added security plugin written by James Antill + * Thu Apr 12 2007 Tim Lauridsen - mark as 1.1.2 - Added merge-conf plugin written by Aurelien Bompard From 67980882e6b2735295450b4d3f13c9b6d5f065a2 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 16 May 2007 07:57:52 +0000 Subject: [PATCH 008/150] Release 1.1.4-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 5 ++++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.cvsignore b/.cvsignore index fd0ebb0..c1d777e 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.3.tar.gz +yum-utils-1.1.4.tar.gz diff --git a/sources b/sources index 97ec540..726077a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -2c0d7f3fed065329696589dd25c4549a yum-utils-1.1.3.tar.gz +6d5388c557c6ca1df32f14e8509acec0 yum-utils-1.1.4.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index cee9311..2a70eea 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.3 +Version: 1.1.4 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -291,6 +291,9 @@ fi %{_mandir}/man8/yum-security.8.* %changelog +* Tue May 1 2007 Tim Lauridsen +- mark as 1.1.4 + * Tue May 1 2007 Tim Lauridsen - mark as 1.1.3 From 1a9b6415ce6f8d6efd0011a7628d6336d2740825 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Mon, 18 Jun 2007 08:13:57 +0000 Subject: [PATCH 009/150] Release 1.1.5-1 --- sources | 2 +- yum-utils.spec | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 726077a..04c09d9 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -6d5388c557c6ca1df32f14e8509acec0 yum-utils-1.1.4.tar.gz +4056a620b61ca269c9738acb8b233325 yum-utils-1.1.5.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 2a70eea..776c60e 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.4 +Version: 1.1.5 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -291,6 +291,9 @@ fi %{_mandir}/man8/yum-security.8.* %changelog +* Mon Jun 18 2007 Tim Lauridsen +- mark as 1.1.5 + * Tue May 1 2007 Tim Lauridsen - mark as 1.1.4 From c89142c8529668740531e19ce249200ebcfd3e23 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Tue, 24 Jul 2007 13:27:47 +0000 Subject: [PATCH 010/150] Release 1.1.6-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 33 +++++++++++++++++++++++++++++++-- 3 files changed, 33 insertions(+), 4 deletions(-) diff --git a/.cvsignore b/.cvsignore index c1d777e..7ae9fd1 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.4.tar.gz +yum-utils-1.1.6.tar.gz diff --git a/sources b/sources index 04c09d9..bac6424 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4056a620b61ca269c9738acb8b233325 yum-utils-1.1.5.tar.gz +e7ad94116fdb343da0153f8fe556afd6 yum-utils-1.1.6.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 776c60e..acf776d 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.5 +Version: 1.1.6 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -134,6 +134,7 @@ from a repository with a higher priority even if repo has a later version. Summary: Tell yum-updatesd to check for updates when yum exits Group: System Environment/Base Requires: yum >= 3.0 +Requires: yum-updatesd %description -n yum-refresh-updatesd yum-refresh-updatesd tells yum-updatesd to check for updates when yum exits. @@ -162,6 +163,18 @@ to yum and the list-security and info-security commands. The options make it possible to limit list/upgrade of packages to specific security relevant ones. The commands give you the security information. +%package -n yum-protect-packages +Summary: Yum plugin to prevents Yum from removing itself and other protected packages +Group: System Environment/Base +Requires: yum >= 3.0 + +%description -n yum-protect-packages +this plugin prevents Yum from removing itself and other protected packages. +By default, yum is the only package protected, but by extension this +automatically protects everything on which yum depends (rpm, python, glibc, +and so on).Therefore, the plugin functions well even without +compiling careful lists of all important packages. + %prep %setup -q @@ -172,7 +185,7 @@ make DESTDIR=$RPM_BUILD_ROOT install make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install -plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf security" +plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf security protect-packages" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ cd plugins @@ -241,6 +254,7 @@ fi %files -n yum-versionlock %defattr(-, root, root) +%doc plugins/versionlock/README %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.conf /usr/lib/yum-plugins/versionlock.* @@ -290,7 +304,22 @@ fi /usr/lib/yum-plugins/security.* %{_mandir}/man8/yum-security.8.* +%files -n yum-protect-packages +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protect-packages.conf +/usr/lib/yum-plugins/protect-packages.* + %changelog +* Tue Jul 24 2007 Tim Lauridsen +- mark as 1.1.6 +* Tue Jul 17 2007 Tim Lauridsen +- Added Requires: yum-updatesd to yum-refresh-updatesd +* Tue Jul 03 2007 Panu Matilainen +- Add versionlock list format documentation + +* Mon Jun 18 2007 Tim Lauridsen +- Added protect-packages plugin by Svetlana Anissimova and Matthew Miller + * Mon Jun 18 2007 Tim Lauridsen - mark as 1.1.5 From d959c10ecb6eb9591bf5dc31c70e07420ab3bb22 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Mon, 10 Sep 2007 12:17:02 +0000 Subject: [PATCH 011/150] Release 1.1.7-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 29 +++++++++++++++++++++++++++-- 3 files changed, 29 insertions(+), 4 deletions(-) diff --git a/.cvsignore b/.cvsignore index 7ae9fd1..afa674d 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.6.tar.gz +yum-utils-1.1.7.tar.gz diff --git a/sources b/sources index bac6424..57383f7 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -e7ad94116fdb343da0153f8fe556afd6 yum-utils-1.1.6.tar.gz +6680e58d20b07507f09bd6ab6f9d435c yum-utils-1.1.7.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index acf776d..e36fd1d 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.6 +Version: 1.1.7 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -175,6 +175,17 @@ automatically protects everything on which yum depends (rpm, python, glibc, and so on).Therefore, the plugin functions well even without compiling careful lists of all important packages. +%package -n yum-basearchonly +Summary: Yum plugin to let Yum install only basearch packages. +Group: System Environment/Base +Requires: yum >= 3.0 + +%description -n yum-basearchonly +this plugin makes Yum only install basearch packages on multiarch systems. +If you type 'yum install foo' on a x68_64 system, only 'foo-x.y.x86_46.rpm' is installed. +If you want to install the foo-x.y.i386.rpm, you have to type 'yum install foo.i386'. +The plugin only works with 'yum install'. + %prep %setup -q @@ -185,7 +196,10 @@ make DESTDIR=$RPM_BUILD_ROOT install make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install -plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf security protect-packages" +plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module \ + downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf \ + security protect-packages basearchonly" + mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ cd plugins @@ -309,7 +323,18 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protect-packages.conf /usr/lib/yum-plugins/protect-packages.* +%files -n yum-basearchonly +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/basearchonly.conf +/usr/lib/yum-plugins/basearchonly.* + + %changelog + +* Mon Sep 10 2007 Tim Lauridsen +- mark as 1.1.7 +* Tue Jul 24 2007 Tim Lauridsen +- Added basearchonly plugin by Adel Gadllah * Tue Jul 24 2007 Tim Lauridsen - mark as 1.1.6 * Tue Jul 17 2007 Tim Lauridsen From 810ec40a47292ba94f036582133333255f45c250 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 17 Oct 2007 16:26:25 +0000 Subject: [PATCH 012/150] Release 1.1.8 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 20 +++++++++++++++----- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/.cvsignore b/.cvsignore index afa674d..080cf5c 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.7.tar.gz +yum-utils-1.1.8.tar.gz diff --git a/sources b/sources index 57383f7..0c90232 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -6680e58d20b07507f09bd6ab6f9d435c yum-utils-1.1.7.tar.gz +a20b13012bf999bf392c268aac77814d yum-utils-1.1.8.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index e36fd1d..18efd64 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.7 +Version: 1.1.8 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -138,9 +138,8 @@ Requires: yum-updatesd %description -n yum-refresh-updatesd yum-refresh-updatesd tells yum-updatesd to check for updates when yum exits. -This way, if you run 'yum list updates' and yum says there's a new version -of (for example) zsh available, puplet will almost instantly update itself -to reflect this. +This way, if you run 'yum update' and install all available updates, puplet +will almost instantly update itself to reflect this. %package -n yum-merge-conf Summary: Yum plugin to merge configuration changes when installing packages @@ -236,7 +235,12 @@ fi %{_bindir}/repo-rss %{_bindir}/yumdownloader %{_bindir}/yum-builddep -%{_mandir}/man1/* +%{_mandir}/man1/package-cleanup.1.* +%{_mandir}/man1/repo-rss.1.* +%{_mandir}/man1/repoquery.1.* +%{_mandir}/man1/reposync.1.* +%{_mandir}/man1/yum-builddep.1.* +%{_mandir}/man1/yumdownloader.1.* %files -n yum-updateonboot %defattr(-, root, root) @@ -330,7 +334,13 @@ fi %changelog +* Wed Oct 17 2007 Tim Lauridsen +- mark as 1.1.8 +* Sun Sep 30 2007 James Bowes +- Update the yum-refresh-updatesd description +* Mon Sep 14 2007 Tim Lauridsen +- do not use wildcards for manpages in yum-utils files section to avoid duplicates * Mon Sep 10 2007 Tim Lauridsen - mark as 1.1.7 * Tue Jul 24 2007 Tim Lauridsen From 43fc29f5f393459a918cdfd1236d93208f550175 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Fri, 7 Dec 2007 09:08:33 +0000 Subject: [PATCH 013/150] Release 1.1.9-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 22 ++++++++++++++++++++-- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/.cvsignore b/.cvsignore index 080cf5c..8701d50 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.8.tar.gz +yum-utils-1.1.9.tar.gz diff --git a/sources b/sources index 0c90232..a87dbd5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -a20b13012bf999bf392c268aac77814d yum-utils-1.1.8.tar.gz +4325e5aec2ae73e099d4ebe04238598c yum-utils-1.1.9.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 18efd64..4f0e6f3 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.8 +Version: 1.1.9 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -185,6 +185,15 @@ If you type 'yum install foo' on a x68_64 system, only 'foo-x.y.x86_46.rpm' is i If you want to install the foo-x.y.i386.rpm, you have to type 'yum install foo.i386'. The plugin only works with 'yum install'. +%package -n yum-upgrade-helper +Summary: Yum plugin to help upgrades to the next distribution version +Group: System Environment/Base +Requires: yum >= 3.0 + +%description -n yum-upgrade-helper +this plugin allows yum to erase specific packages on install/update based on an additional +metadata file in repositories. It is used to simplify distribution upgrade hangups. + %prep %setup -q @@ -197,7 +206,7 @@ make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module \ downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf \ - security protect-packages basearchonly" + security protect-packages basearchonly upgrade-helper" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -332,8 +341,17 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/basearchonly.conf /usr/lib/yum-plugins/basearchonly.* +%files -n yum-upgrade-helper +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf +/usr/lib/yum-plugins/upgrade-helper.* + %changelog +* Fri Dec 7 2007 Tim Lauridsen +- mark as 1.1.9 +* Fri Oct 26 2007 Seth Vidal +- add upgrade-helper plugin * Wed Oct 17 2007 Tim Lauridsen - mark as 1.1.8 * Sun Sep 30 2007 James Bowes From de4234f14d6435d9158c5be3045c8c0c8bba74f8 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 3 Jan 2008 15:19:20 +0000 Subject: [PATCH 014/150] Release 1.1.10-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 30 +++++++++++++++++++++++++++--- 3 files changed, 29 insertions(+), 5 deletions(-) diff --git a/.cvsignore b/.cvsignore index 8701d50..c9842fa 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.9.tar.gz +yum-utils-1.1.10.tar.gz diff --git a/sources b/sources index a87dbd5..46b63b7 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4325e5aec2ae73e099d4ebe04238598c yum-utils-1.1.9.tar.gz +958aca92bacff1e5c56fe6e20c4e376e yum-utils-1.1.10.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 4f0e6f3..058fe51 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.9 +Version: 1.1.10 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -157,7 +157,7 @@ Group: System Environment/Base Requires: yum >= 3.0.5 %description -n yum-security -This plugin adds ther options --security, --cve, --bz and --advisory flags +This plugin adds the options --security, --cve, --bz and --advisory flags to yum and the list-security and info-security commands. The options make it possible to limit list/upgrade of packages to specific security relevant ones. The commands give you the security information. @@ -194,6 +194,15 @@ Requires: yum >= 3.0 this plugin allows yum to erase specific packages on install/update based on an additional metadata file in repositories. It is used to simplify distribution upgrade hangups. +%package -n yum-aliases +Summary: Yum plugin to enable aliases filters +Group: System Environment/Base +Requires: yum >= 3.0.5 + +%description -n yum-aliases +This plugin adds the command alias, and parses the aliases config. file to +enable aliases. + %prep %setup -q @@ -206,7 +215,7 @@ make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module \ downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf \ - security protect-packages basearchonly upgrade-helper" + security protect-packages basearchonly upgrade-helper aliases" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -215,6 +224,8 @@ for plug in $plugins; do install -m 644 $plug/*.conf $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ install -m 644 $plug/*.py $RPM_BUILD_ROOT/usr/lib/yum-plugins/ done +install -m 644 aliases/aliases $RPM_BUILD_ROOT/%{_sysconfdir}/yum/aliases.conf + %clean rm -rf $RPM_BUILD_ROOT @@ -244,11 +255,13 @@ fi %{_bindir}/repo-rss %{_bindir}/yumdownloader %{_bindir}/yum-builddep +%{_bindir}/yum-complete-transaction %{_mandir}/man1/package-cleanup.1.* %{_mandir}/man1/repo-rss.1.* %{_mandir}/man1/repoquery.1.* %{_mandir}/man1/reposync.1.* %{_mandir}/man1/yum-builddep.1.* +%{_mandir}/man1/yum-complete-transaction.1.* %{_mandir}/man1/yumdownloader.1.* %files -n yum-updateonboot @@ -346,8 +359,19 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf /usr/lib/yum-plugins/upgrade-helper.* +%files -n yum-aliases +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/aliases.conf +%config(noreplace) %{_sysconfdir}/yum/aliases.conf +/usr/lib/yum-plugins/aliases.* + %changelog +* Thu Jan 3 2008 Tim Lauridsen +- mark as 1.1.10 +* Thu Dec 12 2007 James Antill +- Add yum-aliases plugin + * Fri Dec 7 2007 Tim Lauridsen - mark as 1.1.9 * Fri Oct 26 2007 Seth Vidal From 9a183ad57c355f2eb74a88146bcb8e6a6af5a226 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 30 Jan 2008 06:12:48 +0000 Subject: [PATCH 015/150] Release 1.1.11 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 40 ++++++++++++++++++++++++++++++++++++++-- 3 files changed, 40 insertions(+), 4 deletions(-) diff --git a/.cvsignore b/.cvsignore index c9842fa..037f22d 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.10.tar.gz +yum-utils-1.1.11.tar.gz diff --git a/sources b/sources index 46b63b7..d3df5d4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -958aca92bacff1e5c56fe6e20c4e376e yum-utils-1.1.10.tar.gz +fc23c6635e6dcec3cbbcf30e064f522b yum-utils-1.1.11.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 058fe51..db79ce3 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.10 +Version: 1.1.11 Release: 1%{?dist} License: GPL Group: Development/Tools @@ -203,6 +203,25 @@ Requires: yum >= 3.0.5 This plugin adds the command alias, and parses the aliases config. file to enable aliases. +%package -n yum-list-data +Summary: Yum plugin to list aggregate package data +Group: System Environment/Base +Requires: yum >= 3.0.5 + +%description -n yum-list-data +This plugin adds the commands list-vendors, groups, baseurls, packagers, +buildhosts, licenses and arches. + +%package -n yum-tmprepo +Summary: Yum plugin to add temporary repositories +Group: System Environment/Base +Requires: yum >= 3.0.5 + +%description -n yum-tmprepo +This plugin adds the option --tmprepo which takes a url to a .repo file +downloads it and enables it for a single run. This plugin tries to ensure +that temporary repositories are safe to use, by default, by not allowing +gpg checking to be disabled. %prep %setup -q @@ -215,7 +234,7 @@ make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module \ downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf \ - security protect-packages basearchonly upgrade-helper aliases" + security protect-packages basearchonly upgrade-helper aliases list-data tmprepo" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -247,6 +266,7 @@ fi %{_bindir}/debuginfo-install %{_bindir}/package-cleanup %{_bindir}/repoclosure +%{_bindir}/repodiff %{_bindir}/repomanage %{_bindir}/repoquery %{_bindir}/repotrack @@ -365,10 +385,26 @@ fi %config(noreplace) %{_sysconfdir}/yum/aliases.conf /usr/lib/yum-plugins/aliases.* +%files -n yum-list-data +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/list-data.conf +/usr/lib/yum-plugins/list-data.* + +%files -n yum-tmprepo +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tmprepo.conf +/usr/lib/yum-plugins/tmprepo.* + %changelog +* Wed Jan 30 2008 Tim Lauridsen +- mark as 1.1.11 +* Sun Jan 13 2008 Seth Vidal +- add repodiff + * Thu Jan 3 2008 Tim Lauridsen - mark as 1.1.10 + * Thu Dec 12 2007 James Antill - Add yum-aliases plugin From e8f027273940019c77a14e52e3b1892274395656 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Fri, 8 Feb 2008 21:49:24 +0000 Subject: [PATCH 016/150] add more detail to the description --- yum-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index db79ce3..509c302 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -13,7 +13,10 @@ Requires: python >= 2.4 , yum >= 3.1.1 %description yum-utils is a collection of utilities and examples for the yum package manager. It includes utilities by different authors that make yum easier and -more powerful to use. +more powerful to use. These tools include: debuginfo-install, package-cleanup, +repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, +repotrack, yum-builddep, yum-complete-transaction, yumdownloader. + %package -n yum-updateonboot Summary: Run yum update on system boot From 10bbe79a376bcc5deb3b9d5714a83c4fcc24a5ba Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Thu, 6 Mar 2008 20:36:54 +0000 Subject: [PATCH 017/150] archlist patch for jkeating --- yum-downloader-archlist.patch | 23 +++++++++++++++++++++++ yum-utils.spec | 4 +++- 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 yum-downloader-archlist.patch diff --git a/yum-downloader-archlist.patch b/yum-downloader-archlist.patch new file mode 100644 index 0000000..9811978 --- /dev/null +++ b/yum-downloader-archlist.patch @@ -0,0 +1,23 @@ +diff --git a/yumdownloader.py b/yumdownloader.py +index ebfed81..5252ad4 100755 +--- a/yumdownloader.py ++++ b/yumdownloader.py +@@ -226,6 +226,8 @@ class YumDownloader(YumUtilBase): + # if '--source' is used the add src to the archlist + if opts.source: + archlist = rpmUtils.arch.getArchList() + ['src'] ++ elif opts.archlist: ++ archlist = opts.archlist.split(',') + else: + archlist = rpmUtils.arch.getArchList() + self._getSacks(archlist=archlist) +@@ -250,7 +252,8 @@ class YumDownloader(YumUtilBase): + help='resolve dependencies and download required packages') + parser.add_option("--source", default=False, dest="source", action="store_true", + help='operate on source packages') +- ++ parser.add_option("--archlist", ++ help="only download packages of certain architecture(s)") + if __name__ == '__main__': + util = YumDownloader() + \ No newline at end of file diff --git a/yum-utils.spec b/yum-utils.spec index 509c302..4055f1e 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,10 +1,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.11 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz +Patch0: yum-downloader-archlist.patch URL: http://linux.duke.edu/yum/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -228,6 +229,7 @@ gpg checking to be disabled. %prep %setup -q +%patch0 -p1 %install rm -rf $RPM_BUILD_ROOT From f63e0a92a1ae6b36c7477b360613703841367bdc Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Thu, 6 Mar 2008 20:52:52 +0000 Subject: [PATCH 018/150] one more time --- yum-utils.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index 4055f1e..b19d366 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.11 -Release: 2%{?dist} +Release: 3%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -402,6 +402,11 @@ fi %changelog +* Thu Mar 6 2008 Seth Vidal +- 1.1.11-3 +- add archlist patch to yumdownloader so things can be built again. + + * Wed Jan 30 2008 Tim Lauridsen - mark as 1.1.11 * Sun Jan 13 2008 Seth Vidal From 6ab9fe5eced43452ec597146dcc10c27b82b1b73 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Fri, 7 Mar 2008 03:51:43 +0000 Subject: [PATCH 019/150] look it's a better patch, just for jkeating, b/c we love him so. --- yum-downloader-archlist.patch | 65 +++++++++++++++++++++++++++++++---- 1 file changed, 58 insertions(+), 7 deletions(-) diff --git a/yum-downloader-archlist.patch b/yum-downloader-archlist.patch index 9811978..5b1c1b5 100644 --- a/yum-downloader-archlist.patch +++ b/yum-downloader-archlist.patch @@ -1,8 +1,59 @@ -diff --git a/yumdownloader.py b/yumdownloader.py -index ebfed81..5252ad4 100755 ---- a/yumdownloader.py -+++ b/yumdownloader.py -@@ -226,6 +226,8 @@ class YumDownloader(YumUtilBase): +--- a/yumdownloader.py 2008-03-06 22:48:24.000000000 -0500 ++++ b/yumdownloader.py 2008-03-06 14:34:12.000000000 -0500 +@@ -64,9 +64,12 @@ + self.logger.error("Error: Could not make cachedir, exiting") + sys.exit(50) + self.repos.setCacheDir(cachedir) +- # Turn of cache +- self.conf.cache = 0 + ++ # Turn off cache ++ self.conf.cache = 0 ++ # make sure the repos know about it, too ++ self.repos.setCache(0) ++ + # Setup yum (Ts, RPM db, Repo & Sack) + self.doUtilYumSetup(opts) + # Setup source repos +@@ -116,14 +119,12 @@ + + def downloadPackages(self,opts): + +- avail = self.pkgSack.returnPackages() +- + toDownload = [] + + packages = self.cmds + for pkg in packages: + toActOn = [] +- exactmatch, matched, unmatched = parsePackages(avail, [pkg]) ++ exactmatch, matched, unmatched = parsePackages(self.pkgSack.returnPackages(), [pkg]) + installable = yum.misc.unique(exactmatch + matched) + if len(unmatched) > 0: # if we get back anything in unmatched, it fails + self.logger.error('No Match for argument %s' % pkg) +@@ -160,7 +161,7 @@ + toDownload.extend(self.bestPackagesFromList(toActOn, 'src')) + else: + toDownload.extend(self.bestPackagesFromList(toActOn)) +- ++ + # If the user supplies to --resolve flag, resolve dependencies for + # all packages + # note this might require root access because the headers need to be +@@ -215,18 +216,18 @@ + size=os.stat(path).st_size) + shutil.copy2(path, local) + progress.end(progress.size) +- ++ + # sligly modified from the one in YumUtilBase + def doUtilYumSetup(self,opts): + """do a default setup for all the normal/necessary yum components, + really just a shorthand for testing""" + try: +- self._getTs() +- self._getRpmDB() + self._getRepos() # if '--source' is used the add src to the archlist if opts.source: archlist = rpmUtils.arch.getArchList() + ['src'] @@ -11,7 +62,7 @@ index ebfed81..5252ad4 100755 else: archlist = rpmUtils.arch.getArchList() self._getSacks(archlist=archlist) -@@ -250,7 +252,8 @@ class YumDownloader(YumUtilBase): +@@ -251,7 +252,8 @@ help='resolve dependencies and download required packages') parser.add_option("--source", default=False, dest="source", action="store_true", help='operate on source packages') @@ -20,4 +71,4 @@ index ebfed81..5252ad4 100755 + help="only download packages of certain architecture(s)") if __name__ == '__main__': util = YumDownloader() - \ No newline at end of file + From 9ec801dfe503474888c0ee973be87c4537c7e5b4 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Fri, 7 Mar 2008 04:13:53 +0000 Subject: [PATCH 020/150] - Update yumdownloader to git HEAD for complete archlist support. --- yum-downloader-archlist.patch | 7 ++++++- yum-utils.spec | 5 ++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/yum-downloader-archlist.patch b/yum-downloader-archlist.patch index 5b1c1b5..2431cca 100644 --- a/yum-downloader-archlist.patch +++ b/yum-downloader-archlist.patch @@ -31,8 +31,13 @@ installable = yum.misc.unique(exactmatch + matched) if len(unmatched) > 0: # if we get back anything in unmatched, it fails self.logger.error('No Match for argument %s' % pkg) -@@ -160,7 +161,7 @@ +@@ -158,9 +159,12 @@ class YumDownloader(YumUtilBase): + if toActOn: + if opts.source: toDownload.extend(self.bestPackagesFromList(toActOn, 'src')) ++ elif opts.archlist: ++ for arch in opts.archlist.split(','): ++ toDownload.extend(self.bestPackagesFromList(toActOn, arch)) else: toDownload.extend(self.bestPackagesFromList(toActOn)) - diff --git a/yum-utils.spec b/yum-utils.spec index b19d366..b51ec59 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.11 -Release: 3%{?dist} +Release: 4%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -402,6 +402,9 @@ fi %changelog +* Thu Mar 06 2008 Jesse Keating - 1.1.11-4 +- Update yumdownloader to git HEAD for complete archlist support. + * Thu Mar 6 2008 Seth Vidal - 1.1.11-3 - add archlist patch to yumdownloader so things can be built again. From 95c79c8f6ac62a986c5f9ecd5d787d4a72a0f9e8 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Fri, 7 Mar 2008 16:20:21 +0000 Subject: [PATCH 021/150] it works this time, we swear --- yum-downloader-archlist.patch | 26 ++++++++++++++++++-------- yum-utils.spec | 5 ++++- 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/yum-downloader-archlist.patch b/yum-downloader-archlist.patch index 2431cca..bcfdfed 100644 --- a/yum-downloader-archlist.patch +++ b/yum-downloader-archlist.patch @@ -1,6 +1,14 @@ ---- a/yumdownloader.py 2008-03-06 22:48:24.000000000 -0500 -+++ b/yumdownloader.py 2008-03-06 14:34:12.000000000 -0500 -@@ -64,9 +64,12 @@ +--- a/yumdownloader.py 2008-01-30 01:03:15.000000000 -0500 ++++ b/yumdownloader.py 2008-03-07 10:54:06.000000000 -0500 +@@ -26,6 +26,7 @@ + from urlgrabber.progress import TextMeter + import shutil + ++import rpmUtils + + class YumDownloader(YumUtilBase): + NAME = 'yumdownloader' +@@ -64,9 +65,12 @@ self.logger.error("Error: Could not make cachedir, exiting") sys.exit(50) self.repos.setCacheDir(cachedir) @@ -15,7 +23,7 @@ # Setup yum (Ts, RPM db, Repo & Sack) self.doUtilYumSetup(opts) # Setup source repos -@@ -116,14 +119,12 @@ +@@ -116,14 +120,12 @@ def downloadPackages(self,opts): @@ -31,7 +39,7 @@ installable = yum.misc.unique(exactmatch + matched) if len(unmatched) > 0: # if we get back anything in unmatched, it fails self.logger.error('No Match for argument %s' % pkg) -@@ -158,9 +159,12 @@ class YumDownloader(YumUtilBase): +@@ -158,9 +160,12 @@ if toActOn: if opts.source: toDownload.extend(self.bestPackagesFromList(toActOn, 'src')) @@ -45,7 +53,7 @@ # If the user supplies to --resolve flag, resolve dependencies for # all packages # note this might require root access because the headers need to be -@@ -215,18 +216,18 @@ +@@ -215,18 +220,20 @@ size=os.stat(path).st_size) shutil.copy2(path, local) progress.end(progress.size) @@ -63,11 +71,13 @@ if opts.source: archlist = rpmUtils.arch.getArchList() + ['src'] + elif opts.archlist: -+ archlist = opts.archlist.split(',') ++ archlist = [] ++ for a in opts.archlist.split(','): ++ archlist.extend(rpmUtils.arch.getArchList(a)) else: archlist = rpmUtils.arch.getArchList() self._getSacks(archlist=archlist) -@@ -251,7 +252,8 @@ +@@ -251,7 +258,8 @@ help='resolve dependencies and download required packages') parser.add_option("--source", default=False, dest="source", action="store_true", help='operate on source packages') diff --git a/yum-utils.spec b/yum-utils.spec index b51ec59..b1aa1e1 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.11 -Release: 4%{?dist} +Release: 5%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -402,6 +402,9 @@ fi %changelog +* Fri Mar 7 2008 Seth Vidal +- once more, with feeling + * Thu Mar 06 2008 Jesse Keating - 1.1.11-4 - Update yumdownloader to git HEAD for complete archlist support. From 6a0655169a7da0d1b4d6fabc8c02de01bb44b925 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Fri, 21 Mar 2008 07:02:39 +0000 Subject: [PATCH 022/150] Release 1.1.12-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 77 +++++++++++++++++++++++++++++++++++++------------- 3 files changed, 59 insertions(+), 22 deletions(-) diff --git a/.cvsignore b/.cvsignore index 037f22d..d11aee3 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.11.tar.gz +yum-utils-1.1.12.tar.gz diff --git a/sources b/sources index d3df5d4..a6d6772 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -fc23c6635e6dcec3cbbcf30e064f522b yum-utils-1.1.11.tar.gz +4fd3464e958657122e53649158fcd59f yum-utils-1.1.12.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index b1aa1e1..1050843 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,11 +1,10 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.11 -Release: 5%{?dist} +Version: 1.1.12 +Release: 1%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz -Patch0: yum-downloader-archlist.patch URL: http://linux.duke.edu/yum/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -15,10 +14,9 @@ Requires: python >= 2.4 , yum >= 3.1.1 yum-utils is a collection of utilities and examples for the yum package manager. It includes utilities by different authors that make yum easier and more powerful to use. These tools include: debuginfo-install, package-cleanup, -repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, +repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, repotrack, yum-builddep, yum-complete-transaction, yumdownloader. - %package -n yum-updateonboot Summary: Run yum update on system boot Group: System Environment/Base @@ -213,13 +211,25 @@ Group: System Environment/Base Requires: yum >= 3.0.5 %description -n yum-list-data -This plugin adds the commands list-vendors, groups, baseurls, packagers, -buildhosts, licenses and arches. +This plugin adds the commands list- vendors, groups, packagers, licenses, +arches, committers, buildhosts, baseurls, package-sizes, archive-sizes and +installed-sizes. + +%package -n yum-filter-data +Summary: Yum plugin to list filter based on package data +Group: System Environment/Base +Requires: yum >= 3.0.5 + +%description -n yum-filter-data +This plugin adds the options --filter- vendors, groups, packagers, licenses, +arches, committers, buildhosts, baseurls, package-sizes, archive-sizes and +installed-sizes. Note that each package must match at least one pattern/range in +each category, if any were specified. %package -n yum-tmprepo Summary: Yum plugin to add temporary repositories Group: System Environment/Base -Requires: yum >= 3.0.5 +Requires: yum >= 3.2.11 %description -n yum-tmprepo This plugin adds the option --tmprepo which takes a url to a .repo file @@ -227,9 +237,18 @@ downloads it and enables it for a single run. This plugin tries to ensure that temporary repositories are safe to use, by default, by not allowing gpg checking to be disabled. +%package -n yum-verify +Summary: Yum plugin to add verify command, and options +Group: System Environment/Base +Requires: yum >= 3.2.12 + +%description -n yum-verify +This plugin adds the commands verify, verify-all and verify-rpm. There are +also a couple of options. This command works like rpm -V, to verify your +installation. + %prep %setup -q -%patch0 -p1 %install rm -rf $RPM_BUILD_ROOT @@ -239,7 +258,7 @@ make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module \ downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf \ - security protect-packages basearchonly upgrade-helper aliases list-data tmprepo" + security protect-packages basearchonly upgrade-helper aliases list-data filter-data tmprepo verify" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -249,7 +268,7 @@ for plug in $plugins; do install -m 644 $plug/*.py $RPM_BUILD_ROOT/usr/lib/yum-plugins/ done install -m 644 aliases/aliases $RPM_BUILD_ROOT/%{_sysconfdir}/yum/aliases.conf - +install -m 644 versionlock/versionlock.list $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ %clean rm -rf $RPM_BUILD_ROOT @@ -280,13 +299,14 @@ fi %{_bindir}/repo-rss %{_bindir}/yumdownloader %{_bindir}/yum-builddep -%{_bindir}/yum-complete-transaction +%{_sbindir}/yum-complete-transaction +%{_mandir}/man1/yum-utils.1.* %{_mandir}/man1/package-cleanup.1.* %{_mandir}/man1/repo-rss.1.* %{_mandir}/man1/repoquery.1.* %{_mandir}/man1/reposync.1.* %{_mandir}/man1/yum-builddep.1.* -%{_mandir}/man1/yum-complete-transaction.1.* +%{_mandir}/man8/yum-complete-transaction.8.* %{_mandir}/man1/yumdownloader.1.* %files -n yum-updateonboot @@ -321,6 +341,7 @@ fi %defattr(-, root, root) %doc plugins/versionlock/README %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.conf +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.list /usr/lib/yum-plugins/versionlock.* %files -n yum-tsflags @@ -394,27 +415,43 @@ fi %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/list-data.conf /usr/lib/yum-plugins/list-data.* +%{_mandir}/man1/yum-list-data.1.* + +%files -n yum-filter-data +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/filter-data.conf +/usr/lib/yum-plugins/filter-data.* +%{_mandir}/man1/yum-filter-data.1.* %files -n yum-tmprepo %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tmprepo.conf /usr/lib/yum-plugins/tmprepo.* +%files -n yum-verify +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/verify.conf +/usr/lib/yum-plugins/verify.* +%{_mandir}/man1/yum-verify.1.* %changelog -* Fri Mar 7 2008 Seth Vidal -- once more, with feeling +* Tue Mar 18 2008 Shawn Starr +- Add yum-utils.1 manual page +- Rename yum-complete-transaction manual page to 8 +- Move yum-complete-transaction to /usr/sbin -* Thu Mar 06 2008 Jesse Keating - 1.1.11-4 -- Update yumdownloader to git HEAD for complete archlist support. +* Sat Mar 1 2008 James Antill +- Add verify plugin -* Thu Mar 6 2008 Seth Vidal -- 1.1.11-3 -- add archlist patch to yumdownloader so things can be built again. +* Wed Feb 20 2008 James Antill +- Add empty versionlock file +* Fri Feb 1 2008 James Antill +- Add filter-data plugin * Wed Jan 30 2008 Tim Lauridsen - mark as 1.1.11 + * Sun Jan 13 2008 Seth Vidal - add repodiff From 1fb52738a14dbf791b642808eb9cfb4f2b1f8f9e Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Fri, 21 Mar 2008 07:22:47 +0000 Subject: [PATCH 023/150] Release 1.1.12-2 --- yum-utils.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index 1050843..7107bfd 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.12 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -299,7 +299,7 @@ fi %{_bindir}/repo-rss %{_bindir}/yumdownloader %{_bindir}/yum-builddep -%{_sbindir}/yum-complete-transaction +%{_bindir}/yum-complete-transaction %{_mandir}/man1/yum-utils.1.* %{_mandir}/man1/package-cleanup.1.* %{_mandir}/man1/repo-rss.1.* @@ -435,6 +435,10 @@ fi %{_mandir}/man1/yum-verify.1.* %changelog +* Fri Mar 21 2008 Tim Lauridsen +- Move yum-complete-transaction to /usr/bin for now, because it need +some changes to the Makefile to work right. (FIXME) +- mark as 1.1.12 * Tue Mar 18 2008 Shawn Starr - Add yum-utils.1 manual page - Rename yum-complete-transaction manual page to 8 From 8bdf059531ae21ef10732fa31f86fd7763297145 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Fri, 21 Mar 2008 07:43:30 +0000 Subject: [PATCH 024/150] Release 1.1.13-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.cvsignore b/.cvsignore index d11aee3..a66c0ad 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.12.tar.gz +yum-utils-1.1.13.tar.gz diff --git a/sources b/sources index a6d6772..499f522 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4fd3464e958657122e53649158fcd59f yum-utils-1.1.12.tar.gz +29eedb17fd40b158c129c84dc865d889 yum-utils-1.1.13.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 7107bfd..461f6ff 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.12 -Release: 2%{?dist} +Version: 1.1.13 +Release: 1%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -299,7 +299,7 @@ fi %{_bindir}/repo-rss %{_bindir}/yumdownloader %{_bindir}/yum-builddep -%{_bindir}/yum-complete-transaction +%{_sbindir}/yum-complete-transaction %{_mandir}/man1/yum-utils.1.* %{_mandir}/man1/package-cleanup.1.* %{_mandir}/man1/repo-rss.1.* @@ -436,8 +436,8 @@ fi %changelog * Fri Mar 21 2008 Tim Lauridsen -- Move yum-complete-transaction to /usr/bin for now, because it need -some changes to the Makefile to work right. (FIXME) +- mark as 1.1.13 +* Fri Mar 21 2008 Tim Lauridsen - mark as 1.1.12 * Tue Mar 18 2008 Shawn Starr - Add yum-utils.1 manual page From 1f4654718e29bc80e5c908a678ccdf01932c5d4d Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Sat, 22 Mar 2008 14:45:28 +0000 Subject: [PATCH 025/150] fix requires for yum-changelog for bug #438585 --- yum-utils.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/yum-utils.spec b/yum-utils.spec index 461f6ff..6df7653 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -33,6 +33,7 @@ waiting until the next early morning cron job. Summary: Yum plugin for viewing package changelogs before/after updating Group: System Environment/Base Requires: yum >= 3.0 +Requires: python-dateutil %description -n yum-changelog This plugin adds a command line option to allow viewing package changelog @@ -435,6 +436,9 @@ fi %{_mandir}/man1/yum-verify.1.* %changelog +* Fri Mar 21 2008 Seth Vidal +- add python-dateutil requires to yum-changelog + * Fri Mar 21 2008 Tim Lauridsen - mark as 1.1.13 * Fri Mar 21 2008 Tim Lauridsen From 07b63d2bae428c45bdd114d31d0d39cd18275156 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Mon, 24 Mar 2008 14:12:47 +0000 Subject: [PATCH 026/150] mark as -2 to stop people filing that same dateutil report --- yum-utils.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index 6df7653..f3e2df5 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.13 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz From c4d152c20387dcdd29ae92857bdbdb59f53e61e6 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 21 May 2008 12:10:45 +0000 Subject: [PATCH 027/150] Release 1.1.14 --- .cvsignore | 2 +- sources | 2 +- yum-downloader-archlist.patch | 89 ----------------------------------- yum-utils.spec | 60 ++++++++++++++++------- 4 files changed, 44 insertions(+), 109 deletions(-) delete mode 100644 yum-downloader-archlist.patch diff --git a/.cvsignore b/.cvsignore index a66c0ad..7dadc35 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.13.tar.gz +yum-utils-1.1.14.tar.gz diff --git a/sources b/sources index 499f522..9052ac3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -29eedb17fd40b158c129c84dc865d889 yum-utils-1.1.13.tar.gz +e1d0bba0249bf294488cbaac41dbeaee yum-utils-1.1.14.tar.gz diff --git a/yum-downloader-archlist.patch b/yum-downloader-archlist.patch deleted file mode 100644 index bcfdfed..0000000 --- a/yum-downloader-archlist.patch +++ /dev/null @@ -1,89 +0,0 @@ ---- a/yumdownloader.py 2008-01-30 01:03:15.000000000 -0500 -+++ b/yumdownloader.py 2008-03-07 10:54:06.000000000 -0500 -@@ -26,6 +26,7 @@ - from urlgrabber.progress import TextMeter - import shutil - -+import rpmUtils - - class YumDownloader(YumUtilBase): - NAME = 'yumdownloader' -@@ -64,9 +65,12 @@ - self.logger.error("Error: Could not make cachedir, exiting") - sys.exit(50) - self.repos.setCacheDir(cachedir) -- # Turn of cache -- self.conf.cache = 0 - -+ # Turn off cache -+ self.conf.cache = 0 -+ # make sure the repos know about it, too -+ self.repos.setCache(0) -+ - # Setup yum (Ts, RPM db, Repo & Sack) - self.doUtilYumSetup(opts) - # Setup source repos -@@ -116,14 +120,12 @@ - - def downloadPackages(self,opts): - -- avail = self.pkgSack.returnPackages() -- - toDownload = [] - - packages = self.cmds - for pkg in packages: - toActOn = [] -- exactmatch, matched, unmatched = parsePackages(avail, [pkg]) -+ exactmatch, matched, unmatched = parsePackages(self.pkgSack.returnPackages(), [pkg]) - installable = yum.misc.unique(exactmatch + matched) - if len(unmatched) > 0: # if we get back anything in unmatched, it fails - self.logger.error('No Match for argument %s' % pkg) -@@ -158,9 +160,12 @@ - if toActOn: - if opts.source: - toDownload.extend(self.bestPackagesFromList(toActOn, 'src')) -+ elif opts.archlist: -+ for arch in opts.archlist.split(','): -+ toDownload.extend(self.bestPackagesFromList(toActOn, arch)) - else: - toDownload.extend(self.bestPackagesFromList(toActOn)) -- -+ - # If the user supplies to --resolve flag, resolve dependencies for - # all packages - # note this might require root access because the headers need to be -@@ -215,18 +220,20 @@ - size=os.stat(path).st_size) - shutil.copy2(path, local) - progress.end(progress.size) -- -+ - # sligly modified from the one in YumUtilBase - def doUtilYumSetup(self,opts): - """do a default setup for all the normal/necessary yum components, - really just a shorthand for testing""" - try: -- self._getTs() -- self._getRpmDB() - self._getRepos() - # if '--source' is used the add src to the archlist - if opts.source: - archlist = rpmUtils.arch.getArchList() + ['src'] -+ elif opts.archlist: -+ archlist = [] -+ for a in opts.archlist.split(','): -+ archlist.extend(rpmUtils.arch.getArchList(a)) - else: - archlist = rpmUtils.arch.getArchList() - self._getSacks(archlist=archlist) -@@ -251,7 +258,8 @@ - help='resolve dependencies and download required packages') - parser.add_option("--source", default=False, dest="source", action="store_true", - help='operate on source packages') -- -+ parser.add_option("--archlist", -+ help="only download packages of certain architecture(s)") - if __name__ == '__main__': - util = YumDownloader() - diff --git a/yum-utils.spec b/yum-utils.spec index f3e2df5..1243866 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.13 -Release: 2%{?dist} +Version: 1.1.14 +Release: 1%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -12,10 +12,10 @@ Requires: python >= 2.4 , yum >= 3.1.1 %description yum-utils is a collection of utilities and examples for the yum package -manager. It includes utilities by different authors that make yum easier and +manager. It includes utilities by different authors that make yum easier and more powerful to use. These tools include: debuginfo-install, package-cleanup, repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, -repotrack, yum-builddep, yum-complete-transaction, yumdownloader. +repotrack, yum-builddep, yum-complete-transaction, yumdownloader, yum-debug-dump %package -n yum-updateonboot Summary: Run yum update on system boot @@ -36,7 +36,7 @@ Requires: yum >= 3.0 Requires: python-dateutil %description -n yum-changelog -This plugin adds a command line option to allow viewing package changelog +This plugin adds a command line option to allow viewing package changelog deltas before or after updating packages. %package -n yum-fastestmirror @@ -54,7 +54,7 @@ Group: System Environment/Base Requires: yum >= 3.0 %description -n yum-fedorakmod -Plugin for Yum to handle installation of kmod-foo type of kernel modules, when new kernel versions +Plugin for Yum to handle installation of kmod-foo type of kernel modules, when new kernel versions are installed. kmod-foo kernel modules is described by the Fedora Extras packaging standards. @@ -74,7 +74,7 @@ Group: System Environment/Base Requires: yum >= 3.0 %description -n yum-versionlock -This plugin allows certain packages specified in a file to be protected from being updated by +This plugin allows certain packages specified in a file to be protected from being updated by newer versions. %package -n yum-tsflags @@ -92,7 +92,7 @@ Group: System Environment/Base Requires: yum >= 3.0 %description -n yum-kernel-module -This plugin handle installation of kernel-module-foo type of kernel modules when new version of +This plugin handle installation of kernel-module-foo type of kernel modules when new version of kernels are installed. @@ -124,12 +124,12 @@ This plugin adds a --skip-broken to yum to make it possible to check packages for dependency problems and skip the one with problems. %package -n yum-priorities -Summary: plugin to give priorities to packages from different repos +Summary: plugin to give priorities to packages from different repos Group: System Environment/Base Requires: yum >= 3.0 %description -n yum-priorities -This plugin allows repositories to have different priorities. +This plugin allows repositories to have different priorities. Packages in a repository with a lower priority can't be overridden by packages from a repository with a higher priority even if repo has a later version. @@ -166,14 +166,14 @@ The options make it possible to limit list/upgrade of packages to specific security relevant ones. The commands give you the security information. %package -n yum-protect-packages -Summary: Yum plugin to prevents Yum from removing itself and other protected packages +Summary: Yum plugin to prevents Yum from removing itself and other protected packages Group: System Environment/Base Requires: yum >= 3.0 %description -n yum-protect-packages this plugin prevents Yum from removing itself and other protected packages. By default, yum is the only package protected, but by extension this -automatically protects everything on which yum depends (rpm, python, glibc, +automatically protects everything on which yum depends (rpm, python, glibc, and so on).Therefore, the plugin functions well even without compiling careful lists of all important packages. @@ -248,6 +248,15 @@ This plugin adds the commands verify, verify-all and verify-rpm. There are also a couple of options. This command works like rpm -V, to verify your installation. +%package -n yum-keys +Summary: Yum plugin to deal with signing keys +Group: System Environment/Base +Requires: yum >= 3.2.8 + +%description -n yum-keys +This plugin adds the commands keys, keys-info, keys-data and keys-remove. They +allow you to query and remove signing keys. + %prep %setup -q @@ -259,7 +268,7 @@ make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install # Plugins to install plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module \ downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf \ - security protect-packages basearchonly upgrade-helper aliases list-data filter-data tmprepo verify" + security protect-packages basearchonly upgrade-helper aliases list-data filter-data tmprepo verify keys" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -300,6 +309,7 @@ fi %{_bindir}/repo-rss %{_bindir}/yumdownloader %{_bindir}/yum-builddep +%{_bindir}/yum-debug-dump %{_sbindir}/yum-complete-transaction %{_mandir}/man1/yum-utils.1.* %{_mandir}/man1/package-cleanup.1.* @@ -307,6 +317,7 @@ fi %{_mandir}/man1/repoquery.1.* %{_mandir}/man1/reposync.1.* %{_mandir}/man1/yum-builddep.1.* +%{_mandir}/man1/yum-debug-dump.1.* %{_mandir}/man8/yum-complete-transaction.8.* %{_mandir}/man1/yumdownloader.1.* @@ -326,7 +337,7 @@ fi %files -n yum-fastestmirror %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fastestmirror.conf -/usr/lib/yum-plugins/fastestmirror.* +/usr/lib/yum-plugins/fastestmirror*.* %files -n yum-fedorakmod %defattr(-, root, root) @@ -411,6 +422,7 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/aliases.conf %config(noreplace) %{_sysconfdir}/yum/aliases.conf /usr/lib/yum-plugins/aliases.* +%{_mandir}/man1/yum-aliases.1.* %files -n yum-list-data %defattr(-, root, root) @@ -435,9 +447,21 @@ fi /usr/lib/yum-plugins/verify.* %{_mandir}/man1/yum-verify.1.* +%files -n yum-keys +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/keys.conf +/usr/lib/yum-plugins/keys.* + %changelog -* Fri Mar 21 2008 Seth Vidal -- add python-dateutil requires to yum-changelog +* Wed May 21 2008 Tim Lauridsen + Make yum-fastestmirror %%files handle the fastestmirror-asyncore.py file +* Wed May 21 2008 Tim Lauridsen +- mark as 1.1.14 +* Fri Apr 10 2008 James Antill +- Add keys plugin + +* Fri Mar 31 2008 James Antill +- Add yum-aliases man page * Fri Mar 21 2008 Tim Lauridsen - mark as 1.1.13 @@ -470,7 +494,7 @@ fi - Add yum-aliases plugin * Fri Dec 7 2007 Tim Lauridsen -- mark as 1.1.9 +- mark as 1.1.9 * Fri Oct 26 2007 Seth Vidal - add upgrade-helper plugin * Wed Oct 17 2007 Tim Lauridsen @@ -546,7 +570,7 @@ fi - mark it as 1.0.1 * Fri Oct 27 2006 Tim Lauridsen -- Added priorities plugin written by Daniel de Kok +- Added priorities plugin written by Daniel de Kok * Wed Oct 4 2006 Seth Vidal - mark it as 1.0 From dc80a19d08ab2e00e7aabd5bb846fd4de93203df Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Sat, 24 May 2008 14:18:09 +0000 Subject: [PATCH 028/150] Release 1.1.14-2 (fastestmirror fixes) --- fastestmirror.patch | 750 ++++++++++++++++++++++++++++++++++++++++++++ yum-utils.spec | 6 +- 2 files changed, 755 insertions(+), 1 deletion(-) create mode 100644 fastestmirror.patch diff --git a/fastestmirror.patch b/fastestmirror.patch new file mode 100644 index 0000000..7f40787 --- /dev/null +++ b/fastestmirror.patch @@ -0,0 +1,750 @@ +diff --git a/plugins/fastestmirror/fastestmirror-asyncore.py b/plugins/fastestmirror/fastestmirror-asyncore.py +new file mode 100644 +index 0000000..751b923 +--- /dev/null ++++ b/plugins/fastestmirror/fastestmirror-asyncore.py +@@ -0,0 +1,362 @@ ++#!/usr/bin/env python ++# ++# Version: 0.3.2 ++# ++# A plugin for the Yellowdog Updater Modified which sorts each repo's ++# mirrorlist by connection speed prior to download. ++# ++# To install this plugin, just drop it into /usr/lib/yum-plugins, and ++# make sure you have 'plugins=1' in your /etc/yum.conf. You also need to ++# create the following configuration file, if not installed through an RPM: ++# ++# /etc/yum/pluginconf.d/fastestmirror.conf: ++# [main] ++# enabled=1 ++# verbose=1 ++# socket_timeout=3 ++# hostfilepath=/var/cache/yum/timedhosts ++# maxhostfileage=10 ++# #exclude=.gov, facebook ++# ++# This program is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 2 of the License, or ++# (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# (C) Copyright 2005 Luke Macken ++# ++ ++""" ++B{FastestMirror} is a Yum plugin which sorts each repository's mirrorlist ++according to connection speed prior to download. ++""" ++ ++import os ++import sys ++import time ++import socket ++import string ++import urlparse ++import datetime ++import asyncore ++ ++from yum.plugins import TYPE_CORE ++ ++requires_api_version = '2.5' ++plugin_type = (TYPE_CORE,) ++ ++verbose = False ++socket_timeout = 1 ++timedhosts = {} ++hostfilepath = '' ++maxhostfileage = 10 ++loadcache = False ++exclude = None ++ ++def init_hook(conduit): ++ """ ++ This function initiliazes the variables required for running B{fastestmirror} ++ module. The variables are initiliazed from the main section of the plugin file. ++ ++ There are no parameteres for this function. It uses global variables to ++ communicate with other functions. ++ ++ This function refers: ++ - L{get_hostfile_age} ++ ++ @param verbose : Verbosity of output. ++ @type verbose : Boolean ++ @param socket_timeout : The default timeout for a socket connection. ++ @type socket_timeout : Integer ++ @param hostfilepath : Absolute path to the plugin's cache file. ++ @type hostfilepath : String ++ @param maxhostfileage : Maximum age of the plugin's cache file. ++ @type maxhostfileage : Integer ++ @param loadcache : Fastest Mirrors to be loaded from plugin's cache or not. ++ @type loadcache : Boolean ++ ++ """ ++ global verbose, socket_timeout, hostfilepath, maxhostfileage, loadcache ++ global exclude ++ verbose = conduit.confBool('main', 'verbose', default=False) ++ socket_timeout = conduit.confInt('main', 'socket_timeout', default=3) ++ hostfilepath = conduit.confString('main', 'hostfilepath', ++ default='/var/cache/yum/timedhosts') ++ maxhostfileage = conduit.confInt('main', 'maxhostfileage', default=10) ++ exclude = conduit.confString('main', 'exclude', default=None) ++ # If the file hostfilepath exists and is newer than the maxhostfileage, ++ # then load the cache. ++ if os.path.exists(hostfilepath) and get_hostfile_age() < maxhostfileage: ++ loadcache = True ++ ++def clean_hook(conduit): ++ """ ++ This function cleans the plugin cache file if exists. The function is called ++ when C{yum [options] clean [plugins | all ]} is executed. ++ """ ++ if os.path.exists(hostfilepath): ++ conduit.info(2, "Cleaning up list of fastest mirrors") ++ os.unlink(hostfilepath) ++ ++# Get the hostname from a url, stripping away any usernames/passwords ++host = lambda mirror: mirror.split('/')[2].split('@')[-1] ++ ++def postreposetup_hook(conduit): ++ """ ++ This function is called after Yum has initiliazed all the repository information. ++ ++ If cache file exists, this function will load the mirror speeds from the file, ++ else it will determine the fastest mirrors afresh and write them back to the cache ++ file. ++ ++ There are no parameteres for this function. It uses global variables to ++ communicate with other functions. ++ ++ This function refers: ++ - L{read_timedhosts()} ++ - L{FastestMirror.get_mirrorlist()} ++ - L{write_timedhosts()} ++ ++ @param loadcache : Fastest Mirrors to be loaded from plugin's cache file or not. ++ @type loadcache : Boolean ++ """ ++ global loadcache, exclude ++ if loadcache: ++ conduit.info(2, "Loading mirror speeds from cached hostfile") ++ read_timedhosts() ++ else: ++ conduit.info(2, "Determining fastest mirrors") ++ repomirrors = {} ++ repos = conduit.getRepos() ++ for repo in repos.listEnabled(): ++ if not repomirrors.has_key(str(repo)): ++ repomirrors[str(repo)] = FastestMirror(repo.urls).get_mirrorlist() ++ if exclude: ++ for mirror in repomirrors[str(repo)]: ++ if filter(lambda exp: exp in host(mirror), ++ exclude.replace(',', ' ').split()): ++ conduit.info(2, "Excluding mirror: %s" % host(mirror)) ++ repomirrors[str(repo)].remove(mirror) ++ repo.urls = repomirrors[str(repo)] ++ if len(repo.urls): ++ conduit.info(2, " * %s: %s" % (str(repo), host(repo.urls[0]))) ++ repo.failovermethod = 'priority' ++ repo.check() ++ repo.setupGrab() ++ if not loadcache: ++ write_timedhosts() ++ ++def read_timedhosts(): ++ """ ++ This function reads the time and hostname from the plugin's cache file and ++ store them in C{timedhosts}. ++ ++ There are no parameteres for this function. It uses global variables to ++ communicate with other functions. ++ ++ This function is referred by: ++ - L{postreposetup_hook()} ++ ++ @param timedhosts : A list of time intervals to reach different hosts ++ corresponding to the mirrors. The index of the list are hostnames. ++ C{timedhosts[host] = time}. ++ @type timedhosts : List ++ """ ++ global timedhosts ++ try: ++ hostfile = file(hostfilepath) ++ for line in hostfile.readlines(): ++ host, time = line.split() ++ timedhosts[host] = float(time) ++ hostfile.close() ++ except IOError: ++ pass ++ ++def write_timedhosts(): ++ """ ++ This function writes the plugin's cache file with the entries in the ++ C{timedhosts} list. ++ ++ There are no parameteres for this function. It uses global variables to ++ communicate with other functions. ++ ++ This function is referred by: ++ - L{postreposetup_hook()} ++ ++ @param timedhosts : A list of time intervals to reach different hosts ++ corresponding to the mirrors. The index of the list are hostnames. ++ C{timedhosts[host] = time}. ++ @type timedhosts : List ++ """ ++ global timedhosts ++ try: ++ hostfile = file(hostfilepath, 'w') ++ for host in timedhosts.keys(): ++ hostfile.write('%s %s\n' % (host, timedhosts[host])) ++ hostfile.close() ++ except IOError: ++ pass ++ ++def get_hostfile_age(): ++ """ ++ This function returns the current age of the plugin's cache file. ++ ++ There are no parameteres for this function. It uses global variables to ++ communicate with other functions. ++ ++ This function is referred by: ++ - L{init_hook()} ++ ++ @param hostfilepath : Absolute path to the plugin's cache file. ++ @type hostfilepath : String ++ @rtype: Integer ++ @return: The age of the plugin's cache file. ++ """ ++ global hostfilepath ++ timestamp = datetime.datetime.fromtimestamp(os.path.getmtime(hostfilepath)) ++ return (datetime.datetime.now() - timestamp).days ++ ++class FastestMirror: ++ """ ++ This is the helper class of B{fastestmirror} module. This class does ++ all the processing of the response time calculation for all the mirrors ++ of all the enabled Yum repositories. ++ """ ++ ++ def __init__(self, mirrorlist): ++ """ ++ This is the initiliazer function of the B{L{FastestMirror}} class. ++ ++ @param mirrorlist : A list of mirrors for an enabled repository. ++ @type mirrorlist : List ++ """ ++ self.mirrorlist = mirrorlist ++ self.results = {} ++ socket.setdefaulttimeout(socket_timeout) ++ ++ def get_mirrorlist(self): ++ """ ++ This function pings/polls all the mirrors in the list ++ C{FastestMirror.mirrorlist} and returns the sorted list of mirrors ++ according to the increasing response time of the mirrors. ++ ++ This function refers: ++ - L{FastestMirror._poll_mirrors()} ++ ++ This function is referred by: ++ - L{postreposetup_hook()} ++ - L{main()} ++ ++ @rtype: List ++ @return: The list of mirrors sorted according to the increasing ++ response time. ++ """ ++ self._poll_mirrors() ++ mirrors = [(v, k) for k, v in self.results.items()] ++ mirrors.sort() ++ return [x[1] for x in mirrors] ++ ++ def _poll_mirrors(self): ++ """ ++ This function uses L{PollThread} class to ping/poll individual mirror ++ in parallel. ++ ++ This function refers: ++ - L{PollThread.run()} ++ ++ This function is referred by: ++ - L{FastestMirror.get_mirrorlist()} ++ """ ++ for mirror in self.mirrorlist: ++ AsyncMirrorConn(self, mirror) ++ count = len(self.mirrorlist) ++ if count > 10: count = 10 ++ asyncore.loop(timeout=socket_timeout, count=count) ++ ++ ++class AsyncMirrorConn(asyncore.dispatcher): ++ ++ def __init__(self, parent, mirror): ++ asyncore.dispatcher.__init__(self) ++ self.parent = parent ++ self.mirror = mirror ++ self.host = urlparse.urlparse(mirror)[1] ++ self.create_socket(socket.AF_INET, socket.SOCK_STREAM) ++ self.time_before = time.time() ++ try: ++ self.connect((self.host, 80)) ++ except: ++ if verbose: print " * %s : dead" % self.host ++ self.close() ++ ++ def handle_connect(self): ++ result = time.time() - self.time_before ++ self.handle_close() ++ self._add_result(self.mirror, self.host, result) ++ ++ def handle_close(self): ++ self.close() ++ ++ def handle_read(self): ++ pass ++ ++ def handle_write(self): ++ pass ++ ++ ++ def _add_result(self, mirror, host, time): ++ """ ++ This function is called by L{PollThread.run()} to add details of a ++ mirror in C{FastestMirror.results} dictionary. ++ ++ This function is referred by: ++ - L{PollThread.run()} ++ ++ @param mirror : The mirror that was polled for response time. ++ @type mirror : String ++ @param host : The hostname of the mirror. ++ @type host : String ++ @param time : The response time of the mirror. ++ @type time : Integer ++ @param timedhosts : A list of time intervals to reach different hosts ++ corresponding to the mirrors. The index of the list are hostnames. ++ @type timedhosts : List ++ """ ++ global timedhosts ++ if verbose: print " * %s : %f secs" % (host, time) ++ self.parent.results[mirror] = time ++ timedhosts[host] = time ++ ++ ++def main(): ++ """ ++ This is the main function for B{fastestmirror} module. ++ ++ This function explains the usage of B{fastestmirror} module. Also parses ++ the command line arguments. ++ ++ This function refers: ++ - L{FastestMirror.get_mirrorlist()} ++ """ ++ global verbose ++ verbose = True ++ ++ if len(sys.argv) == 1: ++ print "Usage: %s [mirror2] ... [mirrorN]" % sys.argv[0] ++ sys.exit(-1) ++ ++ del(sys.argv[0]) ++ mirrorlist = [] ++ ++ for arg in sys.argv: ++ mirrorlist.append(arg) ++ ++ print "Result: " + str(FastestMirror(mirrorlist).get_mirrorlist()) ++ ++if __name__ == '__main__': ++ main() +diff --git a/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py b/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py +deleted file mode 100644 +index 39bfde1..0000000 +--- a/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py ++++ /dev/null +@@ -1,363 +0,0 @@ +-#!/usr/bin/env python +-# This is a threadless prototype version of fastestmirror +-# +-# Version: 0.3.2 +-# +-# A plugin for the Yellowdog Updater Modified which sorts each repo's +-# mirrorlist by connection speed prior to download. +-# +-# To install this plugin, just drop it into /usr/lib/yum-plugins, and +-# make sure you have 'plugins=1' in your /etc/yum.conf. You also need to +-# create the following configuration file, if not installed through an RPM: +-# +-# /etc/yum/pluginconf.d/fastestmirror.conf: +-# [main] +-# enabled=1 +-# verbose=1 +-# socket_timeout=3 +-# hostfilepath=/var/cache/yum/timedhosts +-# maxhostfileage=10 +-# #exclude=.gov, facebook +-# +-# This program is free software; you can redistribute it and/or modify +-# it under the terms of the GNU General Public License as published by +-# the Free Software Foundation; either version 2 of the License, or +-# (at your option) any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# (C) Copyright 2005 Luke Macken +-# +- +-""" +-B{FastestMirror} is a Yum plugin which sorts each repository's mirrorlist +-according to connection speed prior to download. +-""" +- +-import os +-import sys +-import time +-import socket +-import string +-import urlparse +-import datetime +-import asyncore +- +-from yum.plugins import TYPE_CORE +- +-requires_api_version = '2.5' +-plugin_type = (TYPE_CORE,) +- +-verbose = False +-socket_timeout = 1 +-timedhosts = {} +-hostfilepath = '' +-maxhostfileage = 10 +-loadcache = False +-exclude = None +- +-def init_hook(conduit): +- """ +- This function initiliazes the variables required for running B{fastestmirror} +- module. The variables are initiliazed from the main section of the plugin file. +- +- There are no parameteres for this function. It uses global variables to +- communicate with other functions. +- +- This function refers: +- - L{get_hostfile_age} +- +- @param verbose : Verbosity of output. +- @type verbose : Boolean +- @param socket_timeout : The default timeout for a socket connection. +- @type socket_timeout : Integer +- @param hostfilepath : Absolute path to the plugin's cache file. +- @type hostfilepath : String +- @param maxhostfileage : Maximum age of the plugin's cache file. +- @type maxhostfileage : Integer +- @param loadcache : Fastest Mirrors to be loaded from plugin's cache or not. +- @type loadcache : Boolean +- +- """ +- global verbose, socket_timeout, hostfilepath, maxhostfileage, loadcache +- global exclude +- verbose = conduit.confBool('main', 'verbose', default=False) +- socket_timeout = conduit.confInt('main', 'socket_timeout', default=3) +- hostfilepath = conduit.confString('main', 'hostfilepath', +- default='/var/cache/yum/timedhosts') +- maxhostfileage = conduit.confInt('main', 'maxhostfileage', default=10) +- exclude = conduit.confString('main', 'exclude', default=None) +- # If the file hostfilepath exists and is newer than the maxhostfileage, +- # then load the cache. +- if os.path.exists(hostfilepath) and get_hostfile_age() < maxhostfileage: +- loadcache = True +- +-def clean_hook(conduit): +- """ +- This function cleans the plugin cache file if exists. The function is called +- when C{yum [options] clean [plugins | all ]} is executed. +- """ +- if os.path.exists(hostfilepath): +- conduit.info(2, "Cleaning up list of fastest mirrors") +- os.unlink(hostfilepath) +- +-# Get the hostname from a url, stripping away any usernames/passwords +-host = lambda mirror: mirror.split('/')[2].split('@')[-1] +- +-def postreposetup_hook(conduit): +- """ +- This function is called after Yum has initiliazed all the repository information. +- +- If cache file exists, this function will load the mirror speeds from the file, +- else it will determine the fastest mirrors afresh and write them back to the cache +- file. +- +- There are no parameteres for this function. It uses global variables to +- communicate with other functions. +- +- This function refers: +- - L{read_timedhosts()} +- - L{FastestMirror.get_mirrorlist()} +- - L{write_timedhosts()} +- +- @param loadcache : Fastest Mirrors to be loaded from plugin's cache file or not. +- @type loadcache : Boolean +- """ +- global loadcache, exclude +- if loadcache: +- conduit.info(2, "Loading mirror speeds from cached hostfile") +- read_timedhosts() +- else: +- conduit.info(2, "Determining fastest mirrors") +- repomirrors = {} +- repos = conduit.getRepos() +- for repo in repos.listEnabled(): +- if not repomirrors.has_key(str(repo)): +- repomirrors[str(repo)] = FastestMirror(repo.urls).get_mirrorlist() +- if exclude: +- for mirror in repomirrors[str(repo)]: +- if filter(lambda exp: exp in host(mirror), +- exclude.replace(',', ' ').split()): +- conduit.info(2, "Excluding mirror: %s" % host(mirror)) +- repomirrors[str(repo)].remove(mirror) +- repo.urls = repomirrors[str(repo)] +- if len(repo.urls): +- conduit.info(2, " * %s: %s" % (str(repo), host(repo.urls[0]))) +- repo.failovermethod = 'priority' +- repo.check() +- repo.setupGrab() +- if not loadcache: +- write_timedhosts() +- +-def read_timedhosts(): +- """ +- This function reads the time and hostname from the plugin's cache file and +- store them in C{timedhosts}. +- +- There are no parameteres for this function. It uses global variables to +- communicate with other functions. +- +- This function is referred by: +- - L{postreposetup_hook()} +- +- @param timedhosts : A list of time intervals to reach different hosts +- corresponding to the mirrors. The index of the list are hostnames. +- C{timedhosts[host] = time}. +- @type timedhosts : List +- """ +- global timedhosts +- try: +- hostfile = file(hostfilepath) +- for line in hostfile.readlines(): +- host, time = line.split() +- timedhosts[host] = float(time) +- hostfile.close() +- except IOError: +- pass +- +-def write_timedhosts(): +- """ +- This function writes the plugin's cache file with the entries in the +- C{timedhosts} list. +- +- There are no parameteres for this function. It uses global variables to +- communicate with other functions. +- +- This function is referred by: +- - L{postreposetup_hook()} +- +- @param timedhosts : A list of time intervals to reach different hosts +- corresponding to the mirrors. The index of the list are hostnames. +- C{timedhosts[host] = time}. +- @type timedhosts : List +- """ +- global timedhosts +- try: +- hostfile = file(hostfilepath, 'w') +- for host in timedhosts.keys(): +- hostfile.write('%s %s\n' % (host, timedhosts[host])) +- hostfile.close() +- except IOError: +- pass +- +-def get_hostfile_age(): +- """ +- This function returns the current age of the plugin's cache file. +- +- There are no parameteres for this function. It uses global variables to +- communicate with other functions. +- +- This function is referred by: +- - L{init_hook()} +- +- @param hostfilepath : Absolute path to the plugin's cache file. +- @type hostfilepath : String +- @rtype: Integer +- @return: The age of the plugin's cache file. +- """ +- global hostfilepath +- timestamp = datetime.datetime.fromtimestamp(os.path.getmtime(hostfilepath)) +- return (datetime.datetime.now() - timestamp).days +- +-class FastestMirror: +- """ +- This is the helper class of B{fastestmirror} module. This class does +- all the processing of the response time calculation for all the mirrors +- of all the enabled Yum repositories. +- """ +- +- def __init__(self, mirrorlist): +- """ +- This is the initiliazer function of the B{L{FastestMirror}} class. +- +- @param mirrorlist : A list of mirrors for an enabled repository. +- @type mirrorlist : List +- """ +- self.mirrorlist = mirrorlist +- self.results = {} +- socket.setdefaulttimeout(socket_timeout) +- +- def get_mirrorlist(self): +- """ +- This function pings/polls all the mirrors in the list +- C{FastestMirror.mirrorlist} and returns the sorted list of mirrors +- according to the increasing response time of the mirrors. +- +- This function refers: +- - L{FastestMirror._poll_mirrors()} +- +- This function is referred by: +- - L{postreposetup_hook()} +- - L{main()} +- +- @rtype: List +- @return: The list of mirrors sorted according to the increasing +- response time. +- """ +- self._poll_mirrors() +- mirrors = [(v, k) for k, v in self.results.items()] +- mirrors.sort() +- return [x[1] for x in mirrors] +- +- def _poll_mirrors(self): +- """ +- This function uses L{PollThread} class to ping/poll individual mirror +- in parallel. +- +- This function refers: +- - L{PollThread.run()} +- +- This function is referred by: +- - L{FastestMirror.get_mirrorlist()} +- """ +- for mirror in self.mirrorlist: +- AsyncMirrorConn(self, mirror) +- count = len(self.mirrorlist) +- if count > 10: count = 10 +- asyncore.loop(timeout=socket_timeout, count=count) +- +- +-class AsyncMirrorConn(asyncore.dispatcher): +- +- def __init__(self, parent, mirror): +- asyncore.dispatcher.__init__(self) +- self.parent = parent +- self.mirror = mirror +- self.host = urlparse.urlparse(mirror)[1] +- self.create_socket(socket.AF_INET, socket.SOCK_STREAM) +- self.time_before = time.time() +- try: +- self.connect((self.host, 80)) +- except: +- if verbose: print " * %s : dead" % self.host +- self.close() +- +- def handle_connect(self): +- result = time.time() - self.time_before +- self.handle_close() +- self._add_result(self.mirror, self.host, result) +- +- def handle_close(self): +- self.close() +- +- def handle_read(self): +- pass +- +- def handle_write(self): +- pass +- +- +- def _add_result(self, mirror, host, time): +- """ +- This function is called by L{PollThread.run()} to add details of a +- mirror in C{FastestMirror.results} dictionary. +- +- This function is referred by: +- - L{PollThread.run()} +- +- @param mirror : The mirror that was polled for response time. +- @type mirror : String +- @param host : The hostname of the mirror. +- @type host : String +- @param time : The response time of the mirror. +- @type time : Integer +- @param timedhosts : A list of time intervals to reach different hosts +- corresponding to the mirrors. The index of the list are hostnames. +- @type timedhosts : List +- """ +- global timedhosts +- if verbose: print " * %s : %f secs" % (host, time) +- self.parent.results[mirror] = time +- timedhosts[host] = time +- +- +-def main(): +- """ +- This is the main function for B{fastestmirror} module. +- +- This function explains the usage of B{fastestmirror} module. Also parses +- the command line arguments. +- +- This function refers: +- - L{FastestMirror.get_mirrorlist()} +- """ +- global verbose +- verbose = True +- +- if len(sys.argv) == 1: +- print "Usage: %s [mirror2] ... [mirrorN]" % sys.argv[0] +- sys.exit(-1) +- +- del(sys.argv[0]) +- mirrorlist = [] +- +- for arg in sys.argv: +- mirrorlist.append(arg) +- +- print "Result: " + str(FastestMirror(mirrorlist).get_mirrorlist()) +- +-if __name__ == '__main__': +- main() +diff --git a/plugins/fastestmirror/fastestmirror.py b/plugins/fastestmirror/fastestmirror.py +index add870a..dc4df92 100644 +--- a/plugins/fastestmirror/fastestmirror.py ++++ b/plugins/fastestmirror/fastestmirror.py +@@ -130,7 +130,7 @@ def postreposetup_hook(conduit): + """ + global loadcache, exclude + opts, commands = conduit.getCmdLine() +- if hasattr(opts, 'cacheonly') and opts.cacheonly: ++ if opts.cacheonly: + return + if loadcache: + conduit.info(2, "Loading mirror speeds from cached hostfile") diff --git a/yum-utils.spec b/yum-utils.spec index 1243866..a7ea777 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,10 +1,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.14 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz +Patch: fastestmirror.patch URL: http://linux.duke.edu/yum/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -259,6 +260,7 @@ allow you to query and remove signing keys. %prep %setup -q +%patch -p1 %install rm -rf $RPM_BUILD_ROOT @@ -453,6 +455,8 @@ fi /usr/lib/yum-plugins/keys.* %changelog +* Sat May 24 2008 Tim Lauridsen +- Added fastestmirror.patch from upstream to fix issues with the fastestmirror plugin. * Wed May 21 2008 Tim Lauridsen Make yum-fastestmirror %%files handle the fastestmirror-asyncore.py file * Wed May 21 2008 Tim Lauridsen From 3be8753dc666e8fd2b266b4a7945abafe3ac3663 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Mon, 26 May 2008 08:21:40 +0000 Subject: [PATCH 029/150] Release 1.1.4-3: fix som fastestmirror issues --- fastestmirror.patch | 737 -------------------------------------------- yum-utils.spec | 6 +- 2 files changed, 5 insertions(+), 738 deletions(-) diff --git a/fastestmirror.patch b/fastestmirror.patch index 7f40787..e336423 100644 --- a/fastestmirror.patch +++ b/fastestmirror.patch @@ -1,740 +1,3 @@ -diff --git a/plugins/fastestmirror/fastestmirror-asyncore.py b/plugins/fastestmirror/fastestmirror-asyncore.py -new file mode 100644 -index 0000000..751b923 ---- /dev/null -+++ b/plugins/fastestmirror/fastestmirror-asyncore.py -@@ -0,0 +1,362 @@ -+#!/usr/bin/env python -+# -+# Version: 0.3.2 -+# -+# A plugin for the Yellowdog Updater Modified which sorts each repo's -+# mirrorlist by connection speed prior to download. -+# -+# To install this plugin, just drop it into /usr/lib/yum-plugins, and -+# make sure you have 'plugins=1' in your /etc/yum.conf. You also need to -+# create the following configuration file, if not installed through an RPM: -+# -+# /etc/yum/pluginconf.d/fastestmirror.conf: -+# [main] -+# enabled=1 -+# verbose=1 -+# socket_timeout=3 -+# hostfilepath=/var/cache/yum/timedhosts -+# maxhostfileage=10 -+# #exclude=.gov, facebook -+# -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+# GNU General Public License for more details. -+# -+# (C) Copyright 2005 Luke Macken -+# -+ -+""" -+B{FastestMirror} is a Yum plugin which sorts each repository's mirrorlist -+according to connection speed prior to download. -+""" -+ -+import os -+import sys -+import time -+import socket -+import string -+import urlparse -+import datetime -+import asyncore -+ -+from yum.plugins import TYPE_CORE -+ -+requires_api_version = '2.5' -+plugin_type = (TYPE_CORE,) -+ -+verbose = False -+socket_timeout = 1 -+timedhosts = {} -+hostfilepath = '' -+maxhostfileage = 10 -+loadcache = False -+exclude = None -+ -+def init_hook(conduit): -+ """ -+ This function initiliazes the variables required for running B{fastestmirror} -+ module. The variables are initiliazed from the main section of the plugin file. -+ -+ There are no parameteres for this function. It uses global variables to -+ communicate with other functions. -+ -+ This function refers: -+ - L{get_hostfile_age} -+ -+ @param verbose : Verbosity of output. -+ @type verbose : Boolean -+ @param socket_timeout : The default timeout for a socket connection. -+ @type socket_timeout : Integer -+ @param hostfilepath : Absolute path to the plugin's cache file. -+ @type hostfilepath : String -+ @param maxhostfileage : Maximum age of the plugin's cache file. -+ @type maxhostfileage : Integer -+ @param loadcache : Fastest Mirrors to be loaded from plugin's cache or not. -+ @type loadcache : Boolean -+ -+ """ -+ global verbose, socket_timeout, hostfilepath, maxhostfileage, loadcache -+ global exclude -+ verbose = conduit.confBool('main', 'verbose', default=False) -+ socket_timeout = conduit.confInt('main', 'socket_timeout', default=3) -+ hostfilepath = conduit.confString('main', 'hostfilepath', -+ default='/var/cache/yum/timedhosts') -+ maxhostfileage = conduit.confInt('main', 'maxhostfileage', default=10) -+ exclude = conduit.confString('main', 'exclude', default=None) -+ # If the file hostfilepath exists and is newer than the maxhostfileage, -+ # then load the cache. -+ if os.path.exists(hostfilepath) and get_hostfile_age() < maxhostfileage: -+ loadcache = True -+ -+def clean_hook(conduit): -+ """ -+ This function cleans the plugin cache file if exists. The function is called -+ when C{yum [options] clean [plugins | all ]} is executed. -+ """ -+ if os.path.exists(hostfilepath): -+ conduit.info(2, "Cleaning up list of fastest mirrors") -+ os.unlink(hostfilepath) -+ -+# Get the hostname from a url, stripping away any usernames/passwords -+host = lambda mirror: mirror.split('/')[2].split('@')[-1] -+ -+def postreposetup_hook(conduit): -+ """ -+ This function is called after Yum has initiliazed all the repository information. -+ -+ If cache file exists, this function will load the mirror speeds from the file, -+ else it will determine the fastest mirrors afresh and write them back to the cache -+ file. -+ -+ There are no parameteres for this function. It uses global variables to -+ communicate with other functions. -+ -+ This function refers: -+ - L{read_timedhosts()} -+ - L{FastestMirror.get_mirrorlist()} -+ - L{write_timedhosts()} -+ -+ @param loadcache : Fastest Mirrors to be loaded from plugin's cache file or not. -+ @type loadcache : Boolean -+ """ -+ global loadcache, exclude -+ if loadcache: -+ conduit.info(2, "Loading mirror speeds from cached hostfile") -+ read_timedhosts() -+ else: -+ conduit.info(2, "Determining fastest mirrors") -+ repomirrors = {} -+ repos = conduit.getRepos() -+ for repo in repos.listEnabled(): -+ if not repomirrors.has_key(str(repo)): -+ repomirrors[str(repo)] = FastestMirror(repo.urls).get_mirrorlist() -+ if exclude: -+ for mirror in repomirrors[str(repo)]: -+ if filter(lambda exp: exp in host(mirror), -+ exclude.replace(',', ' ').split()): -+ conduit.info(2, "Excluding mirror: %s" % host(mirror)) -+ repomirrors[str(repo)].remove(mirror) -+ repo.urls = repomirrors[str(repo)] -+ if len(repo.urls): -+ conduit.info(2, " * %s: %s" % (str(repo), host(repo.urls[0]))) -+ repo.failovermethod = 'priority' -+ repo.check() -+ repo.setupGrab() -+ if not loadcache: -+ write_timedhosts() -+ -+def read_timedhosts(): -+ """ -+ This function reads the time and hostname from the plugin's cache file and -+ store them in C{timedhosts}. -+ -+ There are no parameteres for this function. It uses global variables to -+ communicate with other functions. -+ -+ This function is referred by: -+ - L{postreposetup_hook()} -+ -+ @param timedhosts : A list of time intervals to reach different hosts -+ corresponding to the mirrors. The index of the list are hostnames. -+ C{timedhosts[host] = time}. -+ @type timedhosts : List -+ """ -+ global timedhosts -+ try: -+ hostfile = file(hostfilepath) -+ for line in hostfile.readlines(): -+ host, time = line.split() -+ timedhosts[host] = float(time) -+ hostfile.close() -+ except IOError: -+ pass -+ -+def write_timedhosts(): -+ """ -+ This function writes the plugin's cache file with the entries in the -+ C{timedhosts} list. -+ -+ There are no parameteres for this function. It uses global variables to -+ communicate with other functions. -+ -+ This function is referred by: -+ - L{postreposetup_hook()} -+ -+ @param timedhosts : A list of time intervals to reach different hosts -+ corresponding to the mirrors. The index of the list are hostnames. -+ C{timedhosts[host] = time}. -+ @type timedhosts : List -+ """ -+ global timedhosts -+ try: -+ hostfile = file(hostfilepath, 'w') -+ for host in timedhosts.keys(): -+ hostfile.write('%s %s\n' % (host, timedhosts[host])) -+ hostfile.close() -+ except IOError: -+ pass -+ -+def get_hostfile_age(): -+ """ -+ This function returns the current age of the plugin's cache file. -+ -+ There are no parameteres for this function. It uses global variables to -+ communicate with other functions. -+ -+ This function is referred by: -+ - L{init_hook()} -+ -+ @param hostfilepath : Absolute path to the plugin's cache file. -+ @type hostfilepath : String -+ @rtype: Integer -+ @return: The age of the plugin's cache file. -+ """ -+ global hostfilepath -+ timestamp = datetime.datetime.fromtimestamp(os.path.getmtime(hostfilepath)) -+ return (datetime.datetime.now() - timestamp).days -+ -+class FastestMirror: -+ """ -+ This is the helper class of B{fastestmirror} module. This class does -+ all the processing of the response time calculation for all the mirrors -+ of all the enabled Yum repositories. -+ """ -+ -+ def __init__(self, mirrorlist): -+ """ -+ This is the initiliazer function of the B{L{FastestMirror}} class. -+ -+ @param mirrorlist : A list of mirrors for an enabled repository. -+ @type mirrorlist : List -+ """ -+ self.mirrorlist = mirrorlist -+ self.results = {} -+ socket.setdefaulttimeout(socket_timeout) -+ -+ def get_mirrorlist(self): -+ """ -+ This function pings/polls all the mirrors in the list -+ C{FastestMirror.mirrorlist} and returns the sorted list of mirrors -+ according to the increasing response time of the mirrors. -+ -+ This function refers: -+ - L{FastestMirror._poll_mirrors()} -+ -+ This function is referred by: -+ - L{postreposetup_hook()} -+ - L{main()} -+ -+ @rtype: List -+ @return: The list of mirrors sorted according to the increasing -+ response time. -+ """ -+ self._poll_mirrors() -+ mirrors = [(v, k) for k, v in self.results.items()] -+ mirrors.sort() -+ return [x[1] for x in mirrors] -+ -+ def _poll_mirrors(self): -+ """ -+ This function uses L{PollThread} class to ping/poll individual mirror -+ in parallel. -+ -+ This function refers: -+ - L{PollThread.run()} -+ -+ This function is referred by: -+ - L{FastestMirror.get_mirrorlist()} -+ """ -+ for mirror in self.mirrorlist: -+ AsyncMirrorConn(self, mirror) -+ count = len(self.mirrorlist) -+ if count > 10: count = 10 -+ asyncore.loop(timeout=socket_timeout, count=count) -+ -+ -+class AsyncMirrorConn(asyncore.dispatcher): -+ -+ def __init__(self, parent, mirror): -+ asyncore.dispatcher.__init__(self) -+ self.parent = parent -+ self.mirror = mirror -+ self.host = urlparse.urlparse(mirror)[1] -+ self.create_socket(socket.AF_INET, socket.SOCK_STREAM) -+ self.time_before = time.time() -+ try: -+ self.connect((self.host, 80)) -+ except: -+ if verbose: print " * %s : dead" % self.host -+ self.close() -+ -+ def handle_connect(self): -+ result = time.time() - self.time_before -+ self.handle_close() -+ self._add_result(self.mirror, self.host, result) -+ -+ def handle_close(self): -+ self.close() -+ -+ def handle_read(self): -+ pass -+ -+ def handle_write(self): -+ pass -+ -+ -+ def _add_result(self, mirror, host, time): -+ """ -+ This function is called by L{PollThread.run()} to add details of a -+ mirror in C{FastestMirror.results} dictionary. -+ -+ This function is referred by: -+ - L{PollThread.run()} -+ -+ @param mirror : The mirror that was polled for response time. -+ @type mirror : String -+ @param host : The hostname of the mirror. -+ @type host : String -+ @param time : The response time of the mirror. -+ @type time : Integer -+ @param timedhosts : A list of time intervals to reach different hosts -+ corresponding to the mirrors. The index of the list are hostnames. -+ @type timedhosts : List -+ """ -+ global timedhosts -+ if verbose: print " * %s : %f secs" % (host, time) -+ self.parent.results[mirror] = time -+ timedhosts[host] = time -+ -+ -+def main(): -+ """ -+ This is the main function for B{fastestmirror} module. -+ -+ This function explains the usage of B{fastestmirror} module. Also parses -+ the command line arguments. -+ -+ This function refers: -+ - L{FastestMirror.get_mirrorlist()} -+ """ -+ global verbose -+ verbose = True -+ -+ if len(sys.argv) == 1: -+ print "Usage: %s [mirror2] ... [mirrorN]" % sys.argv[0] -+ sys.exit(-1) -+ -+ del(sys.argv[0]) -+ mirrorlist = [] -+ -+ for arg in sys.argv: -+ mirrorlist.append(arg) -+ -+ print "Result: " + str(FastestMirror(mirrorlist).get_mirrorlist()) -+ -+if __name__ == '__main__': -+ main() -diff --git a/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py b/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py -deleted file mode 100644 -index 39bfde1..0000000 ---- a/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py -+++ /dev/null -@@ -1,363 +0,0 @@ --#!/usr/bin/env python --# This is a threadless prototype version of fastestmirror --# --# Version: 0.3.2 --# --# A plugin for the Yellowdog Updater Modified which sorts each repo's --# mirrorlist by connection speed prior to download. --# --# To install this plugin, just drop it into /usr/lib/yum-plugins, and --# make sure you have 'plugins=1' in your /etc/yum.conf. You also need to --# create the following configuration file, if not installed through an RPM: --# --# /etc/yum/pluginconf.d/fastestmirror.conf: --# [main] --# enabled=1 --# verbose=1 --# socket_timeout=3 --# hostfilepath=/var/cache/yum/timedhosts --# maxhostfileage=10 --# #exclude=.gov, facebook --# --# This program is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 2 of the License, or --# (at your option) any later version. --# --# This program is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. --# --# (C) Copyright 2005 Luke Macken --# -- --""" --B{FastestMirror} is a Yum plugin which sorts each repository's mirrorlist --according to connection speed prior to download. --""" -- --import os --import sys --import time --import socket --import string --import urlparse --import datetime --import asyncore -- --from yum.plugins import TYPE_CORE -- --requires_api_version = '2.5' --plugin_type = (TYPE_CORE,) -- --verbose = False --socket_timeout = 1 --timedhosts = {} --hostfilepath = '' --maxhostfileage = 10 --loadcache = False --exclude = None -- --def init_hook(conduit): -- """ -- This function initiliazes the variables required for running B{fastestmirror} -- module. The variables are initiliazed from the main section of the plugin file. -- -- There are no parameteres for this function. It uses global variables to -- communicate with other functions. -- -- This function refers: -- - L{get_hostfile_age} -- -- @param verbose : Verbosity of output. -- @type verbose : Boolean -- @param socket_timeout : The default timeout for a socket connection. -- @type socket_timeout : Integer -- @param hostfilepath : Absolute path to the plugin's cache file. -- @type hostfilepath : String -- @param maxhostfileage : Maximum age of the plugin's cache file. -- @type maxhostfileage : Integer -- @param loadcache : Fastest Mirrors to be loaded from plugin's cache or not. -- @type loadcache : Boolean -- -- """ -- global verbose, socket_timeout, hostfilepath, maxhostfileage, loadcache -- global exclude -- verbose = conduit.confBool('main', 'verbose', default=False) -- socket_timeout = conduit.confInt('main', 'socket_timeout', default=3) -- hostfilepath = conduit.confString('main', 'hostfilepath', -- default='/var/cache/yum/timedhosts') -- maxhostfileage = conduit.confInt('main', 'maxhostfileage', default=10) -- exclude = conduit.confString('main', 'exclude', default=None) -- # If the file hostfilepath exists and is newer than the maxhostfileage, -- # then load the cache. -- if os.path.exists(hostfilepath) and get_hostfile_age() < maxhostfileage: -- loadcache = True -- --def clean_hook(conduit): -- """ -- This function cleans the plugin cache file if exists. The function is called -- when C{yum [options] clean [plugins | all ]} is executed. -- """ -- if os.path.exists(hostfilepath): -- conduit.info(2, "Cleaning up list of fastest mirrors") -- os.unlink(hostfilepath) -- --# Get the hostname from a url, stripping away any usernames/passwords --host = lambda mirror: mirror.split('/')[2].split('@')[-1] -- --def postreposetup_hook(conduit): -- """ -- This function is called after Yum has initiliazed all the repository information. -- -- If cache file exists, this function will load the mirror speeds from the file, -- else it will determine the fastest mirrors afresh and write them back to the cache -- file. -- -- There are no parameteres for this function. It uses global variables to -- communicate with other functions. -- -- This function refers: -- - L{read_timedhosts()} -- - L{FastestMirror.get_mirrorlist()} -- - L{write_timedhosts()} -- -- @param loadcache : Fastest Mirrors to be loaded from plugin's cache file or not. -- @type loadcache : Boolean -- """ -- global loadcache, exclude -- if loadcache: -- conduit.info(2, "Loading mirror speeds from cached hostfile") -- read_timedhosts() -- else: -- conduit.info(2, "Determining fastest mirrors") -- repomirrors = {} -- repos = conduit.getRepos() -- for repo in repos.listEnabled(): -- if not repomirrors.has_key(str(repo)): -- repomirrors[str(repo)] = FastestMirror(repo.urls).get_mirrorlist() -- if exclude: -- for mirror in repomirrors[str(repo)]: -- if filter(lambda exp: exp in host(mirror), -- exclude.replace(',', ' ').split()): -- conduit.info(2, "Excluding mirror: %s" % host(mirror)) -- repomirrors[str(repo)].remove(mirror) -- repo.urls = repomirrors[str(repo)] -- if len(repo.urls): -- conduit.info(2, " * %s: %s" % (str(repo), host(repo.urls[0]))) -- repo.failovermethod = 'priority' -- repo.check() -- repo.setupGrab() -- if not loadcache: -- write_timedhosts() -- --def read_timedhosts(): -- """ -- This function reads the time and hostname from the plugin's cache file and -- store them in C{timedhosts}. -- -- There are no parameteres for this function. It uses global variables to -- communicate with other functions. -- -- This function is referred by: -- - L{postreposetup_hook()} -- -- @param timedhosts : A list of time intervals to reach different hosts -- corresponding to the mirrors. The index of the list are hostnames. -- C{timedhosts[host] = time}. -- @type timedhosts : List -- """ -- global timedhosts -- try: -- hostfile = file(hostfilepath) -- for line in hostfile.readlines(): -- host, time = line.split() -- timedhosts[host] = float(time) -- hostfile.close() -- except IOError: -- pass -- --def write_timedhosts(): -- """ -- This function writes the plugin's cache file with the entries in the -- C{timedhosts} list. -- -- There are no parameteres for this function. It uses global variables to -- communicate with other functions. -- -- This function is referred by: -- - L{postreposetup_hook()} -- -- @param timedhosts : A list of time intervals to reach different hosts -- corresponding to the mirrors. The index of the list are hostnames. -- C{timedhosts[host] = time}. -- @type timedhosts : List -- """ -- global timedhosts -- try: -- hostfile = file(hostfilepath, 'w') -- for host in timedhosts.keys(): -- hostfile.write('%s %s\n' % (host, timedhosts[host])) -- hostfile.close() -- except IOError: -- pass -- --def get_hostfile_age(): -- """ -- This function returns the current age of the plugin's cache file. -- -- There are no parameteres for this function. It uses global variables to -- communicate with other functions. -- -- This function is referred by: -- - L{init_hook()} -- -- @param hostfilepath : Absolute path to the plugin's cache file. -- @type hostfilepath : String -- @rtype: Integer -- @return: The age of the plugin's cache file. -- """ -- global hostfilepath -- timestamp = datetime.datetime.fromtimestamp(os.path.getmtime(hostfilepath)) -- return (datetime.datetime.now() - timestamp).days -- --class FastestMirror: -- """ -- This is the helper class of B{fastestmirror} module. This class does -- all the processing of the response time calculation for all the mirrors -- of all the enabled Yum repositories. -- """ -- -- def __init__(self, mirrorlist): -- """ -- This is the initiliazer function of the B{L{FastestMirror}} class. -- -- @param mirrorlist : A list of mirrors for an enabled repository. -- @type mirrorlist : List -- """ -- self.mirrorlist = mirrorlist -- self.results = {} -- socket.setdefaulttimeout(socket_timeout) -- -- def get_mirrorlist(self): -- """ -- This function pings/polls all the mirrors in the list -- C{FastestMirror.mirrorlist} and returns the sorted list of mirrors -- according to the increasing response time of the mirrors. -- -- This function refers: -- - L{FastestMirror._poll_mirrors()} -- -- This function is referred by: -- - L{postreposetup_hook()} -- - L{main()} -- -- @rtype: List -- @return: The list of mirrors sorted according to the increasing -- response time. -- """ -- self._poll_mirrors() -- mirrors = [(v, k) for k, v in self.results.items()] -- mirrors.sort() -- return [x[1] for x in mirrors] -- -- def _poll_mirrors(self): -- """ -- This function uses L{PollThread} class to ping/poll individual mirror -- in parallel. -- -- This function refers: -- - L{PollThread.run()} -- -- This function is referred by: -- - L{FastestMirror.get_mirrorlist()} -- """ -- for mirror in self.mirrorlist: -- AsyncMirrorConn(self, mirror) -- count = len(self.mirrorlist) -- if count > 10: count = 10 -- asyncore.loop(timeout=socket_timeout, count=count) -- -- --class AsyncMirrorConn(asyncore.dispatcher): -- -- def __init__(self, parent, mirror): -- asyncore.dispatcher.__init__(self) -- self.parent = parent -- self.mirror = mirror -- self.host = urlparse.urlparse(mirror)[1] -- self.create_socket(socket.AF_INET, socket.SOCK_STREAM) -- self.time_before = time.time() -- try: -- self.connect((self.host, 80)) -- except: -- if verbose: print " * %s : dead" % self.host -- self.close() -- -- def handle_connect(self): -- result = time.time() - self.time_before -- self.handle_close() -- self._add_result(self.mirror, self.host, result) -- -- def handle_close(self): -- self.close() -- -- def handle_read(self): -- pass -- -- def handle_write(self): -- pass -- -- -- def _add_result(self, mirror, host, time): -- """ -- This function is called by L{PollThread.run()} to add details of a -- mirror in C{FastestMirror.results} dictionary. -- -- This function is referred by: -- - L{PollThread.run()} -- -- @param mirror : The mirror that was polled for response time. -- @type mirror : String -- @param host : The hostname of the mirror. -- @type host : String -- @param time : The response time of the mirror. -- @type time : Integer -- @param timedhosts : A list of time intervals to reach different hosts -- corresponding to the mirrors. The index of the list are hostnames. -- @type timedhosts : List -- """ -- global timedhosts -- if verbose: print " * %s : %f secs" % (host, time) -- self.parent.results[mirror] = time -- timedhosts[host] = time -- -- --def main(): -- """ -- This is the main function for B{fastestmirror} module. -- -- This function explains the usage of B{fastestmirror} module. Also parses -- the command line arguments. -- -- This function refers: -- - L{FastestMirror.get_mirrorlist()} -- """ -- global verbose -- verbose = True -- -- if len(sys.argv) == 1: -- print "Usage: %s [mirror2] ... [mirrorN]" % sys.argv[0] -- sys.exit(-1) -- -- del(sys.argv[0]) -- mirrorlist = [] -- -- for arg in sys.argv: -- mirrorlist.append(arg) -- -- print "Result: " + str(FastestMirror(mirrorlist).get_mirrorlist()) -- --if __name__ == '__main__': -- main() diff --git a/plugins/fastestmirror/fastestmirror.py b/plugins/fastestmirror/fastestmirror.py index add870a..dc4df92 100644 --- a/plugins/fastestmirror/fastestmirror.py diff --git a/yum-utils.spec b/yum-utils.spec index a7ea777..0d0fc5f 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.14 -Release: 2%{?dist} +Release: 3%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -261,6 +261,8 @@ allow you to query and remove signing keys. %prep %setup -q %patch -p1 +# temporary fix: we don't want fastestmirror-asyncore.py +rm -f $RPM_BUILD_ROOT/plugins/fastestmirror/fastestmirror-asyncore.py %install rm -rf $RPM_BUILD_ROOT @@ -455,6 +457,8 @@ fi /usr/lib/yum-plugins/keys.* %changelog +* Mon May 26 2008 Tim Lauridsen +- remove the fastestmirror-asyncore.py, we dont want it in this release * Sat May 24 2008 Tim Lauridsen - Added fastestmirror.patch from upstream to fix issues with the fastestmirror plugin. * Wed May 21 2008 Tim Lauridsen From 7d230ccbb0e83e9d8c72440d6afb72e8d2efc53c Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Mon, 26 May 2008 08:30:34 +0000 Subject: [PATCH 030/150] minor changes to the fastestmirror.patch to make it build --- fastestmirror.patch | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/fastestmirror.patch b/fastestmirror.patch index e336423..4ec036d 100644 --- a/fastestmirror.patch +++ b/fastestmirror.patch @@ -1,13 +1,14 @@ diff --git a/plugins/fastestmirror/fastestmirror.py b/plugins/fastestmirror/fastestmirror.py -index add870a..dc4df92 100644 +index dc4df92..add870a 100644 --- a/plugins/fastestmirror/fastestmirror.py +++ b/plugins/fastestmirror/fastestmirror.py @@ -130,7 +130,7 @@ def postreposetup_hook(conduit): """ global loadcache, exclude opts, commands = conduit.getCmdLine() -- if hasattr(opts, 'cacheonly') and opts.cacheonly: -+ if opts.cacheonly: +- if opts.cacheonly: ++ if hasattr(opts, 'cacheonly') and opts.cacheonly: return if loadcache: conduit.info(2, "Loading mirror speeds from cached hostfile") + From 5d6c726566bd66fbacb37d79132579ea552de2ef Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 29 May 2008 10:15:34 +0000 Subject: [PATCH 031/150] Release 1.1.14-4 : make fastestmirror-asyncore.py? go away --- yum-utils.spec | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index 0d0fc5f..a54f660 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.14 -Release: 3%{?dist} +Release: 4%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz @@ -261,14 +261,13 @@ allow you to query and remove signing keys. %prep %setup -q %patch -p1 -# temporary fix: we don't want fastestmirror-asyncore.py -rm -f $RPM_BUILD_ROOT/plugins/fastestmirror/fastestmirror-asyncore.py %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install + # Plugins to install plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module \ downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf \ @@ -283,6 +282,8 @@ for plug in $plugins; do done install -m 644 aliases/aliases $RPM_BUILD_ROOT/%{_sysconfdir}/yum/aliases.conf install -m 644 versionlock/versionlock.list $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ +# temporary fix: we don't want fastestmirror-asyncore.py +rm -f $RPM_BUILD_ROOT/usr/lib/yum-plugins/fastestmirror-asyncore.* %clean rm -rf $RPM_BUILD_ROOT @@ -457,6 +458,9 @@ fi /usr/lib/yum-plugins/keys.* %changelog +* Thu May 29 2008 Tim Lauridsen +- remove the fastestmirror-asyncore.py +- And do it right this time * Mon May 26 2008 Tim Lauridsen - remove the fastestmirror-asyncore.py, we dont want it in this release * Sat May 24 2008 Tim Lauridsen From f4c22c571164a76958e69f0c5122c235e2434530 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 7 Aug 2008 13:45:40 +0000 Subject: [PATCH 032/150] Release 1.1.15-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 68 +++++++++++++++++++++++++++++++++----------------- 3 files changed, 47 insertions(+), 25 deletions(-) diff --git a/.cvsignore b/.cvsignore index 7dadc35..0327c59 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.14.tar.gz +yum-utils-1.1.15.tar.gz diff --git a/sources b/sources index 9052ac3..829c599 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -e1d0bba0249bf294488cbaac41dbeaee yum-utils-1.1.14.tar.gz +2063a77d0b865ece3c34f95372632fd2 yum-utils-1.1.15.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index a54f660..0219a6f 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,11 +1,10 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.14 -Release: 4%{?dist} +Version: 1.1.15 +Release: 1%{?dist} License: GPL Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz -Patch: fastestmirror.patch URL: http://linux.duke.edu/yum/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -16,7 +15,8 @@ yum-utils is a collection of utilities and examples for the yum package manager. It includes utilities by different authors that make yum easier and more powerful to use. These tools include: debuginfo-install, package-cleanup, repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, -repotrack, yum-builddep, yum-complete-transaction, yumdownloader, yum-debug-dump +repotrack, verifytree, yum-builddep, yum-complete-transaction, yumdownloader, +yum-debug-dump %package -n yum-updateonboot Summary: Run yum update on system boot @@ -55,8 +55,8 @@ Group: System Environment/Base Requires: yum >= 3.0 %description -n yum-fedorakmod -Plugin for Yum to handle installation of kmod-foo type of kernel modules, when new kernel versions -are installed. +Plugin for Yum to handle installation of kmod-foo type of kernel modules, +when new kernel versions are installed. kmod-foo kernel modules is described by the Fedora Extras packaging standards. %package -n yum-protectbase @@ -75,8 +75,10 @@ Group: System Environment/Base Requires: yum >= 3.0 %description -n yum-versionlock -This plugin allows certain packages specified in a file to be protected from being updated by -newer versions. +This plugin takes a set of name/versions for packages and excludes all other +versions of those packages (including optionally following obsoletes). This +allows you to protect packages from being updated by newer versions, +for example. %package -n yum-tsflags Summary: Yum plugin to add tsflags by a commandline option @@ -158,7 +160,7 @@ package. %package -n yum-security Summary: Yum plugin to enable security filters Group: System Environment/Base -Requires: yum >= 3.0.5 +Requires: yum >= 3.2.18 %description -n yum-security This plugin adds the options --security, --cve, --bz and --advisory flags @@ -232,6 +234,7 @@ each category, if any were specified. Summary: Yum plugin to add temporary repositories Group: System Environment/Base Requires: yum >= 3.2.11 +Requires: createrepo %description -n yum-tmprepo This plugin adds the option --tmprepo which takes a url to a .repo file @@ -260,18 +263,38 @@ allow you to query and remove signing keys. %prep %setup -q -%patch -p1 %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install - # Plugins to install -plugins="changelog fastestmirror fedorakmod protectbase versionlock tsflags kernel-module \ - downloadonly allowdowngrade skip-broken priorities refresh-updatesd merge-conf \ - security protect-packages basearchonly upgrade-helper aliases list-data filter-data tmprepo verify keys" +plugins="\ + changelog \ + fastestmirror \ + fedorakmod \ + protectbase \ + versionlock \ + tsflags \ + kernel-module \ + downloadonly \ + allowdowngrade \ + skip-broken \ + priorities \ + refresh-updatesd \ + merge-conf \ + security \ + protect-packages \ + basearchonly \ + upgrade-helper \ + aliases \ + list-data \ + filter-data \ + tmprepo \ + verify \ + keys \ +" mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -282,8 +305,6 @@ for plug in $plugins; do done install -m 644 aliases/aliases $RPM_BUILD_ROOT/%{_sysconfdir}/yum/aliases.conf install -m 644 versionlock/versionlock.list $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ -# temporary fix: we don't want fastestmirror-asyncore.py -rm -f $RPM_BUILD_ROOT/usr/lib/yum-plugins/fastestmirror-asyncore.* %clean rm -rf $RPM_BUILD_ROOT @@ -312,6 +333,7 @@ fi %{_bindir}/reposync %{_bindir}/repo-graph %{_bindir}/repo-rss +%{_bindir}/verifytree %{_bindir}/yumdownloader %{_bindir}/yum-builddep %{_bindir}/yum-debug-dump @@ -360,6 +382,8 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.conf %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.list /usr/lib/yum-plugins/versionlock.* +%{_mandir}/man1/yum-versionlock.1.* +%{_mandir}/man5/yum-versionlock.conf.5.* %files -n yum-tsflags %defattr(-, root, root) @@ -458,13 +482,11 @@ fi /usr/lib/yum-plugins/keys.* %changelog -* Thu May 29 2008 Tim Lauridsen -- remove the fastestmirror-asyncore.py -- And do it right this time -* Mon May 26 2008 Tim Lauridsen -- remove the fastestmirror-asyncore.py, we dont want it in this release -* Sat May 24 2008 Tim Lauridsen -- Added fastestmirror.patch from upstream to fix issues with the fastestmirror plugin. +* Thu Aug 7 2008 Tim Lauridsen +- mark as 1.1.15 +* Wed May 21 2008 Tim Lauridsen +- add verifytree + * Wed May 21 2008 Tim Lauridsen Make yum-fastestmirror %%files handle the fastestmirror-asyncore.py file * Wed May 21 2008 Tim Lauridsen From 9fc087a4c3b8863999c2a64acbd9c66243ff772e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jason=20=E3=83=86=E3=82=A3=E3=83=93=E3=83=84?= Date: Mon, 11 Aug 2008 23:54:06 +0000 Subject: [PATCH 033/150] - Fix license tag. --- yum-utils.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index 0219a6f..4e50821 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,8 +1,8 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.15 -Release: 1%{?dist} -License: GPL +Release: 2%{?dist} +License: GPLv2+ Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz URL: http://linux.duke.edu/yum/download/yum-utils/ @@ -482,6 +482,9 @@ fi /usr/lib/yum-plugins/keys.* %changelog +* Mon Aug 11 2008 Jason L Tibbitts III - 1.1.15-2 +- Fix license tag. + * Thu Aug 7 2008 Tim Lauridsen - mark as 1.1.15 * Wed May 21 2008 Tim Lauridsen From b0baff11b8e11e4cd96e250acf7af5af3b59a0bd Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 27 Aug 2008 18:53:45 +0000 Subject: [PATCH 034/150] Release 1.1.16-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 35 +++++++++++++++++++++++++++-------- 3 files changed, 29 insertions(+), 10 deletions(-) diff --git a/.cvsignore b/.cvsignore index 0327c59..639b8c4 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.15.tar.gz +yum-utils-1.1.16.tar.gz diff --git a/sources b/sources index 829c599..cd7a502 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -2063a77d0b865ece3c34f95372632fd2 yum-utils-1.1.15.tar.gz +1c1d9df0914f7f945ab2a561d16e62de yum-utils-1.1.16.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 4e50821..9cd5bc4 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,14 +1,14 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.15 -Release: 2%{?dist} +Version: 1.1.16 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz URL: http://linux.duke.edu/yum/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.1.1 +Requires: python >= 2.4 , yum >= 3.2.19 %description yum-utils is a collection of utilities and examples for the yum package @@ -16,7 +16,7 @@ manager. It includes utilities by different authors that make yum easier and more powerful to use. These tools include: debuginfo-install, package-cleanup, repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, repotrack, verifytree, yum-builddep, yum-complete-transaction, yumdownloader, -yum-debug-dump +yum-debug-dump and yum-groups-manager. %package -n yum-updateonboot Summary: Run yum update on system boot @@ -222,7 +222,7 @@ installed-sizes. %package -n yum-filter-data Summary: Yum plugin to list filter based on package data Group: System Environment/Base -Requires: yum >= 3.0.5 +Requires: yum >= 3.2.17 %description -n yum-filter-data This plugin adds the options --filter- vendors, groups, packagers, licenses, @@ -255,12 +255,23 @@ installation. %package -n yum-keys Summary: Yum plugin to deal with signing keys Group: System Environment/Base -Requires: yum >= 3.2.8 +Requires: yum >= 3.2.19 %description -n yum-keys This plugin adds the commands keys, keys-info, keys-data and keys-remove. They allow you to query and remove signing keys. +%package -n yum-NetworkManager-dispatcher +Summary: Yum plugin to deal with changing networks with NetworkManager +Group: System Environment/Base +Requires: yum >= 3.2.17 + +%description -n yum-NetworkManager-dispatcher +This plugin forces yum to check it's cache if/when a new network connection +happens in NetworkManager. Note that currently there is no checking of +previous data, so if your WiFi keeps going up and down (or you suspend/resume +a lot) yum will recheck it's cached data a lot. + %prep %setup -q @@ -337,6 +348,7 @@ fi %{_bindir}/yumdownloader %{_bindir}/yum-builddep %{_bindir}/yum-debug-dump +%{_bindir}/yum-groups-manager %{_sbindir}/yum-complete-transaction %{_mandir}/man1/yum-utils.1.* %{_mandir}/man1/package-cleanup.1.* @@ -346,6 +358,7 @@ fi %{_mandir}/man1/yum-builddep.1.* %{_mandir}/man1/yum-debug-dump.1.* %{_mandir}/man8/yum-complete-transaction.8.* +%{_mandir}/man1/yum-groups-manager.1.* %{_mandir}/man1/yumdownloader.1.* %files -n yum-updateonboot @@ -481,9 +494,15 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/keys.conf /usr/lib/yum-plugins/keys.* +%files -n yum-NetworkManager-dispatcher +%defattr(-, root, root) +/etc/NetworkManager/dispatcher.d/* + %changelog -* Mon Aug 11 2008 Jason L Tibbitts III - 1.1.15-2 -- Fix license tag. +* Wed Aug 27 2008 Tim Lauridsen +- mark as 1.1.16 +* Wed Aug 20 2008 James Antill +- add yum-groups-manager * Thu Aug 7 2008 Tim Lauridsen - mark as 1.1.15 From 371ba1b67b00cbc9a4d21c4cc19d6d907050de83 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 10 Sep 2008 12:52:05 +0000 Subject: [PATCH 035/150] Added patch to unbreak repoquery --- repoquery-unbreak.patch | 21 +++++++++++++++++++++ yum-utils.spec | 6 +++++- 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 repoquery-unbreak.patch diff --git a/repoquery-unbreak.patch b/repoquery-unbreak.patch new file mode 100644 index 0000000..13fbf6a --- /dev/null +++ b/repoquery-unbreak.patch @@ -0,0 +1,21 @@ +From: Seth Vidal +Date: Thu, 28 Aug 2008 04:25:47 +0000 (-0400) +Subject: add a parens to unbreak reposync +X-Git-Url: http://devel.linux.duke.edu/gitweb/?p=yum-utils.git;a=commitdiff_plain;h=6b7a864e118df20c151c6d1d63398171e49f1fdb + +add a parens to unbreak reposync +--- + +diff --git a/reposync.py b/reposync.py +index 339a6ca..82cf4f0 100755 +--- a/reposync.py ++++ b/reposync.py +@@ -267,7 +267,7 @@ def main(): + try: + path = repo.getPackage(pkg) + except yum.Errors.RepoError, e: +- my.logger.error("Could not retrieve package %s. Error was %s" % (pkg, str(e)) ++ my.logger.error("Could not retrieve package %s. Error was %s" % (pkg, str(e))) + continue + + if opts.gpgcheck: diff --git a/yum-utils.spec b/yum-utils.spec index 9cd5bc4..b6be79e 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,10 +1,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.16 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz +Patch0: repoquery-unbreak.patch URL: http://linux.duke.edu/yum/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -274,6 +275,7 @@ a lot) yum will recheck it's cached data a lot. %prep %setup -q +%patch0 -p1 %install rm -rf $RPM_BUILD_ROOT @@ -499,6 +501,8 @@ fi /etc/NetworkManager/dispatcher.d/* %changelog +* Wed Sep 10 2008 Tim Lauridsen +- Added patch to unbreak repoquery * Wed Aug 27 2008 Tim Lauridsen - mark as 1.1.16 * Wed Aug 20 2008 James Antill From 7c6de394e6f9b383a76f490c6eab74e2891dec59 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 18 Sep 2008 07:16:37 +0000 Subject: [PATCH 036/150] Release 1.1.17-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 30 ++++++++++++++++++++++++------ 3 files changed, 26 insertions(+), 8 deletions(-) diff --git a/.cvsignore b/.cvsignore index 639b8c4..4d39de7 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.16.tar.gz +yum-utils-1.1.17.tar.gz diff --git a/sources b/sources index cd7a502..2b60d80 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -1c1d9df0914f7f945ab2a561d16e62de yum-utils-1.1.16.tar.gz +c9bb92a87a01e39d2d928ac3ae12e10a yum-utils-1.1.17.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index b6be79e..839cc34 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,11 +1,10 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.16 -Release: 2%{?dist} +Version: 1.1.17 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz -Patch0: repoquery-unbreak.patch URL: http://linux.duke.edu/yum/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -262,6 +261,16 @@ Requires: yum >= 3.2.19 This plugin adds the commands keys, keys-info, keys-data and keys-remove. They allow you to query and remove signing keys. +%package -n yum-remove-with-leaves +Summary: Yum plugin to remove dependencies which are no longer used because of a removal +Group: System Environment/Base +Requires: yum >= 3.2.19 + +%description -n yum-remove-with-leaves +This plugin removes any unused dependencies that were brought in by an install +but would not normally be removed. It helps to keep a system clean of unused +libraries and packages. + %package -n yum-NetworkManager-dispatcher Summary: Yum plugin to deal with changing networks with NetworkManager Group: System Environment/Base @@ -275,7 +284,6 @@ a lot) yum will recheck it's cached data a lot. %prep %setup -q -%patch0 -p1 %install rm -rf $RPM_BUILD_ROOT @@ -307,6 +315,7 @@ plugins="\ tmprepo \ verify \ keys \ + remove-with-leaves \ " mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -500,9 +509,18 @@ fi %defattr(-, root, root) /etc/NetworkManager/dispatcher.d/* +%files -n yum-remove-with-leaves +%defattr(-, root, root) +/usr/lib/yum-plugins/remove-with-leaves.* +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/remove-with-leaves.conf + %changelog -* Wed Sep 10 2008 Tim Lauridsen -- Added patch to unbreak repoquery +* Wed Sep 17 2008 Tim Lauridsen +- mark as 1.1.17 + +* Mon Sep 8 2008 Seth Vidal +- add yum-remove-with-leaves plugin + * Wed Aug 27 2008 Tim Lauridsen - mark as 1.1.16 * Wed Aug 20 2008 James Antill From d573b901aa51d557aa5cf370d14347b410bc687f Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 18 Sep 2008 07:23:01 +0000 Subject: [PATCH 037/150] removed unused patches --- fastestmirror.patch | 14 -------------- repoquery-unbreak.patch | 21 --------------------- 2 files changed, 35 deletions(-) delete mode 100644 fastestmirror.patch delete mode 100644 repoquery-unbreak.patch diff --git a/fastestmirror.patch b/fastestmirror.patch deleted file mode 100644 index 4ec036d..0000000 --- a/fastestmirror.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/plugins/fastestmirror/fastestmirror.py b/plugins/fastestmirror/fastestmirror.py -index dc4df92..add870a 100644 ---- a/plugins/fastestmirror/fastestmirror.py -+++ b/plugins/fastestmirror/fastestmirror.py -@@ -130,7 +130,7 @@ def postreposetup_hook(conduit): - """ - global loadcache, exclude - opts, commands = conduit.getCmdLine() -- if opts.cacheonly: -+ if hasattr(opts, 'cacheonly') and opts.cacheonly: - return - if loadcache: - conduit.info(2, "Loading mirror speeds from cached hostfile") - diff --git a/repoquery-unbreak.patch b/repoquery-unbreak.patch deleted file mode 100644 index 13fbf6a..0000000 --- a/repoquery-unbreak.patch +++ /dev/null @@ -1,21 +0,0 @@ -From: Seth Vidal -Date: Thu, 28 Aug 2008 04:25:47 +0000 (-0400) -Subject: add a parens to unbreak reposync -X-Git-Url: http://devel.linux.duke.edu/gitweb/?p=yum-utils.git;a=commitdiff_plain;h=6b7a864e118df20c151c6d1d63398171e49f1fdb - -add a parens to unbreak reposync ---- - -diff --git a/reposync.py b/reposync.py -index 339a6ca..82cf4f0 100755 ---- a/reposync.py -+++ b/reposync.py -@@ -267,7 +267,7 @@ def main(): - try: - path = repo.getPackage(pkg) - except yum.Errors.RepoError, e: -- my.logger.error("Could not retrieve package %s. Error was %s" % (pkg, str(e)) -+ my.logger.error("Could not retrieve package %s. Error was %s" % (pkg, str(e))) - continue - - if opts.gpgcheck: From 53596be4d3ff4141be574d993a4e66fe8aaae63d Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Thu, 23 Oct 2008 20:59:23 +0000 Subject: [PATCH 038/150] patch to repodiff to keep unicode breakage out bump to 1.1.17-2 --- repodiff-unicode-fix.patch | 20 ++++++++++++++++++++ yum-utils.spec | 7 ++++++- 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 repodiff-unicode-fix.patch diff --git a/repodiff-unicode-fix.patch b/repodiff-unicode-fix.patch new file mode 100644 index 0000000..c86e931 --- /dev/null +++ b/repodiff-unicode-fix.patch @@ -0,0 +1,20 @@ +--- a/repodiff.py.orig 2008-09-17 14:58:11.000000000 -0400 ++++ b/repodiff.py 2008-10-23 16:57:02.000000000 -0400 +@@ -20,6 +20,7 @@ + import time + import os + import locale ++from yum.misc import to_unicode + + from optparse import OptionParser + +@@ -204,7 +205,8 @@ + clogdelta = [] + for (t, author, content) in pkg.changelog: + if t > oldtime: +- msg += "* %s %s\n%s\n\n" % (time.ctime(int(t)), author, content) ++ msg += "* %s %s\n%s\n\n" % (time.ctime(int(t)), ++ to_unicode(author), to_unicode(content)) + if opts.size: + sizechange = int(pkg.size) - int(oldpkg.size) + total_sizechange += sizechange diff --git a/yum-utils.spec b/yum-utils.spec index 839cc34..b247ab6 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,10 +1,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.17 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz +Patch0: repodiff-unicode-fix.patch URL: http://linux.duke.edu/yum/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -284,6 +285,7 @@ a lot) yum will recheck it's cached data a lot. %prep %setup -q +%patch0 -p1 %install rm -rf $RPM_BUILD_ROOT @@ -515,6 +517,9 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/remove-with-leaves.conf %changelog +* Thu Oct 23 2008 Seth Vidal +- small patch to repodiff to keep rawhide builds from falling over until 1.1.18 + * Wed Sep 17 2008 Tim Lauridsen - mark as 1.1.17 From 7f054bbf20ed1368a70aa055b933b43f69b88b4d Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 29 Oct 2008 12:39:19 +0000 Subject: [PATCH 039/150] Release 1.1.18 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 64 +++++++++++++++++++++++++++++++++++++------------- 3 files changed, 50 insertions(+), 18 deletions(-) diff --git a/.cvsignore b/.cvsignore index 4d39de7..66c6c42 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.17.tar.gz +yum-utils-1.1.18.tar.gz diff --git a/sources b/sources index 2b60d80..cacc9bd 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -c9bb92a87a01e39d2d928ac3ae12e10a yum-utils-1.1.17.tar.gz +9f45ce2ed2c58f10fae4240ad6fe6143 yum-utils-1.1.18.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index b247ab6..42cf435 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,15 +1,14 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.17 -Release: 2%{?dist} +Version: 1.1.18 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools -Source: http://linux.duke.edu/yum/download/yum-utils/%{name}-%{version}.tar.gz -Patch0: repodiff-unicode-fix.patch -URL: http://linux.duke.edu/yum/download/yum-utils/ +Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz +URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.19 +Requires: python >= 2.4 , yum >= 3.2.20 %description yum-utils is a collection of utilities and examples for the yum package @@ -272,6 +271,15 @@ This plugin removes any unused dependencies that were brought in by an install but would not normally be removed. It helps to keep a system clean of unused libraries and packages. +%package -n yum-post-transaction-actions +Summary: Yum plugin to run arbitrary commands when certain pkgs are acted on +Group: System Environment/Base +Requires: yum >= 3.2.19 + +%description -n yum-post-transaction-actions +This plugin allows the user to run arbitrary actions immediately following a +transaction when specified packages are changed. + %package -n yum-NetworkManager-dispatcher Summary: Yum plugin to deal with changing networks with NetworkManager Group: System Environment/Base @@ -283,9 +291,17 @@ happens in NetworkManager. Note that currently there is no checking of previous data, so if your WiFi keeps going up and down (or you suspend/resume a lot) yum will recheck it's cached data a lot. +%package -n yum-rpm-warm-cache +Summary: Yum plugin to access the rpmdb files early to warm up access to the db +Group: System Environment/Base +Requires: yum >= 3.2.19 + +%description -n yum-rpm-warm-cache +This plugin reads the rpmdb files into the system cache before accessing the +rpmdb directly. In some cases this should speed up access to rpmdb information + %prep %setup -q -%patch0 -p1 %install rm -rf $RPM_BUILD_ROOT @@ -303,7 +319,6 @@ plugins="\ kernel-module \ downloadonly \ allowdowngrade \ - skip-broken \ priorities \ refresh-updatesd \ merge-conf \ @@ -318,6 +333,8 @@ plugins="\ verify \ keys \ remove-with-leaves \ + post-transaction-actions \ + rpm-warm-cache \ " mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -364,9 +381,11 @@ fi %{_bindir}/yum-groups-manager %{_sbindir}/yum-complete-transaction %{_mandir}/man1/yum-utils.1.* +%{_mandir}/man1/debuginfo-install.1.* %{_mandir}/man1/package-cleanup.1.* %{_mandir}/man1/repo-rss.1.* %{_mandir}/man1/repoquery.1.* +%{_mandir}/man1/repodiff.1.* %{_mandir}/man1/reposync.1.* %{_mandir}/man1/yum-builddep.1.* %{_mandir}/man1/yum-debug-dump.1.* @@ -431,11 +450,6 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/allowdowngrade.conf /usr/lib/yum-plugins/allowdowngrade.* -%files -n yum-skip-broken -%defattr(-, root, root) -%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/skip-broken.conf -/usr/lib/yum-plugins/skip-broken.* - %files -n yum-priorities %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/priorities.conf @@ -516,9 +530,27 @@ fi /usr/lib/yum-plugins/remove-with-leaves.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/remove-with-leaves.conf +%files -n yum-post-transaction-actions +%defattr(-, root, root) +/usr/lib/yum-plugins/post-transaction-actions.* +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/post-transaction-actions.conf +%doc plugins/post-transaction-actions/sample.action + +%files -n yum-rpm-warm-cache +%defattr(-, root, root) +/usr/lib/yum-plugins/rpm-warm-cache.* +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/rpm-warm-cache.conf + + %changelog -* Thu Oct 23 2008 Seth Vidal -- small patch to repodiff to keep rawhide builds from falling over until 1.1.18 +* Wed Oct 29 2008 Tim Lauridsen +- mark as 1.1.18 + +* Mon Oct 27 2008 Seth Vidal +- add rpm-warm-cache plugin + +* Fri Sep 19 2008 Tim Lauridsen +- removed skip-broken plugin * Wed Sep 17 2008 Tim Lauridsen - mark as 1.1.17 @@ -537,7 +569,7 @@ fi - add verifytree * Wed May 21 2008 Tim Lauridsen - Make yum-fastestmirror %%files handle the fastestmirror-asyncore.py file + Make yum-fastestmirror %%files handle the fastestmirror-asyncore.py file * Wed May 21 2008 Tim Lauridsen - mark as 1.1.14 * Fri Apr 10 2008 James Antill From 1ed43789af89600f27f11d0f20494098c5328407 Mon Sep 17 00:00:00 2001 From: James Antill Date: Tue, 25 Nov 2008 15:32:31 +0000 Subject: [PATCH 040/150] - Fix the development/rawhide difference. --- yum-utils.spec | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index 42cf435..d22feec 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,10 +1,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.18 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz +Patch0: yum-aliases-rawhide.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -303,6 +304,8 @@ rpmdb directly. In some cases this should speed up access to rpmdb information %prep %setup -q +%patch0 -p1 -q + %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -543,6 +546,9 @@ fi %changelog +* Tue Nov 25 2008 James Antill +- Fix the development/rawhide difference. + * Wed Oct 29 2008 Tim Lauridsen - mark as 1.1.18 From a7a811789658b6fb39f26bb01c024c069e9e5dc0 Mon Sep 17 00:00:00 2001 From: James Antill Date: Tue, 25 Nov 2008 16:18:35 +0000 Subject: [PATCH 041/150] - Fix the development/rawhide difference. --- yum-aliases-rawhide.patch | 22 ++++++++++++++++++++++ yum-utils.spec | 2 +- 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 yum-aliases-rawhide.patch diff --git a/yum-aliases-rawhide.patch b/yum-aliases-rawhide.patch new file mode 100644 index 0000000..d3fefb4 --- /dev/null +++ b/yum-aliases-rawhide.patch @@ -0,0 +1,22 @@ +diff -ru yum-utils-1.1.18-orig/plugins/aliases/aliases yum-utils-1.1.18/plugins/aliases/aliases +--- yum-utils-1.1.18-orig/plugins/aliases/aliases 2008-10-29 07:49:44.000000000 -0400 ++++ yum-utils-1.1.18/plugins/aliases/aliases 2008-11-25 10:29:25.000000000 -0500 +@@ -3,15 +3,15 @@ + # who install yum-aliases plugin anyway :). Note that they require alias + # recursion, which is the default. + +-DEV --enablerepo=development ++DEV --enablerepo=rawhide + UPT --enablerepo=updates-testing + + SRC --enablerepo=fedora-source --enablerepo=updates-source +-DEVSRC --enablerepo=development-source ++DEVSRC --enablerepo=rawhide-source + UPTSRC --enablerepo=updates-testing-source + # Note that we/you can move to =X,Y in 3.2.9 onwards. + DBG --enablerepo=fedora-debuginfo --enablerepo=updates-debuginfo +-DEVDBG --enablerepo=development-debuginfo ++DEVDBG --enablerepo=rawhide-debuginfo + UPTDBG --enablerepo=updates-testing-debuginfo + + ALLSRC SRC DEVSRC UPTSRC diff --git a/yum-utils.spec b/yum-utils.spec index d22feec..bdba8bb 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -304,7 +304,7 @@ rpmdb directly. In some cases this should speed up access to rpmdb information %prep %setup -q -%patch0 -p1 -q +%patch0 -p1 %install rm -rf $RPM_BUILD_ROOT From 7a398e822a16c8365d6a741a91274fe268119bf8 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 18 Dec 2008 12:21:16 +0000 Subject: [PATCH 042/150] Release 1.1.19-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 18 +++++++++++------- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/.cvsignore b/.cvsignore index 66c6c42..53d1edb 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.18.tar.gz +yum-utils-1.1.19.tar.gz diff --git a/sources b/sources index cacc9bd..519c500 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9f45ce2ed2c58f10fae4240ad6fe6143 yum-utils-1.1.18.tar.gz +ebd74b37c9d87ebcce43670f94ceedf4 yum-utils-1.1.19.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index bdba8bb..4cb46ea 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,11 +1,10 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.18 -Release: 2%{?dist} +Version: 1.1.19 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz -Patch0: yum-aliases-rawhide.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -304,8 +303,6 @@ rpmdb directly. In some cases this should speed up access to rpmdb information %prep %setup -q -%patch0 -p1 - %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -341,6 +338,7 @@ plugins="\ " mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ +mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/post-actions cd plugins for plug in $plugins; do @@ -368,6 +366,7 @@ fi %doc COPYING %doc plugins/README %{_bindir}/debuginfo-install +%{_bindir}/find-repos-of-install %{_bindir}/package-cleanup %{_bindir}/repoclosure %{_bindir}/repodiff @@ -538,6 +537,8 @@ fi /usr/lib/yum-plugins/post-transaction-actions.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/post-transaction-actions.conf %doc plugins/post-transaction-actions/sample.action +# Default *.action file dropping dir. +%dir %{_sysconfdir}/yum/post-actions %files -n yum-rpm-warm-cache %defattr(-, root, root) @@ -546,8 +547,11 @@ fi %changelog -* Tue Nov 25 2008 James Antill -- Fix the development/rawhide difference. +* Wed Dec 17 2008 Tim Lauridsen +- mark as 1.1.19 + +* Wed Dec 10 2008 Seth Vidal +- add find-repos-of-install from James' stash of misc stuff * Wed Oct 29 2008 Tim Lauridsen - mark as 1.1.18 From 18518ef4ecee3c96727a296faf7cd61c64dad008 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 18 Dec 2008 12:28:59 +0000 Subject: [PATCH 043/150] remove old patch --- repodiff-unicode-fix.patch | 20 -------------------- yum-aliases-rawhide.patch | 22 ---------------------- 2 files changed, 42 deletions(-) delete mode 100644 repodiff-unicode-fix.patch delete mode 100644 yum-aliases-rawhide.patch diff --git a/repodiff-unicode-fix.patch b/repodiff-unicode-fix.patch deleted file mode 100644 index c86e931..0000000 --- a/repodiff-unicode-fix.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/repodiff.py.orig 2008-09-17 14:58:11.000000000 -0400 -+++ b/repodiff.py 2008-10-23 16:57:02.000000000 -0400 -@@ -20,6 +20,7 @@ - import time - import os - import locale -+from yum.misc import to_unicode - - from optparse import OptionParser - -@@ -204,7 +205,8 @@ - clogdelta = [] - for (t, author, content) in pkg.changelog: - if t > oldtime: -- msg += "* %s %s\n%s\n\n" % (time.ctime(int(t)), author, content) -+ msg += "* %s %s\n%s\n\n" % (time.ctime(int(t)), -+ to_unicode(author), to_unicode(content)) - if opts.size: - sizechange = int(pkg.size) - int(oldpkg.size) - total_sizechange += sizechange diff --git a/yum-aliases-rawhide.patch b/yum-aliases-rawhide.patch deleted file mode 100644 index d3fefb4..0000000 --- a/yum-aliases-rawhide.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -ru yum-utils-1.1.18-orig/plugins/aliases/aliases yum-utils-1.1.18/plugins/aliases/aliases ---- yum-utils-1.1.18-orig/plugins/aliases/aliases 2008-10-29 07:49:44.000000000 -0400 -+++ yum-utils-1.1.18/plugins/aliases/aliases 2008-11-25 10:29:25.000000000 -0500 -@@ -3,15 +3,15 @@ - # who install yum-aliases plugin anyway :). Note that they require alias - # recursion, which is the default. - --DEV --enablerepo=development -+DEV --enablerepo=rawhide - UPT --enablerepo=updates-testing - - SRC --enablerepo=fedora-source --enablerepo=updates-source --DEVSRC --enablerepo=development-source -+DEVSRC --enablerepo=rawhide-source - UPTSRC --enablerepo=updates-testing-source - # Note that we/you can move to =X,Y in 3.2.9 onwards. - DBG --enablerepo=fedora-debuginfo --enablerepo=updates-debuginfo --DEVDBG --enablerepo=development-debuginfo -+DEVDBG --enablerepo=rawhide-debuginfo - UPTDBG --enablerepo=updates-testing-debuginfo - - ALLSRC SRC DEVSRC UPTSRC From 94298f96481bd5cf77f20301081027646a54a301 Mon Sep 17 00:00:00 2001 From: Panu Matilainen Date: Sat, 21 Feb 2009 08:09:16 +0000 Subject: [PATCH 044/150] - add missing build dependency on python --- yum-utils.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index 4cb46ea..62de2dd 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.19 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -9,6 +9,7 @@ URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch Requires: python >= 2.4 , yum >= 3.2.20 +BuildRequires: python %description yum-utils is a collection of utilities and examples for the yum package @@ -547,6 +548,9 @@ fi %changelog +* Sat Feb 21 2009 Panu Matilainen +- add missing build dependency on python + * Wed Dec 17 2008 Tim Lauridsen - mark as 1.1.19 From 240786fbbb2c783962d1d3a9c792f49853ca5861 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Wed, 25 Feb 2009 18:26:28 +0000 Subject: [PATCH 045/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild --- yum-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index 62de2dd..81fff1b 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.19 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -548,6 +548,9 @@ fi %changelog +* Wed Feb 25 2009 Fedora Release Engineering - 1.1.19-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + * Sat Feb 21 2009 Panu Matilainen - add missing build dependency on python From f867ff6569b4a7e7fa2d5aaf93fffdecc6a8afc0 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Sun, 1 Mar 2009 12:38:52 +0000 Subject: [PATCH 046/150] Release 1.1.20 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 303 +++++++++++++++++++++++++++++-------------------- 3 files changed, 179 insertions(+), 128 deletions(-) diff --git a/.cvsignore b/.cvsignore index 53d1edb..2e7f4c7 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.19.tar.gz +yum-utils-1.1.20.tar.gz diff --git a/sources b/sources index 519c500..af43973 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -ebd74b37c9d87ebcce43670f94ceedf4 yum-utils-1.1.19.tar.gz +cb98191c2545b72edecf26ba46ded94a yum-utils-1.1.20.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 81fff1b..ba11d0c 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,15 +1,14 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.19 -Release: 3%{?dist} +Version: 1.1.20 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.20 -BuildRequires: python +Requires: python >= 2.4 , yum >= 3.2.22 %description yum-utils is a collection of utilities and examples for the yum package @@ -22,6 +21,9 @@ yum-debug-dump and yum-groups-manager. %package -n yum-updateonboot Summary: Run yum update on system boot Group: System Environment/Base +Provides: yum-updateonboot +Obsoletes: yum-updateonboot < 1.1.20-0 +Conflicts: yum-updateonboot < 1.1.20-0 Requires: python, yum >= 2.4 Requires(pre): chkconfig Requires(post): chkconfig @@ -31,275 +33,325 @@ Runs yum update on system boot. This allows machines that have been turned off for an extended amount of time to become secure immediately, instead of waiting until the next early morning cron job. -%package -n yum-changelog +%package -n yum-plugin-changelog Summary: Yum plugin for viewing package changelogs before/after updating Group: System Environment/Base -Requires: yum >= 3.0 +Provides: yum-changelog +Obsoletes: yum-changelog < 1.1.20-0 +Conflicts: yum-changelog < 1.1.20-0 +Requires: yum >= 3.2.19 Requires: python-dateutil -%description -n yum-changelog +%description -n yum-plugin-changelog This plugin adds a command line option to allow viewing package changelog deltas before or after updating packages. -%package -n yum-fastestmirror +%package -n yum-plugin-fastestmirror Summary: Yum plugin which chooses fastest repository from a mirrorlist Group: System Environment/Base +Provides: yum-fastestmirror +Obsoletes: yum-fastestmirror < 1.1.20-0 +Conflicts: yum-fastestmirror < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-fastestmirror +%description -n yum-plugin-fastestmirror This plugin sorts each repository's mirrorlist by connection speed prior to downloading packages. -%package -n yum-fedorakmod -Summary: Yum plugin to handle fedora kernel modules. -Group: System Environment/Base -Requires: yum >= 3.0 - -%description -n yum-fedorakmod -Plugin for Yum to handle installation of kmod-foo type of kernel modules, -when new kernel versions are installed. -kmod-foo kernel modules is described by the Fedora Extras packaging standards. - -%package -n yum-protectbase +%package -n yum-plugin-protectbase Summary: Yum plugin to protect packages from certain repositories. Group: System Environment/Base +Provides: yum-protectbase +Obsoletes: yum-protectbase < 1.1.20-0 +Conflicts: yum-protectbase < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-protectbase +%description -n yum-plugin-protectbase This plugin allows certain repositories to be protected. Packages in the protected repositories can't be overridden by packages in non-protected repositories even if the non-protected repo has a later version. -%package -n yum-versionlock +%package -n yum-plugin-versionlock Summary: Yum plugin to lock specified packages from being updated Group: System Environment/Base +Provides: yum-versionlock +Obsoletes: yum-versionlock < 1.1.20-0 +Conflicts: yum-versionlock < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-versionlock +%description -n yum-plugin-versionlock This plugin takes a set of name/versions for packages and excludes all other versions of those packages (including optionally following obsoletes). This allows you to protect packages from being updated by newer versions, for example. -%package -n yum-tsflags +%package -n yum-plugin-tsflags Summary: Yum plugin to add tsflags by a commandline option Group: System Environment/Base +Provides: yum-tsflags +Obsoletes: yum-tsflags < 1.1.20-0 +Conflicts: yum-tsflags < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-tsflags +%description -n yum-plugin-tsflags This plugin allows you to specify optional transaction flags on the yum command line -%package -n yum-kernel-module -Summary: Yum plugin to handle kernel-module-foo type of kernel module -Group: System Environment/Base -Requires: yum >= 3.0 - -%description -n yum-kernel-module -This plugin handle installation of kernel-module-foo type of kernel modules when new version of -kernels are installed. - - -%package -n yum-downloadonly +%package -n yum-plugin-downloadonly Summary: Yum plugin to add downloadonly command option Group: System Environment/Base +Provides: yum-downloadonly +Obsoletes: yum-downloadonly < 1.1.20-0 +Conflicts: yum-downloadonly < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-downloadonly +%description -n yum-plugin-downloadonly This plugin adds a --downloadonly flag to yum so that yum will only download the packages and not install/update them. -%package -n yum-allowdowngrade +%package -n yum-plugin-allowdowngrade Summary: Yum plugin to enable manual downgrading of packages Group: System Environment/Base +Provides: yum-allowdowngrade +Obsoletes: yum-allowdowngrade < 1.1.20-0 +Conflicts: yum-allowdowngrade < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-allowdowngrade +%description -n yum-plugin-allowdowngrade This plugin adds a --allow-downgrade flag to yum to make it possible to manually downgrade packages to specific versions. -%package -n yum-skip-broken -Summary: Yum plugin to handle skiping packages with dependency problems -Group: System Environment/Base -Requires: yum >= 3.0 - -%description -n yum-skip-broken -This plugin adds a --skip-broken to yum to make it possible to -check packages for dependency problems and skip the one with problems. - -%package -n yum-priorities +%package -n yum-plugin-priorities Summary: plugin to give priorities to packages from different repos Group: System Environment/Base +Provides: yum-priorities +Obsoletes: yum-priorities < 1.1.20-0 +Conflicts: yum-priorities < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-priorities +%description -n yum-plugin-priorities This plugin allows repositories to have different priorities. Packages in a repository with a lower priority can't be overridden by packages from a repository with a higher priority even if repo has a later version. -%package -n yum-refresh-updatesd +%package -n yum-plugin-refresh-updatesd Summary: Tell yum-updatesd to check for updates when yum exits Group: System Environment/Base +Provides: yum-refresh-updatesd +Obsoletes: yum-refresh-updatesd < 1.1.20-0 +Conflicts: yum-refresh-updatesd < 1.1.20-0 Requires: yum >= 3.0 Requires: yum-updatesd -%description -n yum-refresh-updatesd +%description -n yum-plugin-refresh-updatesd yum-refresh-updatesd tells yum-updatesd to check for updates when yum exits. This way, if you run 'yum update' and install all available updates, puplet will almost instantly update itself to reflect this. -%package -n yum-merge-conf +%package -n yum-plugin-merge-conf Summary: Yum plugin to merge configuration changes when installing packages Group: System Environment/Base +Provides: yum-merge-conf +Obsoletes: yum-merge-conf < 1.1.20-0 +Conflicts: yum-merge-conf < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-merge-conf +%description -n yum-plugin-merge-conf This yum plugin adds the "--merge-conf" command line option. With this option, Yum will ask you what to do with config files which have changed on updating a package. -%package -n yum-security +%package -n yum-plugin-security Summary: Yum plugin to enable security filters Group: System Environment/Base +Provides: yum-security +Obsoletes: yum-security < 1.1.20-0 +Conflicts: yum-security < 1.1.20-0 Requires: yum >= 3.2.18 -%description -n yum-security +%description -n yum-plugin-security This plugin adds the options --security, --cve, --bz and --advisory flags to yum and the list-security and info-security commands. The options make it possible to limit list/upgrade of packages to specific security relevant ones. The commands give you the security information. -%package -n yum-protect-packages +%package -n yum-plugin-protect-packages Summary: Yum plugin to prevents Yum from removing itself and other protected packages Group: System Environment/Base +Provides: yum-protect-packages +Obsoletes: yum-protect-packages < 1.1.20-0 +Conflicts: yum-protect-packages < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-protect-packages +%description -n yum-plugin-protect-packages this plugin prevents Yum from removing itself and other protected packages. By default, yum is the only package protected, but by extension this automatically protects everything on which yum depends (rpm, python, glibc, and so on).Therefore, the plugin functions well even without compiling careful lists of all important packages. -%package -n yum-basearchonly +%package -n yum-plugin-basearchonly Summary: Yum plugin to let Yum install only basearch packages. Group: System Environment/Base +Provides: yum-basearchonly +Obsoletes: yum-basearchonly < 1.1.20-0 +Conflicts: yum-basearchonly < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-basearchonly +%description -n yum-plugin-basearchonly this plugin makes Yum only install basearch packages on multiarch systems. If you type 'yum install foo' on a x68_64 system, only 'foo-x.y.x86_46.rpm' is installed. If you want to install the foo-x.y.i386.rpm, you have to type 'yum install foo.i386'. The plugin only works with 'yum install'. -%package -n yum-upgrade-helper +%package -n yum-plugin-upgrade-helper Summary: Yum plugin to help upgrades to the next distribution version Group: System Environment/Base +Provides: yum-upgrade-helper +Obsoletes: yum-upgrade-helper < 1.1.20-0 +Conflicts: yum-upgrade-helper < 1.1.20-0 Requires: yum >= 3.0 -%description -n yum-upgrade-helper +%description -n yum-plugin-upgrade-helper this plugin allows yum to erase specific packages on install/update based on an additional metadata file in repositories. It is used to simplify distribution upgrade hangups. -%package -n yum-aliases +%package -n yum-plugin-aliases Summary: Yum plugin to enable aliases filters Group: System Environment/Base +Provides: yum-aliases +Obsoletes: yum-aliases < 1.1.20-0 +Conflicts: yum-aliases < 1.1.20-0 Requires: yum >= 3.0.5 -%description -n yum-aliases +%description -n yum-plugin-aliases This plugin adds the command alias, and parses the aliases config. file to enable aliases. -%package -n yum-list-data +%package -n yum-plugin-list-data Summary: Yum plugin to list aggregate package data Group: System Environment/Base +Provides: yum-list-data +Obsoletes: yum-list-data < 1.1.20-0 +Conflicts: yum-list-data < 1.1.20-0 Requires: yum >= 3.0.5 -%description -n yum-list-data +%description -n yum-plugin-list-data This plugin adds the commands list- vendors, groups, packagers, licenses, arches, committers, buildhosts, baseurls, package-sizes, archive-sizes and installed-sizes. -%package -n yum-filter-data +%package -n yum-plugin-filter-data Summary: Yum plugin to list filter based on package data Group: System Environment/Base +Provides: yum-filter-data +Obsoletes: yum-filter-data < 1.1.20-0 +Conflicts: yum-filter-data < 1.1.20-0 Requires: yum >= 3.2.17 -%description -n yum-filter-data +%description -n yum-plugin-filter-data This plugin adds the options --filter- vendors, groups, packagers, licenses, arches, committers, buildhosts, baseurls, package-sizes, archive-sizes and installed-sizes. Note that each package must match at least one pattern/range in each category, if any were specified. -%package -n yum-tmprepo +%package -n yum-plugin-tmprepo Summary: Yum plugin to add temporary repositories Group: System Environment/Base +Provides: yum-tmprepo +Obsoletes: yum-tmprepo < 1.1.20-0 +Conflicts: yum-tmprepo < 1.1.20-0 Requires: yum >= 3.2.11 Requires: createrepo -%description -n yum-tmprepo +%description -n yum-plugin-tmprepo This plugin adds the option --tmprepo which takes a url to a .repo file downloads it and enables it for a single run. This plugin tries to ensure that temporary repositories are safe to use, by default, by not allowing gpg checking to be disabled. -%package -n yum-verify +%package -n yum-plugin-verify Summary: Yum plugin to add verify command, and options Group: System Environment/Base +Provides: yum-verify +Obsoletes: yum-verify < 1.1.20-0 +Conflicts: yum-verify < 1.1.20-0 Requires: yum >= 3.2.12 -%description -n yum-verify +%description -n yum-plugin-verify This plugin adds the commands verify, verify-all and verify-rpm. There are also a couple of options. This command works like rpm -V, to verify your installation. -%package -n yum-keys +%package -n yum-plugin-keys Summary: Yum plugin to deal with signing keys Group: System Environment/Base +Provides: yum-keys +Obsoletes: yum-keys < 1.1.20-0 +Conflicts: yum-keys < 1.1.20-0 Requires: yum >= 3.2.19 -%description -n yum-keys +%description -n yum-plugin-keys This plugin adds the commands keys, keys-info, keys-data and keys-remove. They allow you to query and remove signing keys. -%package -n yum-remove-with-leaves +%package -n yum-plugin-remove-with-leaves Summary: Yum plugin to remove dependencies which are no longer used because of a removal Group: System Environment/Base +Provides: yum-remove-with-leaves +Obsoletes: yum-remove-with-leaves < 1.1.20-0 +Conflicts: yum-remove-with-leaves < 1.1.20-0 Requires: yum >= 3.2.19 -%description -n yum-remove-with-leaves +%description -n yum-plugin-remove-with-leaves This plugin removes any unused dependencies that were brought in by an install but would not normally be removed. It helps to keep a system clean of unused libraries and packages. -%package -n yum-post-transaction-actions +%package -n yum-plugin-post-transaction-actions Summary: Yum plugin to run arbitrary commands when certain pkgs are acted on Group: System Environment/Base +Provides: yum-post-transaction-actions +Obsoletes: yum-post-transaction-actions < 1.1.20-0 +Conflicts: yum-post-transaction-actions < 1.1.20-0 Requires: yum >= 3.2.19 -%description -n yum-post-transaction-actions +%description -n yum-plugin-post-transaction-actions This plugin allows the user to run arbitrary actions immediately following a transaction when specified packages are changed. %package -n yum-NetworkManager-dispatcher -Summary: Yum plugin to deal with changing networks with NetworkManager +Summary: NetworkManager script which tells yum to check it's cache on network change Group: System Environment/Base Requires: yum >= 3.2.17 %description -n yum-NetworkManager-dispatcher -This plugin forces yum to check it's cache if/when a new network connection -happens in NetworkManager. Note that currently there is no checking of -previous data, so if your WiFi keeps going up and down (or you suspend/resume -a lot) yum will recheck it's cached data a lot. +This NetworkManager "dispatch script" forces yum to check its cache if/when a +new network connection happens in NetworkManager. Note that currently there is +no checking of previous data, so if your WiFi keeps going up and down (or you +suspend/resume a lot) yum will recheck its cached data a lot. -%package -n yum-rpm-warm-cache +%package -n yum-plugin-rpm-warm-cache Summary: Yum plugin to access the rpmdb files early to warm up access to the db Group: System Environment/Base +Provides: yum-rpm-warm-cache +Obsoletes: yum-rpm-warm-cache < 1.1.20-0 +Conflicts: yum-rpm-warm-cache < 1.1.20-0 +Requires: yum >= 3.2.19 + +%description -n yum-plugin-rpm-warm-cache +This plugin reads the rpmdb files into the system cache before accessing the +rpmdb directly. In some cases this should speed up access to rpmdb information + +%package -n yum-plugin-auto-update-debuginfo +Summary: Yum plugin to enable automatic updates to installed debuginfo packages +Group: System Environment/Base Requires: yum >= 3.2.19 -%description -n yum-rpm-warm-cache -This plugin reads the rpmdb files into the system cache before accessing the -rpmdb directly. In some cases this should speed up access to rpmdb information +%description -n yum-plugin-auto-update-debuginfo +This plugin looks to see if any debuginfo packages are installed, and if there +are it enables all debuginfo repositories that are "children" of enabled +repositories. %prep %setup -q @@ -313,11 +365,9 @@ make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install plugins="\ changelog \ fastestmirror \ - fedorakmod \ protectbase \ versionlock \ tsflags \ - kernel-module \ downloadonly \ allowdowngrade \ priorities \ @@ -336,6 +386,7 @@ plugins="\ remove-with-leaves \ post-transaction-actions \ rpm-warm-cache \ + auto-update-debuginfo \ " mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -402,29 +453,24 @@ fi %config(noreplace) %{_sysconfdir}/sysconfig/yum-updateonboot %{_initrddir}/yum-updateonboot -%files -n yum-changelog +%files -n yum-plugin-changelog %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/changelog.conf /usr/lib/yum-plugins/changelog.* %{_mandir}/man1/yum-changelog.1.* %{_mandir}/man5/yum-changelog.conf.5.* -%files -n yum-fastestmirror +%files -n yum-plugin-fastestmirror %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fastestmirror.conf /usr/lib/yum-plugins/fastestmirror*.* -%files -n yum-fedorakmod -%defattr(-, root, root) -%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fedorakmod.conf -/usr/lib/yum-plugins/fedorakmod.* - -%files -n yum-protectbase +%files -n yum-plugin-protectbase %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protectbase.conf /usr/lib/yum-plugins/protectbase.* -%files -n yum-versionlock +%files -n yum-plugin-versionlock %defattr(-, root, root) %doc plugins/versionlock/README %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.conf @@ -433,93 +479,88 @@ fi %{_mandir}/man1/yum-versionlock.1.* %{_mandir}/man5/yum-versionlock.conf.5.* -%files -n yum-tsflags +%files -n yum-plugin-tsflags %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tsflags.conf /usr/lib/yum-plugins/tsflags.* -%files -n yum-kernel-module -%defattr(-, root, root) -%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/kernel-module.conf -/usr/lib/yum-plugins/kernel-module.* - -%files -n yum-downloadonly +%files -n yum-plugin-downloadonly %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/downloadonly.conf /usr/lib/yum-plugins/downloadonly.* -%files -n yum-allowdowngrade +%files -n yum-plugin-allowdowngrade %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/allowdowngrade.conf /usr/lib/yum-plugins/allowdowngrade.* -%files -n yum-priorities +%files -n yum-plugin-priorities %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/priorities.conf /usr/lib/yum-plugins/priorities.* -%files -n yum-refresh-updatesd +%files -n yum-plugin-refresh-updatesd %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/refresh-updatesd.conf /usr/lib/yum-plugins/refresh-updatesd.* -%files -n yum-merge-conf +%files -n yum-plugin-merge-conf %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/merge-conf.conf /usr/lib/yum-plugins/merge-conf.* -%files -n yum-security +%files -n yum-plugin-security %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/security.conf /usr/lib/yum-plugins/security.* %{_mandir}/man8/yum-security.8.* -%files -n yum-protect-packages +%files -n yum-plugin-protect-packages %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protect-packages.conf /usr/lib/yum-plugins/protect-packages.* -%files -n yum-basearchonly +%files -n yum-plugin-basearchonly %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/basearchonly.conf /usr/lib/yum-plugins/basearchonly.* -%files -n yum-upgrade-helper +%files -n yum-plugin-upgrade-helper %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf /usr/lib/yum-plugins/upgrade-helper.* -%files -n yum-aliases +%files -n yum-plugin-aliases %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/aliases.conf %config(noreplace) %{_sysconfdir}/yum/aliases.conf /usr/lib/yum-plugins/aliases.* %{_mandir}/man1/yum-aliases.1.* -%files -n yum-list-data +%files -n yum-plugin-list-data %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/list-data.conf /usr/lib/yum-plugins/list-data.* %{_mandir}/man1/yum-list-data.1.* -%files -n yum-filter-data +%files -n yum-plugin-filter-data %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/filter-data.conf /usr/lib/yum-plugins/filter-data.* %{_mandir}/man1/yum-filter-data.1.* -%files -n yum-tmprepo +%files -n yum-plugin-tmprepo %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tmprepo.conf /usr/lib/yum-plugins/tmprepo.* -%files -n yum-verify +%files -n yum-plugin-verify %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/verify.conf /usr/lib/yum-plugins/verify.* %{_mandir}/man1/yum-verify.1.* -%files -n yum-keys +%files -n yum-plugin-keys %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/keys.conf /usr/lib/yum-plugins/keys.* @@ -528,12 +569,12 @@ fi %defattr(-, root, root) /etc/NetworkManager/dispatcher.d/* -%files -n yum-remove-with-leaves +%files -n yum-plugin-remove-with-leaves %defattr(-, root, root) /usr/lib/yum-plugins/remove-with-leaves.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/remove-with-leaves.conf -%files -n yum-post-transaction-actions +%files -n yum-plugin-post-transaction-actions %defattr(-, root, root) /usr/lib/yum-plugins/post-transaction-actions.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/post-transaction-actions.conf @@ -541,18 +582,28 @@ fi # Default *.action file dropping dir. %dir %{_sysconfdir}/yum/post-actions -%files -n yum-rpm-warm-cache +%files -n yum-plugin-rpm-warm-cache %defattr(-, root, root) /usr/lib/yum-plugins/rpm-warm-cache.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/rpm-warm-cache.conf +%files -n yum-plugin-auto-update-debuginfo +%defattr(-, root, root) +/usr/lib/yum-plugins/auto-update-debuginfo.* +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/auto-update-debuginfo.conf + %changelog -* Wed Feb 25 2009 Fedora Release Engineering - 1.1.19-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild +* Sun Mar 1 2009 Tim Lauridsen +- mark as 1.1.20 +- rename plugins from yum-name to yum-plugin-name -* Sat Feb 21 2009 Panu Matilainen -- add missing build dependency on python +* Wed Feb 25 2009 Tim Lauridsen +- Remove yum-kernel-module & yum-fedorakmod plugins (no obsoleting yet) +- Remove yum-skip-broken plugin leftovers + +* Tue Feb 3 2009 James Antill +- add auto-update-debuginfo plugin * Wed Dec 17 2008 Tim Lauridsen - mark as 1.1.19 From 659f6f496db6673decdb667d4649a594f8ac0583 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Mon, 2 Mar 2009 08:21:23 +0000 Subject: [PATCH 047/150] Release 1.1.20-2 (changed yum require) --- yum-utils.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index ba11d0c..66505ee 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,14 +1,14 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.20 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.22 +Requires: python >= 2.4 , yum >= 3.2.21 %description yum-utils is a collection of utilities and examples for the yum package @@ -594,6 +594,9 @@ fi %changelog +* Sun Mar 1 2009 Tim Lauridsen +- set yum require to 3.2.21 (the 3.2.21 in rawhide is patched to yum head, so it matches the need yum 3.2.22 code) + * Sun Mar 1 2009 Tim Lauridsen - mark as 1.1.20 - rename plugins from yum-name to yum-plugin-name From 8f08e1e90b8cf7d00de240f714a3c9fab82acdd9 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Mon, 2 Mar 2009 10:32:13 +0000 Subject: [PATCH 048/150] Release 1.1.20-3 --- yum-utils.spec | 54 ++++++++++++++++++++++++-------------------------- 1 file changed, 26 insertions(+), 28 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index 66505ee..23431e6 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.20 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -21,9 +21,6 @@ yum-debug-dump and yum-groups-manager. %package -n yum-updateonboot Summary: Run yum update on system boot Group: System Environment/Base -Provides: yum-updateonboot -Obsoletes: yum-updateonboot < 1.1.20-0 -Conflicts: yum-updateonboot < 1.1.20-0 Requires: python, yum >= 2.4 Requires(pre): chkconfig Requires(post): chkconfig @@ -36,7 +33,7 @@ waiting until the next early morning cron job. %package -n yum-plugin-changelog Summary: Yum plugin for viewing package changelogs before/after updating Group: System Environment/Base -Provides: yum-changelog +Provides: yum-changelog = %{version}-%{release} Obsoletes: yum-changelog < 1.1.20-0 Conflicts: yum-changelog < 1.1.20-0 Requires: yum >= 3.2.19 @@ -49,7 +46,7 @@ deltas before or after updating packages. %package -n yum-plugin-fastestmirror Summary: Yum plugin which chooses fastest repository from a mirrorlist Group: System Environment/Base -Provides: yum-fastestmirror +Provides: yum-fastestmirror = %{version}-%{release} Obsoletes: yum-fastestmirror < 1.1.20-0 Conflicts: yum-fastestmirror < 1.1.20-0 Requires: yum >= 3.0 @@ -61,7 +58,7 @@ prior to downloading packages. %package -n yum-plugin-protectbase Summary: Yum plugin to protect packages from certain repositories. Group: System Environment/Base -Provides: yum-protectbase +Provides: yum-protectbase = %{version}-%{release} Obsoletes: yum-protectbase < 1.1.20-0 Conflicts: yum-protectbase < 1.1.20-0 Requires: yum >= 3.0 @@ -74,7 +71,7 @@ repositories even if the non-protected repo has a later version. %package -n yum-plugin-versionlock Summary: Yum plugin to lock specified packages from being updated Group: System Environment/Base -Provides: yum-versionlock +Provides: yum-versionlock = %{version}-%{release} Obsoletes: yum-versionlock < 1.1.20-0 Conflicts: yum-versionlock < 1.1.20-0 Requires: yum >= 3.0 @@ -88,7 +85,7 @@ for example. %package -n yum-plugin-tsflags Summary: Yum plugin to add tsflags by a commandline option Group: System Environment/Base -Provides: yum-tsflags +Provides: yum-tsflags = %{version}-%{release} Obsoletes: yum-tsflags < 1.1.20-0 Conflicts: yum-tsflags < 1.1.20-0 Requires: yum >= 3.0 @@ -100,7 +97,7 @@ command line %package -n yum-plugin-downloadonly Summary: Yum plugin to add downloadonly command option Group: System Environment/Base -Provides: yum-downloadonly +Provides: yum-downloadonly = %{version}-%{release} Obsoletes: yum-downloadonly < 1.1.20-0 Conflicts: yum-downloadonly < 1.1.20-0 Requires: yum >= 3.0 @@ -112,7 +109,7 @@ the packages and not install/update them. %package -n yum-plugin-allowdowngrade Summary: Yum plugin to enable manual downgrading of packages Group: System Environment/Base -Provides: yum-allowdowngrade +Provides: yum-allowdowngrade = %{version}-%{release} Obsoletes: yum-allowdowngrade < 1.1.20-0 Conflicts: yum-allowdowngrade < 1.1.20-0 Requires: yum >= 3.0 @@ -124,7 +121,7 @@ manually downgrade packages to specific versions. %package -n yum-plugin-priorities Summary: plugin to give priorities to packages from different repos Group: System Environment/Base -Provides: yum-priorities +Provides: yum-priorities = %{version}-%{release} Obsoletes: yum-priorities < 1.1.20-0 Conflicts: yum-priorities < 1.1.20-0 Requires: yum >= 3.0 @@ -137,7 +134,7 @@ from a repository with a higher priority even if repo has a later version. %package -n yum-plugin-refresh-updatesd Summary: Tell yum-updatesd to check for updates when yum exits Group: System Environment/Base -Provides: yum-refresh-updatesd +Provides: yum-refresh-updatesd = %{version}-%{release} Obsoletes: yum-refresh-updatesd < 1.1.20-0 Conflicts: yum-refresh-updatesd < 1.1.20-0 Requires: yum >= 3.0 @@ -151,7 +148,7 @@ will almost instantly update itself to reflect this. %package -n yum-plugin-merge-conf Summary: Yum plugin to merge configuration changes when installing packages Group: System Environment/Base -Provides: yum-merge-conf +Provides: yum-merge-conf = %{version}-%{release} Obsoletes: yum-merge-conf < 1.1.20-0 Conflicts: yum-merge-conf < 1.1.20-0 Requires: yum >= 3.0 @@ -164,7 +161,7 @@ package. %package -n yum-plugin-security Summary: Yum plugin to enable security filters Group: System Environment/Base -Provides: yum-security +Provides: yum-security = %{version}-%{release} Obsoletes: yum-security < 1.1.20-0 Conflicts: yum-security < 1.1.20-0 Requires: yum >= 3.2.18 @@ -178,7 +175,7 @@ security relevant ones. The commands give you the security information. %package -n yum-plugin-protect-packages Summary: Yum plugin to prevents Yum from removing itself and other protected packages Group: System Environment/Base -Provides: yum-protect-packages +Provides: yum-protect-packages = %{version}-%{release} Obsoletes: yum-protect-packages < 1.1.20-0 Conflicts: yum-protect-packages < 1.1.20-0 Requires: yum >= 3.0 @@ -193,7 +190,7 @@ compiling careful lists of all important packages. %package -n yum-plugin-basearchonly Summary: Yum plugin to let Yum install only basearch packages. Group: System Environment/Base -Provides: yum-basearchonly +Provides: yum-basearchonly = %{version}-%{release} Obsoletes: yum-basearchonly < 1.1.20-0 Conflicts: yum-basearchonly < 1.1.20-0 Requires: yum >= 3.0 @@ -207,7 +204,7 @@ The plugin only works with 'yum install'. %package -n yum-plugin-upgrade-helper Summary: Yum plugin to help upgrades to the next distribution version Group: System Environment/Base -Provides: yum-upgrade-helper +Provides: yum-upgrade-helper = %{version}-%{release} Obsoletes: yum-upgrade-helper < 1.1.20-0 Conflicts: yum-upgrade-helper < 1.1.20-0 Requires: yum >= 3.0 @@ -219,7 +216,7 @@ metadata file in repositories. It is used to simplify distribution upgrade hangu %package -n yum-plugin-aliases Summary: Yum plugin to enable aliases filters Group: System Environment/Base -Provides: yum-aliases +Provides: yum-aliases = %{version}-%{release} Obsoletes: yum-aliases < 1.1.20-0 Conflicts: yum-aliases < 1.1.20-0 Requires: yum >= 3.0.5 @@ -231,7 +228,7 @@ enable aliases. %package -n yum-plugin-list-data Summary: Yum plugin to list aggregate package data Group: System Environment/Base -Provides: yum-list-data +Provides: yum-list-data = %{version}-%{release} Obsoletes: yum-list-data < 1.1.20-0 Conflicts: yum-list-data < 1.1.20-0 Requires: yum >= 3.0.5 @@ -244,7 +241,7 @@ installed-sizes. %package -n yum-plugin-filter-data Summary: Yum plugin to list filter based on package data Group: System Environment/Base -Provides: yum-filter-data +Provides: yum-filter-data = %{version}-%{release} Obsoletes: yum-filter-data < 1.1.20-0 Conflicts: yum-filter-data < 1.1.20-0 Requires: yum >= 3.2.17 @@ -258,7 +255,7 @@ each category, if any were specified. %package -n yum-plugin-tmprepo Summary: Yum plugin to add temporary repositories Group: System Environment/Base -Provides: yum-tmprepo +Provides: yum-tmprepo = %{version}-%{release} Obsoletes: yum-tmprepo < 1.1.20-0 Conflicts: yum-tmprepo < 1.1.20-0 Requires: yum >= 3.2.11 @@ -273,7 +270,7 @@ gpg checking to be disabled. %package -n yum-plugin-verify Summary: Yum plugin to add verify command, and options Group: System Environment/Base -Provides: yum-verify +Provides: yum-verify = %{version}-%{release} Obsoletes: yum-verify < 1.1.20-0 Conflicts: yum-verify < 1.1.20-0 Requires: yum >= 3.2.12 @@ -286,7 +283,7 @@ installation. %package -n yum-plugin-keys Summary: Yum plugin to deal with signing keys Group: System Environment/Base -Provides: yum-keys +Provides: yum-keys = %{version}-%{release} Obsoletes: yum-keys < 1.1.20-0 Conflicts: yum-keys < 1.1.20-0 Requires: yum >= 3.2.19 @@ -298,7 +295,7 @@ allow you to query and remove signing keys. %package -n yum-plugin-remove-with-leaves Summary: Yum plugin to remove dependencies which are no longer used because of a removal Group: System Environment/Base -Provides: yum-remove-with-leaves +Provides: yum-remove-with-leaves = %{version}-%{release} Obsoletes: yum-remove-with-leaves < 1.1.20-0 Conflicts: yum-remove-with-leaves < 1.1.20-0 Requires: yum >= 3.2.19 @@ -311,7 +308,7 @@ libraries and packages. %package -n yum-plugin-post-transaction-actions Summary: Yum plugin to run arbitrary commands when certain pkgs are acted on Group: System Environment/Base -Provides: yum-post-transaction-actions +Provides: yum-post-transaction-actions = %{version}-%{release} Obsoletes: yum-post-transaction-actions < 1.1.20-0 Conflicts: yum-post-transaction-actions < 1.1.20-0 Requires: yum >= 3.2.19 @@ -334,7 +331,7 @@ suspend/resume a lot) yum will recheck its cached data a lot. %package -n yum-plugin-rpm-warm-cache Summary: Yum plugin to access the rpmdb files early to warm up access to the db Group: System Environment/Base -Provides: yum-rpm-warm-cache +Provides: yum-rpm-warm-cache = %{version}-%{release} Obsoletes: yum-rpm-warm-cache < 1.1.20-0 Conflicts: yum-rpm-warm-cache < 1.1.20-0 Requires: yum >= 3.2.19 @@ -594,8 +591,9 @@ fi %changelog -* Sun Mar 1 2009 Tim Lauridsen +* Mon Mar 2 2009 Tim Lauridsen - set yum require to 3.2.21 (the 3.2.21 in rawhide is patched to yum head, so it matches the need yum 3.2.22 code) +- Added versioned yum- to make rpm/yum happy. * Sun Mar 1 2009 Tim Lauridsen - mark as 1.1.20 From f89a815d1e9c9abed450f34222ec1aaeba0782cd Mon Sep 17 00:00:00 2001 From: James Antill Date: Mon, 2 Mar 2009 21:40:01 +0000 Subject: [PATCH 049/150] - fix yumdownloader for koji --- yum-utils.spec | 8 +++++++- yumdownloader-import-os.patch | 18 ++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 yumdownloader-import-os.patch diff --git a/yum-utils.spec b/yum-utils.spec index 23431e6..9ccf724 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,10 +1,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.20 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz +Patch0: yumdownloader-import-os.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -353,6 +354,8 @@ repositories. %prep %setup -q +%patch0 -p1 + %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -591,6 +594,9 @@ fi %changelog +* Mon Mar 2 2009 James Antill +- fix yumdownloader for koji + * Mon Mar 2 2009 Tim Lauridsen - set yum require to 3.2.21 (the 3.2.21 in rawhide is patched to yum head, so it matches the need yum 3.2.22 code) - Added versioned yum- to make rpm/yum happy. diff --git a/yumdownloader-import-os.patch b/yumdownloader-import-os.patch new file mode 100644 index 0000000..c65e1d9 --- /dev/null +++ b/yumdownloader-import-os.patch @@ -0,0 +1,18 @@ +commit c080e7050972d635ce0a8f293145422aec475d7b +Author: James Antill +Date: Mon Mar 2 16:34:18 2009 -0500 + + Fix yumdownload to import os + +diff --git a/yumdownloader.py b/yumdownloader.py +index e5e9c94..ed7f11a 100755 +--- a/yumdownloader.py ++++ b/yumdownloader.py +@@ -15,6 +15,7 @@ + + import sys + sys.path.insert(0,'/usr/share/yum-cli') ++import os + + import yum + from yum.misc import getCacheDir, setup_locale From c509c44719a9587299787320962610019bdc0fc2 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Wed, 4 Mar 2009 17:01:11 +0000 Subject: [PATCH 050/150] patch for repoclosure and rebuild yum-utils so jesse has less pain on the compose --- repoclosure-class-api.patch | 14 ++++++++++++++ yum-utils.spec | 7 ++++++- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 repoclosure-class-api.patch diff --git a/repoclosure-class-api.patch b/repoclosure-class-api.patch new file mode 100644 index 0000000..6baff2d --- /dev/null +++ b/repoclosure-class-api.patch @@ -0,0 +1,14 @@ +--- a/repoclosure.py ++++ b/repoclosure.py +@@ -63,8 +63,10 @@ def parseArgs(): + (opts, args) = parser.parse_args() + return (opts, args) + ++# Note that this is a "real" API, used by spam-o-matic etc. ++# so we have to do at least some API guarantee stuff. + class RepoClosure(yum.YumBase): +- def __init__(self, pkgonly, arch = [], config = "/etc/yum.conf", builddeps = False ): ++ def __init__(self, arch=[], config="/etc/yum.conf", builddeps=False, pkgonly=None): + yum.YumBase.__init__(self) + self.logger = logging.getLogger("yum.verbose.repoclosure") + self.arch = arch diff --git a/yum-utils.spec b/yum-utils.spec index 9ccf724..8d73a74 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,11 +1,12 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.20 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz Patch0: yumdownloader-import-os.patch +Patch1: repoclosure-class-api.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -355,6 +356,7 @@ repositories. %setup -q %patch0 -p1 +%patch1 -p1 %install rm -rf $RPM_BUILD_ROOT @@ -594,6 +596,9 @@ fi %changelog +* Wed Mar 4 2009 Seth Vidal +- fix for repoclosure class api from upstream + * Mon Mar 2 2009 James Antill - fix yumdownloader for koji From b7ba0f3f8e993deda9189b909e9792d99556b274 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 25 Mar 2009 12:41:38 +0000 Subject: [PATCH 051/150] Release 1.1.21 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 31 ++++++++++++++----------------- 3 files changed, 16 insertions(+), 19 deletions(-) diff --git a/.cvsignore b/.cvsignore index 2e7f4c7..6d7f531 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.20.tar.gz +yum-utils-1.1.21.tar.gz diff --git a/sources b/sources index af43973..88e3a6f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -cb98191c2545b72edecf26ba46ded94a yum-utils-1.1.20.tar.gz +3d19fd09adf74780b08fe0f5b0f77efe yum-utils-1.1.21.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 8d73a74..998dace 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,16 +1,14 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.20 -Release: 5%{?dist} +Version: 1.1.21 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz -Patch0: yumdownloader-import-os.patch -Patch1: repoclosure-class-api.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.21 +Requires: python >= 2.4 , yum >= 3.2.22 %description yum-utils is a collection of utilities and examples for the yum package @@ -342,12 +340,16 @@ Requires: yum >= 3.2.19 This plugin reads the rpmdb files into the system cache before accessing the rpmdb directly. In some cases this should speed up access to rpmdb information -%package -n yum-plugin-auto-update-debuginfo +%package -n yum-plugin-auto-update-debug-info +# Works by searching for *-debuginfo ... so it shouldn't trigger on itself. Summary: Yum plugin to enable automatic updates to installed debuginfo packages Group: System Environment/Base +Obsoletes: yum-plugin-auto-update-debuginfo < 1.1.20-2 +Conflicts: yum-plugin-auto-update-debuginfo < 1.1.20-2 +Provides: yum-plugin-auto-update-debuginfo = %{version}-%{release} Requires: yum >= 3.2.19 -%description -n yum-plugin-auto-update-debuginfo +%description -n yum-plugin-auto-update-debug-info This plugin looks to see if any debuginfo packages are installed, and if there are it enables all debuginfo repositories that are "children" of enabled repositories. @@ -355,9 +357,6 @@ repositories. %prep %setup -q -%patch0 -p1 -%patch1 -p1 - %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -589,22 +588,20 @@ fi /usr/lib/yum-plugins/rpm-warm-cache.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/rpm-warm-cache.conf -%files -n yum-plugin-auto-update-debuginfo +%files -n yum-plugin-auto-update-debug-info %defattr(-, root, root) /usr/lib/yum-plugins/auto-update-debuginfo.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/auto-update-debuginfo.conf %changelog -* Wed Mar 4 2009 Seth Vidal -- fix for repoclosure class api from upstream - -* Mon Mar 2 2009 James Antill -- fix yumdownloader for koji +* Wed Mar 25 2009 Tim Lauridsen +- mark as 1.1.21 * Mon Mar 2 2009 Tim Lauridsen - set yum require to 3.2.21 (the 3.2.21 in rawhide is patched to yum head, so it matches the need yum 3.2.22 code) -- Added versioned yum- to make rpm/yum happy. +- Added versioned Provides: yum- to make rpm/yum happy. +- yum-updateonboot is not renamed and dont need Obsoletes/Conflicts/Provides * Sun Mar 1 2009 Tim Lauridsen - mark as 1.1.20 From 015fd877fd95398ffd3cd36db8c3b2a9e9b61f16 Mon Sep 17 00:00:00 2001 From: James Antill Date: Sat, 28 Mar 2009 20:40:06 +0000 Subject: [PATCH 052/150] - Fix yumdownloader syntax error. - Include newer rawhide versions of auto-debuginfo in obs. --- yum-utils.spec | 13 ++++++++++--- yumdownloader-import-os.patch | 17 +++++++++-------- yumdownloader-syntax-fix-2009-03-28.patch | 19 +++++++++++++++++++ 3 files changed, 38 insertions(+), 11 deletions(-) create mode 100644 yumdownloader-syntax-fix-2009-03-28.patch diff --git a/yum-utils.spec b/yum-utils.spec index 998dace..e5ca047 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,10 +1,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.21 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz +Patch1: yumdownloader-syntax-fix-2009-03-28.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -344,8 +345,8 @@ rpmdb directly. In some cases this should speed up access to rpmdb information # Works by searching for *-debuginfo ... so it shouldn't trigger on itself. Summary: Yum plugin to enable automatic updates to installed debuginfo packages Group: System Environment/Base -Obsoletes: yum-plugin-auto-update-debuginfo < 1.1.20-2 -Conflicts: yum-plugin-auto-update-debuginfo < 1.1.20-2 +Obsoletes: yum-plugin-auto-update-debuginfo < 1.1.21-0 +Conflicts: yum-plugin-auto-update-debuginfo < 1.1.21-0 Provides: yum-plugin-auto-update-debuginfo = %{version}-%{release} Requires: yum >= 3.2.19 @@ -357,6 +358,8 @@ repositories. %prep %setup -q +%patch1 -p1 + %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -595,6 +598,10 @@ fi %changelog +* Sat Mar 28 2009 James Antill +- Fix yumdownloader syntax error. +- Include newer rawhide versions of auto-debuginfo in obs. + * Wed Mar 25 2009 Tim Lauridsen - mark as 1.1.21 diff --git a/yumdownloader-import-os.patch b/yumdownloader-import-os.patch index c65e1d9..ab0b757 100644 --- a/yumdownloader-import-os.patch +++ b/yumdownloader-import-os.patch @@ -1,18 +1,19 @@ -commit c080e7050972d635ce0a8f293145422aec475d7b -Author: James Antill -Date: Mon Mar 2 16:34:18 2009 -0500 +commit 8862e979ecae64d5463c8c130dea036b752de550 +Author: Seth Vidal +Date: Mon Mar 2 16:38:52 2009 -0500 - Fix yumdownload to import os + import os and os.path to make the other changes from 2 weeks ago work diff --git a/yumdownloader.py b/yumdownloader.py -index e5e9c94..ed7f11a 100755 +index e5e9c94..53749e9 100755 --- a/yumdownloader.py +++ b/yumdownloader.py -@@ -15,6 +15,7 @@ +@@ -14,6 +14,8 @@ + # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. import sys - sys.path.insert(0,'/usr/share/yum-cli') +import os ++import os.path + sys.path.insert(0,'/usr/share/yum-cli') import yum - from yum.misc import getCacheDir, setup_locale diff --git a/yumdownloader-syntax-fix-2009-03-28.patch b/yumdownloader-syntax-fix-2009-03-28.patch new file mode 100644 index 0000000..750891e --- /dev/null +++ b/yumdownloader-syntax-fix-2009-03-28.patch @@ -0,0 +1,19 @@ +commit 8ec41e7c3ccbc3ecd74cbc87f2550e330b3b5be3 +Author: James Antill +Date: Sat Mar 28 14:00:38 2009 -0400 + + Fix syntax error + +diff --git a/yumdownloader.py b/yumdownloader.py +index 1c4e98b..991853b 100755 +--- a/yumdownloader.py ++++ b/yumdownloader.py +@@ -246,7 +246,7 @@ class YumDownloader(YumUtilBase): + self.logger.error("Cannot write to file %s. Error was: %s" % (local, e)) + continue + except RepoError, e: +- self.logger.error("Could not download/verify pkg %s: %s" % (download, e) ++ self.logger.error("Could not download/verify pkg %s: %s" % (download, e)) + continue + + if not os.path.exists(local) or not os.path.samefile(path, local): From 70c135d2ca4ce48f3d14150539f7b4de069a5e0e Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Tue, 19 May 2009 06:50:12 +0000 Subject: [PATCH 053/150] Release 1.1.22 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 61 ++++++++++++++++++++++++++------------------------ 3 files changed, 34 insertions(+), 31 deletions(-) diff --git a/.cvsignore b/.cvsignore index 6d7f531..fe77d84 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.21.tar.gz +yum-utils-1.1.22.tar.gz diff --git a/sources b/sources index 88e3a6f..bda66f2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3d19fd09adf74780b08fe0f5b0f77efe yum-utils-1.1.21.tar.gz +91373d40b9703f04d12eb289932077a1 yum-utils-1.1.22.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index e5ca047..ba71d43 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,11 +1,10 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.21 -Release: 2%{?dist} +Version: 1.1.22 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz -Patch1: yumdownloader-syntax-fix-2009-03-28.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -17,7 +16,7 @@ manager. It includes utilities by different authors that make yum easier and more powerful to use. These tools include: debuginfo-install, package-cleanup, repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, repotrack, verifytree, yum-builddep, yum-complete-transaction, yumdownloader, -yum-debug-dump and yum-groups-manager. +yum-debug-dump, yum-debug-restore and yum-groups-manager. %package -n yum-updateonboot Summary: Run yum update on system boot @@ -37,7 +36,8 @@ Group: System Environment/Base Provides: yum-changelog = %{version}-%{release} Obsoletes: yum-changelog < 1.1.20-0 Conflicts: yum-changelog < 1.1.20-0 -Requires: yum >= 3.2.19 +# changelog requires new update_md.UpdateMetadata() API in 3.2.23 +Requires: yum >= 3.2.22 Requires: python-dateutil %description -n yum-plugin-changelog @@ -107,18 +107,6 @@ Requires: yum >= 3.0 This plugin adds a --downloadonly flag to yum so that yum will only download the packages and not install/update them. -%package -n yum-plugin-allowdowngrade -Summary: Yum plugin to enable manual downgrading of packages -Group: System Environment/Base -Provides: yum-allowdowngrade = %{version}-%{release} -Obsoletes: yum-allowdowngrade < 1.1.20-0 -Conflicts: yum-allowdowngrade < 1.1.20-0 -Requires: yum >= 3.0 - -%description -n yum-plugin-allowdowngrade -This plugin adds a --allow-downgrade flag to yum to make it possible to -manually downgrade packages to specific versions. - %package -n yum-plugin-priorities Summary: plugin to give priorities to packages from different repos Group: System Environment/Base @@ -220,7 +208,8 @@ Group: System Environment/Base Provides: yum-aliases = %{version}-%{release} Obsoletes: yum-aliases < 1.1.20-0 Conflicts: yum-aliases < 1.1.20-0 -Requires: yum >= 3.0.5 +# Requires args_hook +Requires: yum >= 3.2.22 %description -n yum-plugin-aliases This plugin adds the command alias, and parses the aliases config. file to @@ -355,11 +344,18 @@ This plugin looks to see if any debuginfo packages are installed, and if there are it enables all debuginfo repositories that are "children" of enabled repositories. +%package -n yum-plugin-show-leaves +Summary: Yum plugin which shows newly installed leaf packages +Group: System Environment/Base +Requires: yum >= 3.2.22 + +%description -n yum-plugin-show-leaves +Yum plugin which shows newly installed leaf packages +and packages that became leaves after a transaction + %prep %setup -q -%patch1 -p1 - %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -373,7 +369,6 @@ plugins="\ versionlock \ tsflags \ downloadonly \ - allowdowngrade \ priorities \ refresh-updatesd \ merge-conf \ @@ -391,6 +386,7 @@ plugins="\ post-transaction-actions \ rpm-warm-cache \ auto-update-debuginfo \ + show-leaves \ " mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -437,7 +433,9 @@ fi %{_bindir}/yum-builddep %{_bindir}/yum-debug-dump %{_bindir}/yum-groups-manager +%{_bindir}/yum-debug-restore %{_sbindir}/yum-complete-transaction +%{_sbindir}/yumdb %{_mandir}/man1/yum-utils.1.* %{_mandir}/man1/debuginfo-install.1.* %{_mandir}/man1/package-cleanup.1.* @@ -493,11 +491,6 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/downloadonly.conf /usr/lib/yum-plugins/downloadonly.* -%files -n yum-plugin-allowdowngrade -%defattr(-, root, root) -%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/allowdowngrade.conf -/usr/lib/yum-plugins/allowdowngrade.* - %files -n yum-plugin-priorities %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/priorities.conf @@ -596,11 +589,21 @@ fi /usr/lib/yum-plugins/auto-update-debuginfo.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/auto-update-debuginfo.conf +%files -n yum-plugin-show-leaves +%defattr(-, root, root) +/usr/lib/yum-plugins/show-leaves.* +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/show-leaves.conf + %changelog -* Sat Mar 28 2009 James Antill -- Fix yumdownloader syntax error. -- Include newer rawhide versions of auto-debuginfo in obs. +* Tue May 19 2009 Tim Lauridsen +- decrease yum require to 3.2.22, because 3.2.22 in fedora is also 3.2.23 + +* Tue May 19 2009 Tim Lauridsen +- mark as 1.1.22 + +* Mon May 18 2009 Seth Vidal +- add show-leaves plugin from Ville Skyttä * Wed Mar 25 2009 Tim Lauridsen - mark as 1.1.21 From bef283a5c34b070a0ff8c1229d94a9e2c54694b5 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Tue, 19 May 2009 06:54:22 +0000 Subject: [PATCH 054/150] Drop patches --- repoclosure-class-api.patch | 14 -------------- yumdownloader-import-os.patch | 19 ------------------- yumdownloader-syntax-fix-2009-03-28.patch | 19 ------------------- 3 files changed, 52 deletions(-) delete mode 100644 repoclosure-class-api.patch delete mode 100644 yumdownloader-import-os.patch delete mode 100644 yumdownloader-syntax-fix-2009-03-28.patch diff --git a/repoclosure-class-api.patch b/repoclosure-class-api.patch deleted file mode 100644 index 6baff2d..0000000 --- a/repoclosure-class-api.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/repoclosure.py -+++ b/repoclosure.py -@@ -63,8 +63,10 @@ def parseArgs(): - (opts, args) = parser.parse_args() - return (opts, args) - -+# Note that this is a "real" API, used by spam-o-matic etc. -+# so we have to do at least some API guarantee stuff. - class RepoClosure(yum.YumBase): -- def __init__(self, pkgonly, arch = [], config = "/etc/yum.conf", builddeps = False ): -+ def __init__(self, arch=[], config="/etc/yum.conf", builddeps=False, pkgonly=None): - yum.YumBase.__init__(self) - self.logger = logging.getLogger("yum.verbose.repoclosure") - self.arch = arch diff --git a/yumdownloader-import-os.patch b/yumdownloader-import-os.patch deleted file mode 100644 index ab0b757..0000000 --- a/yumdownloader-import-os.patch +++ /dev/null @@ -1,19 +0,0 @@ -commit 8862e979ecae64d5463c8c130dea036b752de550 -Author: Seth Vidal -Date: Mon Mar 2 16:38:52 2009 -0500 - - import os and os.path to make the other changes from 2 weeks ago work - -diff --git a/yumdownloader.py b/yumdownloader.py -index e5e9c94..53749e9 100755 ---- a/yumdownloader.py -+++ b/yumdownloader.py -@@ -14,6 +14,8 @@ - # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - - import sys -+import os -+import os.path - sys.path.insert(0,'/usr/share/yum-cli') - - import yum diff --git a/yumdownloader-syntax-fix-2009-03-28.patch b/yumdownloader-syntax-fix-2009-03-28.patch deleted file mode 100644 index 750891e..0000000 --- a/yumdownloader-syntax-fix-2009-03-28.patch +++ /dev/null @@ -1,19 +0,0 @@ -commit 8ec41e7c3ccbc3ecd74cbc87f2550e330b3b5be3 -Author: James Antill -Date: Sat Mar 28 14:00:38 2009 -0400 - - Fix syntax error - -diff --git a/yumdownloader.py b/yumdownloader.py -index 1c4e98b..991853b 100755 ---- a/yumdownloader.py -+++ b/yumdownloader.py -@@ -246,7 +246,7 @@ class YumDownloader(YumUtilBase): - self.logger.error("Cannot write to file %s. Error was: %s" % (local, e)) - continue - except RepoError, e: -- self.logger.error("Could not download/verify pkg %s: %s" % (download, e) -+ self.logger.error("Could not download/verify pkg %s: %s" % (download, e)) - continue - - if not os.path.exists(local) or not os.path.samefile(path, local): From 374fd2a58f89a97a2b5bff7167eaa52e01eb6792 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Tue, 7 Jul 2009 19:09:16 +0000 Subject: [PATCH 055/150] repoclosure patch for spam-o-matic --- yum-utils.spec | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/yum-utils.spec b/yum-utils.spec index ba71d43..a753fe4 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -5,6 +5,7 @@ Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz +Patch0: repoclosure-arch-fix.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -355,6 +356,7 @@ and packages that became leaves after a transaction %prep %setup -q +%patch0 -p0 %install rm -rf $RPM_BUILD_ROOT @@ -596,6 +598,9 @@ fi %changelog +* Tue Jul 7 2009 Seth Vidal +- patch to repoclosure so spam-o-matic works again in rawhide + * Tue May 19 2009 Tim Lauridsen - decrease yum require to 3.2.22, because 3.2.22 in fedora is also 3.2.23 From a88519068b604c541952c37dd93c360bd8015416 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Tue, 7 Jul 2009 19:09:49 +0000 Subject: [PATCH 056/150] add repoclosure patch --- repoclosure-arch-fix.patch | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 repoclosure-arch-fix.patch diff --git a/repoclosure-arch-fix.patch b/repoclosure-arch-fix.patch new file mode 100644 index 0000000..7b22bc7 --- /dev/null +++ b/repoclosure-arch-fix.patch @@ -0,0 +1,34 @@ +diff --git a/repoclosure.py b/repoclosure.py +index a5aed44..54e233b 100755 +--- repoclosure.py ++++ repoclosure.py +@@ -69,10 +69,11 @@ class RepoClosure(yum.YumBase): + def __init__(self, arch=[], config="/etc/yum.conf", builddeps=False, pkgonly=None): + yum.YumBase.__init__(self) + self.logger = logging.getLogger("yum.verbose.repoclosure") +- self.arch = arch + self.builddeps = builddeps + self.pkgonly = pkgonly + self.doConfigSetup(fn = config,init_plugins=False) ++ self._rc_arches = arch ++ + if hasattr(self.repos, 'sqlite'): + self.repos.sqlite = False + self.repos._selectSackType() +@@ -98,11 +99,12 @@ class RepoClosure(yum.YumBase): + def readMetadata(self): + self.doRepoSetup() + archs = [] +- if not self.arch: +- archs.extend(rpmUtils.arch.getArchList()) ++ if not self._rc_arches: ++ archs.extend(self.arch.archlist) + else: +- for arch in self.arch: +- archs.extend(rpmUtils.arch.getArchList(arch)) ++ for arch in self._rc_arches: ++ archs.extend(self.arch.get_arch_list(arch)) ++ + if self.builddeps and 'src' not in archs: + archs.append('src') + self.doSackSetup(archs) From ca0e04c0654f72cec4045bfdc07e74913b46750b Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Tue, 7 Jul 2009 19:10:23 +0000 Subject: [PATCH 057/150] bump the release --- yum-utils.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index a753fe4..241d8a1 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.22 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz From e2d2f859efa8ce1f23f82d461842a26bdab0ef03 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Mon, 27 Jul 2009 08:58:04 +0000 Subject: [PATCH 058/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild --- yum-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index 241d8a1..bbb2987 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.22 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -598,6 +598,9 @@ fi %changelog +* Mon Jul 27 2009 Fedora Release Engineering - 1.1.22-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + * Tue Jul 7 2009 Seth Vidal - patch to repoclosure so spam-o-matic works again in rawhide From 06b2861543f7b2f5f1c0dd8a570db86dee80bc50 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 2 Sep 2009 12:00:56 +0000 Subject: [PATCH 059/150] Release 1.1.23 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 26 +++++++++----------------- 3 files changed, 11 insertions(+), 19 deletions(-) diff --git a/.cvsignore b/.cvsignore index fe77d84..5bd5b7f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.22.tar.gz +yum-utils-1.1.23.tar.gz diff --git a/sources b/sources index bda66f2..04bb33f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -91373d40b9703f04d12eb289932077a1 yum-utils-1.1.22.tar.gz +6e5c0e3143b098912728d00a5934db76 yum-utils-1.1.23.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index bbb2987..5673e6b 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,15 +1,14 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.22 -Release: 3%{?dist} +Version: 1.1.23 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz -Patch0: repoclosure-arch-fix.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.22 +Requires: python >= 2.4 , yum >= 3.2.23 %description yum-utils is a collection of utilities and examples for the yum package @@ -38,7 +37,7 @@ Provides: yum-changelog = %{version}-%{release} Obsoletes: yum-changelog < 1.1.20-0 Conflicts: yum-changelog < 1.1.20-0 # changelog requires new update_md.UpdateMetadata() API in 3.2.23 -Requires: yum >= 3.2.22 +Requires: yum >= 3.2.23 Requires: python-dateutil %description -n yum-plugin-changelog @@ -76,7 +75,7 @@ Group: System Environment/Base Provides: yum-versionlock = %{version}-%{release} Obsoletes: yum-versionlock < 1.1.20-0 Conflicts: yum-versionlock < 1.1.20-0 -Requires: yum >= 3.0 +Requires: yum >= 3.2.24 %description -n yum-plugin-versionlock This plugin takes a set of name/versions for packages and excludes all other @@ -210,7 +209,7 @@ Provides: yum-aliases = %{version}-%{release} Obsoletes: yum-aliases < 1.1.20-0 Conflicts: yum-aliases < 1.1.20-0 # Requires args_hook -Requires: yum >= 3.2.22 +Requires: yum >= 3.2.23 %description -n yum-plugin-aliases This plugin adds the command alias, and parses the aliases config. file to @@ -348,7 +347,7 @@ repositories. %package -n yum-plugin-show-leaves Summary: Yum plugin which shows newly installed leaf packages Group: System Environment/Base -Requires: yum >= 3.2.22 +Requires: yum >= 3.2.23 %description -n yum-plugin-show-leaves Yum plugin which shows newly installed leaf packages @@ -356,7 +355,6 @@ and packages that became leaves after a transaction %prep %setup -q -%patch0 -p0 %install rm -rf $RPM_BUILD_ROOT @@ -598,14 +596,8 @@ fi %changelog -* Mon Jul 27 2009 Fedora Release Engineering - 1.1.22-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Tue Jul 7 2009 Seth Vidal -- patch to repoclosure so spam-o-matic works again in rawhide - -* Tue May 19 2009 Tim Lauridsen -- decrease yum require to 3.2.22, because 3.2.22 in fedora is also 3.2.23 +* Wed Sep 2 2009 Tim Lauridsen +- mark as 1.1.23 * Tue May 19 2009 Tim Lauridsen - mark as 1.1.22 From 2b6574b20eb74ca427be24721d2e95609fd0f557 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 2 Sep 2009 12:02:41 +0000 Subject: [PATCH 060/150] remove unused patch --- repoclosure-arch-fix.patch | 34 ---------------------------------- 1 file changed, 34 deletions(-) delete mode 100644 repoclosure-arch-fix.patch diff --git a/repoclosure-arch-fix.patch b/repoclosure-arch-fix.patch deleted file mode 100644 index 7b22bc7..0000000 --- a/repoclosure-arch-fix.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff --git a/repoclosure.py b/repoclosure.py -index a5aed44..54e233b 100755 ---- repoclosure.py -+++ repoclosure.py -@@ -69,10 +69,11 @@ class RepoClosure(yum.YumBase): - def __init__(self, arch=[], config="/etc/yum.conf", builddeps=False, pkgonly=None): - yum.YumBase.__init__(self) - self.logger = logging.getLogger("yum.verbose.repoclosure") -- self.arch = arch - self.builddeps = builddeps - self.pkgonly = pkgonly - self.doConfigSetup(fn = config,init_plugins=False) -+ self._rc_arches = arch -+ - if hasattr(self.repos, 'sqlite'): - self.repos.sqlite = False - self.repos._selectSackType() -@@ -98,11 +99,12 @@ class RepoClosure(yum.YumBase): - def readMetadata(self): - self.doRepoSetup() - archs = [] -- if not self.arch: -- archs.extend(rpmUtils.arch.getArchList()) -+ if not self._rc_arches: -+ archs.extend(self.arch.archlist) - else: -- for arch in self.arch: -- archs.extend(rpmUtils.arch.getArchList(arch)) -+ for arch in self._rc_arches: -+ archs.extend(self.arch.get_arch_list(arch)) -+ - if self.builddeps and 'src' not in archs: - archs.append('src') - self.doSackSetup(archs) From c34897ef0fc4e4e2c0f6891a501c192c4c01e40b Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 3 Sep 2009 12:35:24 +0000 Subject: [PATCH 061/150] Changed Requires: yum >= 3.2.24 to yum >= 3.2.23 for versionlock plugin because yum in rawhide contains patches against yum-3_2_X HEAD And 3.2.24 is not released yet :( --- yum-utils.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index 5673e6b..dec1344 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -75,7 +75,7 @@ Group: System Environment/Base Provides: yum-versionlock = %{version}-%{release} Obsoletes: yum-versionlock < 1.1.20-0 Conflicts: yum-versionlock < 1.1.20-0 -Requires: yum >= 3.2.24 +Requires: yum >= 3.2.23 %description -n yum-plugin-versionlock This plugin takes a set of name/versions for packages and excludes all other @@ -596,6 +596,10 @@ fi %changelog +* Wed Sep 3 2009 Tim Lauridsen +- changed Requires: yum >= 3.2.24 to yum >= 3.2.23 for versionlock plugin +- because yum in rawhide contains patches against yum-3_2_X HEAD. + * Wed Sep 2 2009 Tim Lauridsen - mark as 1.1.23 From a0d4dbb1d3018f8d947ee36689bf6aee7625f64e Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 3 Sep 2009 12:35:58 +0000 Subject: [PATCH 062/150] bumped release --- yum-utils.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index dec1344..476e47e 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.23 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz From c5178b031bd9aced07df7efb9d1106734cad3c8f Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 3 Sep 2009 13:22:34 +0000 Subject: [PATCH 063/150] bumped release and addded require to yum-3.2.23-15 for versionlock plugin and repoquery --- yum-utils.spec | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index 476e47e..f67c962 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,14 +1,14 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.23 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.23 +Requires: python >= 2.4 , yum >= 3.2.23-15 %description yum-utils is a collection of utilities and examples for the yum package @@ -75,7 +75,7 @@ Group: System Environment/Base Provides: yum-versionlock = %{version}-%{release} Obsoletes: yum-versionlock < 1.1.20-0 Conflicts: yum-versionlock < 1.1.20-0 -Requires: yum >= 3.2.23 +Requires: yum >= 3.2.23-15 %description -n yum-plugin-versionlock This plugin takes a set of name/versions for packages and excludes all other @@ -350,7 +350,7 @@ Group: System Environment/Base Requires: yum >= 3.2.23 %description -n yum-plugin-show-leaves -Yum plugin which shows newly installed leaf packages +Yum plugin which shows newly installed leaf packages3.2.23-15 and packages that became leaves after a transaction %prep @@ -597,7 +597,7 @@ fi %changelog * Wed Sep 3 2009 Tim Lauridsen -- changed Requires: yum >= 3.2.24 to yum >= 3.2.23 for versionlock plugin +- changed Requires: yum >= 3.2.23 to yum >= 3.2.23-15 for versionlock plugin and repoquery - because yum in rawhide contains patches against yum-3_2_X HEAD. * Wed Sep 2 2009 Tim Lauridsen From c84b5cbc3d6871feb70cef77a52564d4a1d90267 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Thu, 3 Sep 2009 13:36:29 +0000 Subject: [PATCH 064/150] remove cut & paste error --- yum-utils.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index f67c962..46a3e03 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -350,7 +350,7 @@ Group: System Environment/Base Requires: yum >= 3.2.23 %description -n yum-plugin-show-leaves -Yum plugin which shows newly installed leaf packages3.2.23-15 +Yum plugin which shows newly installed leaf packages and packages that became leaves after a transaction %prep From ded3b4570c5b38ac82d5c77fd8e7787dcb267343 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Thu, 17 Sep 2009 19:13:54 +0000 Subject: [PATCH 065/150] remove basearchonly plugin which is obsoleted by all modern yums anyway --- yum-utils.spec | 158 ++----------------------------------------------- 1 file changed, 5 insertions(+), 153 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index 46a3e03..fb73ca5 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.23 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -176,20 +176,6 @@ automatically protects everything on which yum depends (rpm, python, glibc, and so on).Therefore, the plugin functions well even without compiling careful lists of all important packages. -%package -n yum-plugin-basearchonly -Summary: Yum plugin to let Yum install only basearch packages. -Group: System Environment/Base -Provides: yum-basearchonly = %{version}-%{release} -Obsoletes: yum-basearchonly < 1.1.20-0 -Conflicts: yum-basearchonly < 1.1.20-0 -Requires: yum >= 3.0 - -%description -n yum-plugin-basearchonly -this plugin makes Yum only install basearch packages on multiarch systems. -If you type 'yum install foo' on a x68_64 system, only 'foo-x.y.x86_46.rpm' is installed. -If you want to install the foo-x.y.i386.rpm, you have to type 'yum install foo.i386'. -The plugin only works with 'yum install'. - %package -n yum-plugin-upgrade-helper Summary: Yum plugin to help upgrades to the next distribution version Group: System Environment/Base @@ -374,7 +360,6 @@ plugins="\ merge-conf \ security \ protect-packages \ - basearchonly \ upgrade-helper \ aliases \ list-data \ @@ -517,11 +502,6 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protect-packages.conf /usr/lib/yum-plugins/protect-packages.* -%files -n yum-plugin-basearchonly -%defattr(-, root, root) -%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/basearchonly.conf -/usr/lib/yum-plugins/basearchonly.* - %files -n yum-plugin-upgrade-helper %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf @@ -596,6 +576,10 @@ fi %changelog +* Thu Sep 17 2009 Seth Vidal +- remove basearchonly since all versions of yum for quite some time obsolete it +- truncate changelog to last 2 years + * Wed Sep 3 2009 Tim Lauridsen - changed Requires: yum >= 3.2.23 to yum >= 3.2.23-15 for versionlock plugin and repoquery - because yum in rawhide contains patches against yum-3_2_X HEAD. @@ -710,136 +694,4 @@ fi * Mon Sep 14 2007 Tim Lauridsen - do not use wildcards for manpages in yum-utils files section to avoid duplicates -* Mon Sep 10 2007 Tim Lauridsen -- mark as 1.1.7 -* Tue Jul 24 2007 Tim Lauridsen -- Added basearchonly plugin by Adel Gadllah -* Tue Jul 24 2007 Tim Lauridsen -- mark as 1.1.6 -* Tue Jul 17 2007 Tim Lauridsen -- Added Requires: yum-updatesd to yum-refresh-updatesd -* Tue Jul 03 2007 Panu Matilainen -- Add versionlock list format documentation -* Mon Jun 18 2007 Tim Lauridsen -- Added protect-packages plugin by Svetlana Anissimova and Matthew Miller - -* Mon Jun 18 2007 Tim Lauridsen -- mark as 1.1.5 - -* Tue May 1 2007 Tim Lauridsen -- mark as 1.1.4 - -* Tue May 1 2007 Tim Lauridsen -- mark as 1.1.3 - -* Tue May 1 2007 Seth Vidal -- added debuginfo-install - -* Fri Apr 20 2007 Tim Lauridsen -- Added security plugin written by James Antill - -* Thu Apr 12 2007 Tim Lauridsen -- mark as 1.1.2 -- Added merge-conf plugin written by Aurelien Bompard - -* Mon Feb 19 2007 Tim Lauridsen -- mark it as 1.1.1 - -* Mon Feb 19 2007 Tim Lauridsen -- mark it as 1.1.0 (again) - -* Thu Feb 15 2007 Tim Lauridsen -- removed versionlock.list installation. - -* Wed Feb 14 2007 Tim Lauridsen -- Added versionlock.list installation. -- fixed skip-broken description (--ignore-broken -> --skip-broken) - -* Tue Feb 13 2007 James Bowes -- Add yum-refresh-updatesd plugin - -* Thu Feb 8 2007 Tim Lauridsen -- Added man dirs to yum-changelog files section - -* Wed Feb 7 2007 Tim Lauridsen -- mark it as 1.1.0 -- Requires: yum >= 3.1.1 for yum-utils. - -* Tue Feb 6 2007 Tim Lauridsen -- Added %%{?dist} tag - -* Sun Dec 31 2006 Tim Lauridsen -- mark it as 1.0.2 - -* Tue Oct 31 2006 Tim Lauridsen -- mark it as 1.0.1 - -* Fri Oct 27 2006 Tim Lauridsen -- Added priorities plugin written by Daniel de Kok - -* Wed Oct 4 2006 Seth Vidal -- mark it as 1.0 -- change requires for the packages to yum 3.0 - -* Wed Sep 27 2006 Tim Lauridsen -- added skip-broken plugin - -* Tue Sep 05 2006 Panu Matilainen -- added allowdowngrade plugin - -* Sun Aug 13 2006 Seth Vidal -- fix the plugins/ doc issue - -* Sat May 6 2006 Seth Vidal -- bump version number -- added yum-downloadonly plugin -- fix minor item in tsflags description - -* Sat Apr 29 2006 Seth Vidal -- add reposync - -* Fri Apr 28 2006 Tim Lauridsen -- added yum-fedorakmod plugin subpackage -- added yum-protectbase plugin subpackage. -- added yum-versionlock plugin subpackage. -- added yum-tsflags plugin subpackage. -- added yum-kernel-module plugin subpackage -- changed .py to .* in files sections for plugin subpackages to build rpms without error. - -* Thu Feb 23 2006 Seth Vidal -- changed some of the yum version dependencies - -* Fri Feb 10 2006 Seth Vidal -- added repotrack to utils -- bumped version for 2.5.X-compatible release - -* Tue Jan 10 2006 Brian Long -- bump version to 0.4 -- add yum-fastestmirror subpackage - -* Mon Oct 17 2005 Panu Matilainen -- add repoquery man page - -* Sat Sep 17 2005 Panu Matilainen -- version 0.3.1 -- various enhancements and fixes to repoquery -- avoid tracebacks in yumex and pup when changelog plugin is enabled - -* Mon Jul 25 2005 Panu Matilainen -- bump version to 0.3 -- add yum-changelog subpackage -- add plugins as documentation to the main package -- require yum >= 2.3.4 (for getCacheDir) - -* Tue Jun 21 2005 Gijs Hollestelle -- Added missing GPL COPYING file - -* Wed Jun 1 2005 Seth Vidal -- 0.2 - -* Mon May 23 2005 Panu Matilainen -- add yum-updateboot subpackage - -* Mon May 16 2005 Gijs Hollestelle -- first version based on the mock spec file From ce42b6a8d93f21177b1a82348ea24a0a5365ada3 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Sat, 7 Nov 2009 06:33:51 +0000 Subject: [PATCH 066/150] Release 1.1.24 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 178 ++++++++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 170 insertions(+), 12 deletions(-) diff --git a/.cvsignore b/.cvsignore index 5bd5b7f..3bc5d28 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.23.tar.gz +yum-utils-1.1.24.tar.gz diff --git a/sources b/sources index 04bb33f..59c6612 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -6e5c0e3143b098912728d00a5934db76 yum-utils-1.1.23.tar.gz +ce6093eee089ba5166da4c3bde77b503 yum-utils-1.1.24.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index fb73ca5..94e02bf 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,14 +1,15 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.23 -Release: 4%{?dist} +Version: 1.1.24 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.23-15 +Requires: python >= 2.4 , yum >= 3.2.24 +BuildRequires: python >= 2.4 %description yum-utils is a collection of utilities and examples for the yum package @@ -75,7 +76,7 @@ Group: System Environment/Base Provides: yum-versionlock = %{version}-%{release} Obsoletes: yum-versionlock < 1.1.20-0 Conflicts: yum-versionlock < 1.1.20-0 -Requires: yum >= 3.2.23-15 +Requires: yum >= 3.2.24 %description -n yum-plugin-versionlock This plugin takes a set of name/versions for packages and excludes all other @@ -176,6 +177,20 @@ automatically protects everything on which yum depends (rpm, python, glibc, and so on).Therefore, the plugin functions well even without compiling careful lists of all important packages. +%package -n yum-plugin-basearchonly +Summary: Yum plugin to let Yum install only basearch packages. +Group: System Environment/Base +Provides: yum-basearchonly = %{version}-%{release} +Obsoletes: yum-basearchonly < 1.1.20-0 +Conflicts: yum-basearchonly < 1.1.20-0 +Requires: yum >= 3.0 + +%description -n yum-plugin-basearchonly +this plugin makes Yum only install basearch packages on multiarch systems. +If you type 'yum install foo' on a x68_64 system, only 'foo-x.y.x86_46.rpm' is installed. +If you want to install the foo-x.y.i386.rpm, you have to type 'yum install foo.i386'. +The plugin only works with 'yum install'. + %package -n yum-plugin-upgrade-helper Summary: Yum plugin to help upgrades to the next distribution version Group: System Environment/Base @@ -360,6 +375,7 @@ plugins="\ merge-conf \ security \ protect-packages \ + basearchonly \ upgrade-helper \ aliases \ list-data \ @@ -381,6 +397,7 @@ cd plugins for plug in $plugins; do install -m 644 $plug/*.conf $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ install -m 644 $plug/*.py $RPM_BUILD_ROOT/usr/lib/yum-plugins/ + %{__python} -c "import compileall; compileall.compile_dir('$(RPM_BUILD_ROOT)/usr/lib/yum-plugins', 1)" done install -m 644 aliases/aliases $RPM_BUILD_ROOT/%{_sysconfdir}/yum/aliases.conf install -m 644 versionlock/versionlock.list $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ @@ -402,8 +419,10 @@ fi %doc README yum-util-cli-template %doc COPYING %doc plugins/README +%{_sysconfdir}/bash_completion.d %{_bindir}/debuginfo-install %{_bindir}/find-repos-of-install +%{_bindir}/needs-restarting %{_bindir}/package-cleanup %{_bindir}/repoclosure %{_bindir}/repodiff @@ -502,6 +521,11 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protect-packages.conf /usr/lib/yum-plugins/protect-packages.* +%files -n yum-plugin-basearchonly +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/basearchonly.conf +/usr/lib/yum-plugins/basearchonly.* + %files -n yum-plugin-upgrade-helper %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf @@ -576,13 +600,15 @@ fi %changelog -* Thu Sep 17 2009 Seth Vidal -- remove basearchonly since all versions of yum for quite some time obsolete it -- truncate changelog to last 2 years +* Sat Nov 7 2009 Tim Lauridsen +- mark as 1.1.24 -* Wed Sep 3 2009 Tim Lauridsen -- changed Requires: yum >= 3.2.23 to yum >= 3.2.23-15 for versionlock plugin and repoquery -- because yum in rawhide contains patches against yum-3_2_X HEAD. +* Wed Nov 4 2009 Seth Vidal +- add needs-restarting + +* Mon Oct 12 2009 Seth Vidal +- add python compileall to all plugins so we get .pyc/.pyo files in them +- fixes https://bugzilla.redhat.com/show_bug.cgi?id=493174 * Wed Sep 2 2009 Tim Lauridsen - mark as 1.1.23 @@ -694,4 +720,136 @@ fi * Mon Sep 14 2007 Tim Lauridsen - do not use wildcards for manpages in yum-utils files section to avoid duplicates +* Mon Sep 10 2007 Tim Lauridsen +- mark as 1.1.7 +* Tue Jul 24 2007 Tim Lauridsen +- Added basearchonly plugin by Adel Gadllah +* Tue Jul 24 2007 Tim Lauridsen +- mark as 1.1.6 +* Tue Jul 17 2007 Tim Lauridsen +- Added Requires: yum-updatesd to yum-refresh-updatesd +* Tue Jul 03 2007 Panu Matilainen +- Add versionlock list format documentation +* Mon Jun 18 2007 Tim Lauridsen +- Added protect-packages plugin by Svetlana Anissimova and Matthew Miller + +* Mon Jun 18 2007 Tim Lauridsen +- mark as 1.1.5 + +* Tue May 1 2007 Tim Lauridsen +- mark as 1.1.4 + +* Tue May 1 2007 Tim Lauridsen +- mark as 1.1.3 + +* Tue May 1 2007 Seth Vidal +- added debuginfo-install + +* Fri Apr 20 2007 Tim Lauridsen +- Added security plugin written by James Antill + +* Thu Apr 12 2007 Tim Lauridsen +- mark as 1.1.2 +- Added merge-conf plugin written by Aurelien Bompard + +* Mon Feb 19 2007 Tim Lauridsen +- mark it as 1.1.1 + +* Mon Feb 19 2007 Tim Lauridsen +- mark it as 1.1.0 (again) + +* Thu Feb 15 2007 Tim Lauridsen +- removed versionlock.list installation. + +* Wed Feb 14 2007 Tim Lauridsen +- Added versionlock.list installation. +- fixed skip-broken description (--ignore-broken -> --skip-broken) + +* Tue Feb 13 2007 James Bowes +- Add yum-refresh-updatesd plugin + +* Thu Feb 8 2007 Tim Lauridsen +- Added man dirs to yum-changelog files section + +* Wed Feb 7 2007 Tim Lauridsen +- mark it as 1.1.0 +- Requires: yum >= 3.1.1 for yum-utils. + +* Tue Feb 6 2007 Tim Lauridsen +- Added %%{?dist} tag + +* Sun Dec 31 2006 Tim Lauridsen +- mark it as 1.0.2 + +* Tue Oct 31 2006 Tim Lauridsen +- mark it as 1.0.1 + +* Fri Oct 27 2006 Tim Lauridsen +- Added priorities plugin written by Daniel de Kok + +* Wed Oct 4 2006 Seth Vidal +- mark it as 1.0 +- change requires for the packages to yum 3.0 + +* Wed Sep 27 2006 Tim Lauridsen +- added skip-broken plugin + +* Tue Sep 05 2006 Panu Matilainen +- added allowdowngrade plugin + +* Sun Aug 13 2006 Seth Vidal +- fix the plugins/ doc issue + +* Sat May 6 2006 Seth Vidal +- bump version number +- added yum-downloadonly plugin +- fix minor item in tsflags description + +* Sat Apr 29 2006 Seth Vidal +- add reposync + +* Fri Apr 28 2006 Tim Lauridsen +- added yum-fedorakmod plugin subpackage +- added yum-protectbase plugin subpackage. +- added yum-versionlock plugin subpackage. +- added yum-tsflags plugin subpackage. +- added yum-kernel-module plugin subpackage +- changed .py to .* in files sections for plugin subpackages to build rpms without error. + +* Thu Feb 23 2006 Seth Vidal +- changed some of the yum version dependencies + +* Fri Feb 10 2006 Seth Vidal +- added repotrack to utils +- bumped version for 2.5.X-compatible release + +* Tue Jan 10 2006 Brian Long +- bump version to 0.4 +- add yum-fastestmirror subpackage + +* Mon Oct 17 2005 Panu Matilainen +- add repoquery man page + +* Sat Sep 17 2005 Panu Matilainen +- version 0.3.1 +- various enhancements and fixes to repoquery +- avoid tracebacks in yumex and pup when changelog plugin is enabled + +* Mon Jul 25 2005 Panu Matilainen +- bump version to 0.3 +- add yum-changelog subpackage +- add plugins as documentation to the main package +- require yum >= 2.3.4 (for getCacheDir) + +* Tue Jun 21 2005 Gijs Hollestelle +- Added missing GPL COPYING file + +* Wed Jun 1 2005 Seth Vidal +- 0.2 + +* Mon May 23 2005 Panu Matilainen +- add yum-updateboot subpackage + +* Mon May 16 2005 Gijs Hollestelle +- first version based on the mock spec file From 07c803d3c2f9258c834f80a2f5342e60709f6bb3 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Sun, 8 Nov 2009 07:29:13 +0000 Subject: [PATCH 067/150] remove basearch plugin, bumped release --- yum-utils.spec | 172 ++----------------------------------------------- 1 file changed, 5 insertions(+), 167 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index 94e02bf..371bfa4 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.24 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -177,20 +177,6 @@ automatically protects everything on which yum depends (rpm, python, glibc, and so on).Therefore, the plugin functions well even without compiling careful lists of all important packages. -%package -n yum-plugin-basearchonly -Summary: Yum plugin to let Yum install only basearch packages. -Group: System Environment/Base -Provides: yum-basearchonly = %{version}-%{release} -Obsoletes: yum-basearchonly < 1.1.20-0 -Conflicts: yum-basearchonly < 1.1.20-0 -Requires: yum >= 3.0 - -%description -n yum-plugin-basearchonly -this plugin makes Yum only install basearch packages on multiarch systems. -If you type 'yum install foo' on a x68_64 system, only 'foo-x.y.x86_46.rpm' is installed. -If you want to install the foo-x.y.i386.rpm, you have to type 'yum install foo.i386'. -The plugin only works with 'yum install'. - %package -n yum-plugin-upgrade-helper Summary: Yum plugin to help upgrades to the next distribution version Group: System Environment/Base @@ -375,7 +361,6 @@ plugins="\ merge-conf \ security \ protect-packages \ - basearchonly \ upgrade-helper \ aliases \ list-data \ @@ -521,11 +506,6 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protect-packages.conf /usr/lib/yum-plugins/protect-packages.* -%files -n yum-plugin-basearchonly -%defattr(-, root, root) -%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/basearchonly.conf -/usr/lib/yum-plugins/basearchonly.* - %files -n yum-plugin-upgrade-helper %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf @@ -600,6 +580,10 @@ fi %changelog +* Sun Nov 8 2009 Tim Lauridsen +- remove basearchonly since all versions of yum for quite some time obsolete it +- truncate changelog to last 2 years + * Sat Nov 7 2009 Tim Lauridsen - mark as 1.1.24 @@ -706,150 +690,4 @@ fi * Thu Jan 3 2008 Tim Lauridsen - mark as 1.1.10 -* Thu Dec 12 2007 James Antill -- Add yum-aliases plugin -* Fri Dec 7 2007 Tim Lauridsen -- mark as 1.1.9 -* Fri Oct 26 2007 Seth Vidal -- add upgrade-helper plugin -* Wed Oct 17 2007 Tim Lauridsen -- mark as 1.1.8 -* Sun Sep 30 2007 James Bowes -- Update the yum-refresh-updatesd description - -* Mon Sep 14 2007 Tim Lauridsen -- do not use wildcards for manpages in yum-utils files section to avoid duplicates -* Mon Sep 10 2007 Tim Lauridsen -- mark as 1.1.7 -* Tue Jul 24 2007 Tim Lauridsen -- Added basearchonly plugin by Adel Gadllah -* Tue Jul 24 2007 Tim Lauridsen -- mark as 1.1.6 -* Tue Jul 17 2007 Tim Lauridsen -- Added Requires: yum-updatesd to yum-refresh-updatesd -* Tue Jul 03 2007 Panu Matilainen -- Add versionlock list format documentation - -* Mon Jun 18 2007 Tim Lauridsen -- Added protect-packages plugin by Svetlana Anissimova and Matthew Miller - -* Mon Jun 18 2007 Tim Lauridsen -- mark as 1.1.5 - -* Tue May 1 2007 Tim Lauridsen -- mark as 1.1.4 - -* Tue May 1 2007 Tim Lauridsen -- mark as 1.1.3 - -* Tue May 1 2007 Seth Vidal -- added debuginfo-install - -* Fri Apr 20 2007 Tim Lauridsen -- Added security plugin written by James Antill - -* Thu Apr 12 2007 Tim Lauridsen -- mark as 1.1.2 -- Added merge-conf plugin written by Aurelien Bompard - -* Mon Feb 19 2007 Tim Lauridsen -- mark it as 1.1.1 - -* Mon Feb 19 2007 Tim Lauridsen -- mark it as 1.1.0 (again) - -* Thu Feb 15 2007 Tim Lauridsen -- removed versionlock.list installation. - -* Wed Feb 14 2007 Tim Lauridsen -- Added versionlock.list installation. -- fixed skip-broken description (--ignore-broken -> --skip-broken) - -* Tue Feb 13 2007 James Bowes -- Add yum-refresh-updatesd plugin - -* Thu Feb 8 2007 Tim Lauridsen -- Added man dirs to yum-changelog files section - -* Wed Feb 7 2007 Tim Lauridsen -- mark it as 1.1.0 -- Requires: yum >= 3.1.1 for yum-utils. - -* Tue Feb 6 2007 Tim Lauridsen -- Added %%{?dist} tag - -* Sun Dec 31 2006 Tim Lauridsen -- mark it as 1.0.2 - -* Tue Oct 31 2006 Tim Lauridsen -- mark it as 1.0.1 - -* Fri Oct 27 2006 Tim Lauridsen -- Added priorities plugin written by Daniel de Kok - -* Wed Oct 4 2006 Seth Vidal -- mark it as 1.0 -- change requires for the packages to yum 3.0 - -* Wed Sep 27 2006 Tim Lauridsen -- added skip-broken plugin - -* Tue Sep 05 2006 Panu Matilainen -- added allowdowngrade plugin - -* Sun Aug 13 2006 Seth Vidal -- fix the plugins/ doc issue - -* Sat May 6 2006 Seth Vidal -- bump version number -- added yum-downloadonly plugin -- fix minor item in tsflags description - -* Sat Apr 29 2006 Seth Vidal -- add reposync - -* Fri Apr 28 2006 Tim Lauridsen -- added yum-fedorakmod plugin subpackage -- added yum-protectbase plugin subpackage. -- added yum-versionlock plugin subpackage. -- added yum-tsflags plugin subpackage. -- added yum-kernel-module plugin subpackage -- changed .py to .* in files sections for plugin subpackages to build rpms without error. - -* Thu Feb 23 2006 Seth Vidal -- changed some of the yum version dependencies - -* Fri Feb 10 2006 Seth Vidal -- added repotrack to utils -- bumped version for 2.5.X-compatible release - -* Tue Jan 10 2006 Brian Long -- bump version to 0.4 -- add yum-fastestmirror subpackage - -* Mon Oct 17 2005 Panu Matilainen -- add repoquery man page - -* Sat Sep 17 2005 Panu Matilainen -- version 0.3.1 -- various enhancements and fixes to repoquery -- avoid tracebacks in yumex and pup when changelog plugin is enabled - -* Mon Jul 25 2005 Panu Matilainen -- bump version to 0.3 -- add yum-changelog subpackage -- add plugins as documentation to the main package -- require yum >= 2.3.4 (for getCacheDir) - -* Tue Jun 21 2005 Gijs Hollestelle -- Added missing GPL COPYING file - -* Wed Jun 1 2005 Seth Vidal -- 0.2 - -* Mon May 23 2005 Panu Matilainen -- add yum-updateboot subpackage - -* Mon May 16 2005 Gijs Hollestelle -- first version based on the mock spec file From 3478655c10eb969a94acdd8bdffd4cf27967e124 Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Wed, 25 Nov 2009 22:39:37 +0000 Subject: [PATCH 068/150] Fix typo that causes a failure to update the common directory. (releng #2781) --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 3564d2f..1fb2032 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,10 @@ # Makefile for source rpm: yum-utils -# $Id$ +# $Id: Makefile,v 1.1 2005/06/11 19:27:59 skvidal Exp $ NAME := yum-utils SPECFILE = $(firstword $(wildcard *.spec)) define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done endef MAKEFILE_COMMON := $(shell $(find-makefile-common)) From 5e111eebf9ffb056756094314e31a290e56ccbdb Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 27 Jan 2010 07:55:37 +0000 Subject: [PATCH 069/150] Release 1.1.25 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 49 ++++++++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 48 insertions(+), 5 deletions(-) diff --git a/.cvsignore b/.cvsignore index 3bc5d28..e7ba12f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.24.tar.gz +yum-utils-1.1.25.tar.gz diff --git a/sources b/sources index 59c6612..6c09db2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -ce6093eee089ba5166da4c3bde77b503 yum-utils-1.1.24.tar.gz +c44c41f5f73843f16ba38ca6c5488f94 yum-utils-1.1.25.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 371bfa4..bc1bfb3 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.24 -Release: 2%{?dist} +Version: 1.1.25 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -340,6 +340,28 @@ Requires: yum >= 3.2.23 Yum plugin which shows newly installed leaf packages and packages that became leaves after a transaction +%package -n yum-plugin-local +Summary: Yum plugin to automatically manage a local repo. of downloaded packages +Group: System Environment/Base +# Who the hell knows what version :) +Requires: yum >= 3.2.22 +Requires: createrepo + +%description -n yum-plugin-local +When this plugin is installed it will automatically copy all downloaded packages +to a repository on the local filesystem, and (re)build that repository. This +means that anything you've downloaded will always exist, even if the original +repo. removes it (and can thus. be reinstalled/downgraded/etc.). + +%package -n yum-plugin-fs-snapshot +Summary: Yum plugin to automatically snapshot your filesystems during updates +Group: System Environment/Base +Requires: yum >= 3.2.22 + +%description -n yum-plugin-fs-snapshot +When this plugin is installed it will automatically snapshot any +filesystem that is touched by the packages in a yum update or yum remove. + %prep %setup -q @@ -373,6 +395,8 @@ plugins="\ rpm-warm-cache \ auto-update-debuginfo \ show-leaves \ + local \ + fs-snapshot \ " mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -386,6 +410,9 @@ for plug in $plugins; do done install -m 644 aliases/aliases $RPM_BUILD_ROOT/%{_sysconfdir}/yum/aliases.conf install -m 644 versionlock/versionlock.list $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ +# need for for the ghost in files section of yum-plugin-local +mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum.repos.d +touch $RPM_BUILD_ROOT%{_sysconfdir}/yum.repos.d/_local.repo %clean rm -rf $RPM_BUILD_ROOT @@ -578,8 +605,25 @@ fi /usr/lib/yum-plugins/show-leaves.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/show-leaves.conf +%files -n yum-plugin-local +%defattr(-, root, root) +%ghost %{_sysconfdir}/yum.repos.d/_local.repo +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/local.conf +/usr/lib/yum-plugins/local.* + +%files -n yum-plugin-fs-snapshot +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fs-snapshot.conf +/usr/lib/yum-plugins/fs-snapshot.* +%{_mandir}/man1/yum-fs-snapshot.1.* +%{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog +* Wed Jan 27 2010 Tim Lauridsen +- mark as 1.1.25 +- add touch /etc/yum.repos.d/_local.repo to install section +- this need for for the ghost in files section of yum-plugin-local + * Sun Nov 8 2009 Tim Lauridsen - remove basearchonly since all versions of yum for quite some time obsolete it - truncate changelog to last 2 years @@ -690,4 +734,3 @@ fi * Thu Jan 3 2008 Tim Lauridsen - mark as 1.1.10 - From f5cb6c9a937adb03905fe25b3f55ec20eba1e945 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 10 Feb 2010 06:01:44 +0000 Subject: [PATCH 070/150] Release 1.1.26 --- .cvsignore | 2 +- sources | 2 +- yum-utils.spec | 7 +++++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.cvsignore b/.cvsignore index e7ba12f..f577c2f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.25.tar.gz +yum-utils-1.1.26.tar.gz diff --git a/sources b/sources index 6c09db2..b5d78a8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -c44c41f5f73843f16ba38ca6c5488f94 yum-utils-1.1.25.tar.gz +cdf0b2e65a57485ec37ea09a8b1e36b9 yum-utils-1.1.26.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index bc1bfb3..307a4e8 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.25 +Version: 1.1.26 Release: 1%{?dist} License: GPLv2+ Group: Development/Tools @@ -406,7 +406,7 @@ cd plugins for plug in $plugins; do install -m 644 $plug/*.conf $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ install -m 644 $plug/*.py $RPM_BUILD_ROOT/usr/lib/yum-plugins/ - %{__python} -c "import compileall; compileall.compile_dir('$(RPM_BUILD_ROOT)/usr/lib/yum-plugins', 1)" + %{__python} -c "import compileall; compileall.compile_dir('$RPM_BUILD_ROOT/usr/lib/yum-plugins', 1)" done install -m 644 aliases/aliases $RPM_BUILD_ROOT/%{_sysconfdir}/yum/aliases.conf install -m 644 versionlock/versionlock.list $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ @@ -619,6 +619,9 @@ fi %{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog +* Wed Feb 10 2010 Tim Lauridsen +- mark as 1.1.26 + * Wed Jan 27 2010 Tim Lauridsen - mark as 1.1.25 - add touch /etc/yum.repos.d/_local.repo to install section From bd451465df847d0c637f301f9b36e8f85c1c7bfa Mon Sep 17 00:00:00 2001 From: James Antill Date: Wed, 14 Apr 2010 16:45:49 +0000 Subject: [PATCH 071/150] - Get lots of fixes from latest HEAD. Also: - --alldeps default in repoquery. - repoquery will now do a full provides version check. - Add repoclosure --group. - Big repodiff speedup. --- yum-utils.spec | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index 307a4e8..79614bd 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,10 +1,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.26 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz +Patch0: yum-utils-HEAD.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -365,6 +366,8 @@ filesystem that is touched by the packages in a yum update or yum remove. %prep %setup -q +%patch0 -p1 + %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -619,6 +622,13 @@ fi %{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog +* Wed Apr 14 2010 James Antill - 1.1.26-2 +- Get lots of fixes from latest HEAD. Also: +- --alldeps default in repoquery. +- repoquery will now do a full provides version check. +- Add repoclosure --group. +- Big repodiff speedup. + * Wed Feb 10 2010 Tim Lauridsen - mark as 1.1.26 From fb5d16647e46f5013824eeb4d758e15216bac068 Mon Sep 17 00:00:00 2001 From: James Antill Date: Wed, 14 Apr 2010 16:51:04 +0000 Subject: [PATCH 072/150] - Get lots of fixes from latest HEAD. Also: - --alldeps default in repoquery. - repoquery will now do a full provides version check. - Add repoclosure --group. - Big repodiff speedup. --- yum-utils-HEAD.patch | 1618 ++++++++++++++++++++++++++++++++++++++++++ yum-utils.spec | 1 + 2 files changed, 1619 insertions(+) create mode 100644 yum-utils-HEAD.patch diff --git a/yum-utils-HEAD.patch b/yum-utils-HEAD.patch new file mode 100644 index 0000000..3dab6b0 --- /dev/null +++ b/yum-utils-HEAD.patch @@ -0,0 +1,1618 @@ +From bc3d026acd1c8f332d024bf9a9918da6451c8c07 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ville=20Skytt=C3=A4?= +Date: Tue, 9 Feb 2010 21:35:15 +0200 +Subject: [PATCH 01/24] Make --alldeps the default in repoquery. + +--alldeps is what people really almost always want, but fail to +specify for some reason. --exactdeps can be used to get the previous +default of exact matching. +--- + docs/repoquery.1 | 10 +++++++--- + repoquery.py | 6 ++++-- + yum-utils.bash | 2 +- + 3 files changed, 12 insertions(+), 6 deletions(-) + +diff --git a/docs/repoquery.1 b/docs/repoquery.1 +index 1056c80..e5ed8b7 100644 +--- a/docs/repoquery.1 ++++ b/docs/repoquery.1 +@@ -107,8 +107,12 @@ Query all packages that provide CAPABILITY. + .IP "\fB\-\-whatrequires CAPABILITY\fP" + Query all packages that require CAPABILITY. + .IP "\fB\-\-alldeps\fP" +-When used with --whatrequires, use both automatic and manual dependencies +-for the query. ++When used with --whatrequires, look for non-explicit dependencies in ++addition to explicit ones (e.g. files and Provides in addition to ++package names). This is the default. ++.IP "\fB\-\-exactdeps\fP" ++When used with --whatrequires, search for dependencies only exactly as given. ++This is effectively the opposite of --alldeps. + .IP "\fB\-\-recursive\fP" + When used with --whatrequires, query packages recursively. + .IP "\fB\-\-archlist=ARCH1[,ARCH2...]\fP" +@@ -147,7 +151,7 @@ Query groups instead of packages. + .IP "List all packages whose name contains 'perl':" + \fBrepoquery '*perl*'\fP + .IP "List all packages depending on openssl:" +-\fBrepoquery --whatrequires --alldeps openssl\fP ++\fBrepoquery --whatrequires openssl\fP + .IP "List all package names and the repository they come from, nicely formatted:" + \fBrepoquery -a --qf "%-20{repoid} %{name}"\fP + .IP "List name and summary of all available updates (if any), nicely formatted:" +diff --git a/repoquery.py b/repoquery.py +index 2e3004b..3e2c18a 100755 +--- a/repoquery.py ++++ b/repoquery.py +@@ -647,8 +647,10 @@ def main(args): + help="operate on corresponding source RPM") + parser.add_option("--resolve", action="store_true", + help="resolve capabilities to originating package(s)") +- parser.add_option("--alldeps", action="store_true", +- help="check non-explicit dependencies (files and Provides:) as well") ++ parser.add_option("--alldeps", action="store_true", default=True, ++ help="check non-explicit dependencies (files and Provides:) as well, defaults to on") ++ parser.add_option("--exactdeps", dest="alldeps", action="store_false", ++ help="check dependencies exactly as given, opposite of --alldeps") + parser.add_option("--recursive", action="store_true", + help="recursively query for packages (for whatrequires)") + parser.add_option("--whatprovides", action="store_true", +diff --git a/yum-utils.bash b/yum-utils.bash +index d8ca1dd..7df1b49 100644 +--- a/yum-utils.bash ++++ b/yum-utils.bash +@@ -210,7 +210,7 @@ _yu_repoquery() + COMPREPLY=( $( compgen -W '--version --help --list --info --file + --queryformat --groupmember --all --requires --provides --obsoletes + --conflicts --changelog --location --nevra --envra --nvr --source +- --srpm --resolve --alldeps --recursive --whatprovides --whatrequires ++ --srpm --resolve --exactdeps --recursive --whatprovides --whatrequires + --whatobsoletes --whatconflicts --group --grouppkgs --archlist + --pkgnarrow --show-duplicates --repoid --enablerepo --disablerepo + --repofrompath --plugins --quiet --verbose --cache --tempcache +-- +1.6.6.1 + + +From efc35f8de0475db1bfe27eb04a93f571a23ce8b7 Mon Sep 17 00:00:00 2001 +From: Seth Vidal +Date: Mon, 15 Feb 2010 22:01:50 -0500 +Subject: [PATCH 02/24] make repoquery pass in the whole string not just split for names + +--- + repoquery.py | 5 +---- + 1 files changed, 1 insertions(+), 4 deletions(-) + +diff --git a/repoquery.py b/repoquery.py +index 2e3004b..c2b8c03 100755 +--- a/repoquery.py ++++ b/repoquery.py +@@ -554,10 +554,7 @@ class YumBaseQuery(yum.YumBase): + provs.extend(pkg.files()) + + for prov in provs: +- # Only look at the providing name, not the whole version. This +- # might occasionally give some false positives but that's +- # better than missing ones which it had previously +- for pkg in self.pkgSack.searchRequires(prov.split()[0]): ++ for pkg in self.pkgSack.searchRequires(prov): + pkgs[pkg.pkgtup] = pkg + if self.options.recursive: + require_recursive(pkg.name) +-- +1.6.6.1 + + +From 493450d26d04e3f61470e21f7db717e7d98e3d57 Mon Sep 17 00:00:00 2001 +From: Seth Vidal +Date: Thu, 25 Feb 2010 12:58:35 -0500 +Subject: [PATCH 03/24] move around where we query for pkgs from sackops/prcos and what happens if no special output format + is specified in repoquery. + +makes: +repoquery -qfi /bin/bash output -qi output rather than -q output. +--- + repoquery.py | 19 +++++++++++-------- + 1 files changed, 11 insertions(+), 8 deletions(-) + +diff --git a/repoquery.py b/repoquery.py +index 0a56430..225a4cb 100755 +--- a/repoquery.py ++++ b/repoquery.py +@@ -504,10 +504,21 @@ class YumBaseQuery(yum.YumBase): + else: + if self.options.srpm: + pkgs = self.matchSrcPkgs(items) ++ + else: + pkgs = self.matchPkgs(items) ++ for prco in items: ++ for oper in self.sackops: ++ try: ++ for p in self.doQuery(oper, prco): ++ if p: ++ pkgs.append(p) ++ except queryError, e: ++ self.logger.error( e.msg) + + for pkg in pkgs: ++ if not self.pkgops: ++ print to_unicode(pkg) + for oper in self.pkgops: + try: + out = pkg.doQuery(oper) +@@ -515,14 +526,6 @@ class YumBaseQuery(yum.YumBase): + print to_unicode(out) + except queryError, e: + self.logger.error( e.msg) +- for prco in items: +- for oper in self.sackops: +- try: +- for p in self.doQuery(oper, prco): +- if p: +- print p +- except queryError, e: +- self.logger.error( e.msg) + + def doQuery(self, method, *args, **kw): + return getattr(self, "fmt_%s" % method)(*args, **kw) +-- +1.6.6.1 + + +From f0bee60c3fc81325e547d0f8bf42591368d18ee4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ville=20Skytt=C3=A4?= +Date: Sat, 27 Feb 2010 14:21:02 +0200 +Subject: [PATCH 04/24] Fix --releasever. + +--- + repoquery.py | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/repoquery.py b/repoquery.py +index 225a4cb..eb524f3 100755 +--- a/repoquery.py ++++ b/repoquery.py +@@ -774,7 +774,7 @@ def main(args): + + # silence initialisation junk from modules etc unless verbose mode + initnoise = (not opts.quiet) * 2 +- repoq.releasever = opts.releasever ++ repoq.preconf.releasever = opts.releasever + if opts.conffile: + repoq.doConfigSetup(fn=opts.conffile, debuglevel=initnoise, init_plugins=opts.plugins) + else: +-- +1.6.6.1 + + +From b15cb0760c864cadc5029474d07cc38882ec1815 Mon Sep 17 00:00:00 2001 +From: Seth Vidal +Date: Mon, 1 Mar 2010 14:58:27 -0500 +Subject: [PATCH 05/24] catch all yum errors and valueError (which is coming from yum.config.py :() + generally this just means we'll get less ABRT errors and more reports from users + +(I hope) +--- + repoclosure.py | 7 ++++++- + 1 files changed, 6 insertions(+), 1 deletions(-) + +diff --git a/repoclosure.py b/repoclosure.py +index 5076fe8..8c27cdd 100755 +--- a/repoclosure.py ++++ b/repoclosure.py +@@ -273,5 +273,10 @@ def main(): + my.logger.info(' %s' % req) + + if __name__ == "__main__": +- main() ++ try: ++ main() ++ except (yum.Errors.YumBaseError, ValueError), e: ++ print >> sys.stderr, str(e) ++ sys.exit(1) ++ + +-- +1.6.6.1 + + +From 30e58c85e07abe939ff3c9af017f8355f81a4f32 Mon Sep 17 00:00:00 2001 +From: Seth Vidal +Date: Mon, 1 Mar 2010 15:27:57 -0500 +Subject: [PATCH 06/24] setup some repo features that make sense for the debug repos to + inherit from the non-debug repos when we add them + +--- + debuginfo-install.py | 5 +++++ + 1 files changed, 5 insertions(+), 0 deletions(-) + +diff --git a/debuginfo-install.py b/debuginfo-install.py +index 242be65..dc41b5f 100755 +--- a/debuginfo-install.py ++++ b/debuginfo-install.py +@@ -90,6 +90,11 @@ class DebugInfoInstall(YumUtilBase): + r.enable() + try: + self.doRepoSetup(thisrepo=r.id) ++ for opt in ['repo_gpgcheck', 'gpgcheck', 'cost', ++ 'skip_if_unavailable']: ++ if hasattr(r, opt): ++ setattr(r, opt, getattr(repo, opt)) ++ + except yum.Errors.RepoError, e: + self.logger.critical("Could not access repo %s error was: %s" % + (r.id, to_unicode(str(e)))) +-- +1.6.6.1 + + +From c65516666fdca02f6f1500134d8a6832176320c7 Mon Sep 17 00:00:00 2001 +From: James Antill +Date: Mon, 1 Mar 2010 22:57:07 -0500 +Subject: [PATCH 07/24] Add yum-utils to the run_with_packages when running y-c-t + +--- + yum-complete-transaction.py | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +diff --git a/yum-complete-transaction.py b/yum-complete-transaction.py +index ba41a51..0a9f5df 100755 +--- a/yum-complete-transaction.py ++++ b/yum-complete-transaction.py +@@ -161,6 +161,7 @@ class YumCompleteTransaction(YumUtilBase): + # populate the ts + # run it + ++ self.run_with_package_names.add('yum-utils') + times = [] + for thistime in find_unfinished_transactions(self.conf.persistdir): + if thistime.endswith('disabled'): +-- +1.6.6.1 + + +From 37454f631436624cfeda72496757c6206420cc78 Mon Sep 17 00:00:00 2001 +From: James Antill +Date: Mon, 1 Mar 2010 22:58:53 -0500 +Subject: [PATCH 08/24] Add yum-utils to the run_with_packages when running pkg-cleanup + +--- + package-cleanup.py | 2 ++ + 1 files changed, 2 insertions(+), 0 deletions(-) + +diff --git a/package-cleanup.py b/package-cleanup.py +index 3f5507f..ca4aa9a 100755 +--- a/package-cleanup.py ++++ b/package-cleanup.py +@@ -335,6 +335,7 @@ class PackageCleanup(YumUtilBase): + sys.exit(100) + + self._remove_old_kernels(opts.kernelcount, opts.keepdevel) ++ self.run_with_package_names.add('yum-utils') + self.buildTransaction() + if len(self.tsInfo) < 1: + print 'No old kernels to remove' +@@ -371,6 +372,7 @@ class PackageCleanup(YumUtilBase): + if opts.noscripts: + self.conf.tsflags.append('noscripts') + self._remove_old_dupes() ++ self.run_with_package_names.add('yum-utils') + self.buildTransaction() + if len(self.tsInfo) < 1: + print 'No duplicates to remove' +-- +1.6.6.1 + + +From 94b52cb5499b47cb4e2b64c8a2e4e7863b2e965e Mon Sep 17 00:00:00 2001 +From: Tim Lauridsen +Date: Tue, 2 Mar 2010 12:18:31 +0100 +Subject: [PATCH 09/24] Make repoclosure work with relative paths, like ./myrepo or just . + +--- + repoclosure.py | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/repoclosure.py b/repoclosure.py +index 8c27cdd..9bfc007 100755 +--- a/repoclosure.py ++++ b/repoclosure.py +@@ -60,7 +60,7 @@ def parseArgs(): + parser.add_option("-n", "--newest", default=0, action="store_true", + help="check only the newest packages in the repos") + parser.add_option("--repofrompath", action="append", +- help="specify repoid & paths of additional repositories - unique repoid and complete path required, can be specified multiple times. Example. --repofrompath=myrepo,/path/to/repo") ++ help="specify repoid & paths of additional repositories - unique repoid and path required, can be specified multiple times. Example. --repofrompath=myrepo,/path/to/repo") + parser.add_option("-p", "--pkg", action="append", + help="check closure for this package only") + (opts, args) = parser.parse_args() +@@ -195,12 +195,12 @@ def main(): + # setup the fake repos + for repo in opts.repofrompath: + repoid,repopath = tuple(repo.split(',')) ++ repopath = os.path.abspath(repopath) + if repopath[0] == '/': + baseurl = 'file://' + repopath + else: + baseurl = repopath + +- repopath = os.path.normpath(repopath) + newrepo = yum.yumRepo.YumRepository(repoid) + newrepo.name = repopath + newrepo.baseurl = baseurl +-- +1.6.6.1 + + +From 7cece362ea4c2f9c6619339775adb5975e022275 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ville=20Skytt=C3=A4?= +Date: Wed, 10 Mar 2010 21:13:00 +0200 +Subject: [PATCH 10/24] Add bash completion for yumdb. + +--- + yum-utils.bash | 27 +++++++++++++++++++++++++++ + 1 files changed, 27 insertions(+), 0 deletions(-) + +diff --git a/yum-utils.bash b/yum-utils.bash +index 7df1b49..1ff3fbd 100644 +--- a/yum-utils.bash ++++ b/yum-utils.bash +@@ -218,6 +218,33 @@ _yu_repoquery() + } && + complete -F _yu_repoquery -o filenames repoquery repoquery.py + ++# yumdb ++_yu_yumdb() ++{ ++ COMPREPLY=() ++ ++ case "$3" in ++ -h|--help|-version) ++ return 0 ++ ;; ++ -c|--config) ++ COMPREPLY=( $( compgen -f -o plusdirs -X '!*.conf' -- "$2" ) ) ++ return 0 ++ ;; ++ shell) ++ COMPREPLY=( $( compgen -f -o plusdirs -- "$2" ) ) ++ return 0 ++ ;; ++ esac ++ ++ if [ $COMP_CWORD -le 1 ] ; then ++ COMPREPLY=( $( compgen -W 'get set del rename rename-force search ++ exist unset info shell --version --help --noplugins --config' \ ++ -- "$2" ) ) ++ fi ++} && ++complete -F _yu_yumdb -o filenames yumdb yumdb.py ++ + # Local variables: + # mode: shell-script + # sh-basic-offset: 4 +-- +1.6.6.1 + + +From 421ba27da401618dd10d1a31801df01b89277585 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ville=20Skytt=C3=A4?= +Date: Fri, 26 Mar 2010 22:58:45 +0200 +Subject: [PATCH 11/24] Complete on repomanage.py, package-cleanup.py, and verifytree.py. + +--- + yum-utils.bash | 6 +++--- + 1 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/yum-utils.bash b/yum-utils.bash +index 1ff3fbd..308d82b 100644 +--- a/yum-utils.bash ++++ b/yum-utils.bash +@@ -23,7 +23,7 @@ _yu_repomanage() + + COMPREPLY=( $( compgen -d -- "$2" ) ) + } && +-complete -F _yu_repomanage -o filenames repomanage ++complete -F _yu_repomanage -o filenames repomanage repomanage.py + + # package-cleanup + _yu_package_cleanup() +@@ -49,7 +49,7 @@ _yu_package_cleanup() + --cleandupes --oldkernels --count --keepdevel -c --queryformat' \ + -- "$2" ) ) + } && +-complete -F _yu_package_cleanup -o filenames package-cleanup ++complete -F _yu_package_cleanup -o filenames package-cleanup package-cleanup.py + + # verifytree + _yu_verifytree() +@@ -70,7 +70,7 @@ _yu_verifytree() + + COMPREPLY=( $( compgen -d -- "$2" ) ) + } && +-complete -F _yu_verifytree -o filenames verifytree ++complete -F _yu_verifytree -o filenames verifytree verifytree.py + + # repo-graph + _yu_repo_graph() +-- +1.6.6.1 + + +From 25ceb993e0bda203804c3e8241df5d1942eab303 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ville=20Skytt=C3=A4?= +Date: Tue, 30 Mar 2010 23:04:44 +0300 +Subject: [PATCH 12/24] Use "in" instead of has_key. + +--- + package-cleanup.py | 2 +- + plugins/changelog/changelog.py | 4 ++-- + .../fastestmirror-asyncore.py | 2 +- + plugins/fedorakmod/fedorakmod.py | 9 +++++---- + plugins/fs-snapshot/fs-snapshot.py | 2 +- + .../post-transaction-actions.py | 2 +- + plugins/priorities/priorities.py | 10 +++++----- + plugins/protectbase/protectbase.py | 2 +- + plugins/remove-with-leaves/remove-with-leaves.py | 2 +- + plugins/upgrade-helper/upgrade-helper.py | 8 ++++---- + repo-graph.py | 4 ++-- + repo-rss.py | 2 +- + repoclosure.py | 6 +++--- + repodiff.py | 2 +- + repomanage.py | 4 ++-- + repoquery.py | 6 +++--- + reposync.py | 2 +- + repotrack.py | 5 ++--- + yum-debug-dump.py | 2 +- + 19 files changed, 38 insertions(+), 38 deletions(-) + +diff --git a/package-cleanup.py b/package-cleanup.py +index ca4aa9a..c796286 100755 +--- a/package-cleanup.py ++++ b/package-cleanup.py +@@ -129,7 +129,7 @@ class PackageCleanup(YumUtilBase): + for (req,flags,ver) in po.requires: + + if req.startswith('rpmlib'): continue # ignore rpmlib deps +- if not providers.has_key((req,flags,ver)): ++ if (req,flags,ver) not in providers: + resolve_sack = self.rpmdb.whatProvides(req,flags,ver) + else: + resolve_sack = providers[(req,flags,ver)] +diff --git a/plugins/changelog/changelog.py b/plugins/changelog/changelog.py +index 250326f..007ac6d 100644 +--- a/plugins/changelog/changelog.py ++++ b/plugins/changelog/changelog.py +@@ -58,7 +58,7 @@ def srpmname(pkg): + def _show_changes_changelog(conduit, srpms): + for name in sorted(srpms.keys()): + rpms = [] +- if origpkgs.has_key(name): ++ if name in origpkgs: + for rpm in srpms[name]: + rpms.append("%s" % rpm) + done = False +@@ -85,7 +85,7 @@ def show_changes(conduit, msg): + if not tsmem.updates: + continue + name = srpmname(tsmem.po) +- if srpms.has_key(name): ++ if name in srpms: + srpms[name].append(tsmem.po) + else: + srpms[name] = [tsmem.po] +diff --git a/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py b/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py +index 8129e2c..11c394f 100644 +--- a/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py ++++ b/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py +@@ -135,7 +135,7 @@ def postreposetup_hook(conduit): + repomirrors = {} + repos = conduit.getRepos() + for repo in repos.listEnabled(): +- if not repomirrors.has_key(str(repo)): ++ if str(repo) not in repomirrors: + repomirrors[str(repo)] = FastestMirror(repo.urls).get_mirrorlist() + if exclude: + for mirror in repomirrors[str(repo)]: +diff --git a/plugins/fedorakmod/fedorakmod.py b/plugins/fedorakmod/fedorakmod.py +index ab9f673..b3aed61 100644 +--- a/plugins/fedorakmod/fedorakmod.py ++++ b/plugins/fedorakmod/fedorakmod.py +@@ -140,7 +140,7 @@ def resolveVersions(packageList): + continue + po.kmodName = name[0] + +- if not pdict.has_key(kernel): ++ if kernel not in pdict: + pdict[kernel] = [po] + else: + sameName = None +@@ -208,7 +208,7 @@ def pinKernels(c, newKernels, installedKernels, modules): + str(runningKernel)) + + table = resolveVersions(modules) +- if not table.has_key(runningKernel): ++ if runningKernel not in table: + c.info(2, "Trying to mimic %s which has no kernel modules installed" \ + % str(runningKernel)) + return +@@ -217,7 +217,7 @@ def pinKernels(c, newKernels, installedKernels, modules): + c.info(2, "kmods in %s: %s" % (str(runningKernel), str(names))) + for kpo in newKernels: + prov = getKernelProvides(kpo)[0] +- if table.has_key(prov): ++ if prov in table: + kmods = [ po.kmodName for po in table[prov] ] + else: + kmods = [] +@@ -255,7 +255,8 @@ def installAllKmods(c, avaModules, modules, kernels): + table = resolveVersions(interesting + modules) + + for kernel in [ getKernelProvides(k)[0] for k in kernels ]: +- if not table.has_key(kernel): continue ++ if kernel not in table: ++ continue + for po in table[kernel]: + if po not in modules: + c.getTsInfo().addTrueInstall(po) +diff --git a/plugins/fs-snapshot/fs-snapshot.py b/plugins/fs-snapshot/fs-snapshot.py +index f0ce051..a83156d 100644 +--- a/plugins/fs-snapshot/fs-snapshot.py ++++ b/plugins/fs-snapshot/fs-snapshot.py +@@ -178,7 +178,7 @@ def _create_snapshot(conduit, snapshot_tag, volume): + """ + if volume["fstype"] == "btrfs": + return _create_btrfs_snapshot(conduit, snapshot_tag, volume) +- elif volume.has_key(lvm_key): ++ elif lvm_key in volume: + return _create_lvm_snapshot(conduit, snapshot_tag, volume) + + return 0 +diff --git a/plugins/post-transaction-actions/post-transaction-actions.py b/plugins/post-transaction-actions/post-transaction-actions.py +index 7b94b90..b4da1ce 100644 +--- a/plugins/post-transaction-actions/post-transaction-actions.py ++++ b/plugins/post-transaction-actions/post-transaction-actions.py +@@ -62,7 +62,7 @@ def parse_actions(ddir, conduit): + + def _get_installed_po(rpmdb, pkgtup): + (n,a,e,v,r) = pkgtup +- if _just_installed.has_key(pkgtup): ++ if pkgtup in _just_installed: + return _just_installed[pkgtup] + return rpmdb.searchNevra(name=n, arch=a, epoch=e, ver=v, rel=r)[0] + +diff --git a/plugins/priorities/priorities.py b/plugins/priorities/priorities.py +index 3650736..ddee1cb 100644 +--- a/plugins/priorities/priorities.py ++++ b/plugins/priorities/priorities.py +@@ -134,11 +134,11 @@ def exclude_hook(conduit): + + if only_samearch: + key = "%s.%s" % (po.name,po.arch) +- if pkg_priorities.has_key(key) and pkg_priorities[key] < repo.priority: ++ if key in pkg_priorities and pkg_priorities[key] < repo.priority: + delPackage = True + else: + key = "%s" % po.name +- if pkg_priorities_archless.has_key(key) and pkg_priorities_archless[key] < repo.priority: ++ if key in pkg_priorities_archless and pkg_priorities_archless[key] < repo.priority: + delPackage = True + + if delPackage: +@@ -150,11 +150,11 @@ def exclude_hook(conduit): + # one of the obsoleted packages is not available through + # a repo with a higher priority. If so, remove this package. + if check_obsoletes: +- if obsoletes.has_key(po.pkgtup): ++ if po.pkgtup in obsoletes: + obsolete_pkgs = obsoletes[po.pkgtup] + for obsolete_pkg in obsolete_pkgs: + pkg_name = obsolete_pkg[0] +- if pkg_priorities_archless.has_key(pkg_name) and pkg_priorities_archless[pkg_name] < repo.priority: ++ if pkg_name in pkg_priorities_archless and pkg_priorities_archless[pkg_name] < repo.priority: + conduit.delPackage(po) + cnt += 1 + conduit.info(3," --> %s from %s excluded (priority)" % (po,po.repoid)) +@@ -173,5 +173,5 @@ def _pkglist_to_dict(pl, priority, addArch = False): + + def _mergeprioritydicts(dict1, dict2): + for package in dict2.keys(): +- if not dict1.has_key(package) or dict2[package] < dict1[package]: ++ if package not in dict1 or dict2[package] < dict1[package]: + dict1[package] = dict2[package] +diff --git a/plugins/protectbase/protectbase.py b/plugins/protectbase/protectbase.py +index 441cdba..37a39dd 100644 +--- a/plugins/protectbase/protectbase.py ++++ b/plugins/protectbase/protectbase.py +@@ -55,7 +55,7 @@ def exclude_hook(conduit): + continue + + for po in conduit.getPackages(repo2): +- if repo1pkgs.has_key(po.name): ++ if po.name in repo1pkgs: + conduit.delPackage(po) + cnt += 1 + +diff --git a/plugins/remove-with-leaves/remove-with-leaves.py b/plugins/remove-with-leaves/remove-with-leaves.py +index 004472f..a808aef 100644 +--- a/plugins/remove-with-leaves/remove-with-leaves.py ++++ b/plugins/remove-with-leaves/remove-with-leaves.py +@@ -42,7 +42,7 @@ remove_always = False + + + def _requires_this_package(rpmdb, pkg): +- if _requires_cache.has_key(pkg): ++ if pkg in _requires_cache: + return _requires_cache[pkg] + + requirers = {} +diff --git a/plugins/upgrade-helper/upgrade-helper.py b/plugins/upgrade-helper/upgrade-helper.py +index fd76c4f..9aa05f0 100644 +--- a/plugins/upgrade-helper/upgrade-helper.py ++++ b/plugins/upgrade-helper/upgrade-helper.py +@@ -68,11 +68,11 @@ def parse_xml(xmlfile): + child_name = ns_cleanup(child.tag) + thisarch = myarch + if child_name == 'removespec': +- if child.attrib.has_key('on_arch'): ++ if 'on_arch' in child.attrib: + thisarch = child.attrib.get('on_arch') +- if child.attrib.has_key('pkgmatch'): ++ if 'pkgmatch' in child.attrib: + thismatch = child.attrib.get('pkgmatch') +- if results.has_key(thisarch): ++ if thisarch in results: + if thismatch not in results[thisarch]: + results[thisarch].append(thismatch) + else: +@@ -89,7 +89,7 @@ def stuff_to_remove(repos): + # return them as the toremove list + + for repo in repos.listEnabled(): +- if repo.repoXML.repoData.has_key('cleanup'): ++ if 'cleanup' in repo.repoXML.repoData: + trf = repo.retrieveMD('cleanup') + tr_dict = parse_xml(trf) + # prune out things like *, ?, *.*, *.*.*.*.* +diff --git a/repo-graph.py b/repo-graph.py +index e771874..bb901a8 100755 +--- a/repo-graph.py ++++ b/repo-graph.py +@@ -69,7 +69,7 @@ class yumQuiet(yum.YumBase): + for r in pkg.returnPrco('requires'): + reqname = r[0] + if reqname.startswith('rpmlib'): continue +- if prov.has_key(reqname): ++ if reqname in prov: + provider = prov[reqname] + cached += 1 + else: +@@ -83,7 +83,7 @@ class yumQuiet(yum.YumBase): + prov[reqname] = provider + if provider == pkg.name: + xx[provider] = None +- if xx.has_key(provider) or provider in skip: ++ if provider in xx or provider in skip: + continue + else: + xx[provider] = None +diff --git a/repo-rss.py b/repo-rss.py +index f395089..845c65e 100755 +--- a/repo-rss.py ++++ b/repo-rss.py +@@ -45,7 +45,7 @@ class YumQuiet(yum.YumBase): + for po in avail: + ftime = int(po.returnSimple('filetime')) + if ftime > recentlimit: +- if not ftimehash.has_key(ftime): ++ if ftime not in ftimehash: + ftimehash[ftime] = [po] + else: + ftimehash[ftime].append(po) +diff --git a/repoclosure.py b/repoclosure.py +index 9bfc007..d9a94d7 100755 +--- a/repoclosure.py ++++ b/repoclosure.py +@@ -153,7 +153,7 @@ class RepoClosure(yum.YumBase): + if req.startswith('rpmlib'): continue # ignore rpmlib deps + + ver = self.evrTupletoVer((reqe, reqv, reqr)) +- if resolved.has_key((req,flags,ver)): ++ if (req,flags,ver) in resolved: + continue + try: + resolve_sack = self.whatProvides(req, flags, ver) +@@ -161,7 +161,7 @@ class RepoClosure(yum.YumBase): + pass + + if len(resolve_sack) < 1: +- if not unresolved.has_key(pkg): ++ if pkg not in unresolved: + unresolved[pkg] = [] + unresolved[pkg].append((req, flags, ver)) + continue +@@ -176,7 +176,7 @@ class RepoClosure(yum.YumBase): + if resolved_by_newest: + resolved[(req,flags,ver)] = 1 + else: +- if not unresolved.has_key(pkg): ++ if pkg not in unresolved: + unresolved[pkg] = [] + unresolved[pkg].append((req, flags, ver)) + +diff --git a/repodiff.py b/repodiff.py +index 5b547c0..ac1865e 100755 +--- a/repodiff.py ++++ b/repodiff.py +@@ -184,7 +184,7 @@ def main(args): + if ygh.remove: + for pkg in sorted(ygh.remove): + print 'Removed package %s' % pkg.name +- if ygh.obsoleted.has_key(pkg): ++ if pkg in ygh.obsoleted: + print 'Obsoleted by %s' % ygh.obsoleted[pkg] + remove_sizechange += (int(pkg.size)) + +diff --git a/repomanage.py b/repomanage.py +index 759bf30..aeff9e5 100755 +--- a/repomanage.py ++++ b/repomanage.py +@@ -158,11 +158,11 @@ def main(args): + (n,a,e,v,r) = pkgtuple + del hdr + +- if not pkgdict.has_key((n,a)): ++ if (n,a) not in pkgdict: + pkgdict[(n,a)] = [] + pkgdict[(n,a)].append((e,v,r)) + +- if not verfile.has_key(pkgtuple): ++ if pkgtuple not in verfile: + verfile[pkgtuple] = [] + verfile[pkgtuple].append(pkg) + +diff --git a/repoquery.py b/repoquery.py +index eb524f3..76b1178 100755 +--- a/repoquery.py ++++ b/repoquery.py +@@ -146,7 +146,7 @@ class pkgQuery: + if len(tmp) > 1: + item = tmp[0] + conv = tmp[1] +- if convertmap.has_key(conv): ++ if conv in convertmap: + convert = convertmap[conv] + else: + raise queryError("Invalid conversion: %s" % conv) +@@ -168,7 +168,7 @@ class pkgQuery: + return self.fmt_queryformat() + + def doQuery(self, method, *args, **kw): +- if std_qf.has_key(method): ++ if method in std_qf: + self.qf = std_qf[method] + return self.fmt_queryformat() + elif hasattr(self, "fmt_%s" % method): +@@ -295,7 +295,7 @@ class instPkgQuery(pkgQuery): + self.classname = 'installed pkg' + + def __getitem__(self, item): +- if self.tagmap.has_key(item): ++ if item in self.tagmap: + return self.pkg.tagByName(self.tagmap[item]) + else: + return pkgQuery.__getitem__(self, item) +diff --git a/reposync.py b/reposync.py +index 5c8ee32..b66e927 100755 +--- a/reposync.py ++++ b/reposync.py +@@ -222,7 +222,7 @@ def main(): + download_set[rpmname] = 1 + + for pkg in current_pkgs: +- if download_set.has_key(pkg): ++ if pkg in download_set: + continue + + if not opts.quiet: +diff --git a/repotrack.py b/repotrack.py +index 35b8375..1c7158a 100755 +--- a/repotrack.py ++++ b/repotrack.py +@@ -214,9 +214,8 @@ def main(): + del this_sack + + for res in pkg_list: +- if res is not None: +- if not unprocessed_pkgs.has_key(res.pkgtup): +- unprocessed_pkgs[res.pkgtup] = res ++ if res is not None and res.pkgtup not in unprocessed_pkgs: ++ unprocessed_pkgs[res.pkgtup] = res + + + +diff --git a/yum-debug-dump.py b/yum-debug-dump.py +index f280d61..0ef90b2 100644 +--- a/yum-debug-dump.py ++++ b/yum-debug-dump.py +@@ -128,7 +128,7 @@ class YumDebugDump(yum.YumBase): + if req.startswith('rpmlib'): + continue # ignore rpmlib deps + +- if not providers.has_key((req,rflags,ver)): ++ if (req,rflags,ver) not in providers: + resolve_sack = self.rpmdb.whatProvides(req,rflags,ver) + else: + resolve_sack = providers[(req,rflags,ver)] +-- +1.6.6.1 + + +From 39e3f286c7bb5d09f1440e2a50dd21d0c1603b49 Mon Sep 17 00:00:00 2001 +From: Dennis Gregorovic +Date: Wed, 31 Mar 2010 15:00:54 -0400 +Subject: [PATCH 13/24] Include all packages listed in the pkgonly arg + +--- + repoclosure.py | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/repoclosure.py b/repoclosure.py +index d9a94d7..4c8cfa6 100755 +--- a/repoclosure.py ++++ b/repoclosure.py +@@ -146,7 +146,7 @@ class RepoClosure(yum.YumBase): + pkgs = filter(lambda x: x.arch == 'src', pkgs) + + if self.pkgonly: +- pkgs = filter(lambda x: x.name == self.pkgonly[0], pkgs) ++ pkgs = filter(lambda x: x.name in self.pkgonly, pkgs) + + for pkg in pkgs: + for (req, flags, (reqe, reqv, reqr)) in pkg.returnPrco('requires'): +-- +1.6.6.1 + + +From 267c33dd4c50ea9844f3720832c6c65a623d7b4c Mon Sep 17 00:00:00 2001 +From: Dennis Gregorovic +Date: Wed, 31 Mar 2010 15:18:35 -0400 +Subject: [PATCH 14/24] Add a --group flag to filter packages by comps group + +--- + repoclosure.py | 20 +++++++++++++++++--- + 1 files changed, 17 insertions(+), 3 deletions(-) + +diff --git a/repoclosure.py b/repoclosure.py +index 4c8cfa6..88a6adb 100755 +--- a/repoclosure.py ++++ b/repoclosure.py +@@ -63,6 +63,8 @@ def parseArgs(): + help="specify repoid & paths of additional repositories - unique repoid and path required, can be specified multiple times. Example. --repofrompath=myrepo,/path/to/repo") + parser.add_option("-p", "--pkg", action="append", + help="check closure for this package only") ++ parser.add_option("-g", "--group", action="append", ++ help="check closure for packages in this group only") + (opts, args) = parser.parse_args() + return (opts, args) + +@@ -70,13 +72,14 @@ def parseArgs(): + # so we have to do at least some API guarantee stuff. + class RepoClosure(yum.YumBase): + def __init__(self, arch=[], config="/etc/yum.conf", builddeps=False, pkgonly=None, +- basearch=None): ++ basearch=None, grouponly=None): + yum.YumBase.__init__(self) + if basearch: + self.preconf.arch = basearch + self.logger = logging.getLogger("yum.verbose.repoclosure") + self.builddeps = builddeps + self.pkgonly = pkgonly ++ self.grouponly = grouponly + self.doConfigSetup(fn = config,init_plugins=False) + self._rc_arches = arch + +@@ -145,8 +148,18 @@ class RepoClosure(yum.YumBase): + if self.builddeps: + pkgs = filter(lambda x: x.arch == 'src', pkgs) + +- if self.pkgonly: +- pkgs = filter(lambda x: x.name in self.pkgonly, pkgs) ++ pkglist = self.pkgonly ++ if self.grouponly: ++ if not pkglist: ++ pkglist = [] ++ for group in self.grouponly: ++ groupobj = self.comps.return_group(group) ++ if not groupobj: ++ continue ++ pkglist.extend(groupobj.packages) ++ ++ if pkglist: ++ pkgs = filter(lambda x: x.name in pkglist, pkgs) + + for pkg in pkgs: + for (req, flags, (reqe, reqv, reqr)) in pkg.returnPrco('requires'): +@@ -189,6 +202,7 @@ def main(): + config=opts.config, + builddeps=opts.builddeps, + pkgonly=opts.pkg, ++ grouponly=opts.group, + basearch=opts.basearch) + + if opts.repofrompath: +-- +1.6.6.1 + + +From 8361ec1ae233a507a05c214fa4966e1f232e7a92 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ville=20Skytt=C3=A4?= +Date: Thu, 1 Apr 2010 21:57:36 +0300 +Subject: [PATCH 15/24] Add repoclosure --group completion. + +--- + yum-utils.bash | 6 +++++- + 1 files changed, 5 insertions(+), 1 deletions(-) + +diff --git a/yum-utils.bash b/yum-utils.bash +index 308d82b..d1f13c9 100644 +--- a/yum-utils.bash ++++ b/yum-utils.bash +@@ -142,10 +142,14 @@ _yu_repoclosure() + type _yum_list &>/dev/null && _yum_list all "$2" + return 0 + ;; ++ -g|--group) ++ type _yum_grouplist &>/dev/null && _yum_grouplist "" "$2" ++ return 0 ++ ;; + esac + + COMPREPLY=( $( compgen -W '--help --config --arch --basearch --builddeps +- --repoid --tempcache --quiet --newest --repofrompath --pkg' \ ++ --repoid --tempcache --quiet --newest --repofrompath --pkg --group' \ + -- "$2" ) ) + } && + complete -F _yu_repoclosure -o filenames repoclosure repoclosure.py +-- +1.6.6.1 + + +From 08975b3f4d0f31fe7af7a12443c227bfcbc9f6de Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ville=20Skytt=C3=A4?= +Date: Fri, 2 Apr 2010 11:34:54 +0300 +Subject: [PATCH 16/24] Fix always_print_best_host conf setting. + +--- + plugins/fastestmirror/fastestmirror.py | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/plugins/fastestmirror/fastestmirror.py b/plugins/fastestmirror/fastestmirror.py +index 0701ef7..a8f1ee7 100644 +--- a/plugins/fastestmirror/fastestmirror.py ++++ b/plugins/fastestmirror/fastestmirror.py +@@ -90,7 +90,7 @@ def init_hook(conduit): + + """ + global verbose, socket_timeout, hostfilepath, maxhostfileage, loadcache +- global maxthreads, exclude, prefer, downgrade_ftp ++ global maxthreads, exclude, prefer, downgrade_ftp, always_print_best_host + if hasattr(conduit, 'registerPackageName'): + conduit.registerPackageName("yum-plugin-fastestmirror") + verbose = conduit.confBool('main', 'verbose', default=False) +-- +1.6.6.1 + + +From a33e328bd75f1c1828ee287df0582298f625fd93 Mon Sep 17 00:00:00 2001 +From: James Antill +Date: Thu, 8 Apr 2010 15:58:48 -0400 +Subject: [PATCH 17/24] Add yumdb man page, and yumdb copy command + +--- + docs/Makefile | 2 +- + docs/yumdb.8 | 126 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + yum-utils.spec | 1 + + yumdb.py | 14 ++++++ + 4 files changed, 142 insertions(+), 1 deletions(-) + create mode 100644 docs/yumdb.8 + +diff --git a/docs/Makefile b/docs/Makefile +index 7e81045..947498d 100644 +--- a/docs/Makefile ++++ b/docs/Makefile +@@ -2,7 +2,7 @@ DOCS = repoquery package-cleanup repo-rss yumdownloader yum-builddep yum-changel + yum-list-data yum-filter-data yum-verify yum-utils yum-aliases yum-debug-dump yum-versionlock \ + yum-groups-manager debuginfo-install repodiff yum-fs-snapshot + DOCS5 = yum-changelog.conf yum-versionlock.conf yum-fs-snapshot.conf +-DOCS8 = yum-security yum-complete-transaction ++DOCS8 = yum-security yum-complete-transaction yumdb + + all: + echo "Nothing to do" +diff --git a/docs/yumdb.8 b/docs/yumdb.8 +new file mode 100644 +index 0000000..7c39459 +--- /dev/null ++++ b/docs/yumdb.8 +@@ -0,0 +1,126 @@ ++.\" yumdb command ++.TH "yumdb" "8" "8 April 2010" "James Antill" "" ++.SH "NAME" ++yumdb command ++.SH "SYNOPSIS" ++\fByumdb\fP [command] [packages ...] ++.SH "DESCRIPTION" ++.PP ++This command is used to query and alter the yum database, which is a simple ++key value store used in conjunction with the rpm database. Any installed package ++can have arbitrary data in the yum database, however the main use case is to ++store extra data about packages as they are installed. ++.PP ++yumdb \fIcommand\fPs are: ++.br ++.IP "\fByumdb get [pkg-wildcard]...\fP" ++.PP ++This command will get the value for the given key, limiting to any specified ++packages. ++.br ++.IP "\fByumdb set [pkg-wildcard]..." ++.PP ++This command will set the value for the given key, to the given value, limiting ++to any specified packages. ++.br ++.IP "\fByumdb del [pkg-wildcard]... ++.PP ++This command will delete the given key, limiting to any specified packages. ++.br ++.IP "\fByumdb rename [pkg-wildcard]... ++.PP ++This command will rename the given old-key, to the given new-key, limiting to ++any specified packages. If the old-key does not exist, nothing happens. ++.br ++.IP "\fByumdb rename-force [pkg-wildcard]... ++.PP ++This command will rename the given old-key, to the given new-key, limiting to ++any specified packages. If the old-key does not exist, new-key is deleted. ++.br ++.IP "\fByumdb copy [pkg-wildcard]... ++.PP ++This command will copy the given old-key, to the given new-key, limiting to ++any specified packages. If the old-key does not exist, nothing happens. ++.br ++.IP "\fByumdb search ... ++.PP ++This command will search all packages for the given key, against any of the ++given wildcard values. ++.br ++.IP "\fByumdb exist [pkg-wildcard]... ++.PP ++This command will print any packages which have the given key, limiting to any ++specified packages. ++.br ++.IP "\fByumdb unset [pkg-wildcard]... ++.PP ++This command will print any packages which do not have the given key, limiting ++to any specified packages. ++.br ++.IP "\fByumdb info [pkg-wildcard]... ++.PP ++This command will all the data stored in the yumdb, limiting to any specified ++packages. ++ ++.SH "EXAMPLES" ++.PP ++List all the packages which don't have a from_repo key/value: ++.IP ++yumdb unset from_repo ++.PP ++List all the packages which were installed as dependencies: ++.IP ++yumdb search reason dep ++ ++.SH "WELL KNOWN KEYS" ++.PP ++Note that there is no limit to the number of keys that can be created or what ++they may contain (for installed packages only). However this is a list of well ++known keys, and what they store. ++.nf ++.br ++.IP "\fBchecksum_data ++.IP "\fBchecksum_type ++.PP ++These keys store the createrepo checksum, and it's type, of the available ++package yum installed. Note that these are used by "yum version" to calculate ++the rpmdb version. ++.br ++.IP "\fBcommand_line ++.PP ++This key stores the entire command line, of the yum command (if it was called). ++.br ++.IP "\fBfrom_repo ++.IP "\fBfrom_repo_revision ++.IP "\fBfrom_repo_timestamp ++.PP ++These keys take values from the available package yum installed, and store the ++repo id, it's revision and timestamp. ++.br ++.IP "\fBreason ++.PP ++This key stores either "user" or "dep", currently. To mark if the user requested ++the package to be installed, or if it was brought in automatically as a ++dependency. Note that this is kept over updates. ++.br ++.IP "\fBreleasever ++.PP ++This key stores the value of releasever, when the package was installed. ++.br ++.IP "\fBinstallonly ++.PP ++If this attribute has the value "keep" then this package will not be ++removed automatically by the installonly process (and does not count towards ++the installonly_limit). ++ ++.SH "SEE ALSO" ++.nf ++.I yum (8) ++.I rpm (8) ++.fi ++ ++.SH "AUTHORS" ++.nf ++James Antill . ++.fi ++ +diff --git a/yum-utils.spec b/yum-utils.spec +index 307a4e8..2f0b955 100644 +--- a/yum-utils.spec ++++ b/yum-utils.spec +@@ -463,6 +463,7 @@ fi + %{_mandir}/man1/yum-debug-dump.1.* + %{_mandir}/man8/yum-complete-transaction.8.* + %{_mandir}/man1/yum-groups-manager.1.* ++%{_mandir}/man8/yumdb.8.* + %{_mandir}/man1/yumdownloader.1.* + + %files -n yum-updateonboot +diff --git a/yumdb.py b/yumdb.py +index 365006e..38ba561 100755 +--- a/yumdb.py ++++ b/yumdb.py +@@ -19,6 +19,7 @@ def setup_opts(): + del [pkg-wildcard]... + rename [pkg-wildcard]... + rename-force [pkg-wildcard]... ++ copy [pkg-wildcard]... + search ... + exist? [pkg-wildcard]... + unset? [pkg-wildcard]... +@@ -68,6 +69,19 @@ def run_cmd(yb, args, inshell=False): + print " " * 4, ynkey, '=', getattr(pkg.yumdb_info, ynkey) + else: + print " " * 4, ynkey, '' ++ elif args[0] == 'copy' and len(args) > 2: ++ args.pop(0) ++ yokey = args.pop(0) ++ ynkey = args.pop(0) ++ for pkg in sorted(yb.rpmdb.returnPackages(patterns=args)): ++ print pkg ++ if yokey in pkg.yumdb_info: ++ setattr(pkg.yumdb_info, ynkey, getattr(pkg.yumdb_info, yokey)) ++ print " " * 4, ynkey, '=', getattr(pkg.yumdb_info, ynkey) ++ elif ynkey in pkg.yumdb_info: ++ print " " * 4, ynkey, '=', getattr(pkg.yumdb_info, ynkey) ++ else: ++ print " " * 4, ynkey, '' + elif args[0] in ['rename-f', 'rename-force'] and len(args) > 2: + args.pop(0) + yokey = args.pop(0) +-- +1.6.6.1 + + +From b4c9ab9ecf7e602f78836ba34b1fc3994904e533 Mon Sep 17 00:00:00 2001 +From: James Antill +Date: Thu, 8 Apr 2010 16:02:55 -0400 +Subject: [PATCH 18/24] Use the yum configured cachedir value, in fastestmirror + +--- + plugins/fastestmirror/fastestmirror.conf | 4 +++- + plugins/fastestmirror/fastestmirror.py | 6 ++++-- + 2 files changed, 7 insertions(+), 3 deletions(-) + +diff --git a/plugins/fastestmirror/fastestmirror.conf b/plugins/fastestmirror/fastestmirror.conf +index 32ecec4..c6db0d8 100644 +--- a/plugins/fastestmirror/fastestmirror.conf ++++ b/plugins/fastestmirror/fastestmirror.conf +@@ -3,7 +3,9 @@ enabled=1 + verbose=0 + always_print_best_host = true + socket_timeout=3 +-hostfilepath=/var/cache/yum/timedhosts.txt ++# Relative paths are relative to the cachedir (and so works for users as well ++# as root). ++hostfilepath=timedhosts.txt + maxhostfileage=10 + maxthreads=15 + #exclude=.gov, facebook +diff --git a/plugins/fastestmirror/fastestmirror.py b/plugins/fastestmirror/fastestmirror.py +index a8f1ee7..db2fede 100644 +--- a/plugins/fastestmirror/fastestmirror.py ++++ b/plugins/fastestmirror/fastestmirror.py +@@ -14,7 +14,7 @@ + # enabled=1 + # verbose=1 + # socket_timeout=3 +-# hostfilepath=/var/cache/yum/timedhosts ++# hostfilepath=timedhosts + # maxhostfileage=10 + # maxthreads=15 + # #exclude=.gov, facebook +@@ -98,7 +98,9 @@ def init_hook(conduit): + default=True) + socket_timeout = conduit.confInt('main', 'socket_timeout', default=3) + hostfilepath = conduit.confString('main', 'hostfilepath', +- default='/var/cache/yum/timedhosts') ++ default='timedhosts') ++ if hostfilepath and hostfilepath[0] != '/': ++ hostfilepath = conduit._base.conf.cachedir + '/' + hostfilepath + maxhostfileage = conduit.confInt('main', 'maxhostfileage', default=10) + maxthreads = conduit.confInt('main', 'maxthreads', default=10) + exclude = conduit.confString('main', 'exclude', default=None) +-- +1.6.6.1 + + +From 264a67e713827a086ceef13b163a46dc6f28acf4 Mon Sep 17 00:00:00 2001 +From: Seth Vidal +Date: Fri, 9 Apr 2010 17:01:16 -0400 +Subject: [PATCH 19/24] fixes https://bugzilla.redhat.com/show_bug.cgi?id=580343 + +when we are dealing with compressed comps files just fetch the group +not group_gz +--- + reposync.py | 45 +++++++++++++++++++++++---------------------- + 1 files changed, 23 insertions(+), 22 deletions(-) + +diff --git a/reposync.py b/reposync.py +index b66e927..4d70e30 100755 +--- a/reposync.py ++++ b/reposync.py +@@ -110,7 +110,7 @@ def parseArgs(): + parser.add_option("-p", "--download_path", dest='destdir', + default=os.getcwd(), help="Path to download packages to: defaults to current dir") + parser.add_option("--norepopath", dest='norepopath', default=False, action="store_true", +- help="Don't add the reponame to the download path. Can only be used when syncing a single repository (default is to add the reponame)") ++ help="Don't add the reponame to the download path. Can only be used when syncing a single repository (default is to add the reponame)") + parser.add_option("-g", "--gpgcheck", default=False, action="store_true", + help="Remove packages that fail GPG signature checking after downloading") + parser.add_option("-u", "--urls", default=False, action="store_true", +@@ -176,7 +176,7 @@ def main(): + # enable the ones we like + for repo in myrepos: + repo.enable() +- ++ + # --norepopath can only be sensibly used with a single repository: + if len(my.repos.listEnabled()) > 1 and opts.norepopath: + print >> sys.stderr, "Error: Can't use --norepopath with multiple repositories" +@@ -238,29 +238,30 @@ def main(): + my.logger.error("Could not make repo subdir: %s" % e) + my.closeRpmDB() + sys.exit(1) +- try: # download random other metadata +- if opts.downloadcomps: +- compsfile = repo.getGroups() +- shutil.copyfile(compsfile,"%s/%s" % (local_repo_path,'comps.xml')) +- except yum.Errors.RepoMDError,e : +- if not opts.quiet: +- my.logger.error("Unable to fetch metadata: %s" % e) + ++ if opts.downloadcomps: ++ wanted_types = ['group'] ++ + if opts.downloadmd: +- for ftype in repo.repoXML.fileTypes(): +- if ftype in ['primary', 'primary_db', 'filelists', +- 'filelists_db', 'other', 'other_db']: +- continue +- if opts.downloadcomps and ftype == 'group': +- continue +- try: +- resultfile = repo.retrieveMD(ftype) +- basename = os.path.basename(resultfile) +- shutil.copyfile(resultfile, "%s/%s" % (local_repo_path, basename)) +- except yum.Errors.RepoMDError,e : +- if not opts.quiet: +- my.logger.error("Unable to fetch metadata: %s" % e) ++ wanted_types = repo.repoXML.fileTypes.keys() ++ ++ for ftype in repo.repoXML.fileTypes(): ++ if ftype in ['primary', 'primary_db', 'filelists', ++ 'filelists_db', 'other', 'other_db']: ++ continue ++ if ftype not in wanted_types: ++ continue + ++ try: ++ resultfile = repo.retrieveMD(ftype) ++ basename = os.path.basename(resultfile) ++ if ftype == 'group' and opts.downloadcomps: # for compat with how --downloadcomps saved the comps file always as comps.xml ++ basename = 'comps.xml' ++ shutil.copyfile(resultfile, "%s/%s" % (local_repo_path, basename)) ++ except yum.Errors.RepoMDError,e : ++ if not opts.quiet: ++ my.logger.error("Unable to fetch metadata: %s" % e) ++ + remote_size = 0 + local_size = 0 + if not opts.urls: +-- +1.6.6.1 + + +From 4f7fa956098ec985727c5d12e694ccb259a6f037 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ville=20Skytt=C3=A4?= +Date: Sat, 10 Apr 2010 00:21:57 +0300 +Subject: [PATCH 20/24] Add copy to yumdb completions. + +--- + yum-utils.bash | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/yum-utils.bash b/yum-utils.bash +index d1f13c9..54c9ef8 100644 +--- a/yum-utils.bash ++++ b/yum-utils.bash +@@ -242,7 +242,7 @@ _yu_yumdb() + esac + + if [ $COMP_CWORD -le 1 ] ; then +- COMPREPLY=( $( compgen -W 'get set del rename rename-force search ++ COMPREPLY=( $( compgen -W 'get set del rename rename-force copy search + exist unset info shell --version --help --noplugins --config' \ + -- "$2" ) ) + fi +-- +1.6.6.1 + + +From 2e5b45d9c4e743f88b085587984a19cc009d282e Mon Sep 17 00:00:00 2001 +From: Michael Schwendt +Date: Tue, 13 Apr 2010 16:19:19 -0400 +Subject: [PATCH 21/24] Get the newer "same day" changelog entries in repodiff. + +Tided by by James. +--- + repodiff.py | 21 ++++++++++++++------- + 1 files changed, 14 insertions(+), 7 deletions(-) + +diff --git a/repodiff.py b/repodiff.py +index ac1865e..ff67fe4 100755 +--- a/repodiff.py ++++ b/repodiff.py +@@ -198,15 +198,22 @@ def main(args): + # for any newer clog in pkg + # print it + oldlogs = oldpkg.changelog +- oldlogs.sort() +- oldlogs.reverse() + if len(oldlogs): +- oldtime = oldlogs[0][0] +- clogdelta = [] ++ # Don't sort as that can screw the order up when time is the ++ # same. ++ oldtime = oldlogs[-1][0] ++ oldauth = oldlogs[-1][2] ++ oldcontent = oldlogs[-1][2] + for (t, author, content) in pkg.changelog: +- if t > oldtime: +- msg += "* %s %s\n%s\n\n" % (datetime.date.fromtimestamp(int(t)).strftime("%a %b %d %Y"), +- to_unicode(author), to_unicode(content)) ++ if t < oldtime: ++ break ++ if ((t == oldtime) and (author == auth) and ++ (content == oldcontent)): ++ break ++ tm = datetime.date.fromtimestamp(int(t)) ++ tm = tm.strftime("%a %b %d %Y") ++ msg += "* %s %s\n%s\n\n" % (tm, to_unicode(author), ++ to_unicode(content)) + if opts.size: + sizechange = int(pkg.size) - int(oldpkg.size) + total_sizechange += sizechange +-- +1.6.6.1 + + +From 9afba990529f7b2381f907b5341a45a4e9eac08d Mon Sep 17 00:00:00 2001 +From: James Antill +Date: Tue, 13 Apr 2010 16:44:06 -0400 +Subject: [PATCH 22/24] Stupid typo fix + +--- + repodiff.py | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/repodiff.py b/repodiff.py +index ff67fe4..5f3d5b1 100755 +--- a/repodiff.py ++++ b/repodiff.py +@@ -207,7 +207,7 @@ def main(args): + for (t, author, content) in pkg.changelog: + if t < oldtime: + break +- if ((t == oldtime) and (author == auth) and ++ if ((t == oldtime) and (author == oldauth) and + (content == oldcontent)): + break + tm = datetime.date.fromtimestamp(int(t)) +-- +1.6.6.1 + + +From cb745dcbca766c7b1a185b938e8eff9792a1317a Mon Sep 17 00:00:00 2001 +From: James Antill +Date: Tue, 13 Apr 2010 18:05:05 -0400 +Subject: [PATCH 23/24] Fix obsoletes processing in repodiff, also giant speedup. Compared output + both before and after and it was identical: + +1. Original with 3.2.27: 8 minutes 27 seconds + +2. Original with returnNewestByName() speedup: 1 minute 50 seconds. + +3. New repodiff with 3.2.27: 11 seconds. + +...tested with Updates/11 vs. Updates/12 on 2010-04-13. +--- + repodiff.py | 74 ++++++++++++++++++++++++++++++++++++---------------------- + 1 files changed, 46 insertions(+), 28 deletions(-) + +diff --git a/repodiff.py b/repodiff.py +index 5f3d5b1..475f599 100755 +--- a/repodiff.py ++++ b/repodiff.py +@@ -20,6 +20,7 @@ import datetime + import os + import locale + from yum.i18n import to_unicode ++import time + + from optparse import OptionParser + +@@ -59,42 +60,59 @@ class DiffYum(yum.YumBase): + remove = [] + modified = [] + obsoleted = {} # obsoleted = by +- newsack = yum.packageSack.ListPackageSack() +- for repoid in self.dy_repos['new']: +- newsack.addList(self.pkgSack.returnPackages(repoid=repoid)) +- +- oldsack = yum.packageSack.ListPackageSack() +- for repoid in self.dy_repos['old']: +- oldsack.addList(self.pkgSack.returnPackages(repoid=repoid)) +- +- for pkg in newsack.returnNewestByName(): +- tot = self.pkgSack.searchNevra(name=pkg.name) +- if len(tot) == 1: # it's only in new +- add.append(pkg) +- if len(tot) > 1: +- if oldsack.contains(name=pkg.name): +- newest_old = oldsack.returnNewestByName(name=pkg.name)[0] +- if newest_old.EVR != pkg.EVR: +- modified.append((pkg, newest_old)) ++ ++ # Originally we did this by setting up old and new repos. ... but as ++ # a faster way, we can just go through all the pkgs once getting the ++ # newest pkg with a repoid prefix of "old", dito. "new", and then ++ # compare those directly. ++ def _next_old_new(pkgs): ++ """ Returns latest pair of (oldpkg, newpkg) for each package ++ name. If that name doesn't exist, then it returns None for ++ that package. """ ++ lastname = None ++ npkg = opkg = None ++ for pkg in sorted(pkgs): ++ if lastname is None: ++ lastname = pkg.name ++ if lastname != pkg.name: ++ yield opkg, npkg ++ opkg = npkg = None ++ lastname = pkg.name ++ ++ if pkg.repo.id.startswith('old'): ++ opkg = pkg + else: +- add.append(pkg) ++ assert pkg.repo.id.startswith('new') ++ npkg = pkg ++ if opkg is not None or npkg is not None: ++ yield opkg, npkg + +- for pkg in oldsack.returnNewestByName(): +- if len(newsack.searchNevra(name=pkg.name)) == 0: +- remove.append(pkg) ++ for opkg, npkg in _next_old_new(self.pkgSack.returnPackages()): ++ if opkg is None: ++ add.append(npkg) ++ elif npkg is None: ++ remove.append(opkg) ++ elif not npkg.verEQ(opkg): ++ modified.append((npkg, opkg)) + ++ ao = [] ++ for pkg in add: ++ if not pkg.obsoletes: ++ continue ++ ao.append(pkg) + ++ # Note that this _only_ shows something when you have an additional ++ # package obsoleting a removed package. If the obsoleted package is ++ # still there (somewhat "common") or the obsoleter is an update (dito) ++ # you get get hits here. + for po in remove: +- for newpo in add: +- foundit = 0 +- for obs in newpo.obsoletes: +- if po.inPrcoRange('provides', obs): +- foundit = 1 +- obsoleted[po] = newpo +- break +- if foundit: ++ # Remember: Obsoletes are for package names only. ++ poprovtup = (po.name, 'EQ', (po.epoch, po.ver, po.release)) ++ for newpo in ao: ++ if po.inPrcoRange('obsoletes', poprovtup): ++ obsoleted[po] = newpo + break +- ++ + ygh = yum.misc.GenericHolder() + ygh.add = add + ygh.remove = remove +-- +1.6.6.1 + + +From 99cbe8d6dad9ca8543dedcc5c12bc0f9fdde200e Mon Sep 17 00:00:00 2001 +From: James Antill +Date: Tue, 13 Apr 2010 18:16:03 -0400 +Subject: [PATCH 24/24] Add message about archlist usage, to stop people being confused. + +--- + docs/repodiff.1 | 2 ++ + repodiff.py | 4 ++++ + 2 files changed, 6 insertions(+), 0 deletions(-) + +diff --git a/docs/repodiff.1 b/docs/repodiff.1 +index e1ffc3b..640b023 100644 +--- a/docs/repodiff.1 ++++ b/docs/repodiff.1 +@@ -16,6 +16,8 @@ Add a repo. as an old repo. + Add a repo. as an new repo. + .IP "\fB\-\-archlist, -a\fP" + Add architectures to change the default from just comparing source packages. ++Note that if you want the same as a native ++"x86_64" architecture machine you need: x86_64,athlon,i686,i586,i486,i386,noarch + .IP "\fB\-\-size, -s\fP" + Ouput additional data about the size of the changes. + .SH "EXAMPLES" +diff --git a/repodiff.py b/repodiff.py +index 475f599..0a1c42f 100755 +--- a/repodiff.py ++++ b/repodiff.py +@@ -239,6 +239,10 @@ def main(args): + + print msg + ++ if (not ygh.add and not ygh.remove and not ygh.modified and ++ not my.pkgSack.searchNevra(arch='src')): ++ print "** No 'src' pkgs in any repo. maybe see docs. on --archlist?" ++ + print 'Summary:' + print 'Added Packages: %s' % len(ygh.add) + print 'Removed Packages: %s' % len(ygh.remove) +-- +1.6.6.1 + diff --git a/yum-utils.spec b/yum-utils.spec index 79614bd..cc5198c 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -466,6 +466,7 @@ fi %{_mandir}/man1/yum-debug-dump.1.* %{_mandir}/man8/yum-complete-transaction.8.* %{_mandir}/man1/yum-groups-manager.1.* +%{_mandir}/man8/yumdb.8.* %{_mandir}/man1/yumdownloader.1.* %files -n yum-updateonboot From 138709b6a0f675e5a572a299c3d334f057ff91da Mon Sep 17 00:00:00 2001 From: James Antill Date: Thu, 15 Apr 2010 04:55:08 +0000 Subject: [PATCH 073/150] - Get lots of fixes from latest HEAD. Also: - --alldeps default in repoquery. - repoquery will now do a full provides version check. - Add repoclosure --group. - Big repodiff speedup. --- yum-utils-HEAD.patch | 19 +++++++++++++++++++ yum-utils.spec | 4 ++-- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/yum-utils-HEAD.patch b/yum-utils-HEAD.patch index 3dab6b0..503a277 100644 --- a/yum-utils-HEAD.patch +++ b/yum-utils-HEAD.patch @@ -1616,3 +1616,22 @@ index 475f599..0a1c42f 100755 -- 1.6.6.1 +commit 9c647a75528566c0abf7bf4d0ed8c8c03e6223a5 +Author: James Antill +Date: Thu Apr 15 00:54:03 2010 -0400 + + Fix typo on obsoletes check, in repodiff + +diff --git a/repodiff.py b/repodiff.py +index 0a1c42f..2810108 100755 +--- a/repodiff.py ++++ b/repodiff.py +@@ -109,7 +109,7 @@ class DiffYum(yum.YumBase): + # Remember: Obsoletes are for package names only. + poprovtup = (po.name, 'EQ', (po.epoch, po.ver, po.release)) + for newpo in ao: +- if po.inPrcoRange('obsoletes', poprovtup): ++ if newpo.inPrcoRange('obsoletes', poprovtup): + obsoleted[po] = newpo + break + diff --git a/yum-utils.spec b/yum-utils.spec index cc5198c..8d96944 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.26 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -623,7 +623,7 @@ fi %{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog -* Wed Apr 14 2010 James Antill - 1.1.26-2 +* Wed Apr 14 2010 James Antill - 1.1.26-3 - Get lots of fixes from latest HEAD. Also: - --alldeps default in repoquery. - repoquery will now do a full provides version check. From 14a7e051f142729497af90e7b7229e113968fbb7 Mon Sep 17 00:00:00 2001 From: James Antill Date: Fri, 16 Apr 2010 18:52:08 +0000 Subject: [PATCH 074/150] - Fix the changelog entry time comparison in repodiff. --- yum-utils-HEAD.patch | 23 +++++++++++++++++++++++ yum-utils.spec | 5 ++++- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/yum-utils-HEAD.patch b/yum-utils-HEAD.patch index 503a277..941998e 100644 --- a/yum-utils-HEAD.patch +++ b/yum-utils-HEAD.patch @@ -1635,3 +1635,26 @@ index 0a1c42f..2810108 100755 obsoleted[po] = newpo break +commit 007bf5d4fd3147b51390d7124e64b3e431c831a9 +Author: James Antill +Date: Fri Apr 16 14:50:27 2010 -0400 + + Use the newest old changelog entry, not the oldest ... *sigh* + +diff --git a/repodiff.py b/repodiff.py +index 2810108..bc2cbf7 100755 +--- a/repodiff.py ++++ b/repodiff.py +@@ -219,9 +219,9 @@ def main(args): + if len(oldlogs): + # Don't sort as that can screw the order up when time is the + # same. +- oldtime = oldlogs[-1][0] +- oldauth = oldlogs[-1][2] +- oldcontent = oldlogs[-1][2] ++ oldtime = oldlogs[0][0] ++ oldauth = oldlogs[0][2] ++ oldcontent = oldlogs[0][2] + for (t, author, content) in pkg.changelog: + if t < oldtime: + break diff --git a/yum-utils.spec b/yum-utils.spec index 8d96944..f2afff6 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.26 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -623,6 +623,9 @@ fi %{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog +* Fri Apr 16 2010 James Antill - 1.1.26-4 +- Fix the changelog entry time comparison in repodiff. + * Wed Apr 14 2010 James Antill - 1.1.26-3 - Get lots of fixes from latest HEAD. Also: - --alldeps default in repoquery. From 232d8fa28f167fa7b9d0f395d57fdb699dda2a11 Mon Sep 17 00:00:00 2001 From: James Antill Date: Sun, 18 Apr 2010 05:46:14 +0000 Subject: [PATCH 075/150] - Fix the changelog entry time comparison in repodiff, again. --- yum-utils-HEAD.patch | 21 +++++++++++++++++++++ yum-utils.spec | 5 ++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/yum-utils-HEAD.patch b/yum-utils-HEAD.patch index 941998e..20725f6 100644 --- a/yum-utils-HEAD.patch +++ b/yum-utils-HEAD.patch @@ -1658,3 +1658,24 @@ index 2810108..bc2cbf7 100755 for (t, author, content) in pkg.changelog: if t < oldtime: break +commit 3d9cf740ee9c9c2fbf8e408fe0eb2d46c1a88a00 +Author: James Antill +Date: Sun Apr 18 01:44:24 2010 -0400 + + One more fix for the changelog time comparison + +diff --git a/repodiff.py b/repodiff.py +index bc2cbf7..805e3b0 100755 +--- a/repodiff.py ++++ b/repodiff.py +@@ -225,8 +225,8 @@ def main(args): + for (t, author, content) in pkg.changelog: + if t < oldtime: + break +- if ((t == oldtime) and (author == oldauth) and +- (content == oldcontent)): ++ if ((t == oldtime) and ((author != oldauth) or ++ (content != oldcontent)): + break + tm = datetime.date.fromtimestamp(int(t)) + tm = tm.strftime("%a %b %d %Y") diff --git a/yum-utils.spec b/yum-utils.spec index f2afff6..86355d1 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.26 -Release: 4%{?dist} +Release: 6%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -623,6 +623,9 @@ fi %{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog +* Sat Apr 17 2010 James Antill - 1.1.26-6 +- Fix the changelog entry time comparison in repodiff, again. + * Fri Apr 16 2010 James Antill - 1.1.26-4 - Fix the changelog entry time comparison in repodiff. From 5b04f29c7674730dca2533b1a27f786c81553284 Mon Sep 17 00:00:00 2001 From: James Antill Date: Sun, 18 Apr 2010 06:09:42 +0000 Subject: [PATCH 076/150] - Fix the changelog entry time comparison in repodiff, again. --- yum-utils-HEAD.patch | 24 +++++++++++------------- yum-utils.spec | 4 ++-- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/yum-utils-HEAD.patch b/yum-utils-HEAD.patch index 20725f6..7f1000a 100644 --- a/yum-utils-HEAD.patch +++ b/yum-utils-HEAD.patch @@ -1658,24 +1658,22 @@ index 2810108..bc2cbf7 100755 for (t, author, content) in pkg.changelog: if t < oldtime: break -commit 3d9cf740ee9c9c2fbf8e408fe0eb2d46c1a88a00 +commit d4722ce74fe655888fa9d5b02090a56f6e137ce0 Author: James Antill -Date: Sun Apr 18 01:44:24 2010 -0400 +Date: Sun Apr 18 02:08:39 2010 -0400 - One more fix for the changelog time comparison + Fix the actual bug in repodiff, comparison diff --git a/repodiff.py b/repodiff.py -index bc2cbf7..805e3b0 100755 +index bc2cbf7..7ef7c50 100755 --- a/repodiff.py +++ b/repodiff.py -@@ -225,8 +225,8 @@ def main(args): +@@ -220,7 +220,7 @@ def main(args): + # Don't sort as that can screw the order up when time is the + # same. + oldtime = oldlogs[0][0] +- oldauth = oldlogs[0][2] ++ oldauth = oldlogs[0][1] + oldcontent = oldlogs[0][2] for (t, author, content) in pkg.changelog: if t < oldtime: - break -- if ((t == oldtime) and (author == oldauth) and -- (content == oldcontent)): -+ if ((t == oldtime) and ((author != oldauth) or -+ (content != oldcontent)): - break - tm = datetime.date.fromtimestamp(int(t)) - tm = tm.strftime("%a %b %d %Y") diff --git a/yum-utils.spec b/yum-utils.spec index 86355d1..a81b308 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.26 -Release: 6%{?dist} +Release: 7%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -623,7 +623,7 @@ fi %{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog -* Sat Apr 17 2010 James Antill - 1.1.26-6 +* Sat Apr 17 2010 James Antill - 1.1.26-7 - Fix the changelog entry time comparison in repodiff, again. * Fri Apr 16 2010 James Antill - 1.1.26-4 From 4c9887cadcfca3a9a0f9e2524d286536655784e4 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Sun, 6 Jun 2010 13:24:20 +0000 Subject: [PATCH 077/150] Release 1.1.27-1 --- .cvsignore | 2 +- sources | 2 +- yum-utils-HEAD.patch | 1679 ------------------------------------------ yum-utils.spec | 54 +- 4 files changed, 13 insertions(+), 1724 deletions(-) delete mode 100644 yum-utils-HEAD.patch diff --git a/.cvsignore b/.cvsignore index f577c2f..0a39cad 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -yum-utils-1.1.26.tar.gz +yum-utils-1.1.27.tar.gz diff --git a/sources b/sources index b5d78a8..4695520 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -cdf0b2e65a57485ec37ea09a8b1e36b9 yum-utils-1.1.26.tar.gz +e5bf013b43cd898ef5483798e64317f9 yum-utils-1.1.27.tar.gz diff --git a/yum-utils-HEAD.patch b/yum-utils-HEAD.patch deleted file mode 100644 index 7f1000a..0000000 --- a/yum-utils-HEAD.patch +++ /dev/null @@ -1,1679 +0,0 @@ -From bc3d026acd1c8f332d024bf9a9918da6451c8c07 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ville=20Skytt=C3=A4?= -Date: Tue, 9 Feb 2010 21:35:15 +0200 -Subject: [PATCH 01/24] Make --alldeps the default in repoquery. - ---alldeps is what people really almost always want, but fail to -specify for some reason. --exactdeps can be used to get the previous -default of exact matching. ---- - docs/repoquery.1 | 10 +++++++--- - repoquery.py | 6 ++++-- - yum-utils.bash | 2 +- - 3 files changed, 12 insertions(+), 6 deletions(-) - -diff --git a/docs/repoquery.1 b/docs/repoquery.1 -index 1056c80..e5ed8b7 100644 ---- a/docs/repoquery.1 -+++ b/docs/repoquery.1 -@@ -107,8 +107,12 @@ Query all packages that provide CAPABILITY. - .IP "\fB\-\-whatrequires CAPABILITY\fP" - Query all packages that require CAPABILITY. - .IP "\fB\-\-alldeps\fP" --When used with --whatrequires, use both automatic and manual dependencies --for the query. -+When used with --whatrequires, look for non-explicit dependencies in -+addition to explicit ones (e.g. files and Provides in addition to -+package names). This is the default. -+.IP "\fB\-\-exactdeps\fP" -+When used with --whatrequires, search for dependencies only exactly as given. -+This is effectively the opposite of --alldeps. - .IP "\fB\-\-recursive\fP" - When used with --whatrequires, query packages recursively. - .IP "\fB\-\-archlist=ARCH1[,ARCH2...]\fP" -@@ -147,7 +151,7 @@ Query groups instead of packages. - .IP "List all packages whose name contains 'perl':" - \fBrepoquery '*perl*'\fP - .IP "List all packages depending on openssl:" --\fBrepoquery --whatrequires --alldeps openssl\fP -+\fBrepoquery --whatrequires openssl\fP - .IP "List all package names and the repository they come from, nicely formatted:" - \fBrepoquery -a --qf "%-20{repoid} %{name}"\fP - .IP "List name and summary of all available updates (if any), nicely formatted:" -diff --git a/repoquery.py b/repoquery.py -index 2e3004b..3e2c18a 100755 ---- a/repoquery.py -+++ b/repoquery.py -@@ -647,8 +647,10 @@ def main(args): - help="operate on corresponding source RPM") - parser.add_option("--resolve", action="store_true", - help="resolve capabilities to originating package(s)") -- parser.add_option("--alldeps", action="store_true", -- help="check non-explicit dependencies (files and Provides:) as well") -+ parser.add_option("--alldeps", action="store_true", default=True, -+ help="check non-explicit dependencies (files and Provides:) as well, defaults to on") -+ parser.add_option("--exactdeps", dest="alldeps", action="store_false", -+ help="check dependencies exactly as given, opposite of --alldeps") - parser.add_option("--recursive", action="store_true", - help="recursively query for packages (for whatrequires)") - parser.add_option("--whatprovides", action="store_true", -diff --git a/yum-utils.bash b/yum-utils.bash -index d8ca1dd..7df1b49 100644 ---- a/yum-utils.bash -+++ b/yum-utils.bash -@@ -210,7 +210,7 @@ _yu_repoquery() - COMPREPLY=( $( compgen -W '--version --help --list --info --file - --queryformat --groupmember --all --requires --provides --obsoletes - --conflicts --changelog --location --nevra --envra --nvr --source -- --srpm --resolve --alldeps --recursive --whatprovides --whatrequires -+ --srpm --resolve --exactdeps --recursive --whatprovides --whatrequires - --whatobsoletes --whatconflicts --group --grouppkgs --archlist - --pkgnarrow --show-duplicates --repoid --enablerepo --disablerepo - --repofrompath --plugins --quiet --verbose --cache --tempcache --- -1.6.6.1 - - -From efc35f8de0475db1bfe27eb04a93f571a23ce8b7 Mon Sep 17 00:00:00 2001 -From: Seth Vidal -Date: Mon, 15 Feb 2010 22:01:50 -0500 -Subject: [PATCH 02/24] make repoquery pass in the whole string not just split for names - ---- - repoquery.py | 5 +---- - 1 files changed, 1 insertions(+), 4 deletions(-) - -diff --git a/repoquery.py b/repoquery.py -index 2e3004b..c2b8c03 100755 ---- a/repoquery.py -+++ b/repoquery.py -@@ -554,10 +554,7 @@ class YumBaseQuery(yum.YumBase): - provs.extend(pkg.files()) - - for prov in provs: -- # Only look at the providing name, not the whole version. This -- # might occasionally give some false positives but that's -- # better than missing ones which it had previously -- for pkg in self.pkgSack.searchRequires(prov.split()[0]): -+ for pkg in self.pkgSack.searchRequires(prov): - pkgs[pkg.pkgtup] = pkg - if self.options.recursive: - require_recursive(pkg.name) --- -1.6.6.1 - - -From 493450d26d04e3f61470e21f7db717e7d98e3d57 Mon Sep 17 00:00:00 2001 -From: Seth Vidal -Date: Thu, 25 Feb 2010 12:58:35 -0500 -Subject: [PATCH 03/24] move around where we query for pkgs from sackops/prcos and what happens if no special output format - is specified in repoquery. - -makes: -repoquery -qfi /bin/bash output -qi output rather than -q output. ---- - repoquery.py | 19 +++++++++++-------- - 1 files changed, 11 insertions(+), 8 deletions(-) - -diff --git a/repoquery.py b/repoquery.py -index 0a56430..225a4cb 100755 ---- a/repoquery.py -+++ b/repoquery.py -@@ -504,10 +504,21 @@ class YumBaseQuery(yum.YumBase): - else: - if self.options.srpm: - pkgs = self.matchSrcPkgs(items) -+ - else: - pkgs = self.matchPkgs(items) -+ for prco in items: -+ for oper in self.sackops: -+ try: -+ for p in self.doQuery(oper, prco): -+ if p: -+ pkgs.append(p) -+ except queryError, e: -+ self.logger.error( e.msg) - - for pkg in pkgs: -+ if not self.pkgops: -+ print to_unicode(pkg) - for oper in self.pkgops: - try: - out = pkg.doQuery(oper) -@@ -515,14 +526,6 @@ class YumBaseQuery(yum.YumBase): - print to_unicode(out) - except queryError, e: - self.logger.error( e.msg) -- for prco in items: -- for oper in self.sackops: -- try: -- for p in self.doQuery(oper, prco): -- if p: -- print p -- except queryError, e: -- self.logger.error( e.msg) - - def doQuery(self, method, *args, **kw): - return getattr(self, "fmt_%s" % method)(*args, **kw) --- -1.6.6.1 - - -From f0bee60c3fc81325e547d0f8bf42591368d18ee4 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ville=20Skytt=C3=A4?= -Date: Sat, 27 Feb 2010 14:21:02 +0200 -Subject: [PATCH 04/24] Fix --releasever. - ---- - repoquery.py | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/repoquery.py b/repoquery.py -index 225a4cb..eb524f3 100755 ---- a/repoquery.py -+++ b/repoquery.py -@@ -774,7 +774,7 @@ def main(args): - - # silence initialisation junk from modules etc unless verbose mode - initnoise = (not opts.quiet) * 2 -- repoq.releasever = opts.releasever -+ repoq.preconf.releasever = opts.releasever - if opts.conffile: - repoq.doConfigSetup(fn=opts.conffile, debuglevel=initnoise, init_plugins=opts.plugins) - else: --- -1.6.6.1 - - -From b15cb0760c864cadc5029474d07cc38882ec1815 Mon Sep 17 00:00:00 2001 -From: Seth Vidal -Date: Mon, 1 Mar 2010 14:58:27 -0500 -Subject: [PATCH 05/24] catch all yum errors and valueError (which is coming from yum.config.py :() - generally this just means we'll get less ABRT errors and more reports from users - -(I hope) ---- - repoclosure.py | 7 ++++++- - 1 files changed, 6 insertions(+), 1 deletions(-) - -diff --git a/repoclosure.py b/repoclosure.py -index 5076fe8..8c27cdd 100755 ---- a/repoclosure.py -+++ b/repoclosure.py -@@ -273,5 +273,10 @@ def main(): - my.logger.info(' %s' % req) - - if __name__ == "__main__": -- main() -+ try: -+ main() -+ except (yum.Errors.YumBaseError, ValueError), e: -+ print >> sys.stderr, str(e) -+ sys.exit(1) -+ - --- -1.6.6.1 - - -From 30e58c85e07abe939ff3c9af017f8355f81a4f32 Mon Sep 17 00:00:00 2001 -From: Seth Vidal -Date: Mon, 1 Mar 2010 15:27:57 -0500 -Subject: [PATCH 06/24] setup some repo features that make sense for the debug repos to - inherit from the non-debug repos when we add them - ---- - debuginfo-install.py | 5 +++++ - 1 files changed, 5 insertions(+), 0 deletions(-) - -diff --git a/debuginfo-install.py b/debuginfo-install.py -index 242be65..dc41b5f 100755 ---- a/debuginfo-install.py -+++ b/debuginfo-install.py -@@ -90,6 +90,11 @@ class DebugInfoInstall(YumUtilBase): - r.enable() - try: - self.doRepoSetup(thisrepo=r.id) -+ for opt in ['repo_gpgcheck', 'gpgcheck', 'cost', -+ 'skip_if_unavailable']: -+ if hasattr(r, opt): -+ setattr(r, opt, getattr(repo, opt)) -+ - except yum.Errors.RepoError, e: - self.logger.critical("Could not access repo %s error was: %s" % - (r.id, to_unicode(str(e)))) --- -1.6.6.1 - - -From c65516666fdca02f6f1500134d8a6832176320c7 Mon Sep 17 00:00:00 2001 -From: James Antill -Date: Mon, 1 Mar 2010 22:57:07 -0500 -Subject: [PATCH 07/24] Add yum-utils to the run_with_packages when running y-c-t - ---- - yum-complete-transaction.py | 1 + - 1 files changed, 1 insertions(+), 0 deletions(-) - -diff --git a/yum-complete-transaction.py b/yum-complete-transaction.py -index ba41a51..0a9f5df 100755 ---- a/yum-complete-transaction.py -+++ b/yum-complete-transaction.py -@@ -161,6 +161,7 @@ class YumCompleteTransaction(YumUtilBase): - # populate the ts - # run it - -+ self.run_with_package_names.add('yum-utils') - times = [] - for thistime in find_unfinished_transactions(self.conf.persistdir): - if thistime.endswith('disabled'): --- -1.6.6.1 - - -From 37454f631436624cfeda72496757c6206420cc78 Mon Sep 17 00:00:00 2001 -From: James Antill -Date: Mon, 1 Mar 2010 22:58:53 -0500 -Subject: [PATCH 08/24] Add yum-utils to the run_with_packages when running pkg-cleanup - ---- - package-cleanup.py | 2 ++ - 1 files changed, 2 insertions(+), 0 deletions(-) - -diff --git a/package-cleanup.py b/package-cleanup.py -index 3f5507f..ca4aa9a 100755 ---- a/package-cleanup.py -+++ b/package-cleanup.py -@@ -335,6 +335,7 @@ class PackageCleanup(YumUtilBase): - sys.exit(100) - - self._remove_old_kernels(opts.kernelcount, opts.keepdevel) -+ self.run_with_package_names.add('yum-utils') - self.buildTransaction() - if len(self.tsInfo) < 1: - print 'No old kernels to remove' -@@ -371,6 +372,7 @@ class PackageCleanup(YumUtilBase): - if opts.noscripts: - self.conf.tsflags.append('noscripts') - self._remove_old_dupes() -+ self.run_with_package_names.add('yum-utils') - self.buildTransaction() - if len(self.tsInfo) < 1: - print 'No duplicates to remove' --- -1.6.6.1 - - -From 94b52cb5499b47cb4e2b64c8a2e4e7863b2e965e Mon Sep 17 00:00:00 2001 -From: Tim Lauridsen -Date: Tue, 2 Mar 2010 12:18:31 +0100 -Subject: [PATCH 09/24] Make repoclosure work with relative paths, like ./myrepo or just . - ---- - repoclosure.py | 4 ++-- - 1 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/repoclosure.py b/repoclosure.py -index 8c27cdd..9bfc007 100755 ---- a/repoclosure.py -+++ b/repoclosure.py -@@ -60,7 +60,7 @@ def parseArgs(): - parser.add_option("-n", "--newest", default=0, action="store_true", - help="check only the newest packages in the repos") - parser.add_option("--repofrompath", action="append", -- help="specify repoid & paths of additional repositories - unique repoid and complete path required, can be specified multiple times. Example. --repofrompath=myrepo,/path/to/repo") -+ help="specify repoid & paths of additional repositories - unique repoid and path required, can be specified multiple times. Example. --repofrompath=myrepo,/path/to/repo") - parser.add_option("-p", "--pkg", action="append", - help="check closure for this package only") - (opts, args) = parser.parse_args() -@@ -195,12 +195,12 @@ def main(): - # setup the fake repos - for repo in opts.repofrompath: - repoid,repopath = tuple(repo.split(',')) -+ repopath = os.path.abspath(repopath) - if repopath[0] == '/': - baseurl = 'file://' + repopath - else: - baseurl = repopath - -- repopath = os.path.normpath(repopath) - newrepo = yum.yumRepo.YumRepository(repoid) - newrepo.name = repopath - newrepo.baseurl = baseurl --- -1.6.6.1 - - -From 7cece362ea4c2f9c6619339775adb5975e022275 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ville=20Skytt=C3=A4?= -Date: Wed, 10 Mar 2010 21:13:00 +0200 -Subject: [PATCH 10/24] Add bash completion for yumdb. - ---- - yum-utils.bash | 27 +++++++++++++++++++++++++++ - 1 files changed, 27 insertions(+), 0 deletions(-) - -diff --git a/yum-utils.bash b/yum-utils.bash -index 7df1b49..1ff3fbd 100644 ---- a/yum-utils.bash -+++ b/yum-utils.bash -@@ -218,6 +218,33 @@ _yu_repoquery() - } && - complete -F _yu_repoquery -o filenames repoquery repoquery.py - -+# yumdb -+_yu_yumdb() -+{ -+ COMPREPLY=() -+ -+ case "$3" in -+ -h|--help|-version) -+ return 0 -+ ;; -+ -c|--config) -+ COMPREPLY=( $( compgen -f -o plusdirs -X '!*.conf' -- "$2" ) ) -+ return 0 -+ ;; -+ shell) -+ COMPREPLY=( $( compgen -f -o plusdirs -- "$2" ) ) -+ return 0 -+ ;; -+ esac -+ -+ if [ $COMP_CWORD -le 1 ] ; then -+ COMPREPLY=( $( compgen -W 'get set del rename rename-force search -+ exist unset info shell --version --help --noplugins --config' \ -+ -- "$2" ) ) -+ fi -+} && -+complete -F _yu_yumdb -o filenames yumdb yumdb.py -+ - # Local variables: - # mode: shell-script - # sh-basic-offset: 4 --- -1.6.6.1 - - -From 421ba27da401618dd10d1a31801df01b89277585 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ville=20Skytt=C3=A4?= -Date: Fri, 26 Mar 2010 22:58:45 +0200 -Subject: [PATCH 11/24] Complete on repomanage.py, package-cleanup.py, and verifytree.py. - ---- - yum-utils.bash | 6 +++--- - 1 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/yum-utils.bash b/yum-utils.bash -index 1ff3fbd..308d82b 100644 ---- a/yum-utils.bash -+++ b/yum-utils.bash -@@ -23,7 +23,7 @@ _yu_repomanage() - - COMPREPLY=( $( compgen -d -- "$2" ) ) - } && --complete -F _yu_repomanage -o filenames repomanage -+complete -F _yu_repomanage -o filenames repomanage repomanage.py - - # package-cleanup - _yu_package_cleanup() -@@ -49,7 +49,7 @@ _yu_package_cleanup() - --cleandupes --oldkernels --count --keepdevel -c --queryformat' \ - -- "$2" ) ) - } && --complete -F _yu_package_cleanup -o filenames package-cleanup -+complete -F _yu_package_cleanup -o filenames package-cleanup package-cleanup.py - - # verifytree - _yu_verifytree() -@@ -70,7 +70,7 @@ _yu_verifytree() - - COMPREPLY=( $( compgen -d -- "$2" ) ) - } && --complete -F _yu_verifytree -o filenames verifytree -+complete -F _yu_verifytree -o filenames verifytree verifytree.py - - # repo-graph - _yu_repo_graph() --- -1.6.6.1 - - -From 25ceb993e0bda203804c3e8241df5d1942eab303 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ville=20Skytt=C3=A4?= -Date: Tue, 30 Mar 2010 23:04:44 +0300 -Subject: [PATCH 12/24] Use "in" instead of has_key. - ---- - package-cleanup.py | 2 +- - plugins/changelog/changelog.py | 4 ++-- - .../fastestmirror-asyncore.py | 2 +- - plugins/fedorakmod/fedorakmod.py | 9 +++++---- - plugins/fs-snapshot/fs-snapshot.py | 2 +- - .../post-transaction-actions.py | 2 +- - plugins/priorities/priorities.py | 10 +++++----- - plugins/protectbase/protectbase.py | 2 +- - plugins/remove-with-leaves/remove-with-leaves.py | 2 +- - plugins/upgrade-helper/upgrade-helper.py | 8 ++++---- - repo-graph.py | 4 ++-- - repo-rss.py | 2 +- - repoclosure.py | 6 +++--- - repodiff.py | 2 +- - repomanage.py | 4 ++-- - repoquery.py | 6 +++--- - reposync.py | 2 +- - repotrack.py | 5 ++--- - yum-debug-dump.py | 2 +- - 19 files changed, 38 insertions(+), 38 deletions(-) - -diff --git a/package-cleanup.py b/package-cleanup.py -index ca4aa9a..c796286 100755 ---- a/package-cleanup.py -+++ b/package-cleanup.py -@@ -129,7 +129,7 @@ class PackageCleanup(YumUtilBase): - for (req,flags,ver) in po.requires: - - if req.startswith('rpmlib'): continue # ignore rpmlib deps -- if not providers.has_key((req,flags,ver)): -+ if (req,flags,ver) not in providers: - resolve_sack = self.rpmdb.whatProvides(req,flags,ver) - else: - resolve_sack = providers[(req,flags,ver)] -diff --git a/plugins/changelog/changelog.py b/plugins/changelog/changelog.py -index 250326f..007ac6d 100644 ---- a/plugins/changelog/changelog.py -+++ b/plugins/changelog/changelog.py -@@ -58,7 +58,7 @@ def srpmname(pkg): - def _show_changes_changelog(conduit, srpms): - for name in sorted(srpms.keys()): - rpms = [] -- if origpkgs.has_key(name): -+ if name in origpkgs: - for rpm in srpms[name]: - rpms.append("%s" % rpm) - done = False -@@ -85,7 +85,7 @@ def show_changes(conduit, msg): - if not tsmem.updates: - continue - name = srpmname(tsmem.po) -- if srpms.has_key(name): -+ if name in srpms: - srpms[name].append(tsmem.po) - else: - srpms[name] = [tsmem.po] -diff --git a/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py b/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py -index 8129e2c..11c394f 100644 ---- a/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py -+++ b/plugins/fastestmirror/fastestmirror-asyncore/fastestmirror-asyncore.py -@@ -135,7 +135,7 @@ def postreposetup_hook(conduit): - repomirrors = {} - repos = conduit.getRepos() - for repo in repos.listEnabled(): -- if not repomirrors.has_key(str(repo)): -+ if str(repo) not in repomirrors: - repomirrors[str(repo)] = FastestMirror(repo.urls).get_mirrorlist() - if exclude: - for mirror in repomirrors[str(repo)]: -diff --git a/plugins/fedorakmod/fedorakmod.py b/plugins/fedorakmod/fedorakmod.py -index ab9f673..b3aed61 100644 ---- a/plugins/fedorakmod/fedorakmod.py -+++ b/plugins/fedorakmod/fedorakmod.py -@@ -140,7 +140,7 @@ def resolveVersions(packageList): - continue - po.kmodName = name[0] - -- if not pdict.has_key(kernel): -+ if kernel not in pdict: - pdict[kernel] = [po] - else: - sameName = None -@@ -208,7 +208,7 @@ def pinKernels(c, newKernels, installedKernels, modules): - str(runningKernel)) - - table = resolveVersions(modules) -- if not table.has_key(runningKernel): -+ if runningKernel not in table: - c.info(2, "Trying to mimic %s which has no kernel modules installed" \ - % str(runningKernel)) - return -@@ -217,7 +217,7 @@ def pinKernels(c, newKernels, installedKernels, modules): - c.info(2, "kmods in %s: %s" % (str(runningKernel), str(names))) - for kpo in newKernels: - prov = getKernelProvides(kpo)[0] -- if table.has_key(prov): -+ if prov in table: - kmods = [ po.kmodName for po in table[prov] ] - else: - kmods = [] -@@ -255,7 +255,8 @@ def installAllKmods(c, avaModules, modules, kernels): - table = resolveVersions(interesting + modules) - - for kernel in [ getKernelProvides(k)[0] for k in kernels ]: -- if not table.has_key(kernel): continue -+ if kernel not in table: -+ continue - for po in table[kernel]: - if po not in modules: - c.getTsInfo().addTrueInstall(po) -diff --git a/plugins/fs-snapshot/fs-snapshot.py b/plugins/fs-snapshot/fs-snapshot.py -index f0ce051..a83156d 100644 ---- a/plugins/fs-snapshot/fs-snapshot.py -+++ b/plugins/fs-snapshot/fs-snapshot.py -@@ -178,7 +178,7 @@ def _create_snapshot(conduit, snapshot_tag, volume): - """ - if volume["fstype"] == "btrfs": - return _create_btrfs_snapshot(conduit, snapshot_tag, volume) -- elif volume.has_key(lvm_key): -+ elif lvm_key in volume: - return _create_lvm_snapshot(conduit, snapshot_tag, volume) - - return 0 -diff --git a/plugins/post-transaction-actions/post-transaction-actions.py b/plugins/post-transaction-actions/post-transaction-actions.py -index 7b94b90..b4da1ce 100644 ---- a/plugins/post-transaction-actions/post-transaction-actions.py -+++ b/plugins/post-transaction-actions/post-transaction-actions.py -@@ -62,7 +62,7 @@ def parse_actions(ddir, conduit): - - def _get_installed_po(rpmdb, pkgtup): - (n,a,e,v,r) = pkgtup -- if _just_installed.has_key(pkgtup): -+ if pkgtup in _just_installed: - return _just_installed[pkgtup] - return rpmdb.searchNevra(name=n, arch=a, epoch=e, ver=v, rel=r)[0] - -diff --git a/plugins/priorities/priorities.py b/plugins/priorities/priorities.py -index 3650736..ddee1cb 100644 ---- a/plugins/priorities/priorities.py -+++ b/plugins/priorities/priorities.py -@@ -134,11 +134,11 @@ def exclude_hook(conduit): - - if only_samearch: - key = "%s.%s" % (po.name,po.arch) -- if pkg_priorities.has_key(key) and pkg_priorities[key] < repo.priority: -+ if key in pkg_priorities and pkg_priorities[key] < repo.priority: - delPackage = True - else: - key = "%s" % po.name -- if pkg_priorities_archless.has_key(key) and pkg_priorities_archless[key] < repo.priority: -+ if key in pkg_priorities_archless and pkg_priorities_archless[key] < repo.priority: - delPackage = True - - if delPackage: -@@ -150,11 +150,11 @@ def exclude_hook(conduit): - # one of the obsoleted packages is not available through - # a repo with a higher priority. If so, remove this package. - if check_obsoletes: -- if obsoletes.has_key(po.pkgtup): -+ if po.pkgtup in obsoletes: - obsolete_pkgs = obsoletes[po.pkgtup] - for obsolete_pkg in obsolete_pkgs: - pkg_name = obsolete_pkg[0] -- if pkg_priorities_archless.has_key(pkg_name) and pkg_priorities_archless[pkg_name] < repo.priority: -+ if pkg_name in pkg_priorities_archless and pkg_priorities_archless[pkg_name] < repo.priority: - conduit.delPackage(po) - cnt += 1 - conduit.info(3," --> %s from %s excluded (priority)" % (po,po.repoid)) -@@ -173,5 +173,5 @@ def _pkglist_to_dict(pl, priority, addArch = False): - - def _mergeprioritydicts(dict1, dict2): - for package in dict2.keys(): -- if not dict1.has_key(package) or dict2[package] < dict1[package]: -+ if package not in dict1 or dict2[package] < dict1[package]: - dict1[package] = dict2[package] -diff --git a/plugins/protectbase/protectbase.py b/plugins/protectbase/protectbase.py -index 441cdba..37a39dd 100644 ---- a/plugins/protectbase/protectbase.py -+++ b/plugins/protectbase/protectbase.py -@@ -55,7 +55,7 @@ def exclude_hook(conduit): - continue - - for po in conduit.getPackages(repo2): -- if repo1pkgs.has_key(po.name): -+ if po.name in repo1pkgs: - conduit.delPackage(po) - cnt += 1 - -diff --git a/plugins/remove-with-leaves/remove-with-leaves.py b/plugins/remove-with-leaves/remove-with-leaves.py -index 004472f..a808aef 100644 ---- a/plugins/remove-with-leaves/remove-with-leaves.py -+++ b/plugins/remove-with-leaves/remove-with-leaves.py -@@ -42,7 +42,7 @@ remove_always = False - - - def _requires_this_package(rpmdb, pkg): -- if _requires_cache.has_key(pkg): -+ if pkg in _requires_cache: - return _requires_cache[pkg] - - requirers = {} -diff --git a/plugins/upgrade-helper/upgrade-helper.py b/plugins/upgrade-helper/upgrade-helper.py -index fd76c4f..9aa05f0 100644 ---- a/plugins/upgrade-helper/upgrade-helper.py -+++ b/plugins/upgrade-helper/upgrade-helper.py -@@ -68,11 +68,11 @@ def parse_xml(xmlfile): - child_name = ns_cleanup(child.tag) - thisarch = myarch - if child_name == 'removespec': -- if child.attrib.has_key('on_arch'): -+ if 'on_arch' in child.attrib: - thisarch = child.attrib.get('on_arch') -- if child.attrib.has_key('pkgmatch'): -+ if 'pkgmatch' in child.attrib: - thismatch = child.attrib.get('pkgmatch') -- if results.has_key(thisarch): -+ if thisarch in results: - if thismatch not in results[thisarch]: - results[thisarch].append(thismatch) - else: -@@ -89,7 +89,7 @@ def stuff_to_remove(repos): - # return them as the toremove list - - for repo in repos.listEnabled(): -- if repo.repoXML.repoData.has_key('cleanup'): -+ if 'cleanup' in repo.repoXML.repoData: - trf = repo.retrieveMD('cleanup') - tr_dict = parse_xml(trf) - # prune out things like *, ?, *.*, *.*.*.*.* -diff --git a/repo-graph.py b/repo-graph.py -index e771874..bb901a8 100755 ---- a/repo-graph.py -+++ b/repo-graph.py -@@ -69,7 +69,7 @@ class yumQuiet(yum.YumBase): - for r in pkg.returnPrco('requires'): - reqname = r[0] - if reqname.startswith('rpmlib'): continue -- if prov.has_key(reqname): -+ if reqname in prov: - provider = prov[reqname] - cached += 1 - else: -@@ -83,7 +83,7 @@ class yumQuiet(yum.YumBase): - prov[reqname] = provider - if provider == pkg.name: - xx[provider] = None -- if xx.has_key(provider) or provider in skip: -+ if provider in xx or provider in skip: - continue - else: - xx[provider] = None -diff --git a/repo-rss.py b/repo-rss.py -index f395089..845c65e 100755 ---- a/repo-rss.py -+++ b/repo-rss.py -@@ -45,7 +45,7 @@ class YumQuiet(yum.YumBase): - for po in avail: - ftime = int(po.returnSimple('filetime')) - if ftime > recentlimit: -- if not ftimehash.has_key(ftime): -+ if ftime not in ftimehash: - ftimehash[ftime] = [po] - else: - ftimehash[ftime].append(po) -diff --git a/repoclosure.py b/repoclosure.py -index 9bfc007..d9a94d7 100755 ---- a/repoclosure.py -+++ b/repoclosure.py -@@ -153,7 +153,7 @@ class RepoClosure(yum.YumBase): - if req.startswith('rpmlib'): continue # ignore rpmlib deps - - ver = self.evrTupletoVer((reqe, reqv, reqr)) -- if resolved.has_key((req,flags,ver)): -+ if (req,flags,ver) in resolved: - continue - try: - resolve_sack = self.whatProvides(req, flags, ver) -@@ -161,7 +161,7 @@ class RepoClosure(yum.YumBase): - pass - - if len(resolve_sack) < 1: -- if not unresolved.has_key(pkg): -+ if pkg not in unresolved: - unresolved[pkg] = [] - unresolved[pkg].append((req, flags, ver)) - continue -@@ -176,7 +176,7 @@ class RepoClosure(yum.YumBase): - if resolved_by_newest: - resolved[(req,flags,ver)] = 1 - else: -- if not unresolved.has_key(pkg): -+ if pkg not in unresolved: - unresolved[pkg] = [] - unresolved[pkg].append((req, flags, ver)) - -diff --git a/repodiff.py b/repodiff.py -index 5b547c0..ac1865e 100755 ---- a/repodiff.py -+++ b/repodiff.py -@@ -184,7 +184,7 @@ def main(args): - if ygh.remove: - for pkg in sorted(ygh.remove): - print 'Removed package %s' % pkg.name -- if ygh.obsoleted.has_key(pkg): -+ if pkg in ygh.obsoleted: - print 'Obsoleted by %s' % ygh.obsoleted[pkg] - remove_sizechange += (int(pkg.size)) - -diff --git a/repomanage.py b/repomanage.py -index 759bf30..aeff9e5 100755 ---- a/repomanage.py -+++ b/repomanage.py -@@ -158,11 +158,11 @@ def main(args): - (n,a,e,v,r) = pkgtuple - del hdr - -- if not pkgdict.has_key((n,a)): -+ if (n,a) not in pkgdict: - pkgdict[(n,a)] = [] - pkgdict[(n,a)].append((e,v,r)) - -- if not verfile.has_key(pkgtuple): -+ if pkgtuple not in verfile: - verfile[pkgtuple] = [] - verfile[pkgtuple].append(pkg) - -diff --git a/repoquery.py b/repoquery.py -index eb524f3..76b1178 100755 ---- a/repoquery.py -+++ b/repoquery.py -@@ -146,7 +146,7 @@ class pkgQuery: - if len(tmp) > 1: - item = tmp[0] - conv = tmp[1] -- if convertmap.has_key(conv): -+ if conv in convertmap: - convert = convertmap[conv] - else: - raise queryError("Invalid conversion: %s" % conv) -@@ -168,7 +168,7 @@ class pkgQuery: - return self.fmt_queryformat() - - def doQuery(self, method, *args, **kw): -- if std_qf.has_key(method): -+ if method in std_qf: - self.qf = std_qf[method] - return self.fmt_queryformat() - elif hasattr(self, "fmt_%s" % method): -@@ -295,7 +295,7 @@ class instPkgQuery(pkgQuery): - self.classname = 'installed pkg' - - def __getitem__(self, item): -- if self.tagmap.has_key(item): -+ if item in self.tagmap: - return self.pkg.tagByName(self.tagmap[item]) - else: - return pkgQuery.__getitem__(self, item) -diff --git a/reposync.py b/reposync.py -index 5c8ee32..b66e927 100755 ---- a/reposync.py -+++ b/reposync.py -@@ -222,7 +222,7 @@ def main(): - download_set[rpmname] = 1 - - for pkg in current_pkgs: -- if download_set.has_key(pkg): -+ if pkg in download_set: - continue - - if not opts.quiet: -diff --git a/repotrack.py b/repotrack.py -index 35b8375..1c7158a 100755 ---- a/repotrack.py -+++ b/repotrack.py -@@ -214,9 +214,8 @@ def main(): - del this_sack - - for res in pkg_list: -- if res is not None: -- if not unprocessed_pkgs.has_key(res.pkgtup): -- unprocessed_pkgs[res.pkgtup] = res -+ if res is not None and res.pkgtup not in unprocessed_pkgs: -+ unprocessed_pkgs[res.pkgtup] = res - - - -diff --git a/yum-debug-dump.py b/yum-debug-dump.py -index f280d61..0ef90b2 100644 ---- a/yum-debug-dump.py -+++ b/yum-debug-dump.py -@@ -128,7 +128,7 @@ class YumDebugDump(yum.YumBase): - if req.startswith('rpmlib'): - continue # ignore rpmlib deps - -- if not providers.has_key((req,rflags,ver)): -+ if (req,rflags,ver) not in providers: - resolve_sack = self.rpmdb.whatProvides(req,rflags,ver) - else: - resolve_sack = providers[(req,rflags,ver)] --- -1.6.6.1 - - -From 39e3f286c7bb5d09f1440e2a50dd21d0c1603b49 Mon Sep 17 00:00:00 2001 -From: Dennis Gregorovic -Date: Wed, 31 Mar 2010 15:00:54 -0400 -Subject: [PATCH 13/24] Include all packages listed in the pkgonly arg - ---- - repoclosure.py | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/repoclosure.py b/repoclosure.py -index d9a94d7..4c8cfa6 100755 ---- a/repoclosure.py -+++ b/repoclosure.py -@@ -146,7 +146,7 @@ class RepoClosure(yum.YumBase): - pkgs = filter(lambda x: x.arch == 'src', pkgs) - - if self.pkgonly: -- pkgs = filter(lambda x: x.name == self.pkgonly[0], pkgs) -+ pkgs = filter(lambda x: x.name in self.pkgonly, pkgs) - - for pkg in pkgs: - for (req, flags, (reqe, reqv, reqr)) in pkg.returnPrco('requires'): --- -1.6.6.1 - - -From 267c33dd4c50ea9844f3720832c6c65a623d7b4c Mon Sep 17 00:00:00 2001 -From: Dennis Gregorovic -Date: Wed, 31 Mar 2010 15:18:35 -0400 -Subject: [PATCH 14/24] Add a --group flag to filter packages by comps group - ---- - repoclosure.py | 20 +++++++++++++++++--- - 1 files changed, 17 insertions(+), 3 deletions(-) - -diff --git a/repoclosure.py b/repoclosure.py -index 4c8cfa6..88a6adb 100755 ---- a/repoclosure.py -+++ b/repoclosure.py -@@ -63,6 +63,8 @@ def parseArgs(): - help="specify repoid & paths of additional repositories - unique repoid and path required, can be specified multiple times. Example. --repofrompath=myrepo,/path/to/repo") - parser.add_option("-p", "--pkg", action="append", - help="check closure for this package only") -+ parser.add_option("-g", "--group", action="append", -+ help="check closure for packages in this group only") - (opts, args) = parser.parse_args() - return (opts, args) - -@@ -70,13 +72,14 @@ def parseArgs(): - # so we have to do at least some API guarantee stuff. - class RepoClosure(yum.YumBase): - def __init__(self, arch=[], config="/etc/yum.conf", builddeps=False, pkgonly=None, -- basearch=None): -+ basearch=None, grouponly=None): - yum.YumBase.__init__(self) - if basearch: - self.preconf.arch = basearch - self.logger = logging.getLogger("yum.verbose.repoclosure") - self.builddeps = builddeps - self.pkgonly = pkgonly -+ self.grouponly = grouponly - self.doConfigSetup(fn = config,init_plugins=False) - self._rc_arches = arch - -@@ -145,8 +148,18 @@ class RepoClosure(yum.YumBase): - if self.builddeps: - pkgs = filter(lambda x: x.arch == 'src', pkgs) - -- if self.pkgonly: -- pkgs = filter(lambda x: x.name in self.pkgonly, pkgs) -+ pkglist = self.pkgonly -+ if self.grouponly: -+ if not pkglist: -+ pkglist = [] -+ for group in self.grouponly: -+ groupobj = self.comps.return_group(group) -+ if not groupobj: -+ continue -+ pkglist.extend(groupobj.packages) -+ -+ if pkglist: -+ pkgs = filter(lambda x: x.name in pkglist, pkgs) - - for pkg in pkgs: - for (req, flags, (reqe, reqv, reqr)) in pkg.returnPrco('requires'): -@@ -189,6 +202,7 @@ def main(): - config=opts.config, - builddeps=opts.builddeps, - pkgonly=opts.pkg, -+ grouponly=opts.group, - basearch=opts.basearch) - - if opts.repofrompath: --- -1.6.6.1 - - -From 8361ec1ae233a507a05c214fa4966e1f232e7a92 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ville=20Skytt=C3=A4?= -Date: Thu, 1 Apr 2010 21:57:36 +0300 -Subject: [PATCH 15/24] Add repoclosure --group completion. - ---- - yum-utils.bash | 6 +++++- - 1 files changed, 5 insertions(+), 1 deletions(-) - -diff --git a/yum-utils.bash b/yum-utils.bash -index 308d82b..d1f13c9 100644 ---- a/yum-utils.bash -+++ b/yum-utils.bash -@@ -142,10 +142,14 @@ _yu_repoclosure() - type _yum_list &>/dev/null && _yum_list all "$2" - return 0 - ;; -+ -g|--group) -+ type _yum_grouplist &>/dev/null && _yum_grouplist "" "$2" -+ return 0 -+ ;; - esac - - COMPREPLY=( $( compgen -W '--help --config --arch --basearch --builddeps -- --repoid --tempcache --quiet --newest --repofrompath --pkg' \ -+ --repoid --tempcache --quiet --newest --repofrompath --pkg --group' \ - -- "$2" ) ) - } && - complete -F _yu_repoclosure -o filenames repoclosure repoclosure.py --- -1.6.6.1 - - -From 08975b3f4d0f31fe7af7a12443c227bfcbc9f6de Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ville=20Skytt=C3=A4?= -Date: Fri, 2 Apr 2010 11:34:54 +0300 -Subject: [PATCH 16/24] Fix always_print_best_host conf setting. - ---- - plugins/fastestmirror/fastestmirror.py | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/plugins/fastestmirror/fastestmirror.py b/plugins/fastestmirror/fastestmirror.py -index 0701ef7..a8f1ee7 100644 ---- a/plugins/fastestmirror/fastestmirror.py -+++ b/plugins/fastestmirror/fastestmirror.py -@@ -90,7 +90,7 @@ def init_hook(conduit): - - """ - global verbose, socket_timeout, hostfilepath, maxhostfileage, loadcache -- global maxthreads, exclude, prefer, downgrade_ftp -+ global maxthreads, exclude, prefer, downgrade_ftp, always_print_best_host - if hasattr(conduit, 'registerPackageName'): - conduit.registerPackageName("yum-plugin-fastestmirror") - verbose = conduit.confBool('main', 'verbose', default=False) --- -1.6.6.1 - - -From a33e328bd75f1c1828ee287df0582298f625fd93 Mon Sep 17 00:00:00 2001 -From: James Antill -Date: Thu, 8 Apr 2010 15:58:48 -0400 -Subject: [PATCH 17/24] Add yumdb man page, and yumdb copy command - ---- - docs/Makefile | 2 +- - docs/yumdb.8 | 126 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - yum-utils.spec | 1 + - yumdb.py | 14 ++++++ - 4 files changed, 142 insertions(+), 1 deletions(-) - create mode 100644 docs/yumdb.8 - -diff --git a/docs/Makefile b/docs/Makefile -index 7e81045..947498d 100644 ---- a/docs/Makefile -+++ b/docs/Makefile -@@ -2,7 +2,7 @@ DOCS = repoquery package-cleanup repo-rss yumdownloader yum-builddep yum-changel - yum-list-data yum-filter-data yum-verify yum-utils yum-aliases yum-debug-dump yum-versionlock \ - yum-groups-manager debuginfo-install repodiff yum-fs-snapshot - DOCS5 = yum-changelog.conf yum-versionlock.conf yum-fs-snapshot.conf --DOCS8 = yum-security yum-complete-transaction -+DOCS8 = yum-security yum-complete-transaction yumdb - - all: - echo "Nothing to do" -diff --git a/docs/yumdb.8 b/docs/yumdb.8 -new file mode 100644 -index 0000000..7c39459 ---- /dev/null -+++ b/docs/yumdb.8 -@@ -0,0 +1,126 @@ -+.\" yumdb command -+.TH "yumdb" "8" "8 April 2010" "James Antill" "" -+.SH "NAME" -+yumdb command -+.SH "SYNOPSIS" -+\fByumdb\fP [command] [packages ...] -+.SH "DESCRIPTION" -+.PP -+This command is used to query and alter the yum database, which is a simple -+key value store used in conjunction with the rpm database. Any installed package -+can have arbitrary data in the yum database, however the main use case is to -+store extra data about packages as they are installed. -+.PP -+yumdb \fIcommand\fPs are: -+.br -+.IP "\fByumdb get [pkg-wildcard]...\fP" -+.PP -+This command will get the value for the given key, limiting to any specified -+packages. -+.br -+.IP "\fByumdb set [pkg-wildcard]..." -+.PP -+This command will set the value for the given key, to the given value, limiting -+to any specified packages. -+.br -+.IP "\fByumdb del [pkg-wildcard]... -+.PP -+This command will delete the given key, limiting to any specified packages. -+.br -+.IP "\fByumdb rename [pkg-wildcard]... -+.PP -+This command will rename the given old-key, to the given new-key, limiting to -+any specified packages. If the old-key does not exist, nothing happens. -+.br -+.IP "\fByumdb rename-force [pkg-wildcard]... -+.PP -+This command will rename the given old-key, to the given new-key, limiting to -+any specified packages. If the old-key does not exist, new-key is deleted. -+.br -+.IP "\fByumdb copy [pkg-wildcard]... -+.PP -+This command will copy the given old-key, to the given new-key, limiting to -+any specified packages. If the old-key does not exist, nothing happens. -+.br -+.IP "\fByumdb search ... -+.PP -+This command will search all packages for the given key, against any of the -+given wildcard values. -+.br -+.IP "\fByumdb exist [pkg-wildcard]... -+.PP -+This command will print any packages which have the given key, limiting to any -+specified packages. -+.br -+.IP "\fByumdb unset [pkg-wildcard]... -+.PP -+This command will print any packages which do not have the given key, limiting -+to any specified packages. -+.br -+.IP "\fByumdb info [pkg-wildcard]... -+.PP -+This command will all the data stored in the yumdb, limiting to any specified -+packages. -+ -+.SH "EXAMPLES" -+.PP -+List all the packages which don't have a from_repo key/value: -+.IP -+yumdb unset from_repo -+.PP -+List all the packages which were installed as dependencies: -+.IP -+yumdb search reason dep -+ -+.SH "WELL KNOWN KEYS" -+.PP -+Note that there is no limit to the number of keys that can be created or what -+they may contain (for installed packages only). However this is a list of well -+known keys, and what they store. -+.nf -+.br -+.IP "\fBchecksum_data -+.IP "\fBchecksum_type -+.PP -+These keys store the createrepo checksum, and it's type, of the available -+package yum installed. Note that these are used by "yum version" to calculate -+the rpmdb version. -+.br -+.IP "\fBcommand_line -+.PP -+This key stores the entire command line, of the yum command (if it was called). -+.br -+.IP "\fBfrom_repo -+.IP "\fBfrom_repo_revision -+.IP "\fBfrom_repo_timestamp -+.PP -+These keys take values from the available package yum installed, and store the -+repo id, it's revision and timestamp. -+.br -+.IP "\fBreason -+.PP -+This key stores either "user" or "dep", currently. To mark if the user requested -+the package to be installed, or if it was brought in automatically as a -+dependency. Note that this is kept over updates. -+.br -+.IP "\fBreleasever -+.PP -+This key stores the value of releasever, when the package was installed. -+.br -+.IP "\fBinstallonly -+.PP -+If this attribute has the value "keep" then this package will not be -+removed automatically by the installonly process (and does not count towards -+the installonly_limit). -+ -+.SH "SEE ALSO" -+.nf -+.I yum (8) -+.I rpm (8) -+.fi -+ -+.SH "AUTHORS" -+.nf -+James Antill . -+.fi -+ -diff --git a/yum-utils.spec b/yum-utils.spec -index 307a4e8..2f0b955 100644 ---- a/yum-utils.spec -+++ b/yum-utils.spec -@@ -463,6 +463,7 @@ fi - %{_mandir}/man1/yum-debug-dump.1.* - %{_mandir}/man8/yum-complete-transaction.8.* - %{_mandir}/man1/yum-groups-manager.1.* -+%{_mandir}/man8/yumdb.8.* - %{_mandir}/man1/yumdownloader.1.* - - %files -n yum-updateonboot -diff --git a/yumdb.py b/yumdb.py -index 365006e..38ba561 100755 ---- a/yumdb.py -+++ b/yumdb.py -@@ -19,6 +19,7 @@ def setup_opts(): - del [pkg-wildcard]... - rename [pkg-wildcard]... - rename-force [pkg-wildcard]... -+ copy [pkg-wildcard]... - search ... - exist? [pkg-wildcard]... - unset? [pkg-wildcard]... -@@ -68,6 +69,19 @@ def run_cmd(yb, args, inshell=False): - print " " * 4, ynkey, '=', getattr(pkg.yumdb_info, ynkey) - else: - print " " * 4, ynkey, '' -+ elif args[0] == 'copy' and len(args) > 2: -+ args.pop(0) -+ yokey = args.pop(0) -+ ynkey = args.pop(0) -+ for pkg in sorted(yb.rpmdb.returnPackages(patterns=args)): -+ print pkg -+ if yokey in pkg.yumdb_info: -+ setattr(pkg.yumdb_info, ynkey, getattr(pkg.yumdb_info, yokey)) -+ print " " * 4, ynkey, '=', getattr(pkg.yumdb_info, ynkey) -+ elif ynkey in pkg.yumdb_info: -+ print " " * 4, ynkey, '=', getattr(pkg.yumdb_info, ynkey) -+ else: -+ print " " * 4, ynkey, '' - elif args[0] in ['rename-f', 'rename-force'] and len(args) > 2: - args.pop(0) - yokey = args.pop(0) --- -1.6.6.1 - - -From b4c9ab9ecf7e602f78836ba34b1fc3994904e533 Mon Sep 17 00:00:00 2001 -From: James Antill -Date: Thu, 8 Apr 2010 16:02:55 -0400 -Subject: [PATCH 18/24] Use the yum configured cachedir value, in fastestmirror - ---- - plugins/fastestmirror/fastestmirror.conf | 4 +++- - plugins/fastestmirror/fastestmirror.py | 6 ++++-- - 2 files changed, 7 insertions(+), 3 deletions(-) - -diff --git a/plugins/fastestmirror/fastestmirror.conf b/plugins/fastestmirror/fastestmirror.conf -index 32ecec4..c6db0d8 100644 ---- a/plugins/fastestmirror/fastestmirror.conf -+++ b/plugins/fastestmirror/fastestmirror.conf -@@ -3,7 +3,9 @@ enabled=1 - verbose=0 - always_print_best_host = true - socket_timeout=3 --hostfilepath=/var/cache/yum/timedhosts.txt -+# Relative paths are relative to the cachedir (and so works for users as well -+# as root). -+hostfilepath=timedhosts.txt - maxhostfileage=10 - maxthreads=15 - #exclude=.gov, facebook -diff --git a/plugins/fastestmirror/fastestmirror.py b/plugins/fastestmirror/fastestmirror.py -index a8f1ee7..db2fede 100644 ---- a/plugins/fastestmirror/fastestmirror.py -+++ b/plugins/fastestmirror/fastestmirror.py -@@ -14,7 +14,7 @@ - # enabled=1 - # verbose=1 - # socket_timeout=3 --# hostfilepath=/var/cache/yum/timedhosts -+# hostfilepath=timedhosts - # maxhostfileage=10 - # maxthreads=15 - # #exclude=.gov, facebook -@@ -98,7 +98,9 @@ def init_hook(conduit): - default=True) - socket_timeout = conduit.confInt('main', 'socket_timeout', default=3) - hostfilepath = conduit.confString('main', 'hostfilepath', -- default='/var/cache/yum/timedhosts') -+ default='timedhosts') -+ if hostfilepath and hostfilepath[0] != '/': -+ hostfilepath = conduit._base.conf.cachedir + '/' + hostfilepath - maxhostfileage = conduit.confInt('main', 'maxhostfileage', default=10) - maxthreads = conduit.confInt('main', 'maxthreads', default=10) - exclude = conduit.confString('main', 'exclude', default=None) --- -1.6.6.1 - - -From 264a67e713827a086ceef13b163a46dc6f28acf4 Mon Sep 17 00:00:00 2001 -From: Seth Vidal -Date: Fri, 9 Apr 2010 17:01:16 -0400 -Subject: [PATCH 19/24] fixes https://bugzilla.redhat.com/show_bug.cgi?id=580343 - -when we are dealing with compressed comps files just fetch the group -not group_gz ---- - reposync.py | 45 +++++++++++++++++++++++---------------------- - 1 files changed, 23 insertions(+), 22 deletions(-) - -diff --git a/reposync.py b/reposync.py -index b66e927..4d70e30 100755 ---- a/reposync.py -+++ b/reposync.py -@@ -110,7 +110,7 @@ def parseArgs(): - parser.add_option("-p", "--download_path", dest='destdir', - default=os.getcwd(), help="Path to download packages to: defaults to current dir") - parser.add_option("--norepopath", dest='norepopath', default=False, action="store_true", -- help="Don't add the reponame to the download path. Can only be used when syncing a single repository (default is to add the reponame)") -+ help="Don't add the reponame to the download path. Can only be used when syncing a single repository (default is to add the reponame)") - parser.add_option("-g", "--gpgcheck", default=False, action="store_true", - help="Remove packages that fail GPG signature checking after downloading") - parser.add_option("-u", "--urls", default=False, action="store_true", -@@ -176,7 +176,7 @@ def main(): - # enable the ones we like - for repo in myrepos: - repo.enable() -- -+ - # --norepopath can only be sensibly used with a single repository: - if len(my.repos.listEnabled()) > 1 and opts.norepopath: - print >> sys.stderr, "Error: Can't use --norepopath with multiple repositories" -@@ -238,29 +238,30 @@ def main(): - my.logger.error("Could not make repo subdir: %s" % e) - my.closeRpmDB() - sys.exit(1) -- try: # download random other metadata -- if opts.downloadcomps: -- compsfile = repo.getGroups() -- shutil.copyfile(compsfile,"%s/%s" % (local_repo_path,'comps.xml')) -- except yum.Errors.RepoMDError,e : -- if not opts.quiet: -- my.logger.error("Unable to fetch metadata: %s" % e) - -+ if opts.downloadcomps: -+ wanted_types = ['group'] -+ - if opts.downloadmd: -- for ftype in repo.repoXML.fileTypes(): -- if ftype in ['primary', 'primary_db', 'filelists', -- 'filelists_db', 'other', 'other_db']: -- continue -- if opts.downloadcomps and ftype == 'group': -- continue -- try: -- resultfile = repo.retrieveMD(ftype) -- basename = os.path.basename(resultfile) -- shutil.copyfile(resultfile, "%s/%s" % (local_repo_path, basename)) -- except yum.Errors.RepoMDError,e : -- if not opts.quiet: -- my.logger.error("Unable to fetch metadata: %s" % e) -+ wanted_types = repo.repoXML.fileTypes.keys() -+ -+ for ftype in repo.repoXML.fileTypes(): -+ if ftype in ['primary', 'primary_db', 'filelists', -+ 'filelists_db', 'other', 'other_db']: -+ continue -+ if ftype not in wanted_types: -+ continue - -+ try: -+ resultfile = repo.retrieveMD(ftype) -+ basename = os.path.basename(resultfile) -+ if ftype == 'group' and opts.downloadcomps: # for compat with how --downloadcomps saved the comps file always as comps.xml -+ basename = 'comps.xml' -+ shutil.copyfile(resultfile, "%s/%s" % (local_repo_path, basename)) -+ except yum.Errors.RepoMDError,e : -+ if not opts.quiet: -+ my.logger.error("Unable to fetch metadata: %s" % e) -+ - remote_size = 0 - local_size = 0 - if not opts.urls: --- -1.6.6.1 - - -From 4f7fa956098ec985727c5d12e694ccb259a6f037 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ville=20Skytt=C3=A4?= -Date: Sat, 10 Apr 2010 00:21:57 +0300 -Subject: [PATCH 20/24] Add copy to yumdb completions. - ---- - yum-utils.bash | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/yum-utils.bash b/yum-utils.bash -index d1f13c9..54c9ef8 100644 ---- a/yum-utils.bash -+++ b/yum-utils.bash -@@ -242,7 +242,7 @@ _yu_yumdb() - esac - - if [ $COMP_CWORD -le 1 ] ; then -- COMPREPLY=( $( compgen -W 'get set del rename rename-force search -+ COMPREPLY=( $( compgen -W 'get set del rename rename-force copy search - exist unset info shell --version --help --noplugins --config' \ - -- "$2" ) ) - fi --- -1.6.6.1 - - -From 2e5b45d9c4e743f88b085587984a19cc009d282e Mon Sep 17 00:00:00 2001 -From: Michael Schwendt -Date: Tue, 13 Apr 2010 16:19:19 -0400 -Subject: [PATCH 21/24] Get the newer "same day" changelog entries in repodiff. - -Tided by by James. ---- - repodiff.py | 21 ++++++++++++++------- - 1 files changed, 14 insertions(+), 7 deletions(-) - -diff --git a/repodiff.py b/repodiff.py -index ac1865e..ff67fe4 100755 ---- a/repodiff.py -+++ b/repodiff.py -@@ -198,15 +198,22 @@ def main(args): - # for any newer clog in pkg - # print it - oldlogs = oldpkg.changelog -- oldlogs.sort() -- oldlogs.reverse() - if len(oldlogs): -- oldtime = oldlogs[0][0] -- clogdelta = [] -+ # Don't sort as that can screw the order up when time is the -+ # same. -+ oldtime = oldlogs[-1][0] -+ oldauth = oldlogs[-1][2] -+ oldcontent = oldlogs[-1][2] - for (t, author, content) in pkg.changelog: -- if t > oldtime: -- msg += "* %s %s\n%s\n\n" % (datetime.date.fromtimestamp(int(t)).strftime("%a %b %d %Y"), -- to_unicode(author), to_unicode(content)) -+ if t < oldtime: -+ break -+ if ((t == oldtime) and (author == auth) and -+ (content == oldcontent)): -+ break -+ tm = datetime.date.fromtimestamp(int(t)) -+ tm = tm.strftime("%a %b %d %Y") -+ msg += "* %s %s\n%s\n\n" % (tm, to_unicode(author), -+ to_unicode(content)) - if opts.size: - sizechange = int(pkg.size) - int(oldpkg.size) - total_sizechange += sizechange --- -1.6.6.1 - - -From 9afba990529f7b2381f907b5341a45a4e9eac08d Mon Sep 17 00:00:00 2001 -From: James Antill -Date: Tue, 13 Apr 2010 16:44:06 -0400 -Subject: [PATCH 22/24] Stupid typo fix - ---- - repodiff.py | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/repodiff.py b/repodiff.py -index ff67fe4..5f3d5b1 100755 ---- a/repodiff.py -+++ b/repodiff.py -@@ -207,7 +207,7 @@ def main(args): - for (t, author, content) in pkg.changelog: - if t < oldtime: - break -- if ((t == oldtime) and (author == auth) and -+ if ((t == oldtime) and (author == oldauth) and - (content == oldcontent)): - break - tm = datetime.date.fromtimestamp(int(t)) --- -1.6.6.1 - - -From cb745dcbca766c7b1a185b938e8eff9792a1317a Mon Sep 17 00:00:00 2001 -From: James Antill -Date: Tue, 13 Apr 2010 18:05:05 -0400 -Subject: [PATCH 23/24] Fix obsoletes processing in repodiff, also giant speedup. Compared output - both before and after and it was identical: - -1. Original with 3.2.27: 8 minutes 27 seconds - -2. Original with returnNewestByName() speedup: 1 minute 50 seconds. - -3. New repodiff with 3.2.27: 11 seconds. - -...tested with Updates/11 vs. Updates/12 on 2010-04-13. ---- - repodiff.py | 74 ++++++++++++++++++++++++++++++++++++---------------------- - 1 files changed, 46 insertions(+), 28 deletions(-) - -diff --git a/repodiff.py b/repodiff.py -index 5f3d5b1..475f599 100755 ---- a/repodiff.py -+++ b/repodiff.py -@@ -20,6 +20,7 @@ import datetime - import os - import locale - from yum.i18n import to_unicode -+import time - - from optparse import OptionParser - -@@ -59,42 +60,59 @@ class DiffYum(yum.YumBase): - remove = [] - modified = [] - obsoleted = {} # obsoleted = by -- newsack = yum.packageSack.ListPackageSack() -- for repoid in self.dy_repos['new']: -- newsack.addList(self.pkgSack.returnPackages(repoid=repoid)) -- -- oldsack = yum.packageSack.ListPackageSack() -- for repoid in self.dy_repos['old']: -- oldsack.addList(self.pkgSack.returnPackages(repoid=repoid)) -- -- for pkg in newsack.returnNewestByName(): -- tot = self.pkgSack.searchNevra(name=pkg.name) -- if len(tot) == 1: # it's only in new -- add.append(pkg) -- if len(tot) > 1: -- if oldsack.contains(name=pkg.name): -- newest_old = oldsack.returnNewestByName(name=pkg.name)[0] -- if newest_old.EVR != pkg.EVR: -- modified.append((pkg, newest_old)) -+ -+ # Originally we did this by setting up old and new repos. ... but as -+ # a faster way, we can just go through all the pkgs once getting the -+ # newest pkg with a repoid prefix of "old", dito. "new", and then -+ # compare those directly. -+ def _next_old_new(pkgs): -+ """ Returns latest pair of (oldpkg, newpkg) for each package -+ name. If that name doesn't exist, then it returns None for -+ that package. """ -+ lastname = None -+ npkg = opkg = None -+ for pkg in sorted(pkgs): -+ if lastname is None: -+ lastname = pkg.name -+ if lastname != pkg.name: -+ yield opkg, npkg -+ opkg = npkg = None -+ lastname = pkg.name -+ -+ if pkg.repo.id.startswith('old'): -+ opkg = pkg - else: -- add.append(pkg) -+ assert pkg.repo.id.startswith('new') -+ npkg = pkg -+ if opkg is not None or npkg is not None: -+ yield opkg, npkg - -- for pkg in oldsack.returnNewestByName(): -- if len(newsack.searchNevra(name=pkg.name)) == 0: -- remove.append(pkg) -+ for opkg, npkg in _next_old_new(self.pkgSack.returnPackages()): -+ if opkg is None: -+ add.append(npkg) -+ elif npkg is None: -+ remove.append(opkg) -+ elif not npkg.verEQ(opkg): -+ modified.append((npkg, opkg)) - -+ ao = [] -+ for pkg in add: -+ if not pkg.obsoletes: -+ continue -+ ao.append(pkg) - -+ # Note that this _only_ shows something when you have an additional -+ # package obsoleting a removed package. If the obsoleted package is -+ # still there (somewhat "common") or the obsoleter is an update (dito) -+ # you get get hits here. - for po in remove: -- for newpo in add: -- foundit = 0 -- for obs in newpo.obsoletes: -- if po.inPrcoRange('provides', obs): -- foundit = 1 -- obsoleted[po] = newpo -- break -- if foundit: -+ # Remember: Obsoletes are for package names only. -+ poprovtup = (po.name, 'EQ', (po.epoch, po.ver, po.release)) -+ for newpo in ao: -+ if po.inPrcoRange('obsoletes', poprovtup): -+ obsoleted[po] = newpo - break -- -+ - ygh = yum.misc.GenericHolder() - ygh.add = add - ygh.remove = remove --- -1.6.6.1 - - -From 99cbe8d6dad9ca8543dedcc5c12bc0f9fdde200e Mon Sep 17 00:00:00 2001 -From: James Antill -Date: Tue, 13 Apr 2010 18:16:03 -0400 -Subject: [PATCH 24/24] Add message about archlist usage, to stop people being confused. - ---- - docs/repodiff.1 | 2 ++ - repodiff.py | 4 ++++ - 2 files changed, 6 insertions(+), 0 deletions(-) - -diff --git a/docs/repodiff.1 b/docs/repodiff.1 -index e1ffc3b..640b023 100644 ---- a/docs/repodiff.1 -+++ b/docs/repodiff.1 -@@ -16,6 +16,8 @@ Add a repo. as an old repo. - Add a repo. as an new repo. - .IP "\fB\-\-archlist, -a\fP" - Add architectures to change the default from just comparing source packages. -+Note that if you want the same as a native -+"x86_64" architecture machine you need: x86_64,athlon,i686,i586,i486,i386,noarch - .IP "\fB\-\-size, -s\fP" - Ouput additional data about the size of the changes. - .SH "EXAMPLES" -diff --git a/repodiff.py b/repodiff.py -index 475f599..0a1c42f 100755 ---- a/repodiff.py -+++ b/repodiff.py -@@ -239,6 +239,10 @@ def main(args): - - print msg - -+ if (not ygh.add and not ygh.remove and not ygh.modified and -+ not my.pkgSack.searchNevra(arch='src')): -+ print "** No 'src' pkgs in any repo. maybe see docs. on --archlist?" -+ - print 'Summary:' - print 'Added Packages: %s' % len(ygh.add) - print 'Removed Packages: %s' % len(ygh.remove) --- -1.6.6.1 - -commit 9c647a75528566c0abf7bf4d0ed8c8c03e6223a5 -Author: James Antill -Date: Thu Apr 15 00:54:03 2010 -0400 - - Fix typo on obsoletes check, in repodiff - -diff --git a/repodiff.py b/repodiff.py -index 0a1c42f..2810108 100755 ---- a/repodiff.py -+++ b/repodiff.py -@@ -109,7 +109,7 @@ class DiffYum(yum.YumBase): - # Remember: Obsoletes are for package names only. - poprovtup = (po.name, 'EQ', (po.epoch, po.ver, po.release)) - for newpo in ao: -- if po.inPrcoRange('obsoletes', poprovtup): -+ if newpo.inPrcoRange('obsoletes', poprovtup): - obsoleted[po] = newpo - break - -commit 007bf5d4fd3147b51390d7124e64b3e431c831a9 -Author: James Antill -Date: Fri Apr 16 14:50:27 2010 -0400 - - Use the newest old changelog entry, not the oldest ... *sigh* - -diff --git a/repodiff.py b/repodiff.py -index 2810108..bc2cbf7 100755 ---- a/repodiff.py -+++ b/repodiff.py -@@ -219,9 +219,9 @@ def main(args): - if len(oldlogs): - # Don't sort as that can screw the order up when time is the - # same. -- oldtime = oldlogs[-1][0] -- oldauth = oldlogs[-1][2] -- oldcontent = oldlogs[-1][2] -+ oldtime = oldlogs[0][0] -+ oldauth = oldlogs[0][2] -+ oldcontent = oldlogs[0][2] - for (t, author, content) in pkg.changelog: - if t < oldtime: - break -commit d4722ce74fe655888fa9d5b02090a56f6e137ce0 -Author: James Antill -Date: Sun Apr 18 02:08:39 2010 -0400 - - Fix the actual bug in repodiff, comparison - -diff --git a/repodiff.py b/repodiff.py -index bc2cbf7..7ef7c50 100755 ---- a/repodiff.py -+++ b/repodiff.py -@@ -220,7 +220,7 @@ def main(args): - # Don't sort as that can screw the order up when time is the - # same. - oldtime = oldlogs[0][0] -- oldauth = oldlogs[0][2] -+ oldauth = oldlogs[0][1] - oldcontent = oldlogs[0][2] - for (t, author, content) in pkg.changelog: - if t < oldtime: diff --git a/yum-utils.spec b/yum-utils.spec index a81b308..056c8e8 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,24 +1,24 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.26 -Release: 7%{?dist} +Version: 1.1.27 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz -Patch0: yum-utils-HEAD.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.24 +Requires: python >= 2.4 , yum >= 3.2.27 BuildRequires: python >= 2.4 %description yum-utils is a collection of utilities and examples for the yum package manager. It includes utilities by different authors that make yum easier and -more powerful to use. These tools include: debuginfo-install, package-cleanup, -repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, -repotrack, verifytree, yum-builddep, yum-complete-transaction, yumdownloader, -yum-debug-dump, yum-debug-restore and yum-groups-manager. +more powerful to use. These tools include: debuginfo-install, +find-repos-of-install, needs-restarting, package-cleanup, repoclosure, +repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, +repotrack, verifytree, yumdownloader, yum-builddep, yum-complete-transaction, +yum-config-manager, yum-debug-dump, yum-debug-restore and yum-groups-manager. %package -n yum-updateonboot Summary: Run yum update on system boot @@ -163,21 +163,6 @@ to yum and the list-security and info-security commands. The options make it possible to limit list/upgrade of packages to specific security relevant ones. The commands give you the security information. -%package -n yum-plugin-protect-packages -Summary: Yum plugin to prevents Yum from removing itself and other protected packages -Group: System Environment/Base -Provides: yum-protect-packages = %{version}-%{release} -Obsoletes: yum-protect-packages < 1.1.20-0 -Conflicts: yum-protect-packages < 1.1.20-0 -Requires: yum >= 3.0 - -%description -n yum-plugin-protect-packages -this plugin prevents Yum from removing itself and other protected packages. -By default, yum is the only package protected, but by extension this -automatically protects everything on which yum depends (rpm, python, glibc, -and so on).Therefore, the plugin functions well even without -compiling careful lists of all important packages. - %package -n yum-plugin-upgrade-helper Summary: Yum plugin to help upgrades to the next distribution version Group: System Environment/Base @@ -366,8 +351,6 @@ filesystem that is touched by the packages in a yum update or yum remove. %prep %setup -q -%patch0 -p1 - %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -385,7 +368,6 @@ plugins="\ refresh-updatesd \ merge-conf \ security \ - protect-packages \ upgrade-helper \ aliases \ list-data \ @@ -450,6 +432,7 @@ fi %{_bindir}/verifytree %{_bindir}/yumdownloader %{_bindir}/yum-builddep +%{_bindir}/yum-config-manager %{_bindir}/yum-debug-dump %{_bindir}/yum-groups-manager %{_bindir}/yum-debug-restore @@ -532,11 +515,6 @@ fi /usr/lib/yum-plugins/security.* %{_mandir}/man8/yum-security.8.* -%files -n yum-plugin-protect-packages -%defattr(-, root, root) -%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protect-packages.conf -/usr/lib/yum-plugins/protect-packages.* - %files -n yum-plugin-upgrade-helper %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf @@ -623,18 +601,8 @@ fi %{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog -* Sat Apr 17 2010 James Antill - 1.1.26-7 -- Fix the changelog entry time comparison in repodiff, again. - -* Fri Apr 16 2010 James Antill - 1.1.26-4 -- Fix the changelog entry time comparison in repodiff. - -* Wed Apr 14 2010 James Antill - 1.1.26-3 -- Get lots of fixes from latest HEAD. Also: -- --alldeps default in repoquery. -- repoquery will now do a full provides version check. -- Add repoclosure --group. -- Big repodiff speedup. +* Sun Jun 6 2010 Tim Lauridsen +- mark as 1.1.27 * Wed Feb 10 2010 Tim Lauridsen - mark as 1.1.26 From 07f0aa605ef8fd485e530321c103d93b80839280 Mon Sep 17 00:00:00 2001 From: James Antill Date: Mon, 7 Jun 2010 18:38:25 +0000 Subject: [PATCH 078/150] - Fix repoquery in 1.1.27 --- repoquery-not-installed.patch | 19 +++++++++++++++++++ yum-utils.spec | 8 +++++++- 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 repoquery-not-installed.patch diff --git a/repoquery-not-installed.patch b/repoquery-not-installed.patch new file mode 100644 index 0000000..de2f58b --- /dev/null +++ b/repoquery-not-installed.patch @@ -0,0 +1,19 @@ +commit 123d241f35401386f514cee852a0ea2f174be500 +Author: James Antill +Date: Sun Jun 6 23:10:37 2010 -0400 + + Fix stupid typo in repoquery, let non-installed packages work again + +diff --git a/repoquery.py b/repoquery.py +index 2992b2d..1186782 100755 +--- a/repoquery.py ++++ b/repoquery.py +@@ -556,7 +556,7 @@ class YumBaseQuery(yum.YumBase): + pkg = iq + else: + if rq is None: +- rq = instPkgQuery(pkg, qf) ++ rq = repoPkgQuery(pkg, qf) + rq.pkg = pkg + rq.name = pkg.name + pkg = rq diff --git a/yum-utils.spec b/yum-utils.spec index 056c8e8..b7ebf23 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,10 +1,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.27 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz +Patch0: repoquery-not-installed.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -351,6 +352,8 @@ filesystem that is touched by the packages in a yum update or yum remove. %prep %setup -q +%patch0 -p1 + %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -601,6 +604,9 @@ fi %{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog +* Sun Jun 6 2010 James Antill +- Fix repoquery in 1.1.27 + * Sun Jun 6 2010 Tim Lauridsen - mark as 1.1.27 From e6b62b67de75ea2bc9ad75c8d2e64ff1e79202c6 Mon Sep 17 00:00:00 2001 From: Seth Vidal Date: Wed, 7 Jul 2010 21:42:55 +0000 Subject: [PATCH 079/150] add copying to each subpkg/plugin as per the licensing guideline change --- yum-utils.spec | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index b7ebf23..06b687b 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.27 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -457,30 +457,33 @@ fi %files -n yum-updateonboot %defattr(-, root, root) -%doc updateonboot/README +%doc updateonboot/README COPYING %config(noreplace) %{_sysconfdir}/sysconfig/yum-updateonboot %{_initrddir}/yum-updateonboot %files -n yum-plugin-changelog %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/changelog.conf +%doc COPYING /usr/lib/yum-plugins/changelog.* %{_mandir}/man1/yum-changelog.1.* %{_mandir}/man5/yum-changelog.conf.5.* %files -n yum-plugin-fastestmirror %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fastestmirror.conf /usr/lib/yum-plugins/fastestmirror*.* %files -n yum-plugin-protectbase %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protectbase.conf /usr/lib/yum-plugins/protectbase.* %files -n yum-plugin-versionlock %defattr(-, root, root) -%doc plugins/versionlock/README +%doc plugins/versionlock/README COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.conf %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.list /usr/lib/yum-plugins/versionlock.* @@ -489,42 +492,50 @@ fi %files -n yum-plugin-tsflags %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tsflags.conf /usr/lib/yum-plugins/tsflags.* %files -n yum-plugin-downloadonly %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/downloadonly.conf /usr/lib/yum-plugins/downloadonly.* %files -n yum-plugin-priorities %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/priorities.conf /usr/lib/yum-plugins/priorities.* %files -n yum-plugin-refresh-updatesd %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/refresh-updatesd.conf /usr/lib/yum-plugins/refresh-updatesd.* %files -n yum-plugin-merge-conf %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/merge-conf.conf /usr/lib/yum-plugins/merge-conf.* %files -n yum-plugin-security %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/security.conf /usr/lib/yum-plugins/security.* %{_mandir}/man8/yum-security.8.* %files -n yum-plugin-upgrade-helper %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf /usr/lib/yum-plugins/upgrade-helper.* %files -n yum-plugin-aliases %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/aliases.conf %config(noreplace) %{_sysconfdir}/yum/aliases.conf /usr/lib/yum-plugins/aliases.* @@ -532,43 +543,51 @@ fi %files -n yum-plugin-list-data %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/list-data.conf /usr/lib/yum-plugins/list-data.* %{_mandir}/man1/yum-list-data.1.* %files -n yum-plugin-filter-data %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/filter-data.conf /usr/lib/yum-plugins/filter-data.* %{_mandir}/man1/yum-filter-data.1.* %files -n yum-plugin-tmprepo %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tmprepo.conf /usr/lib/yum-plugins/tmprepo.* %files -n yum-plugin-verify %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/verify.conf /usr/lib/yum-plugins/verify.* %{_mandir}/man1/yum-verify.1.* %files -n yum-plugin-keys %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/keys.conf /usr/lib/yum-plugins/keys.* %files -n yum-NetworkManager-dispatcher %defattr(-, root, root) +%doc COPYING /etc/NetworkManager/dispatcher.d/* %files -n yum-plugin-remove-with-leaves %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/remove-with-leaves.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/remove-with-leaves.conf %files -n yum-plugin-post-transaction-actions %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/post-transaction-actions.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/post-transaction-actions.conf %doc plugins/post-transaction-actions/sample.action @@ -577,33 +596,41 @@ fi %files -n yum-plugin-rpm-warm-cache %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/rpm-warm-cache.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/rpm-warm-cache.conf %files -n yum-plugin-auto-update-debug-info %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/auto-update-debuginfo.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/auto-update-debuginfo.conf %files -n yum-plugin-show-leaves %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/show-leaves.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/show-leaves.conf %files -n yum-plugin-local %defattr(-, root, root) +%doc COPYING %ghost %{_sysconfdir}/yum.repos.d/_local.repo %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/local.conf /usr/lib/yum-plugins/local.* %files -n yum-plugin-fs-snapshot %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fs-snapshot.conf /usr/lib/yum-plugins/fs-snapshot.* %{_mandir}/man1/yum-fs-snapshot.1.* %{_mandir}/man5/yum-fs-snapshot.conf.5.* %changelog +* Wed Jul 7 2010 Seth Vidal +- add license files to each subpkg that doesn't require yum-utils directly + * Sun Jun 6 2010 James Antill - Fix repoquery in 1.1.27 From cb6f1deb916950c2845c85129c5c2dbfcdeb7d6b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 29 Jul 2010 18:32:24 +0000 Subject: [PATCH 080/150] dist-git conversion --- .cvsignore => .gitignore | 0 Makefile | 21 --------------------- 2 files changed, 21 deletions(-) rename .cvsignore => .gitignore (100%) delete mode 100644 Makefile diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore diff --git a/Makefile b/Makefile deleted file mode 100644 index 1fb2032..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: yum-utils -# $Id: Makefile,v 1.1 2005/06/11 19:27:59 skvidal Exp $ -NAME := yum-utils -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) From 704111794ae9ff8e55a65555c90d515a7868e58b Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Tue, 3 Aug 2010 18:02:53 +0200 Subject: [PATCH 081/150] release 1.1.28-1 --- .gitignore | 1 + sources | 2 +- yum-utils.spec | 58 +++++++++++++++++++------------------------------- 3 files changed, 24 insertions(+), 37 deletions(-) diff --git a/.gitignore b/.gitignore index 0a39cad..f134a0e 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ yum-utils-1.1.27.tar.gz +yum-utils-1.1.28.tar.gz diff --git a/sources b/sources index 4695520..7e2a9c1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -e5bf013b43cd898ef5483798e64317f9 yum-utils-1.1.27.tar.gz +beac7f26fe6f2f5f5faf81dd4adb3c69 yum-utils-1.1.28.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 06b687b..bf58c7d 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,11 +1,10 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.27 -Release: 3%{?dist} +Version: 1.1.28 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz -Patch0: repoquery-not-installed.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -349,11 +348,19 @@ Requires: yum >= 3.2.22 When this plugin is installed it will automatically snapshot any filesystem that is touched by the packages in a yum update or yum remove. +%package -n yum-plugin-ps +Summary: Yum plugin to look at processes, with respect to packages +Group: System Environment/Base +Requires: yum >= 3.2.27 + +%description -n yum-plugin-ps +When this plugin is installed it adds the yum command "ps", which allows you +to see which running processes are accociated with which packages (and if they +need rebooting, or have updates, etc.) + %prep %setup -q -%patch0 -p1 - %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -385,6 +392,7 @@ plugins="\ show-leaves \ local \ fs-snapshot \ + ps \ " mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -457,33 +465,30 @@ fi %files -n yum-updateonboot %defattr(-, root, root) -%doc updateonboot/README COPYING +%doc updateonboot/README %config(noreplace) %{_sysconfdir}/sysconfig/yum-updateonboot %{_initrddir}/yum-updateonboot %files -n yum-plugin-changelog %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/changelog.conf -%doc COPYING /usr/lib/yum-plugins/changelog.* %{_mandir}/man1/yum-changelog.1.* %{_mandir}/man5/yum-changelog.conf.5.* %files -n yum-plugin-fastestmirror %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fastestmirror.conf /usr/lib/yum-plugins/fastestmirror*.* %files -n yum-plugin-protectbase %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protectbase.conf /usr/lib/yum-plugins/protectbase.* %files -n yum-plugin-versionlock %defattr(-, root, root) -%doc plugins/versionlock/README COPYING +%doc plugins/versionlock/README %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.conf %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.list /usr/lib/yum-plugins/versionlock.* @@ -492,50 +497,42 @@ fi %files -n yum-plugin-tsflags %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tsflags.conf /usr/lib/yum-plugins/tsflags.* %files -n yum-plugin-downloadonly %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/downloadonly.conf /usr/lib/yum-plugins/downloadonly.* %files -n yum-plugin-priorities %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/priorities.conf /usr/lib/yum-plugins/priorities.* %files -n yum-plugin-refresh-updatesd %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/refresh-updatesd.conf /usr/lib/yum-plugins/refresh-updatesd.* %files -n yum-plugin-merge-conf %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/merge-conf.conf /usr/lib/yum-plugins/merge-conf.* %files -n yum-plugin-security %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/security.conf /usr/lib/yum-plugins/security.* %{_mandir}/man8/yum-security.8.* %files -n yum-plugin-upgrade-helper %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf /usr/lib/yum-plugins/upgrade-helper.* %files -n yum-plugin-aliases %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/aliases.conf %config(noreplace) %{_sysconfdir}/yum/aliases.conf /usr/lib/yum-plugins/aliases.* @@ -543,51 +540,43 @@ fi %files -n yum-plugin-list-data %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/list-data.conf /usr/lib/yum-plugins/list-data.* %{_mandir}/man1/yum-list-data.1.* %files -n yum-plugin-filter-data %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/filter-data.conf /usr/lib/yum-plugins/filter-data.* %{_mandir}/man1/yum-filter-data.1.* %files -n yum-plugin-tmprepo %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tmprepo.conf /usr/lib/yum-plugins/tmprepo.* %files -n yum-plugin-verify %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/verify.conf /usr/lib/yum-plugins/verify.* %{_mandir}/man1/yum-verify.1.* %files -n yum-plugin-keys %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/keys.conf /usr/lib/yum-plugins/keys.* %files -n yum-NetworkManager-dispatcher %defattr(-, root, root) -%doc COPYING /etc/NetworkManager/dispatcher.d/* %files -n yum-plugin-remove-with-leaves %defattr(-, root, root) -%doc COPYING /usr/lib/yum-plugins/remove-with-leaves.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/remove-with-leaves.conf %files -n yum-plugin-post-transaction-actions %defattr(-, root, root) -%doc COPYING /usr/lib/yum-plugins/post-transaction-actions.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/post-transaction-actions.conf %doc plugins/post-transaction-actions/sample.action @@ -596,43 +585,40 @@ fi %files -n yum-plugin-rpm-warm-cache %defattr(-, root, root) -%doc COPYING /usr/lib/yum-plugins/rpm-warm-cache.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/rpm-warm-cache.conf %files -n yum-plugin-auto-update-debug-info %defattr(-, root, root) -%doc COPYING /usr/lib/yum-plugins/auto-update-debuginfo.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/auto-update-debuginfo.conf %files -n yum-plugin-show-leaves %defattr(-, root, root) -%doc COPYING /usr/lib/yum-plugins/show-leaves.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/show-leaves.conf %files -n yum-plugin-local %defattr(-, root, root) -%doc COPYING %ghost %{_sysconfdir}/yum.repos.d/_local.repo %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/local.conf /usr/lib/yum-plugins/local.* %files -n yum-plugin-fs-snapshot %defattr(-, root, root) -%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fs-snapshot.conf /usr/lib/yum-plugins/fs-snapshot.* %{_mandir}/man1/yum-fs-snapshot.1.* %{_mandir}/man5/yum-fs-snapshot.conf.5.* -%changelog -* Wed Jul 7 2010 Seth Vidal -- add license files to each subpkg that doesn't require yum-utils directly +%files -n yum-plugin-ps +%defattr(-, root, root) +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/ps.conf +/usr/lib/yum-plugins/ps.* -* Sun Jun 6 2010 James Antill -- Fix repoquery in 1.1.27 +%changelog +* Tue Aug 3 2010 Tim Lauridsen +- mark as 1.1.28 * Sun Jun 6 2010 Tim Lauridsen - mark as 1.1.27 From 22b646cca443bc52da12d4717d592a20c0c6d3d5 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Sun, 7 Nov 2010 10:23:34 +0100 Subject: [PATCH 082/150] Release 1.1.29-1 --- .gitignore | 1 + sources | 2 +- yum-utils.spec | 41 +++++++++++++++++++++++++++++++++++++---- 3 files changed, 39 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index f134a0e..df6c964 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ yum-utils-1.1.27.tar.gz yum-utils-1.1.28.tar.gz +/yum-utils-1.1.29.tar.gz diff --git a/sources b/sources index 7e2a9c1..489b965 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -beac7f26fe6f2f5f5faf81dd4adb3c69 yum-utils-1.1.28.tar.gz +9848c4e5f161c43ffb438126403c9093 yum-utils-1.1.29.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index bf58c7d..4ed0f09 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,6 +1,6 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.28 +Version: 1.1.29 Release: 1%{?dist} License: GPLv2+ Group: Development/Tools @@ -8,9 +8,10 @@ Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.27 +Requires: python >= 2.4 , yum >= 3.2.29 BuildRequires: python >= 2.4 + %description yum-utils is a collection of utilities and examples for the yum package manager. It includes utilities by different authors that make yum easier and @@ -447,6 +448,7 @@ fi %{_bindir}/yum-debug-dump %{_bindir}/yum-groups-manager %{_bindir}/yum-debug-restore +%{_bindir}/show-installed %{_sbindir}/yum-complete-transaction %{_sbindir}/yumdb %{_mandir}/man1/yum-utils.1.* @@ -465,30 +467,33 @@ fi %files -n yum-updateonboot %defattr(-, root, root) -%doc updateonboot/README +%doc updateonboot/README COPYING %config(noreplace) %{_sysconfdir}/sysconfig/yum-updateonboot %{_initrddir}/yum-updateonboot %files -n yum-plugin-changelog %defattr(-, root, root) %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/changelog.conf +%doc COPYING /usr/lib/yum-plugins/changelog.* %{_mandir}/man1/yum-changelog.1.* %{_mandir}/man5/yum-changelog.conf.5.* %files -n yum-plugin-fastestmirror %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fastestmirror.conf /usr/lib/yum-plugins/fastestmirror*.* %files -n yum-plugin-protectbase %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/protectbase.conf /usr/lib/yum-plugins/protectbase.* %files -n yum-plugin-versionlock %defattr(-, root, root) -%doc plugins/versionlock/README +%doc plugins/versionlock/README COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.conf %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/versionlock.list /usr/lib/yum-plugins/versionlock.* @@ -497,42 +502,50 @@ fi %files -n yum-plugin-tsflags %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tsflags.conf /usr/lib/yum-plugins/tsflags.* %files -n yum-plugin-downloadonly %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/downloadonly.conf /usr/lib/yum-plugins/downloadonly.* %files -n yum-plugin-priorities %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/priorities.conf /usr/lib/yum-plugins/priorities.* %files -n yum-plugin-refresh-updatesd %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/refresh-updatesd.conf /usr/lib/yum-plugins/refresh-updatesd.* %files -n yum-plugin-merge-conf %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/merge-conf.conf /usr/lib/yum-plugins/merge-conf.* %files -n yum-plugin-security %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/security.conf /usr/lib/yum-plugins/security.* %{_mandir}/man8/yum-security.8.* %files -n yum-plugin-upgrade-helper %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/upgrade-helper.conf /usr/lib/yum-plugins/upgrade-helper.* %files -n yum-plugin-aliases %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/aliases.conf %config(noreplace) %{_sysconfdir}/yum/aliases.conf /usr/lib/yum-plugins/aliases.* @@ -540,43 +553,51 @@ fi %files -n yum-plugin-list-data %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/list-data.conf /usr/lib/yum-plugins/list-data.* %{_mandir}/man1/yum-list-data.1.* %files -n yum-plugin-filter-data %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/filter-data.conf /usr/lib/yum-plugins/filter-data.* %{_mandir}/man1/yum-filter-data.1.* %files -n yum-plugin-tmprepo %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/tmprepo.conf /usr/lib/yum-plugins/tmprepo.* %files -n yum-plugin-verify %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/verify.conf /usr/lib/yum-plugins/verify.* %{_mandir}/man1/yum-verify.1.* %files -n yum-plugin-keys %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/keys.conf /usr/lib/yum-plugins/keys.* %files -n yum-NetworkManager-dispatcher %defattr(-, root, root) +%doc COPYING /etc/NetworkManager/dispatcher.d/* %files -n yum-plugin-remove-with-leaves %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/remove-with-leaves.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/remove-with-leaves.conf %files -n yum-plugin-post-transaction-actions %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/post-transaction-actions.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/post-transaction-actions.conf %doc plugins/post-transaction-actions/sample.action @@ -585,27 +606,32 @@ fi %files -n yum-plugin-rpm-warm-cache %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/rpm-warm-cache.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/rpm-warm-cache.conf %files -n yum-plugin-auto-update-debug-info %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/auto-update-debuginfo.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/auto-update-debuginfo.conf %files -n yum-plugin-show-leaves %defattr(-, root, root) +%doc COPYING /usr/lib/yum-plugins/show-leaves.* %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/show-leaves.conf %files -n yum-plugin-local %defattr(-, root, root) +%doc COPYING %ghost %{_sysconfdir}/yum.repos.d/_local.repo %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/local.conf /usr/lib/yum-plugins/local.* %files -n yum-plugin-fs-snapshot %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/fs-snapshot.conf /usr/lib/yum-plugins/fs-snapshot.* %{_mandir}/man1/yum-fs-snapshot.1.* @@ -613,10 +639,17 @@ fi %files -n yum-plugin-ps %defattr(-, root, root) +%doc COPYING %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/ps.conf /usr/lib/yum-plugins/ps.* %changelog +* Sun Nov 7 2010 Tim Lauridsen +- mark as 1.1.29 + +* Tue Aug 3 2010 Seth Vidal +- add COPYING docs to all the plugins to make fedora(and Tim) happy. :) + * Tue Aug 3 2010 Tim Lauridsen - mark as 1.1.28 From dd7a90cb887113f53c9b67c8a84af322c5a6de70 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Sun, 7 Nov 2010 10:38:23 +0100 Subject: [PATCH 083/150] Release 1.1.29-2 - fix yum requirement to match yum in current rawhide --- yum-utils.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index 4ed0f09..457025f 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,14 +1,14 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.29 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.29 +Requires: python >= 2.4 , yum >= 3.2.28-12 BuildRequires: python >= 2.4 @@ -644,6 +644,9 @@ fi /usr/lib/yum-plugins/ps.* %changelog +* Sun Nov 7 2010 Tim Lauridsen +- Change requirement yum >= 3.2.29 to yum >= 3.2.28-12 (current rawhide is close to yum HEAD) + * Sun Nov 7 2010 Tim Lauridsen - mark as 1.1.29 From 2a663b1964214725e489ef4e9e60afbb5bd6589f Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Fri, 14 Jan 2011 18:40:06 +0100 Subject: [PATCH 084/150] Release 1.1.30-1 --- .gitignore | 1 + sources | 2 +- yum-utils.spec | 31 ++++++++++++++++++++++++------- 3 files changed, 26 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index df6c964..cc7df06 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ yum-utils-1.1.27.tar.gz yum-utils-1.1.28.tar.gz /yum-utils-1.1.29.tar.gz +/yum-utils-1.1.30.tar.gz diff --git a/sources b/sources index 489b965..d32dce8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9848c4e5f161c43ffb438126403c9093 yum-utils-1.1.29.tar.gz +1b085c0fe375c3d306dbb44f6d7fa28a yum-utils-1.1.30.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 457025f..258f525 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -1,15 +1,21 @@ +%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} + Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.29 -Release: 2%{?dist} +Version: 1.1.30 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: python >= 2.4 , yum >= 3.2.28-12 -BuildRequires: python >= 2.4 +Requires: yum >= 3.2.29 +Requires: python-kitchen +BuildRequires: python-devel >= 2.4 +BuildRequires: gettext +BuildRequires: intltool +Provides: yum-utils-translations = %{version}-%{release} %description @@ -184,6 +190,7 @@ Obsoletes: yum-aliases < 1.1.20-0 Conflicts: yum-aliases < 1.1.20-0 # Requires args_hook Requires: yum >= 3.2.23 +Requires: yum-utils-translations = %{version}-%{release} %description -n yum-plugin-aliases This plugin adds the command alias, and parses the aliases config. file to @@ -367,6 +374,8 @@ rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install make -C updateonboot DESTDIR=$RPM_BUILD_ROOT install +%find_lang %name + # Plugins to install plugins="\ changelog \ @@ -411,6 +420,7 @@ install -m 644 versionlock/versionlock.list $RPM_BUILD_ROOT/%{_sysconfdir}/yum/p mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum.repos.d touch $RPM_BUILD_ROOT%{_sysconfdir}/yum.repos.d/_local.repo + %clean rm -rf $RPM_BUILD_ROOT @@ -423,7 +433,7 @@ if [ $1 = 0 ]; then /sbin/chkconfig --del yum-updateonboot >/dev/null 2>&1 || :; fi -%files +%files -f %{name}.lang %defattr(-, root, root) %doc README yum-util-cli-template %doc COPYING @@ -451,6 +461,7 @@ fi %{_bindir}/show-installed %{_sbindir}/yum-complete-transaction %{_sbindir}/yumdb +%{python_sitelib}/yumutils/ %{_mandir}/man1/yum-utils.1.* %{_mandir}/man1/debuginfo-install.1.* %{_mandir}/man1/package-cleanup.1.* @@ -644,8 +655,14 @@ fi /usr/lib/yum-plugins/ps.* %changelog -* Sun Nov 7 2010 Tim Lauridsen -- Change requirement yum >= 3.2.29 to yum >= 3.2.28-12 (current rawhide is close to yum HEAD) +* Thu Jan 13 2011 Tim Lauridsen +- mark as 1.1.30 + +* Mon Jan 3 2011 Tim Lauridsen +- Added yumutils python module + +* Thu Dec 30 2010 Tim Lauridsen +- Added Translation support and need Requires, BuildRequires * Sun Nov 7 2010 Tim Lauridsen - mark as 1.1.29 From 4322fb85787a09cc20a632a05efc85c593ef9181 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Tue, 8 Feb 2011 02:25:50 -0600 Subject: [PATCH 085/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild --- yum-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index 258f525..8140259 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -3,7 +3,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.30 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -655,6 +655,9 @@ fi /usr/lib/yum-plugins/ps.* %changelog +* Tue Feb 08 2011 Fedora Release Engineering - 1.1.30-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + * Thu Jan 13 2011 Tim Lauridsen - mark as 1.1.30 From 1509339c521101653b5a32054952b01d9d26176c Mon Sep 17 00:00:00 2001 From: James Antill Date: Thu, 28 Jul 2011 12:26:35 -0400 Subject: [PATCH 086/150] Fix for BuildTrans no return value checking, needed for mock. Resolves: bug#716267 --- BZ-716267-BuildTrans-ret-check.patch | 77 ++++++++++++++++++++++++++++ yum-utils.spec | 9 +++- 2 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 BZ-716267-BuildTrans-ret-check.patch diff --git a/BZ-716267-BuildTrans-ret-check.patch b/BZ-716267-BuildTrans-ret-check.patch new file mode 100644 index 0000000..76ce631 --- /dev/null +++ b/BZ-716267-BuildTrans-ret-check.patch @@ -0,0 +1,77 @@ +commit 32ec6213b9f698eb48c573b16e8bae40eb7dca8c +Author: Ville Skyttä +Date: Fri Jun 24 18:44:32 2011 +0300 + + Check doUtilBuildTransaction return value, exit early on failure. BZ 716267 + +diff --git a/debuginfo-install.py b/debuginfo-install.py +index 0891f63..177c6c3 100755 +--- a/debuginfo-install.py ++++ b/debuginfo-install.py +@@ -100,7 +100,9 @@ class DebugInfoInstall(YumUtilBase): + + self.debugInfo_main() + if hasattr(self, 'doUtilBuildTransaction'): +- self.doUtilBuildTransaction() ++ errc = self.doUtilBuildTransaction() ++ if errc: ++ sys.exit(errc) + else: + try: + self.buildTransaction() +diff --git a/package-cleanup.py b/package-cleanup.py +index a4eb7d9..4794369 100755 +--- a/package-cleanup.py ++++ b/package-cleanup.py +@@ -343,7 +343,9 @@ class PackageCleanup(YumUtilBase): + self._remove_old_kernels(opts.kernelcount, opts.keepdevel) + self.run_with_package_names.add('yum-utils') + if hasattr(self, 'doUtilBuildTransaction'): +- self.doUtilBuildTransaction() ++ errc = self.doUtilBuildTransaction() ++ if errc: ++ sys.exit(errc) + else: + try: + self.buildTransaction() +@@ -392,7 +394,9 @@ class PackageCleanup(YumUtilBase): + self.run_with_package_names.add('yum-utils') + + if hasattr(self, 'doUtilBuildTransaction'): +- self.doUtilBuildTransaction() ++ errc = self.doUtilBuildTransaction() ++ if errc: ++ sys.exit(errc) + else: + try: + self.buildTransaction() +diff --git a/yum-builddep.py b/yum-builddep.py +index d13c90e..d7a37c3 100755 +--- a/yum-builddep.py ++++ b/yum-builddep.py +@@ -98,7 +98,9 @@ class YumBuildDep(YumUtilBase): + sys.exit(1) + + if hasattr(self, 'doUtilBuildTransaction'): +- self.doUtilBuildTransaction() ++ errc = self.doUtilBuildTransaction() ++ if errc: ++ sys.exit(errc) + else: + try: + self.buildTransaction() +diff --git a/yum-complete-transaction.py b/yum-complete-transaction.py +index fde1f35..c5074ab 100755 +--- a/yum-complete-transaction.py ++++ b/yum-complete-transaction.py +@@ -208,7 +208,9 @@ class YumCompleteTransaction(YumUtilBase): + + current_count = len(self.tsInfo) + if hasattr(self, 'doUtilBuildTransaction'): +- self.doUtilBuildTransaction(unfinished_transactions_check=False) ++ errc = self.doUtilBuildTransaction(unfinished_transactions_check=False) ++ if errc: ++ sys.exit(errc) + else: + try: + self.buildTransaction(unfinished_transactions_check=False) diff --git a/yum-utils.spec b/yum-utils.spec index 8140259..5c72848 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -3,11 +3,12 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.30 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz URL: http://yum.baseurl.org/download/yum-utils/ +Patch0: BZ-716267-BuildTrans-ret-check.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch Requires: yum >= 3.2.29 @@ -369,6 +370,8 @@ need rebooting, or have updates, etc.) %prep %setup -q +%patch0 -p1 + %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -655,6 +658,10 @@ fi /usr/lib/yum-plugins/ps.* %changelog +* Thu Jul 28 2011 James Antill +- Fix for BuildTrans no return value checking, needed for mock. +- Resolves: bug#716267 + * Tue Feb 08 2011 Fedora Release Engineering - 1.1.30-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild From daf4e7eed3a535f34cf575d170e55c4544df1694 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 10 Aug 2011 18:20:47 +0200 Subject: [PATCH 087/150] Release 1.1.31-1 --- .gitignore | 1 + sources | 2 +- yum-utils.spec | 37 ++++++++++++++++++++++++++++++------- 3 files changed, 32 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index cc7df06..137fcee 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ yum-utils-1.1.27.tar.gz yum-utils-1.1.28.tar.gz /yum-utils-1.1.29.tar.gz /yum-utils-1.1.30.tar.gz +/yum-utils-1.1.31.tar.gz diff --git a/sources b/sources index d32dce8..09a2534 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -1b085c0fe375c3d306dbb44f6d7fa28a yum-utils-1.1.30.tar.gz +b2859b89321b98f2581243536e1b4993 yum-utils-1.1.31.tar.gz diff --git a/yum-utils.spec b/yum-utils.spec index 5c72848..4524bbe 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -2,13 +2,12 @@ Summary: Utilities based around the yum package manager Name: yum-utils -Version: 1.1.30 -Release: 3%{?dist} +Version: 1.1.31 +Release: 1%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz URL: http://yum.baseurl.org/download/yum-utils/ -Patch0: BZ-716267-BuildTrans-ret-check.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch Requires: yum >= 3.2.29 @@ -25,8 +24,9 @@ manager. It includes utilities by different authors that make yum easier and more powerful to use. These tools include: debuginfo-install, find-repos-of-install, needs-restarting, package-cleanup, repoclosure, repodiff, repo-graph, repomanage, repoquery, repo-rss, reposync, -repotrack, verifytree, yumdownloader, yum-builddep, yum-complete-transaction, -yum-config-manager, yum-debug-dump, yum-debug-restore and yum-groups-manager. +repotrack, show-installed, show-changed-rco, verifytree, yumdownloader, +yum-builddep, yum-complete-transaction, yum-config-manager, yum-debug-dump, +yum-debug-restore and yum-groups-manager. %package -n yum-updateonboot Summary: Run yum update on system boot @@ -367,11 +367,20 @@ When this plugin is installed it adds the yum command "ps", which allows you to see which running processes are accociated with which packages (and if they need rebooting, or have updates, etc.) +%package -n yum-plugin-puppetverify +Summary: Yum plugin to add puppet checksums to verify data +Group: System Environment/Base +Provides: yum-puppetverify = %{version}-%{release} +Requires: yum >= 3.2.12 +Requires: PyYAML >= 3.09 +Requires: puppet + +%description -n yum-plugin-puppetverify +Supplies checksums for files in packages from puppet's state file. + %prep %setup -q -%patch0 -p1 - %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install @@ -406,6 +415,7 @@ plugins="\ local \ fs-snapshot \ ps \ + puppetverify \ " mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/yum/pluginconf.d/ $RPM_BUILD_ROOT/usr/lib/yum-plugins/ @@ -462,6 +472,7 @@ fi %{_bindir}/yum-groups-manager %{_bindir}/yum-debug-restore %{_bindir}/show-installed +%{_bindir}/show-changed-rco %{_sbindir}/yum-complete-transaction %{_sbindir}/yumdb %{python_sitelib}/yumutils/ @@ -472,6 +483,8 @@ fi %{_mandir}/man1/repoquery.1.* %{_mandir}/man1/repodiff.1.* %{_mandir}/man1/reposync.1.* +%{_mandir}/man1/show-changed-rco.1.* +%{_mandir}/man1/show-installed.1.* %{_mandir}/man1/yum-builddep.1.* %{_mandir}/man1/yum-debug-dump.1.* %{_mandir}/man8/yum-complete-transaction.8.* @@ -657,7 +670,17 @@ fi %config(noreplace) %{_sysconfdir}/yum/pluginconf.d/ps.conf /usr/lib/yum-plugins/ps.* +%files -n yum-plugin-puppetverify +%defattr(-, root, root) +%doc COPYING +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/puppetverify.conf +/usr/lib/yum-plugins/puppetverify.* + %changelog +* Thu Aug 10 2011 Tim Lauridsen +- mark as 1.1.31 +- remove patches + * Thu Jul 28 2011 James Antill - Fix for BuildTrans no return value checking, needed for mock. - Resolves: bug#716267 From 57637768edef6b99329e3b4b81ce5bd708c8b0e7 Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Wed, 10 Aug 2011 18:21:52 +0200 Subject: [PATCH 088/150] remove patches --- BZ-716267-BuildTrans-ret-check.patch | 77 ---------------------------- repoquery-not-installed.patch | 19 ------- 2 files changed, 96 deletions(-) delete mode 100644 BZ-716267-BuildTrans-ret-check.patch delete mode 100644 repoquery-not-installed.patch diff --git a/BZ-716267-BuildTrans-ret-check.patch b/BZ-716267-BuildTrans-ret-check.patch deleted file mode 100644 index 76ce631..0000000 --- a/BZ-716267-BuildTrans-ret-check.patch +++ /dev/null @@ -1,77 +0,0 @@ -commit 32ec6213b9f698eb48c573b16e8bae40eb7dca8c -Author: Ville Skyttä -Date: Fri Jun 24 18:44:32 2011 +0300 - - Check doUtilBuildTransaction return value, exit early on failure. BZ 716267 - -diff --git a/debuginfo-install.py b/debuginfo-install.py -index 0891f63..177c6c3 100755 ---- a/debuginfo-install.py -+++ b/debuginfo-install.py -@@ -100,7 +100,9 @@ class DebugInfoInstall(YumUtilBase): - - self.debugInfo_main() - if hasattr(self, 'doUtilBuildTransaction'): -- self.doUtilBuildTransaction() -+ errc = self.doUtilBuildTransaction() -+ if errc: -+ sys.exit(errc) - else: - try: - self.buildTransaction() -diff --git a/package-cleanup.py b/package-cleanup.py -index a4eb7d9..4794369 100755 ---- a/package-cleanup.py -+++ b/package-cleanup.py -@@ -343,7 +343,9 @@ class PackageCleanup(YumUtilBase): - self._remove_old_kernels(opts.kernelcount, opts.keepdevel) - self.run_with_package_names.add('yum-utils') - if hasattr(self, 'doUtilBuildTransaction'): -- self.doUtilBuildTransaction() -+ errc = self.doUtilBuildTransaction() -+ if errc: -+ sys.exit(errc) - else: - try: - self.buildTransaction() -@@ -392,7 +394,9 @@ class PackageCleanup(YumUtilBase): - self.run_with_package_names.add('yum-utils') - - if hasattr(self, 'doUtilBuildTransaction'): -- self.doUtilBuildTransaction() -+ errc = self.doUtilBuildTransaction() -+ if errc: -+ sys.exit(errc) - else: - try: - self.buildTransaction() -diff --git a/yum-builddep.py b/yum-builddep.py -index d13c90e..d7a37c3 100755 ---- a/yum-builddep.py -+++ b/yum-builddep.py -@@ -98,7 +98,9 @@ class YumBuildDep(YumUtilBase): - sys.exit(1) - - if hasattr(self, 'doUtilBuildTransaction'): -- self.doUtilBuildTransaction() -+ errc = self.doUtilBuildTransaction() -+ if errc: -+ sys.exit(errc) - else: - try: - self.buildTransaction() -diff --git a/yum-complete-transaction.py b/yum-complete-transaction.py -index fde1f35..c5074ab 100755 ---- a/yum-complete-transaction.py -+++ b/yum-complete-transaction.py -@@ -208,7 +208,9 @@ class YumCompleteTransaction(YumUtilBase): - - current_count = len(self.tsInfo) - if hasattr(self, 'doUtilBuildTransaction'): -- self.doUtilBuildTransaction(unfinished_transactions_check=False) -+ errc = self.doUtilBuildTransaction(unfinished_transactions_check=False) -+ if errc: -+ sys.exit(errc) - else: - try: - self.buildTransaction(unfinished_transactions_check=False) diff --git a/repoquery-not-installed.patch b/repoquery-not-installed.patch deleted file mode 100644 index de2f58b..0000000 --- a/repoquery-not-installed.patch +++ /dev/null @@ -1,19 +0,0 @@ -commit 123d241f35401386f514cee852a0ea2f174be500 -Author: James Antill -Date: Sun Jun 6 23:10:37 2010 -0400 - - Fix stupid typo in repoquery, let non-installed packages work again - -diff --git a/repoquery.py b/repoquery.py -index 2992b2d..1186782 100755 ---- a/repoquery.py -+++ b/repoquery.py -@@ -556,7 +556,7 @@ class YumBaseQuery(yum.YumBase): - pkg = iq - else: - if rq is None: -- rq = instPkgQuery(pkg, qf) -+ rq = repoPkgQuery(pkg, qf) - rq.pkg = pkg - rq.name = pkg.name - pkg = rq From b5064156dc6bbbfcc72cc9d7900a9b63edc141cc Mon Sep 17 00:00:00 2001 From: Tim Lauridsen Date: Sat, 13 Aug 2011 15:54:09 +0200 Subject: [PATCH 089/150] Release 1.1.31.2 --- auto-update-debuginfo.patch | 24 ++++++++++++++++++++++++ yum-utils.spec | 7 ++++++- 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 auto-update-debuginfo.patch diff --git a/auto-update-debuginfo.patch b/auto-update-debuginfo.patch new file mode 100644 index 0000000..5c3e5aa --- /dev/null +++ b/auto-update-debuginfo.patch @@ -0,0 +1,24 @@ +From: Zdeněk Pavlas +Date: Thu, 11 Aug 2011 12:34:42 +0000 (+0200) +Subject: Fix check for repos in opts, in auto-update-debuginfo plugin. BZ 729964. +X-Git-Url: http://yum.baseurl.org/gitweb?p=yum-utils.git;a=commitdiff_plain;h=efb3c7b3fb96523bb5997c163bf4e33ab897f1b8 + + Fix check for repos in opts, in auto-update-debuginfo plugin. BZ 729964. + + Also hasattr(None, 'repos') == False, so we don't need +to check for None explicitly. +--- + +diff --git a/plugins/auto-update-debuginfo/auto-update-debuginfo.py b/plugins/auto-update-debuginfo/auto-update-debuginfo.py +index 39993ad..9ff927c 100644 +--- a/plugins/auto-update-debuginfo/auto-update-debuginfo.py ++++ b/plugins/auto-update-debuginfo/auto-update-debuginfo.py +@@ -38,7 +38,7 @@ def _check_man_disable(mdrs, di): + def enable_debuginfo_repos(yb, conduit): + mdrs = set() + opts, args = conduit.getCmdLine() +- if opts is not None and hasattr(opts.repos) : ++ if hasattr(opts, 'repos'): + for opt, repoexp in opts.repos: + if opt == '--disablerepo': + mdrs.add(repoexp) diff --git a/yum-utils.spec b/yum-utils.spec index 4524bbe..b71aeae 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -3,10 +3,11 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.31 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz +Patch0: auto-update-debuginfo.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -380,6 +381,7 @@ Supplies checksums for files in packages from puppet's state file. %prep %setup -q +%patch0 -p1 %install rm -rf $RPM_BUILD_ROOT @@ -677,6 +679,9 @@ fi /usr/lib/yum-plugins/puppetverify.* %changelog +* Thu Aug 13 2011 Tim Lauridsen +- fix traceback in auto-update-debuginfo plugin (rhbz #729982) + * Thu Aug 10 2011 Tim Lauridsen - mark as 1.1.31 - remove patches From 60dd4a37c986e8c94250bafb767ba7d8e6ad1b9c Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 14 Jan 2012 03:32:21 -0600 Subject: [PATCH 090/150] - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild --- yum-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yum-utils.spec b/yum-utils.spec index b71aeae..c45244d 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -3,7 +3,7 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.31 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz @@ -679,6 +679,9 @@ fi /usr/lib/yum-plugins/puppetverify.* %changelog +* Sat Jan 14 2012 Fedora Release Engineering - 1.1.31-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + * Thu Aug 13 2011 Tim Lauridsen - fix traceback in auto-update-debuginfo plugin (rhbz #729982) From 259a493eaf60c7954e8e58f8d110d9dfcde93bf0 Mon Sep 17 00:00:00 2001 From: James Antill Date: Thu, 26 Jan 2012 13:49:29 -0500 Subject: [PATCH 091/150] Update to latest HEAD. --- yum-utils.spec | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/yum-utils.spec b/yum-utils.spec index c45244d..aa6ffa0 100644 --- a/yum-utils.spec +++ b/yum-utils.spec @@ -3,11 +3,12 @@ Summary: Utilities based around the yum package manager Name: yum-utils Version: 1.1.31 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: Development/Tools Source: http://yum.baseurl.org/download/yum-utils/%{name}-%{version}.tar.gz Patch0: auto-update-debuginfo.patch +Patch1: yum-utils-HEAD.patch URL: http://yum.baseurl.org/download/yum-utils/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -381,7 +382,8 @@ Supplies checksums for files in packages from puppet's state file. %prep %setup -q -%patch0 -p1 +# patch0 -p1 +%patch1 -p1 %install rm -rf $RPM_BUILD_ROOT @@ -679,6 +681,9 @@ fi /usr/lib/yum-plugins/puppetverify.* %changelog +* Thu Jan 26 2012 James Antill - 1.1.31-4 +- Update to latest HEAD. + * Sat Jan 14 2012 Fedora Release Engineering - 1.1.31-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild From 5c0b80180ccf911f2b7f60065fab445804987ad3 Mon Sep 17 00:00:00 2001 From: James Antill Date: Thu, 26 Jan 2012 15:21:17 -0500 Subject: [PATCH 092/150] Update to latest HEAD. --- yum-utils-HEAD.patch | 2280 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 2280 insertions(+) create mode 100644 yum-utils-HEAD.patch diff --git a/yum-utils-HEAD.patch b/yum-utils-HEAD.patch new file mode 100644 index 0000000..a1d0e9e --- /dev/null +++ b/yum-utils-HEAD.patch @@ -0,0 +1,2280 @@ +diff --git a/COPYING b/COPYING +index e77696a..d159169 100644 +--- a/COPYING ++++ b/COPYING +@@ -1,12 +1,12 @@ +- GNU GENERAL PUBLIC LICENSE +- Version 2, June 1991 ++ GNU GENERAL PUBLIC LICENSE ++ Version 2, June 1991 + +- Copyright (C) 1989, 1991 Free Software Foundation, Inc. +- 675 Mass Ave, Cambridge, MA 02139, USA ++ Copyright (C) 1989, 1991 Free Software Foundation, Inc., ++ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +- Preamble ++ Preamble + + The licenses for most software are designed to take away your + freedom to share and change it. By contrast, the GNU General Public +@@ -15,7 +15,7 @@ software--to make sure the software is free for all its users. This + General Public License applies to most of the Free Software + Foundation's software and to any other program whose authors commit to + using it. (Some other Free Software Foundation software is covered by +-the GNU Library General Public License instead.) You can apply it to ++the GNU Lesser General Public License instead.) You can apply it to + your programs, too. + + When we speak of free software, we are referring to freedom, not +@@ -55,8 +55,8 @@ patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and + modification follow. +- +- GNU GENERAL PUBLIC LICENSE ++ ++ GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +@@ -110,7 +110,7 @@ above, provided that you also meet all of these conditions: + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) +- ++ + These requirements apply to the modified work as a whole. If + identifiable sections of that work are not derived from the Program, + and can be reasonably considered independent and separate works in +@@ -168,7 +168,7 @@ access to copy from a designated place, then offering equivalent + access to copy the source code from the same place counts as + distribution of the source code, even though third parties are not + compelled to copy the source along with the object code. +- ++ + 4. You may not copy, modify, sublicense, or distribute the Program + except as expressly provided under this License. Any attempt + otherwise to copy, modify, sublicense or distribute the Program is +@@ -225,7 +225,7 @@ impose that choice. + + This section is intended to make thoroughly clear what is believed to + be a consequence of the rest of this License. +- ++ + 8. If the distribution and/or use of the Program is restricted in + certain countries either by patents or by copyrighted interfaces, the + original copyright holder who places the Program under this License +@@ -255,7 +255,7 @@ make exceptions for this. Our decision will be guided by the two goals + of preserving the free status of all derivatives of our free software and + of promoting the sharing and reuse of software generally. + +- NO WARRANTY ++ NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY + FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +@@ -277,9 +277,9 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER + PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE + POSSIBILITY OF SUCH DAMAGES. + +- END OF TERMS AND CONDITIONS +- +- How to Apply These Terms to Your New Programs ++ END OF TERMS AND CONDITIONS ++ ++ How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest + possible use to the public, the best way to achieve this is to make it +@@ -291,7 +291,7 @@ convey the exclusion of warranty; and each file should have at least + the "copyright" line and a pointer to where the full notice is found. + + +- Copyright (C) 19yy ++ Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +@@ -303,16 +303,16 @@ the "copyright" line and a pointer to where the full notice is found. + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software +- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ++ You should have received a copy of the GNU General Public License along ++ with this program; if not, write to the Free Software Foundation, Inc., ++ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + Also add information on how to contact you by electronic and paper mail. + + If the program is interactive, make it output a short notice like this + when it starts in an interactive mode: + +- Gnomovision version 69, Copyright (C) 19yy name of author ++ Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. +@@ -335,5 +335,5 @@ necessary. Here is a sample; alter the names: + This General Public License does not permit incorporating your program into + proprietary programs. If your program is a subroutine library, you may + consider it more useful to permit linking proprietary applications with the +-library. If this is what you want to do, use the GNU Library General ++library. If this is what you want to do, use the GNU Lesser General + Public License instead of this License. +diff --git a/debuginfo-install.py b/debuginfo-install.py +index 177c6c3..27d19ac 100755 +--- a/debuginfo-install.py ++++ b/debuginfo-install.py +@@ -7,11 +7,11 @@ + # This program is distributed in the hope that it will be useful, + # but WITHOUT ANY WARRANTY; without even the implied warranty of + # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU Library General Public License for more details. ++# GNU General Public License for more details. + # + # You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++# along with this program; if not, write to the Free Software Foundation, ++# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + # Copyright 2007 Seth Vidal + + import sys +diff --git a/docs/Makefile b/docs/Makefile +index d01c1e4..13ea4e7 100644 +--- a/docs/Makefile ++++ b/docs/Makefile +@@ -1,7 +1,7 @@ + DOCS = repoquery package-cleanup repo-rss yumdownloader yum-builddep yum-changelog reposync \ + yum-list-data yum-filter-data yum-verify yum-utils yum-aliases yum-debug-dump yum-versionlock \ + yum-groups-manager debuginfo-install repodiff yum-fs-snapshot \ +- show-installed show-changed-rco ++ show-installed show-changed-rco yum-debug-restore + DOCS5 = yum-changelog.conf yum-versionlock.conf yum-fs-snapshot.conf + DOCS8 = yum-security yum-complete-transaction yumdb + +diff --git a/docs/package-cleanup.1 b/docs/package-cleanup.1 +index 867cf4d..15f94ce 100644 +--- a/docs/package-cleanup.1 ++++ b/docs/package-cleanup.1 +@@ -14,7 +14,7 @@ Use alternative config file (default is /etc/yum.conf). + .IP "\fB\-h, \-\-help\fP" + Help; display a help message and then quit\&. + .IP "\fB\-q, \-\-quiet\fP" +-Print out nothing unecessary. ++Print out nothing unnecessary. + .IP "\fB\-v, \-\-version\fP" + Report program version and exit. + .IP "\fB\-y\fP" +diff --git a/docs/repodiff.1 b/docs/repodiff.1 +index c421c5d..ef2a373 100644 +--- a/docs/repodiff.1 ++++ b/docs/repodiff.1 +@@ -11,9 +11,11 @@ repositories. \fBNote\fP that by default only source packages are compared. + .PP + .SH "GENERAL OPTIONS" + .IP "\fB\-\-old, -o\fP" +-Add a repo. as an old repo. ++Add a repo. as an old repo. Note that if you prefix the url with "mirror:" then ++the following url is treated as a mirror and not a baseurl. + .IP "\fB\-\-new, -n\fP" +-Add a repo. as an new repo. ++Add a repo. as an new repo. Note that if you prefix the url with "mirror:" then ++the following url is treated as a mirror and not a baseurl. + .IP "\fB\-\-archlist, -a\fP" + Add architectures to change the default from just comparing source packages. + Note that if you want the same as a native +@@ -21,10 +23,14 @@ Note that if you want the same as a native + from earlier versions where you needed to specify + "x86_64,athlon,i686,i586,i486,i386,noarch" and you still got "src"). + .IP "\fB\-\-size, -s\fP" +-Ouput additional data about the size of the changes. ++Output additional data about the size of the changes. + .IP "\fB\-\-compare-arch\fP" + Normally packages are just compared based on their name, this flag makes the + comparison also use the arch. So foo.i386 and foo.x86_64 are different. ++.IP "\fB\-\-simple\fP" ++Output a simple one line message for modified packages. ++.IP "\fB\-\-downgrade\fP" ++Split the data for modified packages between upgraded and downgraded packages. + .SH "EXAMPLES" + .IP "Compare source pkgs in two local repos:" + \fBrepodiff --old=/tmp/repo-old --new=/tmp/repo-new\fP +@@ -32,6 +38,8 @@ comparison also use the arch. So foo.i386 and foo.x86_64 are different. + \fBrepodiff -a x86_64 --old=http://example.com/repo1-old --old=/tmp/repo-old --new=http://example.com/repo1-new --new=/tmp/repo-new\fP + .IP "Compare x86_64 compat. binary pkgs, but also compare arch:" + \fBrepodiff -a x86_64 --compare-arch --old=http://example.com/repo1-old --old=/tmp/repo-old --new=http://example.com/repo1-new --new=/tmp/repo-new\fP ++.IP "Compare two releases of Fedora (15 => 16):" ++\fBrepodiff --old='mirror:https://mirrors.fedoraproject.org/metalink?repo=fedora-source-15&arch=i386' --new='mirror:https://mirrors.fedoraproject.org/metalink?repo=fedora-source-16&arch=i386' --size --simple --downgrade\fP + .PP + + .SH "SEE ALSO" +diff --git a/docs/repoquery.1 b/docs/repoquery.1 +index f5a8c5d..fe842f5 100644 +--- a/docs/repoquery.1 ++++ b/docs/repoquery.1 +@@ -130,7 +130,8 @@ package names). This is the default. + When used with --whatrequires, search for dependencies only exactly as given. + This is effectively the opposite of --alldeps. + .IP "\fB\-\-recursive\fP" +-When used with --whatrequires, query packages recursively. ++When used with --whatrequires, and --requires --resolve, query packages ++recursively. + .IP "\fB\-\-archlist=ARCH1[,ARCH2...]\fP" + Limit the query to packages of given architecture(s). Valid values are all + architectures known to rpm/yum such as 'i386' and 'src' for +@@ -166,7 +167,7 @@ Query groups instead of packages. + + .SH "EXAMPLES" + .IP "List all packages whose name contains 'perl':" +-\fBrepoquery '*perl*'\fP ++\fBrepoquery \(aq*perl*\(aq\fP + .IP "List all packages depending on openssl:" + \fBrepoquery --whatrequires openssl\fP + .IP "List all package names and the repository they come from, nicely formatted:" +diff --git a/docs/reposync.1 b/docs/reposync.1 +index c1bc818..edc05cc 100644 +--- a/docs/reposync.1 ++++ b/docs/reposync.1 +@@ -14,7 +14,7 @@ Display a help message, and then quit. + Config file to use (defaults to /etc/yum.conf). + .IP "\fB\-a ARCH, \-\-arch=ARCH\fP" + Act as if running the specified arch (default: current arch, note: does +-not override $releasever). ++not override $releasever. x86_64 is a superset for i*86.). + .IP "\fB\-\-source\fP" + Also download .src.rpm files. + .IP "\fB\-r REPOID, \-\-repoid=REPOID\fP" +@@ -28,6 +28,8 @@ Path to download packages to: defaults to current directory. + Remove packages that fail GPG signature checking after downloading. + .IP "\fB\-u, \-\-urls\fP" + Just list urls of what would be downloaded, don't download. ++.IP "\fB\-l, \-\-plugins\fP" ++Enable yum plugin support. + .IP "\fB\-n, \-\-newest-only\fP" + Download only newest packages per-repo. + .IP "\fB\-q, \-\-quiet\fP" +@@ -41,6 +43,8 @@ Output as little information as possible. + \fB reposync --repoid=updates --repoid=extras\fP + .IP "Sync all packages from the 'updates' repo to the \fBrepos\fP directory:" + \fB reposync -p repos --repoid=updates\fP ++.IP "Sync all packages from the 'updates' repo to the \fBrepos\fP directory excluding x86_64 arch. Edit \fI/etc/yum.conf\fR adding option \fBexclude=*.x86_64\fR. Then: ++\fBreposync -p repos --repoid=updates\fP + .SH "FILES" + \fBreposync\fP uses the yum libraries for retrieving information and + packages. If no configuration file is specified, the default yum +diff --git a/docs/show-changed-rco.1 b/docs/show-changed-rco.1 +index 3e3b62c..1b0ea65 100644 +--- a/docs/show-changed-rco.1 ++++ b/docs/show-changed-rco.1 +@@ -11,7 +11,7 @@ packages Requires, Conflicts and Obsoletes data from the installed (or old) to + a specified rpm file. + .SH OPTIONS + .TP +-.IP \-h, \-\-help ++.IP "\fB\-h, \-\-help\fP" + show this help message and exit + .IP "\fB\-C, \-\-cache\fP" + Tells repoquery to run entirely from YUM cache - does not download any metadata +diff --git a/docs/show-installed.1 b/docs/show-installed.1 +index 7072b63..18c4af8 100644 +--- a/docs/show-installed.1 ++++ b/docs/show-installed.1 +@@ -16,10 +16,10 @@ show this help message and exit + yum, kickstart or human; yum gives the result as a yum command line; kickstart the content of a %packages section; "human" readable is default. + .TP + .B \-i INPUT, \-\-input=INPUT +-File to read the package list from instead of using the rpmdb. \- for stdin. The file must contain package names only separated by white space (including newlines). rpm \-qa \-\-qf='%{name}\\n' produces proper output. ++File to read the package list from instead of using the rpmdb. \- for stdin. The file must contain package names only separated by white space (including newlines). rpm \-qa \-\-qf=\(aq%{name}\\n\(aq produces proper output. + .TP + .B \-o OUTPUT, \-\-output=OUTPUT +-File to write the result to. Stdout is used if option is omited. ++File to write the result to. Stdout is used if option is omitted. + .TP + .B \-q, \-\-quiet + Do not show warnings. +diff --git a/docs/yum-aliases.1 b/docs/yum-aliases.1 +index c0f148d..8b943d4 100644 +--- a/docs/yum-aliases.1 ++++ b/docs/yum-aliases.1 +@@ -28,7 +28,7 @@ last form creates a new alias. + .PP + When you type an aliased command, like "yum --disableexcludes UPT lsu" using + the default aliases, the yum-aliases plugin first takes the first "command", by +-skiping over any options, and then looks up the result (in this case "UPT" is converted to "--enablerepo=updates-tesintg"). If there is a match, then it will ++skipping over any options, and then looks up the result (in this case "UPT" is converted to "--enablerepo=updates-testing"). If there is a match, then it will + replace the aliased "command" in the argument list and try again (again + skipping over any options). By convention, in the default aliases list, alias + "commands" that are in all CAPS only add options so you can join together a +diff --git a/docs/yum-debug-dump.1 b/docs/yum-debug-dump.1 +index 0e65a07..71e5f3f 100644 +--- a/docs/yum-debug-dump.1 ++++ b/docs/yum-debug-dump.1 +@@ -10,11 +10,15 @@ yum-debug-dump + lot of information useful to developers trying to debug a problem. + .PP + By default it will output a file to the current working directory named +-yum_debug_dump.txt.gz. This file contains no private information but does ++yum_debug_dump--