if (!logfile_name.empty())
{
term_out = fopen(logfile_name.c_str(),"a");
+ if (term_out == NULL)
+ return _error->WarningE(_("Could not open file '%s'"), logfile_name.c_str());
+
chmod(logfile_name.c_str(), 0600);
- fprintf(term_out, "\n\nLog started: ");
- fprintf(term_out, "%s", timestr);
- fprintf(term_out, "\n");
- // output current time
- char outstr[200];
- time_t t = time(NULL);
- struct tm *tmp = localtime(&t);
- strftime(outstr, sizeof(outstr), "%F %T", tmp);
- fprintf(term_out, "\nLog started: %s\n", outstr);
++ fprintf(term_out, "\nLog started: %s\n", timestr);
}
+
+ // write
+ string history_name = flCombine(logdir,
+ _config->Find("Dir::Log::History"));
+ if (!history_name.empty())
+ {
+ history_out = fopen(history_name.c_str(),"a");
+ chmod(history_name.c_str(), 0644);
+ fprintf(history_out, "\nStart-Date: %s\n", timestr);
+ string remove, purge, install, upgrade, downgrade;
+ for (pkgCache::PkgIterator I = Cache.PkgBegin(); I.end() == false; I++)
+ {
+ if (Cache[I].NewInstall())
+ install += I.Name() + string(" (") + Cache[I].CandVersion + string("), ");
+ else if (Cache[I].Upgrade())
+ upgrade += I.Name() + string(" (") + Cache[I].CurVersion + string(", ") + Cache[I].CandVersion + string("), ");
+ else if (Cache[I].Downgrade())
+ downgrade += I.Name() + string(" (") + Cache[I].CurVersion + string(", ") + Cache[I].CandVersion + string("), ");
+ else if (Cache[I].Delete())
+ {
+ if ((Cache[I].iFlags & pkgDepCache::Purge) == pkgDepCache::Purge)
+ purge += I.Name() + string(" (") + Cache[I].CurVersion + string("), ");
+ else
+ remove += I.Name() + string(" (") + Cache[I].CurVersion + string("), ");
+ }
+ }
+ WriteHistoryTag("Install", install);
+ WriteHistoryTag("Upgrade", upgrade);
+ WriteHistoryTag("Downgrade",downgrade);
+ WriteHistoryTag("Remove",remove);
+ WriteHistoryTag("Purge",purge);
+ fflush(history_out);
+ }
+
return true;
}
/*}}}*/
- apt (0.7.25.1) UNRELEASED; urgency=low
+ apt (0.7.25.4) UNRELEASED; urgency=low
- -- Christian Perrier <bubulle@debian.org> Wed, 03 Feb 2010 20:08:19 +0100
+ [ Ivan Masár ]
+ * Slovak translation update. Closes: #568294
++
++ [ Michael Vogt ]
+ * merged lp:~mvo/apt/history
+ - this writes a /var/log/apt/history tagfile that contains details
+ from the transaction (complements term.log)
++ * methods/http.cc:
++ - add cache-control headers even if no cache is given to allow
++ adding options for intercepting proxies
++ - add Acquire::http::ProxyAutoDetect configuration that
++ can be used to call a external helper to figure out the
++ proxy configuration and return it to apt via stdout
++ (this is a step towards WPAD and zeroconf/avahi support)
+
- - install the header system.h with a new name to be able to use
++ -- Michael Vogt <michael.vogt@ubuntu.com> Fri, 18 Dec 2009 16:54:18 +0100
+
+ apt (0.7.25.3) unstable; urgency=low
+
+ [ Christian Perrier ]
+ * Italian translation update. Closes: #567532
+
+ [ David Kalnischkies ]
+ * apt-pkg/contrib/macros.h:
++ - install the header system.h with a new name to be able to use
+ it in other headers (Closes: #567662)
+ * cmdline/acqprogress.cc:
+ - Set Mode to Medium so that the correct prefix is used.
+ Thanks Stefan Haller for the patch! (Closes: #567304 LP: #275243)
+ * ftparchive/writer.cc:
+ - generate sha1 and sha256 checksums for dsc (Closes: #567343)
* cmdline/apt-get.cc:
- - fix apt-get source pkg=version regression (closes: #561971)
+ - don't mark as manually if in download only (Closes: #468180)
-
++
+ -- Michael Vogt <mvo@debian.org> Mon, 01 Feb 2010 18:41:15 +0100
+
+ apt (0.7.25.2) unstable; urgency=low
+
+ [ Michael Vogt ]
* apt-pkg/contrib/cdromutl.cc:
- fix UnmountCdrom() fails, give it a bit more time and try
the umount again
* cmdline/apt-cdrom.cc:
- add new --auto-detect option that uses libudev to figure out
the cdrom/mount-point
- * methods/http.cc:
- - add cache-control headers even if no cache is given to allow
- adding options for intercepting proxies
- - add Acquire::http::ProxyAutoDetect configuration that
- can be used to call a external helper to figure out the
- proxy configuration and return it to apt via stdout
- (this is a step towards WPAD and zeroconf/avahi support)
+ * cmdline/apt-mark:
+ - merge fix from Gene Cash that supports markauto for
+ packages that are not in the extended_states file yet
+ (closes: #534920)
+ * ftparchive/writer.{cc,h}:
- - merge crash fix for apt-ftparchive on hurd, thanks to
++ - merge crash fix for apt-ftparchive on hurd, thanks to
+ Samuel Thibault for the patch (closes: #566664)
- -- Michael Vogt <michael.vogt@ubuntu.com> Fri, 18 Dec 2009 16:54:18 +0100
+ [ David Kalnischkies ]
+ * apt-pkg/contrib/fileutl.cc:
+ - Fix the newly introduced method GetListOfFilesInDir to not
+ accept every file if no extension is enforced
+ (= restore old behaviour). (Closes: #565213)
+ * apt-pkg/policy.cc:
+ - accept also partfiles with "pref" file extension as valid
+ * apt-pkg/contrib/configuration.cc:
+ - accept also partfiles with "conf" file extension as valid
+ * doc/apt.conf.5.xml:
+ - reorder description and split out syntax
+ - add partfile name convention (Closes: #558348)
+ * doc/apt_preferences.conf.5.xml:
+ - describe partfile name convention also here
+ * apt-pkg/deb/dpkgpm.cc:
+ - don't segfault if term.log file can't be opened.
+ Thanks Sam Brightman for the patch! (Closes: #475770)
+ * doc/*:
+ - replace the per language addendum with a global addendum
+ - add a explanation why translations include (maybe) english
+ parts to the new global addendum (Closes: #561636)
+ * apt-pkg/contrib/strutl.cc:
+ - fix malloc asseration fail with ja_JP.eucJP locale in
+ apt-cache search. Thanks Kusanagi Kouichi! (Closes: #548884)
+
+ [ Christian Perrier ]
+ * French translation update
+
+ -- Michael Vogt <mvo@debian.org> Wed, 27 Jan 2010 16:16:10 +0100
+
+ apt (0.7.25.1) unstable; urgency=low
+
+ [ Christian Perrier ]
+ * French manpage translation update
+ * Russian translation update by Yuri Kozlov
+ Closes: #564171
-
++
+ [Chris Leick]
+ * spot & fix various typos in all manpages
+ * German manpage translation update
+
+ [ David Kalnischkies ]
+ * cmdline/apt-cache.cc:
+ - remove translatable marker from the "%4i %s\n" string
+ * buildlib/po4a_manpage.mak:
+ - instruct debiandoc to build files with utf-8 encoding
+ * buildlib/tools.m4:
+ - fix some warning from the buildtools
+ * apt-pkg/acquire-item.cc:
+ - add configuration PDiffs::Limit-options to not download
+ too many or too big patches (Closes: #554349)
+ * debian/control:
+ - let all packages depend on ${misc:Depends}
+ * share/*-archive.gpg:
+ - remove the horrible outdated files. We already depend on
+ the keyring so we don't need to ship our own version
+ * cmdline/apt-key:
+ - errors out if wget is not installed (Closes: #545754)
+ - add --keyring option as we have now possibly many
+ * methods/gpgv.cc:
+ - pass all keyrings (TrustedParts) to gpgv instead of
+ using only one trusted.gpg keyring (Closes: #304846)
+ * methods/https.cc:
+ - finally merge the rest of the patchset from Arnaud Ebalard
+ with the CRL and Issuers options, thanks! (Closes: #485963)
+ * apt-pkg/deb/debindexfile.cc, apt-pkg/pkgcachegen.cc:
+ - add debug option Debug::pkgCacheGen
+
+ [ Michael Vogt ]
+ * cmdline/apt-get.cc:
+ - merge fix for apt-get source pkg=version regression
+ (closes: #561971)
+ * po/ru.po:
+ - merged updated ru.po, thanks to Yuri Kozlov (closes: #564171)
+
+ -- Michael Vogt <mvo@debian.org> Sat, 09 Jan 2010 21:52:36 +0100
apt (0.7.25) unstable; urgency=low