From: Michael Vogt Date: Thu, 14 Dec 2006 11:39:29 +0000 (+0100) Subject: * merged the apt-breaks-iwj branch X-Git-Tag: 0.7.21~284^2~8 X-Git-Url: https://git.saurik.com/apt.git/commitdiff_plain/6ca714d55119e87a01bd475abd08e7212dcafbd0 * merged the apt-breaks-iwj branch * pulled in the other remaining ubuntu changes --- 6ca714d55119e87a01bd475abd08e7212dcafbd0 diff --cc apt-pkg/acquire-item.h index cc46282d6,3a0a690e1..f5272ed86 --- a/apt-pkg/acquire-item.h +++ b/apt-pkg/acquire-item.h @@@ -77,183 -47,39 +77,188 @@@ class pkgAcquire::Ite public: - // State of the item - enum {StatIdle, StatFetching, StatDone, StatError, - StatAuthError, StatTransientNetworkError} Status; + /** \brief The current status of this item. */ + enum ItemState + { + /** \brief The item is waiting to be downloaded. */ + StatIdle, + + /** \brief The item is currently being downloaded. */ + StatFetching, + + /** \brief The item has been successfully downloaded. */ + StatDone, + + /** \brief An error was encountered while downloading this + * item. + */ + StatError, + + /** \brief The item was downloaded but its authenticity could + * not be verified. + */ - StatAuthError ++ StatAuthError, ++ ++ /** \brief The item was could not be downloaded because of ++ * a transient network error (e.g. network down) ++ */ ++ StatTransientNetworkError + } Status; + + /** \brief Contains a textual description of the error encountered + * if #Status is #StatError or #StatAuthError. + */ string ErrorText; + + /** \brief The size of the object to fetch. */ unsigned long FileSize; - unsigned long PartialSize; + + /** \brief How much of the object was already fetched. */ + unsigned long PartialSize; + + /** \brief If not \b NULL, contains the name of a subprocess that + * is operating on this object (for instance, "gzip" or "gpgv"). + */ const char *Mode; + + /** \brief A client-supplied unique identifier. + * + * This field is initalized to 0; it is meant to be filled in by + * clients that wish to use it to uniquely identify items. + * + * \todo it's unused in apt itself + */ unsigned long ID; + + /** \brief If \b true, the entire object has been successfully fetched. + * + * Subclasses should set this to \b true when appropriate. + */ bool Complete; + + /** \brief If \b true, the URI of this object is "local". + * + * The only effect of this field is to exclude the object from the + * download progress indicator's overall statistics. + */ bool Local; - // Number of queues we are inserted into + /** \brief The number of fetch queues into which this item has been + * inserted. + * + * There is one queue for each source from which an item could be + * downloaded. + * + * \sa pkgAcquire + */ unsigned int QueueCounter; - // File to write the fetch into + /** \brief The name of the file into which the retrieved object + * will be written. + */ string DestFile; - // Action members invoked by the worker + /** \brief Invoked by the acquire worker when the object couldn't + * be fetched. + * + * This is a branch of the continuation of the fetch process. + * + * \param Message An RFC822-formatted message from the acquire + * method describing what went wrong. Use LookupTag() to parse + * it. + * + * \param Cnf The method via which the worker tried to fetch this object. + * + * \sa pkgAcqMethod + */ virtual void Failed(string Message,pkgAcquire::MethodConfig *Cnf); + + /** \brief Invoked by the acquire worker when the object was + * fetched successfully. + * + * Note that the object might \e not have been written to + * DestFile; check for the presence of an Alt-Filename entry in + * Message to find the file to which it was really written. + * + * Done is often used to switch from one stage of the processing + * to the next (e.g. fetching, unpacking, copying). It is one + * branch of the continuation of the fetch process. + * + * \param Message Data from the acquire method. Use LookupTag() + * to parse it. + * \param Size The size of the object that was fetched. + * \param Md5Hash The MD5Sum of the object that was fetched. + * \param Cnf The method via which the object was fetched. + * + * \sa pkgAcqMethod + */ virtual void Done(string Message,unsigned long Size,string Md5Hash, pkgAcquire::MethodConfig *Cnf); + + /** \brief Invoked when the worker starts to fetch this object. + * + * \param Message RFC822-formatted data from the worker process. + * Use LookupTag() to parse it. + * + * \param Size The size of the object being fetched. + * + * \sa pkgAcqMethod + */ virtual void Start(string Message,unsigned long Size); + + /** \brief Custom headers to be sent to the fetch process. + * + * \return a string containing RFC822-style headers that are to be + * inserted into the 600 URI Acquire message sent to the fetch + * subprocess. The headers are inserted after a newline-less + * line, so they should (if nonempty) have a leading newline and + * no trailing newline. + */ virtual string Custom600Headers() {return string();}; + + /** \brief A "descriptive" URI-like string. + * + * \return a URI that should be used to describe what is being fetched. + */ virtual string DescURI() = 0; + /** \brief Short item description. + * + * \return a brief description of the object being fetched. + */ virtual string ShortDesc() {return DescURI();} + + /** \brief Invoked by the worker when the download is completely done. */ virtual void Finished() {}; - // Inquire functions + /** \brief MD5Sum. + * + * \return the MD5Sum of this object, if applicable; otherwise, an + * empty string. + */ virtual string MD5Sum() {return string();}; + + /** \return the acquire process with which this item is associated. */ pkgAcquire *GetOwner() {return Owner;}; + + /** \return \b true if this object is being fetched from a trusted source. */ virtual bool IsTrusted() {return false;}; - + + /** \brief Initialize an item. + * + * Adds the item to the list of items known to the acquire + * process, but does not place it into any fetch queues (you must + * manually invoke QueueURI() to do so). + * + * Initializes all fields of the item other than Owner to 0, + * false, or the empty string. + * + * \param Owner The new owner of this item. + */ Item(pkgAcquire *Owner); + + /** \brief Remove this item from its owner's queue by invoking + * pkgAcquire::Remove. + */ virtual ~Item(); }; diff --cc debian/changelog index 80c47bdee,254e603aa..52bdced8f --- a/debian/changelog +++ b/debian/changelog @@@ -1,20 -1,5 +1,31 @@@ -apt (0.6.46.4) unstable; urgency=low +apt (0.7.0) experimental; urgency=low + * Branch that contains tall the new features + * Removed all #pragma interface/implementation ++ * Branch that contains tall the new features: ++ * translated package descriptions ++ * task install support ++ * automatic dependency removal ++ * Removed all #pragma interface/implementation ++ * merged support for the new dpkg "Breaks" field ++ (thanks to Ian Jackson) ++ * handle network failures more gracefully on "update" ++ * support for unattended-upgrades (via unattended-upgrades ++ package) ++ + + -- Michael Vogt Thu, 14 Dec 2006 11:31:41 +0100 + +apt (0.6.46.5) UNRELEASED; urgency=low + + * apt-pkg/algorithm.cc: + - use clog for all debugging + + -- Michael Vogt Thu, 14 Dec 2006 11:31:41 +0100 + +apt (0.6.46.4) unstable; urgency=high + + * ack NMU (closes: #401017) * added apt-secure.8 to "See also" section * apt-pkg/deb/dpkgpm.cc: - added "Dpkg::StopOnError" variable that controls if apt diff --cc debian/rules index 0413310a7,4e7490bed..68302daff --- a/debian/rules +++ b/debian/rules @@@ -210,10 -210,15 +210,15 @@@ apt: build debian/shlibs.loca cp debian/bugscript debian/$@/usr/share/bug/apt/script - cp share/ubuntu-archive.gpg debian/$@/usr/share/$@ - + cp share/debian-archive.gpg debian/$@/usr/share/$@ + cp debian/apt.conf.autoremove debian/$@/etc/apt/apt.conf.d/01autoremove # head -n 500 ChangeLog > debian/ChangeLog + # make rosetta happy and remove pot files in po/ (but leave stuff + # in po/domains/* untouched) and cp *.po into each domain dir + rm -f build/po/*.pot + rm -f po/*.pot + dh_installexamples -p$@ $(BLD)/docs/examples/* dh_installman -p$@ dh_installcron -p$@