Import Debian version 2.2.0+parrot1

apt (2.2.0+parrot1) rolling; urgency=medium
.
  * Import new Debian release.
  * Patch methods/basehttp.c to allow https-to-http redirects.
.
apt (2.2.0) unstable; urgency=medium
.
  * The "Happy soft freeze" release
  * Do not make DefaultRootSetFunc2 public symbol
  * kernels: Avoid std::regex for escaping '.' and '+'
  * symbols: Remove spurios package line, add kernel autoremoval helper
parent 10c28f8a
Pipeline #2329 failed with stages
in 0 seconds
......@@ -200,7 +200,7 @@ endif()
# Configure some variables like package, version and architecture.
set(PACKAGE ${PROJECT_NAME})
set(PACKAGE_MAIL "APT Development Team <deity@lists.debian.org>")
set(PACKAGE_VERSION "2.1.20")
set(PACKAGE_VERSION "2.2.0")
string(REGEX MATCH "^[0-9.]+" PROJECT_VERSION ${PACKAGE_VERSION})
if (NOT DEFINED DPKG_DATADIR)
......
......@@ -34,7 +34,6 @@
#include <cstdlib>
#include <iostream>
#include <map>
#include <regex>
#include <set>
#include <sstream>
#include <string>
......@@ -1586,22 +1585,27 @@ std::string GetProtectedKernelsRegex(pkgCache *cache, bool ReturnRemove)
std::clog << "Keeping previous kernel " << previous->first << std::endl;
keep.insert(previous->first);
}
std::regex special("([\\.\\+])");
// Escape special characters '.' and '+' in version strings so we can build a regular expression
auto escapeSpecial = [](std::string input) -> std::string {
for (size_t pos = 0; (pos = input.find_first_of(".+", pos)) != input.npos; pos += 2) {
input.insert(pos, 1, '\\');
}
return input;
};
std::ostringstream ss;
for (auto &pattern : _config->FindVector("APT::VersionedKernelPackages"))
{
// Legacy compatibility: Always protected the booted uname and last installed uname
if (not lastInstalledUname.empty())
ss << "|^" << pattern << "-" << std::regex_replace(lastInstalledUname, special, "\\$1") << "$";
ss << "|^" << pattern << "-" << escapeSpecial(lastInstalledUname) << "$";
if (*uts.release)
ss << "|^" << pattern << "-" << std::regex_replace(uts.release, special, "\\$1") << "$";
ss << "|^" << pattern << "-" << escapeSpecial(uts.release) << "$";
for (auto const &kernel : version2unames)
{
if (ReturnRemove ? keep.find(kernel.first) == keep.end() : keep.find(kernel.first) != keep.end())
{
for (auto const &uname : kernel.second)
ss << "|^" << pattern << "-" << std::regex_replace(uname, special, "\\$1") << "$";
ss << "|^" << pattern << "-" << escapeSpecial(uname) << "$";
}
}
}
......
......@@ -49,7 +49,7 @@ using std::string;
/** \brief Returns \b true for packages matching a regular
* expression in APT::NeverAutoRemove.
*/
class APT_PUBLIC DefaultRootSetFunc2 : public pkgDepCache::DefaultRootSetFunc
class DefaultRootSetFunc2 : public pkgDepCache::DefaultRootSetFunc
{
std::unique_ptr<APT::CacheFilter::Matcher> Kernels;
......
apt (2.2.0+parrot1) rolling; urgency=medium
* Import new Debian release.
* Patch methods/basehttp.c to allow https-to-http redirects.
-- Lorenzo "Palinuro" Faletra <palinuro@parrotsec.org> Fri, 12 Mar 2021 18:57:03 +0100
apt (2.2.0) unstable; urgency=medium
* The "Happy soft freeze" release
* Do not make DefaultRootSetFunc2 public symbol
* kernels: Avoid std::regex for escaping '.' and '+'
* symbols: Remove spurios package line, add kernel autoremoval helper
-- Julian Andres Klode <jak@debian.org> Thu, 18 Feb 2021 20:35:09 +0100
apt (2.1.20+parrot1) rolling-testing; urgency=medium
* Import new Debian release.
......
......@@ -1319,7 +1319,7 @@ libapt-pkg.so.6.0 libapt-pkg6.0 #MINVER#
(c++)"pkgAcqMethod::FetchItem::Proxy[abi:cxx11]()@APTPKG_6.0" 1.6~alpha1~
# gcc-8 artifacts
(c++|optional=std)"pkgAcqMethod::SendMessage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >&&)@APTPKG_6.0" 1.7.0~alpha3~
* Build-Depends-Package: libapt-pkg-dev
(c++)"APT::KernelAutoRemoveHelper::GetProtectedKernelsFilter(pkgCache*, bool)@APTPKG_6.0" 2.1.16
(c++)"ExtractTar::Done()@APTPKG_6.0" 1.1~exp12
(c++)"ExtractTar::Go(pkgDirStream&)@APTPKG_6.0" 0.8.0
(c++)"ExtractTar::StartGzip()@APTPKG_6.0" 0.8.0
......
......@@ -274,7 +274,7 @@
">
<!-- this will be updated by 'prepare-release' -->
<!ENTITY apt-product-version "2.1.20">
<!ENTITY apt-product-version "2.2.0">
<!-- (Code)names for various things used all over the place -->
<!ENTITY debian-oldstable-codename "buster">
......
......@@ -5,9 +5,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: apt-doc 2.1.20\n"
"Project-Id-Version: apt-doc 2.2.0\n"
"Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n"
"POT-Creation-Date: 2021-02-10 00:03+0100\n"
"POT-Creation-Date: 2021-02-18 20:35+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
......
......@@ -5,9 +5,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: apt 2.1.20\n"
"Project-Id-Version: apt 2.2.0\n"
"Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n"
"POT-Creation-Date: 2021-02-10 00:03+0100\n"
"POT-Creation-Date: 2021-02-18 20:35+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment