apt-cacher (1.7.30) unstable; urgency=medium * d/control: - remove obsolete lsb-base Depends. - promote libio-compress-lzma-perl to Depends (Closes: #1039907). * Decode embedded underscores in filenames when cleaning and validating cache. * When cleaning and validating cached files, use SHA256. -- Mark Hindley Sun, 02 Jul 2023 17:44:20 +0100 apt-cacher (1.7.29) unstable; urgency=medium * Derive supported_archs default from Dpkg::Arch, based on a patch from Antonio Terceiro with thanks (Closes: #1028555). * Update config file documentation for supported_archs. * d/control: bump Standards Version (no changes). * Fix email address in previous changelog entry. -- Mark Hindley Mon, 16 Jan 2023 19:52:02 +0000 apt-cacher (1.7.28.1) unstable; urgency=medium * Update ubuntu_release_names documentation to reflect dynamic generation. * Regenerate default config file. * Correct email address in previous changelog entry. -- Mark Hindley Thu, 01 Dec 2022 16:42:02 +0000 apt-cacher (1.7.28) unstable; urgency=medium * Add encoded underscores to *_files_regexp. (Closes: #1025131) -- Mark Hindley Thu, 01 Dec 2022 14:24:58 +0000 apt-cacher (1.7.27) unstable; urgency=medium * d/control: bump Standards Version (no changes). * Don't exit in die_handler() if called from eval. (See: #1014730) * Encode embedded underscores in URLs when building filenames. -- Mark Hindley Thu, 21 Jul 2022 20:37:48 +0100 apt-cacher (1.7.26) unstable; urgency=medium * Get default Ubuntu release names by parsing /usr/share/distro-info/ubuntu.csv. * Run wrap-and-sort -t. -- Mark Hindley Tue, 26 Apr 2022 17:06:32 +0100 apt-cacher (1.7.25) unstable; urgency=medium * Change to use IPC::ShareLite. -- Mark Hindley Sun, 16 Jan 2022 16:10:47 +0000 apt-cacher (1.7.24) unstable; urgency=medium [ Debian Janitor ] * Remove constraints unnecessary since buster [ Mark Hindley ] * Add Ubuntu 22.04 codename jammy. * Remove d/preinst: only contained time-served migration code for versions prior to oldstable. -- Mark Hindley Tue, 21 Dec 2021 17:37:19 +0000 apt-cacher (1.7.23) unstable; urgency=medium * d/rules: use DEB_VERSION from dpkg/pkg-info.mk rather than parsing changelog to get version. * Add Ubuntu 21.10 codename impish. * d/control: - Update to Standards-Version 4.6.0 (no changes). - add Rules-Requires-Root: no -- Mark Hindley Mon, 23 Aug 2021 17:27:20 +0100 apt-cacher (1.7.22) unstable; urgency=medium * Update pdiff_files_regexp to also match new naming scheme (Closes: #980077). * Add Ubuntu codename hirsute. * Update apt-cacher.conf with new defaults. * Merge Debian janitor lintian fixes. * d/control: update to Standards version 4.5.1 (no changes). -- Mark Hindley Thu, 14 Jan 2021 16:42:10 +0000 apt-cacher (1.7.21+nmu1) unstable; urgency=medium * Non-maintainer upload. * source only upload to enable migration (Closes: #973354) -- Paul Gevers Thu, 29 Oct 2020 11:54:47 +0100 apt-cacher (1.7.21) unstable; urgency=medium * Add URL of public git repository. * Add Ubuntu codenames eoan, focal and groovy. * Add autopkgtest. * Change to debhelper compat 13. * d/rules: simplify and use dh_auto_* targets. * d/changelog: remove trailing whitespace. * Upgrade to Standards Version 4.5.0 (no changes). -- Mark Hindley Thu, 13 Aug 2020 12:41:14 +0100 apt-cacher (1.7.20.1) unstable; urgency=medium * Avoid unnecessary dpkg prompting when upgrading from lenny/squeeze (closes: #905178). -- Mark Hindley Sun, 24 Mar 2019 17:11:53 +0000 apt-cacher (1.7.20) unstable; urgency=medium * Add recent Ubuntu release names to commented config file example. * Increase default request_timeout to 30 seconds. * Update control description to mention Devuan. * Update to Standards version 4.3.0 (no changes). * Work around broken APT versions (< 1.1) which don't understand 416 responses. * Add Ubuntu 19.04 release name, disco. * Update to debhelper compat 10. -- Mark Hindley Fri, 04 Jan 2019 10:45:52 +0000 apt-cacher (1.7.19) unstable; urgency=medium * Update to Standards Version 4.2.1 (no changes). * When upgrading remove unmodified ucf controlled /etc/default/apt-cacher to prevent dpkg from prompting unnecessarily. (closes: #905178). -- Mark Hindley Fri, 31 Aug 2018 10:26:03 +0100 apt-cacher (1.7.18) unstable; urgency=medium * Improve handling of early errors: - print them to STDERR only if it is attached to a terminal. - Depend on libio-interactive-perl. * Successful exit when printing version. * Bump Standards Version to 4.1.4 (no changes). * Add Ubuntu 18.10 codename cosmic. -- Mark Hindley Wed, 13 Jun 2018 16:50:44 +0100 apt-cacher (1.7.17) unstable; urgency=medium * Work around URI::path_segments() uninitialized value error on recent versions (1.64 at least). * Fix example configuration (closes: #888962). * Upgrade to Standards version 4.1.3 which now prohibits AUTOSTART=1|0 /etc/default/apt-cacher. To comply: - initscript determines inetd mode by looking for entry in /etc/inetd.conf - no longer manage /etc/default/apt-cacher with ucf -- Mark Hindley Fri, 23 Mar 2018 16:14:00 +0000 apt-cacher (1.7.16) unstable; urgency=medium * Update to Standards version 4.1.1 (no changes). * Ensure relevant base index file is present for diff_by-hash_* files (closes: #878169). * When fetching missing index files, exit with a manual resolution message if no upstream version can be found. * Add Ubuntu 17.10 release name 'artful'. * Add Ubuntu 18.04 release name 'bionic'. * Correctly determine original URL from filename for Translation-??_?? files. * apt-cacher-cleanup/pl: remove unused $use_url parameter from get(). -- Mark Hindley Wed, 08 Nov 2017 09:16:20 +0000 apt-cacher (1.7.15) unstable; urgency=medium * Prevent HTTP response splitting with encoded newlines in request. -- Mark Hindley Tue, 21 Mar 2017 09:52:04 +0000 apt-cacher (1.7.14) unstable; urgency=medium * Update to debhelper compatibility 9. * Don't capture in regexp when we just need grouping. * Streamline Range handling: combine secondary regex capture into previous conditional. * Make /etc/default/apt-cacher commented example limit configuration option on command line more sensible in case it is enabled automatically. * Add lzma source compression support. * Support separate source .asc signatures for all compression types (closes: #847315). * Add Ubuntu 17.04 release name zesty. * Don't re-lock header before unlinking corrupt files as this can hang if another process has locked the header and views our content lock as an active fetcher. -- Mark Hindley Sun, 08 Jan 2017 10:37:20 +0000 apt-cacher (1.7.13) unstable; urgency=medium * Bump Standards Version to 3.9.8 (no changes). * Use sigtrap pragma to install signal handlers. * Correctly set namespace for Sources.xz files. * Optimise parsing hashes from index files. * Use CDS environment when verifying database. * Use direct CDS lock for DB compact and verify. * Add timestamp to DB log messages. * Sync DB before verifying. * When recovering CDS environment from apt-cacher-cleanup.pl, panic the existing environment, if available. * When recovering database environment, also verify the database file and move it out of the way if corrupt. * Only compact once for each call to db_compact(). * Deprecate FreezeThaw, warn if it is not installed but is required and only suggest its installation. * AppStream/DEP-11 support (closes: #821155). * Add default Debian and Ubuntu appstream path map. * Add Ubuntu release name yakkety (16.10). * Support for APT requesting files by-hash (closes: #824530). * Check all requests originating from apt-cacher-cleanup.pl for freshness. * Regenerate default config file. -- Mark Hindley Wed, 22 Jun 2016 10:01:16 +0100 apt-cacher (1.7.12) unstable; urgency=medium * When parsing checksums from index files, assume different compressions of the same file are identical and skip duplicates. * Use Storable for serialization rather than FreezeThaw. * Add Ubuntu 16.04 LTS codename xenial. * apt-cacher-cleanup.pl improve memory efficiency by using DB_File BTree for tied on disk hashes. * When cleaning cache, don't check for Packages/Sources corresponding to each diff_Index file if in offline mode. * Bug in perl 5.22.1 IO::File->new_tmpfile returns an anonymous handle with mode 0000. Workaround this (see #810924). * Improve SHA1 parsing from diff_Index files. In particular now SHA256 is also appearing in some files. * Set checksum database environment lock timeout to $cfg->{request_timeout} seconds. * Set checksum database compact lock timeout to 10µs. * Only check for $? > 0 on return from red -s pipe. If the child has been reaped already, close() sets $? to -1 which isn't a problem. * Add caching support for xz compressed indices. Pdiff support requires package libio-compress-lzma-perl (closes: #809431). * Only run db_recover() if we hold the environment lock. * Don't db_recover when installing. Just connect to the DB without locking which calls failchk(). * Rework Range handling to be more robust. Byte ranges can go beyond Content-Length [see RFC 7233] and can be zero. * Don't remove dblock when recovering database environment. * Set DB_PANIC_ENVIRONMENT if failchk() fails so that all threads using environment are notified and exit. -- Mark Hindley Fri, 19 Feb 2016 17:26:47 +0000 apt-cacher (1.7.11) unstable; urgency=low * Add Ubuntu codenames 15.04 (vivid) and 15.10 (wily). * Fix apt-cacher-import.pl in copy mode so that a valid Content-Length header is generated. Patch from Pip Cet (closes: #782126). * Correctly detect and handle EOF in ssl_proxy() (closes: #785681). * Upgrade Standards Version to 3.9.6. No changes. * Create /var/run/apt-cacher in init script for CGI/inetd mode (closes: 786661). * Verify existence (or create) /var/run/apt-cacher in apt-cacher-cleanup.pl (closes: #760141). * Automatically reap forked processes in apt-cacher-cleanup.pl. -- Mark Hindley Tue, 09 Jun 2015 09:28:35 +0100 apt-cacher (1.7.10) unstable; urgency=low * Internally store http_proxy as URI object which can include authorisation details. * Remove http_proxy_auth from default config and update http_proxy example to include authorisation. * Support command line option like http_proxy= to unset value. * Deprecate use_proxy and use_proxy_auth. Issue warnings if they are set. Instead, just use http_proxy if it is configured. * Add libcurl noproxy configuration example to manpage. * In apt-cacher-cleanup.pl, use tied GDBM file for %svrhash to reduce memory consumption. * Add architectures powerpcspe, ppc64, sparc64 and x32 from http://www.ports.debian.org and arm64 (https://wiki.debian.org/Arm64Port) to supported_archs (closes: #753455). * Protect embedded "\r\n\r\n" sequences from being chomp()ed by the reading process (closes: #755184). * In apt-cacher-cleanup.pl, if the header file has disappeared, try once to download it. * Alphabetise man page options. * Always escape hyphens in manpage. * Remove spurious \: in manpage URL. * Man page formatting fixes * Document behaviour if daemon_addr is unset. -- Mark Hindley Tue, 26 Aug 2014 11:09:33 +0100 apt-cacher (1.7.9.1) unstable; urgency=low * Bug fix: "version regexp to tight". Some packages (dh-autoreconf, for example) just have a single number as the version. Thanks to Gregor Herrmann (closes: #753365). -- Mark Hindley Tue, 01 Jul 2014 10:52:57 +0100 apt-cacher (1.7.9) unstable; urgency=low * When reading pdiffs in apt-cacher-cleanup.pl, take LOCK_SH so the file is complete. * Add Translation-*.lzma to index_files_regexp. * Reduce import_sums() memory usage by using GDBM_File and anonymous temporary file. * Fix for BerkeleyDB failchk -> recover code. After recovery open a new environment. * Correct documentation: data_timeout default was increased to 120 in 1.7.3. * Support setting checksum option to 'lazy' which avoids waiting for new files to be downloaded completely. * Suppress red -s output unless $verbose is set in apt-cacher-cleanup.pl. * Sometimes BerkeleyDB failchk is returning EINVAL, so just loop until we get DB_RUNRECOVERY or 0. * When forking daemon listener, log pid to error.log. * Don't send a response from die_handler() unless there is a connection. * Return Server header instead of Via for locally generated responses. * When parsing libcurl option, ensure the rest of the line after the key is preserved. * Remove obsolete Keep-Alive header from responses. * Reduce default request_timeout to 10. * Only return Accept-Ranges header for persistent connections. * Allow *.changelog files as well as *_changelog. apt-get tries both. * Allow extended locales in Translation filenames. * Prevent keeping get_request() loop open when providing invalid input. * Move initscript pidfile to /var/run/apt-cacher. * Make default for libcurl_socket /var/run/apt-cacher/libcurl.socket. * Validate supplied architectures using Dpkg::Arch. * Catch early errors by redirecting STDERR to a buffer and restoring once the logfiles are available. * Reorder main part to drop privileges and open logfiles earlier. * Make config variables set from commandline options private (pidfile, retry, chroot and fork). * Implement option max_loadavg. * use Socket in lib/apt-cacher.pl. Needed for inet_aton(). * Create shared memory segment with mode 0600. * Update to Standards Version 3.9.5 (no changes). * aptitude is now using metadata.ftp-master.debian.org for changelogs. (closes: #740900) * Really deal properly with multiple libcurl headers when redirected. (closes: #740900) * Always correctly escape . in default regexps. * Simplify building regexps by using a specific list of valid architectures and replacing strings %VALID_NAME%, %VALID_VERSION% and %VALID_ARCHS% in regexps. Convert UBUNTU_RELEASE_NAMES and PATH_MAP to use %% delimiters, but still support those legacy forms without. * If called with URI /config include private config variables in output. * Actually only do freshness checks for index files as advertised. * Enforce lower case alphanumeric Ubuntu release names. * Reduce memory usage by limiting exports from modules and only loading WWW::Curl modules via require in libcurl process. * Add Ubuntu 14.10 release name 'utopic'. * Add example configuration for not proxying upstream localhost requests to manpage. Support escaping separators (comma or semicolon) within configuration options. (closes: #749052). -- Mark Hindley Wed, 18 Jun 2014 09:02:34 +0100 apt-cacher (1.7.8) unstable; urgency=low * Use sed to insert version number when building, therefore no need to Build-Depend on perl any more. * Only write body to cached file on success (200). * Rework handling of If-Modified request response. Client errors also count as EXPIRED. Delete cached files in these circumstances (closes: #708884). * return_file() never returns a retry code, so don't test for it. * Update debian/control file description. Integrate experimental features (multi-distro, Debian Bugs SOAP and HTTPS CONNECT) as established. * Add Ubuntu 14.04 codename 'Trusty'. -- Mark Hindley Mon, 21 Oct 2013 16:42:46 +0100 apt-cacher (1.7.7) unstable; urgency=low * Add Ubuntu 13.10 codename 'Saucy'. * Update to Standards version 3.9.4 (no changes). * Use /proc/self/fd directly rather than rely on /dev/fd which can be missing (closes: #699938). * In precache script, make example to generate fake package list architecture aware by using Dpkg::Arch. Add Suggests dependency on libdpkg-perl (closes: #696523). * Remove obsolete patch from patches/. * Use new function cache_size() to obtain cache usage for configuration item disk_usage_limit. Store cache size in shared mem and recaclulate on a sliding scale from 0-20 seconds (closes: #689955). * Don't use verbose _flock() in write_error_log() as it just makes debug logs too full. * Handle missing Last-Modified header: use the Date header to generate the If-Modified request. * Add Ubuntu 13.04 codename 'raring'. * Add Italian debconf translation. File from Beatrice Torracca (closes: #691351). * Added Japenese debconf translation from victory (closes: #691942). -- Mark Hindley Fri, 26 Apr 2013 11:55:15 +0100 apt-cacher (1.7.6) unstable; urgency=low * Fix missing argument to $r->header when disk_usage_limit is configured (closes: #689208). * Use (and depend on) ucf to manage debconf changes to /etc/default/apt-cacher (closes: #688890). -- Mark Hindley Wed, 03 Oct 2012 08:24:54 +0100 apt-cacher (1.7.5) unstable; urgency=low * Fix receiving with Transfer-Encoding: chunked (closes: #682437, #685051). * When fetching, if checksum for index file fails, retry after refreshing Release file. * Don't abuse internal request headers by using X-AptCacher-Internal. * Handle failure of print in fetcher gracefully. * Implement curl_throttle to control libcurl CPU usage (closes: #672871). * Add configuration option skip_checksum_files_regexp. * Protect against empty Connection header in response. * When doing case insensitive comparison use faster lc() rather than regexp. -- Mark Hindley Mon, 20 Aug 2012 08:26:37 +0100 apt-cacher (1.7.4) unstable; urgency=low * Minimise the time a checksum DB handle is held when adding new data. * Close "transition towards Apache 2.4". No automatic apache installation in version 1.7.x, so no changes required (closes: #669753). * Use InRelease files, if available, when refreshing and patching (closes: #669372). * Remove Release and Release.gpg on cleanup if InRelease is cached. * Optimise initialising %valid for index files: use map(). * Skip already deleted files in unlink_by_fh(). * When generating internal requests, set Cache-Control: no-cache so that refresh is forced. * In debconf manual mode, disable/remove any previous daemon or inetd configuration. * Add Quantal to Ubuntu release names. * Only set daemon_port from ENV{SERVER_PORT} in CGI mode -- it isn't set when invoked from apt-cacher-cleanup.pl * Avoid running apt-cacher script in separate interpreter. Use an internal fork and do-FILE. * Open and lock Release and diff/Index early when attempting to pdiff. * When refreshing in cleanup, just do a HEAD request so we save transferring the body content. * Warn if apt-cacher-import.pl fails to chown (closes: #662737). * Return 502 response on all internal errors via $SIG{__DIE__} handler. * Remove obsolete {cache_dir}/temp on install. * Wait for internal requests to complete before returning * Bump to standards version 3.9.3 (no changes required). * Unset executable bit from files in debian (silence lintian warnings). * Transparently convert IPv4 configuration options to IPv6 when a client request is on an IPv6 mapped IPv4 address (::ffff:0:/32) (closes: #659669). * Recognise whole 127.0.0.1/8 block as localhost. -- Mark Hindley Wed, 02 May 2012 08:31:52 +0100 apt-cacher (1.7.3) unstable; urgency=low * Check for existence of libcurl.pl in prerm script. In the case of failed-upgrade the script might be missing, so only try to run it if it is present (closes: #657834). * Rework internal circular request check to just resolve through DNS rather than making an outgoing socket connection. * Rework filehandle usage and locking to reduce resource consumption. No need to take global lock any more which improves performance. * Ensure expired pdiff files are cleaned. * Reduce memory footprint by not importing from used modules by default. * Don't close BerkeleyDB logfile whilst it is still in use. * Fix library name in apt-cacher-import.pl (closes: #652088). * Bug fix: "problems finding port number in /etc/xinetd.d/apt-cacher", and rework xinetd specific code (closes: #651854). * New configuration option 'libcurl' to pass CURLOPT_* options to backend. * Use sendfile(2) where possible to return cached file. * Rename configuration option 'fetch_timeout' to 'data_timeout'. The old name is still recognised. Default increased from 60 to 120 seconds. * Log fetch forced with "Cache-Control: no-cache" as NOCACHE in access.log. -- Mark Hindley Wed, 08 Feb 2012 08:26:28 +0000 apt-cacher (1.7.2) unstable; urgency=low * Clear SysV semaphore block on install. * Brazilian Portuguese debconf translation. Thanks to Marco Juliano e Silva (closes: #649499). * When refreshing Release files internally, use Cache-Control: no-cache * Add support for "status" action to init.d script. Patch from Peter Eisentraut (closes: #647984). * Allow source files to be xv compressed. Patch from Ansgar Burghardt (closes: #648470). * Support setting IO priority to reduce load in apt-cacher-cleanup.pl. * Move library files to lib/ subdir. * Document support for incoming request Cache-Control headers. * Remove deprecated/* from source tarball. * Workaround features missing in perl versions less than 5.10. * Improve child process management using process groups. * Fix reading checksums from patched index files when using pdiff option to apt-cacher-cleanup.pl. * New option concurrent_import_limit to control simultaneous reading of checksums from new index files. Default is the number of virtual CPU cores as parsed from /proc/cpuinfo (where possible). * Replace cron.daily script with more flexible cron.d fragment. * Precompile regexps where possible. * Don't try to checksum installer files. * Fix libcurl low speed timeout. -- Mark Hindley Sun, 27 Nov 2011 08:39:23 +0000 apt-cacher (1.7.1) unstable; urgency=low * Support multiple import directories for apt-cacher-import.pl. * Add Precise Pangolin to list of Ubuntu releases. * Workaround missing \K regexp escape in perl versions < 5.10. * Bugfix: ensure headers are always sent. * Bugfix changelog expiry in apt-cacher-cleanup.pl. * Don't overwrite existing files when importing packages. * Specifically depend on libberkeleydb-perl >= 0.34 for failchk(). -- Mark Hindley Wed, 26 Oct 2011 07:31:13 +0100 apt-cacher (1.7.0) unstable; urgency=low * Rework revalidation -- done for all files apart from package files. * Internal path_map for Debian and Ubuntu changelog servers. * Cleanup handling of binary/decimal byte units. * Fix apt-cacher-cleanup.pl database multiple commands. * Cleanup conf.d file handling and documentation. * Set Connection: close correctly. * Refresh Release file if index file checksum fails. * Support namespace import by MD5 digest and URL. * Rename CGI wrapper. * Fix age calculation for max-age handling. * Fix finding correct Release file for Packages/Sources in apt-cacher-cleanup.pl. * Move manpage to section 8. * Support for UBUNTU_RELEASE_NAMES expansion in installer_files_regexp. * Return 504 (rather then 404) if connect to host fails. * Use NetAddr::IP for {allowed,denied}_hosts. * Support PATH_MAP shorthand in allowed_locations. * Rework install scripts. * Allow access to URL root for Ubuntu changelogs. * Document in NEWS rejection of '/../' in URLs and provide link to current configuration for accessing experimental. (Closes: #636623) * Terminate libcurl process on dpkg configure or reconfigure. * Refresh Release file if checksum fails for index files. * Rewrite return_file() including fix finding EOF with buffered read. * Share DNS cache with WWW::Curl::Share. * Reverse map hostnames to path_map keys to reduce cached file duplication. * Fix namespace handling for path_mapped URLs. * Add Portuguese debconf translation thanks to 'Traduz' - Portuguese Translation Team. (Closes: #632156) * Add Czech translation of debconf messages thanks to Miroslav Kure. (Closes: #632524) * Add Dutch debconf translation, thanks to Jeroen Schot. (Closes: #632625) * Add Spanish debconf translation, thanks to Omar Campagne. (Closes: #632646) * Don't use $ENV{SERVER_NAME} in CGI mode: Fixes bug: "doesn't work in apache mode from a virtualbox guest". (Closes: #632622) * Add French debconf templates translation, thanks to Jean-Baka Domelevo-Entfellner. (Closes: #632796) * Add Russian debconf translation, thanks to Yuri Kozlov. (Closes: #631962) * Add Swedish debconf translation, thanks to Martin Bagge. (Closes: #631972) * Add simplified Chinese (zh_CN) translation of apt-cacher debconf, thanks to YunQiang Su. (Closes: #631616) * Add Danish translation of the debconf template, thanks to Joe Dalton. (Closes: #631705) -- Mark Hindley Thu, 06 Oct 2011 10:00:57 +0100 apt-cacher (1.7.0~rc1) experimental; urgency=low * Remove apache specific CGI installation (which was broken) and deprecate CGI mode (closes: #593227) * Try to ensure cache_dir and subdirs are owned by the correct user (closes: #611526) * Add changelog and NEWS.Debian to installer_files_regexp (closes: #600893) * Fix error: Can't use an undefined value as a HASH reference at apt-cacher-lib.pl line 249. (closes: #614615) * Check validity of cached HTTP status (closes: #618996) * Set CURLOPT_FOLLOWLOCATION to follow redirects correctly (closes: #618996) * Fix error: Can't use an undefined value as a HASH reference at apt-cacher-lib.pl line 249. * Use SHA rather than MD5 for checksumming. * Use Digest::SHA rather than Digest::SHA1 (closes: #624568) * Checksum database compaction is now recursive until there is nothing left to do. * Basic SOAP proxying which enables support for apt-listbugs (Closes: #547308) * Support separate namespaces to allow multi-distro support (e.g. Debian + Ubuntu). (Closes: #541618) * Configuration option disk_usage_limit to limit disk usage (Closes: #418170) * Make cache only accessible from localhost by default. See allowed_hosts and allowed_hosts_6 if you need to relax this (Closes: #522161) * Option to limit libcurl rate overall. This is not well supported by libcurl so this just uses a simple fraction per download (Closes: #507794) * Upgrade to Standards version 3.9.2 (no changes required) -- Mark Hindley Mon, 17 Oct 2011 00:04:49 +0100 apt-cacher (1.6.12) unstable; urgency=low * Handle decompression errors properly (closes: #585804) * Debian installer now requires linux files. Make item configurable (closes: #588569) * Prevent multiple concurrent cleanups in case they are taking too long. * Prevent loop in apt-cacher-cleanup if user:group specified as root:root * Upgrade to Standards version 3.9.1 (no changes required) -- Mark Hindley Tue, 07 Sep 2010 09:42:00 +0100 apt-cacher (1.6.11) unstable; urgency=low * Upgrade to Standards version 3.8.4 (no changes required) * Add $remote_fs to LSB Required-Stop header. Silences lintian error. * Check for sufficient available filesystem space (closes: #509369, #510214) * Avoid leaving BerkeleyDB recovery logs on the filesystem where possible with libberkeleydb-perl >= 0.40 -- Mark Hindley Mon, 08 Mar 2010 10:08:34 +0000 apt-cacher (1.6.10) unstable; urgency=low * Bug fix: selecting outgoing network interface in daemon mode. Make documentation and implementation consistent. Configuration item is interface, not use_interface. (closes: #555986) * Allow .tar.bz2 source packages. (closes: #554870) * Don't allow libcurl process to loop and hog CPU. (closes: #533830) -- Mark Hindley Sat, 28 Nov 2009 23:42:58 +0000 apt-cacher (1.6.9) unstable; urgency=low * Rescan cached files after checking for diff_Index parents (closes: #537189) * Fix initscript for dependency based boot sequencing. Patch from Petter Reinholdtsen (closes: #541378) * Fix handling of Keep-Alive and multiple hosts in path_map. Debugging by "Daniel Richard G." (closes: #517761, #516525) * Fix "400 No request Received" caused by incomplete input line. Patch from "Daniel Richard G." (closes: #540691) * Support libdb4.7 (closes: #519896) * Remove regular calls to libdb failchk (closes: #535093) * Don't hide cron errors. (closes: #509126) * Rate-limit units are bytes. Correct comment in configfile (closes: #527539) * Allow spaces in options on command line (closes: #535478) * Bug fix: "Client connection timeouts when upstream server does not support Keep-Alive", thanks to Daniel Richard G. for testing (closes: #542869) * Bug fix: "Checksumming leads to bzcat/bzip2 errors". Now use IO::Compress and IO::AnyUncompress rather than bzip2/gzip pipes (closes: #543760) * Ensure $cache_status is always initialised * Bump standards version to 3.8.3. No changes required. * Bump to debhelper compatibility 7 * Add uncompressed Sources and Packages files to files that can be cached. -- Mark Hindley Tue, 22 Sep 2009 12:12:45 +0100 apt-cacher (1.6.8) unstable; urgency=low * Fix typo (closes: #510602) * Use KILL if TERM fails in init script (closes: #330234) * Get port from environment in CGI mode (closes: #510569) -- Mark Hindley Mon, 16 Feb 2009 09:17:21 +0000 apt-cacher (1.6.7) unstable; urgency=low * libcurl: reduce select->can_read timeout to 0 to restore throughput (closes: #501747) * Document apt.conf config for apt-listbugs (closes: #500855) * Add transparent proxy support (closes: #352140) * Check return of sysread in getRequestLine. Prevents "400: No Request Received" errors (closes: #502480) * Keep and return index files if upstream temporarily unavailabe (closes: #478068) -- Mark Hindley Tue, 28 Oct 2008 23:51:13 +0000 apt-cacher (1.6.6) unstable; urgency=low * Configurable file regexps (closes: #482949) * Handle missing libberkeleydb-perl gracefully (closes: #472822) * Ensure Content-Length headers are always returned. -- Mark Hindley Wed, 01 Oct 2008 13:14:25 +0100 apt-cacher (1.6.5) unstable; urgency=low * Fix off by one error in access log parser for report (closes: #492296) * Fix use of undefined value in HEAD request with vhost (closes: #495033) * Correct lsb header. Don't start in single user mode (closes: #488064) * Abandon %db tie in favour of direct BerkeleyDB control. (closes: #487789, #460020) * Use IO::Select to avoid multiple forks for listeners. * Use a separate libcurl process to fix DNS caching. -- Mark Hindley Sun, 06 Jul 2008 19:50:53 +0100 apt-cacher (1.6.4) unstable; urgency=low * Add interface option (closes: #483666) * Fix locking for checksum database if failed thread detected (closes: #485089) -- Mark Hindley Thu, 05 Jun 2008 08:41:09 +0100 apt-cacher (1.6.3) unstable; urgency=low * Don't send a response when CGI connection is closed (closes: #448092) * Add option to specify configfile for apt-cacher-report.pl (closes: #480004) * Support jigdo (closes: #482422) -- Mark Hindley Sun, 25 May 2008 11:59:03 +0100 apt-cacher (1.6.2) unstable; urgency=low * Handle SIGPIPE. * Don't use ETag header to check freshness by default -- some servers are not providing reliable ETags. You can still enable the code by setting configitem use_etags to non-nil. * Ensure correct file is returned if cached file is being refreshed. (closes: #472669, #473001) * Update README and conffile to reflect usage of libberkeleydb-perl. * Ensure checksumming database is correctly initialised for every process (closes: #460020) * Ensure error messages do not go to STDOUT (closes: #448092) * Correctly drop all root privileges (closes: #470092). * apt-cacher-cleanup.pl: if clean_cache is 0, print warning on STDERR. Redirect to /dev/null in cron (closes: #462230) * Add dependency on libdigest-sha1-perl and libwww-perl (for HTTP::Date) (closes: #461899, #462689) * If path_map contains multiple servers, remove HTTP error from the first before trying the next. Thanks to Anderson Lizardo for patch. (closes: #462948) * Remove pointless abs_path, which sometimes fails. (closes: #468771) * Depend on libwww-curl-perl 3.12 at least. (closes: #462523) -- Mark Hindley Sun, 30 Mar 2008 12:57:12 +0100 apt-cacher (1.6.1) unstable; urgency=medium * Security fix -- only use red to apply pdiffs (hence urgency) * Correct typo in libberkeleydb-perl rependency (closes: #459842) * Fix handling of If-Modified-Since request * Implement timeout for connecting to checksum database to prevent hangs * Bump Standards Version -- Mark Hindley Thu, 10 Jan 2008 09:06:44 +0000 apt-cacher (1.6.0) unstable; urgency=low * Major new release. * IPv6 support (using libcurl and optional libio-socket-inet6-perl) (closes: #447993, #451700). * Experimental support for patching cached Packages and Sources with pdiffs. (closes: #427695) * Checksumming rewritten and now uses Berkeley DB for speed and reduced resource utilisation. * Checksum database manipulation with apt-cacher-cleanup. * Daemon mode can now listen on multiple addresses. * ETag support. * Respect Cache-Control headers (closes: #369433). * Don't assume host is not reachable if use_proxy set. Thanks to Ralph Rößner for patch. (closes: #447033) * apt-cacher-cleanup: verify SHA1 of debs and remove if mismatch. -- Mark Hindley Wed, 05 Dec 2007 10:45:57 +0000 apt-cacher (1.5.5) unstable; urgency=low * Make apt-cacher-report.pl more tolerant of logfile corruption. Thanks to Olaf Schulz for patch (closes: #366348, #444677) * Don't change /etc/apache/httpd.conf if no apt-cacher config found. * Move shared install/remove code to apt-cacher-lib. * Add link to /usr/lib/cgi-bin for non-apache httpd servers. * README.Debian: suggest workaround to cache for both Ubuntu and Debian distributions (closes: #354925, #366624, #415398) * Check for Host header in HTTP/1.1 request. * Respect no-cache directives in request and pass through to upstream. * apt-cacher-format-transition: Remove accept \r\n in headers on import (closes: #355157). Add informational messages. * Keep command-line options on config reload (SIGHUP). * Differentiate between absolute URIs. Can be HTTP 1.1 proxy or HTTP 1.3. See rfc2616. (closes: 387449, #413391) * Handle SIGUSR1 to toggle debug ouput. * Fix man page CGI mode prefix. * Control checksumming with config option checksum * Lists in config file are delimited by ',' or ';' * Check installation directories and logfiles on startup. Recreate if necessary (closes: #370453) * No default http_proxy and http_proxy_auth. * Support vmlinuz and initrd.gz files for Debian-live. * Significant rewrite of manpage. (closes: #442800, #364361) * Restart after rotating logfiles (closes: #414156, #390585) * apt-cache-report: run as user:group from config file (closes: #383480) * Actually support rate limit suffixes as specified in man page (closes: #410920) * Return Connection: close even if keep-alive requested for 404 error (closes: #322299, #384210) * Rationalise example usage in usage_error. Use Sys::Hostname to build the example. Configfile example_sources_line is no longer used. (closes: #365507) * Dynamically generate configuration info in usage_error. * Check size of cached files. Warn and refresh if mismatch (closes: #373280, #412743, #366648) * Add support for index.db-*.gz files as used by apt-listbugs. (closes: #364904) * Decode ascii hex codes in URL. (closes: #394541) * Add support for Translation-*.bz2 files. * Rationalise locking in apt-cacher-cleanup. Based on patch from Adrian Bridgett (closes: #428131) * apt-cacher-import: check return of rename and die with helpful error message if it fails. (closes: #355160) -- Mark Hindley Wed, 03 Oct 2007 08:59:54 +0100 apt-cacher (1.5.4) unstable; urgency=low * New maintainer (Closes: #403584) * apt-cacher: Correctly set version number when building package * apt-cacher-cleanup: add simulate option to show what would be done and offline mode to control refresh of index files * Add offline_mode to config file. * apt-cacher-cleanup: fix option handling * move setup_ownership() to apt-cacher-lib * apt-cacher-cleanup: run as user:group from config file * Bump standards version * Fix manpage warning: 52: a special character is not allowed in a name and missing line when rendered (closes: 374422) * Add LSB header to init. (closes: #384721) * apt-cacher-cleanup: provide warning if linking of file fails. * apt-cacher-cleanup: don't continue if there are empty index files in order to prevent unexpected deletion of cache contents (closes: #356292). * Daemonize correctly (closes: #370446). * Fix typos and spelling (closes: #358988, #362730, #399157, #396677) * Build and lintian warning fixes: Move debhelper compatibility to debian/compat. Remove make distclean from debian/rules. Put debhelper in Build-Depends not Build-Depends-Indep Delete *-stamp on clean. * Don't cache index files that generate 404 error. Thanks to Dietrich Clauss (closes: #385961) * apt-cacher-cleanup: just delete empty .gz files (closes: #403453). -- Mark Hindley Thu, 06 Sep 2007 12:13:23 +0100 apt-cacher (1.5.3) unstable; urgency=medium * special case for pdiff file name generation (closes: #335202). Pdiff caching should now (finally) work correctly. Also checks and expiration of pdiff files (using Index lists) done in apt-cacher-cleanup.pl * apt-cacher-cleanup hardened, locking files to eliminate any possible situation with not having the index files ready * added instructions to the cleanup error message to remove broken/undownloadable files if files from a repository are to be purged (closes: #327817) * ignoring empty .bz2 files since they are optional and (naturally) coming from unsuccessfull downloads (closes: #354533, #354548, #354428) -- Eduard Bloch Wed, 01 Mar 2006 16:23:22 +0100 apt-cacher (1.5.2) unstable; urgency=low * Minor bugfix release * Improvements of the package description, mentioning approx/apt-proxy (closes: #352020) * always logging the disk-full messages, if possible, not only in debug mode * checking for exit status when reading index files in cleanup, catching file corruption cases (closes: #353152) * spelling error fixes in the manpage, thanks to A. Costa (closes: 353970) -- Eduard Bloch Thu, 23 Feb 2006 19:39:24 +0100 apt-cacher (1.5.1) unstable; urgency=low * make flock depend on open success in cleanup (closes: #351938) * made download code handle write errors better (or even just correct), also added cleanup code for potential leftovers to apt-cacher-cleanup.pl * documented the offline_mode switch in the manpage * documented the proxy mode installation in the manpage -- Eduard Bloch Wed, 08 Feb 2006 19:20:31 +0100 apt-cacher (1.5) unstable; urgency=low * made request reader more robust * added more regexps to handle Fedora's APT clone's index files correctly * added a simple spec file from Srimal Jayawardena to contrib directory -- Eduard Bloch Fri, 27 Jan 2006 15:52:18 +0100 apt-cacher (1.4.3) unstable; urgency=low * checksums are not checked on index files any longer, they can change * tolerates full paths now (proxy kind), allows usage of apt-cacher as pure HTTP proxy without changing sources.list on all clients (closes: #349588) * experimental option offline_mode to simply avoid outgoing connections and deliver cached data only * added a HUP handler to reload the config * fixed a minor bug in the header parser, found with clients using LWP agent (closing connection too early). Now cascading of apt-cacher servers in daemon mode is possible. -- Eduard Bloch Fri, 27 Jan 2006 01:28:51 +0100 apt-cacher (1.4.2) unstable; urgency=low * reopening log files when a write fails * getgrnam/getpwnam considers undefined values now, thanks to Richard Antony Burton (closes: #348178) * additional data size checks when returning cached versions to detect possible file system corruption. * with checksum checking enabled, the checksum of downloaded content is stored additionaly to be available even if is not extracted from Packages files first. Does not cover initial download errors but local corruption. * code refactoring, ensured ownership change when running cleanup * it's called libdbd-sqlite3-perl! (fixed name of the package in Suggests) -- Eduard Bloch Sun, 22 Jan 2006 02:21:31 +0100 apt-cacher (1.4.1) unstable; urgency=low * set treshhold for unparsed lines back to old value but reseting it when a valid GET/HEAD request was accepted * workaround: closing connection after TE headers, apt confused sometimes -- Eduard Bloch Sun, 08 Jan 2006 15:19:24 +0100 apt-cacher (1.4) unstable; urgency=low * now really closes: #345878 * renamed NEWS.Debian file to become correctly installed by debhelper (4.x). Thanks to Sven Hartge for pointing at the problem. -- Eduard Bloch Fri, 06 Jan 2006 03:08:57 +0100 apt-cacher (1.3) unstable; urgency=low * the "don't release after midnight" release * ignoring If-Modified-Since if Range field was seen, forcing local retransmissions of a file * removed a forgotten todo mark from the last changelog entry * actually changed the threshold for unparased lines now -- Eduard Bloch Fri, 06 Jan 2006 02:33:48 +0100 apt-cacher (1.2) unstable; urgency=low * allowed "Index" files but documented the "refetching" behaviour of cleanup in NEWS.Debian * using ISO 8601 format for date/time in report pages (closes: #327356) * spelling error fixes in apt-cacher.1 (closes: #337545) * increased the treshhold of unparsed request lines to stop throwing "Go away" messages * disabled the child reaper code (caused races). This restores the old behaviour of downloads not stopping on client exit. * moved setgid code before setuid code to make it actually work, also using standard perl variables instead of POSIX module (closes: #341348) * also removing /var/log/apt-cacher when purging (closes: #326050) * a bit code refactoring * more carefull forwarding of header fields on error reports. Solves a "bug" which resulted in apt-get hanging forever or becoming confused because it assumed a premature connection termination. Now it does keep the connection open while forwarding error status headers. * replace all underscores with / when reconstructing the URL which is not available if downloaded by an old apt-cacher version (closes: #345878) * updates to the manpage (FAQ, mistakes, more details) and apt-cacher-cleanup.pl help message (closes: #345286) * debian/copyright: FSF address update -- Eduard Bloch Fri, 06 Jan 2006 00:50:52 +0100 apt-cacher (1.1) unstable; urgency=low * setting ReuseAddr to avoid port collision with running instances on restart -- Eduard Bloch Mon, 26 Sep 2005 10:40:28 +0200 apt-cacher (1.0.12) unstable; urgency=high * set the CGI_MODE flag in apt-cacher.pl wrapper (closes: #324572) * a one-line fix for an obvious bug already slipped into testing, thus the severity choice -- Eduard Bloch Tue, 30 Aug 2005 10:33:09 +0200 apt-cacher (1.0.11) unstable; urgency=medium * the REMOTE_ADDR interpretation had unexpected side effects, script was executed in paranoid CGI mode when runned from apt-cacher-cleanup.pl, so CGI script has finally been separated: apt-cacher.pl as invoked by httpd sets clear flags and then executs the normal code (installed in a separate file now) * better controled termination of child processes now making restarts more reliable -- Eduard Bloch Sun, 21 Aug 2005 13:12:07 +0200 apt-cacher (1.0.10) unstable; urgency=low * manpage updates and hyphenisation fixes by Bastian Kleineidam (closes: Bug#323955) * apt-cacher-import.pl: speedup (removed date calls) and using correct date specification from HTTP::Date -- Eduard Bloch Fri, 19 Aug 2005 22:21:26 +0200 apt-cacher (1.0.9) unstable; urgency=low * pidfile could have been created too late with -d, fixed * -p option documented -- Eduard Bloch Fri, 19 Aug 2005 10:16:23 +0200 apt-cacher (1.0.8) unstable; urgency=medium * checks for valid host/uri without warnings * added -R N option to try to bind the socket N times with 5s interval * -d forks away only after the daemon is ready * added a TERM handler to close all connections and reliable shut down the daemon * interpretation of REMOTE_ADDR even in inetd / direct call mode * fix for the path_map parser, correct separator detection -- Eduard Bloch Fri, 19 Aug 2005 02:37:54 +0200 apt-cacher (1.0.7) unstable; urgency=medium * fixed a nasty bug in apt-cacher-cleanup.pl (copy&paste with insufficient testing, closes: #323037) * better warnings in apt-cacher-cleanup.pl, --force disables the "downloability check" -- Eduard Bloch Sun, 14 Aug 2005 14:36:23 +0200 apt-cacher (1.0.6) unstable; urgency=low * added an evil script (apt-proxy-to-apt-cacher) to take relevant configuration data from apt-proxy and assimilate its cache * config file parser improvements: speedup and multiline support * new config option: path_map to map visible paths to one or multiple servers * new features: server-hopping (using alternative backends on failures) and recursive import from whole filesystems (eg. DVD), optionally read-only (making hard links or copies) -- Eduard Bloch Sat, 13 Aug 2005 14:41:09 +0200 apt-cacher (1.0.5) unstable; urgency=low * tolerate two slashes in the beginning of the location URL * closing connection on 404 errors to avoid apt-get freezes -- Eduard Bloch Wed, 10 Aug 2005 12:53:53 +0200 apt-cacher (1.0.4) unstable; urgency=low * now a real fix for the CGI status line output, fixes the accidential supressing of it in certain situations (closes: #322299) * apt-cacher-cleanup now removes orphaned .notify files (after few days) which could be left behind by the some download processes in version 1.0.2 or after killing fetcher processes, system crashes, etc. * proper printing of usage info if the path has been omited * new option to print text with HTTP 410 messages, eg. to advise users to change sources.list to use apt-cacher in server mode -- Eduard Bloch Wed, 10 Aug 2005 11:48:38 +0200 apt-cacher (1.0.3) unstable; urgency=low * Fix for not outputing the HTTP status line in CGI mode (confused apache2) * added sanity checks for effective user ID in apt-cacher-cleanup.pl to stop poisoning the cache with files with wrong permissions -- Eduard Bloch Sun, 07 Aug 2005 10:37:32 +0200 apt-cacher (1.0.2) unstable; urgency=low * fixed a bug with apt-cacher-cleanup.pl and extract_sums method (which appeared with Sarge's Perl only and not before) * added a download success check in cleanup to not let it nuke the whole cache if the mirror server has been unreachable for some minutes -- Eduard Bloch Sat, 6 Aug 2005 15:58:31 +0200 apt-cacher (1.0.1) unstable; urgency=low * passing EXTRAOPT in the init script -- Eduard Bloch Sat, 6 Aug 2005 14:24:58 +0200 apt-cacher (1.0.0) unstable; urgency=low * more safe options parsing * added a config option for the address to listen on * moved user and group settings to the configuration file * cleanup and precache script updates * description update: a bit power selling to express what it actually does * init script added * created the symlink in /usr/sbin/apt-cacher. Kept the httpd configuration installation hooks for compatibility with existing setups. -- Eduard Bloch Sat, 06 Aug 2005 10:54:06 +0200 apt-cacher (0.9.12) experimental; urgency=low * parts of design reverted back to the old method: + separate fetcher threat, spawned as needed + error message passing much more safe and should now be really reliable with more than one reader + file handles cleanup -- Eduard Bloch Sat, 06 Aug 2005 01:20:38 +0200 apt-cacher (0.9.11) experimental; urgency=low * apt-cacher has been rewritten in the most parts: + can act as a stand-alone daemon, an inetd daemon or as user / CGI program (dropped dependency on httpd-cgi) + using libwww-perl as download agent, stopped using curl tool. Using libcurl3 instead is beeing considered * added bzip2 to dependency list (closes: #319709) * removed visible references to www.apt-cacher.org -- Eduard Bloch Thu, 04 Aug 2005 17:38:25 +0200 apt-cacher (0.9.10) unstable; urgency=high * SECURITY: replaces execution of curl in a shell environment (with possibly tainted command line parts) with a safe pipe construct -- Eduard Bloch Wed, 29 Jun 2005 09:26:07 +0200 apt-cacher (0.9.9) unstable; urgency=high * fixed signature of get_abort_time, thanks to Taco IJsselmuiden (closes: #316197) -- Eduard Bloch Wed, 29 Jun 2005 09:23:44 +0200 apt-cacher (0.9.8) unstable; urgency=high * fixed fetch timeout handling and made it more robust, based on the patch from Darren Salt (closes: #315151) * allowed_locations checks workaround for ".." in the URIs which becomes neccessary with apt-0.6.x -- Eduard Bloch Tue, 28 Jun 2005 09:21:43 +0200 apt-cacher (0.9.7) unstable; urgency=low * fixed the apt-cacher-precache.pl script installation -- Eduard Bloch Sat, 18 Jun 2005 11:42:06 +0200 apt-cacher (0.9.6) unstable; urgency=low * "mv apt-precache.pl apt-cacher-precache.pl" (naming consistency) and improved it a lot (options to set a distfilter and add custom package lists) -- Eduard Bloch Sat, 18 Jun 2005 11:41:04 +0200 apt-cacher (0.9.5) unstable; urgency=low * changed file opening method to allow read-only access. Based on patch from Rob Walker (closes: #312724) * "incomplete" log messages report MISS, not HIT (closes: #311485) * suggesting libdb-sqlite3-perl (closes: #311737) * auto-setting the version number in apt-cacher.pl (closes: #311735) * added the proxy auth support based on the patch from Achim Dreyer with big warnings about password visibility and not showing the password to anyone in the report page * updated the apt-cacher.1 manpage to reflect the recent changes * added *.udeb and *.dsc to the list of importable files (closes: #312732) * removed the security/obscurity check from apt-cacher-cleanup.pl and added advisories for securing of the cache/mirror access to README.Debian (closes: #312038) * only purge step nukes the cache and only in the default location now -- Eduard Bloch Sat, 11 Jun 2005 09:38:51 +0200 apt-cacher (0.9.4) unstable; urgency=high * removed /var/{log,cache}/apt-cacher from debian/dirs to manage them without interferences via postinst/prerm, calling install.pl/remove.pl/upgrade.pl (closes: #310990). This bug was hidden before and came to daylight after the rewrite of the old (ownership overriding) code in 0.9. * fixed the size calculation in the access.log (closes: #311001) * found another stupid bug in install.pl, it removed the files README and README.txt in the directory where dpkg has been started * added more visible advisories to run apt-cacher-format-transition.pl in NEWS.Debian and README.Debian * commented out the allowed_locations example in apt-cacher.conf, it should not restrict by default -- Eduard Bloch Fri, 27 May 2005 18:20:49 +0200 apt-cacher (0.9.3) unstable; urgency=high * removed some forgotten debug statements and also a "testing" die; command in the checksumming lib (closes: #310393) * fixed the adding of CGI var separator ? in the sample sources.list URLs and used   to not break the lines on extreme low-res monitors (closes: #310387) -- Eduard Bloch Tue, 24 May 2005 18:42:42 +0200 apt-cacher (0.9.2) unstable; urgency=low * added a possible solution for server redundancy with faked cache serves to README.Debian (closes: #230796) * not blocking access if allowed_hosts was omited (restoring the default config behaviour used before the IPv6 patch) * "nice mode" in cleanup, refreshing the index files first and then continuing with low priority * transition of apt-cacher symlink to apt-cacher.conf in apache2 configuration which most likely also fixes the last issue in another bug report (closes: #307579, #264147) * more verbose error messages with allowed_locations option, patch by Andreas J Koenig (closes: #309597) * removed obsolete references to www.apt-cacher.org from the report generator -- Eduard Bloch Sun, 22 May 2005 11:37:58 +0200 apt-cacher (0.9.1) unstable; urgency=medium * upload to unstable with few changes * fixed NEWS.Debian (header differed from changelog) and updated notes * added precache-by-Priority feature to apt-precache.pl -- Eduard Bloch Mon, 16 May 2005 12:29:12 +0200 apt-cacher (0.9) experimental; urgency=medium * New main maintainer (Jonathan & me -> Uploaders:) * new format, separates package contents and HTTP headers (closes: #274975). The new script apt-cacher-format-transition.pl converts the old cached files to the new version and moves the parts to the new locations * used syswrite/sysread where appropriate to minimise effects of Perl buffering in combination with Apache2 (avoids apt-get's long "waiting for headers" phase in most cases, still appears from time to time, but not soo often. * uses modification times of index files if configured, this should avoid desynchronisation of some files (closes: #180544). Used curl to get the HTTP head for that (wget was just too stupid with its timestamping abilities). By the way rewrote the fetcher code to use curl only, removing the wget depedency (closes: #277279) * rewrote large parts of unsafe code, worked around race conditions (closes:#251468), fixed some crap like inserting of status code into half-downloaded files (closes: #251660), really detached the fetcher thread from the reader when the file is initialy beeing downloaded, and made error code passing more reliable * removed another useless fork (thread-over-thread-over-thread, jeez...) * removed the CHLD handler that fscked up the return codes that I needed from close (became cruft anways since I dropped the unneccessary forking) It now also fails sanely on mirror failure conditions (closes:#203123) * allowing alternative URL scheme (with apt-cacher?/server/...) which does work with alternative http daemons and added alternative dependency on boa and httpd-cgi (closes: #282599, #273776) * applied patch from Peter Denison for more flexible names of index files (closes: #267680) * IPv6 & filtering patch by Darren Salt (closes: #294617, #278070) * added my patch to do basic URL filtering (closes: #307151) * README.Debian update to the new stuff, removed cruft in debian/debian-old * rewrote the import script, made it work more efficient and work around the epoch numbers in the file names from apt's cache (closes: #278799) * rewrote and simplified the cleanup script (closes: #299404), also added support for source files and bzip2 compression (closes: #261273, #305956). Also made it refresh the index files rather then relying on possibly outdated data (or missing data because of tiffani/apt-dupdate usage) and really lock them while reading to not kill the cached data because the file is beeing downloaded just while the cleanup process runs * changed install.pl to copy the ownership of new files/directories and only doing so when they are new, rather than resetting them to www-data, and on every package upgrade * added my apt-precache.pl script for people that may need this toy (closes: #305175). It still needs some refinement to control the expiration of the "subscriptions". * added hooks for checksumming of forwarded packages * new feature: checksumming of data (downloaded and uploaded). Optionaly, see README.Debian for instructions to enable it (closes: #274059) -- Eduard Bloch Thu, 12 May 2005 09:01:03 +0200 apt-cacher (0.8.6) unstable; urgency=low * Added 'Packages.bz2' to list of allowed files. Closes: #298458 * Check for $1 before evaluating it in cleanup script. Closes: #278778 -- Jonathan Oxer Tue, 8 Mar 2005 09:34:33 +1100 apt-cacher (0.8.5) unstable; urgency=low * Changed package version to native numbering scheme. Closes: #282593 * Default config now does not specify a range of allowed_hosts, so new installations will allow access to all clients by default. This reduces the default security but should help reduce the large number of "I've upgraded and now I can't use my cache" and "I've installed but nothing is allowed to connect" questions. Later this will be radically overhauled with Darren Salt's IPv6 patch, but I don't want to make *too* many changes in one release. Closes: #264149 * Applied patch by Eduard Bloch to alter the rate limit config handling, which improves handling of timeouts in corner cases. Closes: #258242 * Cleaned syntax of scalar references in allowed_hosts processing. Closes: #272937, #272813 * Added cleaning of udebs to cache cleaning script Closes: #271391 * Removed build-deps on wget, apache and bzip2, plus dep on bzip2. Closes: #294613 * 's/licence/license' typo fix in info output. Closes: #295616 * Removed references to apt-cacher.org in the man page. Closes: #285725 * Added support for caching Release.gpg files Closes: #283219 * Altered install.pl to restart apache/apache-ssl/apache2 on configure. Closes: #285262 * General cleanup of the working tree to remove build stamps, etc. -- Jonathan Oxer Thu, 17 Feb 2005 11:27:26 +1100 apt-cacher (0.8-4) unstable; urgency=low * Altered filename restriction regex to allow .tar.gz files. Closes: #259629 -- Jonathan Oxer Tue, 20 Jul 2004 12:09:08 +1000 apt-cacher (0.8-3) unstable; urgency=low * Another file extension I missed: .udeb (used in the Debian installer). Closes: #259769 -- Jonathan Oxer Sun, 18 Jul 2004 20:51:02 +1000 apt-cacher (0.8-2) unstable; urgency=low * Added file extensions used by source packages to the filename regex. Should now allow 'apt-get source ...' again. Closes: #259629 -- Jonathan Oxer Fri, 16 Jul 2004 10:37:45 +1000 apt-cacher (0.8-1) unstable; urgency=low * New release with a whole new security mechanism: checks IP address of client and matches it against a range of addresses specified in the conf file using the 'allowed_hosts' directive. Closes: #251575 -- Jonathan Oxer Tue, 13 Jul 2004 13:08:45 +1000 apt-cacher (0.7-3) unstable; urgency=low The "how many bugs can we fix at once?" release. * apt-cacher.pl: Check for undefined value which was showing an error in the log. Closes: #231187 * apt-cacher.pl: Fix version number displayed Closes: #257409 * remove.pl: Now removes logrotate file on removal of package (shouldn't this be taken care of by DPKG? The logrotate file is installed by it, so it should remove it. Anyway...) Closes: #253828 * apt-cacher.pl: Expires 'Sources.gz' file now in addition to Packages.gz and Release (Thanks to Andreas Beckmann) Closes: #237889 * apt-cacher.pl and apt-cacher.conf: Rate limiting by passing a '--rate-limit' argument to Wget. Thanks to Torbjorn Svensson for the patch! Closes: #255361 * install.pl and remove.pl: No longer patches httpd.conf with an alias. Now just symlinks to the apache config snippet from conf.d, so we never touch httpd.conf. No more runaway entries! Closes: #242365 * install.pl: Activates cgi module in Apache2. Closes: #250599 * apt-cacher.pl: Check for name of file being requested. As a partial answer to bug #251575 (still to be fixed properly) the name of the file is now checked. If it isn't a .deb, .rpm, Packages.gz, Sources.gz or Release file it's rejected with 403 Forbidden. That may trip up people if they don't compress the Packages file, so if this causes grief please let me know ASAP. -- Jonathan Oxer Tue, 6 Jul 2004 15:11:19 +1000 apt-cacher (0.7-2) unstable; urgency=low * apt-cacher-report.pl: Not much visibly different, but most of the internals have been re-written after I started with just fixing #230934 and then couldn't stop myself: o Added support for reading rolled/compressed logfiles. o Fixed previously undetected bug introduced in 0.6-11 by the date handling patch: that change caused the latest logfile to nuke the logfile array, causing old logfiles to be ignored even though they were being opened. Doh! o Check for zero value of traffic and assign hit and miss values manually to fix divide by zero error. Closes: #230934 o Set strings for start and end date if no records found. o Check size of traffic values (total, hit, miss) and set human-readable report strings in MB, or if >2000MB as GB rounded to 3 decimal places. -- Jonathan Oxer Wed, 4 Feb 2004 10:20:35 +1100 apt-cacher (0.7-1) unstable; urgency=low * apt-cacher-import.pl: At long last. I've answered the question "why can't I just copy .debs into the cache dir?" sooooo many times that I've finally done something about it. This supporting script traverses $cache_dir/import and imports any .debs it finds into $cache_dir. More info in 'man apt-cacher'. Of course, I did it in a half-assed way with a helper script rather than making it work transparently within apt-cacher.pl itself. Fixes welcome! Also fixes for the cludgy shell in it. Closes: #229466, #221576 -- Jonathan Oxer Fri, 30 Jan 2004 11:59:55 +1100 apt-cacher (0.6-11) unstable; urgency=low * apt-cacher-cleanup.pl: Fix for neater handling of empty Packages files. Patch by Lupe Christoph . Closes: #225505 * apt-cacher-report.pl: Fix for incorrect date handling when generating reports. Patch by Paul Schulz . Closes: #218426 * install.pl and remove.pl: Added support for auto-configuring Apache2 on installation and removal. Note that I don't run it with Apache2 myself, so feedback on this is welcome. Closes: #197930 -- Jonathan Oxer Tue, 30 Dec 2003 22:00:26 +1100 apt-cacher (0.6-10) unstable; urgency=low * apt-cacher.pl: Altered the mix of direct and system calls to where possible use system calls (ie: read->sysread, seek-> sysseek, open->sysopen) at the suggestion of my favorite bug detective Peter Hawkins, to fix a potential infinite loop situation on file reads - but hey, this is Linux, isn't it meant to do infinite loops in 5 seconds? :-P Closes: #196684 * install.pl: Added prompts for SSL cert password on Apache restart at the suggestion of Brian Hunt. * remove.pl: Updated to use the config file parser in apt-cacher-lib.pl rather than the old-style internal parser. Added prompts for SSL cert password on Apache restart. * upgrade.pl: Updated to use the config file parser in apt-cacher-lib.pl rather than the old-style internal parser. -- Jonathan Oxer Tue, 10 Jun 2003 11:35:19 +1000 apt-cacher (0.6-9) unstable; urgency=low * apt-cacher.pl: Daniel Stone contributed a lot to this one, providing me with an earlier version with changes in it to help fix the hated 500 Internal Server Error bug by catching a state where Wget makes a new file rather than truncating, and thus changes the file descriptor out from under us. Those changes were then merged forward to the most recent devel version. Also added 'seek' command to handle reading files of varying length, such as packages that are currently in the process of being downloaded and are not the full length at the time apt-cacher tries to stream them to the client: that patch and a Perl lesson supplied by Adam Moore. Also changed the 'read' call to use sysread, at the suggestion of Andreas Boeckler. All those changes together help prevent the 500 Internal Server Error bug occuring in different situations. Thanks Daniel, Adam and Andreas! Hopefully that stupid bug is gone for good now. Yippee! Closes: #171059 * apt-cacher.pl: More changes provided by Daniel Stone to fix a potential race condition discovered by some very nice detective work by Peter Hawkins. Peter patched his local server, Daniel incorporated the changes into the version he sent me :-) Closes: #180571 * apt-cacher-cleanup.pl: Fixed references to configuration settings using a patch supplied by Stephan Niemz. Thanks Stephan! Closes: #184425 -- Jonathan Oxer Mon, 26 May 2003 14:36:12 +1100 apt-cacher (0.6-8) unstable; urgency=low * apt-cacher-cleanup.pl, apt-cacher-report.pl, apt-cacher.pl, apt-cacher-lib.pl: fixes by Jeff Williams to make the config parser use hashrefs. Thanks again Jeff! -- Jonathan Oxer Tue, 18 Feb 2003 11:00:56 +1100 apt-cacher (0.6-7) unstable; urgency=low * debian/apt-cacher.logrotate: added a logrotate config to roll access and error logs monthly. Thanks to Jacob Luna Lundberg for the suggestion! * apt-cacher-cleanup.pl: converted logfile reader to use proper Perl rather than kludgy shell, and to read the most recently rotated log if one exists. * apt-cacher-lib.pl: a new library for apt-cacher that so far only contains the config file parser, so that a lot of duplicate code can be ripped out of the main scripts. Based on a patch sent in by Jeff Williams. Thanks Jeff! -- Jonathan Oxer Mon, 10 Feb 2003 15:16:41 +1100 apt-cacher (0.6-6) unstable; urgency=low * apt-cacher-cleanup.pl: major rewrite by Jacob Luna Lundberg, including changes to handle varying header length of compressed packages, use of Compress::Zlib if available, and nicer handling of an empty cache (no longer generates output if the cache is empty). Thanks Jacob! Closes: #172732 -- Jonathan Oxer Fri, 13 Dec 2002 16:12:31 +1100 apt-cacher (0.6-5) unstable; urgency=low * remove.pl: added check for existence of apache and apache-ssl config files prior to attempted un-configuration (thanks to Blars Blarson for the patch!) Closes: #168825 -- Jonathan Oxer Fri, 22 Nov 2002 16:12:10 +1100 apt-cacher (0.6-4) unstable; urgency=low * debian/control: Added apache-ssl as an alternative Depends to apache * install.pl: Checks for existence of startup scripts for both apache and apache-ssl, and restarts either / both * install.pl: Checks for and patches config files for both apache and apache-ssl * remove.pl: Checks for existence of startup scripts for both apache and apache-ssl, and restarts either / both * remove.pl: Removes patches applied to both apache and apache-ssl Closes: #167521 -- Jonathan Oxer Mon, 4 Nov 2002 15:14:56 +1100 apt-cacher (0.6-3) unstable; urgency=low * Added cache cleanup script to flush out old .debs from the cache. Woohoo, at last! Closes: #159320 * debian/control: Added Depends: Bzip2 because the cache cleaning script needs to use zgrep -- Jonathan Oxer Thu, 31 Oct 2002 17:47:36 +1100 apt-cacher (0.6-2) unstable; urgency=low * debian/control: Added Depends: Apache, Wget, Perl (oops!) Closes: #159832 * debian/postinst: Removed doc symlink -- Jonathan Oxer Fri, 18 Oct 2002 16:08:27 +1000 apt-cacher (0.6-1) unstable; urgency=low * apt-cacher.pl: Improved handling of 404 (file not found) errors: fetcher now returns a 404 to the client when it detects a 404 from the nominated source, rather than letting the client time out. Patch submitted by Jacob Luna Lundberg. * debian/install.pl: Fixes to the install script so that it complies with the new logdir directive. Closes: #159605 * debian/man.1: Updates to the man page to reflect the config file changes. * debian/upgrade.pl: Split off portions of the remove script to create a new upgrade script to prevent the cache contents being nuked when upgrading. * apt-cacher.pl: Major cosmetic update to the info page that is displayed when apt-cacher is called with no arguments, and addition of config values to info page for debug purposes. * apt-cacher-report.pl: Addition of script to parse the access log and generate a traffic report. * apt-cacher.conf: Addition of 'generate_reports' directive. * apt-cacher.conf: Addition of 'admin_email' directive for display in info page. * debian/apt-cacher: Daily cron job to run the report script if the generate_reports directive is set. -- Jonathan Oxer Fri, 6 Sep 2002 09:21:34 +1000 apt-cacher (0.5-6) unstable; urgency=low * Improved package description at Martin Schulze's suggestion. Closes: #159342 * Fetcher now sets mod time on downloaded files to the current time to prevent them being prematurely expired (patch submitted by Raphael Goulais ). Closes: #159314 * Modified config file format to remove 'accesslog' and 'errorlog' directives, and replace them with a 'logdir' directive. * Modified command parser to provide framework for the traffic reporting facilities intended for a future release. * Updated postinst and prerm scripts to set/remove the doc symlink for the transition to FHS. -- Jonathan Oxer Tue, 3 Sep 2002 17:19:27 +1000 apt-cacher (0.5-5) unstable; urgency=low * Closes: #151109 (original ITP) -- Jonathan Oxer Mon, 19 Aug 2002 09:35:05 +1000 apt-cacher (0.5-4) unstable; urgency=low * Minor bugfixes for the configuration file parser. -- Jonathan Oxer Tue, 23 Apr 2002 21:37:02 +1000 apt-cacher (0.5-3) unstable; urgency=low * Added support for working through an external http proxy such as Squid (useful when your ISP blocks port 80). -- Jonathan Oxer Tue, 23 Apr 2002 18:09:38 +1000 apt-cacher (0.5-2) unstable; urgency=low * Updated config file parser to handle comments, blank lines and spaces. -- Jonathan Oxer Tue, 23 Apr 2002 17:49:03 +1000 apt-cacher (0.5-1) unstable; urgency=low * Initial release as a Debian package. -- Jonathan Oxer Fri, 5 Apr 2002 23:30:07 +1000