From 1082d4c7ad98c091688bdeb427e48913d1327279 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 4 May 2010 16:10:47 +0200 Subject: * methods/rred.cc: - use the patchfile modification time instead of the one from the "old" file - thanks to Philipp Weis for noticing! (Closes: #571541) --- debian/changelog | 3 +++ 1 file changed, 3 insertions(+) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 0f01d1867..482f0860e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -57,6 +57,9 @@ apt (0.7.26~exp4) UNRELEASED; urgency=low * apt-pkg/pkgcache.h: - enhance the Groups ABI by providing a ID as the other structs does - check also the size of the Group struct then checking for the others + * methods/rred.cc: + - use the patchfile modification time instead of the one from the + "old" file - thanks to Philipp Weis for noticing! (Closes: #571541) [ Jari Aalto ] * cmdline/apt-get.cc: -- cgit v1.2.3-70-g09d2 From a101a93299d4a2795edb8495c117eb5095a26e2b Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 4 May 2010 19:44:11 +0200 Subject: return in SingleArch a package also for "any" --- apt-pkg/pkgcache.cc | 2 +- debian/changelog | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'debian/changelog') diff --git a/apt-pkg/pkgcache.cc b/apt-pkg/pkgcache.cc index ba3c5cbf8..a59a06d65 100644 --- a/apt-pkg/pkgcache.cc +++ b/apt-pkg/pkgcache.cc @@ -221,7 +221,7 @@ pkgCache::PkgIterator pkgCache::FindPkg(const string &Name) { /* Returns 0 on error, pointer to the package otherwise */ pkgCache::PkgIterator pkgCache::FindPkg(const string &Name, string const &Arch) { if (MultiArchCache() == false) { - if (Arch == "native" || Arch == "all" || + if (Arch == "native" || Arch == "all" || Arch == "any" || Arch == _config->Find("APT::Architecture")) return SingleArchFindPkg(Name); else diff --git a/debian/changelog b/debian/changelog index 482f0860e..9875e0ca2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -14,6 +14,7 @@ apt (0.7.26~exp4) UNRELEASED; urgency=low * apt-pkg/depcache.cc: - rewrite the pseudo package reinstaller to be more intelligent in his package choices + - return in SingleArch a package also for "any" * apt-pkg/packagemanager.cc: - don't try to "unpack" pseudo packages twice * apt-pkg/contrib/fileutl.cc: -- cgit v1.2.3-70-g09d2 From 827d04d3b2ed62d4e666698e639af6fbb3199581 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 4 May 2010 19:44:37 +0200 Subject: rerun dpkg-source in source if --fix-broken is given (Closes: #576752) --- cmdline/apt-get.cc | 3 ++- debian/changelog | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'debian/changelog') diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index b43164c2f..6a3c91a59 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -2380,6 +2380,7 @@ bool DoSource(CommandLine &CmdL) if (Process == 0) { + bool const fixBroken = _config->FindB("APT::Get::Fix-Broken", false); for (unsigned I = 0; I != J; I++) { string Dir = Dsc[I].Package + '-' + Cache->VS().UpstreamVersion(Dsc[I].Version.c_str()); @@ -2392,7 +2393,7 @@ bool DoSource(CommandLine &CmdL) // See if the package is already unpacked struct stat Stat; - if (stat(Dir.c_str(),&Stat) == 0 && + if (fixBroken == false && stat(Dir.c_str(),&Stat) == 0 && S_ISDIR(Stat.st_mode) != 0) { ioprintf(c0out ,_("Skipping unpack of already unpacked source in %s\n"), diff --git a/debian/changelog b/debian/changelog index 9875e0ca2..2a28ce314 100644 --- a/debian/changelog +++ b/debian/changelog @@ -33,6 +33,7 @@ apt (0.7.26~exp4) UNRELEASED; urgency=low - regex for package names executed on Grp- not PkgIterator - show non-candidates as fallback for virtual packages (Closes: #578385) - set also "all" to this version for pseudo packages in TryToChangeVer + - rerun dpkg-source in source if --fix-broken is given (Closes: #576752) * apt-pkg/deb/dpkgpm.cc: - remove Chroot-Directory from files passed to install commands. Thanks to Kel Modderman for report & patch! (Closes: #577226) -- cgit v1.2.3-70-g09d2 From 70371bc8163cab22dec315f73db087095a011669 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 4 May 2010 21:48:38 +0200 Subject: * debian/rules: - spell out some less known options to reduce manpage consulation-rate - Use POSIX command substitution: $() - Remove EOL whitespace (Closes: #577804) --- debian/changelog | 4 ++++ debian/rules | 69 ++++++++++++++++++++++++-------------------------------- 2 files changed, 34 insertions(+), 39 deletions(-) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 2a28ce314..710b0f844 100644 --- a/debian/changelog +++ b/debian/changelog @@ -70,6 +70,10 @@ apt (0.7.26~exp4) UNRELEASED; urgency=low * dselect/install: - modernize if-statements not to use 'x' (Closes: #577117) - replace backticks with POSIX $() (Closes: #577116) + * debian/rules: + - spell out some less known options to reduce manpage consulation-rate + - Use POSIX command substitution: $() + - Remove EOL whitespace (Closes: #577804) -- David Kalnischkies Sat, 03 Apr 2010 14:58:39 +0200 diff --git a/debian/rules b/debian/rules index 2fe6ed69c..ba19f2526 100755 --- a/debian/rules +++ b/debian/rules @@ -47,7 +47,7 @@ BASE=. ifdef BUILD BUILD_POSSIBLE := $(BUILD) $(BASE)/$(BUILD) else -BUILD_POSSIBLE := $(BASE) $(BASE)/build-$(shell uname -m) $(BASE)/build +BUILD_POSSIBLE := $(BASE) $(BASE)/build-$(shell uname --machine) $(BASE)/build endif BUILDX:= $(foreach i,$(BUILD_POSSIBLE),$(wildcard $(i)/environment.mak*)) BUILDX:= $(patsubst %/,%,$(firstword $(dir $(BUILDX)))) @@ -82,9 +82,9 @@ LIBAPTPKG_PROVIDE=libapt-pkg$(LIBAPTPKG_MAJOR) LIBAPTINST_PROVIDE=libapt-inst$(LIBAPTINST_MAJOR) debian/shlibs.local: apt-pkg/makefile - # We have 3 shlibs.local files.. One for 'apt', one for 'apt-utils' and + # We have 3 shlibs.local files: One for 'apt', one for 'apt-utils' and # one for the rest of the packages. This ensures that each package gets - # the right overrides.. + # the right overrides… rm -rf $@ $@.apt $@.apt-utils echo "libapt-pkg $(LIBAPTPKG_MAJOR)" > $@.apt @@ -94,8 +94,8 @@ debian/shlibs.local: apt-pkg/makefile echo "libapt-pkg $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@ echo "libapt-inst $(LIBAPTINST_MAJOR) $(LIBAPTINST_PROVIDE)" >> $@ -build: build/build-stamp -build-doc: build/build-doc-stamp +build: build/build-stamp +build-doc: build/build-doc-stamp # Note that this is unconditionally done first as part of loading environment.mak # The true is needed to force make to reload environment.mak after running @@ -123,10 +123,8 @@ build/build-doc-stamp: build/configure-stamp clean: dh_testdir -# dh_testroot - [ -f Makefile ] && $(MAKE) clean - [ -f Makefile ] && $(MAKE) distclean + [ ! -f Makefile ] || $(MAKE) clean distclean rm -rf build # Add here commands to clean up after the build process. @@ -141,22 +139,19 @@ libapt-pkg-doc: build-doc debian/shlibs.local dh_installdirs -p$@ # # libapt-pkg-doc install -# - dh_installdocs -p$@ $(BLD)/docs/cache* $(BLD)/docs/design* $(BLD)/docs/dpkg-tech* \ - $(BLD)/docs/files* $(BLD)/docs/method* \ - doc/libapt-pkg2_to_3.txt doc/style.txt +# + dh_installdocs -p$@ $(BLD)/docs/design* \ + $(BLD)/docs/dpkg-tech* \ + $(BLD)/docs/files* \ + $(BLD)/docs/method* \ + doc/libapt-pkg2_to_3.txt \ + doc/style.txt dh_installexamples -p$@ -# dh_installmenu -p$@ -# dh_installinit -p$@ -# dh_installcron -p$@ -# dh_installman -p$@ -# dh_undocumented -p$@ dh_installchangelogs -p$@ dh_strip -p$@ dh_compress -p$@ dh_fixperms -p$@ -# dh_suidregister -p$@ dh_installdeb -p$@ dh_gencontrol -p$@ -u -Vlibapt-pkg:provides=$(LIBAPTPKG_PROVIDE) dh_md5sums -p$@ @@ -170,8 +165,10 @@ apt-doc: build-doc # apt-doc install # # Copy the guides - dh_installdocs -p$@ $(BLD)/docs/guide*.text $(BLD)/docs/guide*.html \ - $(BLD)/docs/offline*.text $(BLD)/docs/offline*.html + dh_installdocs -p$@ $(BLD)/docs/guide*.text \ + $(BLD)/docs/guide*.html \ + $(BLD)/docs/offline*.text \ + $(BLD)/docs/offline*.html dh_installchangelogs -p$@ dh_compress -p$@ dh_fixperms -p$@ @@ -214,7 +211,6 @@ apt: build build-doc debian/shlibs.local cp debian/apt.logrotate debian/$@/etc/logrotate.d/apt cp debian/apt.conf.autoremove debian/$@/etc/apt/apt.conf.d/01autoremove -# head -n 500 ChangeLog > debian/ChangeLog # copy lintian override cp share/lintian-overrides debian/$@/usr/share/lintian/overrides/apt @@ -232,9 +228,9 @@ apt: build build-doc debian/shlibs.local dh_strip -p$@ dh_compress -p$@ dh_fixperms -p$@ - dh_makeshlibs -p$@ -m$(LIBAPTPKG_MAJOR) -V '$(LIBAPTPKG_PROVIDE)' + dh_makeshlibs -p$@ --major=$(LIBAPTPKG_MAJOR) --version-info='$(LIBAPTPKG_PROVIDE)' dh_installdeb -p$@ - dh_shlibdeps -p$@ -l`pwd`/debian/apt/usr/lib:`pwd`/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt + dh_shlibdeps -p$@ -l$(pwd)/debian/apt/usr/lib:$(pwd)/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt dh_gencontrol -p$@ -u -Vlibapt-pkg:provides=$(LIBAPTPKG_PROVIDE) dh_md5sums -p$@ dh_builddeb -p$@ @@ -253,16 +249,11 @@ libapt-pkg-dev: build debian/shlibs.local cp $(BLD)/include/apt-pkg/*.h debian/libapt-pkg-dev/usr/include/apt-pkg/ dh_installdocs -p$@ -# dh_installmenu -p$@ -# dh_installinit -p$@ -# dh_installcron -p$@ -# dh_installman -p$@ dh_installchangelogs -p$@ dh_strip -p$@ dh_compress -p$@ dh_fixperms -p$@ -# dh_suidregister -p$@ dh_installdeb -p$@ dh_gencontrol -p$@ -u -Vlibapt-pkg:provides=$(LIBAPTPKG_PROVIDE) -Vlibapt-inst:provides=$(LIBAPTINST_PROVIDE) dh_md5sums -p$@ @@ -290,9 +281,9 @@ apt-utils: build debian/shlibs.local dh_strip -p$@ dh_compress -p$@ dh_fixperms -p$@ - dh_makeshlibs -m$(LIBAPTINST_MAJOR) -V '$(LIBAPTINST_PROVIDE)' -p$@ + dh_makeshlibs -p$@ --major=$(LIBAPTINST_MAJOR) --version-info='$(LIBAPTINST_PROVIDE)' dh_installdeb -p$@ - dh_shlibdeps -p$@ -l`pwd`/debian/apt/usr/lib:`pwd`/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt-utils + dh_shlibdeps -p$@ -l$(pwd)/debian/apt/usr/lib:$(pwd)/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt-utils dh_gencontrol -p$@ -u -Vlibapt-inst:provides=$(LIBAPTINST_PROVIDE) dh_md5sums -p$@ dh_builddeb -p$@ @@ -304,7 +295,7 @@ apt-transport-https: build debian/shlibs.local libapt-pkg-dev dh_installdirs -p$@ # install the method - mkdir -p debian/$@/usr/lib/apt/methods + mkdir --parents debian/$@/usr/lib/apt/methods cp $(BLD)/bin/methods/https debian/$@/usr/lib/apt/methods dh_installdocs -p$@ debian/apt-transport-https.README @@ -318,7 +309,7 @@ apt-transport-https: build debian/shlibs.local libapt-pkg-dev dh_compress -p$@ dh_fixperms -p$@ dh_installdeb -p$@ - dh_shlibdeps -p$@ -l`pwd`/debian/apt/usr/lib:`pwd`/debian/$@/usr/lib + dh_shlibdeps -p$@ -l$(pwd)/debian/apt/usr/lib:$(pwd)/debian/$@/usr/lib dh_gencontrol -p$@ dh_md5sums -p$@ dh_builddeb -p$@ @@ -341,7 +332,7 @@ l33ch-stamp: super-l33ch touch $@ really-clean: clean - -find -name Makefile.in -print0 | xargs -0r rm -f + -find . -name Makefile.in -print0 | xargs --null --no-run-if-empty -- rm -f find -name ChangeLog | xargs rm -f rm -f l33ch-stamp @@ -350,7 +341,7 @@ binary: binary-indep binary-arch # Done by the uploader. -#cvs update.. +#cvs update… #edit debian/changelog # configure.in has the version automatically updated now. # edit configure.in @@ -361,18 +352,18 @@ CVS_ROOT=$(shell cat CVS/Root) CVS_MODULE=$(shell cat CVS/Repository) cvs-build: rm -rf debian/cvs-build - mkdir -p debian/cvs-build + mkdir --parents debian/cvs-build (cd debian/cvs-build;cvs -d $(CVS_ROOT) export -r$(APT_CVSTAG) -d apt-$(APT_DEBVER) $(CVS_MODULE)) $(MAKE) -C debian/cvs-build/$(CVS_BUILDDIR) startup doc (cd debian/cvs-build/$(CVS_BUILDDIR);$(DEB_BUILD_PROG)) cvs-mkul: - -mkdir -p ../upload-$(APT_DEBVER) - cp `find debian/cvs-build -maxdepth 1 -type f` ../upload-$(APT_DEBVER) + -mkdir --parents ../upload-$(APT_DEBVER) + cp $(find debian/cvs-build -maxdepth 1 -type f) ../upload-$(APT_DEBVER) arch-build: rm -rf debian/arch-build - mkdir -p debian/arch-build/apt-$(APT_DEBVER) - tar -c --exclude=arch-build --no-recursion -f - `bzr inventory` | (cd debian/arch-build/$(PKG)-$(APT_DEBVER);tar xf -) + mkdir --parents debian/arch-build/apt-$(APT_DEBVER) + tar -c --exclude=arch-build --no-recursion -f - $(bzr inventory) | (cd debian/arch-build/$(PKG)-$(APT_DEBVER);tar xf -) $(MAKE) -C debian/arch-build/apt-$(APT_DEBVER) startup doc (cd debian/arch-build/apt-$(APT_DEBVER); $(DEB_BUILD_PROG); dpkg-genchanges -S > ../apt_$(APT_DEBVER)_source.changes) -- cgit v1.2.3-70-g09d2 From 888c49107facbed08ce58d944f317e7f5f5bbe1f Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 4 May 2010 21:51:32 +0200 Subject: * debian/rules: - remove targets refering to CVS or arch as they are useless --- debian/changelog | 2 ++ debian/rules | 43 ------------------------------------------- 2 files changed, 2 insertions(+), 43 deletions(-) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 710b0f844..d206b1dd8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -62,6 +62,8 @@ apt (0.7.26~exp4) UNRELEASED; urgency=low * methods/rred.cc: - use the patchfile modification time instead of the one from the "old" file - thanks to Philipp Weis for noticing! (Closes: #571541) + * debian/rules: + - remove targets refering to CVS or arch as they are useless [ Jari Aalto ] * cmdline/apt-get.cc: diff --git a/debian/rules b/debian/rules index ba19f2526..bb2cc34c3 100755 --- a/debian/rules +++ b/debian/rules @@ -314,23 +314,9 @@ apt-transport-https: build debian/shlibs.local libapt-pkg-dev dh_md5sums -p$@ dh_builddeb -p$@ -source diff: - @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false - -# Update from CVS -l33ch: really-clean - cvs update - buildlib/mkChangeLog - -# Update from CVS and then configure for build -super-l33ch: l33ch Makefile.in - configure: $(MAKE) configure -l33ch-stamp: super-l33ch - touch $@ - really-clean: clean -find . -name Makefile.in -print0 | xargs --null --no-run-if-empty -- rm -f find -name ChangeLog | xargs rm -f @@ -338,32 +324,3 @@ really-clean: clean binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary debian/shlibs.local - - -# Done by the uploader. -#cvs update… -#edit debian/changelog -# configure.in has the version automatically updated now. -# edit configure.in -# debian/rules cvs-build - -CVS_BUILDDIR=apt-$(APT_DEBVER) -CVS_ROOT=$(shell cat CVS/Root) -CVS_MODULE=$(shell cat CVS/Repository) -cvs-build: - rm -rf debian/cvs-build - mkdir --parents debian/cvs-build - (cd debian/cvs-build;cvs -d $(CVS_ROOT) export -r$(APT_CVSTAG) -d apt-$(APT_DEBVER) $(CVS_MODULE)) - $(MAKE) -C debian/cvs-build/$(CVS_BUILDDIR) startup doc - (cd debian/cvs-build/$(CVS_BUILDDIR);$(DEB_BUILD_PROG)) - -cvs-mkul: - -mkdir --parents ../upload-$(APT_DEBVER) - cp $(find debian/cvs-build -maxdepth 1 -type f) ../upload-$(APT_DEBVER) - -arch-build: - rm -rf debian/arch-build - mkdir --parents debian/arch-build/apt-$(APT_DEBVER) - tar -c --exclude=arch-build --no-recursion -f - $(bzr inventory) | (cd debian/arch-build/$(PKG)-$(APT_DEBVER);tar xf -) - $(MAKE) -C debian/arch-build/apt-$(APT_DEBVER) startup doc - (cd debian/arch-build/apt-$(APT_DEBVER); $(DEB_BUILD_PROG); dpkg-genchanges -S > ../apt_$(APT_DEBVER)_source.changes) -- cgit v1.2.3-70-g09d2 From 2d847a5919828ab26dd3f3c5993497b95df9051b Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Thu, 6 May 2010 12:31:55 +0200 Subject: don't suggest held packages as they are installed (Closes: #578135) --- cmdline/apt-get.cc | 7 ++++--- debian/changelog | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'debian/changelog') diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 6a3c91a59..de8c7aeaf 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -1932,9 +1932,10 @@ bool DoInstall(CommandLine &CmdL) { /* Skip if package is installed already, or is about to be */ string target = Start.TargetPkg().FullName(true) + " "; - - if ((*Start.TargetPkg()).SelectedState == pkgCache::State::Install - || Cache[Start.TargetPkg()].Install()) + pkgCache::PkgIterator const TarPkg = Start.TargetPkg(); + if (TarPkg->SelectedState == pkgCache::State::Install || + TarPkg->SelectedState == pkgCache::State::Hold || + Cache[Start.TargetPkg()].Install()) { foundInstalledInOrGroup=true; break; diff --git a/debian/changelog b/debian/changelog index d206b1dd8..144d307fa 100644 --- a/debian/changelog +++ b/debian/changelog @@ -34,6 +34,7 @@ apt (0.7.26~exp4) UNRELEASED; urgency=low - show non-candidates as fallback for virtual packages (Closes: #578385) - set also "all" to this version for pseudo packages in TryToChangeVer - rerun dpkg-source in source if --fix-broken is given (Closes: #576752) + - don't suggest held packages as they are installed (Closes: #578135) * apt-pkg/deb/dpkgpm.cc: - remove Chroot-Directory from files passed to install commands. Thanks to Kel Modderman for report & patch! (Closes: #577226) -- cgit v1.2.3-70-g09d2 From 6248b28e9c9013e074120ae74b6a9fccee75c318 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 11 May 2010 13:59:02 +0200 Subject: * apt-pkg/depcache.cc: - be doublesure that the killer query is empty before starting reinstall --- apt-pkg/depcache.cc | 21 +++++++++++---------- debian/changelog | 2 ++ 2 files changed, 13 insertions(+), 10 deletions(-) (limited to 'debian/changelog') diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc index 4d1a08eb6..411ae5f62 100644 --- a/apt-pkg/depcache.cc +++ b/apt-pkg/depcache.cc @@ -804,17 +804,18 @@ void pkgDepCache::Update(OpProgress *Prog) /* FIXME: recheck breaks proper progress reporting as we don't know how many packages we need to recheck. To lower the effect a bit we increase with a kill, but we should do something more clever… */ - for(std::set::const_iterator p = recheck.begin(); - p != recheck.end(); ++p) { - if (Prog != 0 && Done%20 == 0) - Prog->Progress(Done); - PkgIterator P = PkgIterator(*Cache, Cache->PkgP + *p); - if (RemovePseudoInstalledPkg(P, recheck) == true) { - ++killed; - ++Done; + while(recheck.empty() == false) + for (std::set::const_iterator p = recheck.begin(); + p != recheck.end(); ++p) { + if (Prog != 0 && Done%20 == 0) + Prog->Progress(Done); + PkgIterator P = PkgIterator(*Cache, Cache->PkgP + *p); + if (RemovePseudoInstalledPkg(P, recheck) == true) { + ++killed; + ++Done; + } + recheck.erase(p); } - recheck.erase(p); - } /* Okay, we have killed a great amount of pseudopackages - we have killed so many that we have now arch "all" packages diff --git a/debian/changelog b/debian/changelog index 43f76a18e..845a37581 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,6 +11,8 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low "old" file - thanks to Philipp Weis for noticing! (Closes: #571541) * debian/rules: - remove targets refering to CVS or arch as they are useless + * apt-pkg/depcache.cc: + - be doublesure that the killer query is empty before starting reinstall [ Jari Aalto ] * debian/rules: -- cgit v1.2.3-70-g09d2 From f5a3d0095a5937c14c509a588eb6b7e946faf0c1 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Wed, 12 May 2010 11:44:50 +0200 Subject: * methods/gpgv.cc: - remove the keyrings count limit by using vector magic --- debian/changelog | 2 ++ methods/gpgv.cc | 42 +++++++++++++++++------------------------- 2 files changed, 19 insertions(+), 25 deletions(-) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 845a37581..a328c1e1e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -13,6 +13,8 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low - remove targets refering to CVS or arch as they are useless * apt-pkg/depcache.cc: - be doublesure that the killer query is empty before starting reinstall + * methods/gpgv.cc: + - remove the keyrings count limit by using vector magic [ Jari Aalto ] * debian/rules: diff --git a/methods/gpgv.cc b/methods/gpgv.cc index c58e6cc45..a149d67dd 100644 --- a/methods/gpgv.cc +++ b/methods/gpgv.cc @@ -12,6 +12,8 @@ #include #include +#include + #define GNUPGPREFIX "[GNUPG:]" #define GNUPGBADSIG "[GNUPG:] BADSIG" #define GNUPGNOPUBKEY "[GNUPG:] NO_PUBKEY" @@ -87,23 +89,18 @@ string GPGVMethod::VerifyGetSigners(const char *file, const char *outfile, return string("Couldn't spawn new process") + strerror(errno); else if (pid == 0) { - const char *Args[400]; - unsigned int i = 0; + std::vector Args; + Args.reserve(30); - Args[i++] = gpgvpath.c_str(); - Args[i++] = "--status-fd"; - Args[i++] = "3"; - Args[i++] = "--ignore-time-conflict"; + Args.push_back(gpgvpath.c_str()); + Args.push_back("--status-fd"); + Args.push_back("3"); + Args.push_back("--ignore-time-conflict"); for (vector::const_iterator K = keyrings.begin(); K != keyrings.end(); ++K) { - Args[i++] = "--keyring"; - Args[i++] = K->c_str(); - // check overflow (minus a bit of extra space at the end) - if(i >= sizeof(Args)/sizeof(char*)-5) { - std::clog << _("E: Too many keyrings should be passed to gpgv. Exiting.") << std::endl; - exit(111); - } + Args.push_back("--keyring"); + Args.push_back(K->c_str()); } Configuration::Item const *Opts; @@ -115,23 +112,18 @@ string GPGVMethod::VerifyGetSigners(const char *file, const char *outfile, { if (Opts->Value.empty() == true) continue; - Args[i++] = Opts->Value.c_str(); - // check overflow (minus a bit of extra space at the end) - if(i >= sizeof(Args)/sizeof(char*)-5) { - std::clog << _("E: Argument list from Acquire::gpgv::Options too long. Exiting.") << std::endl; - exit(111); - } + Args.push_back(Opts->Value.c_str()); } } - Args[i++] = file; - Args[i++] = outfile; - Args[i++] = NULL; + Args.push_back(file); + Args.push_back(outfile); + Args.push_back(NULL); if (Debug == true) { std::clog << "Preparing to exec: " << gpgvpath; - for(unsigned int j=0;Args[j] != NULL; j++) - std::clog << " " << Args[j]; + for(std::vector::const_iterator a = Args.begin();*a != NULL; ++a) + std::clog << " " << *a; std::clog << std::endl; } int const nullfd = open("/dev/null", O_RDONLY); @@ -145,7 +137,7 @@ string GPGVMethod::VerifyGetSigners(const char *file, const char *outfile, putenv((char *)"LANG="); putenv((char *)"LC_ALL="); putenv((char *)"LC_MESSAGES="); - execvp(gpgvpath.c_str(), (char **)Args); + execvp(gpgvpath.c_str(), (char **) &Args[0]); exit(111); } -- cgit v1.2.3-70-g09d2 From e3ac3b464d4b084c524076c7e2ab2c737ccdb99c Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Thu, 13 May 2010 15:20:07 +0200 Subject: * contrib/mmap.cc: - clarify "MMap reached size limit" error message, thanks Ivan Masár! MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apt-pkg/contrib/mmap.cc | 4 ++-- debian/changelog | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) (limited to 'debian/changelog') diff --git a/apt-pkg/contrib/mmap.cc b/apt-pkg/contrib/mmap.cc index b3f29032c..d233e51bc 100644 --- a/apt-pkg/contrib/mmap.cc +++ b/apt-pkg/contrib/mmap.cc @@ -392,8 +392,8 @@ unsigned long DynamicMMap::WriteString(const char *String, the nearly impossible 4 to grow it before it finally give up: Never say never. */ bool DynamicMMap::Grow() { if (Limit != 0 && WorkSpace >= Limit) - return _error->Error(_("The size of a MMap has already reached the defined limit of %lu bytes," - "abort the try to grow the MMap."), Limit); + return _error->Error(_("Unable to increase the size of the MMap as the " + "limit of %lu bytes is already reached."), Limit); unsigned long const newSize = WorkSpace + 1024*1024; diff --git a/debian/changelog b/debian/changelog index a328c1e1e..8a6424ebc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -10,15 +10,17 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low - use the patchfile modification time instead of the one from the "old" file - thanks to Philipp Weis for noticing! (Closes: #571541) * debian/rules: - - remove targets refering to CVS or arch as they are useless + - remove targets referring to CVS or arch as they are useless * apt-pkg/depcache.cc: - be doublesure that the killer query is empty before starting reinstall * methods/gpgv.cc: - remove the keyrings count limit by using vector magic + * contrib/mmap.cc: + - clarify "MMap reached size limit" error message, thanks Ivan Masár! [ Jari Aalto ] * debian/rules: - - spell out some less known options to reduce manpage consulation-rate + - spell out some less known options to reduce manpage consultation-rate - Use POSIX command substitution: $() - Remove EOL whitespace (Closes: #577804) -- cgit v1.2.3-70-g09d2 From e1dd65c9f1274621142a20148f23dbd074ac33af Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Thu, 13 May 2010 17:39:21 +0200 Subject: * doc/apt.ent - add entities for the current oldstable/stable/testing codenames * doc/sources.list.5.xml: - use stable-codename instead of stable in the examples (Closes: #531492) * doc/apt_preferences.5.xml: - adapt some examples here to use current codenames as well --- debian/changelog | 6 ++++++ doc/apt-ftparchive.1.xml | 2 +- doc/apt.conf.5.xml | 5 +++-- doc/apt.ent | 4 ++++ doc/apt_preferences.5.xml | 20 ++++++++++---------- doc/sources.list.5.xml | 8 ++++---- 6 files changed, 28 insertions(+), 17 deletions(-) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 8a6424ebc..0902e79c8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -17,6 +17,12 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low - remove the keyrings count limit by using vector magic * contrib/mmap.cc: - clarify "MMap reached size limit" error message, thanks Ivan Masár! + * doc/apt.ent + - add entities for the current oldstable/stable/testing codenames + * doc/sources.list.5.xml: + - use stable-codename instead of stable in the examples (Closes: #531492) + * doc/apt_preferences.5.xml: + - adapt some examples here to use current codenames as well [ Jari Aalto ] * debian/rules: diff --git a/doc/apt-ftparchive.1.xml b/doc/apt-ftparchive.1.xml index 5bf47f32a..a3ac45bd3 100644 --- a/doc/apt-ftparchive.1.xml +++ b/doc/apt-ftparchive.1.xml @@ -363,7 +363,7 @@ The Tree section takes a scope tag which sets the $(DIST) variable and defines the root of the tree (the path is prefixed by ArchiveDir). - Typically this is a setting such as dists/woody. + Typically this is a setting such as dists/&stable-codename;. All of the settings defined in the TreeDefault section can be use in a Tree section as well as three new variables. diff --git a/doc/apt.conf.5.xml b/doc/apt.conf.5.xml index c13ad4867..fe005e0f1 100644 --- a/doc/apt.conf.5.xml +++ b/doc/apt.conf.5.xml @@ -150,8 +150,9 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";}; Default-Release - Default release to install packages from if more than one - version available. Contains release name, codename or release version. Examples: 'stable', 'testing', 'unstable', 'lenny', 'squeeze', '4.0', '5.0*'. See also &apt-preferences;. + Default release to install packages from if more than one + version available. Contains release name, codename or release version. Examples: 'stable', 'testing', + 'unstable', '&stable-codename;', '&testing-codename;', '4.0', '5.0*'. See also &apt-preferences;. Ignore-Hold diff --git a/doc/apt.ent b/doc/apt.ent index c463f7811..be769e232 100644 --- a/doc/apt.ent +++ b/doc/apt.ent @@ -392,3 +392,7 @@ This is done on purpose, to avoid losing content when the translation is lagging behind the original content. "> + + + + diff --git a/doc/apt_preferences.5.xml b/doc/apt_preferences.5.xml index 77b7776e8..5f8f9fded 100644 --- a/doc/apt_preferences.5.xml +++ b/doc/apt_preferences.5.xml @@ -218,11 +218,11 @@ Pin-Priority: 50 The following record assigns a high priority to all package versions -belonging to any distribution whose Codename is "squeeze". +belonging to any distribution whose Codename is "&testing-codename;". Package: * -Pin: release n=squeeze +Pin: release n=&testing-codename; Pin-Priority: 900 @@ -355,7 +355,7 @@ APT priorities: The Release file is normally found in the directory .../dists/dist-name: for example, .../dists/stable/Release, -or .../dists/woody/Release. +or .../dists/&stable-codename;/Release. It consists of a single multi-line record which applies to all of the packages in the directory tree below its parent. Unlike the Packages file, nearly all of the lines in a Release @@ -383,14 +383,14 @@ Pin: release a=stable the Codename: line names the codename to which all the packages in the directory tree belong. For example, the line -"Codename: squeeze" +"Codename: &testing-codename;" specifies that all of the packages in the directory tree below the parent of the Release file belong to a version named -squeeze. Specifying this value in the APT preferences file +&testing-codename;. Specifying this value in the APT preferences file would require the line: -Pin: release n=squeeze +Pin: release n=&testing-codename; @@ -590,9 +590,9 @@ the example configurations above. Explanation: Uninstall or do not install any Debian-originated package versions -Explanation: other than those in the distribution codenamed with squeeze or sid +Explanation: other than those in the distribution codenamed with &testing-codename; or sid Package: * -Pin: release n=squeeze +Pin: release n=&testing-codename; Pin-Priority: 900 Explanation: Debian unstable is always codenamed with sid @@ -608,7 +608,7 @@ Pin-Priority: -10 With a suitable &sources-list; file and the above preferences file, any of the following commands will cause APT to upgrade to the -latest version(s) in the release codenamed with squeeze. +latest version(s) in the release codenamed with &testing-codename;. apt-get install package-name @@ -620,7 +620,7 @@ apt-get dist-upgrade The following command will cause APT to upgrade the specified package to the latest version from the sid distribution. Thereafter, apt-get upgrade will upgrade -the package to the most recent squeeze version if that is +the package to the most recent &testing-codename; version if that is more recent than the installed version, otherwise, to the most recent sid version if that is more recent than the installed version. diff --git a/doc/sources.list.5.xml b/doc/sources.list.5.xml index c71ae6bdd..b0ff42b59 100644 --- a/doc/sources.list.5.xml +++ b/doc/sources.list.5.xml @@ -111,8 +111,8 @@ Some examples: -deb http://http.us.debian.org/debian stable main contrib non-free -deb http://http.us.debian.org/debian dists/stable-updates/ +deb http://ftp.debian.org/debian &stable-codename; main contrib non-free +deb http://security.debian.org/ &stable-codename;/updates main contrib non-free @@ -206,8 +206,8 @@ deb http://http.us.debian.org/debian dists/stable-updates/ deb http://archive.debian.org/debian-archive hamm main Uses FTP to access the archive at ftp.debian.org, under the debian - directory, and uses only the stable/contrib area. - deb ftp://ftp.debian.org/debian stable contrib + directory, and uses only the &stable-codename;/contrib area. + deb ftp://ftp.debian.org/debian &stable-codename; contrib Uses FTP to access the archive at ftp.debian.org, under the debian directory, and uses only the unstable/contrib area. If this line appears as -- cgit v1.2.3-70-g09d2 From 10df254bd756cea401e2564d465bbb4a99ee8e9e Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Thu, 13 May 2010 17:58:35 +0200 Subject: add "NotAutomatic: yes" handling, thanks Osamu Aoki (Closes: #490347) --- debian/changelog | 1 + doc/apt_preferences.5.xml | 10 +++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 0902e79c8..2ad9fbdd2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -23,6 +23,7 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low - use stable-codename instead of stable in the examples (Closes: #531492) * doc/apt_preferences.5.xml: - adapt some examples here to use current codenames as well + - add "NotAutomatic: yes" handling, thanks Osamu Aoki (Closes: #490347) [ Jari Aalto ] * debian/rules: diff --git a/doc/apt_preferences.5.xml b/doc/apt_preferences.5.xml index 5f8f9fded..abcf56744 100644 --- a/doc/apt_preferences.5.xml +++ b/doc/apt_preferences.5.xml @@ -97,6 +97,12 @@ APT::Default-Release "stable"; algorithm to set the priorities of the versions of a package. Assign: + +priority 1 +to the versions coming from archives which in their Release +files are marked as "NotAutomatic: yes" like the debian experimental archive. + + priority 100 to the version that is already installed (if any). @@ -116,7 +122,9 @@ algorithm to set the priorities of the versions of a package. Assign: If the target release has not been specified then APT simply assigns priority 100 to all installed package versions and priority 500 to all -uninstalled package versions. +uninstalled package versions, expect versions coming from archives which +in their Release files are marked as "NotAutomatic: yes" - +these versions get the priority 1. APT then applies the following rules, listed in order of precedence, to determine which version of a package to install. -- cgit v1.2.3-70-g09d2 From 8545b536e3459a06fa007e2c307a77188e5de4b1 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Fri, 14 May 2010 12:12:23 +0200 Subject: handle multiple --{tar,diff,dsc}-only options correctly --- cmdline/apt-get.cc | 32 ++++++++++++++++++-------------- debian/changelog | 1 + 2 files changed, 19 insertions(+), 14 deletions(-) (limited to 'debian/changelog') diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 00da0855f..dd5ef1743 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -2271,6 +2271,14 @@ bool DoSource(CommandLine &CmdL) // insert all downloaded uris into this set to avoid downloading them // twice set queued; + + // Diff only mode only fetches .diff files + bool const diffOnly = _config->FindB("APT::Get::Diff-Only", false); + // Tar only mode only fetches .tar files + bool const tarOnly = _config->FindB("APT::Get::Tar-Only", false); + // Dsc only mode only fetches .dsc files + bool const dscOnly = _config->FindB("APT::Get::Dsc-Only", false); + // Load the requestd sources into the fetcher unsigned J = 0; for (const char **I = CmdL.FileList + 1; *I != 0; I++, J++) @@ -2297,21 +2305,17 @@ bool DoSource(CommandLine &CmdL) Dsc[J].Version = Last->Version(); Dsc[J].Dsc = flNotDir(I->Path); } - - // Diff only mode only fetches .diff files - if (_config->FindB("APT::Get::Diff-Only",false) == true && - I->Type != "diff") - continue; - - // Tar only mode only fetches .tar files - if (_config->FindB("APT::Get::Tar-Only",false) == true && - I->Type != "tar") - continue; - // Dsc only mode only fetches .dsc files - if (_config->FindB("APT::Get::Dsc-Only",false) == true && - I->Type != "dsc") - continue; + // Handle the only options so that multiple can be used at once + if (diffOnly == true || tarOnly == true || dscOnly == true) + { + if ((diffOnly == true && I->Type == "diff") || + (tarOnly == true && I->Type == "tar") || + (dscOnly == true && I->Type == "dsc")) + ; // Fine, we want this file downloaded + else + continue; + } // don't download the same uri twice (should this be moved to // the fetcher interface itself?) diff --git a/debian/changelog b/debian/changelog index 2ad9fbdd2..cb0bd6aa9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,6 +4,7 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low * cmdline/apt-get.cc: - rerun dpkg-source in source if --fix-broken is given (Closes: #576752) - don't suggest held packages as they are installed (Closes: #578135) + - handle multiple --{tar,diff,dsc}-only options correctly * cmdline/apt-cache.cc: - use GroupCount for package names in stats and add a package struct line * methods/rred.cc: -- cgit v1.2.3-70-g09d2 From 86924b165264c2019edf85799dfdb6634b178853 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 15 May 2010 12:50:43 +0200 Subject: * README.arch: - remove the file completely as it has no use nowadays --- README.arch | 12 ------------ debian/changelog | 2 ++ 2 files changed, 2 insertions(+), 12 deletions(-) delete mode 100644 README.arch (limited to 'debian/changelog') diff --git a/README.arch b/README.arch deleted file mode 100644 index 58c40a497..000000000 --- a/README.arch +++ /dev/null @@ -1,12 +0,0 @@ - -You can build apt from arch, but this needs the following additional -packages (in addtion to the usual build-depends): -autoconf automake xmlto perlsgml sgml2x sgmlspl docbook doxygen - -then run: - -$ debian/rules arch-build - -that will build packages in the "debian/arch-build" directory. It will -honor "DEB_BUILD_PROG_OPTS" as options that are passed to debuild (e.g. -S -may be usefull). diff --git a/debian/changelog b/debian/changelog index cb0bd6aa9..9d197863c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -12,6 +12,8 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low "old" file - thanks to Philipp Weis for noticing! (Closes: #571541) * debian/rules: - remove targets referring to CVS or arch as they are useless + * README.arch: + - remove the file completely as it has no use nowadays * apt-pkg/depcache.cc: - be doublesure that the killer query is empty before starting reinstall * methods/gpgv.cc: -- cgit v1.2.3-70-g09d2 From a59397c121813583f5d43f70aa0a779bd0025477 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 May 2010 12:06:58 +0200 Subject: use $(CURDIR) instead of $(pwd) --- debian/changelog | 1 + debian/rules | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 9d197863c..6d7b62be0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -12,6 +12,7 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low "old" file - thanks to Philipp Weis for noticing! (Closes: #571541) * debian/rules: - remove targets referring to CVS or arch as they are useless + - use $(CURDIR) instead of $(pwd) * README.arch: - remove the file completely as it has no use nowadays * apt-pkg/depcache.cc: diff --git a/debian/rules b/debian/rules index cb4622779..f1cb77fbe 100755 --- a/debian/rules +++ b/debian/rules @@ -231,7 +231,7 @@ apt: build build-doc debian/shlibs.local dh_fixperms -p$@ dh_makeshlibs -p$@ --major=$(LIBAPTPKG_MAJOR) --version-info='$(LIBAPTPKG_PROVIDE)' dh_installdeb -p$@ - dh_shlibdeps -p$@ -l$(pwd)/debian/apt/usr/lib:$(pwd)/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt + dh_shlibdeps -p$@ -l$(CURDIR)/debian/apt/usr/lib:$(CURDIR)/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt dh_gencontrol -p$@ -u -Vlibapt-pkg:provides=$(LIBAPTPKG_PROVIDE) dh_md5sums -p$@ dh_builddeb -p$@ @@ -284,7 +284,7 @@ apt-utils: build debian/shlibs.local dh_fixperms -p$@ dh_makeshlibs -p$@ --major=$(LIBAPTINST_MAJOR) --version-info='$(LIBAPTINST_PROVIDE)' dh_installdeb -p$@ - dh_shlibdeps -p$@ -l$(pwd)/debian/apt/usr/lib:$(pwd)/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt-utils + dh_shlibdeps -p$@ -l$(CURDIR)/debian/apt/usr/lib:$(CURDIR)/debian/$@/usr/lib -- -Ldebian/shlibs.local.apt-utils dh_gencontrol -p$@ -u -Vlibapt-inst:provides=$(LIBAPTINST_PROVIDE) dh_md5sums -p$@ dh_builddeb -p$@ @@ -310,7 +310,7 @@ apt-transport-https: build debian/shlibs.local libapt-pkg-dev dh_compress -p$@ dh_fixperms -p$@ dh_installdeb -p$@ - dh_shlibdeps -p$@ -l$(pwd)/debian/apt/usr/lib:$(pwd)/debian/$@/usr/lib + dh_shlibdeps -p$@ -l$(CURDIR)/debian/apt/usr/lib:$(CURDIR)/debian/$@/usr/lib dh_gencontrol -p$@ dh_md5sums -p$@ dh_builddeb -p$@ -- cgit v1.2.3-70-g09d2 From 39151234858bb92d2e24ab367ebc14b363b4a48c Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 May 2010 12:09:45 +0200 Subject: use dpkg-buildflags if available for CXXFLAGS --- debian/changelog | 1 + debian/rules | 10 +++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 6d7b62be0..a0adde726 100644 --- a/debian/changelog +++ b/debian/changelog @@ -13,6 +13,7 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low * debian/rules: - remove targets referring to CVS or arch as they are useless - use $(CURDIR) instead of $(pwd) + - use dpkg-buildflags if available for CXXFLAGS * README.arch: - remove the file completely as it has no use nowadays * apt-pkg/depcache.cc: diff --git a/debian/rules b/debian/rules index f1cb77fbe..827fc2034 100755 --- a/debian/rules +++ b/debian/rules @@ -27,10 +27,14 @@ endif # See below -include build/environment.mak -ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) - export CXXFLAGS = -O0 -g -Wall +ifneq (,$(shell which dpkg-buildflags)) + export CXXFLAGS = $(shell dpkg-buildflags --get CXXFLAGS) else - export CXXFLAGS = -O2 -g -Wall + ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + export CXXFLAGS = -O0 -g -Wall + else + export CXXFLAGS = -O2 -g -Wall + endif endif # Default rule -- cgit v1.2.3-70-g09d2 From b1c9703eb9fcdd2c7f177b5ef1e3f186c3080713 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 May 2010 12:31:08 +0200 Subject: * debian/libapt-pkg-doc.doc-base.cache: - remove yet another reference to the removed cache.sgml --- debian/changelog | 2 ++ debian/libapt-pkg-doc.doc-base.cache | 18 ------------------ 2 files changed, 2 insertions(+), 18 deletions(-) delete mode 100644 debian/libapt-pkg-doc.doc-base.cache (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index a0adde726..42917aeb7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -29,6 +29,8 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low * doc/apt_preferences.5.xml: - adapt some examples here to use current codenames as well - add "NotAutomatic: yes" handling, thanks Osamu Aoki (Closes: #490347) + * debian/libapt-pkg-doc.doc-base.cache: + - remove yet another reference to the removed cache.sgml [ Jari Aalto ] * debian/rules: diff --git a/debian/libapt-pkg-doc.doc-base.cache b/debian/libapt-pkg-doc.doc-base.cache deleted file mode 100644 index 4b47db810..000000000 --- a/debian/libapt-pkg-doc.doc-base.cache +++ /dev/null @@ -1,18 +0,0 @@ -Document: libapt-pkg-doc-cache -Title: APT Cache Specification -Author: Jason Gunthorpe -Abstract: The APT Cache Specification describes the complete implementation - and format of the APT Cache file. The APT Cache file is a way for APT to - parse and store a large number of package files for display in the UI. - It's primary design goal is to make display of a single package in the - tree very fast by pre-linking important things like dependencies and - provides. The specification doubles as documentation for one of the - in-memory structures used by the package library and the APT GUI. -Section: Debian - -Format: html -Index: /usr/share/doc/libapt-pkg-doc/cache.html/index.html -Files: /usr/share/doc/libapt-pkg-doc/cache.html/*.html - -Format: text -Files: /usr/share/doc/libapt-pkg-doc/cache.text.gz -- cgit v1.2.3-70-g09d2 From 4fd5ef4244bc2eb1f7b444ec4ee7c30867b4757d Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 May 2010 13:03:19 +0200 Subject: * doc/apt-get.8.xml: - do not say explicit target_release_{name,version,codename}, it should be clear by itself and 'man' can break lines again (Closes: #566166) --- debian/changelog | 3 +++ doc/apt-get.8.xml | 26 ++++++-------------------- 2 files changed, 9 insertions(+), 20 deletions(-) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 42917aeb7..006149a60 100644 --- a/debian/changelog +++ b/debian/changelog @@ -31,6 +31,9 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low - add "NotAutomatic: yes" handling, thanks Osamu Aoki (Closes: #490347) * debian/libapt-pkg-doc.doc-base.cache: - remove yet another reference to the removed cache.sgml + * doc/apt-get.8.xml: + - do not say explicit target_release_{name,version,codename}, it should + be clear by itself and 'man' can break lines again (Closes: #566166) [ Jari Aalto ] * debian/rules: diff --git a/doc/apt-get.8.xml b/doc/apt-get.8.xml index 4f8c80169..fd4e89bf0 100644 --- a/doc/apt-get.8.xml +++ b/doc/apt-get.8.xml @@ -46,18 +46,10 @@ - - - - target_release_name - - - target_release_number_expression - - - target_release_codename - - + + + target_release + @@ -73,10 +65,7 @@ =pkg_version_number - /target_release_name - - - /target_release_codename + /target_release @@ -92,10 +81,7 @@ =pkg_version_number - /target_release_name - - - /target_release_codename + /target_release -- cgit v1.2.3-70-g09d2 From 9233ef0dd48f896d2740e1a14061cc1c99a27d84 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 May 2010 13:18:14 +0200 Subject: remove the gnome-apt reference as it is removed from unstable --- debian/changelog | 1 + doc/apt-get.8.xml | 2 +- doc/apt.ent | 6 ------ 3 files changed, 2 insertions(+), 7 deletions(-) (limited to 'debian/changelog') diff --git a/debian/changelog b/debian/changelog index 006149a60..0d114c915 100644 --- a/debian/changelog +++ b/debian/changelog @@ -34,6 +34,7 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low * doc/apt-get.8.xml: - do not say explicit target_release_{name,version,codename}, it should be clear by itself and 'man' can break lines again (Closes: #566166) + - remove the gnome-apt reference as it is removed from unstable [ Jari Aalto ] * debian/rules: diff --git a/doc/apt-get.8.xml b/doc/apt-get.8.xml index fd4e89bf0..abdec96c1 100644 --- a/doc/apt-get.8.xml +++ b/doc/apt-get.8.xml @@ -112,7 +112,7 @@ apt-get is the command-line tool for handling packages, and may be considered the user's "back-end" to other tools using the APT library. Several "front-end" interfaces exist, such as &dselect;, - &aptitude;, &synaptic;, &gnome-apt; and &wajig;. + &aptitude;, &synaptic; and &wajig;. Unless the , or option is given, one of the commands below must be present. diff --git a/doc/apt.ent b/doc/apt.ent index be769e232..494c6b02c 100644 --- a/doc/apt.ent +++ b/doc/apt.ent @@ -142,12 +142,6 @@ " > - - gnome-apt - 1 - " -> - wajig 1 -- cgit v1.2.3-70-g09d2 From b3514c569564ebd7ee90c04f0af325510e129386 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 May 2010 13:40:50 +0200 Subject: * apt-pkg/deb/dpkgpm.cc: - add 'disappear' to the known processing states, thanks Jonathan Nieder --- apt-pkg/deb/dpkgpm.cc | 4 +++- debian/changelog | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'debian/changelog') diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc index ca8faa8a5..a640a0c77 100644 --- a/apt-pkg/deb/dpkgpm.cc +++ b/apt-pkg/deb/dpkgpm.cc @@ -50,6 +50,7 @@ namespace std::make_pair("configure", N_("Configuring %s")), std::make_pair("remove", N_("Removing %s")), std::make_pair("purge", N_("Completely removing %s")), + std::make_pair("disappear", N_("Noting disappearance of %s")), std::make_pair("trigproc", N_("Running post-installation trigger %s")) }; @@ -419,7 +420,8 @@ void pkgDPkgPM::ProcessDpkgStatusLine(int OutStatusFd, char *line) 'processing: install: pkg' 'processing: configure: pkg' 'processing: remove: pkg' - 'processing: purge: pkg' - but for apt is it a ignored "unknown" action + 'processing: purge: pkg' + 'processing: disappear: pkg' 'processing: trigproc: trigger' */ diff --git a/debian/changelog b/debian/changelog index 0d114c915..c9a7f2e35 100644 --- a/debian/changelog +++ b/debian/changelog @@ -35,6 +35,8 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low - do not say explicit target_release_{name,version,codename}, it should be clear by itself and 'man' can break lines again (Closes: #566166) - remove the gnome-apt reference as it is removed from unstable + * apt-pkg/deb/dpkgpm.cc: + - add 'disappear' to the known processing states, thanks Jonathan Nieder [ Jari Aalto ] * debian/rules: -- cgit v1.2.3-70-g09d2 From 642ebc1a04c9c7915474c57f1143a9389ee6636a Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 May 2010 20:10:11 +0200 Subject: - show at the end of the install process a list of disappeared packages * apt-pkg/packagemanager.h: - export info about disappeared packages with GetDisappearedPackages() --- apt-pkg/deb/dpkgpm.cc | 5 +++++ apt-pkg/packagemanager.h | 16 ++++++++++++++-- cmdline/apt-get.cc | 21 +++++++++++++++++++-- debian/changelog | 3 +++ 4 files changed, 41 insertions(+), 4 deletions(-) (limited to 'debian/changelog') diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc index a640a0c77..8318fe37f 100644 --- a/apt-pkg/deb/dpkgpm.cc +++ b/apt-pkg/deb/dpkgpm.cc @@ -468,6 +468,9 @@ void pkgDPkgPM::ProcessDpkgStatusLine(int OutStatusFd, char *line) write(OutStatusFd, status.str().c_str(), status.str().size()); if (Debug == true) std::clog << "send: '" << status.str() << "'" << endl; + + if (strncmp(action, "disappear", strlen("disappear")) == 0) + disappearedPkgs.insert(string(pkg_or_trigger)); return; } @@ -913,6 +916,8 @@ bool pkgDPkgPM::Go(int OutStatusFd) { if((*I).Pkg.end() == true) continue; + if (I->Op == Item::Configure && disappearedPkgs.find(I->Pkg.Name()) != disappearedPkgs.end()) + continue; Args[n++] = I->Pkg.Name(); Size += strlen(Args[n-1]); } diff --git a/apt-pkg/packagemanager.h b/apt-pkg/packagemanager.h index af1476b7a..efd2cfac6 100644 --- a/apt-pkg/packagemanager.h +++ b/apt-pkg/packagemanager.h @@ -28,6 +28,7 @@ #include #include #include +#include using std::string; @@ -47,7 +48,15 @@ class pkgPackageManager : protected pkgCache::Namespace pkgDepCache &Cache; pkgOrderList *List; bool Debug; - + + /** \brief saves packages dpkg let disappear + + This way APT can retreat from trying to configure these + packages later on and a frontend can choose to display a + notice to inform the user about these disappears. + */ + std::set disappearedPkgs; + bool DepAdd(pkgOrderList &Order,PkgIterator P,int Depth = 0); void ImmediateAdd(PkgIterator P, bool UseInstallVer, unsigned const int &Depth = 0); virtual OrderResult OrderInstall(); @@ -93,7 +102,10 @@ class pkgPackageManager : protected pkgCache::Namespace // stuff that needs to be done after the fork OrderResult DoInstallPostFork(int statusFd=-1); bool FixMissing(); - + + /** \brief returns all packages dpkg let disappear */ + inline std::set GetDisappearedPackages() { return disappearedPkgs; }; + pkgPackageManager(pkgDepCache *Cache); virtual ~pkgPackageManager(); }; diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index dd5ef1743..44235e358 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -1044,7 +1044,7 @@ bool InstallPackages(CacheFile &Cache,bool ShwKept,bool Ask = true, if (Res == pkgPackageManager::Failed || _error->PendingError() == true) return false; if (Res == pkgPackageManager::Completed) - return true; + break; // Reload the fetcher object and loop again for media swapping Fetcher.Shutdown(); @@ -1052,7 +1052,24 @@ bool InstallPackages(CacheFile &Cache,bool ShwKept,bool Ask = true, return false; _system->Lock(); - } + } + + std::set const disappearedPkgs = PM->GetDisappearedPackages(); + if (disappearedPkgs.empty() == true) + return true; + + string disappear; + for (std::set::const_iterator d = disappearedPkgs.begin(); + d != disappearedPkgs.end(); ++d) + disappear.append(*d).append(" "); + + ShowList(c1out, P_("The following package disappeared from your system as\n" + "all files have been overwritten by other packages:", + "The following packages disappeared from your system as\n" + "all files have been overwritten by other packages:", disappearedPkgs.size()), disappear, ""); + c0out << _("Note: This is done automatic and on purpose by dpkg.") << std::endl; + + return true; } /*}}}*/ // TryToInstall - Try to install a single package /*{{{*/ diff --git a/debian/changelog b/debian/changelog index c9a7f2e35..f932b48a4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,6 +5,7 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low - rerun dpkg-source in source if --fix-broken is given (Closes: #576752) - don't suggest held packages as they are installed (Closes: #578135) - handle multiple --{tar,diff,dsc}-only options correctly + - show at the end of the install process a list of disappeared packages * cmdline/apt-cache.cc: - use GroupCount for package names in stats and add a package struct line * methods/rred.cc: @@ -37,6 +38,8 @@ apt (0.7.26~exp5) UNRELEASED; urgency=low - remove the gnome-apt reference as it is removed from unstable * apt-pkg/deb/dpkgpm.cc: - add 'disappear' to the known processing states, thanks Jonathan Nieder + * apt-pkg/packagemanager.h: + - export info about disappeared packages with GetDisappearedPackages() [ Jari Aalto ] * debian/rules: -- cgit v1.2.3-70-g09d2