# ChangeLog for net-zope/zope-tal
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/net-zope/zope-tal/ChangeLog,v 1.4 2010/02/14 19:16:51 armin76 Exp $

  14 Feb 2010; Raúl Porcel <armin76@gentoo.org> zope-tal-3.5.2.ebuild:
  Add ~alpha/~sparc wrt #297734

  22 Jan 2010; Brent Baude <ranger@gentoo.org> ChangeLog:
  Marking zope-tal-3.5.2 ~ppc for bug 297734

  16 Jan 2010; Christian Faulhammer <fauli@gentoo.org>
  zope-tal-3.5.2.ebuild:
  keyworded ~arch for x86, bug 297734

*zope-tal-3.5.2 (31 Oct 2009)

  31 Oct 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
  +zope-tal-3.5.2.ebuild, +metadata.xml:
  Initial addition. Ebuild written by me.

