diff options
39 files changed, 901 insertions, 536 deletions
diff --git a/apt-pkg/acquire-item.cc b/apt-pkg/acquire-item.cc index 9c1609048..5d0a00055 100644 --- a/apt-pkg/acquire-item.cc +++ b/apt-pkg/acquire-item.cc @@ -330,7 +330,7 @@ pkgAcqDiffIndex::pkgAcqDiffIndex(pkgAcquire *Owner, RealURI = Target->URI; Desc.Owner = this; - Desc.Description = Target->Description + "/DiffIndex"; + Desc.Description = Target->Description + ".diff/Index"; Desc.ShortDesc = Target->ShortDesc; Desc.URI = Target->URI + ".diff/Index"; @@ -350,9 +350,7 @@ pkgAcqDiffIndex::pkgAcqDiffIndex(pkgAcquire *Owner, Desc.URI.substr(0,strlen("file:/")) == "file:/") { // we don't have a pkg file or we don't want to queue - if(Debug) - std::clog << "No index file, local or canceld by user" << std::endl; - Failed("", NULL); + Failed("No index file, local or canceld by user", NULL); return; } @@ -371,7 +369,7 @@ string pkgAcqDiffIndex::Custom600Headers() const { string Final = _config->FindDir("Dir::State::lists"); Final += URItoFileName(Desc.URI); - + if(Debug) std::clog << "Custom600Header-IMS: " << Final << std::endl; @@ -384,178 +382,284 @@ string pkgAcqDiffIndex::Custom600Headers() const /*}}}*/ bool pkgAcqDiffIndex::ParseDiffIndex(string IndexDiffFile) /*{{{*/ { + // failing here is fine: our caller will take care of trying to + // get the complete file if patching fails if(Debug) std::clog << "pkgAcqDiffIndex::ParseIndexDiff() " << IndexDiffFile << std::endl; - pkgTagSection Tags; - string ServerSha1; - vector<DiffInfo> available_patches; - FileFd Fd(IndexDiffFile,FileFd::ReadOnly); pkgTagFile TF(&Fd); if (_error->PendingError() == true) return false; - if(TF.Step(Tags) == true) + pkgTagSection Tags; + if(unlikely(TF.Step(Tags) == false)) + return false; + + HashStringList ServerHashes; + unsigned long long ServerSize = 0; + + for (char const * const * type = HashString::SupportedHashes(); *type != NULL; ++type) { - bool found = false; - DiffInfo d; - string size; + std::string tagname = *type; + tagname.append("-Current"); + std::string const tmp = Tags.FindS(tagname.c_str()); + if (tmp.empty() == true) + continue; - string const tmp = Tags.FindS("SHA1-Current"); + string hash; + unsigned long long size; std::stringstream ss(tmp); - ss >> ServerSha1 >> size; - unsigned long const ServerSize = atol(size.c_str()); + ss >> hash >> size; + if (unlikely(hash.empty() == true)) + continue; + if (unlikely(ServerSize != 0 && ServerSize != size)) + continue; + ServerHashes.push_back(HashString(*type, hash)); + ServerSize = size; + } - FileFd fd(CurrentPackagesFile, FileFd::ReadOnly); - SHA1Summation SHA1; - SHA1.AddFD(fd); - string const local_sha1 = SHA1.Result(); + if (ServerHashes.usable() == false) + { + if (Debug == true) + std::clog << "pkgAcqDiffIndex: " << IndexDiffFile << ": Did not find a good hashsum in the index" << std::endl; + return false; + } - if(local_sha1 == ServerSha1) + if (ServerHashes != HashSums()) + { + if (Debug == true) { - // we have the same sha1 as the server so we are done here - if(Debug) - std::clog << "Package file is up-to-date" << std::endl; - // ensure we have no leftovers from previous runs - std::string Partial = _config->FindDir("Dir::State::lists"); - Partial += "partial/" + URItoFileName(RealURI); - unlink(Partial.c_str()); - // list cleanup needs to know that this file as well as the already - // present index is ours, so we create an empty diff to save it for us - new pkgAcqIndexDiffs(Owner, TransactionManager, Target, - ExpectedHashes, MetaIndexParser, - ServerSha1, available_patches); - return true; + std::clog << "pkgAcqDiffIndex: " << IndexDiffFile << ": Index has different hashes than parser, probably older, so fail pdiffing" << std::endl; + printHashSumComparision(CurrentPackagesFile, ServerHashes, HashSums()); } - else + return false; + } + + if (ServerHashes.VerifyFile(CurrentPackagesFile) == true) + { + // we have the same sha1 as the server so we are done here + if(Debug) + std::clog << "pkgAcqDiffIndex: Package file " << CurrentPackagesFile << " is up-to-date" << std::endl; + + // list cleanup needs to know that this file as well as the already + // present index is ours, so we create an empty diff to save it for us + new pkgAcqIndexDiffs(Owner, TransactionManager, Target, + ExpectedHashes, MetaIndexParser); + return true; + } + + FileFd fd(CurrentPackagesFile, FileFd::ReadOnly); + Hashes LocalHashesCalc; + LocalHashesCalc.AddFD(fd); + HashStringList const LocalHashes = LocalHashesCalc.GetHashStringList(); + + if(Debug) + std::clog << "Server-Current: " << ServerHashes.find(NULL)->toStr() << " and we start at " + << fd.Name() << " " << fd.FileSize() << " " << LocalHashes.find(NULL)->toStr() << std::endl; + + // parse all of (provided) history + vector<DiffInfo> available_patches; + bool firstAcceptedHashes = true; + for (char const * const * type = HashString::SupportedHashes(); *type != NULL; ++type) + { + if (LocalHashes.find(*type) == NULL) + continue; + + std::string tagname = *type; + tagname.append("-History"); + std::string const tmp = Tags.FindS(tagname.c_str()); + if (tmp.empty() == true) + continue; + + string hash, filename; + unsigned long long size; + std::stringstream ss(tmp); + + while (ss >> hash >> size >> filename) { - if(Debug) - std::clog << "SHA1-Current: " << ServerSha1 << " and we start at "<< fd.Name() << " " << fd.Size() << " " << local_sha1 << std::endl; + if (unlikely(hash.empty() == true || filename.empty() == true)) + continue; - // check the historie and see what patches we need - string const history = Tags.FindS("SHA1-History"); - std::stringstream hist(history); - while(hist >> d.sha1 >> size >> d.file) + // see if we have a record for this file already + std::vector<DiffInfo>::iterator cur = available_patches.begin(); + for (; cur != available_patches.end(); ++cur) { - // read until the first match is found - // from that point on, we probably need all diffs - if(d.sha1 == local_sha1) - found=true; - else if (found == false) + if (cur->file != filename || unlikely(cur->result_size != size)) continue; - - if(Debug) - std::clog << "Need to get diff: " << d.file << std::endl; - available_patches.push_back(d); + cur->result_hashes.push_back(HashString(*type, hash)); + break; } - - if (available_patches.empty() == false) + if (cur != available_patches.end()) + continue; + if (firstAcceptedHashes == true) + { + DiffInfo next; + next.file = filename; + next.result_hashes.push_back(HashString(*type, hash)); + next.result_size = size; + next.patch_size = 0; + available_patches.push_back(next); + } + else { - // patching with too many files is rather slow compared to a fast download - unsigned long const fileLimit = _config->FindI("Acquire::PDiffs::FileLimit", 0); - if (fileLimit != 0 && fileLimit < available_patches.size()) - { - if (Debug) - std::clog << "Need " << available_patches.size() << " diffs (Limit is " << fileLimit - << ") so fallback to complete download" << std::endl; - return false; - } - - // see if the patches are too big - found = false; // it was true and it will be true again at the end - d = *available_patches.begin(); - string const firstPatch = d.file; - unsigned long patchesSize = 0; - std::stringstream patches(Tags.FindS("SHA1-Patches")); - while(patches >> d.sha1 >> size >> d.file) - { - if (firstPatch == d.file) - found = true; - else if (found == false) - continue; - - patchesSize += atol(size.c_str()); - } - unsigned long const sizeLimit = ServerSize * _config->FindI("Acquire::PDiffs::SizeLimit", 100); - if (sizeLimit > 0 && (sizeLimit/100) < patchesSize) - { - if (Debug) - std::clog << "Need " << patchesSize << " bytes (Limit is " << sizeLimit/100 - << ") so fallback to complete download" << std::endl; - return false; - } + if (Debug == true) + std::clog << "pkgAcqDiffIndex: " << IndexDiffFile << ": File " << filename + << " wasn't in the list for the first parsed hash! (history)" << std::endl; + break; } } + firstAcceptedHashes = false; + } + + if (unlikely(available_patches.empty() == true)) + { + if (Debug) + std::clog << "pkgAcqDiffIndex: " << IndexDiffFile << ": " + << "Couldn't find any patches for the patch series." << std::endl; + return false; + } - // we have something, queue the next diff - if(found) + for (char const * const * type = HashString::SupportedHashes(); *type != NULL; ++type) + { + if (LocalHashes.find(*type) == NULL) + continue; + + std::string tagname = *type; + tagname.append("-Patches"); + std::string const tmp = Tags.FindS(tagname.c_str()); + if (tmp.empty() == true) + continue; + + string hash, filename; + unsigned long long size; + std::stringstream ss(tmp); + + while (ss >> hash >> size >> filename) { - // FIXME: make this use the method - PackagesFileReadyInPartial = true; - std::string const Partial = GetPartialFileNameFromURI(RealURI); - - FileFd From(CurrentPackagesFile, FileFd::ReadOnly); - FileFd To(Partial, FileFd::WriteEmpty); - if(CopyFile(From, To) == false) - return _error->Errno("CopyFile", "failed to copy"); - - if(Debug) - std::cerr << "Done copying " << CurrentPackagesFile - << " -> " << Partial - << std::endl; + if (unlikely(hash.empty() == true || filename.empty() == true)) + continue; - // queue the diffs - string::size_type const last_space = Description.rfind(" "); - if(last_space != string::npos) - Description.erase(last_space, Description.size()-last_space); - - /* decide if we should download patches one by one or in one go: - The first is good if the server merges patches, but many don't so client - based merging can be attempt in which case the second is better. - "bad things" will happen if patches are merged on the server, - but client side merging is attempt as well */ - bool pdiff_merge = _config->FindB("Acquire::PDiffs::Merge", true); - if (pdiff_merge == true) + // see if we have a record for this file already + std::vector<DiffInfo>::iterator cur = available_patches.begin(); + for (; cur != available_patches.end(); ++cur) { - // reprepro adds this flag if it has merged patches on the server - std::string const precedence = Tags.FindS("X-Patch-Precedence"); - pdiff_merge = (precedence != "merged"); + if (cur->file != filename) + continue; + if (unlikely(cur->patch_size != 0 && cur->patch_size != size)) + continue; + cur->patch_hashes.push_back(HashString(*type, hash)); + cur->patch_size = size; + break; } + if (cur != available_patches.end()) + continue; + if (Debug == true) + std::clog << "pkgAcqDiffIndex: " << IndexDiffFile << ": File " << filename + << " wasn't in the list for the first parsed hash! (patches)" << std::endl; + break; + } + } - if (pdiff_merge == false) - { - new pkgAcqIndexDiffs(Owner, TransactionManager, Target, ExpectedHashes, - MetaIndexParser, - ServerSha1, available_patches); - } - else - { - std::vector<pkgAcqIndexMergeDiffs*> *diffs = new std::vector<pkgAcqIndexMergeDiffs*>(available_patches.size()); - for(size_t i = 0; i < available_patches.size(); ++i) - (*diffs)[i] = new pkgAcqIndexMergeDiffs(Owner, - TransactionManager, - Target, - ExpectedHashes, - MetaIndexParser, - available_patches[i], - diffs); - } + bool foundStart = false; + for (std::vector<DiffInfo>::iterator cur = available_patches.begin(); + cur != available_patches.end(); ++cur) + { + if (LocalHashes != cur->result_hashes) + continue; - Complete = false; - Status = StatDone; - Dequeue(); - return true; - } + available_patches.erase(available_patches.begin(), cur); + foundStart = true; + break; } + + if (foundStart == false || unlikely(available_patches.empty() == true)) + { + if (Debug) + std::clog << "pkgAcqDiffIndex: " << IndexDiffFile << ": " + << "Couldn't find the start of the patch series." << std::endl; + return false; + } + + // patching with too many files is rather slow compared to a fast download + unsigned long const fileLimit = _config->FindI("Acquire::PDiffs::FileLimit", 0); + if (fileLimit != 0 && fileLimit < available_patches.size()) + { + if (Debug) + std::clog << "Need " << available_patches.size() << " diffs (Limit is " << fileLimit + << ") so fallback to complete download" << std::endl; + return false; + } + + // calculate the size of all patches we have to get + // note that all sizes are uncompressed, while we download compressed files + unsigned long long patchesSize = 0; + for (std::vector<DiffInfo>::const_iterator cur = available_patches.begin(); + cur != available_patches.end(); ++cur) + patchesSize += cur->patch_size; + unsigned long long const sizeLimit = ServerSize * _config->FindI("Acquire::PDiffs::SizeLimit", 100); + if (false && sizeLimit > 0 && (sizeLimit/100) < patchesSize) + { + if (Debug) + std::clog << "Need " << patchesSize << " bytes (Limit is " << sizeLimit/100 + << ") so fallback to complete download" << std::endl; + return false; + } + + // FIXME: make this use the method + PackagesFileReadyInPartial = true; + std::string const Partial = GetPartialFileNameFromURI(RealURI); + + FileFd From(CurrentPackagesFile, FileFd::ReadOnly); + FileFd To(Partial, FileFd::WriteEmpty); + if(CopyFile(From, To) == false) + return _error->Errno("CopyFile", "failed to copy"); - // Nothing found, report and return false - // Failing here is ok, if we return false later, the full - // IndexFile is queued if(Debug) - std::clog << "Can't find a patch in the index file" << std::endl; - return false; + std::cerr << "Done copying " << CurrentPackagesFile + << " -> " << Partial + << std::endl; + + // we have something, queue the diffs + string::size_type const last_space = Description.rfind(" "); + if(last_space != string::npos) + Description.erase(last_space, Description.size()-last_space); + + /* decide if we should download patches one by one or in one go: + The first is good if the server merges patches, but many don't so client + based merging can be attempt in which case the second is better. + "bad things" will happen if patches are merged on the server, + but client side merging is attempt as well */ + bool pdiff_merge = _config->FindB("Acquire::PDiffs::Merge", true); + if (pdiff_merge == true) + { + // reprepro adds this flag if it has merged patches on the server + std::string const precedence = Tags.FindS("X-Patch-Precedence"); + pdiff_merge = (precedence != "merged"); + } + + if (pdiff_merge == false) + { + new pkgAcqIndexDiffs(Owner, TransactionManager, Target, ExpectedHashes, + MetaIndexParser, available_patches); + } + else + { + std::vector<pkgAcqIndexMergeDiffs*> *diffs = new std::vector<pkgAcqIndexMergeDiffs*>(available_patches.size()); + for(size_t i = 0; i < available_patches.size(); ++i) + (*diffs)[i] = new pkgAcqIndexMergeDiffs(Owner, TransactionManager, + Target, + ExpectedHashes, + MetaIndexParser, + available_patches[i], + diffs); + } + + Complete = false; + Status = StatDone; + Dequeue(); + return true; } /*}}}*/ void pkgAcqDiffIndex::Failed(string Message,pkgAcquire::MethodConfig * Cnf)/*{{{*/ @@ -593,13 +697,17 @@ void pkgAcqDiffIndex::Done(string Message,unsigned long long Size,HashStringList } + string FinalFile; + FinalFile = _config->FindDir("Dir::State::lists"); + FinalFile += URItoFileName(Desc.URI); + + if(StringToBool(LookupTag(Message,"IMS-Hit"),false)) + DestFile = FinalFile; + if(!ParseDiffIndex(DestFile)) return Failed("Message: Couldn't parse pdiff index", Cnf); // queue for final move - string FinalFile; - FinalFile = _config->FindDir("Dir::State::lists")+URItoFileName(RealURI); - FinalFile += string(".IndexDiff"); TransactionManager->TransactionStageCopy(this, DestFile, FinalFile); Complete = true; @@ -618,10 +726,9 @@ pkgAcqIndexDiffs::pkgAcqIndexDiffs(pkgAcquire *Owner, struct IndexTarget const * const Target, HashStringList const &ExpectedHashes, indexRecords *MetaIndexParser, - string ServerSha1, vector<DiffInfo> diffs) : pkgAcqBaseIndex(Owner, TransactionManager, Target, ExpectedHashes, MetaIndexParser), - available_patches(diffs), ServerSha1(ServerSha1) + available_patches(diffs) { DestFile = GetPartialFileNameFromURI(Target->URI); @@ -676,16 +783,9 @@ void pkgAcqIndexDiffs::Finish(bool allDone) } // queue for copy - PartialFile = GetPartialFileNameFromURI(RealURI); - - DestFile = _config->FindDir("Dir::State::lists"); - DestFile += URItoFileName(RealURI); - - // this happens if we have a up-to-date indexfile - if(!FileExists(PartialFile)) - PartialFile = DestFile; - - TransactionManager->TransactionStageCopy(this, PartialFile, DestFile); + std::string FinalFile = _config->FindDir("Dir::State::lists"); + FinalFile += URItoFileName(RealURI); + TransactionManager->TransactionStageCopy(this, DestFile, FinalFile); // this is for the "real" finish Complete = true; @@ -716,16 +816,22 @@ bool pkgAcqIndexDiffs::QueueNextDiff() /*{{{*/ } FileFd fd(FinalFile, FileFd::ReadOnly); - SHA1Summation SHA1; - SHA1.AddFD(fd); - string local_sha1 = string(SHA1.Result()); + Hashes LocalHashesCalc; + LocalHashesCalc.AddFD(fd); + HashStringList const LocalHashes = LocalHashesCalc.GetHashStringList(); + if(Debug) - std::clog << "QueueNextDiff: " - << FinalFile << " (" << local_sha1 << ")"<<std::endl; + std::clog << "QueueNextDiff: " << FinalFile << " (" << LocalHashes.find(NULL)->toStr() << ")" << std::endl; + + if (unlikely(LocalHashes.usable() == false || ExpectedHashes.usable() == false)) + { + Failed("Local/Expected hashes are not usable", NULL); + return false; + } // final file reached before all patches are applied - if(local_sha1 == ServerSha1) + if(LocalHashes == ExpectedHashes) { Finish(true); return true; @@ -733,10 +839,10 @@ bool pkgAcqIndexDiffs::QueueNextDiff() /*{{{*/ // remove all patches until the next matching patch is found // this requires the Index file to be ordered - for(vector<DiffInfo>::iterator I=available_patches.begin(); + for(vector<DiffInfo>::iterator I = available_patches.begin(); available_patches.empty() == false && I != available_patches.end() && - I->sha1 != local_sha1; + I->result_hashes != LocalHashes; ++I) { available_patches.erase(I); @@ -745,7 +851,7 @@ bool pkgAcqIndexDiffs::QueueNextDiff() /*{{{*/ // error checking and falling back if no patch was found if(available_patches.empty() == true) { - Failed("Message: No patches available", NULL); + Failed("No patches left to reach target", NULL); return false; } @@ -756,7 +862,7 @@ bool pkgAcqIndexDiffs::QueueNextDiff() /*{{{*/ if(Debug) std::clog << "pkgAcqIndexDiffs::QueueNextDiff(): " << Desc.URI << std::endl; - + QueueURI(Desc); return true; @@ -776,6 +882,17 @@ void pkgAcqIndexDiffs::Done(string Message,unsigned long long Size, HashStringLi // success in downloading a diff, enter ApplyDiff state if(State == StateFetchDiff) { + FileFd fd(DestFile, FileFd::ReadOnly, FileFd::Gzip); + class Hashes LocalHashesCalc; + LocalHashesCalc.AddFD(fd); + HashStringList const LocalHashes = LocalHashesCalc.GetHashStringList(); + + if (fd.Size() != available_patches[0].patch_size || + available_patches[0].patch_hashes != LocalHashes) + { + Failed("Patch has Size/Hashsum mismatch", NULL); + return; + } // rred excepts the patch as $FinalFile.ed Rename(DestFile,FinalFile+".ed"); @@ -812,7 +929,7 @@ void pkgAcqIndexDiffs::Done(string Message,unsigned long long Size, HashStringLi if(available_patches.empty() == false) { new pkgAcqIndexDiffs(Owner, TransactionManager, Target, ExpectedHashes, MetaIndexParser, - ServerSha1, available_patches); + available_patches); return Finish(); } else // update @@ -884,6 +1001,17 @@ void pkgAcqIndexMergeDiffs::Done(string Message,unsigned long long Size,HashStri if (State == StateFetchDiff) { + FileFd fd(DestFile, FileFd::ReadOnly, FileFd::Gzip); + class Hashes LocalHashesCalc; + LocalHashesCalc.AddFD(fd); + HashStringList const LocalHashes = LocalHashesCalc.GetHashStringList(); + + if (fd.Size() != patch.patch_size || patch.patch_hashes != LocalHashes) + { + Failed("Patch has Size/Hashsum mismatch", NULL); + return; + } + // rred expects the patch as $FinalFile.ed.$patchname.gz Rename(DestFile, FinalFile + ".ed." + patch.file + ".gz"); diff --git a/apt-pkg/acquire-item.h b/apt-pkg/acquire-item.h index a3388ca3e..0e7212fc5 100644 --- a/apt-pkg/acquire-item.h +++ b/apt-pkg/acquire-item.h @@ -343,11 +343,17 @@ struct DiffInfo { /** The filename of the diff. */ std::string file; - /** The sha1 hash of the diff. */ - std::string sha1; + /** The hashes of the diff */ + HashStringList result_hashes; - /** The size of the diff. */ - unsigned long size; + /** The hashes of the file after the diff is applied */ + HashStringList patch_hashes; + + /** The size of the file after the diff is applied */ + unsigned long long result_size; + + /** The size of the diff itself */ + unsigned long long patch_size; }; /*}}}*/ /*}}}*/ @@ -817,7 +823,7 @@ class pkgAcqIndexDiffs : public pkgAcqBaseIndex * \return \b true if an applicable diff was found, \b false * otherwise. */ - bool QueueNextDiff(); + APT_HIDDEN bool QueueNextDiff(); /** \brief Handle tasks that must be performed after the item * finishes downloading. @@ -830,7 +836,7 @@ class pkgAcqIndexDiffs : public pkgAcqBaseIndex * \param allDone If \b true, the file was entirely reconstructed, * and its md5sum is verified. */ - void Finish(bool allDone=false); + APT_HIDDEN void Finish(bool allDone=false); protected: @@ -852,9 +858,6 @@ class pkgAcqIndexDiffs : public pkgAcqBaseIndex */ std::vector<DiffInfo> available_patches; - /** Stop applying patches when reaching that sha1 */ - std::string ServerSha1; - /** The current status of this patch. */ enum DiffState { @@ -898,12 +901,10 @@ class pkgAcqIndexDiffs : public pkgAcqBaseIndex * * \param ShortDesc A brief description of this item. * - * \param ExpectedHashes The expected md5sum of the completely + * \param ExpectedHashes The expected hashsums of the completely * reconstructed package index file; the index file will be tested * against this value when it is entirely reconstructed. * - * \param ServerSha1 is the sha1sum of the current file on the server - * * \param diffs The remaining diffs from the index of diffs. They * should be ordered so that each diff appears before any diff * that depends on it. @@ -913,7 +914,6 @@ class pkgAcqIndexDiffs : public pkgAcqBaseIndex struct IndexTarget const * const Target, HashStringList const &ExpectedHash, indexRecords *MetaIndexParser, - std::string ServerSha1, std::vector<DiffInfo> diffs=std::vector<DiffInfo>()); }; /*}}}*/ diff --git a/apt-pkg/algorithms.h b/apt-pkg/algorithms.h index 4d3bfa81f..b6da1f2bf 100644 --- a/apt-pkg/algorithms.h +++ b/apt-pkg/algorithms.h @@ -82,9 +82,9 @@ class pkgSimulate : public pkgPackageManager /*{{{*/ virtual bool Remove(PkgIterator Pkg,bool Purge); private: - void ShortBreaks(); - void Describe(PkgIterator iPkg,std::ostream &out,bool Current,bool Candidate); - + APT_HIDDEN void ShortBreaks(); + APT_HIDDEN void Describe(PkgIterator iPkg,std::ostream &out,bool Current,bool Candidate); + public: pkgSimulate(pkgDepCache *Cache); @@ -114,7 +114,7 @@ class pkgProblemResolver /*{{{*/ // Sort stuff static pkgProblemResolver *This; - static int ScoreSort(const void *a,const void *b) APT_PURE; + APT_HIDDEN static int ScoreSort(const void *a,const void *b) APT_PURE; struct PackageKill { @@ -122,12 +122,12 @@ class pkgProblemResolver /*{{{*/ DepIterator Dep; }; - void MakeScores(); - bool DoUpgrade(pkgCache::PkgIterator Pkg); + APT_HIDDEN void MakeScores(); + APT_HIDDEN bool DoUpgrade(pkgCache::PkgIterator Pkg); + + APT_HIDDEN bool ResolveInternal(bool const BrokenFix = false); + APT_HIDDEN bool ResolveByKeepInternal(); - bool ResolveInternal(bool const BrokenFix = false); - bool ResolveByKeepInternal(); - protected: bool InstOrNewPolicyBroken(pkgCache::PkgIterator Pkg); diff --git a/apt-pkg/aptconfiguration.cc b/apt-pkg/aptconfiguration.cc index 94b6bc246..01b85a74e 100644 --- a/apt-pkg/aptconfiguration.cc +++ b/apt-pkg/aptconfiguration.cc @@ -32,6 +32,35 @@ #include <apti18n.h> /*}}}*/ namespace APT { +// setDefaultConfigurationForCompressors /*{{{*/ +static void setDefaultConfigurationForCompressors() { + // Set default application paths to check for optional compression types + _config->CndSet("Dir::Bin::bzip2", "/bin/bzip2"); + _config->CndSet("Dir::Bin::xz", "/usr/bin/xz"); + if (FileExists(_config->FindFile("Dir::Bin::xz")) == true) { + _config->Set("Dir::Bin::lzma", _config->FindFile("Dir::Bin::xz")); + _config->Set("APT::Compressor::lzma::Binary", "xz"); + if (_config->Exists("APT::Compressor::lzma::CompressArg") == false) { + _config->Set("APT::Compressor::lzma::CompressArg::", "--format=lzma"); + _config->Set("APT::Compressor::lzma::CompressArg::", "-9"); + } + if (_config->Exists("APT::Compressor::lzma::UncompressArg") == false) { + _config->Set("APT::Compressor::lzma::UncompressArg::", "--format=lzma"); + _config->Set("APT::Compressor::lzma::UncompressArg::", "-d"); + } + } else { + _config->CndSet("Dir::Bin::lzma", "/usr/bin/lzma"); + if (_config->Exists("APT::Compressor::lzma::CompressArg") == false) { + _config->Set("APT::Compressor::lzma::CompressArg::", "--suffix="); + _config->Set("APT::Compressor::lzma::CompressArg::", "-9"); + } + if (_config->Exists("APT::Compressor::lzma::UncompressArg") == false) { + _config->Set("APT::Compressor::lzma::UncompressArg::", "--suffix="); + _config->Set("APT::Compressor::lzma::UncompressArg::", "-d"); + } + } +} + /*}}}*/ // getCompressionTypes - Return Vector of usable compressiontypes /*{{{*/ // --------------------------------------------------------------------- /* return a vector of compression types in the preferred order. */ @@ -402,35 +431,6 @@ bool Configuration::checkArchitecture(std::string const &Arch) { return (std::find(archs.begin(), archs.end(), Arch) != archs.end()); } /*}}}*/ -// setDefaultConfigurationForCompressors /*{{{*/ -void Configuration::setDefaultConfigurationForCompressors() { - // Set default application paths to check for optional compression types - _config->CndSet("Dir::Bin::bzip2", "/bin/bzip2"); - _config->CndSet("Dir::Bin::xz", "/usr/bin/xz"); - if (FileExists(_config->FindFile("Dir::Bin::xz")) == true) { - _config->Set("Dir::Bin::lzma", _config->FindFile("Dir::Bin::xz")); - _config->Set("APT::Compressor::lzma::Binary", "xz"); - if (_config->Exists("APT::Compressor::lzma::CompressArg") == false) { - _config->Set("APT::Compressor::lzma::CompressArg::", "--format=lzma"); - _config->Set("APT::Compressor::lzma::CompressArg::", "-9"); - } - if (_config->Exists("APT::Compressor::lzma::UncompressArg") == false) { - _config->Set("APT::Compressor::lzma::UncompressArg::", "--format=lzma"); - _config->Set("APT::Compressor::lzma::UncompressArg::", "-d"); - } - } else { - _config->CndSet("Dir::Bin::lzma", "/usr/bin/lzma"); - if (_config->Exists("APT::Compressor::lzma::CompressArg") == false) { - _config->Set("APT::Compressor::lzma::CompressArg::", "--suffix="); - _config->Set("APT::Compressor::lzma::CompressArg::", "-9"); - } - if (_config->Exists("APT::Compressor::lzma::UncompressArg") == false) { - _config->Set("APT::Compressor::lzma::UncompressArg::", "--suffix="); - _config->Set("APT::Compressor::lzma::UncompressArg::", "-d"); - } - } -} - /*}}}*/ // getCompressors - Return Vector of usealbe compressors /*{{{*/ // --------------------------------------------------------------------- /* return a vector of compressors used by apt-ftparchive in the diff --git a/apt-pkg/aptconfiguration.h b/apt-pkg/aptconfiguration.h index dfed194ae..c7b8d2d73 100644 --- a/apt-pkg/aptconfiguration.h +++ b/apt-pkg/aptconfiguration.h @@ -123,9 +123,6 @@ public: /*{{{*/ /** \return Return a comma-separated list of enabled build profile specifications */ std::string static const getBuildProfilesString(); /*}}}*/ - private: /*{{{*/ - void static setDefaultConfigurationForCompressors(); - /*}}}*/ }; /*}}}*/ } diff --git a/apt-pkg/cacheset.h b/apt-pkg/cacheset.h index 892ad2dfc..f3f1d1fc6 100644 --- a/apt-pkg/cacheset.h +++ b/apt-pkg/cacheset.h @@ -574,21 +574,21 @@ template<> template<class Compare> inline bool PackageContainer<std::vector<pkgC The wrapping is read-only in practice modeled by making erase and co private methods. */ -class PackageUniverse : public PackageContainerInterface { +class APT_HIDDEN PackageUniverse : public PackageContainerInterface { pkgCache * const _cont; public: typedef pkgCache::PkgIterator iterator; typedef pkgCache::PkgIterator const_iterator; - bool empty() const { return false; } - size_t size() const { return _cont->Head().PackageCount; } + APT_PUBLIC bool empty() const { return false; } + APT_PUBLIC size_t size() const { return _cont->Head().PackageCount; } - const_iterator begin() const { return _cont->PkgBegin(); } - const_iterator end() const { return _cont->PkgEnd(); } - iterator begin() { return _cont->PkgBegin(); } - iterator end() { return _cont->PkgEnd(); } + APT_PUBLIC const_iterator begin() const { return _cont->PkgBegin(); } + APT_PUBLIC const_iterator end() const { return _cont->PkgEnd(); } + APT_PUBLIC iterator begin() { return _cont->PkgBegin(); } + APT_PUBLIC iterator end() { return _cont->PkgEnd(); } - PackageUniverse(pkgCache * const Owner) : _cont(Owner) { } + APT_PUBLIC PackageUniverse(pkgCache * const Owner) : _cont(Owner) { } private: bool insert(pkgCache::PkgIterator const &) { return true; } diff --git a/apt-pkg/contrib/configuration.cc b/apt-pkg/contrib/configuration.cc index fbe180f8e..4380d64b9 100644 --- a/apt-pkg/contrib/configuration.cc +++ b/apt-pkg/contrib/configuration.cc @@ -253,11 +253,6 @@ string Configuration::FindDir(const char *Name,const char *Default) const // Configuration::FindVector - Find a vector of values /*{{{*/ // --------------------------------------------------------------------- /* Returns a vector of config values under the given item */ -#if (APT_PKG_MAJOR >= 4 && APT_PKG_MINOR < 13) -vector<string> Configuration::FindVector(const char *Name) const { - return FindVector(Name, ""); -} -#endif vector<string> Configuration::FindVector(const char *Name, std::string const &Default) const { vector<string> Vec; diff --git a/apt-pkg/contrib/configuration.h b/apt-pkg/contrib/configuration.h index 6345c8a5d..2ecea8bee 100644 --- a/apt-pkg/contrib/configuration.h +++ b/apt-pkg/contrib/configuration.h @@ -34,6 +34,8 @@ #include <vector> #include <iostream> +#include <apt-pkg/macros.h> + #ifndef APT_8_CLEANER_HEADERS using std::string; #endif @@ -59,7 +61,7 @@ class Configuration Item *Root; bool ToFree; - + Item *Lookup(Item *Head,const char *S,unsigned long const &Len,bool const &Create); Item *Lookup(const char *Name,const bool &Create); inline const Item *Lookup(const char *Name) const @@ -82,12 +84,8 @@ class Configuration * * \param Name of the parent node * \param Default list of values separated by commas */ - std::vector<std::string> FindVector(const char *Name, std::string const &Default) const; - std::vector<std::string> FindVector(std::string const &Name, std::string const &Default) const { return FindVector(Name.c_str(), Default); }; -#if (APT_PKG_MAJOR >= 4 && APT_PKG_MINOR < 13) - std::vector<std::string> FindVector(const char *Name) const; -#endif - std::vector<std::string> FindVector(std::string const &Name="") const { return FindVector(Name.c_str(), ""); }; + std::vector<std::string> FindVector(const char *Name, std::string const &Default = "") const; + std::vector<std::string> FindVector(std::string const &Name, std::string const &Default = "") const { return FindVector(Name.c_str(), Default); }; int FindI(const char *Name,int const &Default = 0) const; int FindI(std::string const &Name,int const &Default = 0) const {return FindI(Name.c_str(),Default);}; bool FindB(const char *Name,bool const &Default = false) const; @@ -127,7 +125,7 @@ class Configuration class MatchAgainstConfig { std::vector<regex_t *> patterns; - void clearPatterns(); + APT_HIDDEN void clearPatterns(); public: MatchAgainstConfig(char const * Config); diff --git a/apt-pkg/contrib/hashes.cc b/apt-pkg/contrib/hashes.cc index 199e395f6..417982343 100644 --- a/apt-pkg/contrib/hashes.cc +++ b/apt-pkg/contrib/hashes.cc @@ -209,11 +209,11 @@ bool HashStringList::operator==(HashStringList const &other) const /*{{{*/ std::string const forcedType = _config->Find("Acquire::ForceHash", ""); if (forcedType.empty() == false) { - HashString const * const hs = other.find(forcedType); + HashString const * const hs = find(forcedType); HashString const * const ohs = other.find(forcedType); if (hs == NULL || ohs == NULL) return false; - return hs == ohs; + return *hs == *ohs; } short matches = 0; for (const_iterator hs = begin(); hs != end(); ++hs) diff --git a/apt-pkg/contrib/macros.h b/apt-pkg/contrib/macros.h index b268ce24c..a0573398d 100644 --- a/apt-pkg/contrib/macros.h +++ b/apt-pkg/contrib/macros.h @@ -138,7 +138,7 @@ // Non-ABI-Breaks should only increase RELEASE number. // See also buildlib/libversion.mak #define APT_PKG_MAJOR 4 -#define APT_PKG_MINOR 13 +#define APT_PKG_MINOR 14 #define APT_PKG_RELEASE 0 #endif diff --git a/apt-pkg/contrib/strutl.h b/apt-pkg/contrib/strutl.h index da8bebdb5..e20ddca9c 100644 --- a/apt-pkg/contrib/strutl.h +++ b/apt-pkg/contrib/strutl.h @@ -153,9 +153,9 @@ inline const char *DeNull(const char *s) {return (s == 0?"(null)":s);} class URI { void CopyFrom(const std::string &From); - + public: - + std::string Access; std::string User; std::string Password; diff --git a/apt-pkg/deb/debindexfile.cc b/apt-pkg/deb/debindexfile.cc index f90731dd2..9897df53d 100644 --- a/apt-pkg/deb/debindexfile.cc +++ b/apt-pkg/deb/debindexfile.cc @@ -131,7 +131,7 @@ string debSourcesIndex::Info(const char *Type) const // SourcesIndex::Index* - Return the URI to the index files /*{{{*/ // --------------------------------------------------------------------- /* */ -inline string debSourcesIndex::IndexFile(const char *Type) const +string debSourcesIndex::IndexFile(const char *Type) const { string s = URItoFileName(IndexURI(Type)); @@ -265,7 +265,7 @@ string debPackagesIndex::Info(const char *Type) const // PackagesIndex::Index* - Return the URI to the index files /*{{{*/ // --------------------------------------------------------------------- /* */ -inline string debPackagesIndex::IndexFile(const char *Type) const +string debPackagesIndex::IndexFile(const char *Type) const { string s =_config->FindDir("Dir::State::lists") + URItoFileName(IndexURI(Type)); @@ -421,7 +421,7 @@ debTranslationsIndex::debTranslationsIndex(string URI,string Dist,string Section // TranslationIndex::Trans* - Return the URI to the translation files /*{{{*/ // --------------------------------------------------------------------- /* */ -inline string debTranslationsIndex::IndexFile(const char *Type) const +string debTranslationsIndex::IndexFile(const char *Type) const { string s =_config->FindDir("Dir::State::lists") + URItoFileName(IndexURI(Type)); diff --git a/apt-pkg/deb/debindexfile.h b/apt-pkg/deb/debindexfile.h index 18322dc1b..2e3ff5451 100644 --- a/apt-pkg/deb/debindexfile.h +++ b/apt-pkg/deb/debindexfile.h @@ -65,10 +65,10 @@ class debPackagesIndex : public pkgIndexFile std::string Section; std::string Architecture; - std::string Info(const char *Type) const; - std::string IndexFile(const char *Type) const; - std::string IndexURI(const char *Type) const; - + APT_HIDDEN std::string Info(const char *Type) const; + APT_HIDDEN std::string IndexFile(const char *Type) const; + APT_HIDDEN std::string IndexURI(const char *Type) const; + public: virtual const Type *GetType() const APT_CONST; @@ -102,11 +102,11 @@ class debTranslationsIndex : public pkgIndexFile std::string Section; const char * const Language; - std::string Info(const char *Type) const; - std::string IndexFile(const char *Type) const; - std::string IndexURI(const char *Type) const; + APT_HIDDEN std::string Info(const char *Type) const; + APT_HIDDEN std::string IndexFile(const char *Type) const; + APT_HIDDEN std::string IndexURI(const char *Type) const; - inline std::string TranslationFile() const {return std::string("Translation-").append(Language);}; + APT_HIDDEN std::string TranslationFile() const {return std::string("Translation-").append(Language);}; public: @@ -136,10 +136,10 @@ class debSourcesIndex : public pkgIndexFile std::string Dist; std::string Section; - std::string Info(const char *Type) const; - std::string IndexFile(const char *Type) const; - std::string IndexURI(const char *Type) const; - + APT_HIDDEN std::string Info(const char *Type) const; + APT_HIDDEN std::string IndexFile(const char *Type) const; + APT_HIDDEN std::string IndexURI(const char *Type) const; + public: virtual const Type *GetType() const APT_CONST; @@ -214,6 +214,7 @@ class debDscFileIndex : public pkgIndexFile class debDebianSourceDirIndex : public debDscFileIndex { + public: virtual const Type *GetType() const APT_CONST; }; diff --git a/apt-pkg/deb/deblistparser.cc b/apt-pkg/deb/deblistparser.cc index 103b126de..63414c944 100644 --- a/apt-pkg/deb/deblistparser.cc +++ b/apt-pkg/deb/deblistparser.cc @@ -162,7 +162,7 @@ bool debListParser::NewVersion(pkgCache::VerIterator &Ver) std::string const version(Open + 1, (Close - Open) - 1); if (version != Ver.VerStr()) { - map_stringitem_t const idx = StoreString(pkgCacheGenerator::VERSION, version); + map_stringitem_t const idx = StoreString(pkgCacheGenerator::VERSIONNUMBER, version); Ver->SourceVerStr = idx; } } @@ -953,7 +953,7 @@ bool debListParser::LoadReleaseInfo(pkgCache::PkgFileIterator &FileI, } APT_INRELEASE(MIXED, "Suite", FileI->Archive) APT_INRELEASE(MIXED, "Component", FileI->Component) - APT_INRELEASE(VERSION, "Version", FileI->Version) + APT_INRELEASE(VERSIONNUMBER, "Version", FileI->Version) APT_INRELEASE(MIXED, "Origin", FileI->Origin) APT_INRELEASE(MIXED, "Codename", FileI->Codename) APT_INRELEASE(MIXED, "Label", FileI->Label) diff --git a/apt-pkg/deb/debmetaindex.h b/apt-pkg/deb/debmetaindex.h index 7091c198f..399543953 100644 --- a/apt-pkg/deb/debmetaindex.h +++ b/apt-pkg/deb/debmetaindex.h @@ -36,7 +36,7 @@ class debReleaseIndex : public metaIndex { /** \brief dpointer placeholder (for later in case we need it) */ void *d; std::map<std::string, std::vector<debSectionEntry const*> > ArchEntries; - enum { ALWAYS_TRUSTED, NEVER_TRUSTED, CHECK_TRUST } Trusted; + enum APT_HIDDEN { ALWAYS_TRUSTED, NEVER_TRUSTED, CHECK_TRUST } Trusted; public: diff --git a/apt-pkg/deb/debsystem.h b/apt-pkg/deb/debsystem.h index a945f68fb..226cd60bf 100644 --- a/apt-pkg/deb/debsystem.h +++ b/apt-pkg/deb/debsystem.h @@ -29,7 +29,7 @@ class debSystem : public pkgSystem { // private d-pointer debSystemPrivate *d; - bool CheckUpdates(); + APT_HIDDEN bool CheckUpdates(); public: diff --git a/apt-pkg/deb/dpkgpm.h b/apt-pkg/deb/dpkgpm.h index 6bd6ce0ee..2a6e7e004 100644 --- a/apt-pkg/deb/dpkgpm.h +++ b/apt-pkg/deb/dpkgpm.h @@ -52,7 +52,7 @@ class pkgDPkgPM : public pkgPackageManager needs to declare a Replaces on the disappeared package. \param pkgname Name of the package that disappeared */ - void handleDisappearAction(std::string const &pkgname); + APT_HIDDEN void handleDisappearAction(std::string const &pkgname); protected: int pkgFailures; diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc index 16282df21..1332f3ee2 100644 --- a/apt-pkg/depcache.cc +++ b/apt-pkg/depcache.cc @@ -1961,3 +1961,17 @@ bool pkgDepCache::Sweep() /*{{{*/ return true; } /*}}}*/ +// DepCache::MarkAndSweep /*{{{*/ +bool pkgDepCache::MarkAndSweep(InRootSetFunc &rootFunc) +{ + return MarkRequired(rootFunc) && Sweep(); +} +bool pkgDepCache::MarkAndSweep() +{ + std::auto_ptr<InRootSetFunc> f(GetRootSetFunc()); + if(f.get() != NULL) + return MarkAndSweep(*f.get()); + else + return false; +} + /*}}}*/ diff --git a/apt-pkg/depcache.h b/apt-pkg/depcache.h index bec651279..5554e1a69 100644 --- a/apt-pkg/depcache.h +++ b/apt-pkg/depcache.h @@ -91,7 +91,7 @@ class pkgDepCache : protected pkgCache::Namespace * \param follow_suggests If \b true, suggestions of the package * will be recursively marked. */ - void MarkPackage(const pkgCache::PkgIterator &pkg, + APT_HIDDEN void MarkPackage(const pkgCache::PkgIterator &pkg, const pkgCache::VerIterator &ver, bool const &follow_recommends, bool const &follow_suggests); @@ -109,7 +109,7 @@ class pkgDepCache : protected pkgCache::Namespace * * \return \b false if an error occurred. */ - bool MarkRequired(InRootSetFunc &rootFunc); + APT_HIDDEN bool MarkRequired(InRootSetFunc &rootFunc); /** \brief Set the StateCache::Garbage flag on all packages that * should be removed. @@ -120,7 +120,7 @@ class pkgDepCache : protected pkgCache::Namespace * * \return \b false if an error occurred. */ - bool Sweep(); + APT_HIDDEN bool Sweep(); public: @@ -169,7 +169,7 @@ class pkgDepCache : protected pkgCache::Namespace bool released; /** Action groups are noncopyable. */ - ActionGroup(const ActionGroup &other); + APT_HIDDEN ActionGroup(const ActionGroup &other); public: /** \brief Create a new ActionGroup. * @@ -396,19 +396,8 @@ class pkgDepCache : protected pkgCache::Namespace * \param rootFunc A predicate that returns \b true for packages * that should be added to the root set. */ - bool MarkAndSweep(InRootSetFunc &rootFunc) - { - return MarkRequired(rootFunc) && Sweep(); - } - - bool MarkAndSweep() - { - std::auto_ptr<InRootSetFunc> f(GetRootSetFunc()); - if(f.get() != NULL) - return MarkAndSweep(*f.get()); - else - return false; - } + bool MarkAndSweep(InRootSetFunc &rootFunc); + bool MarkAndSweep(); /** \name State Manipulators */ @@ -514,7 +503,7 @@ class pkgDepCache : protected pkgCache::Namespace bool const rPurge, unsigned long const Depth, bool const FromUser); private: - bool IsModeChangeOk(ModeList const mode, PkgIterator const &Pkg, + APT_HIDDEN bool IsModeChangeOk(ModeList const mode, PkgIterator const &Pkg, unsigned long const Depth, bool const FromUser); }; diff --git a/apt-pkg/indexcopy.h b/apt-pkg/indexcopy.h index 43cdb3f0a..ca33a2cb8 100644 --- a/apt-pkg/indexcopy.h +++ b/apt-pkg/indexcopy.h @@ -93,8 +93,8 @@ class SigVerify /*{{{*/ /** \brief dpointer placeholder (for later in case we need it) */ void *d; - bool Verify(std::string prefix,std::string file, indexRecords *records); - bool CopyMetaIndex(std::string CDROM, std::string CDName, + APT_HIDDEN bool Verify(std::string prefix,std::string file, indexRecords *records); + APT_HIDDEN bool CopyMetaIndex(std::string CDROM, std::string CDName, std::string prefix, std::string file); public: diff --git a/apt-pkg/indexrecords.h b/apt-pkg/indexrecords.h index bb0fd5564..f2d2c775c 100644 --- a/apt-pkg/indexrecords.h +++ b/apt-pkg/indexrecords.h @@ -21,7 +21,7 @@ class indexRecords { - bool parseSumData(const char *&Start, const char *End, std::string &Name, + APT_HIDDEN bool parseSumData(const char *&Start, const char *End, std::string &Name, std::string &Hash, unsigned long long &Size); public: struct checkSum; diff --git a/apt-pkg/install-progress.cc b/apt-pkg/install-progress.cc index 0d180d59b..5ea8bf4d0 100644 --- a/apt-pkg/install-progress.cc +++ b/apt-pkg/install-progress.cc @@ -21,8 +21,8 @@ namespace APT { namespace Progress { -PackageManager::PackageManager() : d(NULL), percentage(0.0), last_reported_progress(-1) {}; -PackageManager::~PackageManager() {}; +PackageManager::PackageManager() : d(NULL), percentage(0.0), last_reported_progress(-1) {} +PackageManager::~PackageManager() {} /* Return a APT::Progress::PackageManager based on the global * apt configuration (i.e. APT::Status-Fd and APT::Status-deb822-Fd) diff --git a/apt-pkg/install-progress.h b/apt-pkg/install-progress.h index 912700e8d..d8b4a5c82 100644 --- a/apt-pkg/install-progress.h +++ b/apt-pkg/install-progress.h @@ -119,7 +119,7 @@ namespace Progress { class PackageManagerFancy : public PackageManager { private: - static void staticSIGWINCH(int); + APT_HIDDEN static void staticSIGWINCH(int); static std::vector<PackageManagerFancy*> instances; APT_HIDDEN bool DrawStatusLine(); diff --git a/apt-pkg/pkgcache.h b/apt-pkg/pkgcache.h index 6a89eabd7..4f8568205 100644 --- a/apt-pkg/pkgcache.h +++ b/apt-pkg/pkgcache.h @@ -228,7 +228,7 @@ class pkgCache /*{{{*/ private: bool MultiArchEnabled; - PkgIterator SingleArchFindPkg(const std::string &Name); + APT_HIDDEN PkgIterator SingleArchFindPkg(const std::string &Name); }; /*}}}*/ // Header structure /*{{{*/ diff --git a/apt-pkg/pkgcachegen.cc b/apt-pkg/pkgcachegen.cc index 6bb246e9f..9e6931fa6 100644 --- a/apt-pkg/pkgcachegen.cc +++ b/apt-pkg/pkgcachegen.cc @@ -836,7 +836,7 @@ map_pointer_t pkgCacheGenerator::NewVersion(pkgCache::VerIterator &Ver, } } // haven't found the version string, so create - map_stringitem_t const idxVerStr = StoreString(VERSION, VerStr); + map_stringitem_t const idxVerStr = StoreString(VERSIONNUMBER, VerStr); if (unlikely(idxVerStr == 0)) return 0; Ver->VerStr = idxVerStr; @@ -933,7 +933,7 @@ bool pkgCacheGenerator::NewDepends(pkgCache::PkgIterator &Pkg, if (index == 0) { void const * const oldMap = Map.Data(); - index = StoreString(VERSION, Version); + index = StoreString(VERSIONNUMBER, Version); if (unlikely(index == 0)) return false; if (OldDepLast != 0 && oldMap != Map.Data()) @@ -1129,7 +1129,7 @@ map_stringitem_t pkgCacheGenerator::StoreString(enum StringType const type, cons switch(type) { case MIXED: strings = &strMixed; break; case PKGNAME: strings = &strPkgNames; break; - case VERSION: strings = &strVersions; break; + case VERSIONNUMBER: strings = &strVersions; break; case SECTION: strings = &strSections; break; default: _error->Fatal("Unknown enum type used for string storage of '%s'", key.c_str()); return 0; } diff --git a/apt-pkg/pkgcachegen.h b/apt-pkg/pkgcachegen.h index e1d22b88f..54c4f9e7a 100644 --- a/apt-pkg/pkgcachegen.h +++ b/apt-pkg/pkgcachegen.h @@ -95,8 +95,8 @@ class pkgCacheGenerator /*{{{*/ public: - enum StringType { MIXED, PKGNAME, VERSION, SECTION }; - map_stringitem_t StoreString(enum StringType const type, const char * S, unsigned int const Size); + enum StringType { MIXED, PKGNAME, VERSIONNUMBER, SECTION }; + map_stringitem_t StoreString(StringType const type, const char * S, unsigned int const Size); inline map_stringitem_t StoreString(enum StringType const type, const std::string &S) {return StoreString(type, S.c_str(),S.length());}; void DropProgress() {Progress = 0;}; diff --git a/apt-pkg/update.h b/apt-pkg/update.h index 3835644de..e35cd14f6 100644 --- a/apt-pkg/update.h +++ b/apt-pkg/update.h @@ -11,7 +11,8 @@ #define PKGLIB_UPDATE_H class pkgAcquireStatus; - +class pkgSourceList; +class pkgAcquire; bool ListUpdate(pkgAcquireStatus &progress, pkgSourceList &List, int PulseInterval=0); bool AcquireUpdate(pkgAcquire &Fetcher, int const PulseInterval = 0, diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 15696e19f..8448638db 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -1578,7 +1578,7 @@ static bool DoChangelog(CommandLine &CmdL) { string changelogfile; if (downOnly == false) - changelogfile.append(tmpname).append("changelog"); + changelogfile.append(tmpname).append("/changelog"); else changelogfile.append(Ver.ParentPkg().Name()).append(".changelog"); if (DownloadChangelog(Cache, Fetcher, Ver, changelogfile) && downOnly == false) diff --git a/debian/apt.postinst b/debian/apt.postinst index b8f3edbe5..b0a5da7d8 100755 --- a/debian/apt.postinst +++ b/debian/apt.postinst @@ -15,13 +15,17 @@ set -e case "$1" in configure) - if dpkg --compare-versions "$2" lt 1.0.7; then + if dpkg --compare-versions "$2" lt 1.1~exp4; then # apt-key before 0.9.10 could leave empty keyrings around find /etc/apt/trusted.gpg.d/ -name '*.gpg' | while read keyring; do if ! test -s "$keyring"; then rm -f "$keyring" fi done + # apt-key before 0.9.8.2 could create 0600 trusted.gpg file + if test -e /etc/apt/trusted.gpg ; then + chmod -f 0644 /etc/apt/trusted.gpg || true + fi fi if dpkg --compare-versions "$2" lt-nl 0.9.9.5; then diff --git a/debian/control b/debian/control index d95e56f92..0ff611dcd 100644 --- a/debian/control +++ b/debian/control @@ -38,12 +38,12 @@ Description: commandline package manager * apt-config as an interface to the configuration settings * apt-key as an interface to manage authentication keys -Package: libapt-pkg4.13 +Package: libapt-pkg4.14 Architecture: any Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} Depends: ${shlibs:Depends}, ${misc:Depends} -Breaks: apt (<< 1.0.2~), libapt-inst1.5 (<< 0.9.9~) +Breaks: apt (<< 1.1~exp4), libapt-inst1.5 (<< 0.9.9~) Section: libs Description: package management runtime library This library provides the common functionality for searching and diff --git a/debian/libapt-pkg4.13.install.in b/debian/libapt-pkg4.14.install.in index 56bed39d3..56bed39d3 100644 --- a/debian/libapt-pkg4.13.install.in +++ b/debian/libapt-pkg4.14.install.in diff --git a/debian/libapt-pkg4.13.symbols b/debian/libapt-pkg4.14.symbols index 1fbbf97d6..da01621c7 100644 --- a/debian/libapt-pkg4.13.symbols +++ b/debian/libapt-pkg4.14.symbols @@ -1,4 +1,4 @@ -libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# +libapt-pkg.so.4.14 libapt-pkg4.14 #MINVER# * Build-Depends-Package: libapt-pkg-dev TFRewritePackageOrder@Base 0.8.0 TFRewriteSourceOrder@Base 0.8.0 @@ -10,7 +10,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"ReadPinDir(pkgPolicy&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"RunScripts(char const*)@Base" 0.8.0 (c++)"SafeGetCWD()@Base" 0.8.0 - (c++)"parsenetrc(char*, char*, char*, char*)@Base" 0.8.0 (c++)"QuoteString(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@Base" 0.8.0 (c++)"ReadPinFile(pkgPolicy&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"RegexChoice(RxChoiceList*, char const**, char const**)@Base" 0.8.0 @@ -30,13 +29,12 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"ReadConfigDir(Configuration&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, unsigned int const&)@Base" 0.8.0 (c++)"URItoFileName(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0 (c++)"UTF8ToCodeset(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >*)@Base" 0.8.0 - (c++)"pkgAllUpgrade(pkgDepCache&)@Base" 0.8.0 (c++)"pkgInitConfig(Configuration&)@Base" 0.8.0 (c++)"pkgInitSystem(Configuration&, pkgSystem*&)@Base" 0.8.0 (c++)"safe_snprintf(char*, char*, char const*, ...)@Base" 0.8.0 (c++)"stringcasecmp(__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, char const*, char const*)@Base" 0.8.0 (c++)"stringcasecmp(__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >)@Base" 0.8.0 - (c++)"stringcasecmp(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@Base" 0.8.0 +# (c++|optional=inline)"stringcasecmp(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@Base" 0.8.0 (c++)"stringcasecmp(char const*, char const*, char const*, char const*)@Base" 0.8.0 (c++)"tolower_ascii(int)@Base" 0.8.0 (c++)"ParseQuoteWord(char const*&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0 @@ -44,7 +42,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"TokSplitString(char, char*, char**, unsigned long)@Base" 0.8.0 (c++)"maybe_add_auth(URI&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"pkgApplyStatus(pkgDepCache&)@Base" 0.8.0 - (c++)"pkgDistUpgrade(pkgDepCache&)@Base" 0.8.0 (c++)"CheckDomainList(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0 (c++)"CreateDirectory(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0 (c++)"DirectoryExists(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0 @@ -101,10 +98,8 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"SourceCopy::RewriteEntry(_IO_FILE*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"SourceCopy::Type()@Base" 0.8.0 (c++)"SourceCopy::~SourceCopy()@Base" 0.8.0 - (c++)"pkgAcqFile::Custom600Headers()@Base" 0.8.0 (c++)"pkgAcqFile::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0 (c++)"pkgAcqFile::DescURI()@Base" 0.8.0 - (c++)"pkgAcqFile::HashSum()@Base" 0.8.0 (c++)"pkgAcqFile::~pkgAcqFile()@Base" 0.8.0 (c++)"pkgAcquire::WorkerStep(pkgAcquire::Worker*)@Base" 0.8.0 (c++)"pkgAcquire::FetchNeeded()@Base" 0.8.0 @@ -115,15 +110,11 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgAcquire::Add(pkgAcquire::Worker*)@Base" 0.8.0 (c++)"pkgAcquire::Run(int)@Base" 0.8.0 (c++)"pkgAcquire::Bump()@Base" 0.8.0 - (c++)"pkgAcquire::Item::Custom600Headers()@Base" 0.8.0 (c++)"pkgAcquire::Item::ReportMirrorFailure(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"pkgAcquire::Item::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0 (c++)"pkgAcquire::Item::Rename(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 - (c++)"pkgAcquire::Item::HashSum()@Base" 0.8.0 (c++)"pkgAcquire::Item::Finished()@Base" 0.8.0 - (c++)"pkgAcquire::Item::IsTrusted()@Base" 0.8.0 (c++)"pkgAcquire::Item::ShortDesc()@Base" 0.8.0 - (c++)"pkgAcquire::Item::Item(pkgAcquire*)@Base" 0.8.0 (c++)"pkgAcquire::Item::~Item()@Base" 0.8.0 (c++)"pkgAcquire::Clean(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"pkgAcquire::Queue::Bump()@Base" 0.8.0 @@ -136,7 +127,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgAcquire::Queue::Shutdown(bool)@Base" 0.8.0 (c++)"pkgAcquire::Queue::Queue(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire*)@Base" 0.8.0 (c++)"pkgAcquire::Queue::~Queue()@Base" 0.8.0 - (c++)"pkgAcquire::Setup(pkgAcquireStatus*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0 (c++)"pkgAcquire::Remove(pkgAcquire::Item*)@Base" 0.8.0 (c++)"pkgAcquire::Remove(pkgAcquire::Worker*)@Base" 0.8.0 (c++)"pkgAcquire::RunFds(fd_set*, fd_set*)@Base" 0.8.0 @@ -171,15 +161,10 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgRecords::Lookup(pkgCache::VerFileIterator const&)@Base" 0.8.0 (c++)"pkgRecords::Lookup(pkgCache::DescFileIterator const&)@Base" 0.8.0 (c++)"pkgRecords::Parser::Maintainer()@Base" 0.8.0 - (c++)"pkgRecords::Parser::SHA256Hash()@Base" 0.8.0 (c++)"pkgRecords::Parser::Name()@Base" 0.8.0 (c++)"pkgRecords::Parser::GetRec(char const*&, char const*&)@Base" 0.8.0 - (c++)"pkgRecords::Parser::MD5Hash()@Base" 0.8.0 (c++)"pkgRecords::Parser::FileName()@Base" 0.8.0 (c++)"pkgRecords::Parser::Homepage()@Base" 0.8.0 - (c++)"pkgRecords::Parser::LongDesc()@Base" 0.8.0 - (c++)"pkgRecords::Parser::SHA1Hash()@Base" 0.8.0 - (c++)"pkgRecords::Parser::ShortDesc()@Base" 0.8.0 (c++)"pkgRecords::Parser::SourcePkg()@Base" 0.8.0 (c++)"pkgRecords::Parser::SourceVer()@Base" 0.8.0 (c++)"pkgRecords::pkgRecords(pkgCache&)@Base" 0.8.0 @@ -222,11 +207,8 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"PackageCopy::RewriteEntry(_IO_FILE*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"PackageCopy::Type()@Base" 0.8.0 (c++)"PackageCopy::~PackageCopy()@Base" 0.8.0 - (c++)"pkgAcqIndex::Custom600Headers()@Base" 0.8.0 (c++)"pkgAcqIndex::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0 (c++)"pkgAcqIndex::DescURI()@Base" 0.8.0 - (c++)"pkgAcqIndex::HashSum()@Base" 0.8.0 - (c++)"pkgAcqIndex::pkgAcqIndex(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, HashString, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"pkgAcqIndex::~pkgAcqIndex()@Base" 0.8.0 (c++)"pkgDepCache::IsDeleteOk(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.8.0 (c++)"pkgDepCache::MarkDelete(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.8.0 @@ -237,8 +219,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgDepCache::ActionGroup::~ActionGroup()@Base" 0.8.0 (c++)"pkgDepCache::IsInstallOk(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.8.0 (c++)"pkgDepCache::MarkInstall(pkgCache::PkgIterator const&, bool, unsigned long, bool, bool)@Base" 0.8.0 - (c++)"pkgDepCache::MarkPackage(pkgCache::PkgIterator const&, pkgCache::VerIterator const&, bool const&, bool const&)@Base" 0.8.0 - (c++)"pkgDepCache::MarkRequired(pkgDepCache::InRootSetFunc&)@Base" 0.8.0 (c++)"pkgDepCache::SetReInstall(pkgCache::PkgIterator const&, bool)@Base" 0.8.0 (c++)"pkgDepCache::VersionState(pkgCache::DepIterator, unsigned char, unsigned char, unsigned char)@Base" 0.8.0 (c++)"pkgDepCache::BuildGroupOrs(pkgCache::VerIterator const&)@Base" 0.8.0 @@ -254,7 +234,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgDepCache::MarkFollowsSuggests()@Base" 0.8.0 (c++)"pkgDepCache::MarkFollowsRecommends()@Base" 0.8.0 (c++)"pkgDepCache::Init(OpProgress*)@Base" 0.8.0 - (c++)"pkgDepCache::Sweep()@Base" 0.8.0 (c++)"pkgDepCache::Policy::IsImportantDep(pkgCache::DepIterator const&)@Base" 0.8.0 (c++)"pkgDepCache::Policy::GetCandidateVer(pkgCache::PkgIterator const&)@Base" 0.8.0 (c++)"pkgDepCache::Policy::~Policy()@Base" 0.8.0 @@ -266,12 +245,10 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgDepCache::MarkKeep(pkgCache::PkgIterator const&, bool, bool, unsigned long)@Base" 0.8.0 (c++)"pkgDepCache::pkgDepCache(pkgCache*, pkgDepCache::Policy*)@Base" 0.8.0 (c++)"pkgDepCache::~pkgDepCache()@Base" 0.8.0 - (c++)"pkgSimulate::ShortBreaks()@Base" 0.8.0 (c++)"pkgSimulate::Policy::GetCandidateVer(pkgCache::PkgIterator const&)@Base" 0.8.0 (c++)"pkgSimulate::Policy::~Policy()@Base" 0.8.0 (c++)"pkgSimulate::Remove(pkgCache::PkgIterator, bool)@Base" 0.8.0 (c++)"pkgSimulate::Install(pkgCache::PkgIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 - (c++)"pkgSimulate::Describe(pkgCache::PkgIterator, std::basic_ostream<char, std::char_traits<char> >&, bool, bool)@Base" 0.8.0 (c++)"pkgSimulate::Configure(pkgCache::PkgIterator)@Base" 0.8.0 (c++)"pkgSimulate::pkgSimulate(pkgDepCache*)@Base" 0.8.0 (c++)"pkgSimulate::~pkgSimulate()@Base" 0.8.0 @@ -357,7 +334,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"WeakPointable::~WeakPointable()@Base" 0.8.0 (c++)"debListParser::NewVersion(pkgCache::VerIterator&)@Base" 0.8.0 (c++)"debListParser::UsePackage(pkgCache::PkgIterator&, pkgCache::VerIterator&)@Base" 0.8.0 - (c++)"debListParser::Description()@Base" 0.8.0 (c++)"debListParser::ParseStatus(pkgCache::PkgIterator&, pkgCache::VerIterator&)@Base" 0.8.0 (c++)"debListParser::VersionHash()@Base" 0.8.0 (c++)"debListParser::Architecture()@Base" 0.8.0 @@ -368,8 +344,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"debListParser::ConvertRelation(char const*, unsigned int&)@Base" 0.8.0 (c++)"debListParser::Description_md5()@Base" 0.8.0 (c++)"debListParser::LoadReleaseInfo(pkgCache::PkgFileIterator&, FileFd&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 - (c++)"debListParser::UniqFindTagWrite(char const*)@Base" 0.8.0 - (c++)"debListParser::DescriptionLanguage()@Base" 0.8.0 (c++)"debListParser::Size()@Base" 0.8.0 (c++)"debListParser::Step()@Base" 0.8.0 (c++)"debListParser::Offset()@Base" 0.8.0 @@ -381,14 +355,11 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"debListParser::~debListParser()@Base" 0.8.0 (c++)"pkgAcqArchive::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0 (c++)"pkgAcqArchive::DescURI()@Base" 0.8.0 - (c++)"pkgAcqArchive::HashSum()@Base" 0.8.0 (c++)"pkgAcqArchive::Finished()@Base" 0.8.0 - (c++)"pkgAcqArchive::IsTrusted()@Base" 0.8.0 (c++)"pkgAcqArchive::QueueNext()@Base" 0.8.0 (c++)"pkgAcqArchive::ShortDesc()@Base" 0.8.0 (c++)"pkgAcqArchive::pkgAcqArchive(pkgAcquire*, pkgSourceList*, pkgRecords*, pkgCache::VerIterator const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0 (c++)"pkgAcqArchive::~pkgAcqArchive()@Base" 0.8.0 - (c++)"pkgAcqMetaSig::Custom600Headers()@Base" 0.8.0 (c++)"pkgAcqMetaSig::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0 (c++)"pkgAcqMetaSig::DescURI()@Base" 0.8.0 (c++)"pkgAcqMetaSig::~pkgAcqMetaSig()@Base" 0.8.0 @@ -412,7 +383,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgSrcRecords::pkgSrcRecords(pkgSourceList&)@Base" 0.8.0 (c++)"pkgSrcRecords::~pkgSrcRecords()@Base" 0.8.0 (c++)"pkgTagSection::TrimRecord(bool, char const*&)@Base" 0.8.0 - (c++)"pkgTagSection::Scan(char const*, unsigned long)@Base" 0.8.0 (c++)"pkgTagSection::Trim()@Base" 0.8.0 (c++)"pkgVendorList::CreateList(Configuration&)@Base" 0.8.0 (c++)"pkgVendorList::FindVendor(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)@Base" 0.8.0 @@ -430,17 +400,12 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"debStatusIndex::~debStatusIndex()@Base" 0.8.0 (c++)"debIFTypeStatus::~debIFTypeStatus()@Base" 0.8.0 (c++)"debRecordParser::Maintainer()@Base" 0.8.0 - (c++)"debRecordParser::SHA256Hash()@Base" 0.8.0 (c++)"debRecordParser::Jump(pkgCache::VerFileIterator const&)@Base" 0.8.0 (c++)"debRecordParser::Jump(pkgCache::DescFileIterator const&)@Base" 0.8.0 (c++)"debRecordParser::Name()@Base" 0.8.0 (c++)"debRecordParser::GetRec(char const*&, char const*&)@Base" 0.8.0 - (c++)"debRecordParser::MD5Hash()@Base" 0.8.0 (c++)"debRecordParser::FileName()@Base" 0.8.0 (c++)"debRecordParser::Homepage()@Base" 0.8.0 - (c++)"debRecordParser::LongDesc()@Base" 0.8.0 - (c++)"debRecordParser::SHA1Hash()@Base" 0.8.0 - (c++)"debRecordParser::ShortDesc()@Base" 0.8.0 (c++)"debRecordParser::SourcePkg()@Base" 0.8.0 (c++)"debRecordParser::SourceVer()@Base" 0.8.0 (c++)"debRecordParser::debRecordParser(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgCache&)@Base" 0.8.0 @@ -456,15 +421,12 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"debSourcesIndex::debSourcesIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@Base" 0.8.0 (c++)"debSourcesIndex::~debSourcesIndex()@Base" 0.8.0 (c++)"pkgAcqDiffIndex::ParseDiffIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 - (c++)"pkgAcqDiffIndex::Custom600Headers()@Base" 0.8.0 (c++)"pkgAcqDiffIndex::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0 (c++)"pkgAcqDiffIndex::DescURI()@Base" 0.8.0 - (c++)"pkgAcqDiffIndex::pkgAcqDiffIndex(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, HashString)@Base" 0.8.0 (c++)"pkgAcqDiffIndex::~pkgAcqDiffIndex()@Base" 0.8.0 (c++)"pkgAcqMetaIndex::QueueIndexes(bool)@Base" 0.8.0 (c++)"pkgAcqMetaIndex::VerifyVendor(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"pkgAcqMetaIndex::RetrievalDone(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 - (c++)"pkgAcqMetaIndex::Custom600Headers()@Base" 0.8.0 (c++)"pkgAcqMetaIndex::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0 (c++)"pkgAcqMetaIndex::DescURI()@Base" 0.8.0 (c++)"pkgAcqMetaIndex::AuthDone(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 @@ -480,15 +442,10 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"TranslationsCopy::CopyTranslations(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, pkgCdromStatus*)@Base" 0.8.0 (c++)"debPackagesIndex::debPackagesIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0 (c++)"debPackagesIndex::~debPackagesIndex()@Base" 0.8.0 - (c++)"pkgAcqIndexDiffs::QueueNextDiff()@Base" 0.8.0 (c++)"pkgAcqIndexDiffs::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0 - (c++)"pkgAcqIndexDiffs::Finish(bool)@Base" 0.8.0 (c++)"pkgAcqIndexDiffs::DescURI()@Base" 0.8.0 - (c++)"pkgAcqIndexDiffs::pkgAcqIndexDiffs(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, HashString, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<DiffInfo, std::allocator<DiffInfo> >)@Base" 0.8.0 (c++)"pkgAcqIndexDiffs::~pkgAcqIndexDiffs()@Base" 0.8.0 - (c++)"pkgAcqIndexTrans::Custom600Headers()@Base" 0.8.0 (c++)"pkgAcqIndexTrans::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.0 - (c++)"pkgAcqIndexTrans::pkgAcqIndexTrans(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"pkgAcqIndexTrans::~pkgAcqIndexTrans()@Base" 0.8.0 (c++)"pkgAcquireStatus::Done(pkgAcquire::ItemDesc&)@Base" 0.8.0 (c++)"pkgAcquireStatus::Fail(pkgAcquire::ItemDesc&)@Base" 0.8.0 @@ -509,7 +466,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgCacheGenerator::FinishCache(OpProgress*)@Base" 0.8.0 (c++)"pkgCacheGenerator::NewFileDesc(pkgCache::DescIterator&, pkgCacheGenerator::ListParser&)@Base" 0.8.0 (c++)"pkgCacheGenerator::MakeStatusCache(pkgSourceList&, OpProgress*, MMap**, bool)@Base" 0.8.0 - (c++)"pkgCacheGenerator::WriteUniqString(char const*, unsigned int)@Base" 0.8.0 (c++)"pkgCacheGenerator::CreateDynamicMMap(FileFd*, unsigned long)@Base" 0.8.0 (c++)"pkgCacheGenerator::MergeFileProvides(pkgCacheGenerator::ListParser&)@Base" 0.8.0 (c++)"pkgCacheGenerator::MakeOnlyStatusCache(OpProgress*, DynamicMMap**)@Base" 0.8.0 @@ -554,13 +510,8 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"debSrcRecordParser::Restart()@Base" 0.8.0 (c++)"debSrcRecordParser::Binaries()@Base" 0.8.0 (c++)"debSrcRecordParser::~debSrcRecordParser()@Base" 0.8.0 - (c++)"pkgProblemResolver::MakeScores()@Base" 0.8.0 - (c++)"pkgProblemResolver::ResolveByKeep()@Base" 0.8.0 (c++)"pkgProblemResolver::InstallProtect()@Base" 0.8.0 (c++)"pkgProblemResolver::This@Base" 0.8.0 - (c++)"pkgProblemResolver::Resolve(bool)@Base" 0.8.0 - (c++)"pkgProblemResolver::DoUpgrade(pkgCache::PkgIterator)@Base" 0.8.0 - (c++)"pkgProblemResolver::ScoreSort(void const*, void const*)@Base" 0.8.0 (c++)"pkgProblemResolver::pkgProblemResolver(pkgDepCache*)@Base" 0.8.0 (c++)"pkgProblemResolver::~pkgProblemResolver()@Base" 0.8.0 (c++)"debVersioningSystem::CmpFragment(char const*, char const*, char const*, char const*)@Base" 0.8.0 @@ -637,7 +588,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgCache::VerFileIterator::operator++()@Base" 0.8.0 (c++)"pkgCache::DescFileIterator::operator++(int)@Base" 0.8.0 (c++)"pkgCache::DescFileIterator::operator++()@Base" 0.8.0 - (c++)"pkgCache::SingleArchFindPkg(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0 (c++)"pkgCache::ReMap(bool const&)@Base" 0.8.0 (c++)"pkgCache::Header::Header()@Base" 0.8.0 (c++)"pkgCache::DepType(unsigned char)@Base" 0.8.0 @@ -664,11 +614,8 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"IndexCopy::ChopDirs(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int)@Base" 0.8.0 (c++)"IndexCopy::GrabFirst(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int)@Base" 0.8.0 (c++)"SigVerify::CopyAndVerify(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)@Base" 0.8.0 - (c++)"SigVerify::CopyMetaIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 - (c++)"SigVerify::Verify(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, indexRecords*)@Base" 0.8.0 (c++)"SigVerify::RunGPGV(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int const&, int*)@Base" 0.8.0 (c++)"debSystem::Initialize(Configuration&)@Base" 0.8.0 - (c++)"debSystem::CheckUpdates()@Base" 0.8.0 (c++)"debSystem::AddStatusFiles(std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> >&)@Base" 0.8.0 (c++)"debSystem::ArchiveSupported(char const*)@Base" 0.8.0 (c++)"debSystem::Lock()@Base" 0.8.0 @@ -681,7 +628,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgDPkgPM::WriteHistoryTag(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0 (c++)"pkgDPkgPM::WriteApportReport(char const*, char const*)@Base" 0.8.0 (c++)"pkgDPkgPM::RunScriptsWithPkgs(char const*)@Base" 0.8.0 - (c++)"pkgDPkgPM::handleDisappearAction(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0 (c++)"pkgDPkgPM::Go(int)@Base" 0.8.0 (c++)"pkgDPkgPM::Reset()@Base" 0.8.0 (c++)"pkgDPkgPM::Remove(pkgCache::PkgIterator, bool)@Base" 0.8.0 @@ -728,7 +674,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgIndexFile::Type::CreatePkgParser(pkgCache::PkgFileIterator) const@Base" 0.8.0 (c++)"pkgIndexFile::Merge(pkgCacheGenerator&, OpProgress*) const@Base" 0.8.0 (c++)"pkgIndexFile::Merge(pkgCacheGenerator&, OpProgress&) const@Base" 0.8.0 - (c++)"Configuration::FindVector(char const*) const@Base" 0.8.0 (c++)"Configuration::MatchAgainstConfig::Match(char const*) const@Base" 0.8.0 (c++)"Configuration::Find(char const*, char const*) const@Base" 0.8.0 (c++)"Configuration::Item::FullTag(Configuration::Item const*) const@Base" 0.8.0 @@ -775,23 +720,19 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"debSourcesIndex::SourceInfo(pkgSrcRecords::Parser const&, pkgSrcRecords::File const&) const@Base" 0.8.0 (c++)"debSourcesIndex::HasPackages() const@Base" 0.8.0 (c++)"debSourcesIndex::CreateSrcParser() const@Base" 0.8.0 - (c++)"debSourcesIndex::Info(char const*) const@Base" 0.8.0 (c++)"debSourcesIndex::Size() const@Base" 0.8.0 (c++)"debSourcesIndex::Exists() const@Base" 0.8.0 (c++)"debSourcesIndex::GetType() const@Base" 0.8.0 (c++)"debSourcesIndex::Describe(bool) const@Base" 0.8.0 - (c++)"debSourcesIndex::IndexURI(char const*) const@Base" 0.8.0 (c++)"debPackagesIndex::ArchiveURI(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.8.0 (c++)"debPackagesIndex::ArchiveInfo(pkgCache::VerIterator) const@Base" 0.8.0 (c++)"debPackagesIndex::FindInCache(pkgCache&) const@Base" 0.8.0 (c++)"debPackagesIndex::HasPackages() const@Base" 0.8.0 - (c++)"debPackagesIndex::Info(char const*) const@Base" 0.8.0 (c++)"debPackagesIndex::Size() const@Base" 0.8.0 (c++)"debPackagesIndex::Merge(pkgCacheGenerator&, OpProgress*) const@Base" 0.8.0 (c++)"debPackagesIndex::Exists() const@Base" 0.8.0 (c++)"debPackagesIndex::GetType() const@Base" 0.8.0 (c++)"debPackagesIndex::Describe(bool) const@Base" 0.8.0 - (c++)"debPackagesIndex::IndexURI(char const*) const@Base" 0.8.0 (c++)"debSrcRecordParser::Maintainer() const@Base" 0.8.0 (c++)"debSrcRecordParser::Package() const@Base" 0.8.0 (c++)"debSrcRecordParser::Section() const@Base" 0.8.0 @@ -799,13 +740,11 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"debTranslationsIndex::GetIndexes(pkgAcquire*) const@Base" 0.8.0 (c++)"debTranslationsIndex::FindInCache(pkgCache&) const@Base" 0.8.0 (c++)"debTranslationsIndex::HasPackages() const@Base" 0.8.0 - (c++)"debTranslationsIndex::Info(char const*) const@Base" 0.8.0 (c++)"debTranslationsIndex::Size() const@Base" 0.8.0 (c++)"debTranslationsIndex::Merge(pkgCacheGenerator&, OpProgress*) const@Base" 0.8.0 (c++)"debTranslationsIndex::Exists() const@Base" 0.8.0 (c++)"debTranslationsIndex::GetType() const@Base" 0.8.0 (c++)"debTranslationsIndex::Describe(bool) const@Base" 0.8.0 - (c++)"debTranslationsIndex::IndexURI(char const*) const@Base" 0.8.0 (c++)"Vendor::GetVendorID() const@Base" 0.8.0 (c++)"Vendor::LookupFingerprint(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 0.8.0 (c++)"pkgCache::DepIterator::AllTargets() const@Base" 0.8.0 @@ -1141,7 +1080,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (arch=!x32|c++)"RFC1123StrToTime(char const*, long&)@Base" 0.8.0 (arch=x32|c++)"RFC1123StrToTime(char const*, long long&)@Base" 0.8.0 ### - (c++)"Configuration::MatchAgainstConfig::clearPatterns()@Base" 0.8.1 (c++)"CreateAPTDirectoryIfNeeded(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.2 (c++)"FileFd::FileSize()@Base" 0.8.8 (c++)"Base256ToNum(char const*, unsigned long&, unsigned int)@Base" 0.8.11 @@ -1150,18 +1088,14 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"RealFileExists(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.11 (c++)"StripEpoch(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11 (c++)"pkgAcqIndex::Init(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11 - (c++)"pkgAcqIndex::pkgAcqIndex(pkgAcquire*, IndexTarget const*, HashString const&, indexRecords const*)@Base" 0.8.11 (c++)"pkgTagSection::FindFlag(unsigned long&, unsigned long, char const*, char const*)@Base" 0.8.11 (c++)"pkgAcqSubIndex::ParseIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11 - (c++)"pkgAcqSubIndex::Custom600Headers()@Base" 0.8.11 (c++)"pkgAcqSubIndex::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.11 (c++)"pkgAcqSubIndex::DescURI()@Base" 0.8.11 - (c++)"pkgAcqSubIndex::pkgAcqSubIndex(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashString const&)@Base" 0.8.11 (c++)"pkgAcqSubIndex::~pkgAcqSubIndex()@Base" 0.8.11 (c++)"pkgAcqMetaClearSig::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.11 (c++)"pkgAcqMetaClearSig::pkgAcqMetaClearSig(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<IndexTarget*, std::allocator<IndexTarget*> > const*, indexRecords*)@Base" 0.8.11 (c++)"pkgAcqMetaClearSig::~pkgAcqMetaClearSig()@Base" 0.8.11 - (c++)"pkgAcqIndexTrans::pkgAcqIndexTrans(pkgAcquire*, IndexTarget const*, HashString const&, indexRecords const*)@Base" 0.8.11 (c++)"IndexTarget::IsOptional() const@Base" 0.8.11 (c++)"IndexTarget::IsSubIndex() const@Base" 0.8.11 (c++)"debReleaseIndex::TranslationIndexURI(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.8.11 @@ -1178,10 +1112,7 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"APT::Configuration::Compressor::~Compressor()@Base" 0.8.12 (c++)"APT::Configuration::getCompressors(bool)@Base" 0.8.12 (c++)"APT::Configuration::getCompressorExtensions()@Base" 0.8.12 - (c++)"APT::Configuration::setDefaultConfigurationForCompressors()@Base" 0.8.12 - (c++)"pkgAcqMetaClearSig::Custom600Headers()@Base" 0.8.13 (c++)"debListParser::NewProvidesAllArch(pkgCache::VerIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.13.2 - (c++)"pkgDepCache::IsModeChangeOk(pkgDepCache::ModeList, pkgCache::PkgIterator const&, unsigned long, bool)@Base" 0.8.13.2 (c++)"pkgCache::DepIterator::IsNegative() const@Base" 0.8.15~exp1 (c++)"Configuration::CndSet(char const*, int)@Base" 0.8.15.3 (c++)"pkgProblemResolver::InstOrNewPolicyBroken(pkgCache::PkgIterator)@Base" 0.8.15.3 @@ -1254,9 +1185,6 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"SHA1Summation::Result()@Base" 0.8.16~exp2 (c++)"SHA256Summation::Add(unsigned char const*, unsigned long long)@Base" 0.8.16~exp6 (c++)"SHA512Summation::Add(unsigned char const*, unsigned long long)@Base" 0.8.16~exp6 - (c++)"debRecordParser::SHA512Hash()@Base" 0.8.16~exp2 - (c++)"pkgRecords::Parser::SHA512Hash()@Base" 0.8.16~exp6 - (c++)"Hashes::AddFD(int, unsigned long long, bool, bool, bool, bool)@Base" 0.8.16~exp6 (c++)"SummationImplementation::AddFD(int, unsigned long long)@Base" 0.8.16~exp6 (c++)"typeinfo for MD5Summation@Base" 0.8.16~exp6 (c++)"typeinfo for SHA1Summation@Base" 0.8.16~exp6 @@ -1282,11 +1210,8 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"OpProgress::OverallProgress(unsigned long long, unsigned long long, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp6 (c++)"OpProgress::Progress(unsigned long long)@Base" 0.8.16~exp6 (c++)"SourceCopy::GetFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@Base" 0.8.16~exp6 - (c++)"pkgAcqFile::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6 - (c++)"pkgAcqFile::pkgAcqFile(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp6 (c++)"pkgAcquire::UriIterator::~UriIterator()@Base" 0.8.16~exp6 (c++)"pkgAcquire::MethodConfig::~MethodConfig()@Base" 0.8.16~exp6 - (c++)"pkgAcquire::Item::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6 (c++)"pkgAcquire::Item::Start(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long)@Base" 0.8.16~exp6 (c++)"pkgRecords::Parser::RecordField(char const*)@Base" 0.8.16~exp6 (c++)"pkgTagFile::Jump(pkgTagSection&, unsigned long long)@Base" 0.8.16~exp6 @@ -1294,23 +1219,13 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgTagFile::pkgTagFile(FileFd*, unsigned long long)@Base" 0.8.16~exp6 (c++)"DynamicMMap::RawAllocate(unsigned long long, unsigned long)@Base" 0.8.16~exp6 (c++)"PackageCopy::GetFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@Base" 0.8.16~exp6 - (c++)"pkgAcqIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6 - (c++)"indexRecords::parseSumData(char const*&, char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@Base" 0.8.16~exp6 - (c++)"pkgAcqArchive::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6 (c++)"pkgTagSection::~pkgTagSection()@Base" 0.8.16~exp6 - (c++)"pkgAcqSubIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6 (c++)"debRecordParser::RecordField(char const*)@Base" 0.8.16~exp6 (c++)"debReleaseIndex::SetTrusted(bool)@Base" 0.8.16~exp6 (c++)"debReleaseIndex::debReleaseIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp6 - (c++)"pkgAcqMetaIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6 - (c++)"pkgAcqIndexDiffs::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6 - (c++)"pkgAcqMetaSig::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6 - (c++)"pkgAcqDiffIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.8.16~exp6 (c++)"pkgAcquireStatus::Fetched(unsigned long long, unsigned long long)@Base" 0.8.16~exp6 (c++)"PreferenceSection::~PreferenceSection()@Base" 0.8.16~exp6 (c++)"pkgCacheGenerator::NewDescription(pkgCache::DescIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashSumValue<128> const&, unsigned int)@Base" 0.8.16~exp6 - (c++)"pkgProblemResolver::ResolveInternal(bool)@Base" 0.8.16~exp6 - (c++)"pkgProblemResolver::ResolveByKeepInternal()@Base" 0.8.16~exp6 (c++)"FileFd::Read(void*, unsigned long long, unsigned long long*)@Base" 0.8.16~exp6 (c++)"FileFd::Seek(unsigned long long)@Base" 0.8.16~exp6 (c++)"FileFd::Skip(unsigned long long)@Base" 0.8.16~exp6 @@ -1363,14 +1278,11 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"FileFd::Open(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, APT::Configuration::Compressor const&, unsigned long)@Base" 0.8.16~exp9 (c++)"FileFd::ReadLine(char*, unsigned long long)@Base" 0.8.16~exp9 (c++)"SummationImplementation::AddFD(FileFd&, unsigned long long)@Base" 0.8.16~exp9 - (c++)"Hashes::AddFD(FileFd&, unsigned long long, bool, bool, bool, bool)@Base" 0.8.16~exp9 (c++|optional=deprecated,previous-inline)"FileFd::gzFd()@Base" 0.8.0 ### CacheSet rework: making them real containers breaks bigtime the API (for the CacheSetHelper) (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::const_iterator::getPkg() const@Base" 0.8.16~exp9 - (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::getConstructor() const@Base" 0.8.16~exp9 (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::empty() const@Base" 0.8.16~exp9 (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::const_iterator::getPkg() const@Base" 0.8.16~exp9 - (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::getConstructor() const@Base" 0.8.16~exp9 (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::empty() const@Base" 0.8.16~exp9 (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::empty() const@Base" 0.8.16~exp9 (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator::getVer() const@Base" 0.8.16~exp9 @@ -1383,23 +1295,12 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"APT::CacheSetHelper::showSelectedVersion(pkgCache::PkgIterator const&, pkgCache::VerIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp9 (c++)"APT::CacheSetHelper::canNotFindCandInstVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.16~exp9 (c++)"APT::CacheSetHelper::canNotFindInstCandVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.16~exp9 - (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::setConstructor(APT::PackageContainerInterface::Constructor const&)@Base" 0.8.16~exp9 (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::clear()@Base" 0.8.16~exp9 (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::insert(pkgCache::PkgIterator const&)@Base" 0.8.16~exp9 - (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::setConstructor(APT::PackageContainerInterface::Constructor const&)@Base" 0.8.16~exp9 (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::clear()@Base" 0.8.16~exp9 (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::insert(pkgCache::PkgIterator const&)@Base" 0.8.16~exp9 (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::clear()@Base" 0.8.16~exp9 (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::insert(pkgCache::VerIterator const&)@Base" 0.8.16~exp9 - (c++)"APT::PackageContainerInterface::FromString(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 - (c++)"APT::PackageContainerInterface::FromCommandLine(APT::PackageContainerInterface*, pkgCacheFile&, char const**, APT::CacheSetHelper&)@Base" 0.8.16~exp9 - (c++)"APT::PackageContainerInterface::FromModifierCommandLine(unsigned short&, APT::PackageContainerInterface*, pkgCacheFile&, char const*, std::list<APT::PackageContainerInterface::Modifier, std::allocator<APT::PackageContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 - (c++)"APT::PackageContainerInterface::FromName(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 - (c++)"APT::PackageContainerInterface::FromTask(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.16~exp9 - (c++)"APT::PackageContainerInterface::FromRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.16~exp9 - (c++)"APT::VersionContainerInterface::FromString(APT::VersionContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&, bool)@Base" 0.8.16~exp9 - (c++)"APT::VersionContainerInterface::FromPackage(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 - (c++)"APT::VersionContainerInterface::FromCommandLine(APT::VersionContainerInterface*, pkgCacheFile&, char const**, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 (c++)"APT::VersionContainerInterface::getCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 (c++)"APT::VersionContainerInterface::getInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 (c++)"APT::VersionContainerInterface::FromModifierCommandLine(unsigned short&, APT::VersionContainerInterface*, pkgCacheFile&, char const*, std::list<APT::VersionContainerInterface::Modifier, std::allocator<APT::VersionContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 @@ -1470,10 +1371,8 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"APT::Progress::PackageManagerText::~PackageManagerText()@Base" 0.9.13~exp1 (c++)"APT::Progress::PackageManagerText::StatusChanged(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.13~exp1 (c++)"APT::String::Strip(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.9.13~exp1 - (c++)"APT::Upgrade::Upgrade(pkgDepCache&, int)@Base" 0.9.13~exp1 (c++)"pkgDPkgPM::BuildPackagesProgressMap()@Base" 0.9.13~exp1 (c++)"pkgDPkgPM::DoDpkgStatusFd(int)@Base" 0.9.13~exp1 - (c++)"pkgDPkgPM::GoNoABIBreak(APT::Progress::PackageManager*)@Base" 0.9.13~exp1 (c++)"pkgDPkgPM::ProcessDpkgStatusLine(char*)@Base" 0.9.13~exp1 (c++)"pkgDPkgPM::StartPtyMagic()@Base" 0.9.13~exp1 (c++)"pkgDPkgPM::StopPtyMagic()@Base" 0.9.13~exp1 @@ -1494,14 +1393,11 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"vtable for APT::Progress::PackageManagerText@Base" 0.9.13~exp1 (c++)"APT::Progress::PackageManagerFancy::instances@Base" 0.9.14.2 (c++)"APT::Progress::PackageManagerFancy::Start(int)@Base" 0.9.14.2 - (c++)"APT::Progress::PackageManagerFancy::staticSIGWINCH(int)@Base" 0.9.14.2 (c++)"APT::Progress::PackageManager::Start(int)@Base" 0.9.14.2 ### client-side merged pdiffs (c++)"pkgAcqIndexMergeDiffs::DescURI()@Base" 0.9.14.3~exp1 - (c++)"pkgAcqIndexMergeDiffs::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.9.14.3~exp1 (c++)"pkgAcqIndexMergeDiffs::Failed(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig*)@Base" 0.9.14.3~exp1 (c++)"pkgAcqIndexMergeDiffs::~pkgAcqIndexMergeDiffs()@Base" 0.9.14.3~exp1 - (c++)"pkgAcqIndexMergeDiffs::pkgAcqIndexMergeDiffs(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashString const&, DiffInfo const&, std::vector<pkgAcqIndexMergeDiffs*, std::allocator<pkgAcqIndexMergeDiffs*> > const*)@Base" 0.9.14.3~exp1 (c++)"typeinfo for pkgAcqIndexMergeDiffs@Base" 0.9.14.3~exp1 (c++)"typeinfo name for pkgAcqIndexMergeDiffs@Base" 0.9.14.3~exp1 (c++)"vtable for pkgAcqIndexMergeDiffs@Base" 0.9.14.3~exp1 @@ -1509,12 +1405,275 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"pkgSourceList::ParseFileDeb822(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.14.3~exp1 (c++)"pkgSourceList::ParseFileOldStyle(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.9.14.3~exp1 (c++)"pkgSourceList::Type::ParseStanza(std::vector<metaIndex*, std::allocator<metaIndex*> >&, pkgTagSection&, int, FileFd&)@Base" 0.9.14.3~exp1 +### install foo.deb support + (c++)"debDebFileMetaIndex::ArchiveURI(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 1.1~exp1 + (c++)"debDebFileMetaIndex::~debDebFileMetaIndex()@Base" 1.1~exp1 + (c++)"debDebFileMetaIndex::debDebFileMetaIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp1 + (c++)"debDebFileMetaIndex::GetIndexes(pkgAcquire*, bool const&) const@Base" 1.1~exp1 + (c++)"debDebFileMetaIndex::GetIndexFiles()@Base" 1.1~exp1 + (c++)"debDebFileMetaIndex::IsTrusted() const@Base" 1.1~exp1 + (c++)"debDebFileParser::~debDebFileParser()@Base" 1.1~exp1 + (c++)"debDebFileParser::debDebFileParser(FileFd*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp1 + (c++)"debDebFileParser::UsePackage(pkgCache::PkgIterator&, pkgCache::VerIterator&)@Base" 1.1~exp1 + (c++)"debDebFileRecordParser::~debDebFileRecordParser()@Base" 1.1~exp1 + (c++)"debDebFileRecordParser::FileName()@Base" 1.1~exp1 + (c++)"debDebianSourceDirIndex::~debDebianSourceDirIndex()@Base" 1.1~exp1 + (c++)"debDebianSourceDirIndex::GetType() const@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::ArchiveURI(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::~debDebPkgFileIndex()@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::debDebPkgFileIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::Describe(bool) const@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::Exists() const@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::FindInCache(pkgCache&) const@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::GetType() const@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::HasPackages() const@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::Merge(pkgCacheGenerator&, OpProgress*) const@Base" 1.1~exp1 + (c++)"debDebPkgFileIndex::Size() const@Base" 1.1~exp1 + (c++)"debDscFileIndex::CreateSrcParser() const@Base" 1.1~exp1 + (c++)"debDscFileIndex::~debDscFileIndex()@Base" 1.1~exp1 + (c++)"debDscFileIndex::debDscFileIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 1.1~exp1 + (c++)"debDscFileIndex::Describe(bool) const@Base" 1.1~exp1 + (c++)"debDscFileIndex::Exists() const@Base" 1.1~exp1 + (c++)"debDscFileIndex::GetType() const@Base" 1.1~exp1 + (c++)"debDscFileIndex::HasPackages() const@Base" 1.1~exp1 + (c++)"debDscFileIndex::Size() const@Base" 1.1~exp1 + (c++)"debDscRecordParser::~debDscRecordParser()@Base" 1.1~exp1 + (c++)"debDscRecordParser::debDscRecordParser(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgIndexFile const*)@Base" 1.1~exp1 + (c++)"debIFTypeDebianSourceDir::CreateSrcPkgParser(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 1.1~exp1 + (c++)"debIFTypeDebianSourceDir::~debIFTypeDebianSourceDir()@Base" 1.1~exp1 + (c++)"debIFTypeDebPkgFile::CreatePkgParser(pkgCache::PkgFileIterator) const@Base" 1.1~exp1 + (c++)"debIFTypeDebPkgFile::~debIFTypeDebPkgFile()@Base" 1.1~exp1 + (c++)"debIFTypeDscFile::CreateSrcPkgParser(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 1.1~exp1 + (c++)"debIFTypeDscFile::~debIFTypeDscFile()@Base" 1.1~exp1 + (c++)"debListParser::AvailableDescriptionLanguages()@Base" 1.1~exp1 + (c++)"debListParser::Description(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp1 + (c++)"debListParser::SameVersion(unsigned short, pkgCache::VerIterator const&)@Base" 1.1~exp1 + (c++)"debReleaseIndex::LocalFileName() const@Base" 1.1~exp1 + (c++)"debSLTypeDebFile::CreateItem(std::vector<metaIndex*, std::allocator<metaIndex*> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 1.1~exp1 + (c++)"debSLTypeDebFile::~debSLTypeDebFile()@Base" 1.1~exp1 + (c++)"flAbsPath(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp1 + (c++)"GetTempFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 1.1~exp1 + (c++)"pkgIndexFile::Type::CreateSrcPkgParser(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 1.1~exp1 + (c++)"metaIndex::LocalFileName() const@Base" 1.1~exp1 + (c++)"metaIndex::~metaIndex()@Base" 1.1~exp1 + (c++)"typeinfo for debDebFileMetaIndex@Base" 1.1~exp1 + (c++)"typeinfo for debDebFileParser@Base" 1.1~exp1 + (c++)"typeinfo for debDebFileRecordParser@Base" 1.1~exp1 + (c++)"typeinfo for debDebianSourceDirIndex@Base" 1.1~exp1 + (c++)"typeinfo for debDebPkgFileIndex@Base" 1.1~exp1 + (c++)"typeinfo for debDscFileIndex@Base" 1.1~exp1 + (c++)"typeinfo for debDscRecordParser@Base" 1.1~exp1 + (c++)"typeinfo for debIFTypeDebianSourceDir@Base" 1.1~exp1 + (c++)"typeinfo for debIFTypeDebPkgFile@Base" 1.1~exp1 + (c++)"typeinfo for debIFTypeDscFile@Base" 1.1~exp1 + (c++)"typeinfo for debSLTypeDebFile@Base" 1.1~exp1 + (c++)"typeinfo name for debDebFileMetaIndex@Base" 1.1~exp1 + (c++)"typeinfo name for debDebFileParser@Base" 1.1~exp1 + (c++)"typeinfo name for debDebFileRecordParser@Base" 1.1~exp1 + (c++)"typeinfo name for debDebianSourceDirIndex@Base" 1.1~exp1 + (c++)"typeinfo name for debDebPkgFileIndex@Base" 1.1~exp1 + (c++)"typeinfo name for debDscFileIndex@Base" 1.1~exp1 + (c++)"typeinfo name for debDscRecordParser@Base" 1.1~exp1 + (c++)"typeinfo name for debIFTypeDebianSourceDir@Base" 1.1~exp1 + (c++)"typeinfo name for debIFTypeDebPkgFile@Base" 1.1~exp1 + (c++)"typeinfo name for debIFTypeDscFile@Base" 1.1~exp1 + (c++)"typeinfo name for debSLTypeDebFile@Base" 1.1~exp1 + (c++)"vtable for debDebFileMetaIndex@Base" 1.1~exp1 + (c++)"vtable for debDebFileParser@Base" 1.1~exp1 + (c++)"vtable for debDebFileRecordParser@Base" 1.1~exp1 + (c++)"vtable for debDebianSourceDirIndex@Base" 1.1~exp1 + (c++)"vtable for debDebPkgFileIndex@Base" 1.1~exp1 + (c++)"vtable for debDscFileIndex@Base" 1.1~exp1 + (c++)"vtable for debDscRecordParser@Base" 1.1~exp1 + (c++)"vtable for debIFTypeDebianSourceDir@Base" 1.1~exp1 + (c++)"vtable for debIFTypeDebPkgFile@Base" 1.1~exp1 + (c++)"vtable for debIFTypeDscFile@Base" 1.1~exp1 + (c++)"vtable for debSLTypeDebFile@Base" 1.1~exp1 +### CacheFilter functors + (c++)"APT::CacheFilter::ANDMatcher::AND(APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::~ANDMatcher()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::operator()(pkgCache::GrpIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::operator()(pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::operator()(pkgCache::VerIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::FalseMatcher::~FalseMatcher()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::FalseMatcher::operator()(pkgCache::GrpIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::FalseMatcher::operator()(pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::FalseMatcher::operator()(pkgCache::VerIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::Matcher::~Matcher()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::NOTMatcher(APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::~NOTMatcher()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::operator()(pkgCache::GrpIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::operator()(pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::operator()(pkgCache::VerIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::operator()(pkgCache::GrpIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::operator()(pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::operator()(pkgCache::VerIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::OR(APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::~ORMatcher()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::PackageIsNewInstall::operator()(pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::PackageIsNewInstall::~PackageIsNewInstall()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::PackageIsNewInstall::PackageIsNewInstall(pkgCacheFile*)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::PackageMatcher::operator()(pkgCache::GrpIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::PackageMatcher::operator()(pkgCache::VerIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::PackageMatcher::~PackageMatcher()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::~PackageNameMatchesFnmatch()@Base" 1.1~exp4 + (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::PackageNameMatchesFnmatch(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::TrueMatcher::operator()(pkgCache::GrpIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::TrueMatcher::operator()(pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::TrueMatcher::operator()(pkgCache::VerIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheFilter::TrueMatcher::~TrueMatcher()@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::ANDMatcher@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::FalseMatcher@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::Matcher@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::NOTMatcher@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::ORMatcher@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageArchitectureMatchesSpecification@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageIsNewInstall@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageMatcher@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageNameMatchesFnmatch@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageNameMatchesRegEx@Base" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::TrueMatcher@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::ANDMatcher@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::FalseMatcher@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::Matcher@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::NOTMatcher@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::ORMatcher@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageArchitectureMatchesSpecification@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageIsNewInstall@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageMatcher@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageNameMatchesFnmatch@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageNameMatchesRegEx@Base" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::TrueMatcher@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::ANDMatcher@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::FalseMatcher@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::Matcher@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::NOTMatcher@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::ORMatcher@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageArchitectureMatchesSpecification@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageIsNewInstall@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageMatcher@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageNameMatchesFnmatch@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageNameMatchesRegEx@Base" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::TrueMatcher@Base" 1.1~exp4 +### cacheset redesign (API, but not ABI compatible) +# (c++|optional=inline)"APT::PackageContainerInterface::FromCommandLine(APT::PackageContainerInterface*, pkgCacheFile&, char const**, APT::CacheSetHelper&)@Base" 0.8.16~exp9 +# (c++|optional=inline)"APT::PackageContainerInterface::FromModifierCommandLine(unsigned short&, APT::PackageContainerInterface*, pkgCacheFile&, char const*, std::list<APT::PackageContainerInterface::Modifier, std::allocator<APT::PackageContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 +# (c++|optional=inline)"APT::PackageContainerInterface::FromName(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 +# (c++|optional=inline)"APT::PackageContainerInterface::FromTask(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.16~exp9 +# (c++|optional=inline)"APT::PackageContainerInterface::FromRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.16~exp9 +# (c++|optional=inline)"APT::VersionContainerInterface::FromString(APT::VersionContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&, bool)@Base" 0.8.16~exp9 +# (c++|optional=inline)"APT::VersionContainerInterface::FromPackage(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 +# (c++|optional=inline)"APT::VersionContainerInterface::FromCommandLine(APT::VersionContainerInterface*, pkgCacheFile&, char const**, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 +# (c++)"APT::PackageContainerInterface::FromString(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9 +# (c++)"APT::PackageContainerInterface::FromGroup(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.9.7 +# (c++)"APT::PackageContainerInterface::FromFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.9.11 + (c++)"APT::CacheSetHelper::canNotFindFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotFindPackage(APT::CacheSetHelper::PkgSelector, APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotFindVersion(APT::CacheSetHelper::VerSelector, APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotGetCandInstVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotGetInstCandVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotGetVersion(APT::CacheSetHelper::VerSelector, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFrom(APT::CacheSetHelper::PkgSelector, APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromCommandLine(APT::PackageContainerInterface*, pkgCacheFile&, char const**)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromModifierCommandLine(unsigned short&, APT::PackageContainerInterface*, pkgCacheFile&, char const*, std::list<APT::CacheSetHelper::PkgModifier, std::allocator<APT::CacheSetHelper::PkgModifier> > const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromName(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromPackageName(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromString(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromTask(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::showFnmatchSelection(pkgCache::PkgIterator const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::showPackageSelection(pkgCache::PkgIterator const&, APT::CacheSetHelper::PkgSelector, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp4 + (c++)"APT::CacheSetHelper::showVersionSelection(pkgCache::PkgIterator const&, pkgCache::VerIterator const&, APT::CacheSetHelper::VerSelector, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp4 + (c++)"APT::VersionContainerInterface::FromCommandLine(APT::VersionContainerInterface*, pkgCacheFile&, char const**, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&)@Base" 1.1~exp4 + (c++)"APT::VersionContainerInterface::FromPackage(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&)@Base" 1.1~exp4 + (c++)"APT::VersionContainerInterface::FromString(APT::VersionContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&, bool)@Base" 1.1~exp4 +### all the hashes are belong to us +# (c++|optional=inline)"Hashes::AddFD(int, unsigned long long, bool, bool, bool, bool)@Base" 0.8.16~exp6 +# (c++|optional=inline)"Hashes::AddFD(FileFd&, unsigned long long, bool, bool, bool, bool)@Base" 0.8.16~exp9 +# (c++|optional=inline)"pkgRecords::Parser::MD5Hash()@Base" 0.8.0 +# (c++|optional=inline)"pkgRecords::Parser::SHA1Hash()@Base" 0.8.0 +# (c++|optional=inline)"pkgRecords::Parser::SHA256Hash()@Base" 0.8.0 +# (c++|optional=inline)"pkgRecords::Parser::SHA512Hash()@Base" 0.8.16~exp6 + (c++)"debRecordParser::Hashes() const@Base" 1.1~exp1 + (c++)"debRecordParser::LongDesc(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp1 + (c++)"debRecordParser::ShortDesc(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp1 + (c++)"Hashes::AddFD(FileFd&, unsigned long long, unsigned int)@Base" 1.1~exp1 + (c++)"Hashes::AddFD(int, unsigned long long, unsigned int)@Base" 1.1~exp1 + (c++)"Hashes::Add(unsigned char const*, unsigned long long, unsigned int)@Base" 1.1~exp1 + (c++)"Hashes::GetHashStringList()@Base" 1.1~exp1 + (c++)"Hashes::Hashes()@Base" 1.1~exp1 + (c++)"Hashes::~Hashes()@Base" 1.1~exp1 + (c++)"HashStringList::find(char const*) const@Base" 1.1~exp1 + (c++)"HashStringList::operator==(HashStringList const&) const@Base" 1.1~exp1 + (c++)"HashStringList::operator!=(HashStringList const&) const@Base" 1.1~exp1 + (c++)"HashStringList::push_back(HashString const&)@Base" 1.1~exp1 + (c++)"HashStringList::supported(char const*)@Base" 1.1~exp1 + (c++)"HashStringList::usable() const@Base" 1.1~exp1 + (c++)"HashStringList::VerifyFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@Base" 1.1~exp1 + (c++)"HashString::operator==(HashString const&) const@Base" 1.1~exp1 + (c++)"HashString::operator!=(HashString const&) const@Base" 1.1~exp1 + (c++)"indexRecords::GetSupportsAcquireByHash() const@Base" 1.1~exp1 + (c++)"pkgAcqArchive::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcqArchive::IsTrusted() const@Base" 1.1~exp1 + (c++)"pkgAcqDiffIndex::Custom600Headers() const@Base" 1.1~exp1 + (c++)"pkgAcqDiffIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcqDiffIndex::pkgAcqDiffIndex(pkgAcquire*, IndexTarget const*, HashStringList const&, indexRecords*)@Base" 1.1~exp1 + (c++)"pkgAcqFile::Custom600Headers() const@Base" 1.1~exp1 + (c++)"pkgAcqFile::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcqFile::pkgAcqFile(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, HashStringList const&, unsigned long long, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 1.1~exp1 + (c++)"pkgAcqIndex::Custom600Headers() const@Base" 1.1~exp1 + (c++)"pkgAcqIndexDiffs::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcqIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcqIndex::InitByHashIfNeeded(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp1 + (c++)"pkgAcqIndexMergeDiffs::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcqIndexMergeDiffs::pkgAcqIndexMergeDiffs(pkgAcquire*, IndexTarget const*, HashStringList const&, indexRecords*, DiffInfo const&, std::vector<pkgAcqIndexMergeDiffs*, std::allocator<pkgAcqIndexMergeDiffs*> > const*)@Base" 1.1~exp1 + (c++)"pkgAcqIndex::pkgAcqIndex(pkgAcquire*, IndexTarget const*, HashStringList const&, indexRecords*)@Base" 1.1~exp1 + (c++)"pkgAcqIndex::pkgAcqIndex(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, HashStringList const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp1 + (c++)"pkgAcqIndexTrans::Custom600Headers() const@Base" 1.1~exp1 + (c++)"pkgAcqIndexTrans::pkgAcqIndexTrans(pkgAcquire*, IndexTarget const*, HashStringList const&, indexRecords*)@Base" 1.1~exp1 + (c++)"pkgAcqIndexTrans::pkgAcqIndexTrans(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 1.1~exp1 + (c++)"pkgAcqMetaClearSig::Custom600Headers() const@Base" 1.1~exp1 + (c++)"pkgAcqMetaIndex::Custom600Headers() const@Base" 1.1~exp1 + (c++)"pkgAcqMetaIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcqMetaSig::Custom600Headers() const@Base" 1.1~exp1 + (c++)"pkgAcqMetaSig::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcqMethod::DropPrivsOrDie()@Base" 1.1~exp1 + (c++)"pkgAcqSubIndex::Custom600Headers() const@Base" 1.1~exp1 + (c++)"pkgAcqSubIndex::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcqSubIndex::pkgAcqSubIndex(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&)@Base" 1.1~exp1 + (c++)"pkgAcquire::Item::Custom600Headers() const@Base" 1.1~exp1 + (c++)"pkgAcquire::Item::Done(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long long, HashStringList const&, pkgAcquire::MethodConfig*)@Base" 1.1~exp1 + (c++)"pkgAcquire::Item::IsTrusted() const@Base" 1.1~exp1 + (c++)"pkgAcquire::Item::Item(pkgAcquire*, HashStringList const&)@Base" 1.1~exp1 + (c++)"pkgRecords::Parser::Hashes() const@Base" 1.1~exp1 + (c++)"pkgRecords::Parser::LongDesc(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp1 + (c++)"pkgRecords::Parser::ShortDesc(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp1 + (c++)"typeinfo for Hashes@Base" 1.1~exp1 + (c++)"typeinfo name for Hashes@Base" 1.1~exp1 + (c++)"vtable for Hashes@Base" 1.1~exp1 + (c++)"typeinfo for pkgAcqBaseIndex@Base" 1.1~exp1 + (c++)"typeinfo name for pkgAcqBaseIndex@Base" 1.1~exp1 + (c++)"vtable for pkgAcqBaseIndex@Base" 1.1~exp1 + (c++)"DiffInfo::DiffInfo(DiffInfo const&)@Base" 1.1~exp4 + (c++)"pkgAcqIndexDiffs::pkgAcqIndexDiffs(pkgAcquire*, IndexTarget const*, HashStringList const&, indexRecords*, std::vector<DiffInfo, std::allocator<DiffInfo> >)@Base" 1.1~exp4 ### mixed stuff (c++)"GetListOfFilesInDir(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp13 (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PkgIterator const&) const@Base" 0.8.16~exp10 (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PrvIterator const&) const@Base" 0.8.16~exp10 (c++)"FileFd::Write(int, void const*, unsigned long long)@Base" 0.8.16~exp14 - (c++)"pkgTagSection::Exists(char const*)@Base" 0.9.7.9~exp1 (c++)"_strrstrip(char*)@Base" 0.9.7.9~exp2 (c++)"SplitClearSignedFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd*, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, FileFd*)@Base" 0.9.7.9~exp2 (c++)"OpenMaybeClearSignedFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd&)@Base" 0.9.7.9~exp2 @@ -1524,30 +1683,27 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"AcquireUpdate(pkgAcquire&, int, bool, bool)@Base" 0.9.3 (c++)"pkgCache::DepIterator::IsMultiArchImplicit() const@Base" 0.9.6 (c++)"pkgCache::PrvIterator::IsMultiArchImplicit() const@Base" 0.9.6 - (c++)"APT::PackageContainerInterface::FromGroup(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.9.7 (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::PackageArchitectureMatchesSpecification(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.9.7 (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::~PackageArchitectureMatchesSpecification()@Base" 0.9.7 (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(pkgCache::PkgIterator const&)@Base" 0.9.7 - (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(pkgCache::VerIterator const&)@Base" 0.9.7 (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(char const* const&)@Base" 0.9.7 (c++)"APT::Configuration::checkLanguage(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@Base" 0.9.7.5 (c++)"pkgCdrom::DropTranslation(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@Base" 0.9.7.5 (c++)"pkgCache::DepIterator::IsSatisfied(pkgCache::PrvIterator const&) const@Base" 0.9.8 (c++)"pkgCache::DepIterator::IsSatisfied(pkgCache::VerIterator const&) const@Base" 0.9.8 (c++)"pkgCacheGenerator::NewDepends(pkgCache::PkgIterator&, pkgCache::VerIterator&, unsigned int, unsigned int const&, unsigned int const&, unsigned int*&)@Base" 0.9.8 - (c++)"pkgCacheGenerator::NewVersion(pkgCache::VerIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsigned long, unsigned long)@Base" 0.9.8 (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, GlobalError::Item)@Base" 0.9.9 (c++)"pkgDepCache::IsDeleteOkProtectInstallRequests(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.9.9.1 (c++)"pkgDepCache::IsInstallOkMultiArchSameVersionSynced(pkgCache::PkgIterator const&, bool, unsigned long, bool)@Base" 0.9.9.1 (c++)"pkgDPkgPM::SendPkgsInfo(_IO_FILE*, unsigned int const&)@Base" 0.9.9.1 (c++)"pkgCache::VerIterator::MultiArchType() const@Base" 0.9.9.1 + (c++)"AutoDetectProxy(URI&)@Base" 0.9.10 (c++)"CommandLine::GetCommand(CommandLine::Dispatch const*, unsigned int, char const* const*)@Base" 0.9.11 (c++)"CommandLine::MakeArgs(char, char const*, char const*, unsigned long)@Base" 0.9.11 (c++)"Configuration::Clear()@Base" 0.9.11 (c++)"Glob(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)@Base" 0.9.11 (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::operator()(pkgCache::GrpIterator const&)@Base" 0.9.11 (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::operator()(pkgCache::PkgIterator const&)@Base" 0.9.11 - (c++)"APT::PackageContainerInterface::FromFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.9.11 (c++)"pkgTagSection::pkgTagSection()@Base" 0.9.11 (c++)"strv_length(char const**)@Base" 0.9.11 (c++)"StringSplit(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)@Base" 0.9.11.3 @@ -1580,8 +1736,43 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# (c++)"typeinfo for debTranslationsParser@Base" 1.0.4 (c++)"typeinfo name for debTranslationsParser@Base" 1.0.4 (c++)"vtable for debTranslationsParser@Base" 1.0.4 + (c++)"pkgSrcRecords::Step()@Base" 1.0.4 + (c++)"pkgDPkgPM::SetupSlavePtyMagic()@Base" 1.0.8 + (c++)"pkgAcqIndex::GetFinalFilename(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.0.9 + (c++)"pkgAcqIndex::ReverifyAfterIMS(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.0.9 + (c++)"APT::Progress::PackageManager::PackageManager()@Base" 1.1~exp1 + (c++)"pkgDPkgPM::Go(APT::Progress::PackageManager*)@Base" 1.1~exp1 + (c++)"pkgPackageManager::DoInstall(APT::Progress::PackageManager*)@Base" 1.1~exp1 + (c++)"pkgPackageManager::DoInstallPostFork(APT::Progress::PackageManager*)@Base" 1.1~exp1 + (c++)"pkgPackageManager::Go(APT::Progress::PackageManager*)@Base" 1.1~exp1 + (c++)"pkgTagFile::Init(FileFd*, unsigned long long)@Base" 1.1~exp1 + (c++)"pkgTagSection::Count() const@Base" 1.1~exp1 + (c++)"pkgTagSection::Exists(char const*) const@Base" 1.1~exp1 + (c++)"pkgTagSection::FindB(char const*, bool const&) const@Base" 1.1~exp1 + (c++)"pkgTagSection::Scan(char const*, unsigned long, bool)@Base" 1.1~exp1 + (c++)"StartsWithGPGClearTextSignature(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp1 + (c++)"Popen(char const**, FileFd&, int&, FileFd::OpenMode)@Base" 1.1~exp1 + (c++)"APT::String::Startswith(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 1.1~exp2 + (c++)"DropPrivs()@Base" 1.1~exp3 + (c++)"pkgAcquire::Setup(pkgAcquireStatus*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 1.1~exp4 + (c++)"APT::Upgrade::Upgrade(pkgDepCache&, int, OpProgress*)@Base" 1.1~exp4 + (c++)"pkgAllUpgrade(pkgDepCache&, OpProgress*)@Base" 1.1~exp4 + (c++)"pkgDistUpgrade(pkgDepCache&, OpProgress*)@Base" 1.1~exp4 + (c++)"pkgProblemResolver::Resolve(bool, OpProgress*)@Base" 1.1~exp4 + (c++)"pkgProblemResolver::ResolveByKeep(OpProgress*)@Base" 1.1~exp4 + (c++)"pkgCacheGenerator::NewVersion(pkgCache::VerIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsigned short, unsigned int)@Base" 1.1~exp4 + (c++)"pkgCacheGenerator::StoreString(pkgCacheGenerator::StringType, char const*, unsigned int)@Base" 1.1~exp4 + (c++)"pkgCache::PkgIterator::Section() const@Base" 1.1~exp4 + (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::iterator::getPkg() const@Base" 1.1~exp4 + (c++)"typeinfo for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::iterator@Base" 1.1~exp4 + (c++)"typeinfo name for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::iterator@Base" 1.1~exp4 + (c++)"vtable for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::iterator@Base" 1.1~exp4 + (c++)"debPackagesIndex::IndexFile(char const*) const@Base" 1.1~exp4 + (c++)"debSourcesIndex::IndexFile(char const*) const@Base" 1.1~exp4 + (c++)"debTranslationsIndex::IndexFile(char const*) const@Base" 1.1~exp4 ### demangle strangeness - buildd report it as MISSING and as new… (c++)"pkgAcqMetaSig::pkgAcqMetaSig(pkgAcquire*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<IndexTarget*, std::allocator<IndexTarget*> > const*, indexRecords*)@Base" 0.8.0 + (c++)"_apt_DebFileType@Base" 1.1~exp1 ### gcc-4.6 artefacts # (c++|optional=implicit)"HashString::operator=(HashString const&)@Base" 0.8.0 # (c++|optional=implicit)"HashString::HashString(HashString const&)@Base" 0.8.0 @@ -1601,6 +1792,7 @@ libapt-pkg.so.4.13 libapt-pkg4.13 #MINVER# # (c++|optional=inline)"pkgAcquireStatus::~pkgAcquireStatus()@Base" 0.8.0 # (c++|optional=inline)"metaIndex::~metaIndex()@Base" 0.8.0 # (c++|optional=inline)"IndexCopy::~IndexCopy()@Base" 0.8.0 + (c++)"pkgIndexFile::Type::~Type()@Base" 0.8.0 ### std library artefacts (c++|regex|optional=std)"^std::vector<DiffInfo, .+@Base$" 0.8.0 (c++|regex|optional=std)"^std::vector<.+ >::(vector|push_back|erase|_[^ ]+)\(.+\)( const|)@Base$" 0.8.0 diff --git a/debian/rules b/debian/rules index c7b5aa304..f031cfddb 100755 --- a/debian/rules +++ b/debian/rules @@ -21,9 +21,12 @@ endif -include build/environment.mak ifneq (,$(shell which dpkg-buildflags)) - export CXXFLAGS = $(shell dpkg-buildflags --get CXXFLAGS) - export LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS) - export CPPFLAGS = $(shell dpkg-buildflags --get CPPFLAGS) + # make does not export to $(shell) so we need to workaround + # (http://savannah.gnu.org/bugs/?10593) + dpkg_buildflags = DEB_BUILD_MAINT_OPTIONS=hardening=+all dpkg-buildflags + export CXXFLAGS = $(shell $(dpkg_buildflags) --get CXXFLAGS) + export LDFLAGS = $(shell $(dpkg_buildflags) --get LDFLAGS) + export CPPFLAGS = $(shell $(dpkg_buildflags) --get CPPFLAGS) else ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) export CXXFLAGS = -O0 -g -Wall @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: apt\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" "POT-Creation-Date: 2014-09-09 20:35+0200\n" -"PO-Revision-Date: 2014-08-15 13:30+0200\n" +"PO-Revision-Date: 2014-10-05 06:09+0200\n" "Last-Translator: Miroslav Kure <kurem@debian.cz>\n" "Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n" "Language: cs\n" @@ -122,7 +122,7 @@ msgstr "Soubory balíku:" #: cmdline/apt-cache.cc:1553 cmdline/apt-cache.cc:1644 msgid "Cache is out of sync, can't x-ref a package file" -msgstr "Cache není synchronizovaná, nemohu se odkázat na soubor balíku" +msgstr "Cache není synchronizovaná, nelze se odkázat na soubor balíku" #. Show any packages have explicit pins #: cmdline/apt-cache.cc:1567 @@ -622,7 +622,7 @@ msgstr "" #: cmdline/apt-helper.cc:36 msgid "Need one URL as argument" -msgstr "" +msgstr "Jako argument vyžaduje jedno URL" #: cmdline/apt-helper.cc:49 msgid "Must specify at least one pair url/filename" @@ -633,7 +633,6 @@ msgid "Download Failed" msgstr "Stažení selhalo" #: cmdline/apt-helper.cc:80 -#, fuzzy msgid "" "Usage: apt-helper [options] command\n" " apt-helper [options] download-file uri target-path\n" @@ -653,6 +652,7 @@ msgstr "" "\n" "Příkazy:\n" " download-file - stáhne zadané uri do cílové cesty\n" +" auto-detect-proxy - detekuje proxy pomocí apt.conf\n" "\n" " Tento APT pomocník má schopnosti svatého čehokoliv.\n" @@ -1055,15 +1055,15 @@ msgstr "Nelze se připojit k %s:%s:" #: methods/gpgv.cc:168 msgid "" "Internal error: Good signature, but could not determine key fingerprint?!" -msgstr "Vnitřní chyba: Dobrý podpis, ale nemohu zjistit otisk klíče?!" +msgstr "Vnitřní chyba: Dobrý podpis, ale nelze zjistit otisk klíče?!" #: methods/gpgv.cc:172 msgid "At least one invalid signature was encountered." msgstr "Byl zaznamenán nejméně jeden neplatný podpis. " #: methods/gpgv.cc:174 -msgid "Could not execute 'apt-key' to verify signature (is gnupg installed?)" -msgstr "Nelze spustit „apt-key“ pro ověření podpisu (je gnupg nainstalováno?)" +msgid "Could not execute 'gpgv' to verify signature (is gpgv installed?)" +msgstr "Nelze spustit „gpgv“ pro ověření podpisu (je gpgv nainstalováno?)" #. TRANSLATORS: %s is a single techy word like 'NODATA' #: methods/gpgv.cc:180 @@ -1076,8 +1076,8 @@ msgstr "" "ověření?)" #: methods/gpgv.cc:184 -msgid "Unknown error executing apt-key" -msgstr "Neznámá chyba při spouštění apt-key" +msgid "Unknown error executing gpgv" +msgstr "Neznámá chyba při spouštění gpgv" #: methods/gpgv.cc:217 methods/gpgv.cc:224 msgid "The following signatures were invalid:\n" @@ -1383,7 +1383,7 @@ msgstr "Poznámka: Toto má svůj důvod a děje se automaticky v dpkg." #: apt-private/private-install.cc:391 msgid "We are not supposed to delete stuff, can't start AutoRemover" -msgstr "Neměli bychom mazat věci, nemůžu spustit AutoRemover" +msgstr "Neměli bychom mazat věci, nelze spustit AutoRemover" #: apt-private/private-install.cc:499 msgid "" @@ -1757,8 +1757,8 @@ msgid "All packages are up to date." msgstr "Všechny balíky jsou aktuální." #: apt-private/private-upgrade.cc:25 -msgid "Calculating upgrade" -msgstr "Propočítává se aktualizace" +msgid "Calculating upgrade... " +msgstr "Propočítává se aktualizace… " #: apt-private/private-upgrade.cc:28 msgid "Done" @@ -2406,7 +2406,7 @@ msgstr "Toto není platný DEB archiv, chybí část „%s“" #: apt-inst/deb/debfile.cc:132 #, c-format msgid "Internal error, could not locate member %s" -msgstr "Vnitřní chyba, nemohu najít část %s" +msgstr "Vnitřní chyba, nelze najít část %s" #: apt-inst/deb/debfile.cc:227 msgid "Unparsable control file" @@ -2735,7 +2735,7 @@ msgstr "Generování závislostí" #: apt-pkg/depcache.cc:188 apt-pkg/depcache.cc:221 apt-pkg/depcache.cc:225 msgid "Reading state information" -msgstr "Čtu stavové informace" +msgstr "Načítají se stavové informace" #: apt-pkg/depcache.cc:250 #, c-format @@ -2994,7 +2994,7 @@ msgstr "Nešlo vyhodnotit seznam zdrojových balíků %s" #: apt-pkg/pkgcachegen.cc:1299 apt-pkg/pkgcachegen.cc:1403 #: apt-pkg/pkgcachegen.cc:1409 apt-pkg/pkgcachegen.cc:1566 msgid "Reading package lists" -msgstr "Čtu seznamy balíků" +msgstr "Načítají se seznamy balíků" #: apt-pkg/pkgcachegen.cc:1316 msgid "Collecting File Provides" @@ -3080,7 +3080,7 @@ msgstr "Zkomolený řádek %lu v seznamu zdrojů %s (zpracování URI)" #: apt-pkg/sourcelist.cc:217 #, c-format msgid "Malformed line %lu in source list %s (absolute dist)" -msgstr "Zkomolený řádek %lu v seznamu zdrojů %s (Absolutní dist)" +msgstr "Zkomolený řádek %lu v seznamu zdrojů %s (absolutní dist)" #: apt-pkg/sourcelist.cc:224 #, c-format @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: apt\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" "POT-Creation-Date: 2014-09-09 20:35+0200\n" -"PO-Revision-Date: 2014-09-11 02:47+0200\n" +"PO-Revision-Date: 2014-09-29 22:08+0200\n" "Last-Translator: Mert Dirik <mertdirik@gmail.com>\n" "Language-Team: Debian l10n Turkish <debian-l10n-turkish@lists.debian.org>\n" "Language: tr\n" @@ -83,7 +83,7 @@ msgstr "Toplam birikmiş dizgiler: " #: cmdline/apt-cache.cc:362 msgid "Total dependency version space: " -msgstr "Toplam bağlımlık sürümü alanı: " +msgstr "Toplam bağımlılık sürümü alanı: " #: cmdline/apt-cache.cc:367 msgid "Total slack space: " @@ -127,7 +127,7 @@ msgstr "Paket dosyaları:" #: cmdline/apt-cache.cc:1553 cmdline/apt-cache.cc:1644 msgid "Cache is out of sync, can't x-ref a package file" -msgstr "Önbellek eşzamanlı değil, paket dosyası 'x-ref' yapılamıyor." +msgstr "Önbellek eşzamanlı değil, paket dosyası 'x-ref' yapılamıyor" #. Show any packages have explicit pins #: cmdline/apt-cache.cc:1567 @@ -205,8 +205,8 @@ msgid "" "See the apt-cache(8) and apt.conf(5) manual pages for more information.\n" msgstr "" "Kullanım: apt-cache [seçenekler] komut\n" -" apt-cache [seçenekler] showpkg paket1 [paket2 ...]\n" -" apt-cache [seçenekler] showsrc paket1 [paket2 ...]\n" +" apt-cache [seçenekler] showpkg paket1 [paket2 ...]\n" +" apt-cache [seçenekler] showsrc paket1 [paket2 ...]\n" "\n" "apt-cache APT'nin ikili paket önbelleğindeki dosyaları\n" "sorgulamakta kullanılan alt seviye bir araçtır.\n" @@ -233,7 +233,7 @@ msgstr "" " -p=? Paket önbelleği.\n" " -s=? Kaynak önbelleği.\n" " -q İlerleme göstergesini kapat.\n" -" -i unmet komutunda yalnızca önemli bağımlılıkları görüntüle.\n" +" -i unmet komutunda sadece önemli bağımlılıkları görüntüle.\n" " -c=? Belirtilen yapılandırma dosyasını kullan\n" " -o=? Herhangi bir yapılandırma seçeneğini ayarla, örneğin -o dir::cache=/" "tmp\n" @@ -242,7 +242,7 @@ msgstr "" #: cmdline/apt-cdrom.cc:76 msgid "Please provide a name for this Disc, such as 'Debian 5.0.3 Disk 1'" -msgstr "Lütfen bu CD/DVD'ye bir isim verin, örneğin 'Debian 5.0.3 Disk 1'" +msgstr "Lütfen bu CD/DVD'ye bir ad verin, örneğin 'Debian 5.0.3 Disk 1'" #: cmdline/apt-cdrom.cc:91 msgid "Please insert a Disc in the drive and press enter" @@ -272,7 +272,7 @@ msgstr "Kalan CD'leriniz için bu işlemi yineleyin." #: cmdline/apt-config.cc:48 msgid "Arguments not in pairs" -msgstr "Değişkenler (argüman) çiftler halinde değil" +msgstr "Argümanlar çiftler halinde değil" #: cmdline/apt-config.cc:89 msgid "" @@ -337,7 +337,7 @@ msgstr "%s paketi bulunamadı" #: apt-private/private-install.cc:865 #, c-format msgid "%s set to manually installed.\n" -msgstr "%s elle kurulmuş olarak ayarlı.\n" +msgstr "%s elle kurulmuş olarak ayarlandı.\n" #: cmdline/apt-get.cc:461 cmdline/apt-mark.cc:83 #, c-format @@ -437,7 +437,7 @@ msgstr "İndirme işlemi tamamlandı ve sadece indirme kipinde" #: cmdline/apt-get.cc:950 #, c-format msgid "Skipping unpack of already unpacked source in %s\n" -msgstr "%s için zaten açılmış bazı paketlerin açılması atlanıyor.\n" +msgstr "%s için zaten açılmış bazı paketlerin açılması atlanıyor\n" #: cmdline/apt-get.cc:963 #, c-format @@ -460,7 +460,7 @@ msgstr "Alt süreç başarısız" #: cmdline/apt-get.cc:1030 msgid "Must specify at least one package to check builddeps for" -msgstr "İnşa bağımlılıklarının denetleneceği en az bir paket belirtilmedilir" +msgstr "İnşa bağımlılıklarının denetleneceği en az bir paket belirtilmelidir" #: cmdline/apt-get.cc:1055 #, c-format @@ -469,7 +469,7 @@ msgid "" "Architectures for setup" msgstr "" "%s mimarisine uygun mimari bilgileri mevcut değil. Kurulumu için apt.conf(5) " -"rehber sayfasındaki APT::Architectures kısmına göz atın." +"rehber sayfasındaki APT::Architectures kısmına göz atın" #: cmdline/apt-get.cc:1079 cmdline/apt-get.cc:1082 #, c-format @@ -488,7 +488,7 @@ msgid "" "packages" msgstr "" "'%4$s' paketlerinde %3$s paketine izin verilmediği için %2$s kaynağının %1$s " -"bağımlılığı karşılanamıyor." +"bağımlılığı karşılanamıyor" #: cmdline/apt-get.cc:1290 #, c-format @@ -496,12 +496,12 @@ msgid "" "%s dependency for %s cannot be satisfied because the package %s cannot be " "found" msgstr "" -"%2$s için %1$s bağımlılığı, %3$s paketi bulunamadığı için karşılanamadı." +"%2$s için %1$s bağımlılığı, %3$s paketi bulunamadığı için karşılanamadı" #: cmdline/apt-get.cc:1313 #, c-format msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new" -msgstr "%2$s için %1$s bağımlılığı karşılanamadı: Kurulu %3$s paketi çok yeni." +msgstr "%2$s için %1$s bağımlılığı karşılanamadı: Kurulu %3$s paketi çok yeni" #: cmdline/apt-get.cc:1352 #, c-format @@ -589,17 +589,17 @@ msgid "" " This APT has Super Cow Powers.\n" msgstr "" "Kullanım: apt-get [seçenekler] komut\n" -" apt-get [seçenekler] install|remove paket1 [paket2 ...]\n" -" apt-get [seçenekler] kaynak paket1 [paket2 ...]\n" +" apt-get [seçenekler] install|remove paket1 [paket2 ...]\n" +" apt-get [seçenekler] kaynak paket1 [paket2 ...]\n" "\n" -"apt-get, paket indirmek ve kurmakta kullanılan basit bir komut satırı\n" +"apt-get, paket indirme ve kurmada kullanılan basit bir komut satırı\n" "arayüzüdür. En sık kullanılan komutlar güncelleme (update) ve kurma\n" "(install) komutlarıdır.\n" "\n" "Komutlar:\n" " update - Paket listelerini yenile\n" " upgrade - Yükseltme işlemini gerçekleştir\n" -" install - Yeni paket kur (paket adı libc6.deb değil libc6 şeklinde " +" install - Yeni paket kur (paket libc6.deb değil libc6 şeklinde " "olmalıdır)\n" " remove - Paket(leri) kaldır\n" " autoremove - Kullanılmayan tüm paketleri otomatik olarak kaldır\n" @@ -619,7 +619,7 @@ msgstr "" " -h Bu yardım metni.\n" " -q Günlük tutmaya uygun çıktı - İlerleme göstergesi yok\n" " -qq Hata olmadığı müddetçe çıktıya bir şey yazma\n" -" -d Yalnızca indir - Paketleri açmaz ve kurmaz\n" +" -d Sadece indir - Paketleri açmaz ve kurmaz\n" " -s Bir şey yapma. Simülasyon kipinde çalış\n" " -y Tüm sorulara Evet yanıtını ver ve soru sorma\n" " -f Eksik bağımlılıklara sahip bir sistemi onarmaya çalış\n" @@ -639,7 +639,7 @@ msgstr "Argüman olarak bir adet URL'ye ihtiyaç vardır" #: cmdline/apt-helper.cc:49 msgid "Must specify at least one pair url/filename" -msgstr "En az bir adet url/dosyaadı çifti belirtilmelidir" +msgstr "En az bir adet url/dosya-adı çifti belirtilmelidir" #: cmdline/apt-helper.cc:67 msgid "Download Failed" @@ -661,7 +661,7 @@ msgstr "" "Usage: apt-helper [seçenekler] komut\n" " apt-helper [seçenekler] download-file uri hedef-konum\n" "\n" -"apt-helper apt'nin dahili yardımcı aracıdır\n" +"apt-helper apt'nin dâhilî yardımcı aracıdır\n" "\n" "Komutlar:\n" " download-file - verilen adresi hedef yola kaydet\n" @@ -759,7 +759,7 @@ msgstr "" " -h Bu yardım metni.\n" " -q Günlük tutmaya uygun çıktı - İlerleme göstergesi yok\n" " -qq Hata olmadığı müddetçe çıktıya bir şey yazma\n" -" -s Bir şey yapma. Yalnızca ne yapılacağını söyler.\n" +" -s Bir şey yapma. Sadece ne yapılacağını söyler.\n" " -f read/write auto/manual marking in the given file\n" " -c=? Belirtilen yapılandırma dosyası kullan\n" " -o=? Yapılandırma seçeneği ayarla, örneğin -o dir::cache=/tmp\n" @@ -817,7 +817,7 @@ msgid "" "cannot be used to add new CD-ROMs" msgstr "" "Lütfen bu CD-ROM'un APT tarafından tanınması için apt-cdrom aracını " -"kullanın. apt-get update yeni CD-ROM'lar eklemek için kullanılamaz." +"kullanın. apt-get update yeni CD-ROM'lar eklemek için kullanılamaz" #: methods/cdrom.cc:222 msgid "Wrong CD-ROM" @@ -826,7 +826,7 @@ msgstr "Yanlış CD-ROM" #: methods/cdrom.cc:249 #, c-format msgid "Unable to unmount the CD-ROM in %s, it may still be in use." -msgstr "%s konumundaki CD-ROM çıkarılamıyor, hala kullanımda olabilir." +msgstr "%s konumundaki CD-ROM çıkarılamıyor, hâlâ kullanımda olabilir." #: methods/cdrom.cc:254 msgid "Disk not found." @@ -1065,7 +1065,7 @@ msgstr "'%s:%s' (%i - %s) adresi çözümlenirken bir şeyler kötü gitti" #: methods/connect.cc:258 #, c-format msgid "Unable to connect to %s:%s:" -msgstr "Bağlanılamıyor %s:%s:" +msgstr "Bağlanılamadı %s:%s:" #: methods/gpgv.cc:168 msgid "" @@ -1211,7 +1211,7 @@ msgid "" msgstr "" "Ortam değişimi: Lütfen '%2$s' sürücüsüne\n" " '%1$s'\n" -"olarak etiketlenmiş diski takın ve enter tuşuna basın.\n" +"olarak etiketlenmiş diski takın ve enter tuşuna basın\n" #: apt-private/private-cachefile.cc:93 msgid "Correcting dependencies..." @@ -1290,7 +1290,7 @@ msgstr "İç hata, Sıralama tamamlanamadı" msgid "How odd... The sizes didn't match, email apt@packages.debian.org" msgstr "" "Ne kadar ilginç... Boyutlar eşleşmedi, apt@packages.debian.org adresine " -"eposta atın." +"eposta atın" #. TRANSLATOR: The required space between number and unit is already included #. in the replacement strings, so %sB will be correctly translate in e.g. 1,5 MB @@ -1327,8 +1327,7 @@ msgstr "%s içinde yeterli boş alanınız yok." #: apt-private/private-install.cc:216 apt-private/private-install.cc:238 msgid "Trivial Only specified but this is not a trivial operation." -msgstr "" -"Yalnızca Önemsiz seçeneği ayarlandı, fakat bu önemsiz bir işlem bir değil." +msgstr "Sadece Önemsiz seçeneği ayarlandı, ama bu önemsiz bir işlem değil." #. TRANSLATOR: This string needs to be typed by the user as a confirmation, so be #. careful with hard to type or special characters (like non-breaking spaces) @@ -1510,8 +1509,7 @@ msgstr "" #, c-format msgid "Reinstallation of %s is not possible, it cannot be downloaded.\n" msgstr "" -"%s paketinin yeniden kurulumu mümkün değil, çünkü paket internetten " -"indirilemedi.\n" +"%s paketinin yeniden kurulumu mümkün değil, çünkü paket indirilemedi.\n" #: apt-private/private-install.cc:846 #, c-format @@ -1539,7 +1537,7 @@ msgstr "" #: apt-private/private-install.cc:947 #, c-format msgid "Package '%s' is not installed, so not removed\n" -msgstr "'%s' kurulu değildi, dolayısıyla kaldırılmadı.\n" +msgstr "'%s' kurulu değildi, dolayısıyla kaldırılmadı\n" #: apt-private/private-list.cc:129 msgid "Listing" @@ -1550,11 +1548,10 @@ msgstr "Listeleme" msgid "There is %i additional version. Please use the '-a' switch to see it" msgid_plural "" "There are %i additional versions. Please use the '-a' switch to see them." -msgstr[0] "" -"Fazladan %i sürüm daha var. Görmek için '-a' anahtarını kullanabilirsiniz." +msgstr[0] "Fazladan %i sürüm daha var. Görmek için '-a' anahtarını kullanın." msgstr[1] "" "Fazladan %i sürüm daha var. Bu sürümleri görmek için '-a' anahtarını " -"kullanabilirsiniz." +"kullanın." #: apt-private/private-main.cc:32 msgid "" @@ -1563,10 +1560,10 @@ msgid "" " Keep also in mind that locking is deactivated,\n" " so don't depend on the relevance to the real current situation!" msgstr "" -"NOT: Bu yalnızca bir benzetimdir!\n" +"NOT: Bu sadece bir benzetimdir!\n" " apt-get'i gerçekten çalıştırmak için root haklarına ihtiyaç vardır.\n" " Unutmayın ki benzetim kipinde kilitleme yapılmaz, bu nedenle\n" -" bu benzetimin gerçekteki durumla birebir aynı olacağına güvenmeyin." +" bu benzetimin gerçekteki durumla birebir aynı olacağına güvenmeyin!" #: apt-private/private-output.cc:103 apt-private/private-show.cc:84 #: apt-private/private-show.cc:89 @@ -1739,10 +1736,10 @@ msgstr "Tam Metin Arama" msgid "There is %i additional record. Please use the '-a' switch to see it" msgid_plural "" "There are %i additional records. Please use the '-a' switch to see them." -msgstr[0] "" -"Fazladan %i kayıt daha var. Görmek için '-a' anahtarını kullanabilirsiniz." +msgstr[0] "Fazladan %i kayıt daha var. Görmek için '-a' anahtarını kullanın." msgstr[1] "" -"Fazladan %i kayıt daha var. Görmek için '-a' anahtarını kullanabilirsiniz." +"Fazladan %i kayıt daha var. Bu kayıtları görmek için '-a' anahtarını " +"kullanın. kullanabilirsiniz." #: apt-private/private-show.cc:163 msgid "not a real package (virtual)" @@ -1751,7 +1748,7 @@ msgstr "gerçek bir paket değil (sanal)" #: apt-private/private-sources.cc:58 #, c-format msgid "Failed to parse %s. Edit again? " -msgstr "%s ayrıştırılamadı. Tekrar düzenlemek ister misiniz?" +msgstr "%s ayrıştırılamadı. Tekrar düzenlemek ister misiniz? " #: apt-private/private-sources.cc:70 #, c-format @@ -1760,7 +1757,7 @@ msgstr "'%s' dosyası değişti, lütfen 'apt-get update' komutunu çalıştır #: apt-private/private-update.cc:31 msgid "The update command takes no arguments" -msgstr "'update' komutu bağımsız değişken almamaktadır" +msgstr "'update' komutu argüman almaz" #: apt-private/private-update.cc:90 #, c-format @@ -1779,8 +1776,8 @@ msgid "All packages are up to date." msgstr "Tüm paketler güncel." #: apt-private/private-upgrade.cc:25 -msgid "Calculating upgrade" -msgstr "Yükseltme hesaplanıyor" +msgid "Calculating upgrade... " +msgstr "Yükseltme hesaplanıyor... " #: apt-private/private-upgrade.cc:28 msgid "Done" @@ -1862,7 +1859,7 @@ msgstr "Bu durum, çift hata iletilerine ya da eksik bağımlılıkların neden" #: dselect/install:104 msgid "or errors caused by missing dependencies. This is OK, only the errors" msgstr "" -"olduğu hatalara yol açabilir. Bu durum bir sorun teşkil etmez, yalnızca bu " +"olduğu hatalara yol açabilir. Bu durum bir sorun teşkil etmez, sadece bu " "iletinin" #: dselect/install:105 @@ -1931,7 +1928,7 @@ msgstr "Kaynak uzantı listesi çok uzun" #: ftparchive/apt-ftparchive.cc:401 msgid "Error writing header to contents file" -msgstr "İçindekiler dosyasına üstbilgi yazmada hata" +msgstr "İçindekiler dosyasına başlık yazmada hata" #: ftparchive/apt-ftparchive.cc:431 #, c-format @@ -1980,12 +1977,12 @@ msgid "" " -o=? Set an arbitrary configuration option" msgstr "" "Kullanım: apt-ftparchive [seçenekler] komut\n" -"Komutlar: packages ikilikonumu [geçersizkılmadosyası [konumöneki]]\n" -" sources kaynakkonumu [geçersizkılmadosyası [konumöneki]]\n" -" contents konum\n" -" release konum\n" -" generate yapılandırma [gruplar]\n" -" clean yapılandırma\n" +"Komutlar: packages ikilikonumu [geçersizkılmadosyası [konumöneki]]\n" +" sources kaynakkonumu [geçersizkılmadosyası [konumöneki]]\n" +" contents konum\n" +" release konum\n" +" generate yapılandırma [gruplar]\n" +" clean yapılandırma\n" "\n" "apt-ftparchive Debian arşivleri için indeks dosyaları üretir. \n" "dpkg-scanpackages ve dpkg-scansources için tamamen otomatikten\n" @@ -2016,7 +2013,7 @@ msgstr "" " -s=? Kaynak geçersiz kılma dosyası\n" " -q Sessiz\n" " -d=? Seçimlik önbellek veritabanını seç\n" -" --no-delink Bağlantılanmamış hata ayıklama kipini etkinleştir\n" +" --no-delink Bağ kurulmamış hata ayıklama kipini etkinleştir\n" " --contents İçerik dosyası üretimini denetle\n" " -c=? Belirtilen yapılandırma dosyası kullan\n" " -o=? Yapılandırma seçeneği ayarla" @@ -2074,24 +2071,24 @@ msgstr "İmleç alınamıyor" #: ftparchive/writer.cc:91 #, c-format msgid "W: Unable to read directory %s\n" -msgstr "W: %s dizini okunamıyor\n" +msgstr "U: %s dizini okunamıyor\n" #: ftparchive/writer.cc:96 #, c-format msgid "W: Unable to stat %s\n" -msgstr "W: %s durum bilgisi alınamıyor\n" +msgstr "U: %s durum bilgisi alınamıyor\n" #: ftparchive/writer.cc:152 msgid "E: " -msgstr "E: " +msgstr "H: " #: ftparchive/writer.cc:154 msgid "W: " -msgstr "W: " +msgstr "U: " #: ftparchive/writer.cc:161 msgid "E: Errors apply to file " -msgstr "E: Hatalar şu dosya için geçerli: " +msgstr "H: Hatalar şu dosya için geçerli: " #: ftparchive/writer.cc:179 ftparchive/writer.cc:211 #, c-format @@ -2115,12 +2112,12 @@ msgstr " DeLink %s [%s]\n" #: ftparchive/writer.cc:286 #, c-format msgid "Failed to readlink %s" -msgstr "%s bağlantı okuması başarılamadı" +msgstr "%s readlink çağrısı başarısız oldu" #: ftparchive/writer.cc:290 #, c-format msgid "Failed to unlink %s" -msgstr "%s bağlantı koparma başarılamadı" +msgstr "%s bağı koparılamadı" #: ftparchive/writer.cc:298 #, c-format @@ -2130,7 +2127,7 @@ msgstr "*** %s, %s konumuna bağlanamadı" #: ftparchive/writer.cc:308 #, c-format msgid " DeLink limit of %sB hit.\n" -msgstr " %sB'lik bağlantı koparma (DeLink) sınırına ulaşıldı.\n" +msgstr " %sB'lik bağ koparma (DeLink) sınırına ulaşıldı.\n" #: ftparchive/writer.cc:417 msgid "Archive had no package field" @@ -2200,7 +2197,7 @@ msgstr "Bilinmeyen sıkıştırma algoritması '%s'" #: ftparchive/multicompress.cc:103 #, c-format msgid "Compressed output %s needs a compression set" -msgstr "Sıkıştırılmış %s çıktısı bir sıkıştırma kümesine ihtiyaç duymaktadır." +msgstr "Sıkıştırılmış %s çıktısı bir sıkıştırma kümesine ihtiyaç duymaktadır" #: ftparchive/multicompress.cc:192 msgid "Failed to create FILE*" @@ -2252,7 +2249,7 @@ msgid "" msgstr "" "Kullanım: apt-internal-solver\n" "\n" -"apt-internal-solver mevcut dahili çözücüyü (hata ayıklama\n" +"apt-internal-solver mevcut dâhilî çözücüyü (hata ayıklama\n" "gibi sebeplerle) harici çözücü gibi kullanmaya yarayan bir\n" "arayüzdür.\n" "\n" @@ -2355,11 +2352,11 @@ msgstr "%s durum bilgisi alınamadı" #: apt-inst/filelist.cc:380 msgid "DropNode called on still linked node" -msgstr "DropNode hala bağlı olan düğüm üzerinde çağrıldı" +msgstr "DropNode hâlâ bağlı olan düğüm üzerinde çağrıldı" #: apt-inst/filelist.cc:412 msgid "Failed to locate the hash element!" -msgstr "Sağlama elementi bulunamadı" +msgstr "Sağlama elementi bulunamadı!" #: apt-inst/filelist.cc:459 msgid "Failed to allocate diversion" @@ -2395,7 +2392,7 @@ msgstr "Arşiv üyesi başlığı okuma hatası" #: apt-inst/contrib/arfile.cc:96 #, c-format msgid "Invalid archive member header %s" -msgstr "Geçerşiz arşiv üyesi başlığı %s" +msgstr "Geçersiz arşiv üyesi başlığı %s" #: apt-inst/contrib/arfile.cc:108 msgid "Invalid archive member header" @@ -2610,8 +2607,7 @@ msgstr "Paket listeleri ya da durum dosyası ayrıştırılamadı ya da açılam #: apt-pkg/cachefile.cc:98 msgid "You may want to run apt-get update to correct these problems" -msgstr "" -"Bu sorunları gidermek için apt-get update komutunu çalıştırabilirsiniz." +msgstr "Bu sorunları gidermek için apt-get update komutunu çalıştırabilirsiniz" #: apt-pkg/cachefile.cc:116 msgid "The list of sources could not be read." @@ -2743,7 +2739,7 @@ msgstr "" #: apt-pkg/cdrom.cc:819 msgid "Copying package lists..." -msgstr "Paket listeleri kopyalanıyor.." +msgstr "Paket listeleri kopyalanıyor..." #: apt-pkg/cdrom.cc:863 msgid "Writing new source list\n" @@ -2777,7 +2773,7 @@ msgstr "Durum bilgisi okunuyor" #: apt-pkg/depcache.cc:250 #, c-format msgid "Failed to open StateFile %s" -msgstr "Durum dosyası (StateFile) %s açılamadı." +msgstr "Durum dosyası (StateFile) %s açılamadı" #: apt-pkg/depcache.cc:256 #, c-format @@ -2827,7 +2823,7 @@ msgstr "%2$i eksik dosya ve %3$i eşleşmeyen dosyayla %1$i kayıt yazıldı\n" #: apt-pkg/indexcopy.cc:515 #, c-format msgid "Can't find authentication record for: %s" -msgstr "%s için kimlik doğrulama kaydı bulunamadı." +msgstr "%s için kimlik doğrulama kaydı bulunamadı" #: apt-pkg/indexcopy.cc:521 #, c-format @@ -2905,7 +2901,7 @@ msgstr "" #: apt-pkg/pkgcache.cc:155 msgid "Empty package cache" -msgstr "Boş paket önbelleği" +msgstr "Paket önbelleği boş" #: apt-pkg/pkgcache.cc:161 msgid "The package cache file is corrupted" @@ -2922,7 +2918,7 @@ msgstr "Paket önbellek dosyası bozulmuş, çok küçük" #: apt-pkg/pkgcache.cc:174 #, c-format msgid "This APT does not support the versioning system '%s'" -msgstr "Bu APT '%s' sürümleme sistemini desteklemiyor." +msgstr "Bu APT '%s' sürümleme sistemini desteklemiyor" #: apt-pkg/pkgcache.cc:179 msgid "The package cache was built for a different architecture" @@ -3054,7 +3050,7 @@ msgid "" "available in the sources" msgstr "" "APT::Default-Release için '%s' değeri geçersizdir, çünkü kaynaklarda böyle " -"bir sürüm yok." +"bir sürüm yok" #: apt-pkg/policy.cc:422 #, c-format @@ -3159,7 +3155,7 @@ msgstr "'%s' türü bilinmiyor (girdi: %u, kaynak listesi: %s)" #: apt-pkg/srcrecords.cc:52 msgid "You must put some 'source' URIs in your sources.list" -msgstr "'sources.list' dosyası içine bazı 'source' adresleri koymalısınız." +msgstr "'sources.list' dosyası içine bazı 'source' adresleri koymalısınız" #: apt-pkg/tagfile.cc:140 #, c-format @@ -3212,7 +3208,7 @@ msgstr "Komut satırı seçeneği %s mantıksal değer değil" #: apt-pkg/contrib/cmndline.cc:209 apt-pkg/contrib/cmndline.cc:230 #, c-format msgid "Option %s requires an argument." -msgstr "%s seçeneği bir bağımsız değişkene gerek duyar." +msgstr "%s seçeneği bir argüman kullanımını gerektirir." #: apt-pkg/contrib/cmndline.cc:243 apt-pkg/contrib/cmndline.cc:249 #, c-format @@ -3224,7 +3220,8 @@ msgstr "" #: apt-pkg/contrib/cmndline.cc:278 #, c-format msgid "Option %s requires an integer argument, not '%s'" -msgstr "%s seçeneği bir tam sayı bağımsız değişkene gerek duyar, '%s' değil" +msgstr "" +"%s seçeneği bir tam sayı argümanının kullanımını gerektirir, '%s' değil" #: apt-pkg/contrib/cmndline.cc:309 #, c-format @@ -3254,49 +3251,49 @@ msgstr "Yapılandırma dosyası (%s) açılıyor" #: apt-pkg/contrib/configuration.cc:801 #, c-format msgid "Syntax error %s:%u: Block starts with no name." -msgstr "Sözdizim hatası %s:%u: Blok ad olmadan başlıyor." +msgstr "Sözdizimi hatası %s:%u: Blok ad olmadan başlıyor." #: apt-pkg/contrib/configuration.cc:820 #, c-format msgid "Syntax error %s:%u: Malformed tag" -msgstr "Sözdizim hatası %s:%u: Kötü biçimlendirilmiş etiket" +msgstr "Sözdizimi hatası %s:%u: Kötü biçimlendirilmiş etiket" #: apt-pkg/contrib/configuration.cc:837 #, c-format msgid "Syntax error %s:%u: Extra junk after value" -msgstr "Sözdizim hatası %s:%u: Değerden sonra ilave gereksiz" +msgstr "Sözdizimi hatası %s:%u: Değerden sonra ilave gereksiz" #: apt-pkg/contrib/configuration.cc:877 #, c-format msgid "Syntax error %s:%u: Directives can only be done at the top level" -msgstr "Sözdizim hatası %s:%u: Yönergeler yalnızca en üst düzeyde bitebilir" +msgstr "Sözdizimi hatası %s:%u: Yönergeler sadece en üst düzeyde bitebilir" #: apt-pkg/contrib/configuration.cc:884 #, c-format msgid "Syntax error %s:%u: Too many nested includes" -msgstr "Sözdizim hatası %s:%u: Çok fazla yuvalanmış 'include'" +msgstr "Sözdizimi hatası %s:%u: Çok fazla yuvalanmış 'include'" #: apt-pkg/contrib/configuration.cc:888 apt-pkg/contrib/configuration.cc:893 #, c-format msgid "Syntax error %s:%u: Included from here" -msgstr "Sözdizim hatası %s:%u: Buradan 'include' edilmiş" +msgstr "Sözdizimi hatası %s:%u: Buradan 'include' edilmiş" #: apt-pkg/contrib/configuration.cc:897 #, c-format msgid "Syntax error %s:%u: Unsupported directive '%s'" -msgstr "Sözdizim hatası %s:%u: Desteklenmeyen yönerge '%s'" +msgstr "Sözdizimi hatası %s:%u: Desteklenmeyen yönerge '%s'" #: apt-pkg/contrib/configuration.cc:900 #, c-format msgid "Syntax error %s:%u: clear directive requires an option tree as argument" msgstr "" -"Sözdizim hatası %s:%u: clear yönergesi argüman olarak bir seçenek ağacı " -"gerektirir." +"Sözdizimi hatası %s:%u: clear yönergesi bir seçenek ağacı argümanını " +"gerektirir" #: apt-pkg/contrib/configuration.cc:950 #, c-format msgid "Syntax error %s:%u: Extra junk at end of file" -msgstr "Sözdizim hatası %s:%u: Dosya sonunda ilave gereksiz" +msgstr "Sözdizimi hatası %s:%u: Dosya sonunda ilave gereksiz" #: apt-pkg/contrib/fileutl.cc:190 #, c-format @@ -3327,13 +3324,13 @@ msgstr "'%s' dizin olmadığı için dosya listeli oluşturulamıyor" #, c-format msgid "Ignoring '%s' in directory '%s' as it is not a regular file" msgstr "" -"'%2$s' dizinindeki '%1$s' normal bir dosya olmadığı için görmezden geliniyor." +"'%2$s' dizinindeki '%1$s' normal bir dosya olmadığı için görmezden geliniyor" #: apt-pkg/contrib/fileutl.cc:412 #, c-format msgid "Ignoring file '%s' in directory '%s' as it has no filename extension" msgstr "" -"'%2$s' dizinindeki '%1$s' dosyası uzantısı olmadığı için görmezden geliniyor." +"'%2$s' dizinindeki '%1$s' dosyası uzantısı olmadığı için görmezden geliniyor" #: apt-pkg/contrib/fileutl.cc:421 #, c-format @@ -3341,7 +3338,7 @@ msgid "" "Ignoring file '%s' in directory '%s' as it has an invalid filename extension" msgstr "" "'%2$s' dizinindeki '%1$s' dosyası geçersiz bir dosya uzantısı olduğu için " -"yok sayılıyor." +"yok sayılıyor" #: apt-pkg/contrib/fileutl.cc:824 #, c-format @@ -3351,7 +3348,7 @@ msgstr "%s altsüreci bir bölümleme hatası aldı (segmentation fault)." #: apt-pkg/contrib/fileutl.cc:826 #, c-format msgid "Sub-process %s received signal %u." -msgstr "%s altsüreci %u sinyali aldı" +msgstr "%s altsüreci %u sinyali aldı." #: apt-pkg/contrib/fileutl.cc:830 apt-pkg/contrib/gpgv.cc:239 #, c-format @@ -3389,7 +3386,7 @@ msgstr "Sıkıştırma programı çalıştırılamadı " #: apt-pkg/contrib/fileutl.cc:1514 #, c-format msgid "read, still have %llu to read but none left" -msgstr "read, %llu bayt okunması gerekli fakat hiç kalmamış" +msgstr "read, %llu bayt okunması gerekli ama hiç kalmamış" #: apt-pkg/contrib/fileutl.cc:1627 apt-pkg/contrib/fileutl.cc:1649 #, c-format diff --git a/test/integration/framework b/test/integration/framework index 29e5fafe6..0aa648fb6 100644 --- a/test/integration/framework +++ b/test/integration/framework @@ -47,6 +47,9 @@ msgskip() { printf "${CWARNING}SKIP${CNORMAL}\n" >&2; } msgfail() { if [ $# -gt 0 ]; then printf "${CFAIL}FAIL: $*${CNORMAL}\n" >&2; else printf "${CFAIL}FAIL${CNORMAL}\n" >&2; fi + if [ -n "$APT_DEBUG_TESTS" ]; then + bash + fi EXIT_CODE=$((EXIT_CODE+1)); } diff --git a/test/integration/test-apt-key b/test/integration/test-apt-key index d5adec5bd..e6ac530a6 100755 --- a/test/integration/test-apt-key +++ b/test/integration/test-apt-key @@ -41,7 +41,14 @@ gpg: unchanged: 1' aptkey --fakeroot update testaptkeys 'pub 2048R/DBAC8DAE 2010-08-18' + testsuccess test ! -e rootdir/etc/apt/trusted.gpg testsuccess aptkey --fakeroot add ./keys/rexexpired.pub + msgtest 'Check if trusted.gpg is created with permissions set to' '0644' + if [ "$(stat -c '%a' rootdir/etc/apt/trusted.gpg )" = '644' ]; then + msgpass + else + msgfail + fi testaptkeys 'pub 2048R/27CE74F9 2013-07-12 [expired: 2013-07-13] pub 2048R/DBAC8DAE 2010-08-18' diff --git a/test/integration/test-compressed-indexes b/test/integration/test-compressed-indexes index 805ed5964..1beb5d831 100755 --- a/test/integration/test-compressed-indexes +++ b/test/integration/test-compressed-indexes @@ -39,10 +39,10 @@ testrun() { test -e rootdir/var/lib/apt/lists/*_Translation-en.${COMPRESS} || F=1 # there is no point in trying pdiff if we have compressed indexes # as we can't patch compressed files (well, we can, but what is the point?) - ! test -e rootdir/var/lib/apt/lists/*.IndexDiff || F=1 + ! test -e rootdir/var/lib/apt/lists/*diff_Index || F=1 else # clear the faked pdiff indexes so the glob below works - rm -f rootdir/var/lib/apt/lists/*.IndexDiff + rm -f rootdir/var/lib/apt/lists/*diff_Index test -e rootdir/var/lib/apt/lists/*_Packages || F=1 test -e rootdir/var/lib/apt/lists/*_Sources || F=1 test -e rootdir/var/lib/apt/lists/*_Translation-en || F=1 diff --git a/test/integration/test-pdiff-usage b/test/integration/test-pdiff-usage index e86963f28..5bad90214 100755 --- a/test/integration/test-pdiff-usage +++ b/test/integration/test-pdiff-usage @@ -76,8 +76,15 @@ SHA1-History: 9f4148e06d7faa37062994ff10d0c842d7017513 33053002 2010-08-18-2013.28 $(sha1sum $PKGFILE | cut -d' ' -f 1) $(stat -c%s $PKGFILE) $(basename $PATCHFILE) SHA1-Patches: - 7651fc0ac57cd83d41c63195a9342e2db5650257 19722 2010-08-18-0814.28 - $(sha1sum $PATCHFILE | cut -d' ' -f 1) $(stat -c%s $PATCHFILE) $(basename $PATCHFILE)" > $PATCHINDEX + 7651fc0ac57cd83d41c63195a9342e2db5650257 19722 2010-08-18-2013.28 + $(sha1sum $PATCHFILE | cut -d' ' -f 1) $(stat -c%s $PATCHFILE) $(basename $PATCHFILE) +SHA256-Current: $(sha256sum ${PKGFILE}-new | cut -d' ' -f 1) $(stat -c%s ${PKGFILE}-new) +SHA256-History: + 01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b 33053002 2010-08-18-2013.28 + $(sha256sum $PKGFILE | cut -d' ' -f 1) $(stat -c%s $PKGFILE) $(basename $PATCHFILE) +SHA256-Patches: + e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 19722 2010-08-18-2013.28 + $(sha256sum $PATCHFILE | cut -d' ' -f 1) $(stat -c%s $PATCHFILE) $(basename $PATCHFILE)" > $PATCHINDEX generatereleasefiles '+1hour' signreleasefiles find aptarchive -name 'Packages*' -type f -delete @@ -87,7 +94,7 @@ SHA1-Patches: " aptcache show apt newstuff msgmsg "Testcase: index is already up-to-date: $*" - find rootdir/var/lib/apt/lists -name '*.IndexDiff' -type f -delete + find rootdir/var/lib/apt/lists -name '*diff_Index' -type f -delete testsuccess aptget update "$@" testequal "$(cat ${PKGFILE}-new) " aptcache show apt newstuff @@ -119,9 +126,18 @@ SHA1-History: $(sha1sum ${PKGFILE} | cut -d' ' -f 1) $(stat -c%s ${PKGFILE}) $(basename ${PATCHFILE}) $(sha1sum ${PKGFILE}-new | cut -d' ' -f 1) $(stat -c%s ${PKGFILE}-new) $(basename ${PATCHFILE2}) SHA1-Patches: - 7651fc0ac57cd83d41c63195a9342e2db5650257 19722 2010-08-18-0814.28 + 7651fc0ac57cd83d41c63195a9342e2db5650257 19722 2010-08-18-2013.28 $(sha1sum $PATCHFILE | cut -d' ' -f 1) $(stat -c%s $PATCHFILE) $(basename $PATCHFILE) - $(sha1sum ${PATCHFILE2} | cut -d' ' -f 1) $(stat -c%s ${PATCHFILE2}) $(basename ${PATCHFILE2})" > $PATCHINDEX + $(sha1sum ${PATCHFILE2} | cut -d' ' -f 1) $(stat -c%s ${PATCHFILE2}) $(basename ${PATCHFILE2}) +SHA256-Current: $(sha256sum aptarchive/Packages | cut -d' ' -f 1) $(stat -c%s aptarchive/Packages) +SHA256-History: + 01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b 33053002 2010-08-18-2013.28 + $(sha256sum $PKGFILE | cut -d' ' -f 1) $(stat -c%s $PKGFILE) $(basename $PATCHFILE) + $(sha256sum ${PKGFILE}-new | cut -d' ' -f 1) $(stat -c%s ${PKGFILE}-new) $(basename ${PATCHFILE2}) +SHA256-Patches: + e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 19722 2010-08-18-2013.28 + $(sha256sum $PATCHFILE | cut -d' ' -f 1) $(stat -c%s $PATCHFILE) $(basename $PATCHFILE) + $(sha256sum ${PATCHFILE2} | cut -d' ' -f 1) $(stat -c%s ${PATCHFILE2}) $(basename ${PATCHFILE2})" > $PATCHINDEX generatereleasefiles '+2hour' signreleasefiles cp -a aptarchive/Packages Packages-future @@ -147,8 +163,15 @@ SHA1-History: 9f4148e06d7faa37062994ff10d0c842d7017513 33053002 2010-08-18-2013.28 $(sha1sum $PKGFILE | cut -d' ' -f 1) $(stat -c%s $PKGFILE) $(basename $PATCHFILE) SHA1-Patches: - 7651fc0ac57cd83d41c63195a9342e2db5650257 19722 2010-08-18-0814.28 - $(sha1sum $PATCHFILE | cut -d' ' -f 1) $(stat -c%s $PATCHFILE) $(basename $PATCHFILE)" > $PATCHINDEX + 7651fc0ac57cd83d41c63195a9342e2db5650257 19722 2010-08-18-2013.28 + $(sha1sum $PATCHFILE | cut -d' ' -f 1) $(stat -c%s $PATCHFILE) $(basename $PATCHFILE) +SHA256-Current: $(sha256sum ${PKGFILE}-new | cut -d' ' -f 1) $(stat -c%s ${PKGFILE}-new) +SHA256-History: + 01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b 33053002 2010-08-18-2013.28 + $(sha256sum $PKGFILE | cut -d' ' -f 1) $(stat -c%s $PKGFILE) $(basename $PATCHFILE) +SHA256-Patches: + e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 19722 2010-08-18-2013.28 + $(sha256sum $PATCHFILE | cut -d' ' -f 1) $(stat -c%s $PATCHFILE) $(basename $PATCHFILE)" > $PATCHINDEX echo 'I am Mallory and I change files' >> $PATCHFILE cat $PATCHFILE | gzip > ${PATCHFILE}.gz generatereleasefiles '+1hour' @@ -166,3 +189,16 @@ testrun -o Acquire::PDiffs::Merge=0 -o APT::Get::List-Cleanup=1 testrun -o Acquire::PDiffs::Merge=1 -o APT::Get::List-Cleanup=1 testrun -o Acquire::PDiffs::Merge=0 -o APT::Get::List-Cleanup=0 testrun -o Acquire::PDiffs::Merge=1 -o APT::Get::List-Cleanup=0 + +sha256sum() { + echo '01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b -' +} +testrun -o Acquire::PDiffs::Merge=0 -o Acquire::ForceHash=SHA1 +testrun -o Acquire::PDiffs::Merge=1 -o Acquire::ForceHash=SHA1 + +unset -f sha256sum +sha1sum() { + echo 'adc83b19e793491b1c6ea0fd8b46cd9f32e592fc -' +} +testrun -o Acquire::PDiffs::Merge=0 -o Acquire::ForceHash=SHA256 +testrun -o Acquire::PDiffs::Merge=1 -o Acquire::ForceHash=SHA256 |