# ChangeLog for net-p2p/vuze
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/net-p2p/vuze/ChangeLog,v 1.31 2010/02/26 12:07:32 fauli Exp $

  26 Feb 2010; Christian Faulhammer <fauli@gentoo.org> vuze-4.3.0.6.ebuild:
  stable x86, bug 302919

*vuze-4.3.1.4-r1 (21 Feb 2010)

  21 Feb 2010; Vlastimil Babka <caster@gentoo.org> +vuze-4.3.1.4-r1.ebuild:
  Revbump to add missing ChangeLog.txt to the jar file. Fixes bug #302058 by
  Hanno Meyer-Thurow <h.mth@web.de>.

*vuze-4.3.1.4 (12 Feb 2010)

  12 Feb 2010; Vlastimil Babka <caster@gentoo.org> -vuze-4.3.1.0.ebuild,
  +vuze-4.3.1.4.ebuild:
  Version bump.

  07 Feb 2010; Markos Chandras <hwoarang@gentoo.org> vuze-4.3.0.6.ebuild:
  Stable on amd64 wrt bug #302919

*vuze-4.3.1.2 (03 Feb 2010)

  03 Feb 2010; Vlastimil Babka <caster@gentoo.org> -vuze-4.3.0.4.ebuild,
  +vuze-4.3.1.2.ebuild:
  Version bump. Adds a patch to correct path to xfs_io for bug #188875.

*vuze-4.3.1.0 (30 Jan 2010)

  30 Jan 2010; Vlastimil Babka <caster@gentoo.org> +vuze-4.3.1.0.ebuild:
  Version bump.

*vuze-4.3.0.6 (22 Jan 2010)

  22 Jan 2010; Vlastimil Babka <caster@gentoo.org> -vuze-4.2.0.4-r1.ebuild,
  +vuze-4.3.0.6.ebuild:
  Version bump.

*vuze-4.3.0.4 (21 Nov 2009)

  21 Nov 2009; Vlastimil Babka <caster@gentoo.org> +vuze-4.3.0.4.ebuild:
  Version bump, bug #293911.

  04 Nov 2009; Markus Meier <maekke@gentoo.org> vuze-4.2.0.8.ebuild:
  amd64/x86 stable, bug #291631

  02 Nov 2009; Vlastimil Babka <caster@gentoo.org> vuze-4.2.0.8.ebuild:
  Add postinst elog messages about bug #259884.

*vuze-4.2.0.8 (28 Sep 2009)

  28 Sep 2009; Vlastimil Babka <caster@gentoo.org>
  -files/patches-3.0.3.4/01_all_remove-osx-and-win32-AzureusRestarterImpl.pa
  tch,
  -files/patches-3.0.3.4/02_all_remove-win32-TorrentListViewsUtils.patch,
  -files/patches-3.0.3.4/03_all_remove-win32-PlatformManagerPluginDelegate.p
  atch,
  -files/patches-3.0.3.4/04_all_remove-osx-and-win32-PlatformManagerFactory.
  patch,
  -files/patches-3.0.3.4/azureus_all_modify-for-use-with-bcprov.patch,
  vuze-3.0.4.2-r1.ebuild, -files/patches-4.1.0.0/remove-osx-platform.diff,
  -files/patches-4.1.0.0/tableimpl-remove-win32-import.diff,
  -files/patches-4.1.0.0/use-jdk-cipher-only.diff, vuze-4.1.0.4.ebuild,
  -files/patches-4.2.0.0/0001-remove-osx-platform.patch,
  -files/patches-4.2.0.0/0002-use-jdk-cipher-only.patch,
  -files/patches-4.2.0.0/0003-disable-core-updater.patch,
  vuze-4.2.0.2.ebuild, -vuze-4.2.0.2-r1.ebuild, -vuze-4.2.0.4.ebuild,
  vuze-4.2.0.4-r1.ebuild, +vuze-4.2.0.8.ebuild, -files/vuze.png:
  Version bump. Cleanup files, move patchsets to distfiles.

