apt-cacher (1.7.13+deb9u1) stretch; urgency=medium

  * Backport fix for CVE-2017-7443: Prevent HTTP response splitting with
    encoded newlines in request.  (closes: #858739)

 -- Mark Hindley <mark@hindley.org.uk>  Mon, 24 Apr 2017 19:38:26 +0100

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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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
    <victory.deb@gmail.com> (closes: #691942).

 -- Mark Hindley <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <pere@hungry.com> (closes: #541378)
  * Fix handling of Keep-Alive and multiple hosts in path_map. Debugging
    by "Daniel Richard G." <skunk@iSKUNK.ORG> (closes: #517761, #516525)
  * Fix "400 No request Received" caused by incomplete input line. Patch
    from "Daniel Richard G." <skunk@iSKUNK.ORG> (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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <mark@hindley.org.uk>  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 <dc2@clauss.dyndns.org> (closes: #385961)
  * apt-cacher-cleanup: just delete empty .gz files (closes: #403453).

 -- Mark Hindley <mark@hindley.org.uk>  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 <blade@debian.org>  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 <blade@debian.org>  Wed,  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  Sat,  6 Aug 2005 15:58:31 +0200

apt-cacher (1.0.1) unstable; urgency=low

  * passing EXTRAOPT in the init script

 -- Eduard Bloch <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <rob@tenfoot.org.uk> (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
    <adreyer@adreyer.de> 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 <blade@debian.org>  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 <blade@debian.org>  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 &nbsp; to not break the lines on extreme low-res monitors
    (closes: #310387)

 -- Eduard Bloch <blade@debian.org>  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 <blade@debian.org>  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 <blade@debian.org>  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 <bug-reports@marshadder.uklinux.net> 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 <blade@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <lupe@lupe-christoph.de>.
    Closes: #225505
  * apt-cacher-report.pl: Fix for incorrect date handling when
    generating reports. Patch by Paul Schulz <pschulz@foursticks.com>.
    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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  Thu, 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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <jon@debian.org>  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 <raphael@nicedays.net>).
    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 <jon@debian.org>  Tue,  3 Sep 2002 17:19:27 +1000

apt-cacher (0.5-5) unstable; urgency=low

  * Closes: #151109 (original ITP)

 -- Jonathan Oxer <jon@debian.org>  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 <jon@ivt.com.au>  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 <jon@ivt.com.au>  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 <jon@ivt.com.au>  Tue, 23 Apr 2002 17:49:03 +1000

apt-cacher (0.5-1) unstable; urgency=low

  * Initial release as a Debian package.

 -- Jonathan Oxer <jon@ivt.com.au>  Fri,  5 Apr 2002 23:30:07 +1000
