Age | Commit message (Collapse) | Author |
|
Beside being a bit cleaner it hopefully also resolves oddball problems
I have with high levels of parallel jobs.
Git-Dch: Ignore
Reported-By: iwyu (include-what-you-use)
|
|
server.cc: In member function ‘bool ServerState::HeaderLine(std::string)’:
server.cc:198:72: warning: format ‘%llu’ expects argument of type ‘long long unsigned int*’, but argument 3 has type ‘long long int*’ [-Wformat=]
else if (sscanf(Val.c_str(),"bytes %llu-%*u/%llu",&StartPos,&Size) != 2)
Git-Dch: Ignore
Reported-By: gcc -Wpedantic
|
|
Git-Dch: Ignore
Reported-By: gcc -Wpedantic
|
|
|
|
Reported-By: cppcheck
Git-Dch: Ignore
|
|
The most "visible" change is from utime to utimensat/futimens
as the first one isn't part of POSIX anymore.
Reported-By: cppcheck
Git-Dch: Ignore
|
|
|
|
Servers might respond with a complete file either because they don't
support Ranges at all or the If-Range condition isn't statisfied, so we
have to parse the headers curl gets ourself to seek or truncate the file
we have so far.
This also finially adds the testcase testing a bunch of partial
situations for both, http and https - which is now all green.
Closes: 617643, 667699
LP: 1157943
|
|
No effective behavior change, just shuffling big junks of code between
methods and classes to split them into those strongly related to our
client implementation and those implementing HTTP.
The idea is to get HTTPS to a point in which most of the implementation
can be shared even though the client implementations itself is
completely different. This isn't anywhere near yet though, but it should
beenough to reuse at least a few lines from http in https now.
Git-Dch: Ignore
|
|
Our http client requests the "filesize - 1" for the small edgecase of
handling a file which was completely downloaded, but not yet moved to
the correct place as we get 416 errors in that case, but as we can
handle 416 returns now we just special-case the situation of requesting
the exact filesize and handle it as a 200 without content instead.
|
|
If we get a 416 from the server it means the Range we asked for is above
the real filesize of the file on the server. Mostly this happens if the
server isn't supporting If-Range, but regardless of how we end up with
the partial data, the data is invalid so we discard it and retry with a
fresh plate and hope for the best.
Old behavior was to consider 416 an error and retry with a different
compression until we ran out of compression and requested the
uncompressed file (which doesn't exist on most mirrors) with an accept
line which server answered with "406 Not Acceptable".
Closes: 710924
|
|
|
|
Commit 2b9c9b7f28b18f6ae3e422020e8934872b06c9f3 not only removes
keep-alive, but also changes the request URI send to proxies which are
required to be absolute URIs rather than the usual absolute paths.
Closes: 717891
|
|
|
|
|
|
|
|
(LP: #1003633)
|
|
- quote spaces in filenames to ensure as the http method is also
(potentially) used for non deb,dsc content that may contain
spaces, thanks to Daniel Hartwig and Thomas Bushnell
(LP: #1086997)
|
|
|
|
- after many years of pointless discussions disable http/1.1 pipelining
by default as many webservers and proxies seem to be unable to conform
to specification must's (rfc2616 section 8.1.2.2) (LP: #996151)
|
|
- handle redirections in the worker with the right method instead of
in the method the redirection occured in (Closes: #668111)
* methods/http.cc:
- forbid redirects to change protocol
|
|
with g++-4.1 it complains about this so lets be extra clear
|
|
to the more standard PACKAGE_VERSION and make it work in every file
|
|
|
|
|
|
commit lifted the Line-length limit
|
|
|
|
- if a file without an extension is requested send an 'Accept: text/*'
header to avoid that the server chooses unsupported compressed files
in a content-negotation attempt (Closes: #657560)
|
|
on the FileFd instead
|
|
|
|
|
|
size are pretty unlikely for now, but we need it for deb
packages which could become bigger than 4GB now (LP: #815895)
|
|
|
|
done on the mirco-optimazation level, so lets fix them:
(performance) Possible inefficient checking for emptiness.
(performance) Prefer prefix ++/-- operators for non-primitive types.
|
|
quote an already quoted string in the request later (Closes: #602412)
|
|
servers just send an absolute path so still deal with it properly
|
|
- add config option to ignore a closed stdin to be able to easily
use the method as a simple standalone downloader
|
|
- do not hang if Acquire::http::ProxyAutoDetect can not be
executed or returns no data (LP: #654393)
|
|
- some http servers violate HTTP1.1 by not issuing a Reason-Phrase
(or at least a space after the code) especially for 200, but lets
be nice and ignore it as we don't need the reason in general
|
|
|
|
- on gpg verification failure warn and restore the last known
good state
- on failure display the IP of the server (useful for servers
that use round robin DNS)
- support Original-Maintainer in RewritePackageOrder
- enable cdrom autodetection via libudev by default
- show messsage about Vcs in use when apt-get source is run for
packages maintained in a Vcs
- better support transitional packages with mark auto-installed.
when the transitional package is in "oldlibs" the new package
is not marked auto installed (same is true for section
metapackages)
- provide new "deb mirror://archive.foo/mirrors.list sid main"
method expects a list of mirrors (generated on the server e.g.
via geoip) and will use that, including cycle on failure
- write apport crash file on package failure (disabled by default
on debian until apport is available)
- support mirror failure reporting (disabled by default on debian)
|
|
|
|
(because we use a enum now)
|
|
- code cleanup, add (some) doxygen strings
|
|
|
|
can be used to call a external helper to figure out the
proxy configuration and return it to apt via stdout
|
|
|
|
- add cache-control headers even if no cache is given to allow
adding options for intercepting proxies
|
|
* merged from the lp:~mvo/apt/history branch
* Fix apt-ftparchive(1) wrt description of the "-o" option.
Thanks to Dann Frazier for the patch. Closes: #273100
* po/LINGUAS. Re-disable Hebrew. Closes: #534992
* po/LINGUAS. Enable Asturian and Lithuanian
* Fix typo in apt-cache.8.xml: nessasarily
* Fix "with with" in apt-get.8.xml
* Fix some of the typos mentioned by the german team
Closes: #479997
* Polish translation update by Wiktor Wandachowicz
Closes: #548571
* German translation update by Holger Wansing
Closes: #551534
* Italian translation update by Milo Casagrande
Closes: #555797
* Simplified Chinese translation update by Aron Xu
Closes: #558737
* Slovak translation update by Ivan Masár
Closes: #559277
* apt-pkg/packagemanager.cc:
- add output about pre-depends configuring when debug::pkgPackageManager
is used
* methods/https.cc:
- fix incorrect use of CURLOPT_TIMEOUT, closes: #497983, LP: #354972
thanks to Brian Thomason for the patch
* merge lp:~mvo/apt/netrc branch, this adds support for a
/etc/apt/auth.conf that can be used to store username/passwords
in a "netrc" style file (with the extension that it supports "/"
in a machine definition). Based on the maemo git branch (Closes: #518473)
(thanks also to Jussi Hakala and Julian Andres Klode)
* apt-pkg/deb/dpkgpm.cc:
- add "purge" to list of known actions
* apt-pkg/init.h:
- add compatibility with old ABI name until the next ABI break
* merge segfault fix from Mario Sanchez Prada, many thanks
(closes: #561109)
* apt-pkg/depcache.cc, apt-pkg/indexcopy.cc:
- typo fix (LP: #462328)
* cmdline/apt-key:
- Emit a warning if removed keys keyring is missing and skip associated
checks (LP: #218971)
* apt-pkg/packagemanager.cc:
- better debug output for ImmediateAdd with depth and why
- improve the message shown for failing immediate configuration
* doc/guide.it.sgml: moved to doc/it/guide.it.sgml
* doc/po4a.conf: activate translation of guide.sgml and offline.sgml
* doc/apt.conf.5.xml:
- provide a few more details about APT::Immediate-Configure
- briefly document the behaviour of the new https options
* doc/sources.list.5.xml:
- add note about additional apt-transport-methods
* doc/apt-mark.8.xml:
- correct showauto synopsis, thanks Andrew Schulman (Closes: #551440)
* cmdline/apt-get.cc:
- source should display his final pkg pick (Closes: #249383, #550952)
- source doesn't need the complete version for match (Closes: #245250)
- source ignores versions/releases if not available (Closes: #377424)
- only warn if (free) space overflows (Closes: #522238)
- add --debian-only as alias for --diff-only
* methods/connect.cc:
- display also strerror of "wicked" getaddrinfo errors
- add AI_ADDRCONFIG to ai_flags as suggested by Aurelien Jarno
in response to Bernhard R. Link, thanks! (Closes: #505020)
* buildlib/configure.mak, buildlib/config.{sub,guess}:
- remove (outdated) config.{sub,guess} and use the ones provided
by the new added build-dependency autotools-dev instead
* configure.in, buildlib/{xml,yodl,sgml}_manpage.mak:
- remove the now obsolete manpage buildsystems
* doc/{pl,pt_BR,es,it}/*.{sgml,xml}:
- convert all remaining translation to the po4a system
* debian/control:
- drop build-dependency on docbook-utils and xmlto
- add build-dependency on autotools-dev
- bump policy to 3.8.3 as we have no outdated manpages anymore
* debian/NEWS:
- fix a typo in 0.7.24: Allready -> Already (Closes: #557674)
* ftparchive/writer.{cc,h}:
- add APT::FTPArchive::LongDescription to be able to disable them
* apt-pkg/deb/debsrcrecords.cc:
- use "diff" filetype for .debian.tar.* files (Closes: #554898)
* methods/rred.cc:
- rewrite to be able to handle even big patch files
- adopt optional mmap+iovec patch from Morten Hustveit
(Closes: #463354) which should speed up a bit. Thanks!
* methods/http{,s}.cc
- add config setting for User-Agent to the Acquire group,
thanks Timothy J. Miller! (Closes: #355782)
- add https options which default to http ones (Closes: #557085)
* debian/apt.cron.daily:
- check cache size even if we do nothing else otherwise, thanks
Francesco Poli for patch(s) and patience! (Closes: #459344)
* ftparchive/*:
- fix a few typos in strings, comments and manpage,
thanks Karl Goetz! (Closes: #558757)
* cmdline/apt-mark:
- print an error if a new state file can't be created
(Closes: #521289) and
- exit nicely if python-apt is not installed (Closes: #521284)
* doc/de: German translation of manpages (Closes: #552606)
* doc/ various manpages:
- correct various errors, typos and oddities (Closes: #552535)
* doc/apt-secure.8.xml:
- replace literal with emphasis tags in Archive configuration
* doc/apt-ftparchive.1.xml:
- remove informalexample tag which hides the programlisting
* doc/apt-get.8.xml:
- change equivalent "for" to "to the" (purge command)
- clarify --fix-broken sentence about specifying packages
* apt-pkg/contib/strutl.h
- Avoid extra inner copy in APT_MKSTRCMP and APT_MKSTRCMP2.
* build infrastructure:
- Bumped libapt version, excluded eglibc from SONAME. (Closes: #448249)
* doc/apt.conf.5.xml:
- Deprecate unquoted values, string concatenation and explain what should
not be written inside a value (quotes,backslash).
- Restrict option names to alphanumerical characters and "/-:._+".
- Deprecate #include, we have apt.conf.d nowadays which should be
sufficient.
* ftparchive/apt-ftparchive.cc:
- Call setlocale() so translations are actually used.
* debian/apt.conf.autoremove:
- Add kfreebsd-image-* to the list (Closes: #558803)
|
|
thanks Timothy J. Miller! (Closes: #355782)
|