*vuze-4.2.0.4-r1 (19 Jul 2009)

  19 Jul 2009; Vlastimil Babka <caster@gentoo.org> +vuze-4.2.0.4-r1.ebuild:
  Revbump to use swt-3.5 as upstream now does.

*vuze-4.2.0.4 (13 Jul 2009)

  13 Jul 2009; Vlastimil Babka <caster@gentoo.org> +vuze-4.2.0.4.ebuild:
  Version bump.

  04 Jul 2009; Brent Baude <ranger@gentoo.org> vuze-4.2.0.2.ebuild:
  Marking vuze-4.2.0.2 ppc64 for bug 271963

*vuze-4.2.0.2-r1 (24 Jun 2009)

  24 Jun 2009; Vlastimil Babka <caster@gentoo.org> -vuze-4.0.0.4.ebuild,
  -files/patches-4.0.0.4/remove-osx-platform.diff,
  -files/patches-4.0.0.4/use-jdk-cipher-only.diff, -vuze-4.2.0.0.ebuild,
  +files/patches-4.2.0.0/0003-disable-core-updater.patch,
  +vuze-4.2.0.2-r1.ebuild:
  Revbump to remove core updater and patcher, advancing progress at bug
  #218959. Thanks to Hanno Meyer-Thurow. Cleanup.

  31 May 2009; Markus Meier <maekke@gentoo.org> vuze-4.2.0.2.ebuild:
  amd64/x86 stable, bug #271963

  27 Apr 2009; Brent Baude <ranger@gentoo.org> vuze-4.1.0.4.ebuild:
  Marking vuze-4.1.0.4 ppc for bug 266956

  19 Apr 2009; Markus Meier <maekke@gentoo.org> vuze-4.1.0.4:
  amd64/x86 stable, bug #266113

  15 Apr 2009; Brent Baude <ranger@gentoo.org> vuze-4.1.0.4.ebuild:
  Marking vuze-4.1.0.4 ppc64 for bug 266113

*vuze-4.2.0.2 (14 Apr 2009)

  14 Apr 2009; Vlastimil Babka <caster@gentoo.org> +vuze-4.2.0.2.ebuild:
  Version bump.

  27 Mar 2009; Vlastimil Babka <caster@gentoo.org>
  +files/patches-4.2.0.0/0001-remove-osx-platform.patch,
  +files/patches-4.2.0.0/0002-use-jdk-cipher-only.patch:
  Add missing patches. Thanks to Paul Mulders <info@mld.demon.nl>

*vuze-4.2.0.0 (19 Mar 2009)

  19 Mar 2009; Vlastimil Babka <caster@gentoo.org>
  +files/patches-4.2.0.0/0001-remove-osx-platform.patch,
  +files/patches-4.2.0.0/0002-use-jdk-cipher-only.patch,
  -vuze-4.1.0.0.ebuild, -vuze-4.1.0.2.ebuild, +vuze-4.2.0.0.ebuild:
  Version bump.

  04 Mar 2009; Vlastimil Babka <caster@gentoo.org> vuze-4.1.0.0.ebuild,
  vuze-4.1.0.2.ebuild, vuze-4.1.0.4.ebuild:
  Remove elog calls that got broken after vuze-coreplugins splitted out.

*vuze-4.1.0.4 (04 Mar 2009)

  04 Mar 2009; Vlastimil Babka <caster@gentoo.org> +vuze-4.1.0.4.ebuild:
  Version bump.

  04 Mar 2009; Vlastimil Babka <caster@gentoo.org> vuze-3.0.4.2-r1.ebuild:
  Use slot dependency for swt, replace the broken built_with_use checks with
  EAPI=2 use dependencies, fixes bug #259091.

*vuze-4.1.0.2 (07 Feb 2009)

  07 Feb 2009; Vlastimil Babka <caster@gentoo.org> +vuze-4.1.0.2.ebuild:
  Version bump.

  06 Feb 2009; Vlastimil Babka <caster@gentoo.org> -files/azureus.png,
  +files/vuze.png, vuze-3.0.4.2-r1.ebuild, vuze-4.0.0.4.ebuild:
  Fix icon, update DESCRIPTION and postinst messages, add azureus symlink.

