On Sat, 12 Apr 2014 13:44:30 -0400 Tanstaafl <tansta...@libertytrek.org> wrote:
> Last - I merely asked if this was *feasible*. It was unclear to me whether this is in the context of it being feasible for (other) users, or whether this is in the context of making it work in Portage; I've not replied earlier because I thought it was in the first context, but I can shed some details on implementation. For the releases to the Portage tree; this would have to be deduced from the release lines ChangeLog, as there is no other file that yields details on changes that happened to the package. For a demonstration of those release lines: $ grep '^*' /usr/portage/sys-kernel/gentoo-sources/ChangeLog | tac ... *gentoo-sources-3.13.9 (04 Apr 2014) *gentoo-sources-3.4.86 (03 Apr 2014) *gentoo-sources-3.10.36 (04 Apr 2014) *gentoo-sources-3.12.16 (04 Apr 2014) Stabilizations would be harder, as they require to parse the log messages in the ChangeLog; it is not standardized to be parsed out. Portage does have functionality to obtain the ChangeLogs entries between two versions; the -l parameter (--changelog) does that, so, the information is not far away. The implementation might need some specific Portage and Python knowledge though; so, I'd suggest a feature request for one of the Portage developers to look into this. It might work to try to grep those ChangeLog release lines from that output. We can however proceed and try to see if we can do this external. If you have app-portage/eix, a list of updates is easy to obtain: $ eix -Iuc ... [U] media-libs/freetype (2.5.0.1(2)@04/11/2014 -> (~)2.5.3-r1(2)): A high-quality and portable font engine [U] media-plugins/gst-plugins-faac (0.10.23(0.10)@01/31/2013 -> 0.10.23(0.10)^t 1.2.3(1.0)^t): plugin for gstreamer [U] media-plugins/gst-plugins-soup (0.10.31(0.10)@12/04/2012 -> 0.10.31(0.10)^t 1.2.3(1.0)^t): GStreamer plugin for HTTP client source ... We can use this information to write a fast (~1s) bash shell script: https://gist.github.com/TomWij/a813e9bf0314007bf0da That can produce a list of upgrades and when the ebuilds were released: $ bash ./when-released.sh ... *freetype-2.5.3-r1 (16 Mar 2014) *gst-plugins-faac-1.2.3 (01 Mar 2014) *gst-plugins-soup-1.2.3 (16 Feb 2014) ... One issue I see though is that it gives back versions of slots in which you have nothing installed; it requires much more logic, unless eix can somehow do this I suppose that logic would be interaction with Portage. And if we go down that road, we might just as well ask for it to be implemented; unless someone knowledgeable can help us further. Although besides that problem, it otherwise does work quite well here; if not, feel free to inform and we can try to further improve matching. (PS: Yes, it's quite hackish, no shebang, no POSIX compliance; it is meant as an PoC example, further improvements can be done later) -- With kind regards, Tom Wijsman (TomWij) Gentoo Developer E-mail address : tom...@gentoo.org GPG Public Key : 6D34E57D GPG Fingerprint : C165 AF18 AB4C 400B C3D2 ABF0 95B2 1FCD 6D34 E57D