*vuze-4.0.0.4 (06 Feb 2009)

  06 Feb 2009; Vlastimil Babka <caster@gentoo.org>
  +files/patches-4.0.0.4/remove-osx-platform.diff,
  +files/patches-4.0.0.4/use-jdk-cipher-only.diff, +vuze-4.0.0.4.ebuild:
  Restore the stable version.

*vuze-4.1.0.0 (06 Feb 2009)
*vuze-3.0.4.2-r1 (06 Feb 2009)

  06 Feb 2009; Vlastimil Babka <caster@gentoo.org> +files/vuze-2.5.0.0-pre,
  +files/patches-3.0.3.4/01_all_remove-osx-and-win32-AzureusRestarterImpl.pa
  tch,
  +files/patches-3.0.3.4/02_all_remove-win32-TorrentListViewsUtils.patch,
  +files/patches-3.0.3.4/03_all_remove-win32-PlatformManagerPluginDelegate.p
  atch,
  +files/patches-3.0.3.4/04_all_remove-osx-and-win32-PlatformManagerFactory.
  patch,
  +files/patches-3.0.3.4/azureus_all_modify-for-use-with-bcprov.patch,
  +files/vuze-4.1.0.0-pre, +files/patches-4.1.0.0/remove-osx-platform.diff,
  +files/patches-4.1.0.0/tableimpl-remove-win32-import.diff,
  +files/patches-4.1.0.0/use-jdk-cipher-only.diff, +files/azureus.png,
  +files/build.xml, +files/vuze.desktop, +metadata.xml,
  +vuze-3.0.4.2-r1.ebuild, +vuze-4.1.0.0.ebuild:
  Package move from net-p2p/azureus and version bump. Split the core plugins
  into separate net-p2p/vuze-coreplugins package and PDEPEND on it.

  07 Jan 2009; Brent Baude <ranger@gentoo.org> azureus-4.0.0.4.ebuild:
  Marking azureus-4.0.0.4 ppc64 for bug 234997

  04 Jan 2009; Markus Meier <maekke@gentoo.org> azureus-4.0.0.4.ebuild:
  amd64/x86 stable, bug #234997

*azureus-4.0.0.4 (21 Nov 2008)

  21 Nov 2008; Vlastimil Babka <caster@gentoo.org> +azureus-4.0.0.4.ebuild:
  Version bump.

  04 Nov 2008; Vlastimil Babka <caster@gentoo.org> azureus-4.0.0.2.ebuild:
  Raise max heap size on x86 to 192MB due to problems with ibm-jdk-bin-1.6,
  bug #245483.

*azureus-4.0.0.2 (02 Nov 2008)
*azureus-3.1.1.0-r1 (02 Nov 2008)

  02 Nov 2008; Vlastimil Babka <caster@gentoo.org>
  -files/azureus-bcprov-1.35.patch,
  -files/fedora-2.5.0.0/azureus-cache-size.patch,
  -files/fedora-2.5.0.0/azureus-no-restart.patch,
  -files/fedora-2.5.0.0/azureus-remove-manifest-classpath.patch,
  -files/fedora-2.5.0.0/azureus-remove-win32-PlatformManagerUpdateChecker.pa
  tch, -files/fedora-2.5.0.0/azureus-remove-win32-osx-platforms.patch,
  -files/fedora-2.5.0.4/azureus-cache-size.patch,
  -files/fedora-2.5.0.4/azureus-no-restart.patch,
  -files/fedora-2.5.0.4/azureus-remove-manifest-classpath.patch,
  -files/fedora-2.5.0.4/azureus-remove-win32-PlatformManagerUpdateChecker.pa
  tch, -files/fedora-2.5.0.4/azureus-remove-win32-osx-platforms.patch,
  +files/azureus-3.1.1.0-pre, +files/azureus-4.0.0.2-pre,
  +files/patches-4.0.0.2/remove-osx-platform.diff,
  +files/patches-4.0.0.2/use-jdk-cipher-only.diff, -files/build.xml,
  -azureus-2.5.0.4-r1.ebuild, -azureus-3.0.5.0-r1.ebuild,
  +azureus-3.1.1.0-r1.ebuild, +azureus-4.0.0.2.ebuild:
  Version bump to 4.0.0.2, bug #242520. Uses EAPI=2 use deps for swt. Now
  uses shared plugin directory for upstream-bundled core plugins which fixes
  bug #219177 and #140372. Fixed also console UI and revbumped 3.1.1.0-r1 to
  include the fix as well for possibly sooner stable candidate - bug
  #219103. Cleanup old and unperspective versions.

*azureus-3.1.1.0 (16 Aug 2008)

  25 Oct 2008; Pieter Van den Abeele <pvdabeel@gentoo.org> azureus-3.1.1.0.ebuild:
  Keyworded ~ppc and ~ppc64. Closes bug #237829 

  16 Aug 2008; Vlastimil Babka <caster@gentoo.org>
  +files/patches-3.1.1.0/remove-osx-platform.diff,
  +files/patches-3.1.1.0/use-jdk-cipher-only.diff, metadata.xml,
  +azureus-3.1.1.0.ebuild:
  Version bump. Based on contributions from geki in java-overlay and Thomas
  Axelsson in bug 229061. Problems loading dashboard (does not affect
  torrents) are problem of swt tracked in bug 234934.

  21 Apr 2008; Petteri Räty <betelgeuse@gentoo.org> azureus-3.0.5.2.ebuild:
  Add back memory limit increasing. Should fix bug #218681.

*azureus-3.0.5.2 (20 Apr 2008)

  20 Apr 2008; Petteri Räty <betelgeuse@gentoo.org>
  +files/azureus-3.0.5.2-pre,
  +files/patches-3.0.5.2/remove-osx-platform.patch,
  +files/patches-3.0.5.2/use-jdk-cipher-only.patch, +azureus-3.0.5.2.ebuild:
  Version bump.

*azureus-3.0.5.0-r1 (03 Apr 2008)

  03 Apr 2008; Vlastimil Babka <caster@gentoo.org> -azureus-3.0.5.0.ebuild,
  +azureus-3.0.5.0-r1.ebuild:
  Revbump to change swt slot to 3.4, bug #214012.

*azureus-3.0.5.0 (03 Apr 2008)

  03 Apr 2008; Petteri Räty <betelgeuse@gentoo.org>
  +azureus-3.0.5.0.ebuild:
  Version bump. Fixes bug #213641.

  17 Mar 2008; Petteri Räty <betelgeuse@gentoo.org>
  -azureus-3.0.3.4.ebuild, -azureus-3.0.4.2.ebuild:
  Delete some old versions.

  16 Mar 2008; Kenneth Prugh <ken69267@gentoo.org>
  azureus-3.0.4.2-r1.ebuild:
  amd64 stable, bug #212667

  10 Mar 2008; Christian Faulhammer <opfer@gentoo.org>
  azureus-3.0.4.2-r1.ebuild:
  filter jikes

  08 Mar 2008; Markus Meier <maekke@gentoo.org> azureus-3.0.4.2-r1.ebuild:
  unquote A, x86 stable, bug #212667

  08 Mar 2008; nixnut <nixnut@gentoo.org> azureus-3.0.4.2-r1.ebuild:
  Stable on ppc wrt bug 212667

*azureus-3.0.4.2-r1 (03 Jan 2008)

  03 Jan 2008; Petteri Räty <betelgeuse@gentoo.org>
  +azureus-3.0.4.2-r1.ebuild:
  Set MOZ_PLUGIN_PATH environment variable so that flash works properly in the
  Vuze UI. Add instructions how to switch between different UIs. Fixes bug
  #204132.

*azureus-3.0.4.2 (28 Dec 2007)

  28 Dec 2007; Petteri Räty <betelgeuse@gentoo.org>
  +azureus-3.0.4.2.ebuild:
  Version bump. Fixes bug #201607 and bug #203432.

  23 Nov 2007; Vlastimil Babka <caster@gentoo.org> azureus-3.0.3.4.ebuild:
  Pass file lists to ejavac and jar via tmp files to prevent too long argument
  list - bug #200072.

  22 Nov 2007; Petteri Räty <betelgeuse@gentoo.org> files/azureus.desktop:
  Fix stuff reported by desktop-file-validate.

  22 Nov 2007; Petteri Räty <betelgeuse@gentoo.org>
  -azureus-2.5.0.0-r3.ebuild, -azureus-2.5.0.4.ebuild:
  Delete old ebuilds.

*azureus-3.0.3.4 (22 Nov 2007)

  22 Nov 2007; Petteri Räty <betelgeuse@gentoo.org>
  +files/patches-3.0.3.4/01_all_remove-osx-and-win32-AzureusRestarterImpl.pa
  tch,
  +files/patches-3.0.3.4/02_all_remove-win32-TorrentListViewsUtils.patch,
  +files/patches-3.0.3.4/03_all_remove-win32-PlatformManagerPluginDelegate.p
  atch,
  +files/patches-3.0.3.4/04_all_remove-osx-and-win32-PlatformManagerFactory.
  patch,
  +files/patches-3.0.3.4/azureus_all_modify-for-use-with-bcprov.patch,
  +azureus-3.0.3.4.ebuild:
  Version bump. Thanks to people in bug #184101.

  16 Nov 2007; Petteri Räty <betelgeuse@gentoo.org>
  azureus-2.5.0.4-r1.ebuild:
  Call fdo-mime_mime_database_update in pkg_postrm instead of pkg_prerm.

  05 Oct 2007; William L. Thomson Jr. <wltjr@gentoo.org>
  azureus-2.5.0.4-r1.ebuild:
  Added use ppc -Xmx setting to prevent oom, per bug #194771

  17 Jun 2007; Christian Faulhammer <opfer@gentoo.org>
  azureus-2.5.0.4-r1.ebuild:
  stable x86, bug 172657

  16 Jun 2007; Tobias Scherbaum <dertobi123@gentoo.org>
  azureus-2.5.0.4-r1.ebuild:
  ppc stable, bug #172657

  14 Jun 2007; Christoph Mende <angelos@gentoo.org>
  azureus-2.5.0.4-r1.ebuild:
  Stable on amd64 wrt bug 172657

  20 May 2007; Vlastimil Babka <caster@gentoo.org>
  azureus-2.5.0.4-r1.ebuild:
  Don't force ecj compiler as requested in bug #145338. Go back to using 256m
  limit for amd64 and 128m for x86. Should now work that ANT_OPTS is exported.

  08 Apr 2007; Joseph Jezak <josejx@gentoo.org> azureus-2.5.0.4.ebuild,
  azureus-2.5.0.4-r1.ebuild:
  Marked ~ppc for bug #170955.

  29 Mar 2007; William L. Thomson Jr. <wltjr@gentoo.org>
  +files/azureus-bcprov-1.35.patch,
  -files/fedora-2.5.0.4/azureus-bcprov-1.35.patch,
  azureus-2.5.0.4-r1.ebuild:
  Moved recently added patch since it was being applied to stable version

*azureus-2.5.0.4-r1 (29 Mar 2007)

  29 Mar 2007; William L. Thomson Jr. <wltjr@gentoo.org>
  +files/fedora-2.5.0.4/azureus-bcprov-1.35.patch,
  +azureus-2.5.0.4-r1.ebuild:
  Added patch for changes in bcprov due to revision bump per bug #172657

  15 Mar 2007; Simon Stelling <blubb@gentoo.org> azureus-2.5.0.4.ebuild:
  stable on amd64; bug 170955

  15 Mar 2007; Christian Faulhammer <opfer@gentoo.org>
  azureus-2.5.0.4.ebuild:
  stable x86, bug 170955

  08 Mar 2007; Petteri Räty <betelgeuse@gentoo.org>
  -files/digest-azureus-2.5.0.0-r2, -files/digest-azureus-2.5.0.2, Manifest:
  Cleanup.

  08 Mar 2007; Petteri Räty <betelgeuse@gentoo.org>
  -azureus-2.5.0.0-r2.ebuild, -azureus-2.5.0.2.ebuild:
  Cleanup.

  10 Feb 2007; Petteri Räty <betelgeuse@gentoo.org>
  files/azureus-2.5.0.0-pre:
  Made the launcher handle upgrades from 2.3* better.

  10 Feb 2007; nixnut <nixnut@gentoo.org> azureus-2.5.0.0-r3.ebuild:
  Stable on ppc wrt bug 113389

*azureus-2.5.0.4 (26 Jan 2007)

  26 Jan 2007; Vlastimil Babka <caster@gentoo.org>
  +files/fedora-2.5.0.4/azureus-cache-size.patch,
  +files/fedora-2.5.0.4/azureus-no-restart.patch,
  +files/fedora-2.5.0.4/azureus-remove-manifest-classpath.patch,
  +files/fedora-2.5.0.4/azureus-remove-win32-PlatformManagerUpdateChecker.pa
  tch, +files/fedora-2.5.0.4/azureus-remove-win32-osx-platforms.patch,
  +azureus-2.5.0.4.ebuild:
  Version bump, bug #163941. Thanks to Kalidarn <dcecchin@gmail.com> for
  finding out the distfile capitalization change (even the links on homepage
  and sf.net were wrong, fun) and Joshua A. Manis <semhirage@hotmail.com> for
  updated platform patch.

*azureus-2.5.0.2 (20 Jan 2007)

  20 Jan 2007; Petteri Räty <betelgeuse@gentoo.org>
  +azureus-2.5.0.2.ebuild:
  Version bump. Fixes bug #162125. Thanks to caster. Dropping ppc keywords
  because of bug #148999.

  07 Dec 2006; Diego Pettenò <flameeyes@gentoo.org>
  azureus-2.5.0.0-r3.ebuild:
  Add ~x86-fbsd keyword.

  20 Oct 2006; Petteri Räty <betelgeuse@gentoo.org>
  -files/azureus-gentoo-2.3.0.6.sh,
  -files/azureus-2.4.0.2-popup-hide-debian.patch,
  -files/azureus-2.4.0.2-pre, -files/SWTThread.java,
  -files/UpdaterPatcher.java, -files/fedora/azureus-cache-size.patch,
  -files/fedora/azureus-no-restart.patch,
  -files/fedora/azureus-remove-manifest-classpath.patch,
  -files/fedora/azureus-remove-win32-PlatformManagerUpdateChecker.patch,
  -files/fedora/azureus-remove-win32-osx-platforms.patch,
  -azureus-2.3.0.6-r1.ebuild, -azureus-2.4.0.2-r2.ebuild,
  -azureus-2.5.0.0.ebuild, -azureus-2.5.0.0-r1.ebuild,
  azureus-2.5.0.0-r2.ebuild:
  Removed old versions.

  20 Oct 2006; Simon Stelling <blubb@gentoo.org> azureus-2.5.0.0-r3.ebuild:
  stable on amd64

  17 Oct 2006; Joshua Jackson <tsunam@gentoo.org> azureus-2.5.0.0-r3.ebuild:
  Stable x86; bug #113389

*azureus-2.5.0.0-r3 (14 Oct 2006)

  14 Oct 2006; Petteri Räty <betelgeuse@gentoo.org>
  +azureus-2.5.0.0-r3.ebuild:
  Fixed bug #145908. Thanks to Justin <jd2666+genbug@gmail.com>.

*azureus-2.5.0.0-r2 (10 Sep 2006)

  10 Sep 2006; Petteri Räty <betelgeuse@gentoo.org>
  files/azureus-2.5.0.0-pre, +azureus-2.5.0.0-r2.ebuild:
  With 2.5.0.0-r1 it could happen that UI was not set leading to Azureus
  not starting. Now the startup script sets that to swt if the variable
  is empty. Fixes bug #147059.

*azureus-2.5.0.0-r1 (09 Sep 2006)

  09 Sep 2006; Petteri Räty <betelgeuse@gentoo.org>
  +files/azureus-2.5.0.0-pre, +azureus-2.5.0.0-r1.ebuild:
  The UI and JAVA_OPTIONS settings in the gentoo.config configuration file
  work again. Fixes bug #146788.

  27 Aug 2006; Petteri Räty <betelgeuse@gentoo.org> azureus-2.5.0.0.ebuild:
  Changed to depend on >=dev-java/swt-3.2-r1 to fix bug #140778.

  27 Aug 2006; Petteri Räty <betelgeuse@gentoo.org>
  -azureus-2.4.0.2.ebuild, -azureus-2.4.0.2-r1.ebuild:
  Removed old revisions.

*azureus-2.5.0.0 (27 Aug 2006)

  27 Aug 2006; Petteri Räty <betelgeuse@gentoo.org>
  +files/fedora-2.5.0.0/azureus-cache-size.patch,
  +files/fedora-2.5.0.0/azureus-no-restart.patch,
  +files/fedora-2.5.0.0/azureus-remove-manifest-classpath.patch,
  +files/fedora-2.5.0.0/azureus-remove-win32-PlatformManagerUpdateChecker.pa
  tch, +files/fedora-2.5.0.0/azureus-remove-win32-osx-platforms.patch,
  +azureus-2.5.0.0.ebuild:
  Version bump. Fixes bug #144760. Thanks to Triffid Hunter
  <triffid_hunter@funkmunch.net> and Caster <caster@matfyz.cz>.

  20 Aug 2006; Petteri Räty <betelgeuse@gentoo.org>
  azureus-2.4.0.2-r2.ebuild:
  Changed dependencies to >=dev-java/swt-3.2 to resolve problems on amd64.
  Should fix bug #135835.

  16 Aug 2006; Joshua Nichols <nichoj@gentoo.org> azureus-2.3.0.6-r1.ebuild,
  azureus-2.4.0.2-r2.ebuild:
  Fixed missing dependency on app-arch/zip when USE=source

*azureus-2.4.0.2-r2 (11 Aug 2006)

  11 Aug 2006; Petteri Räty <betelgeuse@gentoo.org> files/azureus.desktop,
  +azureus-2.4.0.2-r2.ebuild:
  Added MimeType for application/x-bittorrent to the installed desktop entry.
  Fixes bug #143486. Thanks to <nathanegge@yahoo.com>.

  05 Aug 2006; Tobias Scherbaum <dertobi123@gentoo.org>
  azureus-2.4.0.2-r1.ebuild:
  Added ~ppc, bug #141528

*azureus-2.4.0.2-r1 (01 Aug 2006)

  01 Aug 2006; Joshua Nichols <nichoj@gentoo.org>
  +files/azureus-2.4.0.2-popup-hide-debian.patch,
  +azureus-2.4.0.2-r1.ebuild:
  Applies a patch, yanked from debian, which addresses pop ups not going away.
  Fixes bug #132578

  31 Jul 2006; Joshua Nichols <nichoj@gentoo.org> azureus-2.4.0.2.ebuild:
  Keyworded ~amd64. Now forces use of ecj for compilation on amd64 to get
  around problems with running out of memory. Bug #141528

  27 Jul 2006; Joshua Nichols <nichoj@gentoo.org> files/azureus.png,
  azureus-2.4.0.2.ebuild:
  Changed ant_src_unpack to src_unpack

  23 Jul 2006; Joshua Nichols <nichoj@gentoo.org> files/azureus.png:
  Updated icon for bug #131050

*azureus-2.4.0.2 (23 Jul 2006)

  23 Jul 2006; Joshua Nichols <jnichols@gentoo.org>
  +files/azureus-2.4.0.2-pre, +files/fedora/azureus-cache-size.patch,
  +files/fedora/azureus-no-restart.patch,
  +files/fedora/azureus-remove-manifest-classpath.patch,
  +files/fedora/azureus-remove-win32-PlatformManagerUpdateChecker.patch,
  +files/fedora/azureus-remove-win32-osx-platforms.patch, metadata.xml,
  +azureus-2.4.0.2.ebuild:
  Version bump. Now supports the new Java aystem.

  12 Feb 2006; Petteri Räty <betelgeuse@gentoo.org>
  azureus-2.3.0.6-r1.ebuild:
  Fixed bug #119400 so now azureus won't fail on x86 machines with small
  amounts of memory.

  02 Jan 2006; Petteri Räty <betelgeuse@gentoo.org>
  -files/azureus-gentoo-2.3.0.4.sh, -files/azureus-gentoo.sh,
  -azureus-2.2.0.0-r1.ebuild, -azureus-2.3.0.4.ebuild:
  Removed old versions.

*azureus-2.3.0.6-r1 (02 Jan 2006)

  02 Jan 2006; Petteri Räty <betelgeuse@gentoo.org>
  files/azureus-gentoo-2.3.0.6.sh, -azureus-2.3.0.6.ebuild,
  +azureus-2.3.0.6-r1.ebuild:
  Specifying --ui=console in ~/.Azureus/gentoo.config now actually works.
  Fixes bug #117475. Thanks to Rasmus Faber <adfaber@gmail.com> for the fix.

  30 Nov 2005; Petteri Räty <betelgeuse@gentoo.org>
  files/azureus-gentoo-2.3.0.6.sh, metadata.xml:
  Took maintainership and updated startup script to return the return value of
  azureus.

  26 Nov 2005; Petteri Räty <betelgeuse@gentoo.org>
  files/azureus-gentoo-2.3.0.6.sh:
  Added support for specifying options to the java binary in
  ~/.Azureus/gentoo.config. This makes it possible to run the vm in for
  example server mode. Resolves bug #75090.

*azureus-2.3.0.6 (26 Nov 2005)

  26 Nov 2005; Petteri Räty <betelgeuse@gentoo.org>
  +files/azureus-gentoo-2.3.0.6.sh, +azureus-2.3.0.6.ebuild:
  Version bump and did a major ebuild cleanup. Does not install a packed seda
  any more because it is not allowed and not needed. Fixes bug #113318.

  25 Nov 2005; Herbie Hopkins <herbs@gentoo.org>
  files/azureus-gentoo-2.3.0.4.sh, azureus-2.3.0.4.ebuild:
  Add a multilib fix and mark ~amd64 wrt bug 113389.

  24 Nov 2005; Petteri Räty <betelgeuse@gentoo.org> azureus-2.3.0.4.ebuild:
  Increased allowed memory size while compiling to allow building on amd64.

  20 Nov 2005; Joseph Jezak <josejx@gentoo.org> azureus-2.3.0.4.ebuild:
  Marked ~ppc for bug #111273.

  07 Oct 2005; Thomas Matthijs <axxo@gentoo.org> azureus-2.2.0.0-r1.ebuild,
  azureus-2.3.0.4.ebuild:
  Fix deps

*azureus-2.3.0.4 (02 Oct 2005)

  02 Oct 2005; <mkay@gentoo.org> +files/azureus-gentoo-2.3.0.4.sh,
  +files/UpdaterPatcher.java, +azureus-2.3.0.4.ebuild:
  version bump

  12 May 2005; Jochen Maes <sejo@gentoo.org> azureus-2.2.0.0-r1.ebuild:
  added an ewarn about not using it as root

  03 Apr 2005; Thomas Matthijs <axxo@gentoo.org> azureus-2.2.0.0-r1.ebuild:
  block azureus-bin

*azureus-2.2.0.0-r1 (20 Dec 2004)

  20 Dec 2004; Karl Trygve Kalleberg <karltk@gentoo.org>
  files/azureus-gentoo.sh, files/build.xml, +azureus-2.2.0.0-r1.ebuild,
  -azureus-2.2.0.0.ebuild:
  Rewrote startup script. Reindented ebuild. Requires properly SLOTed version
  of dev-java/swt. Modified build.xml script. Should fix #71378.

*azureus-2.2.0.0-r1 (20 Dec 2004)

  15 Nov 2004; <SeJo@gentoo.org> :
  initial add of ebuild

