=== release 0.2.2 ===

2006-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* NEWS:
	* RELEASE:
	* configure.ac:
	  releasing 0.2.2, "IT"

2006-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion.doap:
	* flumotion.spec.in:
	  adding doap file

2006-09-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>

	* flumotion/component/producers/firewire/firewire.py:
	  implement getVolume() again, so the admin page works again

2006-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  catch errors on remote component calls, and display a reasonable
	  Warning message for them so we know what to fix.
	* flumotion/common/errors.py:
	  document the expected arguments for RemoteMethodError,	
	  taking the method name as the first argument
	* flumotion/wizard/step.py:
	  follow this change through
	* flumotion/component/effects/volume/admin_gtk.py:
	  warningFailure swallows the failure, which is not what we want here
	* flumotion/common/log.py:
	  document this swallowing behaviour
	* flumotion/component/feedcomponent.py:
	  document remote_effect
	* flumotion/manager/admin.py:
	  use the more useful log.getExceptionMessage
	* flumotion/manager/base.py:
	  check for the difference between AttributeError and NoSuchMethod
	  if we can
	* po/POTFILES.in:
	  add flumotion/admin/admin.py for translation

2006-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/parts.py:
	  Backport a fix from trunk to actually update CPU usage.
	  Caught by the QA tests, yippie !

2006-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent010.py:
	  GstNetClientClock's constructor takes a long.
	  I remember running into this bug before, but I don't remember
	  where.

2006-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/compat.py:
	  do not install a custom resolver, we did this on TRUNK,
	  and I have the same problem when trying to connect my admin client
	  to thread

2006-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  fix docstrings

2006-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundleclient.py:
	  move the import where it needs to be
	* flumotion/common/gstreamer.py:
	  fix up get_plugin_version()
	  also, return triple, fouple, or None
	* flumotion/component/muxers/checks.py:
	* flumotion/worker/checks/encoder.py:
	* flumotion/worker/checks/video010.py:
	  fix up checks

2006-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  unravel defgen so we can actually see where problems are
	  pass through a RemoteRunError, it's already wrapped

2006-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/config.py:
	  use list length 0 as False to check multiple and required

2006-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	  use CannotListenError correctly

2006-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/worker.py:
	  use ones and zeroes, and make a list length calculation easier

2006-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	  Replace something that has been deprecated since Python 1.5 (!)
	  Thank you pychecker.

2006-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  move imports inside defgen
	* flumotion/admin/text/admin_text.py:
	* flumotion/admin/text/main.py:
	* flumotion/admin/command/main.py:
	  remove unneeded imports
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	  make our unused import explicit
	* flumotion/worker/main.py:
	  split off a _createParser() function
	* flumotion/launch/main.py:
	  use emptiness of lists as a test, more readable
	* flumotion/launch/inspect.py:
	  remove unused var and call

2006-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/muxers/checks.py:
	  Fix a SyntaxError pychecker caught with the modules patch

2006-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/base/admin_text.py:
	* flumotion/job/main.py:
	* flumotion/manager/worker.py:
	* flumotion/worker/worker.py:
	  remove unused imports and vars

2006-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/launch/main.py:
	  Fix another bug caught by pychecker

2006-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* misc/pycheckerrc:
	  do not check classattr for now, until we figure out the bug
	  where __pycheckerrc__ is not respected inside a class definition

2006-09-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/common/gstreamer.py:
	For 0.10 gst return a tuple as the documentation suggests.
	Make nano always be sent in the tuple, set to 0 if not in the
	version string.
	* flumotion/component/muxers/checks.py:
	* flumotion/worker/checks/encoder.py:
	* flumotion/worker/checks/video010.py:
	Fix checks to use the new get_plugin_version return values.
	* flumotion/manager/component.py:
	Remove un-needed statements.

2006-09-06  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/feedcomponent010.py:
	* flumotion/manager/component.py:
	Fixes #448.  If the clock mastering (which now needs the pipeline to
	go paused) happens before start then tcpserversink will always listen
	on the default port rather than the one it's configured. So this
	changes a few things and makes clock master really happen after 
	do_start is called and before settign the pipeline to PLAYING.

2006-08-22  Andy Wingo  <wingo@pobox.com>

	* flumotion/common/common.py (mergeImplements): use
	mergeImplements from trunk, it seems to cope better with twisted
	2.0.

2006-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/http.py:
	  Add some more debugging about burst on connect.
	  Fix the removal of doing keyframe start I introduced after
	  the last release.

2006-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin-text.in:
	* bin/flumotion-admin.in:
	* bin/flumotion-command.in:
	* bin/flumotion-inspect.in:
	* bin/flumotion-job.in:
	* bin/flumotion-launch.in:
	* bin/flumotion-manager.in:
	* bin/flumotion-tester.in:
	* bin/flumotion-worker.in:
	* bin/flumotion.in:
	  check correctly by going up the hierarchy; still doesn't work
	  for kiwi

2006-06-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin-text.in:
	* bin/flumotion-admin.in:
	* bin/flumotion-command.in:
	* bin/flumotion-inspect.in:
	* bin/flumotion-job.in:
	* bin/flumotion-launch.in:
	* bin/flumotion-manager.in:
	* bin/flumotion-tester.in:
	* bin/flumotion-worker.in:
	  check for a flumotion/.svn dir instead, so we can work with kiwi
	* flumotion/admin/gtk/dialogs.py:
	  give the ok button a name so kiwi can work

2006-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	  add getBundlerBasket() which also checks if the registry
	  needs updating, and recreates the basket
	* flumotion/manager/base.py:
	  use the new getBundlerBasket() so that we're always getting
	  the latest information

	Fixes #388

2006-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion.spec.in:
	  allow building against 0.8 or 0.10 with the right rpmbuild options

2006-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion.spec.in:
	  sync with Extras spec

2006-06-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/audiotest/audiotest.py:
	  stupid me, source already had a name

2006-06-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/effects/volume/admin_gtk.py:
	  make the effect's ui query the initial volume first
	* flumotion/component/base/admin_gtk.py:
	  effect nodes should forward title
	* flumotion/component/effects/volume/volume.py:
	  add .getVolume(), document
	* flumotion/component/producers/audiotest/Makefile.am:
	* flumotion/component/producers/audiotest/admin_gtk.py:
	* flumotion/component/producers/audiotest/audiotest.py:
	* flumotion/component/producers/audiotest/audiotest.xml:
	  add a UI for the audiotest component, with a volume node
	* flumotion/component/producers/soundcard/soundcard.py:
	  add getVolume()
	* po/POTFILES.in:
	  add new admin_gtk.py

2006-06-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  If we can't instantiate the admin ui view, show us in the admin
	  UI
	* flumotion/job/job.py:
	  If we can't find the component creation function, raise the
	  proper error so we see it in the UI
	  Since we are a proper spawn and not a fork, we can remove the
	  os._exit() hack and let the reactor do .stop correctly.  Cleans
	  up a bunch of shutdown failures.
	* flumotion/manager/admin.py:
	  perspective_... should return a deferred always
	* flumotion/manager/base.py:
	  logging ourself as a dependency is confusing, so don't

2006-06-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/main.py:
	  fix variables I broke

2006-06-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/test/test_checkers.py:
	* flumotion/test/test_common_componentui.py:
	* flumotion/test/test_common_messages.py:
	* flumotion/test/test_component.py:
	* flumotion/test/test_flavors.py:
	* flumotion/test/test_htpasswdcrypt.py:
	* flumotion/test/test_http.py:
	* flumotion/test/test_keycards.py:
	* flumotion/test/test_manager_manager.py:
	* flumotion/test/test_pb.py:
	* flumotion/test/test_worker_worker.py:
	Backport tests from trunk.  The test changes are the ones to stop
	using the deprecated (and removed in twisted 2.4) deferredResult and
	deferredError methods in unittest.

2006-06-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	  move link_setup() code to configure_pipeline(), which is
	  part of the component protocol
	* flumotion/component/feedcomponent010.py:
	* flumotion/component/feedcomponent08.py:
	  remove calling link_setup() on subclasses, since all subclasses now
	  use configure_pipeline() instead

2006-06-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	  add a note about where to go for more information when you don't
	  have a .pem file

2006-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/common.mk:
	* common/trial.mk:
	  apparently trial -R is not even needed in 1.3 for what we do,
	  go figure.

2006-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/test/test_worker_worker.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  update documentation
	  privatize more variables
	  remove some unused imports
	  privatize and rename WorkerBrain.setup(), and make it return
	  only the factory it creates
	  use twisted naming

2006-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/test/test_worker_worker.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  update documentation
	  privatize more variables
	  remove some unused imports
	  privatize and rename WorkerBrain.setup(), and make it return
	  only the factory it creates
	  use twisted naming

2006-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/job/job.py:
	  update documentation
	  assigning self.component in remote_create makes it clearer where
	  this happens
	  use twisted naming

2006-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/styleguide:
	  add notes about API docs
	* flumotion/manager/admin.py:
	  privatize some instance vars, and comment out some unused
	  methods
	* flumotion/manager/component.py:
	  privatize some Avatar instance vars
	* flumotion/admin/admin.py:
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/manager/base.py:
	* flumotion/manager/worker.py:
	  update documentation

2006-06-08  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/test/test_keycards.py:
	Fix keycards test to use new interface api.

2006-06-08  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/twisted/gtk2reactor.py:
	Import common.

2006-06-08  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
	
	* flumotion/twisted/compat.py:
	Add compatibility stuff for Interface, implements and 
	implementsInterface due to changes in twisted.
	* flumotion/common/common.py:
	Make mergeImplements work for new Interface API.
	* flumotion/component/component.py:
	Remove evil attribute that is never used and move to new Interface API.
	* flumotion/test/test_twisted_compat.py:
	Remove test for deprecated warnings as twisted 2.4.0 has removed the
	depracations.  Add Interface and implements tests.
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/parts.py:
	* flumotion/admin/text/admin_text.py:
	* flumotion/admin/text/greeter.py:
	* flumotion/admin/text/view.py:
	* flumotion/common/interfaces.py:
	* flumotion/common/keycards.py:
	* flumotion/common/medium.py:
	* flumotion/common/planet.py:
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/base/admin_text.py:
	* flumotion/component/bouncers/admin_gtk.py:
	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/component/component.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/job/job.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/test/test_common.py:
	* flumotion/test/test_common_componentui.py:
	* flumotion/test/test_common_planet.py:
	* flumotion/test/test_flavors.py:
	* flumotion/test/test_manager_manager.py:
	* flumotion/test/test_pb.py:
	* flumotion/twisted/checkers.py:
	* flumotion/twisted/credentials.py:
	* flumotion/twisted/flavors.py:
	* flumotion/twisted/gtk2reactor.py:
	* flumotion/twisted/pb.py:
	* flumotion/ui/trayicon.py:
	* flumotion/wizard/worker.py:
	* flumotion/worker/worker.py:
	Use new API for Interface and implements.

2006-05-31  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* conf/managers/default/planet.xml:
	  Fix default config.

2006-05-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/config.py:
	  handle cases where we have empty nodes, like
	  <property name="data" />
	* flumotion/component/bouncers/bouncer.py:
	  document base authenticate() method
	* flumotion/component/bouncers/htpasswdcrypt.py:
	  do_setup should return deferred failures instead of raising
	* flumotion/component/component.py:
	  assert this in the docs for do_setup()
	* flumotion/manager/main.py:
	  when doing log.error, catch the SystemError we'll be getting
	  since it just gives a long traceback in the reactor
	* flumotion/manager/manager.py:
	  get a referred back when setting up the bouncer
	  handle some failure cases better
	* flumotion/twisted/portal.py:
	  do not allow anonymous login when bouncer is missing
	  earns us the enterprise 'highly securized' property

2006-05-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	  add and use a ComponentStartHandledError to indicate we've
	  handled the error in a satisfactory way, thus the manager
	  needs to drop them.
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	  if the admin requests to stop a sad component, we can clear the
	  sad state immediately after stopping, since the admin has seen it.

2006-05-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  add reloadAdmin() method to only reload local admin code
	* data/glade/admin.glade:
	* flumotion/admin/gtk/client.py:
	  allow calling the method from the UI

2006-05-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  refactor some cleanup code, so that we properly set sensitivity
	  of start/stop, as well as clearing our internal current_component
	  state
	* flumotion/test/test_parts.py:
	  add a test for sensitivity

2006-05-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  privatize and rename self._sidepane
	  clear the sidepane when a component goes to sleeping.
	  Fixes #263.

2006-05-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/manager/main.py:
	* flumotion/service/main.py:
	* flumotion/worker/main.py:
	  use IOError's strerror argument more

2006-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	Patch by: Gergely Nagy

	* data/glade/wizard_tvcard.glade:
	* flumotion/wizard/steps.py:
	  Show name of TV card in wizard.  Fixes #235.

2006-05-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/configure/configure.py:
	* flumotion/configure/installed.py.in:
	* flumotion/configure/uninstalled.py.in:
	  add "daemondir", which is where daemonized programs will run from
	  core dumps will thus end up there if requested
	* flumotion/common/common.py:
	  add an argument to daemonize for the run directory
	* flumotion/manager/main.py:
	* flumotion/worker/main.py:
	  add a --daemonize-to option, only allowed when -D/--daemonize is
	  used
	* flumotion/service/service.py:
	  use the new --daemonize-to option
	  Fixes #374

2006-05-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/redhat/flumotion:
	* flumotion/service/main.py:
	  Make service script make sure that service.log is owned by
	  flumotion.  Fixes #372, and some other details.

2006-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to trunk

=== release 0.2.1 ===

2006-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	*  configure.ac: releasing 0.2.1, "Angel"

2006-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  GST_*_SUPPORTED should be yes, not true
	  relayout some other checks

2006-04-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac: 0.2.0.2 prerelease

2006-04-25  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/effects/colorbalance/colorbalance.py:
	  Port colorbalance to work with 0.10 of GStreamer
	* flumotion/component/producers/bttv/bttv.py:
	  Add colorbalance effect for 0.10
	* flumotion/component/producers/webcam/webcam.py:
	  Add colorbalance effect for 0.10

2006-04-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* po/ca.po:
	* po/es.po:
	* po/fr.po:
	* po/nl.po:
	* po/no.po:
	  updates
	  Translation by: Pablo Lorenzzoni <spectra@debian.org>
	* po/pt_BR.po:
	  adding Portuguese/Brazilian translation

2006-04-19  Michael Smith  <msmith@fluendo.com>

	* flumotion/worker/worker.py:
	  Backport the essential part of revision 3150: 
	  trigger deferredCreateFailed in all failure cases, not just when
	  catching ComponentCreateFailed.

2006-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/text/view.py:
	* flumotion/component/base/admin_gtk.py:
	  BaseAdminGtk.setUIState() and the admin's ui-state-changed signal
	  have been unused since 0.1.4

2006-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/pychecker.mk:
	  - use $(thisdir) correctly when we check for _build
	  - rename FLU_PATH to OUR_PATH, because these macros are shared
	    with other modules
	  - if GST_08_SUPPORTED and GST_010_SUPPORTED are not set from
	    configure, still work without errors
	  - x10 -> x010 for consistency

2006-04-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  create a Message when a job process dies with a signal, so
	  the admin can see what went wrong.
	  Also, more signals than SEGV generate core dumps.
	* flumotion/manager/worker.py:
	  add perspective_componentAddMessage()
	* flumotion/manager/manager.py:
	  add componentAddMessage()
	  make sure sad moods persist until actively stopped.
	* flumotion/manager/component.py:
	  make sure sad moods persist until actively stopped.
	* po/POTFILES.in:
	  mark worker.py for translations
	* po/ca.po:
	* po/es.po:
	* po/fr.po:
	* po/nl.po:
	* po/no.po:
	  update

2006-04-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/component-initialization-protocol:
	  update protocol to reflect decisions about do_check
	* flumotion/common/errors.py:
	  add a ComponentSetupError
	* flumotion/component/component.py:
	  - make remote_setup() properly handle failures during component
	    setup, while still give the medium's setup the chance to failure.
	  - if do_check() generates an Error message on the state, turn sad
	    and don't proceed to do_setup()
	  - addMessage(): turn sad if an ERROR is added
	* flumotion/manager/component.py:
	  properly trap a ComponentSetupError seperately during setup
	* flumotion/component/producers/checks.py:
	  - share translations in messages, and make them uniform
	* flumotion/component/producers/looper/looper.py:
	  - declare bus, avoids tracebacks when setup went wrong
	* flumotion/component/producers/looper/looper.xml:
	  - depend on producer-checks bundle, since it's being used

2006-04-05  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/producers/firewire/firewire.py
	(Firewire.do_check):
	* flumotion/component/producers/soundcard/soundcard.py
	(Soundcard.do_check): Update for check function name changes.

	* flumotion/component/producers/looper/looper.py: Rewrite to do
	the first segment seek from blocked pads instead of via an
	asynchronous message to the bus. Fixes some race conditions.
	Requires new GStreamer core and gst-python.

	* flumotion/component/producers/checks.py
	(checkTicket347, checkTicket348): Rename from checkPyGTK and
	checkPyGST, because they test for specific bugs. See #347 and
	#348.
	(checkTicket349): New check, fixes #349 along with updates to
	looper.

	* flumotion/component/feedcomponent010.py
	(FeedComponent.bus_watch_func): When we get an error message, post
	it at the warning level.

	* flumotion/component/component.py
	(BaseComponent.adminCallRemote): More debugging.

2006-04-04  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/component.py
	(BaseComponent.adminCallRemote): Add some docs. Ignore the call if
	we don't have a manager -- adminCallRemote calls are only for
	notification anyway.

2006-04-06  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	  Make sure cursor does not get set to the X default but to the
	  cursor of the parent window

2006-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/checks/video010.py:
	* flumotion/worker/checks/video08.py:
	  Distinguish between "can't open firewire device" and
	  "permissions are wrong", if 1394 plugin is new enough.
	  Fixes #350.

2006-04-05  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/producers/checks.py:
	  Backport: check for pygtk 2.8.6, not 2.8.5

2006-04-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/redhat/flumotion:
	  Fix typo.  Fixes #344.

2006-04-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	* flumotion/worker/worker.py:
	  fix for #345 - only trigger a create failed if the avatarId still
	  has a pending create deferred.

2006-03-27  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	  Make mouseovers over stream url link work, also add right click
	  context menu for stream url link

2006-03-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* pkgconfig/flumotion-uninstalled.pc.in:
	* pkgconfig/flumotion.pc.in:
	  build the Requires: line for the .pc file and use it
	* common/pychecker.mk:
	* flumotion/common/boot.py.in:
	  use _010, not _10, we don't want people to think GStreamer 1.0 is out

2006-03-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/producers/firewire/firewire.py:
	  Check for key existence in dict, thanks Andy

2006-03-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/producers/firewire/firewire.py:
	  No point displaying firewire bus reset message

2006-03-17  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/test/test_manager_manager.py:
	  twisted 2.2.0 TestCase does not have a runReactor method
	  and according to twisted changeset 15556 it was always
	  deprecated

2006-03-17  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/producers/firewire/firewire.py:
	  Fix stupid syntax error and make pychecker happy

2006-03-17  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/admin/gtk/client.py:
	  Make removal of messages from gtk admin actually happen!
	* flumotion/component/producers/firewire/firewire.py:
	  Use the new data provided from the firewire component so that
	  connection and disconnection is detected, fixes #336

2006-03-16  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/encoders/vorbis/vorbis010.py:
	  Import utils method we're using.

2006-03-15  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/encoders/vorbis/vorbis010.py:
	* flumotion/component/encoders/vorbis/vorbisutils.py:
	  If the incoming sample rate is outside the range of permissible
	  rates, pick a sensible 'standard' rate rather than simply clamping.

2006-03-15  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/encoders/vorbis/vorbis010.py:
	  Rename configure to configure_pipeline, so that it'll get called.

2006-03-14  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/producers/firewire/firewire.py:
	  Fix a missing import.

2006-03-14  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/producers/checks.py:
	  Get the pygtk version from gobject, to avoid importing gtk. 

2006-03-14  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/producers/Makefile.am:
	  Add some more magic incantations to the Makefile.am

2006-03-14  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/producers/Makefile.am:
	* flumotion/component/producers/checks.xml:
	* flumotion/component/producers/firewire/firewire.xml:
	* flumotion/component/producers/soundcard/soundcard.xml:
	  Fix bundles for producer checks

2006-03-14  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/producers/Makefile.am:
	* flumotion/component/producers/checks.py:
	* flumotion/component/producers/firewire/firewire.py:
	* flumotion/component/producers/firewire/firewire.xml:
	* flumotion/component/producers/soundcard/Makefile.am:
	* flumotion/component/producers/soundcard/checks.py:
	* flumotion/component/producers/soundcard/soundcard.py:
	* flumotion/component/producers/soundcard/soundcard.xml:
	  Extend checks for leaks (in level) to firewire.

2006-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  Make "Refresh" on lost connection work

2006-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_dag.py:
	  add another test to ensure we get a unique offspring list
	* flumotion/common/bundle.py:
	  Use a DAG to get dependencies of a bundle.  Has the added bonus
	  of returning a shorter list of dependencies than before, since
	  now each item appears only once, yet still in a correct order.
	* flumotion/common/registry.py:
	  add a docstring

2006-03-10  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/producers/soundcard/checks.py:
	* flumotion/component/producers/soundcard/soundcard.py:
	* flumotion/component/producers/soundcard/soundcard.xml:
	  Add warnings if people use versions of PyGTK, gst-python that exist.

2006-03-10  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/http.glade:
	  Make stream URL clickable and use default app for mime type with
	  URL.  Fixes #319 Fixes #267

2006-03-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/consumers/httpstreamer/http.glade:
	  Gtk-2.4ify glade file that was committed to add stream URL
	  to http admin gtk

2006-03-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/http.glade:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	  Display Stream URL in http admin gtk UI

2006-03-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/producers/firewire/firewire.py:
	  Report message to admin when firewire bus resets, fixes #325

2006-03-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/admin/gtk/client.py:
	  Admin was not redrawing properly when displaying warnings; fixes #333

2006-03-08  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/admin/text/view.py:
	  Make components view a scrollable list in text admin.
	  Fixes #329.

2006-03-07  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/common/config.py:
	  Report filename where config has error being parsed. Fixes #309.

2006-03-06  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/consumers/disker/disker.py:
	  Make disker go sad, when error writing. Fixes #331

2006-03-06  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/worker/checks/video010.py:
	* flumotion/worker/checks/video08.py:
	  set pipeline to NULL after running necessary worker check even
	  errors freeing necessary resources...fixes #191 - original patch
	  from Gergely Nagy

2006-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to TRUNK

=== release 0.2.0 ===

2006-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  releasing 0.2.0, "San Telmo"

2006-03-03  Edward Hervey  <edward@fluendo.com>

	* po/fr.po:
	Update pour le french translation.

2006-03-03  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/test/test_worker_worker.py:
	* flumotion/worker/worker.py:
	  make sure that jobs that crash or don't start properly get reported
	  as ComponentCreateErrors so components go sad rather than the
	  manager continually thinking component is starting

2006-03-03  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/worker/checks/encoder.py:
	  make sure vorbis translatable message actually gets added

2006-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	  updates
	* flumotion/component/muxers/Makefile.am:
	* flumotion/component/muxers/muxers.xml:
	* flumotion/component/muxers/ogg.py:
	* flumotion/component/muxers/checks.py:
	  add a version check for the 0.10.3 version of the Ogg muxer
	* flumotion/manager/component.py:
	  update a string
	* flumotion/wizard/steps.py:
	  use the check
	* flumotion/worker/checks/encoder.py:
	  split the message into multiple translatables to make translation
	  easier
	* po/POTFILES.in:
	* po/ca.po:
	* po/es.po:
	* po/fr.po:
	* po/nl.po:
	* po/no.po:
	  updates

2006-03-01  Michael Smith  <msmith@fluendo.com>

	* flumotion/test/test_i18n.py:
	  Ubuntu sets LANGUAGE (GNU extension) by default, so this test fails
	  unless we set that as well as LANG.

2006-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	* flumotion/component/consumers/httpstreamer/resources.py:
	* flumotion/test/test_http.py:
	  add "issuer" property to streamers
	  can be set to HTTPTokenIssuer or HTTPAuthIssuer
	  needs nicer abstracting in the future, but will do for now

2006-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	  create an Issuer base class, plus two subclasses, to create
	  keycards based on requests
	* flumotion/test/test_http.py:
	  add tests for this

2006-03-01  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/common/keycards.py:
	* flumotion/twisted/credentials.py:
	  add token keycard and credentials

2006-02-28  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/component/effects/volume/volume.py:
	* flumotion/component/producers/firewire/firewire.py:
	* flumotion/component/producers/soundcard/soundcard.py:
	  fix volume effect for 0.10. Fixes #328

2006-02-28  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

	* flumotion/admin/text/view.py:
	  fix text admin going over number of rows

2006-02-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/launch/main.py:
	  add an errback for component start

2006-02-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/Makefile.am:
	* common/setup.m4:
	  add FLUMOTION_SETUP macro

2006-02-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	  use an m4/ dir so that autopoint puts its copied macros there
	  instead of cluttering up common

2006-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/gstreamer.py:
	  add a quick way of checking if we can set a given value
	  on a property
	* flumotion/test/test_common_gstreamer.py:
	  add tests

2006-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/connections.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/parts.py:
	* flumotion/admin/gtk/spyglass.py:
	* flumotion/admin/gtk/videotest.py:
	* flumotion/admin/gtk/wizard.py:
	* flumotion/common/Makefile.am:
	* flumotion/common/compat.py:
	* flumotion/common/pygobject.py:
	* flumotion/component/component.py:
	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/preview/preview.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/feedcomponent010.py:
	* flumotion/component/feedcomponent08.py:
	* flumotion/test/test_common_pygobject.py:
	* flumotion/tester/httpclient.py:
	* flumotion/ui/fgtk.py:
	* flumotion/ui/glade.py:
	* flumotion/wizard/sidebar.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/worker.py:
	  fold flumotion.common.compat into flumotion.common.pygobject

2006-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	  instead of taking the master clock's loopback ip,
	  fix up the master clock host to be "the manager's IP
	  as seen from the slave".  Solves the netclock sync
	  problem in the case where the clock master is on the
	  manager host. 
	  FIXME: of course this should require proper fixing.

2006-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/component.py:
	* flumotion/manager/base.py:
	* flumotion/manager/component.py:
	  document IP-related methods more so that they're clear

2006-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent.py:
	* flumotion/manager/component.py:
	  do some more debugging on the master clock master stuff
	  make the clockMasterWaiters hash take tuples so we can
	  log which avatarId was waiting

2006-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/pygobject.py:
	  add a gobject.type_register() that does not register for pygtk 2.8
	  better than shutting up deprecation wwrnings

2006-02-09  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/producers/bttv/bttv.py (arg_filtered) 
	(call_on_state_change): New helper methods. Arguably not all that
	helpful.
	(BTTV.configure_pipeline, BTTV.set_channel_and_norm): Arrange to
	set the channel and norm for both versions. Don't add the
	colorspace effect for 0.10.

2006-02-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/messages.py:
	  handle the case where the given locale is not in the translator
	* flumotion/component/consumers/httpstreamer/http.py:
	  cleanup
	* flumotion/common/log.py:
	  allow for finding the part of an exception stack for a given
	  file, or a given frame
	* flumotion/job/job.py:
	  give a decent ComponentCreateError that can hopefully tell you
	  exactly where the ImportError happened

2006-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent010.py:
	  lower priority of generic internal errors, allowing more specific
	  one from looper through
	* flumotion/component/producers/looper/looper.py:
	  catch RESOURCE_NOT_FOUND and show a nice message
	  FIXME: need to find a way to not have the default bus func
	  get a go too.

2006-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	* flumotion/worker/checks/check.py:
	* flumotion/worker/checks/video010.py:
	* flumotion/worker/checks/video08.py:
	  add source of error message as first arg to
	  GStreamerGstError

2006-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundleclient.py:
	* flumotion/common/package.py:
	* flumotion/common/registry.py:
	* flumotion/common/setup.py:
	* flumotion/common/worker.py:
	* flumotion/component/base/__init__.py:
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/base/admin_text.py:
	* flumotion/component/bouncers/__init__.py:
	* flumotion/service/service.py:
	  documentation updates

2006-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	* flumotion/manager/component.py:
	  make an overdue function name change:
	  removeKeycard -> removeKeycardId

2006-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  use a safer way of creating a worker socket.  Would be nice
	  if we could actually give the file to twisted, without needing
	  to delete.

2006-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/messages.py:
	  fix doc
	* flumotion/manager/manager.py:
	  privatize a bunch of privately used undocumented methods

2006-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/messages.py:
	  document

2006-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_pb.py:
	* flumotion/common/log.py:
	  document
	  private getTheFluLogObserver()

2006-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/planet.py:
	  remove 'message' from the jobstate
	* flumotion/component/component.py:
	* flumotion/component/feedcomponent08.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/test/test_manager_manager.py:
	* po/POTFILES.in:
	  and convert to 'messages' where appropriate

2006-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/medium.py:
	* flumotion/common/planet.py:
	  document

2006-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	* flumotion/common/code.py:
	* flumotion/extern/Makefile.am:
	  move code.py to extern

2006-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	* po/POTFILES.in:
	  show us a decent message if start fails for any reason

2006-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/code.py:
	  make code.interact(local=locals()) work

2006-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/admin.glade:
	  make sure we use stock items.  Fixes #320.

2006-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/overlay.py:
	  stop -> do_stop()
	* flumotion/component/feedcomponent08.py:
	  stop -> do_stop, move it to interface section
	* flumotion/component/producers/looper/looper.py:
	  use configure_pipeline instead of overriding start
	  override do_stop; clean up bus 
	  fix a UI bug where on startup the number of iterations
	  was shown as 5

2006-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/messages.py:
	  use FancyEqMixin so we can sensibly compare RemoteCopy objects
	  of the same original Copyable Messages and Translatable
	* flumotion/test/test_common_messages.py:
	  add tests for these
	* flumotion/twisted/flavors.py:
	  give us a more useful ValueError when state_remove tries to
	  remove an unexisting object.
	  Fixes #322

2006-02-02  Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* flumotion/admin/main.py:
	  convert port to an integer value on parsing
	  fixes #324

2006-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	  not being able to release ports is a problem, we should
	  warn about it

2006-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/component.py:
	* flumotion/component/feedcomponent010.py:
	  update for do_stop() changes
	  properly log when loseConnection is called
	  Exposed a bug, filed as #323

2006-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/text/main.py:
	  make Messages proxyable.  Closes #321.

2006-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/component-initialization-protocol:
	* flumotion/component/component.py:
	  make do_stop also return a deferred, for possible cases
	  where we might want to inidicate errors from shutdown before the
	  connection with the manager is lost.

2006-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	  remove unused errors; we can now use Message to deal with them

2006-02-01  Edward Hervey  <edward@fluendo.com>

	* po/fr.po:
	 Slight fixes to the french translation.

2006-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	  make getTheFluLogObserver() a singleton method to delay
	  creating in
	  add logTwisted so we can separate importing pb (and thus reactor)
	  from initing the logging
	* flumotion/common/boot.py.in:
	* flumotion/test/common.py:
	* flumotion/test/test_pb.py:
	  adapt for this change

2006-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/command/commands.py:
	* flumotion/admin/command/main.py:
	  add an 'invoke' command
	  sample use:
	   bin/flumotion-command invoke "/default/http-audio" rotateLog
	* flumotion/component/consumers/httpstreamer/http.py:
	  add a remote_rotateLog() method
	* flumotion/component/consumers/httpstreamer/resources.py:
	  privatize log file bits
	  implement rotating the log

2006-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/component.py:
	  BaseComponent.addMessage(): to add messages to the state
	* flumotion/worker/checks/Makefile.am:
	* flumotion/worker/checks/package.xml:
	* flumotion/worker/checks/encoder.py:
	  add checks for Theora and Vorbis
	* flumotion/component/encoders/theora/theora.py:
	* flumotion/component/encoders/theora/theora.xml:
	* flumotion/component/encoders/vorbis/vorbis.xml:
	* flumotion/component/encoders/vorbis/vorbis010.py:
	  run theora and vorbis checks in do_check
	* flumotion/wizard/steps.py:
	  use checks for Theora and Vorbis
	* flumotion/wizard/wizard.py:
	  add some debug
	  make sure the deferred from require is returned

2006-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/launch/main.py:
	  update to match the new protocol

2006-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	  blacklist gstreamer.py because we don't want to split out for
	  0.8 and 0.10 just for pychecker
	* flumotion/worker/checks/video010.py:
	  add a state= to do_element_check() to compare with the 08 version

2006-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/component-initialization-protocol:
	  update protocol, add check method, make do_ methods
	* flumotion/component/bouncers/htpasswdcrypt.py:
	  setup -> do_setup()
	* flumotion/component/feedcomponent.py:
	* flumotion/component/feedcomponent010.py:
	* flumotion/component/feedcomponent08.py:
	  setup -> do_setup()
	  reorder some methods according to protocol

2006-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/webcam/webcam.py:
	  put together a string step by step for the caps.  Works for
	  both 0.8 and 0.10
	* flumotion/wizard/steps.py:
	  we can get RGB, hence no format.  handle that case.
	* flumotion/worker/checks/video.py:
	  fix a silly bug that caused the config to have a tuple for format

2006-01-30  Andy Wingo  <wingo@pobox.com>

	* flumotion/launch/main.py (ComponentWrapper.__init__): Parse
	fraction values as well.
	(main): Implement a --delay option that will delay starting up the
	components by a certain amount of time. Can be useful for testing
	synchronization.

2006-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	  in 0.8, provideMasterClock returns None, not a tuple.
	  Handle that case.

2006-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent08.py:
	  set eaterNames and feederNames on the state so that startup
	  happens correctly.

2006-01-30  Edward Hervey  <edward@fluendo.com>

	* po/fr.po:
	Now even FromageTV can use flumotion :)

2006-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/gstreamer.py:
	  fix element_factory_exists() for 0.8

2006-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/checks/check.py:
	  get a traceback as debug info for unhandled failures
	* flumotion/worker/checks/video.py:
	  put in a fix for RGB webcams, and for 0.8
	* flumotion/worker/checks/video010.py:
	* flumotion/worker/checks/video08.py:
	  have our RemoteRunError on a callback give us a nice exception
	  message

2006-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent010.py:
	  generate error messages on generic GStreamer problems
	* flumotion/component/producers/webcam/webcam.py:
	* flumotion/component/producers/webcam/webcam.xml:
	  add and use mime/format/width/height/framerate
	* flumotion/wizard/steps.py:
	* flumotion/worker/checks/video.py:
	  also probe for mime/format/width/height/framerate
	  and use the values suggested as starting points
	  This makes both pwc and quickcam webcams work again nicely
	  Fixes #307

2006-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/config.py:
	  fix the error being raised

2006-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/pychecker.mk:
	  fix distcheck by finding the correct flumotion pythonpath to use
	  during distcheck

2006-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/wizard.py:
	  Make next button respond to mouse clicks after switching
	  sensitivity.  Fixes #314

2006-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/admin.glade:
	  make the messages_view a custom widget, with a create function
	* flumotion/admin/gtk/parts.py:
	  show messages in the messages_view per component
	* flumotion/admin/gtk/client.py:
	  add messages_view
	  get rid of Window.show_all(), so the messages-view can be hidden
	  at startup
	* flumotion/common/planet.py:
	  add a 'messages' list to componentstates
	* flumotion/component/component.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	  show an error message if the TCP port is in use
	* flumotion/component/feedcomponent.py:
	  throw up messages for missing elements or pipeline parse failures
	* flumotion/component/producers/audiotest/audiotest.py:
	  Check for necessary elements to start up
	* flumotion/manager/manager.py:
	  Pass a component error if a component cannot be created
	* flumotion/ui/trayicon.py:
	  let state Append/Remove pass through for now
	* po/POTFILES.in:
	* po/ca.po:
	* po/nl.po:
	* po/no.po:
	* po/fr.po:
	  add a French translation and update the dutch one

2006-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	* flumotion/common/gstreamer.py:
	  add a check and an exception for missing GStreamer elements

2006-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/checks/check.py:
	* flumotion/worker/checks/video.py:
	* flumotion/worker/checks/video010.py:
	* flumotion/worker/checks/video08.py:
	  move CheckProcError some more for pychecker

2006-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/checks/video.py:
	* flumotion/worker/checks/video010.py:
	* flumotion/worker/checks/video08.py:
	  move CheckProcError

2006-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/step.py:
	  a RemoteRunError already has a sensible failure.value to show,
	  so special-case it
	* flumotion/wizard/steps.py:
	  catch and block on RemoteRunFailure for overlay
	* flumotion/worker/checks/video08.py:
	  add a special gst-python 0.8 hack to work around refcounting bugs
	* flumotion/worker/worker.py:
	  give us a decent usable RemoteRunError if there was an exception
	  while running the remote procedure

2006-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/checks/check.py:
	  add an OPEN_READ message
	* flumotion/worker/checks/video.py:
	* flumotion/worker/checks/video010.py:
	* flumotion/worker/checks/video08.py:
	  move all but the 1394 check into the video.py class
	* po/ca.po:
	* po/nl.po:
	* po/no.po:
	  update for translations

2006-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_soundcard.glade:
	  add a handler for combobox_channels changed
	* flumotion/admin/admin.py:
	  update docstring, workerRun now returns a Result
	* flumotion/admin/gtk/message.py:
	  document
	  make the textview wrap on words
	  add a translator so we can translate Messages
	  sort the messages viewed first by level, then priority

	* flumotion/wizard/step.py:
	  remove the info_msg/error_msg calls
	  show all messages that are part of the Result of workerRun
	  raise a RemoteRunFailure if the call produced a failed result
	  raise a RemoteRunError if the call failed and didn't produce
	  a result
	  forward on the value of a succesful Result to the caller
	* flumotion/wizard/steps.py:
	  use the new Message for all messages to be shown
	  add a on_combobox_channels_changed, but needs more integrating
	* flumotion/wizard/wizard.py:
	  remove the info_msg/error_msg calls
	  add add_msg
	  use Messages (including plural forms for missing element(s))

	* flumotion/component/producers/webcam/webcam.py:
	  Simple workaround for http://bugzilla.gnome.org/show_bug.cgi?id=328940
	* flumotion/worker/checks/Makefile.am:
	* flumotion/worker/checks/package.xml:
	* flumotion/worker/checks/check.py:
	  added; contains common functionality usable by checks
	* flumotion/worker/checks/video.py:
	* flumotion/worker/checks/video010.py:
	  rework tests to use Message and Result.
	  Not finding a device is now a succesful but empty result.
	  Turn on autoprobe-fps again, since it just doesn't work
	  at all without it atm.
	  Doing the 08 ones in a second step, because a lot of them can
	  be factored out together to be gst-independant
	* flumotion/worker/worker.py:
	  verify that workerRun calls end up returning a Result object
	* po/POTFILES.in:
	* po/ca.po:
	* po/nl.po:
	* po/no.po:
	  update translations

2006-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/admin.py:
	  make Result and Message objects proxyable through manager

2006-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	  add some specific error types

2006-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/messages.py:
	  fold ngettexter into gettexter method by checking for str format
	  make constructors of Translatable take *args, making the creation
	  more natural in the no-or-one arg case
	* flumotion/test/test_common_messages.py:
	  update to match

2006-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/messages.py:
	  - remove the .install() function, better not to mess with __builtin__
	  - add N_ and ngettext functions, used for marking up strings
	  - add .gettexter(domain) and .ngettexter(domain) methods, which return
	    methods to create translatables as used by messages.
	    Typically used as T_(N_(format), args)
	    and TP_(ngettext(s, p, c), args)
	    These changes are needed because we were wrongly doing
	    N_(format, *args) which happened to work by accident but does
	    not conform to gettext markup
	  - make TranslatablePlural take a format triple instead
	  - make Translator do a 'C' translation if no other found
	  - make Message.add() check that it receives a Translatable
	  - add a Result class that can hold a list of messages, a failed
	    status and a resulting value.
	* flumotion/test/test_common_messages.py:
	  - update tests for all of this
	* po/ca.po:
	* po/nl.po:
	* po/no.po:
	  - updated translations

2006-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_pb.py:
	  various cleanups
	  flush out errors
	* flumotion/twisted/pb.py:
	  add more debugging
	  fix logCategory

2006-01-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_component_init.py:
	  add a test I still had lying around, which tries to create
	  every component in the flumotion registry

2006-01-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/messages.py:
	  - add .install(), which puts N_ and ngettext methods in __builtin__
	    to mark messages for translation.  See gettext.install()
	  - add Translatable classes for Singular and Plural forms that store
	    everything needed to translate a message admin-side
	  - add a Translator class that can translate translatables and
	    messages, given localedirs for text domains
	  - make messages take translatable objects in the constructor
	* flumotion/test/test_common_messages.py:
	* flumotion/test/test_i18n.py:
	  tests for all of this, using the nl_NL locale
	* po/POTFILES.in:
	* po/ca.po:
	* po/nl.po:
	* po/no.po:
	  update with test strings

2006-01-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/Makefile.am:
	* flumotion/test/test_i18n.py:
	* po/POTFILES.in:
	* po/ca.po:
	* po/nl.po:
	* po/no.po:
	  add a test for various aspects of gettext and i18n
	  in preparation for some message support

2006-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard.glade:
	* flumotion/admin/gtk/Makefile.am:
	* flumotion/wizard/Makefile.am:
	* flumotion/wizard/message.py:
	* flumotion/wizard/wizard.py:
	  moved message.py to flumotion/admin/gtk

2006-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	* flumotion/common/messages.py:
	  add a Message serializable class, extracted from wizard.message
	* flumotion/test/Makefile.am:
	* flumotion/test/test_common_messages.py:
	  and a simple test for it
	* data/glade/wizard.glade:
	* flumotion/wizard/message.py:
	* flumotion/wizard/wizard.py:
	  use the new Message class
	  rename MessageView to MessagesView, it shows more than one

2006-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	  don't debug tracebacks from pb.Error, since they specifically
	  get handled on the other side of a pb connection

2006-01-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/common/medium.py:
	* flumotion/worker/worker.py:
	  rename run_bundled_proc to runFunction and move it to the
	  worker's medium, since we only ever want workers to do this for us.

2006-01-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/config.py:
	  make wrapper functions to read an int and a string, so that
	  we get a ConfigError if the values in the config are empty
	* flumotion/manager/main.py:
	  if there is a config error, print a nice warning instead of
	  a traceback

2006-01-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/managers/default/planet.xml:
	* flumotion.spec.in:
	* flumotion/common/config.py:
	* flumotion/manager/main.py:
	  add a <certificate> option to the <manager> section in config
	  file formats, and document it in sample config and spec file
	  Closes #246

2006-01-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	  on a config parsing error after daemonizing, only log the error
	  and SystemError, but not exit.  Fixes #310

2006-01-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	  print a nice error when we can't read the first (manager) config
	  file correctly
	  if we set the manager name based on path, make sure the path is
	  under a managers/ dir

2006-01-25  Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* flumotion/components/encoders/vorbis/vorbis010.py: Fix
	regression from gst 0.8 so that it respects the channels parameter
	passed from the config. Fixes #316. Reviewed by Andy Wingo.

2006-01-25  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/consumers/httpstreamer/http.py
	(MultifdSinkStreamer._checkUpdate): Update the UI state
	unconditionally every 10 seconds.

2006-01-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	* flumotion/job/job.py:
	* flumotion/manager/component.py:
	* flumotion/manager/worker.py:
	* flumotion/worker/worker.py:
	  rename error.Compoment{Create/Start} to end in Error just like
	  the rest of them.  Some further small cleanups.
	  I get a nice manager WARN line that tells me exactly what the
	  problem is when a compoment can't be created because of an
	  ImportError.

2006-01-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/job/job.py:
	* flumotion/worker/worker.py:
	  use errors.ComponentCreate where applicable
	  forward it through nicely everywhere, instead of rewrapping it
	  fix more instances of Start->Create

2006-01-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/admin.py:
	  ixnay on the keeping of local patches
	  this makes components startable from the admin again

2006-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/gen-locale-xml.py:
	* doc/random/header.py:
	* flumotion/__init__.py:
	* flumotion/admin/__init__.py:
	* flumotion/admin/admin.py:
	* flumotion/admin/command/__init__.py:
	* flumotion/admin/command/commands.py:
	* flumotion/admin/command/main.py:
	* flumotion/admin/command/utils.py:
	* flumotion/admin/connections.py:
	* flumotion/admin/gtk/__init__.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/connections.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/greeter.py:
	* flumotion/admin/gtk/main.py:
	* flumotion/admin/gtk/parts.py:
	* flumotion/admin/gtk/spyglass.py:
	* flumotion/admin/gtk/videotest.py:
	* flumotion/admin/gtk/wizard.py:
	* flumotion/admin/text/admin_text.py:
	* flumotion/admin/text/connection.py:
	* flumotion/admin/text/greeter.py:
	* flumotion/admin/text/main.py:
	* flumotion/admin/text/misc_curses.py:
	* flumotion/admin/text/view.py:
	* flumotion/common/__init__.py:
	* flumotion/common/boot.py.in:
	* flumotion/common/bundle.py:
	* flumotion/common/bundleclient.py:
	* flumotion/common/common.py:
	* flumotion/common/compat.py:
	* flumotion/common/componentui.py:
	* flumotion/common/config.py:
	* flumotion/common/dag.py:
	* flumotion/common/debug.py:
	* flumotion/common/enum.py:
	* flumotion/common/errors.py:
	* flumotion/common/gstreamer.py:
	* flumotion/common/interfaces.py:
	* flumotion/common/keycards.py:
	* flumotion/common/log.py:
	* flumotion/common/medium.py:
	* flumotion/common/package.py:
	* flumotion/common/planet.py:
	* flumotion/common/pygobject.py:
	* flumotion/common/registry.py:
	* flumotion/common/reload.py:
	* flumotion/common/setup.py:
	* flumotion/common/watched.py:
	* flumotion/common/worker.py:
	* flumotion/component/__init__.py:
	* flumotion/component/base/__init__.py:
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/base/admin_text.py:
	* flumotion/component/bouncers/__init__.py:
	* flumotion/component/bouncers/admin_gtk.py:
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/component/component.py:
	* flumotion/component/consumers/__init__.py:
	* flumotion/component/consumers/disker/__init__.py:
	* flumotion/component/consumers/disker/admin_gtk.py:
	* flumotion/component/consumers/disker/admin_text.py:
	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/httpstreamer/__init__.py:
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	* flumotion/component/consumers/preview/__init__.py:
	* flumotion/component/consumers/preview/preview.py:
	* flumotion/component/converters/__init__.py:
	* flumotion/component/converters/overlay/__init__.py:
	* flumotion/component/converters/overlay/genimg.py:
	* flumotion/component/converters/overlay/overlay.py:
	* flumotion/component/converters/pipeline/__init__.py:
	* flumotion/component/converters/pipeline/pipeline.py:
	* flumotion/component/effects/__init__.py:
	* flumotion/component/effects/colorbalance/__init__.py:
	* flumotion/component/effects/colorbalance/admin_gtk.py:
	* flumotion/component/effects/colorbalance/colorbalance.py:
	* flumotion/component/effects/volume/__init__.py:
	* flumotion/component/effects/volume/admin_gtk.py:
	* flumotion/component/effects/volume/volume.py:
	* flumotion/component/encoders/__init__.py:
	* flumotion/component/encoders/jpeg/__init__.py:
	* flumotion/component/encoders/jpeg/jpeg.py:
	* flumotion/component/encoders/mulaw/__init__.py:
	* flumotion/component/encoders/mulaw/mulaw.py:
	* flumotion/component/encoders/smoke/__init__.py:
	* flumotion/component/encoders/smoke/smoke.py:
	* flumotion/component/encoders/speex/__init__.py:
	* flumotion/component/encoders/speex/speex.py:
	* flumotion/component/encoders/theora/__init__.py:
	* flumotion/component/encoders/theora/theora.py:
	* flumotion/component/encoders/vorbis/__init__.py:
	* flumotion/component/encoders/vorbis/vorbis.py:
	* flumotion/component/encoders/vorbis/vorbis010.py:
	* flumotion/component/encoders/vorbis/vorbis08.py:
	* flumotion/component/encoders/vorbis/vorbisutils.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/feedcomponent010.py:
	* flumotion/component/feedcomponent08.py:
	* flumotion/component/muxers/__init__.py:
	* flumotion/component/muxers/multipart.py:
	* flumotion/component/muxers/ogg.py:
	* flumotion/component/producers/__init__.py:
	* flumotion/component/producers/audiotest/__init__.py:
	* flumotion/component/producers/audiotest/audiotest.py:
	* flumotion/component/producers/bttv/__init__.py:
	* flumotion/component/producers/bttv/admin_gtk.py:
	* flumotion/component/producers/bttv/bttv.py:
	* flumotion/component/producers/firewire/__init__.py:
	* flumotion/component/producers/firewire/admin_gtk.py:
	* flumotion/component/producers/firewire/firewire.py:
	* flumotion/component/producers/jukebox/__init__.py:
	* flumotion/component/producers/jukebox/jukebox08.py:
	* flumotion/component/producers/looper/__init__.py:
	* flumotion/component/producers/looper/admin_gtk.py:
	* flumotion/component/producers/looper/looper.py:
	* flumotion/component/producers/pipeline/__init__.py:
	* flumotion/component/producers/pipeline/pipeline.py:
	* flumotion/component/producers/soundcard/__init__.py:
	* flumotion/component/producers/soundcard/admin_gtk.py:
	* flumotion/component/producers/soundcard/soundcard.py:
	* flumotion/component/producers/videotest/__init__.py:
	* flumotion/component/producers/videotest/admin_gtk.py:
	* flumotion/component/producers/videotest/admin_text.py:
	* flumotion/component/producers/videotest/videotest.py:
	* flumotion/component/producers/webcam/__init__.py:
	* flumotion/component/producers/webcam/admin_gtk.py:
	* flumotion/component/producers/webcam/webcam.py:
	* flumotion/configure/__init__.py:
	* flumotion/configure/configure.py:
	* flumotion/configure/installed.py.in:
	* flumotion/configure/uninstalled.py.in:
	* flumotion/extern/__init__.py:
	* flumotion/extern/pytrayicon/__init__.py:
	* flumotion/job/__init__.py:
	* flumotion/job/job.py:
	* flumotion/job/main.py:
	* flumotion/launch/__init__.py:
	* flumotion/launch/inspect.py:
	* flumotion/launch/main.py:
	* flumotion/manager/__init__.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/base.py:
	* flumotion/manager/component.py:
	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/project/__init__.py:
	* flumotion/project/project.py:
	* flumotion/service/__init__.py:
	* flumotion/test/__init__.py:
	* flumotion/test/common.py:
	* flumotion/test/gtkunit.py:
	* flumotion/test/test_bundle.py:
	* flumotion/test/test_checkers.py:
	* flumotion/test/test_common.py:
	* flumotion/test/test_common_componentui.py:
	* flumotion/test/test_common_gstreamer.py:
	* flumotion/test/test_common_package.py:
	* flumotion/test/test_common_planet.py:
	* flumotion/test/test_common_pygobject.py:
	* flumotion/test/test_component.py:
	* flumotion/test/test_config.py:
	* flumotion/test/test_configure.py:
	* flumotion/test/test_credentials.py:
	* flumotion/test/test_dag.py:
	* flumotion/test/test_defer.py:
	* flumotion/test/test_dialogs.py:
	* flumotion/test/test_enum.py:
	* flumotion/test/test_flavors.py:
	* flumotion/test/test_greeter.py:
	* flumotion/test/test_htpasswdcrypt.py:
	* flumotion/test/test_http.py:
	* flumotion/test/test_keycards.py:
	* flumotion/test/test_log.py:
	* flumotion/test/test_manager_admin.py:
	* flumotion/test/test_manager_manager.py:
	* flumotion/test/test_manager_worker.py:
	* flumotion/test/test_parts.py:
	* flumotion/test/test_pb.py:
	* flumotion/test/test_reflect.py:
	* flumotion/test/test_twisted_compat.py:
	* flumotion/test/test_ui_fgtk.py:
	* flumotion/test/test_wizard.py:
	* flumotion/test/test_worker_worker.py:
	* flumotion/test/test_workerconfig.py:
	* flumotion/test/testclasses.py:
	* flumotion/tester/__init__.py:
	* flumotion/tester/client.py:
	* flumotion/tester/clientfactory.py:
	* flumotion/tester/httpclient.py:
	* flumotion/twisted/__init__.py:
	* flumotion/twisted/checkers.py:
	* flumotion/twisted/compat.py:
	* flumotion/twisted/credentials.py:
	* flumotion/twisted/defer.py:
	* flumotion/twisted/flavors.py:
	* flumotion/twisted/pb.py:
	* flumotion/twisted/portal.py:
	* flumotion/twisted/reflect.py:
	* flumotion/ui/__init__.py:
	* flumotion/ui/fgtk.py:
	* flumotion/ui/glade.py:
	* flumotion/ui/icons.py:
	* flumotion/ui/trayicon.py:
	* flumotion/wizard/__init__.py:
	* flumotion/wizard/classes.py:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/message.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/sidebar.py:
	* flumotion/wizard/step.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/worker.py:
	* flumotion/worker/__init__.py:
	* flumotion/worker/checks/__init__.py:
	* flumotion/worker/checks/video.py:
	* flumotion/worker/checks/video010.py:
	* flumotion/worker/checks/video08.py:
	* flumotion/worker/config.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	* tests/vorbis.py:
	* tools/fixheader.py:
	  2006 baby ! Brought to you by the Gratuitous Commit Department

2006-01-23  Andy Wingo  <wingo@pobox.com>

	* bin/flumotion-command.in (NEEDS_GTK): flumotion-command doesn't
	need gtk.

2006-01-17  Andy Wingo  <wingo@pobox.com>

	* flumotion/test/test_wizard.py (WizardSaveTest): Apparently these
	skip attributes need to be strings.

	* flumotion/test/test_manager_manager.py (TestVishnu): Make this
	first a log.loggable, then a unittest. Apparently unittest has
	picked up a .debug attribute which is a method that takes no
	arguments (other than self). Not sure what's going on here, but
	this fixes the test suite.

	* flumotion/test/test_common.py (TestObjRepr.testMe): Just test
	the repr of self -- works around what appears to be a bug in trial
	with twisted 2.1.

	* configure.ac: Check for twisted.web as well.

	* common/Makefile.am (EXTRA_DIST): 
	* common/twisted-module.m4: New m4, looks for twisted pieces.

	* configure.ac: Check that the user has twisted.names installed.

2006-01-12  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/encoders/vorbis/vorbis08.py
	(Vorbis.create_pipeline): Fix^2.

	* flumotion/component/producers/looper/looper.py (Looper.init):
	Move some inits here.

	* flumotion/component/encoders/vorbis/vorbis08.py
	(Vorbis.create_pipeline): Fold init stuff here. Fix code to look
	for props in the right place. Fix comments.

	* flumotion/component/converters/overlay/overlay.py (Overlay):
	* flumotion/component/consumers/disker/disker.py
	(Disker): Add comments.

	* flumotion/component/consumers/httpstreamer/http.py
	(MultifdSinkStreamer.init): Inits moved here from
	configure_pipeline().

	* flumotion/component/bouncers/htpasswdcrypt.py (HTPasswdCrypt.init): 
	* flumotion/component/bouncers/bouncer.py (Bouncer.init): 
	* flumotion/component/feedcomponent08.py (FeedComponent.init): 
	* flumotion/component/feedcomponent010.py (FeedComponent.init):
	Changed from __init__().

2006-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/launch/main.py:
	  fix flumotion-launch, it wasn't using getComponent
	* flumotion/common/errors.py:
	* flumotion/job/job.py:
	* flumotion/manager/base.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_manager_manager.py:
	* flumotion/worker/worker.py:
	  call methods create instead of start, because that's what it is
	  now

2006-01-12  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/component.py (BaseComponent): Mix in the
	InitMixin, call it too.
	(BaseComponent.init): Init variables in init(), why not.

	* flumotion/common/common.py (call_each_method): Fix a bugaboo.

	* flumotion/test/test_common.py (TestInitMixin): Bling!

	* flumotion/common/common.py (_uniq, _call_each_method): New
	helpers.
	(call_each_method, call_each_method_reversed): New public
	functions to call a method for each implementation in a class
	hierarchy.
	(InitMixin): New mixin class that will call init() implementations
	on an object using call_each_method_reversed.

2006-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/pychecker.mk:
	  09 -> 010
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/test/test_config.py:
	  fix some pychecker-y issues

2006-01-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/component-initialization-protocol:
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/component/feedcomponent010.py:
	* flumotion/component/feedcomponent08.py:
	* flumotion/component/producers/videotest/videotest.py:
	* flumotion/job/job.py:
	* flumotion/manager/manager.py:
	* flumotion/test/test_component.py:
	* flumotion/test/test_htpasswdcrypt.py:
	* flumotion/test/test_pb.py:
	  remove the config argument from component __init__
	  basic scenario still works; time to verify others
	* flumotion/component/component.py:
	  add setup() to medium
	* flumotion/manager/component.py:
	  remove config dict from getComponent

2006-01-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/component-initialization-protocol:
	* flumotion/test/test_component.py:
	* flumotion/test/test_pb.py:
	* flumotion/test/test_htpasswdcrypt.py:
	* flumotion/component/producers/videotest/videotest.py:
	* flumotion/manager/manager.py:
	  separate component setup() from __init__()
	  invoke setup() explicitly after creating components
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/component/feedcomponent010.py:
	* flumotion/component/feedcomponent08.py:
	  same as above, but also:
	  move member var initialization back to __init__
	* flumotion/manager/component.py:
	  add a setup() method to proxy to the job-side component
	  turn _startComponent in a defer generator that also takes care of
	  setup() for now
	* flumotion/component/component.py:
	  provide remote_setup to manager's ComponentAvatar
	* flumotion/component/feedcomponent.py:
	  remote_getState is not necessary anymore, since the eaterNames
	  and feederNames keys are set at the correct place

2006-01-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_manager_manager.py:
	  add a listener object to turn a state change on a RemoteCache
	  into a deferred so we can wait inside the unittest on a result
	  to happen

2006-01-09  Michael Smith  <msmith@fluendo.com>

	* flumotion/manager/component.py:
	  Add a perspective method to reserve worker ports, needed so that
	  RTCP servers can be started on demand.

2006-01-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	  remove loadConfiguration in ComponentHeaven, not used anymore

2006-01-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/worker.py:
	  add documentation and warnings for unexpected situations

2006-01-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/planet.py:
	  use a module global for keys we want to proxy from job to
	  component state
	  only proxy those keys, no others

2006-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	  use the name of the mood in an avatar representation
	* flumotion/test/test_manager_manager.py:
	  move the provideMasterClock closer to where we want it by
	  putting it in the _startComponent method, which now is a defgen

2006-01-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	  privatize a private instance var
	  collapse an else branch

2006-01-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/component:
	* doc/random/processes:
	  add notes about component creation phase and error handling
	* flumotion/job/job.py:
	* flumotion/manager/admin.py:
	  make it so components that ran into an error during creation
	  stop the job process, and the admin can restart those sad
	  non-running components.

2006-01-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/job/job.py:
	  clean up internal method names
	  privatize more internal variables

2005-12-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/Makefile.am:
	* data/upgrade-to-0.2.0.xsl:
	  add an xsl stylesheet to transform pre-0.2.0 config files
	* NEWS:
	  add notes on how to use it

2005-12-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/parts.py:
	  make it so that "Worker" column shows in italics the worker
	  that needs to log in for the component to be able to start
	* tests/ComponentsView.py:
	* tests/vorbis.py:
	  update tests

2005-12-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/save.py:
	  fix syntax error

2005-12-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* NEWS:
	  update
	* flumotion/common/common.py:
	* flumotion/test/test_common.py:
	  add common.compareVersions() method and test

2005-12-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/save.py:
	  save project and version in xml

2005-12-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/disker/disker.py:
	  move var declaration to class, out of setup
	  check if self.location is set from size rotation callback
	* flumotion/launch/main.py:
	  support longs

2005-12-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	  default to 8800 for port
	* flumotion/component/producers/soundcard/soundcard.py:
	  pick higher-quality defaults

2005-12-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	  LANGUAGE and LANG aren't necessarily set

2005-12-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/boot.py.in:
	* flumotion/manager/main.py:
	* flumotion/worker/main.py:
	  log the GStreamer version by sticking it in
	  flumotion.configure.configure

2005-12-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* NEWS:
	  add note about new config
	* flumotion.spec.in:
	  update spec for new config

2005-12-19  Edward Hervey  <edward@fluendo.com>

	* flumotion/component/converters/overlay/overlay.py:
	Update overlay do_start() method to new arguments (add clocking)

2005-12-15  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/command/commands.py (do_showcomponent): New
	command.

2005-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/Makefile.am:
	* flumotion/component/component.xml:
	* flumotion/component/encoders/Makefile.am:
	* flumotion/component/encoders/vorbis/vorbis.py:
	* flumotion/component/encoders/vorbis/vorbis.xml:
	* flumotion/component/encoders/vorbis/vorbis09.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/feedcomponent09.py:
	* flumotion/wizard/steps.py:
	* flumotion/worker/checks/Makefile.am:
	* flumotion/worker/checks/package.xml:
	* flumotion/worker/checks/video.py:
	* flumotion/worker/checks/video09.py:
	* po/nl.po:
	* po/no.po:
	  rename 09 files to 010

2005-12-15  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/command/commands.py (do_showplanet): New
	command.
	(do_getmood): New command.

2005-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/common/registry.py:
	  use common.pathToModuleName, it doesn't check on-disk for a file,
	  which breaks when using projects

2005-12-15  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/consumers/httpstreamer/http.py
	(Stats.updateState, MultifdSinkStreamer.configure_pipeline): Add
	'stream-bitrate-raw', 'stream-totalbytes-raw'
	'consumption-bitrate-raw', and 'consumption-totalbytes-raw'
	entries in the uiState.

	* flumotion/admin/command/main.py (usage): Less wrong options
	string.

	* flumotion/admin/command/Makefile.am (component_PYTHON): 
	* flumotion/admin/command/commands.py: 
	* flumotion/admin/command/utils.py: Factored some noise out of
	commands.py. Fixed a couple bugs as well.

2005-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/package.py:
	  add a docstring
	* flumotion/common/setup.py:
	  add a log line
	* flumotion/job/main.py:
	  set up package path - needed to make projects work

2005-12-15  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/command/main.py (setup_reactor.refused) 
	(setup_reactor.failed): Quit the reactor on errors.
	(setup_reactor.failed, setup_reactor.refused): Or, stop it.

	* flumotion/admin/command/commands.py (get_component_uistate): Fix
	format string.

	* flumotion/admin/command/main.py (setup_reactor.refused) 
	(setup_reactor.failed): Fix prototypes.
	(setup_reactor): Remove default errback.

	* flumotion/admin/command/commands.py (do_getprop): Actually
	implemented.
	(get_component_uistate): New helper method to get a component's
	uistate.
	(do_listprops): New operation, lists the properties on a
	component.
	(avatarId): New parser.
	(commands): Update the commands list.

	* flumotion/twisted/flavors.py (StateCacheable.keys): New method
	on StateCacheable objects. Should just make these derive from dict
	somehow.
	(StateRemoteCache.keys): Add the method on the cached objects as
	well.

	* flumotion/admin/command/main.py: Load commands from
	flumotion.admin.command.commands.

	* flumotion/admin/command/Makefile.am (component_PYTHON): 
	* flumotion/admin/command/commands.py: New file, split out from
	main.py. Here's where all of the commands will get defined.

	* flumotion/admin/command/main.py: Implement a bit more; just need
	to implement do_getprop and I'm there.

2005-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion.spec.in:
	  add -command
	  fix double includes

2005-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back down to gst-python 0.10.0
	* flumotion/component/producers/looper/looper.py:
	  move a regularly recurring debug line to log level 5
	  try to import discoverer and fail if not found

2005-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	  if we only have one arg for an exception and it's a string,
	  we can consider it an error message that we can show

2005-12-15  Edward Hervey  <edward@fluendo.com>

	* flumotion/component/producers/looper/Makefile.am:
	Forgot to add admin_gtk.py and the glade files to Makefile.am

2005-12-15  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/command/main.py: New file, committing
	prematurely so as to assuage the buildbots.

	* flumotion/test/test_manager_manager.py
	(FakeComponentMind.remote_provideMasterClock): Add a stub
	provideMasterClock implementation.
	(FakeComponentMind.remote_start): start() takes three args now.
	(FakeComponentMind.remote_start): Don't return anything.

2005-12-14  Edward Hervey  <edward@fluendo.com>

	* flumotion/component/producers/looper/admin_gtk.py:
	Remove print
	* flumotion/component/producers/looper/flufileinfo.glade:
	ellipsize the filename string

2005-12-14  Andy Wingo  <wingo@pobox.com>

	* flumotion/launch/main.py (ComponentWrapper.start): Call start()
	with the right number of args.

2005-12-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/config.py:
	  show component and property name in case of an error during
	  parsing of properties

2005-12-14  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/command/main.py: New file, implementing args
	parsing.

	* flumotion/admin/gtk/Makefile.am: 
	* flumotion/admin/command/__init__.py: Add new module space for
	flumotion-command.

	* bin/flumotion-command.in: New executable. Designed to log in to
	the manager, execute a command, wait for a response, and then
	exit.

	* configure.ac: 
	* bin/Makefile.am (bin_SCRIPTS): flumotion-command infrastructure.
	* flumotion/admin/Makefile.am (SUBDIRS): 

	* flumotion/manager/manager.py (Vishnu.loadConfiguration): Fix DAG
	error.

	* flumotion/manager/manager.py (Vishnu.releasePortsOnWorker):
	s/warning/debug/, the condition can occur legitimately. Cut out if
	the worker is not available.

	* flumotion/manager/component.py
	(ComponentHeaven.removeMasterClock): Renamed from
	removeMasterClockInfo. Release the port from the worker.
	(ComponentHeaven.unregisterComponent): If the component provided a
	master clock, remove its clocking info.

2005-12-14  Edward Hervey  <edward@fluendo.com>

	* configure.ac:
	Bump the gst-0.10 requirement to 0.10.0.1 because of the use of
	gst.extend.discoverer in the looper element.
	
	* flumotion/component/producers/looper/looper.py:
	* flumotion/component/producers/looper/looper.xml:
	* flumotion/component/producers/looper/looper.glade:
	* flumotion/component/producers/looper/flufileinfo.glade:
	* flumotion/component/producers/looper/admin_gtk.py:
	Glade-ified the admin UI.
	Rely on gst.extend.discoverer.Discoverer for discovering the file
	information, and using the flufileinfo UI to display it.
	Show current position in loop.

	* flumotion/component/producers/videotest/admin_gtk.py:
	typo fix

2005-12-14  Andy Wingo  <wingo@pobox.com>

	* flumotion/worker/checks/video09.py (checkWebcam): Do autoprobe
	colorspaces. Takes about 2 seconds, but it actually works (unlike
	the previous code).

	* flumotion/component/producers/webcam/webcam.py
	(Webcam.configure_pipeline): Only add colorspace effect for 0.8,
	until it's ported to 0.10.

	* flumotion/component/feedcomponent09.py
	(FeedComponent.provide_master_clock): Make sure the pipeline keeps
	using the clock we're providing.

2005-12-13  Andy Wingo  <wingo@pobox.com>

	* flumotion/manager/component.py (ComponentAvatar.start): Change
	to call getMasterClockInfo, not getMasterClock. Avoid slaving a
	clock to itself.
	(ComponentHeaven.registerComponent): Provide a master clock as
	appropriate.
	(ComponentHeaven.provideMasterClock): Actually implemented.
	(ComponentHeaven.getMasterClockInfo): Renamed from getMasterClock,
	implemented.
	(ComponentHeaven.removeMasterClockInfo): New function.

	* flumotion/manager/manager.py (Vishnu.loadConfiguration): Remove
	spurious variable.

	* flumotion/component/feedcomponent.py
	(FeedComponentMedium.remote_provideMasterClock): New remote
	method, proxies to the component.

	* flumotion/component/producers/audiotest/audiotest.xml: Up the
	priority of the clock here so that this clock is deterministically
	chosen when testing.

	* flumotion/component/feedcomponent09.py
	(FeedComponent.setup_pipeline): Disable automatic management of
	stream time.
	(FeedComponent.pipeline_stop): Deactivate and dispose of the clock
	provider, if any, when going to NULL.
	(FeedComponent.set_master_clock): Implement. Yay.
	(FeedComponent.provide_master_clock): New method, implemented.
	(FeedComponent.link): Activate the clock provider, if any, before
	going to PLAYING.

	* flumotion/component/feedcomponent08.py
	(FeedComponent.provide_master_clock): Ignore request to provide
	master clock on 0.8.

	* flumotion/manager/component.py (ComponentHeaven.getMasterClock):
	New method, returns a deferred that will fire whenever the
	information is available (possibly immediately). Right now just
	returns None.
	(ComponentHeaven.provideMasterClock): New method, called when a
	component provides a master clock. Not yet implemented...
	(ComponentAvatar.start): If we need a master clock, get that info
	using getMasterClock. Pass a third argument to start(), the
	clocking information, which can be None.

	* flumotion/component/feedcomponent.py
	(ParseLaunchComponent.do_start): Take a third argument, clocking,
	meant to be information about the master clock. Pass it on to a
	new FeedComponent method, set_master_clock.

	* flumotion/component/feedcomponent09.py
	(FeedComponent.set_master_clock): Stub set_master_clock
	implementation.

	* flumotion/component/feedcomponent08.py
	(FeedComponent.set_master_clock): Ignore request to set the master
	clock for 0.8, it's not supported.

	* flumotion/component/encoders/vorbis/vorbis08.py (Vorbis.start):
	Ignore the clocking arg.

2005-12-13  Michael Smith  <msmith@fluendo.com>

	* flumotion/project/project.py:
	  Catch syntax errors in exec() so that illegal project/module names are
	  caught, rather than getting an unhelpful message later.

2005-12-13  Andy Wingo  <wingo@pobox.com>

	* flumotion/manager/manager.py (Vishnu.loadConfiguration) 
	(Vishnu._addComponent, Vishnu._workerStartComponentDelayed): Get
	avatarId from the config dict, not the component mapper.

	* flumotion/common/config.py (FlumotionConfigXML._parseFlow):
	Instead of setting 'clock-master' to True or False, set it to
	either None (for no clock master) or an avatar ID of the component
	hosting the clock master.
	(FlumotionConfigXML._parseComponent): Set config['avatarId'] here.
	(FlumotionConfigXML._parseClockMaster): Return True or None.

	* flumotion/test/test_config.py (TestConfig.testParseProperties):
	False -> None.
	(TestConfig.testClockMasterAutoSelection) 
	(TestConfig.testClockMasterUserSelection): 'clock-master' =
	avatarId of component providing clock.

2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/converters/overlay/overlay.py:
	  move stray self._filename = None from the __init__ days
	  only use one pipeline template
	  reorder again so that pngdec part is first in the parse_launch;
	  don't change this, videomixer relies on the order
	  fix the ! being in the wrong place
	  Fixes overlay for 0.8, but not yet for 0.10: see
	  http://bugzilla.gnome.org/show_bug.cgi?id=323896
	  
	* flumotion/wizard/save.py:
	  warn about and do not write properties that are not listed in
	  the registry

2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/registry.py:
	  change RegistryEntryComponent to take a dict for properties, not
	  a list of values
	  add a .hasProperty()
	  update .getProperties() so interface is the same
	* flumotion/component/converters/overlay/genimg.py:
	  cosmetic fix
	* flumotion/job/job.py:
	  typo fix

2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	* flumotion/test/test_log.py:
	  make getExceptionMessage look at the top of the stack
	  add some unit tests to verify this; I seem to remember having
	  changed this piece before, so if that turns up again, add more
	  tests !

2005-12-12  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/feedcomponent08.py
	(FeedComponent._setup_feeders): Put feed_name definition back in.

	* flumotion/component/encoders/vorbis/vorbis08.py
	(Vorbis.__init__): Remove unused locals.

	* flumotion/job/job.py (JobMedium.remote_start): Don't take
	feedPorts as an arg, it's not necessary.
	(JobMedium._runComponent): No feedPorts. Also no need to
	setConfig, BaseComponent.__init__ does that.

	* flumotion/launch/main.py (ComponentWrapper.instantiate):
	set_feed_ports is gone.
	(main): Start the component with the ports allocated.

	* flumotion/manager/component.py (ComponentAvatar.cleanup):
	Release ports when the component is detached.
	(ComponentAvatar.getWorkerName): Use the jobState to get the
	worker name, because we have it before we have the componentState.
	(ComponentAvatar.start): Keep track of which ports we have
	reserved for the component.
	(ComponentAvatar.perspective_feedReady): Take a boolean instead of
	the port number -- we know which port it's on.
	(ComponentHeaven._getComponentFeedersData): This is where we
	actually allocate the ports.

	* flumotion/manager/manager.py (Vishnu.reservePortsOnWorker) 
	(Vishnu.releasePortsOnWorker): New vishnu methods.

	* flumotion/manager/worker.py (PortSet): New helper object to keep
	track of ports available on a worker.
	(WorkerAvatar.attached): Before notifying the heaven or vishnu
	about a new worker, call getPorts() to get the configured range of
	ports.
	(WorkerAvatar.reservePorts, WorkerAvatar.releasePorts): New
	methods.

	* flumotion/worker/worker.py (WorkerMedium.cb_processFinished) 
	(WorkerMedium.cb_processFailed): Removed, were not referenced
	anywhere.
	(WorkerMedium.remote_getPorts): New remote call, returns the set
	of ports this worker was configured to use.
	(WorkerMedium.__init__): Take ports as an initarg.
	(WorkerBrain.setup): JobHeaven doesn't need the ports.
	(Port): Port allocation code moved to manager.
	(JobAvatar.attached): Don't allocate ports for the kid, the
	manager will do that.
	(JobHeaven.__init__): No need to keep the port list around.

	* flumotion/component/feedcomponent08.py: 
	* flumotion/component/feedcomponent09.py (FeedComponent.setup):
	Remove feed_ports instance variable.
	(FeedComponent.set_feed_ports): Removed, feed ports are now passed
	to FeedComponent.start().
	(FeedComponent._setup_feeders): feedersData tuples now include the
	port as well. No need for a return value.
	(FeedComponent.link): Don't return anything, adapt to ports in
	feedersData.

	* flumotion/test/test_manager_manager.py
	(FakeWorkerMind.remote_getPorts): Implement the getPorts remote
	call on our fake worker.

	* flumotion/test/test_worker_worker.py
	(TestWorkerMedium.testSetRemoteReference): Update for WorkerMedium
	initargs change.

	* conf/managers/default/flows/ogg-test-theora.xml: Replace with
	standard components instead of pipeline components. The only
	videotestsrc pipeline had a fraction framerate.

2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/encoders/vorbis/vorbis08.py:
	  fix __init__ chainup due to recent refactoring

2005-12-12  Michael Smith  <msmith@fluendo.com>

	* flumotion/component/feedcomponent.py:
	  I was getting annoyed by a misspeld variable name.

2005-12-07  Andy Wingo  <wingo@pobox.com>

	* conf/managers/default/planet.xml: Update config syntax.

2005-12-07  Michael Smith  <msmith@fluendo.com>

	* flumotion/common/registry.py:
	  It has been pointed out to me that I can make the previous change 
	  specific to the single class in question rather than file-global.

2005-12-07  Michael Smith  <msmith@fluendo.com>

	* flumotion/common/registry.py:
	  Tell pychecker to allow the 12-arg constructor in this file.

2005-12-07  Michael Smith  <msmith@fluendo.com>

	* common/pychecker.mk:
	  Fix pychecker macros to look for gstreamer 0.10 instead of 0.9 so we
	  actually check the blah09.py files.

2005-12-07  Michael Smith  <msmith@fluendo.com>

	* flumotion/common/config.py:
	  Fix syntax in log call so that 'make check' passes again.

2005-12-06  Andy Wingo  <wingo@pobox.com>

	* flumotion/test/test_config.py (TestConfig.testClockMasterAutoSelection) 
	(TestConfig.testClockMasterUserSelection) 
	(TestConfig.testClockMasterError): New testes.

	* flumotion/common/config.py (FlumotionConfigXML._parseFlow):
	Choose a default master clock if necessary, sorting by the clock
	priorities in the registry.

	* flumotion/test/test_config.py (TestConfig.testParseProperties):
	Test that clock-master defaults to False.

	* flumotion/common/config.py
	(FlumotionConfigXML._parseClockMaster): Parse out <clock-master>
	from a config.

	* flumotion/component/encoders/Makefile.am: Don't try to dist
	encoders.xml.

	* flumotion/test/test_registry.py (TestRegistry.testDump): Update
	dump test for default synchronization writeout.
	(TestComponentEntry.setUp): Add a couple tests.

	* flumotion/common/registry.py
	(RegistryEntryComponent.__init__)
	(RegistryParser._parseSynchronization)
	(RegistryParser._parseComponent): Add support for parsing
	<synchronization>.
	(RegistryEntryComponent.getNeedsSynchronization) 
	(RegistryEntryComponent.getClockPriority): New accessors.
	(ComponentRegistry.dump): Support writing out the synchronization
	data.

	* flumotion/component/producers/audiotest/audiotest.xml: 
	* flumotion/component/producers/bttv/bttv.xml: 
	* flumotion/component/producers/firewire/firewire.xml: 
	* flumotion/component/producers/jukebox/jukebox.xml: 
	* flumotion/component/producers/looper/looper.xml: 
	* flumotion/component/producers/pipeline/pipeline.xml: 
	* flumotion/component/producers/soundcard/soundcard.xml: 
	* flumotion/component/producers/videotest/videotest.xml: 
	* flumotion/component/producers/webcam/webcam.xml: Add
	synchronization properties, as per the synchronization doc.

2005-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  put back the segfault handler
	  try to be helpful by pointing out the core dump file

2005-12-06  Andy Wingo  <wingo@pobox.com>

	* doc/random/synchronization: New file, describes how
	synchronization works in flumotion.

	* flumotion/component/encoders/encoders.xml: Removed, there are
	already xml files for all encoders.

	* flumotion/component/muxers/muxers.xml: 
	* flumotion/component/producers/audiotest/audiotest.xml: 
	* flumotion/component/producers/bttv/bttv.xml: 
	* flumotion/component/producers/jukebox/jukebox.xml: 
	* flumotion/component/producers/soundcard/soundcard.xml: 
	* flumotion/component/producers/videotest/videotest.xml: 
	* flumotion/component/encoders/jpeg/jpeg.xml: 
	* flumotion/component/encoders/mulaw/mulaw.xml: 
	* flumotion/component/encoders/smoke/smoke.xml: 
	* flumotion/component/encoders/speex/speex.xml: 
	* flumotion/component/encoders/theora/theora.xml: 
	* flumotion/component/encoders/vorbis/vorbis.xml: Remove "feed"
	properties. Unnecessary, given the <feeder> entries in the
	registry.

	* conf/managers/default/flows/ogg-test-theora.xml: Update for
	config changes.

	* flumotion/test/test.xml: Remove <feed> properties.

	* flumotion/wizard/save.py (Component.toXML): Don't write out
	<feed> entries.

	* flumotion/common/config.py (FlumotionConfigXML._parseFeeds):
	Removed.
	(FlumotionConfigXML._parseComponent): Take the feeds directly from
	the registry. A <feed> node in a <component> is an error. Could
	add something back when/if we support deactivated feeds.

	* flumotion/launch/inspect.py (main): Print out required/multiple
	attributes of eaters.

	* flumotion/launch/main.py (ComponentWrapper.__init__): Update for
	eater registry changes, removal of 'source' property.

	* flumotion/component/muxers/muxers.xml: Remove "source"
	properties, set multiple=yes on the feeders.

	* flumotion/component/encoders/encoders.xml: 
	* flumotion/component/encoders/jpeg/jpeg.xml: 
	* flumotion/component/encoders/mulaw/mulaw.xml: 
	* flumotion/component/encoders/smoke/smoke.xml: 
	* flumotion/component/encoders/speex/speex.xml: 
	* flumotion/component/encoders/theora/theora.xml: 
	* flumotion/component/encoders/vorbis/vorbis.xml: 
	* flumotion/component/converters/overlay/overlay.xml: 
	* flumotion/component/consumers/disker/disker.xml: 
	* flumotion/component/consumers/httpstreamer/http.xml: 
	* flumotion/component/consumers/preview/preview.xml: Remove
	"source" properties.

	* flumotion/common/config.py (FlumotionConfigXML._parseSources):
	Check multiple/required sources against the registry. Removes the
	need to have "source" properties in components.

	* flumotion/common/registry.py (RegistryEntryEater): New class, to
	store an <eater> node inside a <component>. This is because we
	need to know if some eaters can have multiple feeders, and if some
	eaters are required.
	(RegistryParser._parseEater): Parse the eater as a
	RegistryEntryEater.
	(ComponentRegistry.dump): Update to write out <eater> entries
	properly.

	* flumotion/test/test.xml:
	* flumotion/test/test_config.py (TestConfig.testParseProperties):
	Update for new syntax.

	* flumotion/common/config.py
	(FlumotionConfigXML._parseProperties): Parse the new property
	format. As a bonus, checks that properties actually exist in the
	registry.
	(FlumotionConfigXML._parseComponent): Validate that there are only
	'feed', 'source', and 'property' subnodes in <component> nodes.

	* flumotion/wizard/save.py (Component.toXML): Instead of putting
	properties in their own nodes ("<foo>bar</foo>"), put them in
	property nodes ("<property name='foo'>bar</property>"). Separates
	the XML namespace properly.

2005-12-05  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/encoders/encoders.xml: Remove duplicated
	registry entry for jpeg-encoder.

	* All components: adapted for new init protocol.

	* flumotion/manager/manager.py (Vishnu.loadConfiguration): Try to
	get the bouncer's entry point from the registry.

	* flumotion/component/feedcomponent.py
	(ParseLaunchComponent.create_pipeline): Implement the init
	protocol via calling get_pipeline_string, then creating a pipeline
	from that.
	(ParseLaunchComponent.set_pipeline): After chaining to the parent,
	call self.configure_pipeline to give subclasses a look at the
	pipeline.
	(ParseLaunchComponent.get_pipeline_string): New vmethod, to be
	implemented by subclasses.
	(ParseLaunchComponent.configure_pipeline): New vmethod.
	Implementation optional.

	* flumotion/component/component.py (BaseComponent.__init__):
	Implement the base of the initialization protocol via calling
	setConfig and setup; take a config dict as an arg so this can be
	an entry point.
	(BaseComponent.setup): Default setup implementation, does nothing.
	(BaseComponent.setConfig): Default setConfig implementation, sets
	self.config and self.name.

	* flumotion/component/feedcomponent09.py (FeedComponent.setup) 
	* flumotion/component/feedcomponent08.py (FeedComponent.setup):
	Implement the new initialization protocol. Was __init__.
	
	* flumotion/component/feedcomponent09.py
	(FeedComponent.set_pipeline)
	* flumotion/component/feedcomponent08.py
	(FeedComponent.set_pipeline): Implement set_pipeline, calls
	setup_pipeline.

	* flumotion/component/bouncers/htpasswdcrypt.xml: entry =
	HTPasswdCrypt.

	* flumotion/component/bouncers/htpasswdcrypt.py
	(HTPasswdCrypt.setup): Fold createComponent into here, allow
	BaseComponent.__init__ to be the entry point. Adapt to properties
	as a subdict of config.

	* flumotion/component/bouncers/bouncer.py (Bouncer.setup): Update
	to the new initialization protocol.

	* flumotion/common/config.py (FlumotionConfigXML._parseComponent):
	Put properties in config['properties']. The XML representation for
	now is the same though.

	* flumotion/launch/main.py (ComponentWrapper.__init__): Put
	properties in config['properties'], not config itself. Set
	config['feed'] from the registry, and ignore missing
	config['properties]['source'] for now, it's in config['source'] --
	components shouldn't have 'source' as a property anyway.

	* flumotion/test/test_config.py (TestConfig.testParseProperties):
	Update for properties being in a subdict of config.

	* flumotion/test/test_component.py (PipelineTest): Adapt to new
	__init__ args. Override the pipeline creation parts of the init
	protocol so that we don't try to gst.parse_launch with made-up
	names.
	(TestParser.testErrors): Don't skip this one; it passes here.
	(pipelineFactory): Update so that PipelineTest gets the right
	pipeline.

	* flumotion/test/test_htpasswdcrypt.py
	(TestHTPasswdCryptKeycard.setUp)
	(TestHTPasswdCryptUACPP.setUp, TestHTPasswdCryptUACPCC.setUp):
	* flumotion/test/test_pb.py (Test_FPBClientFactory.setUp) 
	(Test_BouncerWrapper.setUp): Update for bouncer initialization
	changes.

	* flumotion/wizard/steps.py (TestAudioSource.worker_changed):
	Check for audiotestsrc when working with 0.10.

2005-12-02  Michael Smith  <msmith@fluendo.com>

	* configure.ac:
	* flumotion/common/boot.py.in:
	* tests/checks.py:
	* tests/debugslider.py:
	* tests/vorbis.py:
	  0.10 is on the way; update everything to use 0.10 rather than 0.9,
	  other than file renaming.

2005-11-29  Edward Hervey  <edward@fluendo.com>

	* flumotion/component/producers/looper/looper.py: 
	* flumotion/component/producers/looper/looper.xml:
	Update fraction behaviour,
	Use single-segment identity so the stream really behaves as a live
	stream.

2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  fractions should be saved as %d/%d, not tuple

2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  fix syntax error

2005-11-28  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/producers/looper/looper.py
	(Looper.__init__):
	* flumotion/component/producers/videotest/videotest.py
	(VideoTest.__init__):
	* flumotion/component/producers/bttv/bttv.py (BTTV.__init__):
	* flumotion/component/producers/firewire/firewire.py
	(Firewire.__init__):
	* flumotion/component/producers/webcam/webcam.py
	(Webcam.__init__): Handle fraction framerate properly in 0.8 and
	0.9.

	* flumotion/component/encoders/jpeg/jpeg.xml: 
	* flumotion/component/producers/bttv/bttv.xml: 
	* flumotion/component/producers/firewire/firewire.xml: 
	* flumotion/component/producers/videotest/videotest.xml: 
	* flumotion/component/producers/webcam/webcam.xml: Framerate is
	now a fraction.

	* flumotion/wizard/steps.py (fraction_from_float): New utility for
	making fractions from floats given the denominator.
	(TVCard.get_state, FireWire.get_state, Webcam.get_state) 
	(TestVideoSource.get_state, JPEG.get_state): Fractional
	framerates.

	* flumotion/common/config.py
	(FlumotionConfigXML._get_fraction_value): New property type
	parser.
	(FlumotionConfigXML._parseProperties): Add parser for fractions.

	* flumotion/test/test_config.py (TestConfig.testParseProperties):
	Add a test for fraction-typed properties.

2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/bttv/bttv.xml:
	  fix bttv depending on colorbalance effect

2005-11-24  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/encoders/theora/theora.py (Theora.__init__):
	Whoops!

	* flumotion/component/producers/videotest/videotest.py
	(VideoTest.__init__): Temporary hack for framerate, will fix later.

	* flumotion/component/producers/audiotest/audiotest.py
	(AudioTest.__init__): audiotestsrc in 0.9.

	* flumotion/common/log.py (FluLogObserver.emit): Print tracebacks
	at WARN now that the defer_generator tracebacks are not spamming
	any more.

	* flumotion/component/consumers/httpstreamer/http.xml: 
	* flumotion/component/consumers/httpstreamer/http.py
	(MultifdSinkStreamer.__init__): entry = MultifdSinkStreamer

	* flumotion/component/consumers/disker/disker.xml: 
	* flumotion/component/consumers/disker/disker.py
	(Disker.__init__): entry = Disker

	* flumotion/component/consumers/preview/preview.xml: 
	* flumotion/component/consumers/preview/preview.py
	(Preview.__init__): entry = Preview

	* flumotion/component/muxers/ogg.py (Ogg.__init__): 
	* flumotion/component/muxers/multipart.py (Multipart.__init__): 
	* flumotion/component/muxers/muxers.xml: Add entry for Multipart,
	ogg entry = Ogg

	* flumotion/component/encoders/jpeg/jpeg.xml: 
	* flumotion/component/encoders/jpeg/jpeg.py (JPEG.__init__): Added
	entry XML node, entry = JPEG. Doesn't work now if framerate is
	specified due to fractions.

	* flumotion/component/encoders/mulaw/mulaw.xml: 
	* flumotion/component/encoders/mulaw/mulaw.py (Mulaw.__init__):
	Added entry XML node, entry = Mulaw

	* flumotion/component/encoders/smoke/smoke.xml: 
	* flumotion/component/encoders/smoke/smoke.py (Smoke.__init__):
	Added entry XML node, entry = Smoke

	* flumotion/component/encoders/smoke/smoke.xml: 

	* flumotion/component/encoders/speex/speex.xml:
	* flumotion/component/encoders/speex/speex.py (Speex.__init__):
	Added entry XML node, entry = Speex

	* flumotion/component/encoders/theora/theora.xml: 
	* flumotion/component/encoders/theora/theora.py (Theora.__init__):
	entry = Theora, beautified

	* flumotion/component/encoders/vorbis/vorbis.xml: 
	* flumotion/component/encoders/vorbis/vorbis08.py: 
	* flumotion/component/encoders/vorbis/vorbis09.py: 
	* flumotion/component/encoders/vorbis/vorbis.py: entry = Vorbis

2005-11-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  fix remote_checkElements() because element_factory_make now raises
	  when plug-ins are missing

2005-11-24  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/converters/overlay/overlay.xml: 
	* flumotion/component/converters/overlay/overlay.py
	(Overlay.__init__): entry = Overlay

	* flumotion/component/converters/pipeline/pipeline.xml: 
	* flumotion/component/converters/pipeline/pipeline.py
	(Converter.__init__): entry = Converter

2005-11-18  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/producers/firewire/firewire.py
	(Firewire.__init__):
	* flumotion/component/producers/soundcard/soundcard.py
	(Soundcard.__init__):
	* flumotion/component/producers/bttv/bttv.py (BTTV.__init__):
	build fixes

	* flumotion/component/producers/audiotest/audiotest.xml: 
	* flumotion/component/producers/audiotest/audiotest.py
	(AudioTest.__init__): entry = AudioTest

	* flumotion/component/producers/bttv/bttv.xml: 
	* flumotion/component/producers/bttv/bttv.py (BTTV.__init__):
	entry = BTTV

	* flumotion/component/producers/firewire/firewire.xml: 
	* flumotion/component/producers/firewire/firewire.py
	(Firewire.__init__): entry = Firewire

	* flumotion/component/producers/looper/looper.xml: 
	* flumotion/component/producers/looper/looper.py
	(Looper.__init__): entry = Looper

	* flumotion/component/producers/pipeline/pipeline.py
	(Producer.__init__): entry = Producer
	* flumotion/component/producers/pipeline/pipeline.xml: entry =
	Producer

	* flumotion/component/producers/soundcard/soundcard.xml: entry =
	Soundcard
	* flumotion/component/producers/soundcard/soundcard.py
	(SoundcardProducer.__init__): entry = Soundcard

	* flumotion/component/producers/webcam/webcam.py
	(Webcam.__init__): Refactor so entry = Webcam
	* flumotion/component/producers/webcam/webcam.xml: entry = Webcam

	* flumotion/component/producers/videotest/videotest.xml: Set the
	class as the component entry point.

	* flumotion/component/producers/videotest/videotest.py
	(VideoTest.__init__): Move createComponent code to __init__. This
	is probably how all components should be done.

	* flumotion/manager/worker.py (WorkerAvatar.start): Pull the entry
	point from the registry.

	* flumotion/component/producers/pipeline/pipeline.py
	(Producer.__init__): Fix stupid errors

	* flumotion/common/log.py (theFluLogObserver): Make a singleton
	normally.

	* flumotion/common/bundleclient.py (BundleLoader.getBundles):
	Fool pychecker -- for some reason it doesn't like os at the
	toplevel here.

	* flumotion/component/converters/pipeline/pipeline.py
	(Converter.__init__):
	* flumotion/component/producers/pipeline/pipeline.py
	(Producer.__init__):
	* flumotion/component/producers/soundcard/soundcard.py
	(SoundcardProducer.__init__): Don't poke config['feed'], this is
	not a property.

2005-11-16  Edward Hervey  <edward@fluendo.com>

	* flumotion/component/producers/looper/looper.py: (createComponent): 
	Fix looper pipeline.

2005-11-15  Edward Hervey  <edward@fluendo.com>

	* flumotion/component/producers/looper/looper.py: (Looper._message_cb):
	so if we loop 1 000 000 000 times we end up playing one second less.... bad !

2005-11-15  Edward Hervey  <edward@fluendo.com>

	* configure.ac:
	* flumotion/component/producers/Makefile.am
	* flumotion/component/producers/looper/Makefile.am
	* flumotion/component/producers/looper/__init__.py
	* flumotion/component/producers/looper/looper.xml	
	* flumotion/component/producers/looper/looper.py: (createComponent): 
	Added looper element for ogg/vorbis/theora. Loops the entire file.

2005-11-14  Michael Smith <msmith@fluendo.com>

	* flumotion/launch/main.py:
	  Make flumotion-launch work again by importing flumotion.configure
	  before using it.

2005-11-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	  make theFluLogObserver a singleton
	  add ignoreErrors and clearIgnores so we can ignore PB-related
	  tracebacks from trial
	* flumotion/test/test_pb.py:
	  use these new methods to remove the stray prints

2005-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* po/nl.po:
	* po/no.po:
	  back to TRUNK

=== release 0.1.10 ===

2005-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac: releasing 0.1.10, "Rosa Negra"

2005-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/boot.py.in:
	  Don't offend our dear users

2005-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	  remove print

2005-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/launch/inspect.py:
	  Fix flumotion-inspect with projects

2005-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	  add a NoProjectError
	* flumotion/project/project.py:
	  raise it
	* flumotion/common/registry.py:
	  catch it
	* flumotion/launch/main.py:
	  add some logging about projects

2005-11-10  Julien MOUTTE  <julien@moutte.net>

	* flumotion/component/feedcomponent.py:
	  give a warning when we can't parse pipeline
	* flumotion/component/producers/webcam/webcam.py:
	  remove colorspace, and the double quotes that don't work in 0.8

2005-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/webcam/webcam.py:
	  make launch line pasteable
	* flumotion/component/producers/webcam/webcam.xml:
	  fix dependency on colorbalance effect

2005-11-10  Julien MOUTTE  <julien@moutte.net>

	* flumotion/component/consumers/httpstreamer/resources.py:
	  set the broadcast Pragma for ASF streams

2005-11-10  Julien MOUTTE  <julien@moutte.net>

	* flumotion/common/log.py:
	  log the correct end of the stack
	* flumotion/component/producers/firewire/firewire.xml:
	  add the dependency on the volume effect
	* flumotion/job/job.py:
	  add a fixme

2005-11-10  Michael Smith <msmith@fluendo.com>

	* flumotion/component/producers/videotest/videotest.xml:
	  Don't have 'wizard' as a dependency, since no such bundle exists.
	  Prevents a warning when using videotest admin interface.

2005-11-10  Andy Wingo  <wingo@pobox.com>

	* flumotion/twisted/defer.py
	(defer_generator.wrapper.with_saved_callbacks): whoops, call with
	the right args

	* flumotion/test/test_defer.py (TestDefer.testExceptionChain): New
	test, checks that chained errbacks work. Won't actually error if
	the traceback-printing bug is hit, but you will see output.

	* flumotion/twisted/defer.py
	(defer_generator.wrapper.with_saved_callbacks): New procedure,
	executes its arguments with the deferred's callbacks set to what
	they were in the beginning. A bit hacky but the rationale is in
	the comments.
	(defer_generator.wrapper.default_errback): Add errbacks from
	within with_saved_callbacks.

	* flumotion/admin/text/view.py: Revert debugging commit.

2005-11-10  Michael Smith <msmith@fluendo.com>

	* flumotion/component/feedcomponent09.py:
	  Return true from buffer probe callback; this avoids dropping crucial
	  caps buffers on the floor.

2005-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/package.py:
	  have a logCategory
	* flumotion/job/job.py:
	* flumotion/worker/worker.py:
	  add some debug
	* flumotion/component/producers/soundcard/soundcard.xml:
	  fix the volume effect

2005-11-10  Andy Wingo  <wingo@pobox.com>

	* flumotion/launch/main.py (main): Print feed ports for debugging
	porpoises.

2005-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  Fix logging in jobs by correctly passing the environment

2005-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundleclient.py:
	  Fix loading of glade files and other bundled files

2005-11-09  Michael Smith <msmith@fluendo.com>

	* bin/Makefile.am:
	* configure.ac:
	* flumotion/admin/Makefile.am:
	* flumotion/admin/text/Makefile.am:
	* flumotion/admin/text/admin_text.py:
	* flumotion/admin/text/connection.py:
	* flumotion/admin/text/greeter.py:
	* flumotion/admin/text/main.py:
	* flumotion/admin/text/misc_curses.py:
	* flumotion/admin/text/view.py:
	* flumotion/component/base/Makefile.am:
	* flumotion/component/base/base.xml:
	* flumotion/component/consumers/disker/Makefile.am:
	* flumotion/component/consumers/disker/disker.xml:
	* flumotion/component/producers/videotest/Makefile.am:
	* flumotion/component/producers/videotest/videotest.xml:
	  Text Admin!
	  Thanks a lot to Zaheer for pushing this through.
	  Still need to clean up deferred error handling for this to be usable
	  without modifications, though.

2005-11-09  Andy Wingo  <wingo@pobox.com>

	* flumotion/worker/Makefile.am (flumotion_PYTHON): Remove job.py

	* configure.ac: Add job/Makefile

2005-11-09  Thomas Vander Wingo  <wingo@apestaart.com>

	* flumotion/job/job.py (JobMedium.remote_bootstrap): New remote
	method, to be called before remote_start.

	* flumotion/job/Makefile.am: 
	* flumotion/job/__init__.py: 
	* flumotion/job/job.py:
	* flumotion/job/main.py: New files, yay. job.py is what
	flumotion.worker.job.py was. main.py is the code for the
	flumotion-job main loop.

	* flumotion/worker/worker.py (WorkerMedium.remote_start): Don't
	actually load the modules, just fetch the bundles and their paths.
	Fix already-starting error detection.
	(Kid.__init__): New field, bundles, the paths that the kid should
	register.
	(JobProcessProtocol): New class, lets the kindergarten know when a
	process exits.
	(Kindergarten.play): New option, bundles. Don't actually fork,
	just call reactor.spawnProcess on flumotion-job. Fixes lots of
	bugs.
	(getSocketPath): Moved here from flumotion.worker.job. Should be
	removed at some point, whereby workers communicate with jobs over
	normal fd's.
	(WorkerBrain.__init__): Don't set a sigchild handler, spawnProcess
	does everything for us.
	(WorkerBrain.keycard): New field; passed to jobs when
	bootstrapping.
	(JobAvatar.attached): Call 'bootstrap' on the job before calling
	'start'; allows the kid to register the necessary package paths,
	and to receive credentials for logging into the manager.
	(JobHeaven.getKeycard, JobHeaven.getWorkerName): Nice new methods,
	retrieve properties from the worker brain.

	* flumotion/component/consumers/httpstreamer/http.xml: Add
	resources.py to the bundle.

	* flumotion/component/base/admin_gtk.py (BaseAdminGtkNode.render):
	Catch errors loading the glade file.

	* flumotion/component/converters/overlay/overlay.xml: Bundle up
	genimg.py, the png files, and the font.

	* flumotion/common/bundleclient.py (BundleLoader.getBundles):
	Change to return a list of (bundleName, bundlePath) tuples instead
	of (bundleName, bundleSum).
	(BundleLoader.loadModule, BundleLoader.getBundleByName) 
	(BundleLoader.getFile):
	* flumotion/admin/admin.py (AdminModel.getEntry): Adapt to
	getBundles change.

	* flumotion/twisted/defer.py
	(defer_generator.wrapper.default_errback.print_traceback): Print
	out what is printing this message.

	* flumotion/test/test_worker_worker.py (TestKid.testGetPid) 
	(TestKindergarten.testRemoveKidByPid): Adapt to worker.Kid()
	constructor change.

	* Makefile.am (PYCHECKER_WHITELIST): Add flumotion/job to the
	pychecker whitelist.

	* conf/workers/default.xml (feederports): Default to 20 free ports
	so that by default you can enable all 6 consumers.

	* bin/flumotion-job.in: New executable, run by the worker instead
	of having the worker fork.

	* configure.ac (AC_CONFIG_FILES):
	* bin/Makefile.am (bin_SCRIPTS): Add flumotion-job.

2005-11-08  Andy Wingo  <wingo@pobox.com>

	* flumotion/worker/job.py (run): Run reactor recursively.
	(JobMedium.shutdown): Instead of cleanly exiting, do os._exit(0).
	Temporary hack, partially reverts changeset 2412.

2005-11-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent09.py:
	  log first buffer's timestamp on tcpclientsrc to help
	  in debugging startup time

2005-11-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  Implement restart component

2005-11-08  Andy Wingo  <wingo@pobox.com>

	* flumotion/common/debug.py (print_stack): New function, prints a
	backtrace with local variables.

	* flumotion/worker/job.py (JobClientFactory.login): Refactor a bit
	of the login code.
	
	* flumotion/worker/job.py: Remove unused gobject import.

	* flumotion/component/encoders/vorbis/vorbis08.py
	(Vorbis._start_feeders): No more notify-feed-ports.

	* flumotion/component/feedcomponent09.py (FeedComponent)
	(FeedComponent.link):
	* flumotion/component/feedcomponent08.py (FeedComponent)
	(FeedComponent.link): No more notify-feed-ports.

	* flumotion/component/feedcomponent.py
	(FeedComponentMedium.__init__.on_component_notify_feed_ports):
	Removed.
	(FeedComponentMedium.__init__): Don't connect to
	notify-feed-ports.
	(FeedComponentMedium.__init__.on_feed_ready): Pass the port we
	feed on, or None, instead of a boolean.
	(ParseLaunchComponent.do_start): Redoc.

	* flumotion/manager/component.py
	(ComponentAvatar.perspective_notifyFeedPorts)
	(ComponentAvatar.perspective_feedReady): Combine two-stage
	"notify-feed-ports then feed-ready" into a one-stage "feed-ready
	with port" call. Removes some nice bugs. notifyFeedPorts is no
	longer there.
	(ComponentAvatar.perspective_log): Remove log method. used to be
	used for sending all logging events to the manager, but that was
	deemed too expensive months ago. A new logging framework would be
	different anyway.
	(ComponentAvatar.setFeederReadiness): Roll into
	perspective_feedReady.

	* flumotion/component/consumers/disker/disker.py
	(Disker.link_setup.feeder_state_change_cb): Fix borken refactor.

2005-11-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundleclient.py:
	* flumotion/common/package.py:
	* flumotion/worker/worker.py:
	  Register package paths without rebuilding every possible module;
	  should both work and be fast enough

2005-11-07  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/consumers/httpstreamer/http.py
	(MultifdSinkStreamer.pipe_template): Don't sync to timestamps in
	0.9.

	* flumotion/component/encoders/vorbis/vorbis08.py
	(Vorbis._start_feeders): Emit notify-feed-ports before going to
	playing -- prevents race conditions like the ones that were in
	feedcomponent08.py.

	* flumotion/manager/manager.py (Dispatcher.requestAvatar): Better
	debugging.

	* flumotion/component/component.py
	(ComponentClientFactory.gotDeferredLogin.alreadyLoggedInErrback):
	Punt on what the failure actually is...

	* flumotion/component/feedcomponent08.py (FeedComponent.link): Set
	to paused, notify ports, then play. Fixes race condition between
	component and manager.

	* flumotion/component/consumers/disker/disker.py
	(Disker.pipe_template): Use a version-dependent pipeline.

	* flumotion/component/feedcomponent09.py
	(FeedComponent.bus_watch_func): Move hacky feeder->feed munge
	here...

	* flumotion/component/feedcomponent.py
	(FeedComponentMedium.__init__.on_feed_ready): ... from here. Fixes
	0.8 feed-ready notification.

	* flumotion/component/feedcomponent08.py
	(FeedComponent.feeder_state_change_cb): Remove out of date
	comment.

2005-11-07  Julien MOUTTE  <julien@moutte.net>

	* doc/man/flumotion-worker.1: Add example for feederports.

2005-11-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  remove loading bundles for component until we fix CPU use

2005-11-07  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/consumers/disker/disker.py: Make it work
	with 0.9.

	* flumotion/common/boot.py.in (init_gst): Fix version check.
	(init_gst): Move the pygst_dir up to the front.

	* flumotion/manager/component.py
	(ComponentAvatar._mindGetStateCallback): debugging.
	(ComponentAvatar.perspective_notifyFeedPorts): Doc the argument
	type. Actually implement.
	(ComponentAvatar.start): Ignore the return value of calling start
	on the component, rather choosing to wait for the notifyfeedports.

	* flumotion/component/feedcomponent.py
	(FeedComponentMedium.__init__.on_feed_ready)
	(FeedComponentMedium.__init__.on_component_notify_feed_ports):
	Hacks to make sure we callRemote with the right feeder names. The
	feeder names *really* need to be canonicalized at some point
	(feeder:foo:default vs foo:default vs default).
	(ParseLaunchComponent.do_start): Document obsolete return value.

	* flumotion/component/component.py
	(ComponentClientFactory.__init__): Clean some code that checks for
	obsolete conditions.

	* flumotion/component/feedcomponent09.py (FeedComponent.link):
	Pause the pipeline, notify the feed ports, and then set the
	pipeline to playing. Should avoid race conditions with the ports
	being ready.
	(FeedComponent.bus_watch_func): Fix some feeder name checks.

	* flumotion/common/gstreamer.py (verbose_deep_notify_cb): Don't do
	a g_idle_add so as to avoid bug #320886.

2005-11-03  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/component.py (BaseComponent): No more 'log'
	signal. Nothing was emitting it.
	(BaseComponentMedium.__init__): Don't try to connect to
	component's log signal.

	* flumotion/worker/job.py (JobMedium._enable_core_dumps): Fix some
	log typos.
	(JobMedium.threads_init): Removed, obsolete.
	(run): Reorganize try/except blocks.

	* flumotion/worker/job.py (run): Add some docs.

	* flumotion/worker/worker.py (JobAvatar.attached): Turned into a
	defer generator method. Folded in _cb_afterInitial; no need to
	call 'initial' on the job medium, as the options dict has all of
	the necessary information.

	* flumotion/worker/job.py (JobMedium.__init__): Set manager host,
	port, and transport directly from the options dictionary.
	(JobMedium.remote_initial): No need for this any more.

	* flumotion/worker/worker.py (WorkerBrain.deferredStartCreate):
	Throw ComponentAlreadyStartingError if appropriate instead of
	returning None.

	* flumotion/common/errors.py (ComponentAlreadyStartingError): New
	error, thrown when worker told to start a component but it's
	already starting.

	* flumotion/worker/worker.py (WorkerBrain._SIGTERMHandler): Don't
	set reactor.killed, the old sigterm handler will call
	reactor.stop() which will trigger .killed to be set.
	
	* flumotion/worker/worker.py (WorkerMedium.remote_start): Comment
	a bit.

	* flumotion/worker/main.py (main): Don't set reactor.killed,
	that's handled by flumotion.twisted.compat.install_reactor().

2005-11-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/managers/default/flows/ogg-test-theora.xml:
	  update for component rename
	* flumotion/component/producers/audiotest/audiotest.py:
	* flumotion/component/producers/videotest/videotest.py:
	  for 0.8, make sure these GStreamer sources sync to the clock,
	  so they don't flood the CPU.

2005-11-02  Andy Wingo  <wingo@pobox.com>

	* flumotion/common/log.py (scrubFilename): Whoops, pychecker
	caught a bug.

	* flumotion/worker/worker.py (WorkerMedium.remote_start): Turned
	into a defer generator method. Do a callLater right before forking
	so that the stack won't have any reads in progress -- because
	delayed calls are part of IReactorTime and read/writes are part of
	IReactorFDSet, they are guaranteed(tm) not to interact. Fixes lots
	of nastiness.

	* flumotion/common/debug.py (trace_start): Add ignore_files_re and
	write optional arguments.

	* flumotion/component/component.py
	(ComponentClientFactory.gotDeferredLogin.remoteDisconnected):
	* flumotion/worker/worker.py
	(WorkerClientFactory.gotDeferredLogin.remoteDisconnected): Know
	when to hold em, know when to fold em.

	* flumotion/twisted/compat.py (install_reactor): Add an instance
	variable, 'killed', that indicates whether a reactor is being
	killed or not. Allows reconnecting factories to know when not to
	warn.

	* flumotion/worker/job.py (run): Only profile if the FLU_PROFILE
	environment variable was set.

	* flumotion/common/log.py (_handle.getFileLine): Don't extract the
	whole stack, just work back frame by frame getting the information
	we need.

2005-11-02  Andy Wingo  <wingo@pobox.com>

	* flumotion/test/test_log.py: Update test suite.

	* flumotion/common/Makefile.am (flumotion_PYTHON): 
	* flumotion/common/debug.py: New module, exports trace_start() and
	trace_stop() procedures.

	* flumotion/common/log.py (ERROR, WARN, INFO, DEBUG, LOG): New
	integer values exported by the module.
	(_levels, getLevel): Removed; levels are ints and not strings.
	(getLevelName): New proc. Does type-checking on its input. Should
	really have some nice decorators to check types.
	(registerCategory): Adapted for the change to levels.
	(_canShortcutLogging): New proc, returns True if no logging will
	be performed for this category at this level.
	(_handle): Make scrubFileName and getFileLine internal. Adapt to
	level changes. Don't call getFileLine if not necessary.
	(Loggable.error, Loggable.warning, Loggable.info, Loggable.debug) 
	(Loggable.log): if _canShortcutLogging(), avoid doing expensive
	calculations.
	(FluLogObserver.emit): Adapt to level changes.
	(stderrHandler): Same.

2005-10-31  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/feedcomponent.py
	(FeedComponentMedium.__init__.on_feed_ready): The remote method is
	feedReady, not notifyFeedPorts.

	* flumotion/component/feedcomponent09.py
	(FeedComponent.bus_watch_func): Set to happy only from the global
	pipeline state change message. Log a little less.

	* flumotion/worker/job.py (run): Profile the job if profiling is
	available. Don't start another reactor; rely on worker.py
	unwinding cleanly.
	(JobMedium.shutdown): Don't os._exit(0), allow twisted to clean
	itself properly.

	* flumotion/worker/worker.py (WorkerMedium.remote_start): Rework
	to receive return values both from the parent and child process.
	Now uses defer generators.
	(Kindergarten.play): Return the pid or None like os.fork().

	* flumotion/twisted/compat.py (install_reactor): Don't spawn
	threads to resolve names with twisted 2.0.

2005-10-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>

	* flumotion/twisted/gtk2reactor.py:
	  replace _disconnectSelectable with code from 1.3

2005-10-27  Andy Wingo  <wingo@pobox.com>

	* flumotion/launch/main.py (ComponentWrapper.__init__): Work with
	the 'source'-is-always-a-list change.

	* flumotion/component/producers/firewire/firewire.py
	(createComponent): Throw a leaky queue after dv1394src, so that if
	the sink starts blocking the buffers still have somewhere to go.
	Otherwise the kernel starts complaining about every dropped iso
	packet, overloading the system.

	* flumotion/component/converters/overlay/overlay.py
	(Overlay.start): Don't rely on show_text or text being there.

	* flumotion/component/converters/overlay/overlay.xml: feed no
	longer a required property. width and height are, for now --
	although really we should just get this info from the incoming
	caps.

2005-10-26  Andy Wingo  <wingo@pobox.com>

	* flumotion/common/config.py (FlumotionConfigXML._parseComponent):
	Parse feeds and sources separately, in preparation for making them
	not overlap with properties. config['source'] will now always be a
	list.
	(FlumotionConfigXML._parseFeeds) 
	(FlumotionConfigXML._parseSources): New functions dude.

	* flumotion/component/consumers/disker/disker.py
	(Disker.__init__):
	* flumotion/component/consumers/httpstreamer/http.py
	(MultifdSinkStreamer.__init__):
	* flumotion/component/consumers/preview/preview.py
	(Preview.__init__):
	* flumotion/component/encoders/jpeg/jpeg.py (createComponent): 
	* flumotion/component/encoders/mulaw/mulaw.py (createComponent): 
	* flumotion/component/encoders/smoke/smoke.py (createComponent): 
	* flumotion/component/encoders/speex/speex.py (createComponent): 
	* flumotion/component/encoders/theora/theora.py (createComponent): 
	* flumotion/component/encoders/vorbis/vorbis.py (createComponent): 
	* flumotion/component/converters/overlay/overlay.py
	(createComponent): Adapt to work with config['source'] always
	being a list.

	* flumotion/component/encoders/vorbis/vorbis08.py
	(createComponent): Remove unused function.

	* flumotion/component/producers/webcam/webcam.xml: feed is not a
	required property.

2005-10-25  Andy Wingo  <wingo@pobox.com>

	* flumotion/launch/main.py (main): Remove print.

	* flumotion/twisted/Makefile.am (flumotion_PYTHON): Don't install
	gstreactor.py...

	* flumotion/twisted/compat.py (install_reactor): Fix up to work
	properly on both twisted 1.3 and 2.0.

	* flumotion/twisted/gstreactor.py: Remove, it's not necessary any
	more.

	* flumotion/twisted/gtk2reactor.py: Backport from twisted 2.0.
	Works both with and without gtk.

	* flumotion/twisted/gstreactor.py (GstReactor.run) 
	(GstReactor.crash, GstReactor.__init__): Attempt to make this
	thing work with GStreamer 0.8 and 0.9.

	* flumotion/manager/main.py (main): 
	* flumotion/worker/main.py (main): Allow the environment to
	override debugging levels in config files. Remove default=None, as
	optparse already sets the default to None.

	* flumotion/component/feedcomponent09.py
	(FeedComponent._setup_feeders): Check to see if all feeders have
	ports assigned.

	* flumotion/launch/main.py: Rework to assign feeder ports to
	feeders that are unconnected, like firewire.

2005-10-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion.spec.in:
	  add some more commented-out config to the generated config files

2005-10-21  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/producers/audiotest/audiotest.xml: Add a
	component entry.

2005-10-20  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/encoders/vorbis/vorbis.xml: Add component
	entry.

	* flumotion/component/encoders/encoders.xml: Remove vorbis from
	here.

	* flumotion/launch/main.py (main): Setup the package path
	properly.

	* flumotion/launch/main.py (ComponentWrapper.__init__): If a
	source is not required, don't error if it's not there.
	(ComponentWrapper.__init__): Fix name error.

	* flumotion/component/producers/firewire/firewire.py
	(createComponent): Fix the default height.

	* flumotion/launch/main.py (main): More cleanups, feeder/eater
	verifications (with the goal being to get firewire to work)

	* flumotion/launch/main.py (main.mkfeedername): Verify that the
	link is from a valid feeder. If no feeder is spefified, take the
	first one in the list instead of 'default' (makes firewire work).

	* flumotion/common/registry.py (ComponentRegistry.dump): Save
	eaters and feeders to the registry. Ak.

	* flumotion/manager/Makefile.am: 
	* flumotion/common/Makefile.am: Enable TAGS.

	* configure.ac: 
	* flumotion/component/converters/Makefile.am: 
	* flumotion/component/converters/pipeline/Makefile.am: 
	* flumotion/component/converters/pipeline/__init__.py:
	* flumotion/component/converters/pipeline/pipeline.xml: 
	* flumotion/component/converters/pipeline/pipeline.py:
	* flumotion/component/producers/Makefile.am: 
	* flumotion/component/producers/pipeline/Makefile.am: 
	* flumotion/component/producers/pipeline/__init__.py:
	* flumotion/component/producers/pipeline/pipeline.xml: 
	* flumotion/component/producers/pipeline/pipeline.py: Add somehing
	like what was in flumotion.component.base as pipeline-producer and
	pipeline-converter. Neat for testing.

	* flumotion/test/test.xml: Update to use the pipeline-producer and
	pipeline-converter.

	* flumotion/test/test_manager_manager.py
	(TestVishnu.testConfigBeforeWorker): Skip for now. No idea what's
	going on, but I know the DAG is unused.

	* flumotion/component/producers/firewire/firewire.xml: Feed is not
	a necessary property AFAICT.

	* flumotion/component/producers/bttv/bttv.py: Don't import
	producer.

	* flumotion/component/component.xml: Remove converter.py and
	producer.py from here too. What is this file up to?

	* flumotion/component/base/base.xml: 
	* flumotion/component/base/Makefile.am (component_PYTHON):
	* flumotion/component/base/producer.py: 
	* flumotion/component/base/converter.py: Remove converter.py and
	producer.py, they were not used anywhere.

	* flumotion/component/producers/firewire/firewire.xml: I don't
	think the feed property is necessary. Removing it.

	* flumotion/component/consumers/preview/preview.py: Remove some
	unnecessary includes.

	* configure.ac:
	* flumotion/component/consumers/Makefile.am
	* flumotion/component/consumers/preview/__init__.py: 
	* flumotion/component/consumers/preview/Makefile.am: 
	* flumotion/component/consumers/preview/preview.py: 

	* flumotion/component/consumers/preview/preview.xml: New
	component, allows you to preview what's happening in a stream.
	Sortof. Mostly useful for flumotion-launch.
	
	* flumotion/launch/main.py: Support componentname.feeder/eater
	links like gst-launch does. Actually works now, but only with
	gstreamer 0.9 (0.8 deadlocks because it expects there to be
	different processes, whereas 0.9 has threads).

	* flumotion/common/registry.py (RegistryEntryEntry.getModuleName):
	New function.

	* flumotion/component/encoders/theora/theora.xml: Add a component
	entry.

	* flumotion/component/encoders/encoders.xml: Don't list theora
	here, it has its own xml. This xml file should probably go.

	* flumotion/component/muxers/muxers.xml: Add a component entry for
	ogg-muxer.

2005-10-19  Andy Wingo  <wingo@pobox.com>

	* flumotion/test/test_registry.py (TestComponentEntry.setUp): Fix
	test suite.

	* All xml files updated with eaters and feeders.

	* flumotion/launch/inspect.py (main): Print out eaters and
	feeders.

	* flumotion/common/registry.py (RegistryEntryComponent.__init__):
	No more default args (lists as default args lead to bugs), add
	args for eaters and feeders.
	(RegistryEntryComponent.getEaters) 
	(RegistryEntryComponent.getFeeders): New API.
	(RegistryParser._parseComponent, RegistryParser._parseEater) 
	(RegistryParser._parseFeeder): Parse <eater> and <feeder> entries
	in the registry.

2005-10-18  Andy Wingo  <wingo@pobox.com>

	* flumotion/common/Makefile.am (flumotion_PYTHON): Dist boot.py.

	* configure.ac: Make scripts executable from configure time.

	* bin/flumotion-launch.in: 
	* flumotion/launch/main.py: Something like gst-launch for
	components, as yet unfinished.

	* bin/flumotion-inspect.in:
	* flumotion/launch/inspect.py: New files implementing something
	like gst-inspect for components.

	* flumotion/manager/manager.py (Vishnu.__init__): Use
	ComponentRegistry.makeBundlerBasket() instead of rolling it
	ourselves.

	* flumotion/common/registry.py
	(ComponentRegistry.makeBundlerBasket): New method, takes a
	registry and returns a bundler basket populated by the bundles in
	the registry.

	* common/gendoc.py: Use flumotion.common.boot to init the right
	pygtk and gst-python.

	* flumotion/common/boot.py (init_gst): Better error.

	* flumotion/component/producers/firewire/firewire.py
	(createComponent): Conditionally create different pipeline for
	0.9. Re-enable volume effect for 0.8.

	* flumotion/component/consumers/httpstreamer/http.py
	(MultifdSinkStreamer.__init__): Pacify the pychecker.

2005-10-17  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/converters/overlay/overlay.py
	(createComponent): Update for 0.9.

2005-10-13  Michael Smith <msmith@fluendo.com>

	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	  Use burst_on_connect option from configuration, since we helpfully
	  allow setting it.
	  Fix logic for max fds.

2005-10-12  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/feedcomponent09.py
	(FeedComponent.pipeline_stop): Whoops, fix C thinko dinko.

	* flumotion/component/producers/firewire/firewire.py
	(createComponent): Don't add volume for now. This is a fixme.

	* flumotion/component/producers/firewire/firewire.xml: Add bundle
	for firewire component.

	* flumotion/component/consumers/httpstreamer/resources.py
	(HTTPStreamingResource.maxAllowedClients): Fix syntax error.

	* flumotion/component/feedcomponent09.py
	(FeedComponent.pipeline_stop, FeedComponent.link): State API
	updates.

2005-10-07  Michael Smith <msmith@fluendo.com>

	* flumotion/component/consumers/httpstreamer/resources.py:
	  Clamp max clients (if set) to rlimit for open fds minus our
	  'reserve_fds'

2005-10-07  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/encoders/vorbis/vorbis09.py
	(Vorbis.__init__.buffer_probe): s/filter-caps/caps/.

2005-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	  make sure boot.py gets built

2005-09-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent.py:
	  fix on_feed_ready prototype that probably got broken during
	  the 08/09 merge.  weird.

2005-09-29  Andy Wingo  <wingo@pobox.com>

	* flumotion/worker/checks/video09.py (BusResolution.cleanup) 
	(do_element_check): Updates for bus API.

	* flumotion/component/producers/soundcard/soundcard.py
	(createComponent): Less needless fixation for the 0.9 code.

	* flumotion/component/feedcomponent09.py
	(FeedComponent.setup_pipeline, FeedComponent.cleanup): Updates for
	bus API.
	(FeedComponent.bus_watch_func): Don't emit nonexistent signal.

2005-09-28  Michael Smith <msmith@fluendo.com>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	  Treat ConnectionFailed differently depending on whether we've ever
	  been connected before. This allows us sensible behaviour when
	  initially logging in, but restores auto-reconnect behaviour that I
	  broke.

2005-09-28  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/producers/audiotest/audiotest.py: 
	* flumotion/component/producers/videotest/videotest.py
	(createComponent): Add is-live to the pipeline when using gst 0.9.

2005-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/encoders/Makefile.am:
	  fix disting
	* po/nl.po:
	* po/no.po:
	  update line numbers

2005-09-27  Andy Wingo  <wingo@pobox.com>

	* flumotion/worker/checks/video09.py (do_element_check): Update
	for api changes.

	* flumotion/component/producers/soundcard/soundcard.py
	(createComponent): Beginnings of 0.9 compat..

	* flumotion/component/producers/soundcard/soundcard.xml: Cleanups.

	* flumotion/component/feedcomponent09.py
	(FeedComponent.FEEDER_TMPL): tcpserversink sync=false, because the
	sources already sync to clocks.

	* flumotion/component/producers/audiotest/audiotest.py
	(createComponent): s/sync/is-live/.

2005-09-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/ui/fgtk.py:
	  further cleanup, get tick marks perfect

2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/soundcard/soundcard.xml:
	  bundle up soundcard component
	* flumotion/ui/fgtk.py:
	  remove a bunch of code by using a table and loop

2005-09-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	* flumotion/wizard/steps.py:
	* flumotion/worker/checks/video08.py:
	* flumotion/worker/checks/video09.py:
	  have GStreamerError be a generic, string-taking error,
	  while GstError is an exception wrapper around gst.Error

2005-09-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/defer.py:
	* flumotion/worker/checks/video08.py:
	* flumotion/worker/checks/video09.py:
	  factor out a Resolution class and use it in the
	  checks

2005-09-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	  add a state change gst error
	* flumotion/common/log.py:
	  log warnings that don't have a traceback

2005-09-22  Andy Wingo  <wingo@pobox.com>

	* tests/vorbis.py (buffer_probe): Use the right format, poll for
	the right thingy. Vorbis encoding works!

	* flumotion/component/encoders/vorbis/vorbis09.py
	(Vorbis.__init__.buffer_probe): Use the right format.

2005-09-21  Andy Wingo  <wingo@pobox.com>

	* flumotion/test/test_common_gstreamer.py (DeepNotify): Fix up for
	0.9.
	
	* flumotion/test/test_common_gstreamer.py (BinFindSink) 
	* flumotion/common/gstreamer.py (bin_find_sinks): Removed, it
	wasn't used, and also isn't yet supported in 0.9.

	* flumotion/component/producers/jukebox/Makefile.am
	(component_PYTHON):
	* flumotion/component/encoders/Makefile.am (vorbis_PYTHON): Fix up
	makefiles.

	* flumotion/component/producers/jukebox/jukebox08.py: Moved here
	from jukebox.py, so that it only gets checked for gstreamer 0.8.

	* flumotion/component/producers/jukebox/jukebox.xml: Updated to
	use new entry point; hopefully works.

	* flumotion/wizard/steps.py (Vorbis.worker_changed): Check the
	right element.

	* flumotion/admin/gtk/client.py
	(Window.admin_connection_failed_later): Use correct parent
	argument.

	* flumotion/component/encoders/vorbis/vorbis.xml: Add files.

	* flumotion/component/encoders/vorbis/vorbis09.py: New file,
	simple and nonfunctional.

	* flumotion/component/encoders/vorbis/vorbis.py: Selectively
	import the 0.8 or 0.9 versions of the Vorbis class.

	* tests/vorbis.py: New test case, not part of the test suite. But
	fails nonetheless.

	* flumotion/component/encoders/vorbis/vorbis08.py: The guts of the
	0.8 vorbis encoder are here.

	* flumotion/component/encoders/vorbis/vorbisutils.py
	(get_max_sample_rate): Pulled out into its own file.

	* flumotion/component/feedcomponent09.py
	(FeedComponent.setup_pipeline): Fix for new bus API.

2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/gtk2reactor.py:
	  work with twisted 1.3 and 2.0

2005-09-19  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/feedcomponent09.py (FeedComponent.stop):
	Don't cleanup without a pipeline.

	* flumotion/common/compat.py (type_register): Attempt the fourth
	at getting this working properly.

	* flumotion/component/feedcomponent09.py (FeedComponent): Port to
	GStreamer 0.9. Mostly copied over from the branch.

	* flumotion/component/component.xml: Add the versioned
	feedcomponent files.

	* flumotion/component/consumers/httpstreamer/http.py
	(MultifdSinkStreamer.link_setup.sink_state_change_cb): Only wait
	for the state change in 0.8.

	* flumotion/component/muxers/multipart.py (createComponent): 
	* flumotion/component/muxers/ogg.py (createComponent): No {}
	threads in 0.9.

	* flumotion/component/component.py (BaseComponent.updateMood):
	Removed, unnecessary as a base class method. Subclasses should
	just use setMood, which can't change a component out of sad
	anyway.

	* flumotion/component/feedcomponent09.py (FeedComponent.__init__):
	* flumotion/component/feedcomponent08.py (FeedComponent.__init__):
	State has no 'eaterNames' key anymore.

	* flumotion/common/compat.py (type_register): Indentation and
	style fixes. Also, it works now.

	* flumotion/component/feedcomponent09.py (FeedComponent): New
	file, FeedComponent ported over from the 0.9 branch. Not
	completely ported yet.

	* flumotion/component/Makefile.am (component_PYTHON): Add new
	files.

	* flumotion/component/feedcomponent.py: Import the appropriate
	version of FeedComponent.

	* flumotion/component/feedcomponent08.py (FeedComponent): Moved
	here from feedcomponent.py.

	* flumotion/component/feedcomponent.py
	(FeedComponentMedium.__init__): Inline the handlers listening to
	signals from the component. Don't futz the component's mood or
	state, assume that the component handles that.
	(FeedComponent._pipeline_error_cb): Set mood to sad, add message
	to component state.

2005-09-16  Andy Wingo  <wingo@pobox.com>

	* Changelog updated. Heh heh heh heh heh heh.

	* flumotion/common/gstreamer.py (get_plugin_version): Ignore
	module attribute references in this file. Requires latest
	pychecker CVS plus a patch in their tracker. Make check passes!

	* flumotion/common/boot.py.in (boot): Commit the non-generated
	file, doh....

	* misc/pycheckerhelp.py: Use boot.py.

	* Makefile.am (PYCHECKER_BLACKLIST): Ignore spyglass.py, until
	it's ported at least.

	* flumotion/common/gstreamer.py (get_plugin_version): Work in
	either gst version.

	* common/pychecker.mk: Fix up to separate gst-independent tests,
	gst 0.8 tests, and gst 0.9 tests.

	* flumotion/common/boot.py (init_gst, init_gobject): Make public.

	* flumotion/worker/checks/video.py: Um....

	* flumotion/worker/checks/video09.py: No need to import re

	* misc/pycheckerrc: Emacs friendly

	* common/pychecker.mk: Cleanup, preparation for some haxoring.

2005-09-16  Michael Smith <msmith@fluendo.com>

	* flumotion/common/compat.py:
	  Get pygtk version from gobject, not gtk, to avoid importing gtk
	  (which could fail if there's no X server). Thanks to Zaheer for the
	  fix.

2005-09-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	  add another helper.  relegate twisted logging to level 5 by
	  default, I got tired of the spew.  But error tracebacks are
	  still at level 4
	* pkgconfig/flumotion-uninstalled.pc.in:
	* pkgconfig/flumotion.pc.in:
	  fix for now to use an existing symbol, but hm.  needs work.

2005-09-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	  add some nice helper methods to log failures.  Add a cool
	  simple errback handler to objects, I feel fuzzy now.

2005-09-12  Michael Smith <msmith@fluendo.com>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/connections.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/parts.py:
	* flumotion/admin/gtk/spyglass.py:
	* flumotion/admin/gtk/videotest.py:
	* flumotion/admin/gtk/wizard.py:
	* flumotion/common/compat.py:
	* flumotion/component/component.py:
	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/test/test_common_pygobject.py:
	* flumotion/tester/httpclient.py:
	* flumotion/ui/fgtk.py:
	* flumotion/ui/glade.py:
	* flumotion/wizard/sidebar.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/worker.py:
	  Another attempt to get rid of loud gobject deprecation warnings by 
	  adding a compat package and checking pygtk version in there. 
	  Call through this for everything that does gobject.type_register().
	  Doesn't work properly, since our __gsignals__ attribute is strangely
	  missing.

2005-09-13  Andy Wingo  <wingo@pobox.com>

	* flumotion/wizard/steps.py (Overlay.get_state): Tell the saver
	whether or not we can overlay.
	(Overlay.worker_changed_08): Moved from worker_changed.
	(Overlay.worker_changed_09): Copied over from the 0.9 branch.
	Doesn't actually require the elements, which is nice considering
	pngdec and videomixer are not ported.
	(Overlay.worker_changed): Voodoo.

	* flumotion/wizard/save.py (WizardSaver.handleVideo): Only
	configure an overlay if the checks passed.

	* flumotion/worker/checks/video.py: Voodoo to include the right
	version of the worker checks.

	* flumotion/worker/checks/video09.py: Copied from the gstreamer
	0.9 branch.
	* flumotion/worker/checks/video08.py: Copied from the old
	video.py.

	* flumotion/worker/checks/package.xml: 
	* flumotion/worker/checks/Makefile.am (flumotion_PYTHON): Add new
	files.

	* bin/flumotion-admin.in: Convert to the new boot code.

	* flumotion/common/boot.py.in (_init_gst): Add some helpful
	debugging.

	* flumotion/common/gstreamer.py (verbose_deep_notify_cb): Marshal
	all logging to the main thread.

	* configure.ac: Don't try to import gtk.glade if DISPLAY is unset.

2005-09-12  Andy Wingo  <wingo@pobox.com>

	* flumotion/twisted/compat.py (install_reactor): Take an optional
	argument gtk, which if True will try to load the gtk2reactor
	instead of the normal glib/gst ones.

	* configure.ac: s/REQ_0X/0X_REQ/, subst variables properly.

	* flumotion/common/boot.py.in: New file, factors out the
	initialization code that was in the manager and worker scripts.
	Enhanced to choose pygst version at runtime based on the
	FLU_GST_VERSION environment variable.

	* bin/flumotion-worker.in: 
	* bin/flumotion-manager.in: Use flumotion.common.boot.

	* flumotion/common/Makefile.am (nodist_flumotion_PYTHON) 
	(EXTRA_DIST): Makefile rules so as to install boot.py but ship
	only boot.py.in.

	* configure.ac: Some logic fixes and robusticization for checking
	for the different versions of gst-python.

	* common/as-python.m4: Print more useful messages if importing the
	module or the checks cause a random assertion to be raised.

	* configure.ac: Use AS_LIBTOOL_TAGS to avoid notices about
	fortran.

	* common/Makefile.am (EXTRA_DIST): 
	* common/as-libtool-tags.m4: Slurp from GStreamer.

2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion.spec.in:
	  add some commented out config params for reference
	* flumotion/common/common.py:
	* flumotion/common/medium.py:
	* flumotion/test/Makefile.am:
	* flumotion/test/common.py:
	* flumotion/test/testclasses.py:
	* flumotion/test/test_common_componentui.py:
	* flumotion/test/test_flavors.py:
	* flumotion/test/test_keycards.py:
	  break out our test classes to a separate module
	  so we can avoid having to import reactor this early

2005-09-08  Andy Wingo  <wingo@pobox.com>

	* bin/flumotion.in:
	* bin/flumotion-worker.in: 
	* bin/flumotion-manager.in: Hard-code to use the 0.8 values
	detected in the configure script.

	* configure.ac: Check for both 0.8 and 0.9 versions of GStreamer
	and gst-python. Bling.

	* flumotion/component/feedcomponent.py
	(FeedComponent::feed-ready): Changed from feed-state-changed, now
	just emits a boolean as to whether the feed is ready or not.
	(FeedComponent.feeder_state_change_cb): Emit feed-ready as
	appropriate. Don't set the component mood, it already did that
	itself.

	* flumotion/manager/component.py: Don't import gstreamer. Woot!
	(ComponentAvatar): Gone are _gstState, _gstOldState, dogs.
	(ComponentAvatar.setFeederReadiness): Renamed from
	checkFeederReadiness to ACT. Active functions. No more passivity.
	(ComponentAvatar.start.startCallback): Api update.
	(ComponentAvatar.perspective_feedReady): Changed from
	feedStateChange. Api update.

	* flumotion/component/feedcomponent.py
	(ParseLaunchComponent.do_start): Changed from start, don't chain
	up.

	* flumotion/component/component.py (BaseComponent.start): Made not
	a vmethod. Subclasses should override do_start.
	(BaseComponent.do_start): Default implementation.
	(BaseComponent.setMood): Fix typos.

	* flumotion/component/component.py (BaseComponent.setMood): Don't
	let setMood work if we're in sad -- you have to restart to get out
	of sad.

	* tests/checks.py:
	* tests/debugslider.py: New files, ported over from the 0.9
	branch. Check the checker check check check. Is this thing on?

	* flumotion/component/feedcomponent.py
	(FeedComponentMedium.remote_getState): Don't set
	state['elementNames'], it's not necessary.
	(FeedComponent.get_element_names): Removed, not used.
	(FeedComponentMedium.remote_play) 
	(FeedComponentMedium.remote_pause): Removed, not used.

	* flumotion/component/producers/webcam/webcam.py
	(createComponent): Add a colorspace to make ppc happy for rgb
	formats.

	* flumotion/wizard/steps.py: Callers of check_elements updated.

	* flumotion/wizard/wizard.py (Wizard.check_elements): Changed to
	just return a deferred with the missing elements, not to post
	errors.
	(Wizard.require_elements): This is what old callers of
	check_elements want to call.

	* flumotion/test/test_common_package.py (TestPackagePath.setUp):
	Initialize _assertions properly.

	* common/as-python.m4 (AS_PYTHON_IMPORT): Take an optional fourth
	argument, PREAMBLE, to do e.g. pygst.require(). Take an optional
	fifth argument, POSTAMBLE, to run code after the import.

2005-09-08  Andy Wingo  <wingo@pobox.com>

	* Makefile.am (AUTOMAKE_OPTIONS): Reorder options so as to give
	the user a nicer error.

2005-09-07  Michael Smith <msmith@fluendo.com>

	* flumotion/admin/gtk/client.py:
	  Make admin_connection_failed_cb take the correct number of
	  arguments. Fixes some remaining parts of bug 273.

2005-09-07  Michael Smith <msmith@fluendo.com>

	* flumotion/admin/admin.py:
	  Handle ConnectionRefusedError when attempting admin login, 
	  fixes bug 266.

2005-09-06  Michael Smith <msmith@fluendo.com>

	* flumotion/worker/worker.py:
	  When dumping a core, print out os.getcwd(), so we can tell users
	  where to find core dumps when they send us logs.

2005-08-29  Michael Smith <msmith@fluendo.com>

	* flumotion/common/common.py:
	  Look for LANGUAGE env var before checking LANG, makes translations
	  work on my ubuntu system.

2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/package.py:
	  reverse order of fixing up so we go from submodules to parent
	  packages

2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/epydoc.mk:
	  don't need PYGTK in there - it messes up our path and throws in
	  gst from installed packages

2005-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/trial.mk:
	  use PIPESTATUS so we can run, output to terminal, output to file,
	  and get exitstatus all at once ! I love the internet.
	* common/Makefile.am:
	* common/epydoc.mk:
	* common/gendoc.py:
	  extract doc generation stuff into something we can use from projects
	* doc/reference/Makefile.am:
	  use it

2005-08-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* tests/ComponentsView.py:
	  make test work again

2005-08-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/base/base.xml:
	* flumotion/component/component.xml:
	  put converter and producer base compnents in bundles

2005-08-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/encoders/vorbis/vorbis.py:
	  style fixes
	* configure.ac:
	* flumotion/component/component.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/manager/component.py:
	  some debugging fixes
	  make component be sleeping when it logs out
	* flumotion/component/producers/jukebox/Makefile.am:
	* flumotion/component/producers/jukebox/__init__.py:
	* flumotion/component/producers/jukebox/jukebox.py:
	* flumotion/component/producers/jukebox/jukebox.xml:
	  a new audio jukebox component, using gst-python > 0.8.2
	  and the extend module

2005-08-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent.py:
	  push FEEDER and EATER templates down to FeedComponent
	* flumotion/component/encoders/vorbis/vorbis.py:
	  use FeedComponent's templates, don't create tcp stuff on our own
	* flumotion/test/test_component.py:
	  fix tests for new way of handling templates
	* flumotion/manager/manager.py:
	  make a component SAD if it didn't start up correctly

2005-08-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_component.py:
	  remove accidental commit of part of [2281]

2005-08-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/Makefile.am:
	  dist parts of the test dir so other projects can build on it

2005-08-03  Michael Smith <msmith@fluendo.com>

	* flumotion/component/converters/overlay/genimg.py:
	  Don't import PIL at top-level, instead defer this until we actually
	  run the generate_overlay() function. Avoids crash in theoraenc due
	  to clashing symbols, since with this we never dlopen() the clashing
	  libraries in the same process.

2005-08-01  Michael Smith <msmith@fluendo.com>

	* flumotion/component/base/admin_gtk.py:
	  Use errors.NoBundleError rather than BundleError. This means we
	  catch the exception here, so it's non-fatal.

2005-07-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	* flumotion/wizard/message.py:
	  translate more
	* flumotion/worker/checks/video.py:
	  mark for translation without translating
	* po/POTFILES.in:
	* po/nl.po:
	* po/no.po:
	  translation updates

2005-07-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/base/admin_gtk.py:
	  set up translations for BaseAdminGtk in setup()

2005-07-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundleclient.py:
	  add some more logging, there's one corner case where
	  __path__ seems to be cleared and it's not clear to me if it's a bug
	  reverse order of registering package path from lowest dep to
	  highest
	* flumotion/common/common.py:
	  add a gettexter method that returns a _ callable for a domain
	* flumotion/admin/admin.py:
	* flumotion/common/package.py:
	* flumotion/component/base/admin_gtk.py:
	  load glade file automatically if glade_file is set
	  add a haveWidgetTree method to be subclassed
	  have render() load the gladefile on its own
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	  remove render, implement haveWidgetTree

2005-07-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  go back to using a dict since twisted.python.util.OrderedDict
	  exists
	* flumotion/component/base/admin_gtk.py:
	  make nodes a public member, getNodes an accessor, and use
	  OrderedDict
	* flumotion/component/producers/videotest/admin_gtk.py:
	  give title and use .nodes
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	* po/POTFILES.in:
	* po/nl.po:
	* po/no.po:
	  translate some more

2005-07-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	* flumotion/component/base/admin_gtk.py:
	  change getNodes to need to return a list instead of a dict
	  so the order is defined by the component, and not chance
	  add an on-the-fly conversion from dict to list so stuff
	  keeps working until things get fixed up

2005-07-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  use bundleclient instead of unbundler
	* flumotion/admin/gtk/client.py:
	  add a debug to show that the admin really is handling NoBundleError
	* flumotion/common/bundleclient.py:
	  make getBundle also registerPackagePath
	  add getFile method
	* flumotion/component/base/admin_gtk.py:
	  use bundleLoader
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	  now that we use deferreds to get glade files, stats can arrive
	  before the widget tree is loaded; so save them temporarily
	* flumotion/worker/worker.py:
	  remove bundleloader

2005-07-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundleclient.py:
	* flumotion/common/medium.py:
	* flumotion/worker/worker.py:
	  clean up bundleclient code further

2005-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	  localize display of clients peak time

2005-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/videotest/admin_gtk.py:
	* flumotion/component/producers/videotest/videotest.xml:
	  fix video test by putting wizard enums in a bundle
	* flumotion/wizard/enums.py:
	* po/POTFILES.in:
	* po/nl.po:
	* po/no.po:
	  add more translation

2005-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/parts.py:
	* po/POTFILES.in:
	* po/nl.po:
	  more translation

2005-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/gen-locale-xml.py:
	* common/locale.mk:
	* flumotion/configure/installed.py.in:
	* flumotion/configure/uninstalled.py.in:
	* flumotion/admin/gtk/main.py:
	  change so that we use localedatadir instead of localedir
	* flumotion/common/bundleclient.py:
	  import os again, it's really needed
	* flumotion/common/registry.py:
	  add "under" keyword for bundle to choose a dir to be found under
	  change getProjectBase to getBaseDir
	* flumotion/component/converters/overlay/overlay.xml:
	  create a bundle for the overlay
	* flumotion/manager/manager.py:
	  use getBaseDir
	  also try to fix registry if a file is missing from disk

2005-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* common/Makefile.am:
	* common/common.mk:
	* data/glade/Makefile.am:
	* flumotion.spec.in:
	* po/POTFILES.in:
	* po/nl.po:
	  various distcheck and spec fixes

2005-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/gen-locale-xml.py:
	  script to generate locale registry files
	* common/locale.mk:
	  Makefile rules for i18n
	* autogen.sh:
	  add autopoint
	* configure.ac:
	  add gettext
	* Makefile.am:
	  add po directory
	* flumotion/configure/installed.py.in:
	* flumotion/configure/uninstalled.py.in:
	  add localedir
	* flumotion/common/common.py:
	  add getLL()
	* flumotion/common/bundleclient.py:
	  create a getBundles() generator method, we still need to convert
	  parts to use bundleclient.py though
	* flumotion/admin/admin.py:
	  fix for new getBundleSums call
	* flumotion/admin/gtk/greeter.py:
	* flumotion/admin/gtk/client.py:
	  mark strings for translation
	* flumotion/admin/gtk/main.py:
	  set up translation domains
	* flumotion/component/base/admin_gtk.py:
	  add a domain property to load gload files under
	* flumotion/component/consumers/httpstreamer/http.glade:
	  fix for translation
	* flumotion/project/Makefile.am:
	  add project files
	* flumotion/manager/base.py:
	  make arguments consistent for perspective_getBundleSums
	* flumotion/manager/manager.py:
	  make sure we only try rebuilding registry once on errors
	* po/Makevars:
	* po/LINGUAS:
	* po/POTFILES.in:
	* po/nl.po:
	  add translation files and a dutch translation

2005-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/open-connection.glade:
	* data/glade/videotest.glade:
	* data/glade/wizard.glade:
	* data/glade/wizard_audiotest.glade:
	* data/glade/wizard_disk.glade:
	* data/glade/wizard_encoding.glade:
	* data/glade/wizard_http.glade:
	* data/glade/wizard_jpeg.glade:
	* data/glade/wizard_license.glade:
	* data/glade/wizard_overlay.glade:
	* data/glade/wizard_overview.glade:
	* data/glade/wizard_smoke.glade:
	* data/glade/wizard_soundcard.glade:
	* data/glade/wizard_testsource.glade:
	* data/glade/wizard_tvcard.glade:
	* data/glade/wizard_webcam.glade:
	  preparations for translation

2005-07-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* common/common.mk:
	  rearrange coverage stuff so we can use it in other parts
	* flumotion/component/base/admin_gtk.py:
	* flumotion/test/gtkunit.py:
	  add a class to subclass from for gtk unit tests

2005-07-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/Makefile.am:
	* common/trial.mk:
	* flumotion/test/Makefile.am:
	  extract the trial stuff in an .mk file so we can share it

2005-07-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundleclient.py:
	* flumotion/common/registry.py:
	* flumotion/component/encoders/Makefile.am:
	* flumotion/component/encoders/jpeg/jpeg.xml:
	* flumotion/component/encoders/mulaw/mulaw.xml:
	* flumotion/component/encoders/smoke/smoke.xml:
	* flumotion/component/encoders/speex/speex.xml:
	* flumotion/component/encoders/theora/theora.xml:
	* flumotion/component/encoders/vorbis/vorbis.xml:
	* flumotion/component/muxers/muxers.xml:
	* flumotion/manager/manager.py:
	* flumotion/worker/worker.py:
	  and now all components are run from bundles !
	  which turned up the fact that we didn't bundle all our components.
	  So if some components don't work, let me know so I can bundle them.

2005-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/encoders/Makefile.am:
	* flumotion/component/encoders/encoders.xml:
	* flumotion/component/encoders/jpeg.py:
	* flumotion/component/encoders/mulaw.py:
	* flumotion/component/encoders/smoke.py:
	* flumotion/component/encoders/speex.py:
	* flumotion/component/encoders/theora.py:
	* flumotion/component/encoders/vorbis.py:
	  move encoders to their own subdir before we add admin_gtk's

2005-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/worker.py:
	* flumotion/test/test_manager_manager.py:
	* flumotion/test/test_worker_worker.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  el workero no necesita un registro, oye !
	  fixes #129

2005-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	* flumotion/worker/job.py:
	  work towards not needing the registry in the worker by moving
	  up the registry necessity in the API callchain

2005-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/registry.py:
	* flumotion/common/setup.py:
	  s/FLU_REGISTRY_PATH/FLU_PROJECT_PATH/g

2005-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* flumotion/project/Makefile.am:
	* flumotion/project/__init__.py:
	* flumotion/project/project.py:
	* flumotion/Makefile.am:
	  adding a flumotion.project where add-on projects will put their
	  project files
	* flumotion/common/package.py:
	* flumotion/test/test_common_package.py:
	  create a new module for the packager and package registration
	* flumotion/test/test_common.py:
	* flumotion/common/common.py:
	  move code for package registering to new module
	  give UNIXAddress a localhost as host
	* flumotion/common/setup.py:
	  add a setupPackagePath method that parses the env var for
	  additional projects
	* flumotion/common/bundleclient.py:
	  use the new packager to register package paths
	* flumotion/common/config.py:
	  doc fixes
	* flumotion/common/registry.py:
	  add "project" attribute to <bundle> entries; add API for it
	  add "prefix" argument to API for directories
	  fixes to make sure registry only gets rebuilt when needed
	  add some whitespace to registry output
	* flumotion/admin/admin.py:
	  use new packager
	* flumotion/component/base/admin_gtk.py:
	  add getWidget(), and set widget tree on loading glade file
	* flumotion/manager/main.py:
	  give a list of projects loaded into flumotion in debug log
	* flumotion/manager/manager.py:
	  get bundles from correct project base
	* flumotion/test/test_registry.py:
	  add 'project' tags to test

2005-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	  don't remove __path__ because it won't play nice with our
	  new package stuff
	* flumotion/common/medium.py:
	  rearrange a piece of code
	* flumotion/worker/job.py:
	  comment out a piece of code that doesn't seem to be used in
	  preparation of all workers executing jobs from bundles

2005-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to trunk

=== release 0.1.9 ===

2005-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  releasing 0.1.9, "Zahara"

2005-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/authenticate.glade:
	  fix an assertion for grab_focus because the window was not
	  visible.  I'm pretty sure though that having grab_focus on the
	  auth combo box isn't actually useful; it's done when a) the widget
	  is not yet in a window and b) later on the focus is set to the
	  username.  But, like, whatever.

2005-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/admin.glade:
	  change label for help_about back to gtk-about;
	  while it doesn't work with old GTK, it does the
	  right thing with recent GTK's

2005-07-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_common.py:
	  refactor tests a little

2005-07-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/Makefile.am:
	  don't use tee, since then a failing trial gets lost
	* flumotion/test/test_config.py:
	* flumotion/test/test_manager_manager.py:
	* flumotion/test/test_registry.py:
	  fix up for new getRegistry()/parse() behaviour
	* flumotion/test/test_parts.py:
	  get rid of a gtk warning

2005-07-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-manager.in:
	* bin/flumotion-worker.in:
	* flumotion/common/config.py:
	* flumotion/common/registry.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/manager.py:
	* flumotion/worker/config.py:
	* flumotion/worker/job.py:
	  rework registry code so that
	  - internal API is marked as such
	  - for manager config files, initially only parts of the
	    .manager object are filled in that don't require the registry
	  This allows for registry parsing to be loggable and debuggable
	  since it now happens after setting the appropriate debug level.
	  I may be on crack.

2005-07-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	  error out when we couldn't find a file to add to a bundle

2005-07-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	Patch by: Gergely Nagy

	* flumotion/admin/gtk/client.py:
	  fix #236: prompt when possibly overwriting exported config

2005-07-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_disk.glade:
	  make disker ui show up again.  Fixes #264.

2005-07-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	Patch by: Gergely Nagy

	* data/glade/wizard_http.glade:
	* flumotion/wizard/steps.py:
	  fix issue #241: block forward when no mount point specified

2005-07-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	Patch by: Gergely Nagy

	* data/glade/wizard_consumption.glade:
	* flumotion/wizard/steps.py:
	  fix issue #240: sensitivity of forward button on consumption page

2005-07-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/job.py:
	  do the least amount necessary to have working worker shutdown
	  for both twisted 2.0 and twisted 1.3
	  needs cleanup by refactoring components and cleanup properly

2005-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-manager.in:
	  install correct manager here too
	* flumotion/configure/configure.py:
	  increase timeouts a little

2005-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-worker.in:
	  use twisted.compat to install the reactor
	* flumotion/twisted/compat.py:
	  use the glib2reactor in twisted 2.0
	* flumotion/worker/worker.py:
	  don't ignore SIGINT, the reactor handles it nicely.
	  another step on the way to twisted 2.0 compat

2005-07-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/python.mk:
	  disable our custom python install program for testing on FC4
	* flumotion/wizard/Makefile.am:
	* flumotion/wizard/types.py:
	* flumotion/wizard/wizard.py:
	  rename types to classes so it doesn't conflict with the standard
	  types module and break make install

2005-07-15  Michael Smith <msmith@fluendo.com>

	* data/glade/admin.glade:
	Change the 'gtk-about' menu item into a slightly more user-friendly 
	'About'
	* doc/man/flumotion-admin.1:
	* doc/man/flumotion-manager.1:
	* doc/man/flumotion-worker.1:
	* flumotion/manager/main.py:
	Manpage updates, explain multiple config files in flumotion-manager,
	and fix the flumotion-manager usage message.

2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/videotest.py:
	* flumotion/manager/base.py:
	* flumotion/manager/manager.py:
	* flumotion/test/common.py:
	* flumotion/test/test_common_componentui.py:
	* flumotion/test/test_flavors.py:
	* flumotion/test/test_http.py:
	* flumotion/test/test_keycards.py:
	* flumotion/test/test_pb.py:
	* flumotion/test/test_twisted_compat.py:
	* flumotion/test/test_worker_worker.py:
	* flumotion/worker/worker.py:
	  fix test suite so that it completes with Twisted 2.0
	  still need to look at some deprecation warnings though.

2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/common.py:
	  remove a sys.path hackery from jdahlin that escaped my autisticity
	  for far too long
	* flumotion/test/test_flavors.py:
	  remove main call

2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/ui/glade.py:
	  use log.getExceptionMessage

2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	* flumotion/worker/job.py:
	  factor out a log.getExceptionMessage so we can clean up
	  all cases where we try and give some useful info about exceptions

2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  clean up broken admin client because of moved code

2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/Makefile.am:
	  make make check error out if it notices an import error
	* flumotion/test/test_wizard.py:
	* flumotion/wizard/worker.py:
	  skip some tests that now fail until Andy can look at them

2005-07-13  Michael Smith <msmith@fluendo.com>

	* doc/man/flumotion-admin.1:
	* doc/man/flumotion-manager.1:
	* doc/man/flumotion-worker.1:
	  Add sections to all manpages on how to enable debugging, explaining
	  syntax, etc.

2005-07-13  Michael Smith <msmith@fluendo.com>

	* doc/man/Makefile.am:
	* doc/man/flumotion-admin.1:
	* doc/man/flumotion-manager.1:
	* doc/man/flumotion-worker.1:
	  Add more manpages, fix some typos in the manager page.

2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* doc/Makefile.am:
	* flumotion.spec.in:
	  install, dist and package the man page

2005-07-13  Michael Smith <msmith@fluendo.com>

	* doc/man/flumotion-manager.1: Add a basic, incomplete manpage.

2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	  refactored logging a little, and fix #255 nicely by warning the user
	  at level 2 that there is a python traceback waiting for her at debug
	  level 4 if she's running below level 4

2005-07-13  Michael Smith <msmith@fluendo.com>

	* flumotion/manager/main.py: Process options that don't require a
	planet configuration file before requiring one.

2005-07-07  Andy Wingo  <wingo@pobox.com>

	* Makefile.am (PYCHECKER_BLACKLIST): Ignore gtk2reactor.py, it's
	only for twisted 1.3 -- don't want it checking if we have 2.0.

	* flumotion/component/consumers/httpstreamer/resources.py: Try
	twisted.web.interfaces first, seems twisted.protocols.interface is
	deprecated.

2005-07-07  Andy Wingo  <wingo@pobox.com>

	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>
	
	* flumotion/admin/Makefile.am: Dist new file.

	* flumotion/admin/connections.py: New file.
	(get_recent_connections): Moved from
	flumotion.admin.gtk.connections.

2005-06-14  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/component.py (BaseComponent._heartbeat):
	Remove cpu logging message.

2005-06-13  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/effects/volume/volume.py
	(Volume._level_changed_cb): Deal gracefully with inf's coming from
	C.

	* flumotion/component/effects/volume/admin_gtk.py
	(VolumeAdminGtkNode.volumeChanged): Clamp the property values to
	the proper range to avoid nasty messages.

	* flumotion/admin/gtk/main.py (_runInterface): We're not yet in
	the reactor if the greeter is killed, so we can't stop it just
	yet. Use callLater(reactor.stop) instead.

	* flumotion/admin/admin.py (AdminClientFactory.gotDeferredLogin):
	Get ConnectionFailedError and ConnectionRefusedError from the
	right module.

	* flumotion/wizard/wizard.py (Wizard): No longer implements
	IStateListener -- WorkerListModel does this. Change to not rebuild
	the worker list all the time, instead just notifying when the page
	changes. Fixes dynamic updating of the worker box as workers come
	and go. Make an error message when no worker is available.

	* flumotion/wizard/worker.py (WorkerListStore): Take a
	WorkerHeavenState instead of a list of workers, and listen to it
	for changes. Add a ::changed signal for when workers are added or
	removed.
	(WorkerList.set_worker_heaven_state): Select a default worker, and
	listen to changes on the model to keep a worker always selected.
	Emit ::worker-selected(None) when all workers go away.
	(WorkerList.select_worker): Only warn if we're not asking for a
	default worker. 
	(WorkerList.notify_selected): New method, emits 'worker-selected'
	for the current worker.

	* flumotion/admin/gtk/parts.py
	(ComponentsView._add_columns.type_pid_datafunc)
	(ComponentsView._add_columns.type_cpu_datafunc): Set cell renderer
	property values instead of model values. Prevents 100% CPU
	feedback.

	* flumotion/wizard/steps.py (FireWire.run_checks): Display an info
	message while detecting the firewire device.

2005-06-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/ui/trayicon.py:
	  work when the .so file cannot be found as well

2005-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	  check also for UNIXAddress
	* flumotion/common/errors.py:
	* flumotion/common/config.py:
	  move ConfigError, still needs cleanup
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	  catch unwritable log file error
	* flumotion/worker/job.py:
	  pass through nice configerrors
	* flumotion/manager/main.py:
	  make ERROR stand out some more

2005-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/bouncers/htpasswdcrypt.py:
	  raise ConfigError on IOError while reading htpasswd file
	* flumotion/worker/job.py:
	  pass through config.ConfigError's

2005-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/medium.py:
	* flumotion/twisted/defer.py:
	* flumotion/worker/job.py:
	  final cleanups, createComponent now will tell us what is wrong

2005-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/defer.py:
	* flumotion/common/medium.py:
	* flumotion/manager/main.py:
	  move "import traceback" to top, so it doesn't mess up stack
	* flumotion/component/bouncers/htpasswdcrypt.py:
	  do a proper raise when a keyword is missing
	* flumotion/worker/job.py:
	  move "import traceback" to top, so it doesn't mess up stack
	  change source to moduleName since that's what it is
	  extract the exception traceback instead of the current stack
	  so we can log the cause of the problem

2005-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/exceptions:
	  add some notes on exceptions and handling them
	* flumotion/common/log.py:
	  factor out a scrubFilename() function

2005-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/message.py:
	  use a longer name for cb
	  make them private attributes, because they are
	* flumotion/wizard/worker.py:
	  pychecker happiness

2005-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  another actual bug pychecker caught in three different ways.
		flumotion/admin/admin.py:162:
			Invalid arguments to (_makeFactory), got 2, expected 1
		flumotion/admin/admin.py:175:
			self is not first method argument
		flumotion/admin/admin.py:176:
			No global (self) found
	  I don't want to hear any more "useless pychecker" whining.
	  Solutions, not problems.

	* flumotion/wizard/worker.py:

2005-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	  make sure we catch all raises from _initialLoadConfig correctly,
	  and print a traceback for those we don't explicitly handle

2005-06-10  Andy Wingo  <wingo@pobox.com>

	* flumotion/wizard/message.py (MessageView.__init__): Back off on
	the padding of the message.

	* flumotion/wizard/worker.py: New file, implements a list of
	workers. Fires 'worker-selected' when the selected worker changes.

	* flumotion/wizard/message.py: New file, implements a message
	area, showing 0 to N messages. It hides itself when there are no
	messages to show. Messages have id's. They can be cleared by id,
	and no two messages of the same id will be visible at a time. The
	UI needs some work.

	* flumotion/wizard/wizard.py (Wizard.info_msg, Wizard.error_msg) 
	(Wizard.clear_msg): New methods to show and clear messages in the
	message area. No more modal dialogs.
	(Wizard.set_step): Updates to get the worker list, message area,
	and next button states right. Fire worker_changed on the step when
	we switch to it.

	* flumotion/wizard/steps.py: All remote calls turned into
	defer_generator_methods for clearer code and default errbacks.
	Error and info dialogs turned into messages via info_msg() and
	error_msg(). before_show() checks moved to worker_changed().

	* flumotion/wizard/step.py (WizardStep.info_msg)
	(WizardStep.error_msg, WizardStep.clear_msg): New methods, proxy
	to the wizard.

	* data/glade/.hidden: Nautilus pacification file.

	* tools/gtk-2.4-ify-glade-files: focus_on_click was in gtk 2.4.

	* data/glade/wizard_webcam.glade:
	* data/glade/wizard_audio_encoder.glade:
	* data/glade/wizard_source.glade:
	* data/glade/wizard_audiotest.glade:
	* data/glade/wizard_vorbis.glade:
	* data/glade/wizard_firewire.glade:
	* data/glade/wizard_consumption.glade:
	* data/glade/wizard_license.glade:
	* data/glade/wizard_soundcard.glade:
	* data/glade/wizard_jpeg.glade:
	* data/glade/wizard_encoding.glade:
	* data/glade/wizard_disk.glade:
	* data/glade/wizard_welcome.glade:
	* data/glade/wizard_summary.glade:
	* data/glade/wizard_testsource.glade:
	* data/glade/wizard_smoke.glade:
	* data/glade/wizard_overlay.glade:
	* data/glade/wizard_theora.glade:
	* data/glade/wizard_tvcard.glade:
	* data/glade/wizard_http.glade: No border, the border comes from
	the wizard itself.
	
	* data/glade/wizard_firewire.glade: Text status area replaced by
	message area from wizard.
	
	* data/glade/wizard_welcome.glade: Use a textview instead of a
	label to allow for text reflowing.
	
	* data/glade/wizard.glade: Make gargantuan in size, no more center
	on parent. Fix up borders in the main area to 12px all around. No
	more frame border. Add a line above buttons. Add message area and
	worker list.

2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion.in:
	  Remove unused PREFIX template var.  Fix the @libdir@ vs
	  @LIBDIR@ confusion, @libdir@ is the not-expanded version
	  and should not be used !

2005-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	* bin/flumotion-manager.in:
	* bin/flumotion-tester.in:
	* bin/flumotion-worker.in:
	  Remove unused PREFIX template var.  Fix the @libdir@ vs
	  @LIBDIR@ confusion, @libdir@ is the not-expanded version
	  and should not be used !

2005-06-03  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/base/admin_gtk.py (BaseAdminGtk.state):
	Pacification.

2005-06-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/parts.py:
	  use a datafunc for pid and cpu use
	* flumotion/extern/pytrayicon/eggtrayicon.c: (egg_tray_icon_init),
	(egg_tray_icon_get_orientation):
	* flumotion/extern/pytrayicon/eggtrayicon.h:
	* flumotion/extern/pytrayicon/pytrayicon.defs:
	* flumotion/admin/gtk/client.py:
	* flumotion/ui/trayicon.py:
	  add tooltip to tray icon
	* flumotion/manager/manager.py:
	  reset CPU use when component stops
	* flumotion/component/component.py:
	  debug -> log on cpu stuff
	* flumotion/admin/admin.py:
	  add another Str method for tooltips to use

2005-05-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	Patch by: Gergely Nagy

	* data/glade/wizard_soundcard.glade:
	* flumotion/wizard/steps.py:
	  Fix for #135, adding human-readable names to the soundcard

2005-05-26  Andy Wingo  <wingo@pobox.com>

	* flumotion/component/consumers/httpstreamer/admin_gtk.py
	(HTTPStreamerAdminGtk.uiStateChanged): Implement vmethod, update
	the statistics.
	(StatisticsAdminGtkNode._loadGladeFileCallback): Don't get the
	uistate ourselves.

	* flumotion/component/consumers/httpstreamer/resources.py
	(HTTPStreamingResource.logWrite): Output time in GMT.

	* flumotion/component/base/admin_gtk.py (BaseAdminGtk.stateSet) 
	(BaseAdminGtk.stateAppend, BaseAdminGtk.stateRemove) 
	(BaseAdminGtk.__implements__): You be a listener.
	(BaseAdminGtk.__init__): Get the uistate when any admin-gtk view
	is created, and listen to it.
	(BaseAdminGtk.uiStateChanged): vmethod, called when the ui state
	changes. It is possible to override stateSet, etc individually
	though.

	* flumotion/admin/gtk/client.py (Window._setAdminModel): Connect
	to the right signal.

2005-05-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_http.glade:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	* flumotion/wizard/steps.py:
	  implement burst-on-connect.  Currently this is only sensible
	  for video, since audio frames are all keyframes, so it doesn't
	  give you a burst to sync to previous keyframe.

2005-05-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/parts.py:
	* flumotion/common/planet.py:
	* flumotion/component/component.py:
	* flumotion/test/test_manager_manager.py:
	  implement CPU usage monitoring.  Components will set CPU use
	  percentage since last heartbeat on the state, and the UI will
	  show it.  Needs factoring of the cpu code into an object
	  (when something else would start using it) and needs a celldata
	  func to be slightly nicer in the UI code.

2005-05-25  Andy Wingo  <wingo@pobox.com>

	* flumotion/wizard/sidebar.py (WizardSidebar.pop): Return True if
	the pop succeeded, False if there was nothing left.
	(WizardSidebar.set_sections): Reset the stack position when
	resetting the set of sections.

2005-05-24  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/main.py (main): Run main loop in main
	function.
	(_runInterface): Stop the reactor instead of doing a sys.exit.

	* flumotion/admin/gtk/wizard.py (Wizard): Use our own main loop,
	not the GTK one. Disconnect from the finished handler after one
	fire.

	* flumotion/admin/admin.py (AdminModel._defaultErrback): Not all
	failures have .type.

2005-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/main.py:
	* flumotion/common/errors.py:
	* flumotion/twisted/pb.py:
	  add ConnectionFailedError and handle name lookup errors everywhere

2005-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/tags:
	  add GTK 2.4 tag
	* flumotion/admin/gtk/dialogs.py:
	  provide a format_secondary_text "backport" function for pychecker's
	  happiness

2005-05-24  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/main.py (_runInterface):
	* flumotion/admin/gtk/client.py (Window.on_open_connection): Use
	the deferred from connectToHost and the new error dialog.

	* flumotion/admin/gtk/dialogs.py
	(connection_refused_modal_message): New proc, pops up a modal
	message that the connection to a manager was refused.
	(ErrorDialog.__init__): Add a secondary_text kwarg. Attempt to
	make it work on PyGTK 2.4.

	* flumotion/common/errors.py (ConnectedRefusedError): New error,
	raised by AdminModel.connectToHost's deferred.

	* flumotion/admin/admin.py (AdminModel.connectToHost): Return a
	deferred instead of requiring callers to connect to the
	::connected and ::connection-refused signals.

2005-05-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/medium.py:
	* flumotion/manager/base.py:
	* flumotion/worker/worker.py:
	  make avatars (PB server) and mediums (PB client) figure out
	  addresses on both sides of their connection as seen by them.
	  Will be useful to figure out network topology and firewalls.

2005-05-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/service/service.py:
	  factor out getPidPath() and use it
	  change waitPidFile to actually wait for the pid file to arrive,
	  instead of the fancy and brittle mtime on the run dir.

2005-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	  integrate twisted's logging with ours.  This might help us
	  debug some problems, no ? I think this is spiffy anyway.

2005-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to TRUNK

=== release 0.1.8 ===

2005-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  releasing 0.1.8, "Baja Beach"

2005-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion.spec.in:
	* flumotion/extern/Makefile.am:
	* flumotion/ui/trayicon.py:
	* flumotion/wizard/Makefile.am:
	  various fixes to make spec file and trayicon work

2005-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/Makefile.am:
	* doc/redhat/make-dummy-cert:
	* flumotion.spec.in:
	  use an included make-dummy-cert because it was removed
	  from openssl rpm for FC4

2005-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/encoders/encoders.xml:
	* flumotion/component/encoders/theora.py:
	  apply patch for theora advanced settings.  Closes #201.

2005-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/audiotest/audiotest.py:
	* flumotion/component/producers/audiotest/audiotest.xml:
	  make audiotest component respect sample rate setting
	  fixes #210

2005-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/http.py:
	  check user_limit since that's what it's called now
	* flumotion/component/consumers/httpstreamer/http.xml:
	  add user_limit and bandwidth_limit
	* flumotion/component/consumers/httpstreamer/resources.py:
	  rename setMaxClients to setUserLimit

2005-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/encoders/encoders.xml:
	* flumotion/wizard/steps.py:
	  treat vorbis encoding quality as a float (0.0 - 1.0)
	  Fixes #212

2005-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* configure.ac:
	* flumotion/admin/gtk/client.py:
	* flumotion/extern/Makefile.am:
	* flumotion/extern/pytrayicon/__init__.py:
	* flumotion/ui/Makefile.am:
	* flumotion/ui/trayicon.py:
	  add the tray icon.  Make sure it still works if the trayicon
	  is not compiled.  Closes #231.

2005-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_common.py:
	  remove double test that causes spurious problems

2005-05-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* configure.ac:
	* flumotion/Makefile.am:
	* flumotion/extern/Makefile.am:
	* flumotion/extern/__init__.py:
	* flumotion/extern/pytrayicon/Makefile.am:
	* flumotion/extern/pytrayicon/__init__.py:
	* flumotion/extern/pytrayicon/eggtrayicon.c:
	* flumotion/extern/pytrayicon/eggtrayicon.h:
	* flumotion/extern/pytrayicon/ltihooks.py:
	* flumotion/extern/pytrayicon/pytrayicon.defs:
	* flumotion/extern/pytrayicon/pytrayicon.override:
	* flumotion/extern/pytrayicon/pytrayiconmodule.c:
	  first part of adding a trayicon to Flumotion.
	  This builds the python module, so you can do
	  import flumotion.extern.pytrayicon
	  trayicon = pytrayicon.TrayIcon

2005-05-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	  catch errors on access of the pem file.  Fixes #202.

2005-05-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* flumotion/component/consumers/disker/disker.py:
	  add more file extensions.  Closes #206.

2005-05-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/encoders/vorbis.py:
	  Partial fix for #197 for OSS
	* flumotion/component/feedcomponent.py:
	  fix bug in updateMood so sad stays sad

2005-05-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent.py:
	  don't try to manage idle's - they get removed when iterate
	  returns FALSE, so the previous patch is not a really good idea

2005-05-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/encoders/vorbis.py:
	  check if we start up correctly
	* flumotion/component/feedcomponent.py:
	  save the idle iterator id so we only have one running

2005-04-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	* bin/flumotion-manager.in:
	* bin/flumotion-tester.in:
	* bin/flumotion-worker.in:
	* bin/flumotion.in:
	  "64 bit" fixes

2005-04-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	  get the stats again, instead of using None.
	  DANGER WILL: if there are GIL problems, this is the first
	  thing to check !

2005-04-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/sidebar.py:
	  declare the classvars

2005-04-25  Andy Wingo  <wingo@pobox.com>

	* flumotion/wizard/steps.py: No more placeholders, no more
	Consumption2.

	* flumotion/wizard/step.py (WizardStep): s/step_name/name/. All
	accessors changed.

	* flumotion/wizard/sidebar.py (SidebarSection.__init__): Allow
	sidebar entries to have different titles than their names. Thus a
	Production button can have a Source title. Crack.
	(WizardSidebar.push, WizardSidebar.pop): Push and pop from the top
	of the stack, not the active section.

	* data/wizard/wizard_summary.glade: Fix visibility problem.

	* flumotion/wizard/sidebar.py (WizardSidebar.__init__): Fix size
	request. 
	(SidebarButton.__init__): Fix padding.

	* flumotion/wizard/wizard.py (Scenario.show_next): Fix variable
	ref.
	
	* flumotion/wizard/wizard.py (Scenario.show_next): 
	* flumotion/wizard/types.py (WalkableStack.push): Remove some
	prints.

	* flumotion/wizard/steps.py: Don't register the steps, that kruft
	is gone thankfully. Add pages for sections. Return None for
	get_next at the end of sections. Unfortunately have to change the
	name of the consumption page -- will be working on this.

	* flumotion/wizard/wizard.py (Scenario): Initial attempt at
	tearing the stack logic out of the wizard.
	(BasicScenario): Basic scenario with six sections and steps
	autoloaded from steps.py.
	(Wizard): Is a gladewindow now.

	* flumotion/wizard/sidebar.py: New file.
	(WizardSidebar): Widget for the sidebar. Has four operations:
	set_sections, show_step, push, and pop.

	* data/glade/wizard_overview.glade: Placeholder for forthcoming
	summary pages.

	* flumotion/wizard/types.py: New file.
	(WalkableStack): A stack that you can walk down. Pushing an item
	on the stack can fail if you're not at the head and the next item
	is different from the one you're pushing.
	(KeyedList): An ordered list of objects that can be accessed by
	non-numeric keys as well. Perhaps a crack idea.

	* flumotion/wizard/save.py (WizardSaver.handleConsumers):
	Temporary fix for Consumption2 page name.

	* flumotion/common/watched.py: New file, implements data types
	that notify listeners when it changes.
	(WatchedList): Bling.

	* flumotion/ui/glade.py (GladeWindow.destroy): Delete the window
	reference after destroying it.

2005-04-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_common_gstreamer.py:
	* flumotion/common/gstreamer.py:
	  add bin_find_sinks() and test

2005-04-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_wizard.py:
	* flumotion/wizard/step.py:
	  fix Patrick Build Breakage

2005-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* data/Makefile.am:
	* data/flu-admin.desktop.in:
	* data/flumotion-admin.desktop.in:
	  rename to flumotion-admin.desktop.in and fix up to FE packaging

2005-04-21  Andy Wingo  <wingo@pobox.com>

	* flumotion/wizard/step.py: New file.
	(WizardStep): Split out from wizard.py.

	* flumotion/wizard/steps.py: 
	* flumotion/test/test_wizard.py (WizardStepTest.testLoadSteps):
	step.WizardStep.

	* flumotion/ui/glade.py (GladeWidget.__init__): Try to fix a
	python 2.3/pygtk 2.4 error?

	* flumotion/wizard/wizard.py (WizardStep): Change to be a
	GladeWidget. Set glade_typedict to the fgtk.WidgetMapping().
	(WizardStep.section, WizardStep.section_name): Add default class
	vars, set to None by default.
	(WizardStep._load_glade): Removed, implemented by GladeWidget.
	(WizardStep.iterate_widgets): New generator.
	(WizardStep.get_main_widget): Removed, WizardStep is a widget.
	(WizardStep.get_name): Use gtk.Widget implementation.
	(WizardStep.get_sidebar_name): Unused, removed.
	(WizardStep.get_section): Removed, just access WizardStep.section.
	(Wizard): Updated for WizardStep changes.
	
	* flumotion/test/test_wizard.py (WizardStepTest.testLoadSteps):
	Remove tests obsoleted by the use of gladewidget, step_name and
	step.get_name() are equal but not identical.
	(WizardStepTest.testStepWidgets): Use iterate_widgets() instead of
	self.widgets.

	* flumotion/ui/glade.py (GladeWindow.glade_typedict)
	(GladeWidget.glade_typedict): Added typedict class variables, and
	used them in the initializers.

2005-04-20  Andy Wingo  <wingo@pobox.com>

	* flumotion/manager/manager.py (find, first, any, fint): Move
	utils out to the toplevel.
	(Vishnu._configToComponentState): New method, converts a config
	dict to a managercomponentstate. This is really hacky though,
	there shouldn't be two ways to set up component states. Need to
	merge with loadconfiguration at some point.
	(Vishnu.componentAttached): Get the config and make the state if
	the avatar is unknown (i.e., if the manager quit and the component
	is logging back in again.)
	(Vishnu.registerComponent): Remove commented-out code.

2005-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  make sure we register cached paths first before registering
	  newly unbundled stuff.  If we just started up the admin,
	  the cached paths are not yet registered while we're trying to
	  stack our unbundled one on top of it.  Fixes #216.

2005-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_summary.glade:
	  change Quit to Apply, noted by jbn-o in #fluendo

2005-04-19  Andy Wingo  <wingo@pobox.com>

	* conf/managers/default/planet.xml: Add a default name for the
	manager. Call it 'planet'.

	* flumotion/manager/manager.py (Vishnu.deleteFlow): New routine,
	deletes just a single flow.

	* flumotion/manager/admin.py (AdminAvatar.perspective_deleteFlow):
	New method.

	* flumotion/wizard/wizard.py (Wizard): Set flowName to 'default'.
	
	* flumotion/wizard/save.py (WizardSaver.getXML): Take the flow
	name from the wizard.

	* data/glade/houston.glade: Default action fixes.

	* flumotion/admin/admin.py (AdminModel.managerInfoStr): New
	method, returns a nice string to identify the manager.

2005-04-15  Andy Wingo  <wingo@pobox.com>

	* flumotion/common/planet.py (ManagerPlanetState.__init__): Make
	sure the atmosphere state has the planet state as a parent.

	* flumotion/component/consumers/httpstreamer/admin_gtk.py
	(StatisticsAdminGtkNode.updateLabels): Fix to work with uiState.

	* flumotion/common/bundleclient.py (BundleLoader.load_module):
	Don't assume that bundle names are module names. Fixing this
	assumption leads to lots of cleanups.

	* flumotion/twisted/defer.py
	(defer_generator.wrapper.default_errback): Add an
	errback-of-last-resort that will print a traceback if nothing
	catches an error.

	* flumotion/component/consumers/httpstreamer/http.py
	(Stats.updateState): Renamed from getState. Takes a setter proc to
	set the args instead of returning a new dict.
	(HTTPMedium.remote_notifyState): Removed, instead use getUIState.
	(MultifdSinkStreamer.__init__): Add keys to the uiState.
	(MultifdSinkStreamer.update_ui_state.set): Call Stats.updateState
	with a setter for our uiState.

	* flumotion/component/bouncers/admin_gtk.py
	(KeycardsNode._loadGladeFileCallback): call getUIState instead of
	getBouncerState.
	* flumotion/component/bouncers/bouncer.py (Bouncer.__init__): Use
	uiState instead of _bouncerState.
	(BouncerMedium.remote_getBouncerState): Removed, use getUIState
	instead.

	* flumotion/component/component.py
	(BaseComponentMedium.remote_getUIState): New method, returns the
	UI state of the component.
	(BaseComponent.__init__): Initialize self.uiState to a new
	WorkerCompoenentUIState.

2005-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/main.py:
	  error out nicely on config errors

2005-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_workerconfig.py:
	* flumotion/worker/config.py:
	  do not use 'default' as a default worker name for config.
	  If nothing is specified, we should be using sockety stuff to
	  get a name.

2005-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent.py:
	* flumotion/component/producers/firewire/firewire.py:
	* flumotion/worker/checks/video.py:
	  server-side fixes for making 16:9 and 4:3 work

2005-04-14  Andy Wingo  <wingo@pobox.com>

	* flumotion/test/test_defer.py
	(TestDefer.testException.divide_later.divide): Tighten up the
	class of the error we check for.

	* flumotion/component/base/admin_gtk.py
	(BaseAdminGtkNode.status_pop, BaseAdminGtkNode.status_push): New
	methods for dealing with status bars. Hackily checks if the view
	set a 'statusbar' attribute on the node. Hey hey hey it's fat
	albert.

	* flumotion/component/consumers/httpstreamer/admin_gtk.py
	(DiskerAdminGtk.setup):
	* flumotion/component/consumers/disker/admin_gtk.py
	(DiskerAdminGtk.setup):
	* flumotion/component/producers/firewire/admin_gtk.py
	(FirewireAdminGtk.setup):
	* flumotion/component/producers/videotest/admin_gtk.py
	(VideoTestAdminGtk.setup):
	* flumotion/component/producers/soundcard/admin_gtk.py
	(SoundcardAdminGtk.setup):
	* flumotion/component/producers/bttv/admin_gtk.py
	(BTTVAdminGtk.setup):
	* flumotion/component/bouncers/admin_gtk.py
	(HTPasswdCryptAdminGtk.setup): Don't pass around view as an
	argument.

	* flumotion/admin/gtk/client.py (Window.show_component): Don't
	pass self to BaseAdminGtk*.__init__. Set node.statusbar instead.

	* flumotion/component/base/admin_gtk.py
	(BaseAdminGtk.loadGladeFile): Unused, removed.
	(EffectAdminGtkNode.__init__): 
	(BaseAdminGtkNode.__init__)
	(BaseAdminGtk.__init__): Remove last argument (normally a
	flumotion.admin.gtk.client.AdminClient instance), as it's unused.

	* flumotion/twisted/defer.py
	(defer_generator.wrapper.errback.raise_error): If the exception
	comes from a remote PB, failure.type will be a string. Try to use
	the exception class that corresponds to that string.

2005-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	  warn but don't fail on failed reflects during registerPackagePath
	* flumotion/test/test_common.py:
	  add a test for registerPackagePath simulating an
	  uninstalled project sharing an import namespace with another

2005-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_firewire.glade:
	* flumotion/wizard/steps.py:
	  admin-side fixes for widescreenity of firewire

2005-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* common/common.mk:
	* common/pychecker.mk:
	* common/show-coverage.py:
	  updates to common/ for shared stuff

2005-04-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/firewire:
	  some notes about firewire
	* flumotion/common/gstreamer.py:
	  add a function to get plugin version; only works with new gst-python
	* flumotion/wizard/steps.py:
	  use one way to calculate all widths being used, so what's shown
	  is what's done
	  make overlay component check if we can use ffmpegcolorspace over
	  alpha
	* flumotion/component/converters/overlay/overlay.py:
	  check for AYUV-ffmpegcolorspace
	* flumotion/component/producers/firewire/firewire.py:
	  cleanups
	* flumotion/wizard/wizard.py:
	  allow showing info dialogs
	* flumotion/worker/checks/video.py:
	  add a check for ffmpegcolorspace having AYUV

2005-04-12  Andy Wingo  <wingo@pobox.com>

	* flumotion/worker/worker.py (WorkerMedium.remote_runProc): Proxy
	BaseMedium.run_bundled_proc.

	* flumotion/common/medium.py (BaseMedium.load_module): New method,
	proxy from the bundleLoader.
	(BaseMedium.run_bundled_proc): New method, runs a procedure in a
	module, first fetching the bundles that support the module.

	* flumotion/common/bundleclient.py (BundleLoader.load_module):
	Renamed from .load. Don't assume the bundle has the same name as a
	module. Implement with a defer generator.
	(BundleLoader._fetchAndRegisterBundles): Now a defer generator.

	* flumotion/manager/base.py
	(ManagerAvatar.perspective_getBundleSums): Now also gets bundle
	sums for a file or module as well.
	(ManagerAvatar.perspective_getBundleSumsByFile): Removed.

	* flumotion/admin/admin.py (AdminModel.reload_async): New method,
	takes a port as an argument for output.

2005-04-11  Andy Wingo  <wingo@pobox.com>

	* flumotion/twisted/defer.py: Remove hacks, pychecker seems happy
	enough without them.

	* flumotion/common/planet.py (moods.can_start, moods.can_stop):
	New static methods.

	* flumotion/component/component.py (BaseComponent.stop): Set the
	component mood to sleeping before we stop. "One last heartbeat."
	Allows the manager to immediately start a component after stopping
	it.

	* flumotion/manager/admin.py
	(AdminAvatar.perspective_componentRestart): Fixed restart.

2005-04-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* common/Makefile.am:
	* common/pychecker.mk:
	* tools/pycheckerhelp.py:
	  more unification

2005-04-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* autogen.sh:
	* common/Makefile.am:
	* common/common.mk:
	* common/pychecker.mk:
	* common/python.mk:
	* configure.ac:
	* doc/random/styleguide:
	* flumotion/Makefile.am:
	* flumotion/admin/Makefile.am:
	* flumotion/admin/gtk/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/component/Makefile.am:
	* flumotion/component/base/Makefile.am:
	* flumotion/component/bouncers/Makefile.am:
	* flumotion/component/consumers/Makefile.am:
	* flumotion/component/consumers/disker/Makefile.am:
	* flumotion/component/consumers/httpstreamer/Makefile.am:
	* flumotion/component/converters/Makefile.am:
	* flumotion/component/converters/overlay/Makefile.am:
	* flumotion/component/effects/Makefile.am:
	* flumotion/component/effects/colorbalance/Makefile.am:
	* flumotion/component/effects/volume/Makefile.am:
	* flumotion/component/encoders/Makefile.am:
	* flumotion/component/muxers/Makefile.am:
	* flumotion/component/producers/Makefile.am:
	* flumotion/component/producers/audiotest/Makefile.am:
	* flumotion/component/producers/bttv/Makefile.am:
	* flumotion/component/producers/firewire/Makefile.am:
	* flumotion/component/producers/soundcard/Makefile.am:
	* flumotion/component/producers/videotest/Makefile.am:
	* flumotion/component/producers/webcam/Makefile.am:
	* flumotion/configure/Makefile.am:
	* flumotion/manager/Makefile.am:
	* flumotion/service/Makefile.am:
	* flumotion/test/Makefile.am:
	* flumotion/tester/Makefile.am:
	* flumotion/twisted/Makefile.am:
	* flumotion/ui/Makefile.am:
	* flumotion/wizard/Makefile.am:
	* flumotion/worker/Makefile.am:
	* flumotion/worker/checks/Makefile.am:
	* m4/as-ac-expand.m4:
	* m4/as-python.m4:
	* m4/as-version.m4:
	* py-compile-destdir:
	* python.mk:
	  rework build setup so we can make all flumotion projects uniform

2005-04-11  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/client.py (Window._component_do): Use
	new start/stop methods.

	* flumotion/manager/admin.py (AdminAvatar.perspective_componentStop) 
	(AdminAvatar.perspective_componentRestart): New methods. The first
	will call componentCallRemote. The second will wait on a stop
	before a restart.
	(AdminAvatar.perspective_componentCallRemote): Deprecate use of
	componentCallRemote to start components.

	* flumotion/admin/admin.py:
	s/c_defer_generator/defer_generator_method/

	* flumotion/twisted/defer.py (defer_generator_method): Renamed
	from c_defer_generator, return a curried function.

2005-04-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:
	* misc/pycheckerrc:
	  make wizard be checked as well

2005-04-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	  remove stuff from blacklist after fixing
	* flumotion/component/converters/overlay/overlay.py:
	  rework so we can use a safe function
	* flumotion/component/effects/volume/admin_gtk.py:
	  remove an import

2005-04-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/common/medium.py:
	* flumotion/configure/uninstalled.py.in:
	* tools/pycheckerhelp.py:
	  fix make distcheck again

2005-04-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	  add pycheckersplit target for maximum CPU usage
	* TODO:
	  some notes
	* flumotion/component/consumers/httpstreamer/resources.py:
	  don't reuse var
	* misc/pycheckerrc:
	  add a comment

2005-04-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/twisted/defer.py:
	  make a c_defer_generator to be used for instance methods

2005-04-05  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/admin.py (AdminModel.setRemoteReference): Molest
	the planet.
	
	* flumotion/admin/admin.py (AdminClientFactory.gotDeferredLogin):
	Refactor to use defer_generator.

	* flumotion/admin/gtk/client.py: Adapt to admin.py api change.

	* flumotion/twisted/defer.py: Feeble attempt to appease pychecker.
	If infants can code it, pychecker can verify it! Non-infant use
	not recommended.

	* flumotion/admin/admin.py (AdminModel.setRemoteReference): Rework
	to use defer_generator.
	(AdminModel.planet): Renamed from _planetState, public for
	readonly access. All accessors changed.
	(AdminModel.__init__): Move private instance variable
	initialization here.
	(AdminModel.getPlanetState): Removed, just get AdminModel.planet.
	
	* flumotion/test/defer.py: Fix test suite name.

	* flumotion/test/Makefile.am (flumotion_PYTHON):
	* flumotion/test/test_defer.py: Test suite for
	flumotion.twisted.defer.

	* flumotion/twisted/Makefile.am (flumotion_PYTHON):
	* flumotion/twisted/defer.py: New file, integrating twisted
	deferreds with python generators. I'm not using deferredGenerator
	because it's too verbose.

2005-04-04  Andy Wingo  <wingo@pobox.com>

	* data/image/16x16/about.png: 
	* data/image/24x24/about.png: New files, from the hicolor gnome
	theme. LGPL.

	* flumotion/admin/gtk/client.py (Window._create_ui): Use stock
	icons.

	* flumotion/ui/Makefile.am: 
	* flumotion/ui/icons.py: New file, instantiates stock icons for
	flumotion doohickeys.

	* flumotion/manager/component.py
	(ComponentHeaven.registerComponent): Add some brackets, make
	python 2.3 happy

	* flumotion/admin/gtk/client.py
	(Window._append_recent_connections): Adapt to recieve a list of
	dicts instead of tuples.

	* flumotion/admin/gtk/connections.py (get_recent_connections):
	Refactored out of Connections. Now returns a list of dicts instead
	of a list of tuples.
	(Connections._populate_liststore): Use get_recent_connections.

	* flumotion/test/test_worker_worker.py
	(TestWorkerMedium.testSetRemoteReference): Fix so the remote
	reference behaves more like a remote reference.

	* flumotion/common/medium.py (BaseMedium): New file, implements a
	base class for mediums.
	(BaseMedium.setRemoteReference, BaseMedium.hasRemoteReference)
	(BaseMedium.callRemote): Implement these interface methods in the
	BaseMedium. callRemote traps PBConnectionLost.
	(BaseMedium.remote, BaseMedium.bundleLoader): Instance vars, set
	to None.

	* flumotion/common/interfaces.py: Add a note pointing to the
	medium implementation in flumotion.medium.

	* flumotion/component/component.py (BaseComponentMedium): 
	* flumotion/worker/worker.py (WorkerMedium): 
	* flumotion/worker/job.py (JobMedium): 
	* flumotion/admin/admin.py (AdminModel): Descend from BaseMedium,
	removing unneeded code.

	* flumotion/admin/admin.py (AdminClientFactory):
	AdminModel-specific client factory, encapsulating all of the login
	krap.
	(AdminModel::connection-refused): Don't pass connection parameters
	in the args, rather provide...
	(AdminModel.connectionInfoStr): New function, returns a
	human-presentable string for the connection parameters.
	(AdminModel.setRemoteReference): Extends the BaseMedium method,
	encapsulating all of the operations that happens when a model gets
	connected to a remote reference.

	* flumotion/admin/gtk/client.py
	(Window.admin_connection_refused_later)
	(Window.admin_connection_refused_cb): Adapt to connection-refused
	signal change, call connectionInfoStr().

	* flumotion/worker/worker.py (WorkerMedium.remote_start): Doc fix.
	(WorkerClientFactory.gotDeferredLogin): Refactor callbacks as
	closures rather than methods. Kleaner.

	* flumotion/worker/job.py (JobMedium.remote_start): Rename
	configDict arg to config.
	(JobMedium._runComponent): Set the config dict on the component,
	so it knows how it was instantiated. Adapt to reconnecting
	component factory api.
	(JobMedium.hasPerspective): Removed, it's the same as
	hasRemoteReference implemented in BaseMedium.

	* flumotion/manager/component.py (ComponentAvatar.cleanup): Fix
	extra quote in doc.
	(ComponentAvatar._mindGetStateCallback): Doc type of state
	argument.
	(ComponentHeaven.registerComponent): Beginnings of componentState
	reconstruction code.

	* flumotion/component/component.py
	(BaseComponent.__remote_interfaces__): Removed. What on earth was
	this, anyway? It's not referenced at all in flumotion or twisted.
	(ComponentClientFactory): Now a reconnecting factory. This means
	that if the manager goes away, components will try to reconnect to
	it later. Methods refactored to use the
	startLogin/gotDeferredLogin interface.
	(BaseComponentMedium.remote_getConfig): New remote method, will
	return the component's configuration dict.
	(BaseComponent.__init__): Chain up properly, add .dict instance
	var.
	(BaseComponent.setConfig): New method, sets the configuration dict
	on a component.

2005-04-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to trunk

=== release 0.1.7 ===

2005-04-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  releasing 0.1.7, "La Chacha"

2005-04-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/webcam/webcam.py:
	  make sure we use the device from the config
	* flumotion/component/producers/webcam/webcam.xml:
	  make device required
	* flumotion/wizard/steps.py:
	  implement WebCam get_state instead of relying on base class

	  Fixes issue #110 and #134.

2005-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/firewire/admin_gtk.py:
	  make sure volume increase changes get shown
	* flumotion/manager/component.py:
	  fix a very stupid bug related to indentation and for loops.
	  Fixes issue #198

2005-04-05  Andy Wingo  <wingo@pobox.com>
	
	* flumotion/component/converters/overlay/genimg.py
	(generate_overlay): If not text, don't draw.text.
	
	* flumotion/component/converters/overlay/overlay.xml: Add
	show_text prop.
	
	* flumotion/component/converters/overlay/overlay.py
	(createComponent): Follow config['show_text'].

2005-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/resources.py:
	  debugging cleanups for better feedback

2005-04-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_audio_encoder.glade:
	* data/glade/wizard_audiotest.glade:
	* data/glade/wizard_encoding.glade:
	* data/glade/wizard_http.glade:
	* data/glade/wizard_jpeg.glade:
	* data/glade/wizard_license.glade:
	* data/glade/wizard_overlay.glade:
	* data/glade/wizard_smoke.glade:
	* data/glade/wizard_soundcard.glade:
	* data/glade/wizard_theora.glade:
	* data/glade/wizard_tvcard.glade:
	* data/glade/wizard_vorbis.glade:
	* data/glade/wizard_webcam.glade:
	  UI cleanups:
	  - align labels on the left
	  - add/fix accessors
	  - various tweaks

2005-04-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* flumotion/component/encoders/encoders.xml:
	* flumotion/component/encoders/vorbis.py:
	  downsample audio based on chosen bitrate
	  fixes issue #183

2005-04-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  clarify other error condition
	* flumotion/component/effects/volume/volume.glade:
	  change UI a little to fit in panes and implement "distort" checkbox
	  use custom widget for level indicator with create function
	* flumotion/component/effects/volume/admin_gtk.py:
	  implement handling of the new ui
	* flumotion/component/effects/volume/volume.py:
	  use float multiplier values, not percentages
	* flumotion/component/producers/soundcard/admin_gtk.py:
	  make sure soundcard gets volumeSet for view node
	* flumotion/component/producers/firewire/firewire.py:
	  change value to be a multiplier
	* flumotion/component/producers/soundcard/soundcard.py:
	  make it clear we still need to implement setVolume

2005-04-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	  add _listPyFileRecursively
	  add _findEndModuleCandidates
	  use it in registerPackagePath to also rebuild all non-package
	  modules under the packagePath.  This solves #192
	* flumotion/test/test_common.py:
	  add test for new functions
	* flumotion/component/effects/volume/admin_gtk.py:
	* flumotion/component/producers/soundcard/admin_gtk.py:
	  clean up now that it works

2005-04-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_common.py:
	* flumotion/common/common.py:
	  add pathToModuleName + test
	  document registerPackagePath
	  fix several subtle problems in registerPackagePath:
	  - warn on non-existing paths
	  - remove previously registered packagePaths for the same bundle
	    (which is a flumotion-specific hack, so needs fixing better)
	  - make sure the new packagePath is at the top everywhere,
	    because reload/rebuild.rebuild take the first valid one

	* flumotion/admin/admin.py:
	  check correctly for locally cached paths (bundle name was missing),
	  so it again only downloads missing bundles

	* flumotion/admin/gtk/client.py:
	  change show_component to not use a tempmod module, so rebuilding
	  works nicely everywhere
	  clear self.current_component so it can be used to check if
	  something's shown yet
	  check if it's set when doing outside ui change notifications

	* flumotion/component/effects/volume/admin_gtk.py:
	* flumotion/component/producers/soundcard/admin_gtk.py:
	  use as test bed for registerPackagePath fixing

2005-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* flumotion/component/effects/volume/admin_gtk.py:
	* flumotion/component/effects/volume/volume.glade:
	* flumotion/component/effects/volume/volume.py:
	* flumotion/component/producers/firewire/Makefile.am:
	* flumotion/component/producers/firewire/admin_gtk.py:
	* flumotion/component/producers/firewire/firewire.py:
	* flumotion/component/producers/firewire/firewire.xml:
	* flumotion/component/producers/soundcard/soundcard.py:
	  Add way to change volume for the volume effect
	  Give the firewire a UI component using this
	  Closes issue #184

2005-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  change debug message
	* flumotion/wizard/steps.py:
	  remove 'General error' from dialog
	* flumotion/worker/checks/video.py:
	  reorder some error handling

2005-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/registry.py:
	  raise a useful error message when parsing of registry xml files
	  fails

2005-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/componentui.py:
	  remove all of the commented-out code
	* flumotion/test/test_common_componentui.py:
	* flumotion/test/test_flavors.py:
	  use common's pb fake stuff

2005-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	  warn on failure of removing jobState, but continue anyway

2005-04-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/test/test_common.py:
	  add objRepr method and test

2005-03-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/pygobject.py:
	* flumotion/test/test_common_pygobject.py:
	* flumotion/test/Makefile.am:
	  add tests for flumotion.common.pygobject

2005-03-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/bouncers/bouncer.py:
	  implement remote_expireKeycardId for the admin ui to use
	  do some refactoring
	* flumotion/component/bouncers/bouncer.glade:
	* flumotion/component/bouncers/admin_gtk.py:
	  add a UI to bouncers allowing you to expire keycards
	* flumotion/component/bouncers/htpasswdcrypt.xml:
	  add admin GTK view
	* flumotion/component/consumers/httpstreamer/resources.py:
	  allow setting the requesterName and use it
	* flumotion/component/consumers/httpstreamer/http.py:
	  set the avatarId as the requesterName;
	  avatarId is passed through config dict, which needs fixing
	* flumotion/worker/job.py:
	  shoehorn the avatarId in the config dict when doing getComponent
	  as a temporary measure for getting the requesters' full avatarId
	  on the keycard
	* flumotion/manager/admin.py:
	  make componentuistates proxyable
	* flumotion/manager/component.py:
	  *Component -> *Avatar

	  This commit fixes #186.

2005-03-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	* flumotion/common/componentui.py:
	  added objects for serializing ui state from component to view in admin
	* flumotion/test/Makefile.am:
	* flumotion/test/test_common_componentui.py:
	  and a test
	* flumotion/twisted/flavors.py:
	  fixed a nasty bug in the case where it subclasses from both
	  Cacheable and RemoteCache, and the dict of that type got stuff
	  appended and removed *twice*

2005-03-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  call a .cleanup() on the old AdminGtk objects if they implement it
	  when showing a new component

2005-03-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/common.py:
	  add infrastructure to start test worker/admin/manager
	* flumotion/common/keycards.py:
	  add .getData() giving you a dict of admin ui-displayable info
	* flumotion/test/test_keycards.py:
	  test sending and receiving of keycards

2005-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/minimal.xml:
	  fix config to have flow name
	* flumotion/manager/component.py:
	  solve KeyError bugs for non-feed components
	* flumotion/manager/main.py:
	  fix debug for when no manager section is present

2005-03-30  Andy Wingo  <wingo@pobox.com>

	* bin/flumotion-admin.in: Only use twisted's gtk2reactor if we
	have version 2.

	* flumotion/common/config.py
	(FlumotionConfigXML.get_string_value): libxml always gives us
	unicode, even when we encode values as strings. Try to make
	normal strings again, unless that isn't possible. Fixes #18.

2005-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundle.py:
	  raise proper error
	* flumotion/wizard/save.py:
	  shorten the name
	* flumotion/wizard/wizard.py:
	  placeholder for future code

2005-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	  move setup to _start() method so a blocked port can be
	  recovered from

2005-03-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	  some more things to work on
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:
	  clean up, document, reorder

2005-03-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/converters/overlay/overlay.py:
	  Clean up temporary image file.  Fixes #188.

2005-03-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/resources.py:
	  handle clients that have gone away before headers (fd == -1)
	  rearrange code more logically

2005-03-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  improve logging

2005-03-26  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/gtkunit.py:
	* flumotion/test/test_greeter.py:
	  clicked buttons flash
	  entries get typed in

2005-03-25  Andy Wingo  <wingo@pobox.com>

	* flumotion/test/gtkunit.py: New file, implements some functions
	for testing guis.

	* flumotion/test/test_greeter.py (WizardTest.testMakeGreeter): Use
	gtkunit.py.

2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/Makefile.am:
	* flumotion/test/test_twisted_compat.py:
	* flumotion/twisted/Makefile.am:
	* flumotion/twisted/compat.py:
	  add a twisted.compat to help alleviate 1.3/2.0 transition issues
	  add unit tests for it working on both 1.3 and 2.0

	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/twisted/flavors.py:
	  use the warning filter

2005-03-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	* flumotion/twisted/gstreactor.py:
	  add in some try/except stuff and various tweaks to make Flumotion
	  also work with Twisted 2.0

2005-03-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	* flumotion/wizard/steps.py:
	* flumotion/worker/checks/video.py:
	  Make firewire wizard step react on changed workers
	  Add additional check for whether the device node is actually present

2005-03-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	  log versions we are and are using

2005-03-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	* bin/flumotion-manager.in:
	* bin/flumotion-worker.in:
	  don't insert paths that are already there - allowing me to
	  test against a Twisted somewhere else than /usr

2005-03-23  Andy Wingo  <wingo@pobox.com>

	* flumotion/test/test_greeter.py (WizardTest.testMakeGreeter):
	Update for changes.

	* flumotion/admin/gtk/greeter.py (Greeter): Derive from Wizard.

	* flumotion/admin/gtk/wizard.py: Add docs.
	(Wizard): Derive from GladeWindow. Take the name and list of steps
	as class variables.

	* tools/pycheckerhelp.py: Pacify pychecker?!?

	* data/glade/Makefile.am (glade_DATA): Added authenticate.glade
	and open-connection.glade. Thanks to Zaheer Merali for the tip.

2005-03-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* doc/reference/Makefile.am:
	* tools/pycheckerhelp.py:
	  update for checks.video
	* flumotion/wizard/steps.py:
	* flumotion/worker/checks/video.py:
	  cleanup and document

2005-03-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/checks/video.py:
	* flumotion/worker/worker.py:
	  Fix the TV card __call__ error

2005-03-21  Andy Wingo  <wingo@pobox.com>

	* data/glade/wizard.glade:
	* data/glade/connection-dialog.glade: Center on parent.

	* flumotion/admin/gtk/client.py
	(Window._append_recent_connections): Show all recent connections,
	including the current one. Use the human-readable string supplied
	by get_recent_connections(). Limit the number of recent
	connections to 4.
	(Window.admin_connected_cb): Hackily repeat the new human-readable
	code here.

	* flumotion/admin/gtk/connections.py
	(Connections.get_recent_connections): Return the human-readable
	strings as well.
	(Connections._populate_liststore.human_readable): New
	string representation for connections.

	* flumotion/ui/fgtk.py (FComboBox._init_enum_model): Avoid
	deprecated gtk.TRUE.

2005-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/config.py:
	* flumotion/common/planet.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	  Fix bouncers

2005-03-11  Andy Wingo  <wingo@pobox.com>

	* data/glade/greeter-authenticate.glade:
	* flumotion/admin/gtk/greeter.py (Authenticate.setup):
	* flumotion/admin/gtk/connections.py
	(Authenticate.auth_method_combo): Fire and handle signals
	appropriately.

	* flumotion/test/test_greeter.py (WizardTest.testMakeGreeter): Fix
	for changes in the auth widget.

	* flumotion/ui/glade.py (flumotion_glade_custom_handler): Make
	sure the module is loaded. Add some more informative errors.
	(GladeWidget.__init__): More informative errors.
	(GladeWindow.__init__): More informative errors.

	* flumotion/wizard/wizard.py (WizardStep.glade_dir): New class
	var, like GladeWindow.
	(Wizard.__init__): s/parent_widget/parent_window/
	(register_step): If there's already a step of the given name,
	replace it. Add initial arg, if true the page will be prepended to
	the list instead of appended.

	* flumotion/admin/gtk/client.py (Window.debug_start_shell_cb):
	Only use the spiffy console if we have python 2.4.

	* data/image/wizard/consumption.png: New image, from the artwork
	repository.
	* data/image/wizard/flow.png: Moved here from consumption.png.

2005-03-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/Makefile.am:
	* flumotion/test/test_common_gstreamer.py:
	  add a gstreamer test

2005-03-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/vumeter:
	* flumotion/test/test_ui_fgtk.py:
	* flumotion/ui/fgtk.py:
	  fix the vu meter in the low range; increase coverage
	  
2005-03-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/service/service.py:
	  have the worker start with the debug specified in the config instead

2005-03-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/connections.py:
	  sacrifice animals to the god of python checking

2005-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/admin-wizard.glade:
	* data/glade/authenticate.glade:
	* data/glade/connection-dialog.glade:
	* data/glade/connections.glade:
	* data/glade/greeter-initial.glade:
	* data/glade/open-connection.glade:
	* data/glade/wizard.glade:
	* data/glade/wizard_consumption.glade:
	* data/glade/wizard_disk.glade:
	* data/glade/wizard_firewire.glade:
	* data/glade/wizard_license.glade:
	* data/glade/wizard_overlay.glade:
	* data/glade/wizard_source.glade:
	* data/glade/wizard_theora.glade:
	* data/glade/wizard_vorbis.glade:
	* tools/gtk-2.4-ify-glade-files:
	  remove focus_on_click and add_tearoffs

2005-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/authenticate.glade:
	* data/glade/connection-dialog.glade:
	* data/glade/greeter-authenticate.glade:
	* data/glade/greeter-connect_to_existing.glade:
	* data/glade/greeter-initial.glade:
	* data/glade/greeter-load_connection.glade:
	  2.4-ify
	* flumotion/admin/gtk/client.py:
	  fix an AP
	* flumotion/common/code.py:
	  remove some unused imports

2005-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_checkers.py:
	* flumotion/twisted/checkers.py:
	* flumotion/twisted/credentials.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  increase coverage for checkers to 100%.  Fix obvious security
	  problem.  Rename Anonymous to Passwordless since that's what it is.

2005-03-09  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/client.py (Window.debug_start_shell_cb): Use
	flumotion.common.code instead of code.

	* flumotion/common/code.py: New file, makes the debugging shell
	run in parallel with the GTK main loop, and makes tab completion
	work. Whoop!

2005-03-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/keycards.py:
	  allow setting a domain on a keycard
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	* flumotion/component/consumers/httpstreamer/resources.py:
	  allow a "domain" keyword in config
	  set it on keycards
	  use it in HTTP auth challenge
	* flumotion/test/test_http.py:
	  finally fix the test marked skip for unauthorized

2005-03-08  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/wizard.py (Wizard.set_page): Remove the
	requirement that there be a widget named 'page' in a wizard step.

	* data/glade/authenticate.glade:
	* flumotion/admin/gtk/connections.py (Authenticate): New widget,
	factored out of the greeter.

	* data/glade/greeter-authenticate.glade: 
	* flumotion/admin/gtk/greeter.py (Authenticate): Change to use new
	connections.Authenticate widget.

	* flumotion/ui/glade.py (flumotion_glade_custom_handler): New
	custom glade handler, set when the module is loaded.

	* flumotion/admin/gtk/wizard.py (WizardStep.next_pages): Derive
	from GladeWidget, ditch our own glade-like code. Same behaviour
	tho.
	(Wizard.__init__): Show pages when creating them.
	(Wizard.set_page): `page' itself is a widget now.

	* flumotion/admin/gtk/connections.py (ConnectionsDialog.glade_file): 
	* flumotion/admin/gtk/greeter.py
	(ConnectToExisting.open_connection)
	(LoadConnection.title): No need for custom glade handlers, thus no
	need for __init__.

	* data/glade/greeter-load-connection.glade:
	* data/glade/connection-dialog.glade:
	* data/glade/greeter-connect_to_existing.glade: Construct custom
	widgets with fully qualified module names.

2005-03-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/test/test_common.py:
	* flumotion/worker/main.py:
	  increase coverage, rename waitForKill to be more clear
	* flumotion/common/pygobject.py:
	* flumotion/manager/admin.py:
	  doc fixes

2005-03-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/open-connection.glade:
	  work with gtk 2.4
	* flumotion/admin/gtk/parts.py:
	  work with py 2.3

2005-03-07  Andy Wingo  <wingo@pobox.com>

	* flumotion/common/pygobject.py (with_construct_properties): New
	decorator, takes care of G_PARAM_CONSTRUCT properties. Make it
	work with gproperty(). Fix a bug whereby all instance of the same
	class share the same gproperty dict, exposing the construct bug.

	* flumotion/admin/gtk/parts.py (ComponentsView): Use
	with_construct_properties.

	* flumotion/test/test_pygobject: Test the
	with_construct_properties decorator.

	* flumotion/test/test_greeter.py (WizardTest.testMakeGreeter):
	Update to work with refactored connections widget, "fix" the
	hanging-window problem.

	* data/glade/greeter-connect_to_existing.glade:
	* data/glade/open-connection.glade:
	* flumotion/admin/gtk/greeter.py:
	* flumotion/admin/gtk/connections.py: "Connect to existing"
	factored out into a GladeWidget.

	* tests/construct-properties-do-not-work.py: New file,
	demonstrates that construct properties don't work in pygtk.

2005-03-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundleclient.py:
	* flumotion/worker/worker.py:
	  doc and debug changes

2005-03-02  Andy Wingo  <wingo@pobox.com>

	* flumotion/ui/glade.py (GladeWindow.__init__): Make the parent
	argument optional, so toplevel windows can descend from this
	class.

	* flumotion/admin/gtk/client.py (Window.file_export_configuration_cb) 
	(Window.on_export_response, Window.getConfiguration_cb) 
	(Window.file_import_configuration_cb, Window.on_import_response):
	Implement import/export of configurations.

	* data/glade/admin.glade: Add menu items to import and export
	configurations.

	* flumotion/admin/admin.py (AdminModel.getConfiguration): New
	method, foo.

	* flumotion/manager/admin.py
	(AdminAvatar.perspective_getConfiguration): New method, bla bla.
	So many levels of encapsulation, eh.

	* flumotion/manager/manager.py (Vishnu.getConfiguration): New
	method, gets the configuration of the manager as an XML string.

	* flumotion/common/config.py (FlumotionConfigXML.export): Added
	method, exports the configuration as a pretty-printed xml string.

	* configure.ac: 
	* Makefile.am (EXTRA_DIST): 
	* env.in: New script, sets up a dev environment for
	flumotion.

2005-02-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/disker/admin_gtk.py:
	  make UI visisble again

2005-02-16  Andy Wingo  <wingo@pobox.com>

	* flumotion/manager/manager.py (Vishnu._startErrback): Add an
	errback if the component could not be started.
	(Vishnu._workerStartComponentDelayed): Connect to the errback.

	* flumotion/worker/worker.py (WorkerMedium.remote_start): If
	deferredStartCreate returns None, then there's already a start in
	progress. Handle that.
	(WorkerBrain.deferredStartFailed): New handler, removes the
	deferred start from the list if the start failed, calling the
	deferred's errback.
	(JobAvatar._startErrback): Call deferredStartFailed.

	* flumotion/admin/gtk/client.py (Window.runWizard): Pass our
	window as the parent.
	(Window.admin_connected_cb): Make sure the parent window is
	realized before setting it as the transient parent, avoids some
	gtk criticals.

	* flumotion/wizard/wizard.py (Wizard.__init__): Add new initarg,
	parent_widget. Really should be parent_window, but anyway it is
	used in set-transient-for.

2005-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to trunk

=== release 0.1.6 ===

2005-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/managers/default/planet.xml:
	  remove debug
	* data/glade/admin.glade:
	  fixify glade stuff for 2.4
	* flumotion/component/muxers/ogg.py:
	  add a huge improvement for stream muxing stability by setting
	  max delay and max page delay to 0.5 secs instead of 5 secs

2005-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_registry.py:
	  partial registry files should not have <directory> root entries

2005-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/configure/uninstalled.py.in:
	  Do not create _build by making sure we check correctly for
	  presence of _build

2005-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/registry.py:
	  make sure the registry doesn't get rebuilt all the time.
	  Really, *all* the time.

2005-02-15  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/client.py (Window.admin_connected_cb):
	Actually run the wizard, yo.

2005-02-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/parts.py:
	  some debug
	* flumotion/common/planet.py:
	  return a deferred list for empty() of state
	* flumotion/manager/manager.py:
	  order emptying correctly
	* flumotion/twisted/flavors.py:
	  return a deferred list for all observer updates on state
	  make a copy of list when removing

2005-02-15  Andy Wingo  <wingo@pobox.com>

	* data/glade/greeter-initial.glade: Reword some things.

	* flumotion/admin/gtk/greeter.py (LoadConnection.title): Change to
	"Recent connections".

	* flumotion/component/producers/webcam/admin_gtk.py
	(WebcamAdminGtk.setup): Pass the state as the first arg, not the
	name.

	* flumotion/admin/gtk/client.py (Window.start_stop_notify_cb):
	Move clear_all updating here from
	_set_stop_start_component_sensitive.

2005-02-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	* flumotion/test/test_manager_manager.py:
	  create a graph of component dependencies

2005-02-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	* flumotion/test/test_manager_manager.py:
	  revert change to emptyPlanet until we refactor manager code

2005-02-15  Andy Wingo  <wingo@pobox.com>

	* flumotion/manager/manager.py (Vishnu.emptyPlanet): Simplify
	because we require that all of the components be sleeping already.

	* flumotion/admin/gtk/client.py (Window.manage_start_all_cb): New
	callback.
	(Window.manage_stop_all_cb): Implement via a simple "for x in
	l..." idiom instead of emptyPlanet().
	(Window.manage_clear_all_cb): New callback, uses
	cleanComponents->emptyPlanet.

	* data/glade/admin.glade: Add a clear-all menu button.

	* flumotion/admin/gtk/client.py (Window.current_component_state):
	New instance var, either None or the current AdminComponentState
	being shown.
	(Window._create_ui): Set the start/stop component ui widgets'
	sensitivity when the ui is made. Hook into the can-start-any and
	can-stop-any notifications to keep the sensitivity state current.
	(Window.stateSet): Also handle notifications of 'mood'.
	(Window.start_stop_notify_cb): New cb, sets sensitivity of
	stop-all/start all.
	(Window._set_stop_start_component_sensitive): New routine, sets
	sensitivity according to current_component_state.
	(Window._components_view_has_selection_cb): Set
	current_component_state.

	* flumotion/admin/gtk/parts.py (ComponentsView): Landed the
	can-start-any and can-stop-any properties.
	(ComponentsView.update_start_stop_props): New proc, scans the
	treemodel to see if we need to update the can-start-any or
	can-stop-any properties. 
	(ComponentsView.update, ComponentsView._set_mood_value): Hook into
	update_start_stop_props().

	* flumotion/admin/admin.py (AdminModel): Moved can-start-any and
	can-stop-any properties to ComponentsView.

2005-02-14  Andy Wingo  <wingo@pobox.com>

	* m4/as-python.m4 (AS_PATH_PYTHON): Use textual comparison for
	version parts, as some pythons have non-numeric micros (2.4.1a0
	for example).

	* flumotion/test/test_pygobject.py: Add a test for gsignal and
	gproperty.

	* flumotion/admin/admin.py (AdminModel): Add can-start-any and
	can-stop-any properties using gproperty().

	* flumotion/common/pygobject.py (gproperty): New function, adds a
	property to the calling class. Will install
	do_get_property/do_set_property implementations if they are not
	already present.

2005-02-14  Christian Schaller <christian at fluendo dot com>

	* Add desktop file with icon for admin tool

2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent.py:
	  notify both old and new state
	* flumotion/manager/admin.py:
	  add componentStart perspective method
	* flumotion/manager/component.py:
	  manage feeder's readiness correctly
	* flumotion/manager/manager.py:
	  implement componentStart for one component

2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	  add some errors
	* flumotion/common/log.py:
	  change logging some more

2005-02-14  Andy Wingo  <wingo@pobox.com>

	* data/glade/admin.glade: Remove "Stop all" toolbar button. It
	doesn't work right now.

	* flumotion/common/bundle.py (BundlerBasket.getDependencies):
	Rework to check if the argument is a valid bundle, and raise an
	exception otherwise.

	* flumotion/worker/checks/video.py (check1394): Go to PLAYING, not
	READY. Bug introduced on 02-08.
	(check1394.iterate): Whoops, actually return if the bin failed to
	iterate.

	* flumotion/test/test_parts.py (TestComponentsView.testSelected):
	Connect to the right signal.

	* flumotion/admin/gtk/parts.py (ComponentsView::has-selection):
	Renamed from ::selected to indicate that we are fired when the
	selection is None. Emitters adapted.

	* flumotion/admin/gtk/client.py (Window._create_ui): Connect to
	has-selection rather than selected on the components view, and
	call _set_component_ops_sensitive() to set initial sensitivity
	state.
	(Window._set_component_ops_sensitive): New method, sets the
	sensitivity of the start/stop toolbar and menu items.
	(Window._components_view_has_selection_cb): Adapt to has-selection
	signal, and call _set_component_ops_sensitive(). Renamed from
	...selected_cb.

	* flumotion/admin/gtk/Makefile.am (component_PYTHON): Add
	connections.py to the list. Thanks to Christian Frederick Kalager
	Schaller for the tip.

2005-02-09  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/client.py (Window.componentCallRemote): Fix
	a bug in the arglist to ...Status.
	(Window.componentCallRemoteStatus): Renamed the callbacks and
	errbacks.

	* flumotion/admin/gtk/connections.py
	(ConnectionsDialog.on_cancel): Hooked up!
	(ConnectionsDialog.on_has_selection): Use self.widgets[], not
	attrs to get the widget. Word.

	* flumotion/admin/gtk/client.py (Window._component_do): Finish
	duplicating componentCallRemoteStatus. Gee, code duplication is
	great. Wonder why I'm writing these changelogs.

	* flumotion/wizard/save.py (WizardSaver.getVideoOverlay): Add CC
	only if the license is set.

	* flumotion/configure/installed.py.in: 
	* flumotion/configure/uninstalled.py.in: Make sure the cache,
	registry, and log dirs are available.

	* flumotion/admin/gtk/greeter.py (Initial.next_pages): Fix the
	order so that load_connection is first by default.

	* flumotion/admin/gtk/wizard.py (Wizard.set_page): Disable the
	back button as appropriate.

	* flumotion/admin/gtk/wizard.py (WizardStep.next_pages): New class
	member.
	(WizardStep.__init__): Go ahead and load up the glade file here
	instead of in Wizard.set_page.
	(WizardStep.is_available): New method. By default just returns
	True.
	(WizardStep.setup): Provide default implementation so we don't
	have to hasattr(foo,'setup').
	(WizardStep.__init__): Take an extra arg, glade_prefix, the prefix
	when looking for glade files.
	(Wizard.__init__): Pass a glade_prefix to the pages.
	(Wizard.set_page): Glade init moved to the pages. Compute
	available pages to pass to WizardStep.setup().

	* flumotion/admin/gtk/greeter.py (Initial, ConnectToExisting)
	(Authenticate, LoadConnection): Add next_pages, indicating the set
	of possible next steps. Change setup() to take an extra argument,
	available_pages, the subset of next_pages that are actually
	available.
	(Initial.setup): New method, will desensitize unavailable next
	steps.
	(LoadConnection.is_available): New method, returns True only if
	there are connections available to choose.

2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/component.py:
	* flumotion/component/feedcomponent.py:
	  fix some error handling
	  fix heartbeat callback cleanup

2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/component.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/manager/admin.py:
	  move _start/_stop functions around

2005-02-08  Andy Wingo  <wingo@pobox.com>

	* flumotion/wizard/wizard.py (Wizard.present): New proxy method.

	* flumotion/admin/gtk/connections.py (Connections): Use fake uris
	instead of multiple columns.
	(Connections.on_grab_focus): Implement a handler that bypasses the
	scrollwindow, instead focusing the treeview directly
	(Connections.on_row_activated): Emit ::connection-activated.
	(Connections::connection-activated): New signal.

	* flumotion/admin/gtk/client.py (Window.runWizard): Take care of
	the one-and-only-one wizard logic all in this function.

	* flumotion/admin/gtk/greeter.py
	(LoadConnection.on_connection_activated): Hooked up, yo!
	(LoadConnection.setup): Grab focus on the Connections.

	* flumotion/admin/admin.py (AdminModel._writeConnection): Write
	the manager, too.

	* data/glade/greeter-initial.glade: Make "load a previous
	connection" be the first and default option.

	* data/glade/connections.glade: Headers not visible any more, we
	use pseudo-uris. Not sure if this is best.

	* data/glade/connection-dialog.glade: Play with the padding, add a
	label. Makes it look less bad. Connect to ::connection-activated.

	* data/glade/greeter-load_connection.glade: Connect the
	connection-activated signal.

	* tools/gtk-2.4-ify-glade-files: New script, filters out gtk 2.6
	properties from glade files. Ugly, but hey.

2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/admin.glade:
	* flumotion/admin/gtk/connections.py:
	  fixes for gtk 2.4 and python 2.3

2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  provide both stop and start

2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/dag.py:
	* flumotion/test/test_dag.py:
	  some more DAG fun

2005-02-08  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/client.py (Window.manage_stop_component_cb) 
	(Window.manage_start_component_cb): New callbacks, connected to
	the menus and toolbars.
	(Window._component_start, Window._component_stop): Reworked to use
	componentCallRemoteStatus.
	(Window.componentCallRemote): New routine, calls
	componentCallRemoteStatus with no status.
	(Window.componentCallRemoteStatus): New routine, calls a method on
	a component, displaying information in the status bar as
	appropriate.

	* data/glade/admin.glade: Remove "New" items from menu and
	toolbar.

	* flumotion/worker/checks/video.py
	(do_element_check.state_changed_cb): Yikes, fixed some bugs. When
	the check_proc does not return a deferred, callback on the
	deferred that we were given. Don't bother returning a value from a
	state-changed cb.
	(do_element_check): Only set the pipeline to the requested state,
	READY by default. Avoids spurious errors when PLAYING is not
	necessary.

2005-02-07  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/client.py:
	* glumotion/admin/gtk/connections.py (ConnectionsDialog): New
	object, a dialog to open a recent connection. Caused general
	refactoring in client.py.

	* data/glade/connection-dialog.glade: New file, shown as
	File/Open.

	* data/glade/Makefile.am (glade_DATA): Add connections.glade and
	connection-dialog.glade to the dist.

	* flumotion/ui/glade.py: New file, implements some base classes
	for glade-backed widgets and windows.

	* flumotion/admin/gtk/main.py (_runInterface): Don't write the
	connection, admin.py does it for us.

	* flumotion/admin/gtk/client.py
	(Window._append_recent_connections): Clean the list of recent
	connections before adding anything.
	(Window.__init__): Don't cache the Connections object.

	* flumotion/admin/admin.py (AdminModel.user, AdminModel.passwd):
	Changed from username and passwd so as to reflect the fields in
	the greeter state structure and the connections xml file.
	(AdminModel._writeConnection): New method, taken out from main.py.
	Writes a xml representation of the connection to a file at every
	connect. As a side effect, this allows us to keep time ordering
	for the connections regardless of how they were opened.

	* flumotion/wizard/wizard.py (Wizard.destroy): New method, will
	proxy the destroy to the gtk-window and also free some resources.
	(::destroy): New signal, fired if the wizard gets destroyed
	(i.e., the window gets destroyed somehow).

	* flumotion/admin/gtk/connections.py: Remove some printf's.
	(Connections.get_recent_connections): New method, returns a list
	of recent connections.

	* flumotion/admin/gtk/client.py (Window.open_connected_cb) 
	(Window.open_refused_cb, Window.on_open_recent) 
	(Window._append_recent_connections): New methods, implementing the
	recent connections menu items.
	(Window._setAdminModel): Allow re-setting the model. If
	re-setting, make sure the wizard gets destroyed.

	* data/glade/admin.glade: Name the connections menu.

	* flumotion/admin/gtk/greeter.py: Moved connections code out to
	connections.py.

	* flumotion/test/test_greeter.py (WizardTest.testMakeGreeter):
	Fixed so that (1) assertions actually cause the test to fail, and
	(2) that the tests actually pass.

	* flumotion/admin/gtk/connections.py: Code for the connections
	widget.

	* data/glade/connections.glade: New file, glade interface for the
	connections manager widget.

	* data/glade/greeter-load_connection.glade: Embed a custom widget
	connections.Connections().

2005-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	* flumotion/common/dag.py:
	* flumotion/test/Makefile.am:
	* flumotion/test/test_dag.py:
	  adding code for direct acyclic graphs

2005-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  doc fixes
	* flumotion/manager/component.py:
	  make one feederset per flow and handle them correctly
	  clear up avatarId - getName() confusion
	* flumotion/manager/manager.py:
	  use path for avatarId of components now
	  add Vishnu.componentDetached and make everything symmetrical
	* flumotion/manager/worker.py:
	* flumotion/test/test_manager_manager.py:
	* flumotion/test/test_worker_worker.py:
	  various fixes

2005-02-03  Andy Wingo  <wingo@pobox.com>

	* data/glade/Makefile.am:
	* data/glade/greeter-load_connection.glade: Glade file for new
	page.

	* flumotion/admin/gtk/main.py (_runInterface): When getting back
	from the greeter, save the connection to disk.

	* flumotion/admin/gtk/wizard.py (Wizard.set_page): Set Next to
	sensitive when going to a new page. (::setup should override it if
	necessary.)

	* flumotion/admin/gtk/greeter.py (parse_connection): New function,
	parses a saved connection file into a hash.
	(_populate_liststore): Load up the list of previous connections
	from files in the registry dir.
	(_clear_iter): Remove a row and the corresponding connection file.
	(LoadConnection.title): New page, will load up a saved connection.
	(Greeter): Add the LoadConnection page.

2005-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/test/test_manager_manager.py:
	  give the manager the right name

2005-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/manager/admin.py:
	  change more functions to act on state instead of name
	  remove deprecated functions

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	  rework more functions to work on componentState instead of name

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	* flumotion/component/producers/bttv/admin_gtk.py:
	* flumotion/component/producers/soundcard/admin_gtk.py:
	* flumotion/component/producers/videotest/admin_gtk.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/manager.py:
	  move a bunch of functions to use component state instead of component
	  name

2005-02-02  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/wizard.py: Set the bg/base on the whole
	content area for INSENSITIVE so it doesn't look like krap.
	(set_step): Make the sidebar text smaller.
	
	* flumotion/admin/gtk/client.py (Window._create_ui): Set PLAY and
	PAUSED images from our own store instead of from stock, as they
	are from GTK+ 2.6.

	* data/glade/wizard.glade: Fool around with dimensions some more.

	* data/glade/admin.glade: No handled toolbar -- that's a user
	decision.

	* data/glade/admin-wizard.glade: Fiddle with eventboxes so that
	colors aren't nasty when setting INSENSITIVE.

	* data/images/Makefile.am:
	* data/images/16x16/Makefile.am:
	* data/images/24x24/Makefile.am:
	* data/images/16x16/play.png:
	* data/images/24x24/play.png:
	* data/images/16x16/pause.png
	* data/images/24x24/pause.png: New images from GTK+ 2.6.

	* flumotion/wizard/wizard.py: Try to grab focus when run. Doesn't
	work yet.

	* data/glade/wizard.glade: Fiddle with the default dimensions.

	* data/glade/admin.glade: Focus the treeview first.

	* flumotion/admin/gtk/client.py (Window.widgets): New instance
	attribute, a dict of widgets from glade.
	(Window._create_ui): Populate Window.widgets. Set custom icons for
	the Run Wizard toolbar and menu items.
	(Window.file_new_cb, Window.file_open_cb): Raise NotImplemented
	errors instead of doing shite.
	(Window.file_save_cb): Removed, it didn't do anything anyway.
	(Window.manage_stop_all_cb): Used to be the clean toolbar button,
	now labeled as "stop all".
	(Window.manage_run_wizard_cb): New cb from menu and toolbar.
	(Window.help_about_cb): No emails. Vainly add emails to list.

	* data/glade/admin.glade: Reworked quite a bit.
	s/File/Connection/, added a Manage menu, menu items to stop and
	start components individually or as a group, a wizard button,
	removed the exit button, etc.

	* data/images/16x16/wizard.png:
	* data/images/24x24/wizard.png: New images from David Vignoni.

	* data/images/Makefile.am
	* data/images/16x16/Makefile.am
	* data/images/24x24/Makefile.am
	* configure.ac: Add data/images/{16x16,24x24} dirs.

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  make the view register listeners on states itself
	  add callViews
	  remove remote_componentAdded/Removed
	* flumotion/admin/gtk/client.py:
	  listen to stuff in default flow

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	* flumotion/test/test_manager_manager.py:
	  test emptyPlanet()

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  use crap string for connected state, sigh
	* flumotion/admin/gtk/client.py:
	  _createUI() now returns a window
	* flumotion/manager/manager.py:
	  start components when a config gets loaded and workers are logged
	  in
	* flumotion/test/test_manager_manager.py:
	  refactor test to use common functions
	  add test for config loaded after workers log in

2005-02-02  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/client.py (Window.__init__): Set the model
	after setting up the gui.
	(Window.admin_connected_cb): Fix title.

	* flumotion/admin/admin.py (AdminModel._connectedCallback): Set
	the state properly.

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/managers/default/flows/ogg-test-theora.xml:
	  change flow to default
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/manager/admin.py:
	  remove remote_initial, and make admin request state of
	  workerheaven and planet

2005-02-02  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/main.py: Prune of dead code. Re-present the
	greeter if the model connection fails. Wait for model connection
	to make the main window.

	* flumotion/admin/gtk/wizard.py (Wizard.destroy) 
	(Wizard.set_sensitive): New methods.
	(Wizard.run): Don't destroy the window when finished, in case we
	need to run it again.

	* flumotion/admin/gtk/client.py (Window._setAdminModel): Call the
	connected cb ourselves if model.isConnected().
	(Window.admin_connected_cb): Run the wizard if the model has no
	components.
	(Window.update_components): Return the component list.

	* flumotion/admin/gtk/greeter.py (Greeter.destroy, Greeter.hide) 
	(Greeter.show, Greeter.set_sensitive): New methods, proxy for the
	Wizard object.

	* flumotion/admin/admin.py:
	(AdminModel.state): New instance variable, either 'connected' or
	'disconnected'. Accessed by AdminModel.isConnected().

	* flumotion/manager/manager.py:
	* flumotion/admin/gtk/parts.py:
	* flumotion/common/planet.py:
	* flumotion/admin/admin.py:
	* flumotion/twisted/flavors.py: s/is None/== None/,
	s/is not None/!= None/ to avoid pychecker warnings with python
	2.4.

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	* flumotion/common/component.py:
	  remove this file, everything merged in planet.py
	* flumotion/twisted/flavors.py:
	* flumotion/worker/worker.py:
	  fix some doc errors

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_manager_manager.py:
	  more cleanup and tests

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	  cleanup heartbeat when logging out
	* flumotion/manager/manager.py:
	* flumotion/test/test_manager_manager.py:
	  decide on and map avatarId before starting; add tests

2005-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_manager.py:
	  add test for component mappers
	  add tests with fake components and workers logging in
	* flumotion/common/planet.py:
	  move moods here
	  add JobStates
	  add parent keys
	  add emtpy() functions to atmosphere and flow
	* flumotion/admin/admin.py:
	  add some mood checking to initial
	* flumotion/admin/gtk/parts.py:
	  check values of state before setting them
	  make the treeview a state listener
	* flumotion/admin/gtk/client.py:
	  add check for sleeping components on getting the UI
	* flumotion/component/component.py:
	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/feedcomponent.py:
	  change location of moods
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	* flumotion/manager/worker.py:
	  use avatarId instead of name everywhere
	  use avatarId assigned by manager to log in to workerbrain and
	  manager
	* flumotion/manager/admin.py:
	  add perspective_getState()
	* flumotion/manager/manager.py:
	  add ComponentMapper
	  create planetstate from config
	  move functionality to Vishnu
	  add emptyPlanet()
	* flumotion/manager/base.py:
	  add some checking
	* flumotion/manager/component.py:
	  separate between componentstate and jobstate
	* flumotion/test/test_worker_heaven.py:
	* flumotion/test/test_worker_worker.py:
	  test fixing

2005-02-01  Andy Wingo  <wingo@pobox.com>

	* flumotion/wizard/wizard.py: Fix the ugly colors of the sidebar.

	* flumotion/wizard/steps.py: Set the insensitive base color after
	realizing for Firewire. Same trick for Summary.

	* flumotion/admin/gtk/wizard.py: Set the insensitive base, not the
	normal base.

	* data/glade/wizard_summary.py: Use a GtkTextView instead of a
	label for the summary text -- allows the text to reflow according
	to the window size.

	* data/glade/wizard_firewire.py: Set to insensitive so as to
	disallow selection.

2005-02-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/flavors.py:
	  add default values for get when a key is None
	  add removeListener()

2005-02-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	  add some errors for future use
	* flumotion/common/log.py:
	  change logging format again

2005-02-01  Andy Wingo  <wingo@pobox.com>

	* flumotion/test/test_wizard.py: Make sure Firewire is ready to be
	tested, and avoid the fgtk tests with it -- we don't use them yet.
	All in all, an evil patch.

	* flumotion/worker/checks/video.py (do_element_check): Reworked so
	as to go ahead and do the check instead of returning a thunk.
	Optionally go to a state higher than READY. If the check_proc
	returns a Deferred, don't set the pipeline to NULL (the check_proc
	becomes responsible for it). Handle Deferred returns properly.
	(check1394): Adapted to check the width and height of the video.
	An interesting example, because it uses twisted's scheduling to
	iterate the pipeline until it has caps.

	* flumotion/component/feedcomponent.py (FeedComponent.__init__):
	Add some debugging.
	(ParseLaunchComponent.setup_pipeline): Raise an error with the
	proper arg.

	* flumotion/component/producers/firewire/firewire.xml: Add
	scaled_width and is_square component properties.

	* flumotion/component/producers/firewire/firewire.py
	(createComponent): Adapt to allow for setting the pixel aspect
	ratio and padding the video size.

	* flumotion/wizard/steps.py (FireWire): Reworked to detect the
	size of the output, add option for setting square pixels, contrain
	the aspect ratio, and provide a width correction method.

	* flumotion/wizard/wizard.py (Wizard.error_dialog): fixed long
	line.
	(Wizard.get_step_state): Removed, just use step::get_state().
	(Wizard._sidebar_clean): Don't set the default size of the vbox,
	we set it in the glade file.

	* flumotion/wizard/steps.py
	* flumotion/wizard/wizard.py
	(WizardStep.get_component_properties): Made to be a simple wrapper
	around ::get_state(). All steps changed to implement get_state().

	* flumotion/twisted/Makefile.am: Added gtk2reactor.py.

	* flumotion/twisted/gtk2reactor.py: New file, branched from
	twisted's gtk2reactor. Avoids deprecated functions, and some
	pychecker errors fixed. To remove when twisted 2.0 comes out.

	* flumotion/worker/worker.py
	* flumotion/worker/config.py
	* flumotion/manager/component.py
	* flumotion/component/consumers/disker/disker.py
	* flumotion/component/consumers/httpstreamer/resources.py
	* flumotion/component/consumers/httpstreamer/admin_gtk.py
	* flumotion/component/consumers/httpstreamer/http.py
	* flumotion/common/config.py
	* flumotion/common/reload.py
	* flumotion/common/enum.py
	* flumotion/wizard/save.py
	* flumotion/twisted/gstreactor.py: s/is None/== None/,
	s/is not None/!= None/ to avoid pychecker warnings with python
	2.4.
	
	* data/glade/wizard.glade: Instead of restricting the content area
	to a certain size, give the window a default size. This allows it
	to expand as necessary.
	
	* data/glade/wizard_firewire.glade: UI rework. I'm still not
	happy. The width correction should be factored out into a filter.
	
	* bin/flumotion-admin.in: Use flumotion.twisted.gtk2reactor so as
	to avoid deprecated code.

2005-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	  add function to give a "path" for a component and its parent
	* flumotion/common/config.py:
	  add parent property to config entries for components
	  make sure no flow is called manager or atmosphere
	* flumotion/test/test_common.py:
	* flumotion/test/test_config.py:
	  tests for these

2005-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	  change output a little

2005-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/flavors.py:
	  add hasKey method
	* flumotion/wizard/save.py:
	  give flow a default name
	* flumotion/common/config.py:
	  require names for flows
	* flumotion/common/component.py:
	  add parent and moodPending state keys

2005-01-27  Andy Wingo  <wingo@pobox.com>

	* flumotion/worker/checks/video.py (check1394): New bundled
	function, checks to see if dv1394 can go to PLAYING. Will fail if
	the user lacks the /dev/raw1394 entry.
	
	* flumotion/wizard/steps.py (FireWire): Add some checks to see if
	the firewire device really works.
	
	* flumotion/admin/gtk/wizard.py:
	* flumotion/wizard/wizard.py: Get theme colors the right way, by
	realizing the label first. 

	* data/glade/wizard_welcome.glade: The introductory text is not
	selectable.

	* data/glade/wizard_firewire.glade: Add a textview below the
	parameters for status information.

	* flumotion/admin/gtk/greeter.py (Authenticate)
	(ConnectToExisting): Grab focus to entries. Make enter go to the
	next entry if there is one.

2005-01-26  Andy Wingo  <wingo@pobox.com>

	* flumotion/manager/base.py:
	(ManagerAvatar.perspective_getBundleSums): New function, gets the
	sums of a bundle and dependencies.
	(ManagerAvatar.perspective_getBundleSumsByFile): First get the
	bundle name, then call getBundleSums.

	* flumotion/worker/checks/video.py: New file, contains the
	gstreamer checks that used to be in wizard.steps. Uses a nifty
	procedural abstraction, make_element_checker.

	* flumotion/worker/checks/package.xml: New file, registers
	flumotion.worker.checks.video as a bundle.
	
	* flumotion/worker/checks/__init__.py: New file, placates python.

	* flumotion/worker/worker.py:
	(WorkerMedium.setRemoteReference): Make a bundleloader when we get
	a remote reference.
	(WorkerMedium.remote_runCode): Removed, we don't run code
	fragments any more.
	(WorkerMedium.remote_runProc): New remoted procedure. Runs a
	function in a module, fetching the module from the manager as
	necessary.

	* flumotion/wizard/wizard.py (WizardStep.workerRun): Update to
	AdminModel's workerRun.

	* flumotion/wizard/steps.py: Move gstreamer checks to
	flumotion.worker.checks.video, and change to the new workerRun
	api so that workers fetch the necessary code to run the checks.

	* flumotion/common/bundleclient.py: New file.
	(BundleLoader): New class, implements a module loader that makes
	sure we run the latest version of a module. Will fetch and install
	bundles as needed.

	* flumotion/admin/admin.py (AdminModel.workerRun): Instead of
	taking a function object, and passing the source of the function
	to the worker, pass a module name and function name to the worker.
	
2005-01-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	* flumotion/common/planet.py:
	  adding planet state stuff
	* flumotion/twisted/flavors.py:
	  fixing interface description

2005-01-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/greeter.py:
	* flumotion/admin/gtk/main.py:
	  fix pychecker warnings

2005-01-24  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/wizard.py: Appease pychecker.

	* flumotion/admin/gtk/main.py (main): Remove host, port, user,
	ssl, password options. (The greeter handles this now.) Allow a
	config file to be passed on the command line.
	(_runInterface): If there's no conf file, run the greeter to get
	the host, etc. Make the AdminModel ourselves, then set it on a
	Window.

	* flumotion/admin/gtk/wizard.py (Wizard.run): Destroy the window
	when the run is finished. Make sure we aren't run twice.

	* flumotion/admin/gtk/greeter.py (Greeter): No longer derived from
	Wizard, just proxies a Wizard object.

	* flumotion/admin/admin.py (AdminModel.connectToHost): New method,
	will connect to a manager at a host/port/protocol.
	(username, password, host, port, use_insecure): New attributes on
	the model.
	(AdminModel::connection-refused): Pass the host, port, and
	protocol when emitting the signal. Emitters in admin.py and
	callers in client.py changed.

	* flumotion/admin/gtk/client.py (Window._connectToManager):
	Removed, now we receive manager already-constructed.
	(Window._setAdminModel): Private method to set the model on the
	window.
	(Window.__init__): Instead of receiving host, user, passwd, etc.
	just receive the model fully-built.

2005-01-21  Andy Wingo  <wingo@pobox.com>

	* flumotion/admin/gtk/wizard.py (Wizard.set_page): Fix stupid
	something.

	* flumotion/admin/gtk/greeter.py (Initial, ConnectToExisting)
	(Authenticate): Set used glade attributes to None to appease the
	mighty pychecker.

	* flumotion/admin/gtk/wizard.py (Wizard.set_page): Remove unused
	local variable. Don't die when adding glade widgets if an
	attribute exists, only if it exists and is non-false.
	(WizardStep): None-out a couple more variables.
	
	* data/glade/admin-wizard.glade:
	* data/glade/greeter-initial.glade: 
	* data/glade/greeter-connect_to_existing.glade: 
	* data/glade/greeter-authenticate.glade: Focus/mnemonic fixen.
	
	* data/glade/admin-wizard.glade:
	* data/glade/greeter-initial.glade: 
	* data/glade/greeter-connect_to_existing.glade: 
	* data/glade/greeter-authenticate.glade: Updates.
	
	* tests/greeter.py: Little wrapper to test the greeter.

	* flumotion/admin/gtk/greeter.py: Instead of detecting procs, etc.
	by name, make them classes and pass them explicitly to the
	wizard factory. Check inputs, add titles and explanatory text,
	etc. etc.

	* flumotion/admin/gtk/wizard.py: Rework to be prettier and to take
	classes as the states. "Polish", if you will.

	* flumotion/test/test_greeter.py: Updates for the new greeter API
	and behaviour.

	* flumotion/common/pygobject.py (gsignal): Avoid shadowing
	`locals' and `dict' builtins.

2005-01-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to trunk

=== release 0.1.5 ===

2005-01-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* NEWS:
	* configure.ac:
	  releasing 0.1.5, "London Bar"

	* flumotion/admin/gtk/greeter.py:
	* flumotion/admin/gtk/wizard.py:
	* flumotion/test/test_greeter.py:
	  fix pychecker warnings; add testsuite headers

	* data/glade/admin-wizard.glade: Glade file for the generic
	wizard.
	
	* data/glade/greeter-initial.glade: 
	* data/glade/greeter-connect_to_existing.glade: 
	* data/glade/greeter-authenticate.glade: Glade files for the
	greeter wizard.

	* flumotion/admin/gtk/greeter.py: New file, uses wizard.py to make
	a greeter, run when the user first starts the admin client.

	* flumotion/test/test_greeter.py: New test for the wizard set up
	to run the greeter.

	* flumotion/admin/gtk/wizard.py: New file, implementing a generic
	wizard widget.
	
	* flumotion/admin/gtk/Makefile.am (component_PYTHON): 
	* data/glade/Makefile.am (glade_DATA): 
	* flumotion/test/Makefile.am (EXTRA_DIST): Updated appropriately.

2005-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/manager/component.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_flavors.py:
	* flumotion/twisted/flavors.py:
	* flumotion/wizard/wizard.py:
	  Go back to using append for List keys, since python also
	  uses append/remove.  Yes, I suck.  To make up, fix a bug
	  with List keys sharing their list among one another.

2005-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	  scrub some paths like .svn stuff for package candidates

2005-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/configure/Makefile.am:
	  add prefix when looking for package candidates.  Fixes some issues
	  when trying to registerPackagePaths from outside flumotion.
	* pkgconfig/Makefile.am:
	* pkgconfig/flumotion-uninstalled.pc.in:
	* pkgconfig/flumotion.pc.in:
	  point to the base dir under which flumotion lives instead

2005-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac: prerelease

2005-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/log.py:
	* flumotion/component/component.py:
	* flumotion/manager/component.py:
	* flumotion/test/test_log.py:
	* flumotion/twisted/gstreactor.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  add more crack to the logging module

2005-01-19  Andy Wingo  <wingo@pobox.com>

	* flumotion/common/common.py (version): Update to 2005.

2005-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/config.py:
	  remove unused code

2005-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/manager/component.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_flavors.py:
	* flumotion/twisted/flavors.py:
	* flumotion/wizard/wizard.py:
	  remove likes add better than append

2005-01-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_worker_worker.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  make one function for getting the worker's socket

2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/component/feedcomponent.py:
	  attempt to reconnect when a feeder has gone away
	* flumotion/manager/worker.py:
	* flumotion/worker/worker.py:
	  serialize startup of jobs so that jobs start one after another,
	  not all at the same time.  This makes port allocations more
	  deterministic

2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/test/test_common.py:
	  add some common port functions

2005-01-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/base.py:
	* flumotion/manager/component.py:
	* flumotion/test/test_manager.py:
	  change from setReady to setReadiness

2005-01-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/base.py:
	  add a hasAvatar method
	* flumotion/manager/worker.py:
	  check to see if a component is already running before asking a
	  worker to start.  avoids doubly starting components.

2005-01-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  implement stop
	* flumotion/component/component.py:
	  send only one heartbeat each time, duh

2005-01-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/admin.glade:
	  remove options that go to context menu
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/parts.py:
	* flumotion/common/reload.py:
	* flumotion/component/component.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/test/test_common_component.py:
	* flumotion/test/test_parts.py:
	* tests/ComponentsView.py:
	  add context menu to components view
	  fix reload

2005-01-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  reregister gobject
	* tests/ComponentsView.py:
	* flumotion/admin/gtk/parts.py:
	  make columns sortable
	* flumotion/common/component.py:
	  change moods enum so that happy and sad are at opposite sides

2005-01-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* doc/reference/Makefile.am:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/parts.py:
	* flumotion/admin/gtk/spyglass.py:
	* flumotion/admin/gtk/videotest.py:
	* flumotion/wizard/wizard.py:
	  more gstutils fixes, pychecker fixes

2005-01-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/parts.py:
	* flumotion/admin/gtk/spyglass.py:
	* flumotion/admin/gtk/videotest.py:
	* flumotion/common/Makefile.am:
	* flumotion/common/common.py:
	* flumotion/common/gstreamer.py:
	* flumotion/common/pygtk.py:
	* flumotion/component/component.py:
	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/producers/webcam/webcam.py:
	* flumotion/manager/component.py:
	* flumotion/utils/Makefile.am:
	* flumotion/utils/gstutils.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:
	  first pass at removing utils/gstutils.py

2005-01-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/Makefile.am:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/parts.py:
	  extract UI parts from the main file

2005-01-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  fix errors

2005-01-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/dialogs.py:
	* flumotion/test/Makefile.am:
	* flumotion/test/test_dialogs.py:
	  testsuite for dialogs

2004-12-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/disker/disker.py:
	  fix moods
	* conf/managers/default/flows/ogg-test-theora.xml:
	  spread over two workers
	* data/glade/admin.glade:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	  move some dialogs around
	* flumotion/manager/admin.py:

2004-12-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	* flumotion/common/common.py:
	* flumotion/common/component.py:
	* flumotion/component/component.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/manager/component.py:
	  make mood into an enum

2004-12-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/common/worker.py:
	* flumotion/manager/worker.py:
	* flumotion/wizard/wizard.py:
	  make admin client notice when workers log in or out

2004-12-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/Makefile.am:
	* flumotion/manager/admin.py:
	* flumotion/manager/common.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	  rename common to base since that's what it is

2004-12-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion/admin/admin.py:
	* flumotion/common/common.py:
	* flumotion/common/component.py:
	* flumotion/common/worker.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/test/Makefile.am:
	* flumotion/test/test_common_component.py:
	* flumotion/test/test_flavors.py:
	* flumotion/twisted/Makefile.am:
	* flumotion/twisted/flavors.py:
	  add flavors with StateCacheable/RemoteCache
	  add unittests
	  add possibility of monitoring lists and having append/remove
	  listener calls

2004-12-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/common/Makefile.am:
	* flumotion/common/common.py:
	* flumotion/common/component.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_common.py:
	* flumotion/test/test_common_component.py:
	* flumotion/test/test_wizard.py:
	* flumotion/wizard/wizard.py:
	  First pass at making state of the workerHeaven cacheable.
	  Needs some reorganization and tests of State objects.

2004-12-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/admin.glade:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	  create a status bar class wrapping the GTK widget
	  use the status bar for showing info about the UI

2004-12-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_testsource.glade:
	  don't use F for key access
	* flumotion/manager/admin.py:
	* flumotion/manager/common.py:
	* flumotion/manager/component.py:
	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	  cleanup of INFO level

2004-12-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/image/Makefile.am:
	* data/image/mood-happy.png:
	* data/image/mood-hungry.png:
	* data/image/mood-lost.png:
	* data/image/mood-sad.png:
	* data/image/mood-sleeping.png:
	* data/image/mood-waking.png:
	* doc/random/componentstate:
	* doc/random/moods:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/common/Makefile.am:
	* flumotion/common/common.py:
	* flumotion/common/component.py:
	* flumotion/component/component.py:
	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/configure/configure.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/common.py:
	* flumotion/manager/component.py:
	* flumotion/test/Makefile.am:
	* flumotion/test/test_common_component.py:
	* flumotion/test/test_htpasswdcrypt.py:
	* flumotion/test/test_manager.py:
	* flumotion/test/test_manager_admin.py:
	* flumotion/worker/worker.py:
	* tools/fixme:
	  A big commit to implement moods, yay !

2004-12-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/Makefile.am:
	* flumotion/component/component.py:
	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/test/test_http.py:
	  rename component.get_name to getName

2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	* flumotion/test/test_worker_worker.py:
	  fix testsuite

2004-12-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	* flumotion/component/component.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/worker.py:
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  Show worker name and pid for components

2004-12-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/workers/default.xml:
	* doc/redhat/flumotion:
	* flumotion/manager/main.py:
	* flumotion/worker/main.py:
	  clean up debug levels at various stages

2004-12-20  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  bump nano back to HEAD

=== release 0.1.4 ===

2004-12-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* TODO:
	* configure.ac:
	* flumotion/component/effects/Makefile.am:
	* flumotion/component/effects/volume/Makefile.am:
	* flumotion/component/effects/volume/__init__.py:
	* flumotion/component/effects/volume/admin_gtk.py:
	* flumotion/component/effects/volume/volume.glade:
	* flumotion/component/effects/volume/volume.py:
	* flumotion/component/effects/volume/volume.xml:
	* flumotion/component/producers/soundcard/Makefile.am:
	* flumotion/component/producers/soundcard/admin_gtk.py:
	* flumotion/component/producers/soundcard/soundcard.py:
	* flumotion/component/producers/soundcard/soundcard.xml:
	* flumotion/ui/fgtk.py:
	  Adding a volume effect for level display, and use it in soundcard.
	  Fixes #133.

2004-12-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/configure/configure.py:
	* flumotion/service/main.py:
	* flumotion/service/service.py:
	  improve service script handling and pid file handling

2004-12-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion.in:
	  remove all sorts of stuff we don't need for the service script
	* flumotion/common/common.py:
	  new function
	* flumotion/service/service.py:
	  check for dead pids

2004-12-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  info cleanup.

2004-12-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  fixes #136 - warn about missing dv1394src and dvdec elements

2004-12-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/streaming:
	  some additional notes
	* flumotion/common/log.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	  (hopefully) fix file descriptor leakage by making sure the socket
	  closes.  Document some more.  Fix some error cases as well.
	* flumotion/twisted/gstreactor.py:
	  debug the reactor a little

2004-12-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	  remove debug line
	* flumotion/wizard/enums.py:
	  make sure "Test" choices are first in the enum

2004-12-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/service/service.py:
	  do not start manager/worker if one is already running.
	  Fixes issue #132

2004-12-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/service/main.py:
	  error on unknown commands
	  implement restart

2004-12-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_consumption.glade:
	* data/glade/wizard_disk.glade:
	* data/glade/wizard_http.glade:
	  various accessors

	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>
	* flumotion/component/consumers/disker/Makefile.am:
	* flumotion/component/consumers/disker/admin_gtk.py:
	* flumotion/component/consumers/disker/disker.glade:
	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/disker/disker.xml:
	  Add button to move to new archive file.
	  Fixes issue #122
	 

2004-12-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_tvcard.glade:
	  add accessors
	* flumotion/component/effects/colorbalance/colorbalance.glade:
	  add spacing
	* flumotion/service/service.py:
	  stop workers before managers
	  don't fatally fail when no managers or workers config dirs found,
	  since that's ok.  Needs a prerelease test.

2004-12-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/common/bundle.py:
	* flumotion/test/test_bundle.py:
	  abstract away bundle extraction path more, and make the cachedir
	  more easily browsable :)

2004-12-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	* flumotion/component/producers/videotest/admin_gtk.py:
	  implement tabs.  add a log tab to the streamer.

2004-12-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/component.py:
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/producers/videotest/admin_gtk.py:
	* flumotion/component/producers/videotest/videotest.py:
	* flumotion/component/producers/videotest/videotest.xml:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	  refactor code so that more methods are proxied generically

2004-12-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/component.py:
	* flumotion/component/effects/colorbalance/admin_gtk.py:
	* flumotion/component/effects/colorbalance/colorbalance.py:
	* flumotion/component/producers/bttv/admin_gtk.py:
	* flumotion/component/producers/webcam/admin_gtk.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	  proxy methods generically from a component or effect to the
	  admin-side views representing them

2004-12-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/documenting:
	  add some doc notes
	* doc/reference/Makefile.am:
	  add more stuff
	* flumotion/test/test_component.py:
	* flumotion/component/component.py:
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	  documenting and method renaming
	  use "name" as member for component's name
	  removing deprecated API
	* flumotion/component/effects/colorbalance/admin_gtk.py:
	* flumotion/admin/admin.py:
	  debug changes
	* flumotion/package.xml:
	* flumotion/component/component.xml:
	* flumotion/component/Makefile.am:
	  sort out who owns package entry points
	* flumotion/component/effects/colorbalance/colorbalance.xml:
	* flumotion/component/producers/bttv/bttv.xml:
	* flumotion/component/producers/webcam/webcam.xml:
	* flumotion/component/consumers/httpstreamer/http.xml:
	  fix deps of bundles
	* flumotion/component/feedcomponent.py:
	* flumotion/component/producers/webcam/webcam.py:
	* flumotion/component/producers/bttv/bttv.py:
	* flumotion/component/effects/colorbalance/colorbalance.py:
	  create effect base class and rework effect API
	* flumotion/component/producers/webcam/admin_gtk.py:
	* flumotion/component/producers/bttv/admin_gtk.py:
	  act on changed properties on colorbalance
	* flumotion/worker/job.py:
	  fix doc

2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/admin.glade:
	* flumotion/admin/gtk/client.py:
	  add shell for fun debugging
	* flumotion/admin/admin.py:
	  properly register paths even though we didn't actually unbundle
	  since if they're already in the cache they should work too

2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  only registerPackagePath when a bundle got unpacked, and
	  in the right order.  Should fix all lingering "works on second
	  try" bugs in admin client.

2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	  more error handling
	* flumotion/common/bundle.py:
	  some debug
	* flumotion/common/common.py:
	  return ALL possible candidates for packages, not just the
	  directories that hold an __init__.  This way a bundle depending
	  on another bundle having the package's __init__ can have imports
	  for modules in that directory.
	* flumotion/common/registry.py:
	  clean up, document, rename.  Don't register REGISTRY_PATHs as
	  package paths.
	* flumotion/component/effects/colorbalance/colorbalance.xml:
	* flumotion/component/producers/webcam/admin_gtk.py:
	  some cleanups and fixes

2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* flumotion/component/Makefile.am:
	* flumotion/component/effects/Makefile.am:
	* flumotion/component/effects/__init__.py:
	* flumotion/component/effects/colorbalance/Makefile.am:
	* flumotion/component/effects/colorbalance/__init__.py:
	* flumotion/component/effects/colorbalance/admin_gtk.py:
	* flumotion/component/effects/colorbalance/colorbalance.glade:
	* flumotion/component/effects/colorbalance/colorbalance.py:
	* flumotion/component/effects/colorbalance/colorbalance.xml:
	  add colorbalance effect
	* data/glade/wizard_source.glade:
	* data/glade/wizard_webcam.glade:
	  small glade fixes
	* doc/random/component:
	  some more docs
	* flumotion/admin/gtk/client.py:
	  use an import trick to show components instead
	* flumotion/common/errors.py:
	  add a syntax error
	* flumotion/wizard/steps.py:
	  remove print
	* flumotion/component/producers/bttv/admin_gtk.py:
	* flumotion/component/producers/bttv/bttv.py:
	* flumotion/component/producers/bttv/bttv.xml:
	  use colorbalance effect and admin nodes for display
	* flumotion/component/producers/videotest/admin_gtk.py:
	* flumotion/component/producers/videotest/videotest.py:
	  use new nodes for display
	* flumotion/component/producers/webcam/admin_gtk.py:
	* flumotion/component/producers/webcam/webcam.py:
	* flumotion/component/producers/webcam/webcam.xml:
	  add admin ui for webcam and use effects and nodes
	* flumotion/component/feedcomponent.py:
	  implement effect support
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/admin_gtk.py:
	  move to new node display
	* flumotion/package.xml:
	  add effect

2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	  some more stuff to do
	* flumotion/common/common.py:
	  rebuild a package that's been re-added.  Needs testing
	* flumotion/common/errors.py:
	  add an effect error
	* flumotion/admin/admin.py:
	  add method to get the full local cached path for a bundled file
	* flumotion/utils/gstutils.py:
	  add method to check if an element factory has a given property
	* flumotion/wizard/steps.py:
	  verify if we can set autoprobe-fps to false to speed up detection
	* flumotion/component/producers/bttv/admin_gtk.py:
	  remove line
	* flumotion/component/producers/bttv/bttv.xml:
	  add comment
	* flumotion/component/consumers/httpstreamer/http.py:
	  remove deprecated bundle stuff
	* flumotion/worker/job.py:
	  add some more debugging for when stuff goes wrong
	* flumotion/manager/admin.py:
	  add more debugging
	* flumotion/manager/common.py:
	  raise appropriate error on unfound bundle

2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/bttv/colorbalance.glade:
	  don't expand the separators

2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* flumotion/component/producers/bttv/Makefile.am:
	* flumotion/component/producers/bttv/admin_gtk.py:
	* flumotion/component/producers/bttv/bttv.py:
	* flumotion/component/producers/bttv/bttv.xml:
	* flumotion/component/producers/bttv/colorbalance.glade:
	  added glade file, slightly reworked, link spinbuttons to scales

2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	* flumotion/admin/__init__.py:
	* flumotion/admin/admin.py:
	* flumotion/common/__init__.py:
	* flumotion/common/bundle.py:
	* flumotion/common/common.py:
	* flumotion/common/config.py:
	* flumotion/common/errors.py:
	* flumotion/common/interfaces.py:
	* flumotion/common/log.py:
	* flumotion/common/registry.py:
	* flumotion/component/__init__.py:
	* flumotion/component/component.py:
	* flumotion/configure/__init__.py:
	* flumotion/manager/__init__.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/common.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/twisted/__init__.py:
	* flumotion/twisted/gstreactor.py:
	* flumotion/twisted/pb.py:
	* flumotion/twisted/portal.py:
	* flumotion/twisted/reflect.py:
	* flumotion/worker/__init__.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  more doc fixing and uniformizing

2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/__init__.py:
	* flumotion/common/__init__.py:
	* flumotion/common/bundle.py:
	* flumotion/common/common.py:
	* flumotion/common/config.py:
	* flumotion/common/errors.py:
	* flumotion/common/interfaces.py:
	* flumotion/common/registry.py:
	* flumotion/component/__init__.py:
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/component.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	* flumotion/configure/__init__.py:
	* flumotion/manager/__init__.py:
	* flumotion/manager/worker.py:
	* flumotion/twisted/__init__.py:
	* flumotion/twisted/checkers.py:
	* flumotion/twisted/credentials.py:
	* flumotion/twisted/gstreactor.py:
	* flumotion/twisted/pb.py:
	* flumotion/twisted/portal.py:
	* flumotion/worker/__init__.py:
	* flumotion/worker/worker.py:
	  doc fixing spree, plus removing some deprecated code

2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	  implement black/white list for pychecker stuff
	* flumotion/common/errors.py:
	  remove extra line
	* flumotion/service/service.py:
	* flumotion/component/producers/bttv/admin_gtk.py:
	  fix pychecker warning
	* flumotion/component/producers/bttv/bttv.py:
	  fix my syntax errors
	* flumotion/component/consumers/httpstreamer/http.py:
	  (try to) fix up warnings
	* flumotion/ui/fgtk.py:
	  import glade as well for testing error
	* flumotion/utils/gstutils.py:
	  rearrange imports
	* flumotion/component/producers/videotest/admin_gtk.py:
	  remove junk
	* flumotion/component/consumers/httpstreamer/Makefile.am:
	* flumotion/component/producers/bttv/Makefile.am:
	* python.mk:
	  if we ever want to do per-dir pychecks ...

2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  check for pychecker

2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/component/producers/bttv/admin_gtk.py:
	* flumotion/component/producers/bttv/bttv.py:
	  style fixing

2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  make bttv one like webcam one

2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/main.py:
	* misc/flu.unstable.stable.modules:
	  guard against no manager config
	  update modules

2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
	
	patch by: Zaheer Abbas Merali <zaheermerali at gmail dot com>

	* flumotion/component/producers/bttv/Makefile.am:
	* flumotion/component/producers/bttv/admin_gtk.py:
	* flumotion/component/producers/bttv/bttv.py:
	* flumotion/component/producers/bttv/bttv.xml:
	  add colorbalance + admin page to bttv

2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/gstreactor.py:
	  removing logging to unbreak reactor

2004-12-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion/admin/admin.py:
	* flumotion/component/consumers/httpstreamer/Makefile.am:
	* flumotion/component/consumers/httpstreamer/gtk.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	* flumotion/twisted/credentials.py:
	* flumotion/twisted/gstreactor.py:
	* flumotion/twisted/pb.py:
	* flumotion/twisted/reflect.py:
	* flumotion/ui/fgtk.py:
	* misc/pycheckerrc:
	  various error fixing and pychecker stuff

2004-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/producers/videotest/admin_gtk.py:
	* flumotion/component/producers/videotest/videotest.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	  allow components to notify their admin UI of changed property
	  make videotest UI use this and properly block signals while
	  updating UI

2004-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/common/errors.py:
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/producers/videotest/admin_gtk.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/common.py:
	* flumotion/manager/component.py:
	  remove some of the proxy methods in the manager
	  add some better error handling for remote call failures
	  uniformize and reorder methods

2004-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion/ui/fgtk.py:
	  fix up pychecker warnings and add to check

2004-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/enum.py:
	* flumotion/test/test_enum.py:
	  make pychecker happy

2004-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	* flumotion/common/enum.py:
	  Split up enum code out of wizard stuff
	* flumotion/ui/Makefile.am:
	* flumotion/ui/__init__.py:
	* flumotion/ui/fgtk.py:
	  Create a ui directory holding code and widgets shared among
	  wizard and admin
	* flumotion/wizard/enums.py:
	* flumotion/wizard/wizard.py:
	  use fgtk and enum
	* flumotion/component/base/admin_gtk.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/producers/videotest/admin_gtk.py:
	* flumotion/component/producers/videotest/videotest.py:
	* flumotion/component/producers/videotest/videotest.xml:
	  create a first UI for videotest allowing you to change the
	  pattern from the admin interface.

2004-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* bin/flumotion-admin.in:
	* flumotion/wizard/steps.py:
	* flumotion/admin/gtk/client.py:
	  debugging and various updates
	* flumotion/manager/admin.py:
	  also load componentHeaven with wizard-created config

2004-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/utils/gstutils.py:
	  add evil hack so we can set GParamEnum values.  Needs to be fixed !
	  Issue #119.

2004-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	  remove flumotion.component from import path to be sure we use
	  the bundled code
	* bin/flumotion-manager.in:
	  only update registry here ...
	* flumotion/common/setup.py:
	  ... and not all other binaries
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/manager/common.py:
	  Use new bundle code
	* flumotion/common/common.py:
	  Fix up code to register package paths
	* flumotion/common/registry.py:
	  search in flumotion/ for registry .xml files, to catch the one
	  for the base flumotion package
	* flumotion/common/errors.py:
	* flumotion/component/base/Makefile.am:
	* flumotion/component/base/admin_gtk.py:
	  added base admin_gtk class
	* flumotion/component/base/base.xml:
	* flumotion/component/consumers/httpstreamer/gtk.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	  make HTTP streamer use base gtk admin UI
	* flumotion/manager/admin.py:
	  raise an error if entry point not found
	* flumotion/manager/manager.py:
	  add dependencies correctly
	* flumotion/package.xml:
	* flumotion/Makefile.am:
	  make base flumotion bundle

2004-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/component/consumers/httpstreamer/http.xml:
	  fix up todo list

2004-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/minimal.xml:
	* doc/random/bundle:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/common/bundle.py:
	* flumotion/common/registry.py:
	* flumotion/component/consumers/httpstreamer/gtk.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	* flumotion/configure/configure.py:
	* flumotion/configure/installed.py.in:
	* flumotion/configure/uninstalled.py.in:
	* flumotion/manager/admin.py:
	* flumotion/manager/common.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/test/test_bundle.py:
	* flumotion/test/test_config.py:
	* flumotion/test/test_registry.py:
	  rework bundling and admin UI retrieving to the new system.
	  Still need to update all other components, and make admin ui stuff
	  subclass properly.

2004-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/config.py:
	* flumotion/manager/component.py:
	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	  Rework loadConfiguration a little.  Make ComponentHeaven
	  know about config as well.  Needs reworking so we
	  can implement failover and friends.

2004-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/Makefile.am:
	* flumotion/manager/common.py:
	  Would be good to have this too.

2004-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundle.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_manager.py:
	* flumotion/worker/config.py:
	* flumotion/worker/main.py:
	  Common base class for heaven and avatar.  Fixes #13

2004-11-26  Johan Dahlin  <johan@gnome.org>

	* doc/random/bundle:
	* flumotion/common/registry.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	* flumotion/manager/manager.py:
	* flumotion/test/test_registry.py:

	Add relative paths. (and add tests for this)
	Add an example bundle to the http streamer.
	Add a bundle basket in the vishnu that reads all bundles
	from the registry
	
2004-11-26  Johan Dahlin  <johan@gnome.org>

	* flumotion/common/registry.py:
	* flumotion/component/consumers/httpstreamer/http.xml:
	* flumotion/manager/manager.py:

2004-11-26  Johan Dahlin  <johan@gnome.org>

	* flumotion/common/registry.py:
	* flumotion/test/test_registry.py:
	* doc/random/bundle: 

	Add <bundle> and <component><entry> parsing and tests

	Update the document to reflect the implementation.
	
2004-11-26   Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/admin.py:
	* flumotion/manager/manager.py:
	* flumotion/twisted/portal.py:
	  Multiple admin logins now work.  Don't annoy other people
	  by cleaning out their state and stuff though. Fixes #36.

2004-11-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundle.py:
	* flumotion/test/test_bundle.py:
	  add BundlerBasket and test code

2004-11-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  Do not list tracks if element doesn't support the interface.
	  Fixes #115

2004-11-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  make worker reconnecting

2004-11-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/pb.py:
	  make reconnecting client factory
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	  use reconnecting client factory and add a dialog for when the
	  manager goes away

2004-11-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_jpeg.glade:
	* flumotion/component/encoders/encoders.xml:
	* flumotion/component/encoders/jpeg.py:
	* flumotion/wizard/steps.py:
	  Implement framerate changing on JPEG encoding.
	  Should eventually be generalized as a "filter".

2004-11-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* README:
	  add test line for multipart/jpeg
	* data/glade/wizard_jpeg.glade:
	  fix up glade file

2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to development
	* flumotion.spec.in:
	  fix typo

=== release 0.1.3 ===

2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  bump for release
	* flumotion/wizard/steps.py:
	  throw up a dialog when we couldn't run code

2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion.spec.in:
	  Integrate spec changes from issue 86

2004-11-11  Johan Dahlin  <johan@gnome.org>

	* flumotion/wizard/steps.py:
	Only skip configuration if we use firewire audio

2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion/wizard/steps.py:
	* flumotion/worker/worker.py:
	  distcheck now works again.

2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_audiotest.glade:
	  add volume
	* data/glade/wizard_vorbis.glade:
	  make quality the default - but didn't work
	* flumotion/wizard/steps.py:
	  really make quality the default for vorbis
	* flumotion/component/producers/audiotest/audiotest.py:
	* flumotion/component/producers/audiotest/audiotest.xml:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/wizard.py:
	  add volume
	* misc/pycheckerrc:
	  increase maxsize of functions

2004-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_tvcard.glade:
	* flumotion/wizard/steps.py:
	  clear up confusion between v4l channels and TV channels

2004-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/worker.py:
	  log better error

2004-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  Explain the real deal

2004-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  fix error message for list_tracks

2004-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  Grrr, why is it necessary to do the same bug twice ?

2004-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/soundcard/soundcard.py:
	  Don't use audioscale and audioconvert until we actually
	  first probe the card so we can set correct fixated caps on it.

2004-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  Another soundcard fix - this never worked.
	  Bring names of GStreamer properties and step options in line.

2004-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  throw an error when list_tracks doesn't work (interface issues ?)

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/job.py:
	  woah, scary how syntax errors going unnoticed can screw up
	  the whole flumotion system.  This fixes soundcards for me.

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/job.py:
	  add another error raise

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/producers/soundcard/soundcard.xml:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/steps.py:
	  channels should be serialized as int until there is a good
	  representation of them, because setting channels=stereo in
	  GStreamer doesn't work

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  fix some prints and raises

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  attempt to make runCode more robust.  Needs more work.

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_soundcard.glade:
	  fix typo
	* flumotion/wizard/enums.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:
	  block updates when asked.  fixes #98

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/wizard.py:
	  change quit to apply, fixes #71

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_webcam.glade:
	* flumotion/wizard/steps.py:
	  Show name of webcam in the UI

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/managers/default/planet.xml:
	* conf/workers/default.xml:
	* flumotion/admin/gtk/main.py:
	* flumotion/common/config.py:
	* flumotion/manager/main.py:
	* flumotion/worker/config.py:
	* flumotion/worker/main.py:
	  add --debug options to command line
	  add <debug></debug> option to config file for worker and manager

2004-11-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/common/errors.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:
	  cleanup of wizard code; better error checking, throw up
	  error dialogs.  Fixes issue #92

2004-11-09  Johan Dahlin  <johan@gnome.org>

	* configure.ac: Check for the gst module before gst.interfaces and
	set PYTHONPATH based on the directory found in pkg-config.

2004-11-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to development

=== release 0.1.2 ===

2004-11-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* NEWS:
	* configure.ac:
	  bump for release
	* flumotion/test/test_wizard.py:
	  skip test for now

2004-11-05  Johan Dahlin  <johan@gnome.org>

	* flumotion/common/errors.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:

	Add error dialog to audio source step
	
2004-11-05  Christian Schaller <christian at fluendo com>

	* flumotion.spec.in: update spec file and init.d script for 
	redhat integration so that it appears in services GUI

2004-11-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_tvcard.glade:
	* data/glade/wizard_webcam.glade:
	  fix up defaults

2004-11-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion.spec.in:
	* flumotion/Makefile.am:
	* flumotion/admin/Makefile.am:
	* flumotion/admin/gtk/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/component/Makefile.am:
	* flumotion/component/base/Makefile.am:
	* flumotion/component/bouncers/Makefile.am:
	* flumotion/component/consumers/Makefile.am:
	* flumotion/component/consumers/disker/Makefile.am:
	* flumotion/component/consumers/httpstreamer/Makefile.am:
	* flumotion/component/converters/Makefile.am:
	* flumotion/component/converters/overlay/Makefile.am:
	* flumotion/component/encoders/Makefile.am:
	* flumotion/component/muxers/Makefile.am:
	* flumotion/component/producers/Makefile.am:
	* flumotion/component/producers/audiotest/Makefile.am:
	* flumotion/component/producers/bttv/Makefile.am:
	* flumotion/component/producers/firewire/Makefile.am:
	* flumotion/component/producers/soundcard/Makefile.am:
	* flumotion/component/producers/videotest/Makefile.am:
	* flumotion/component/producers/webcam/Makefile.am:
	* flumotion/configure/Makefile.am:
	* flumotion/manager/Makefile.am:
	* flumotion/service/Makefile.am:
	* flumotion/test/Makefile.am:
	* flumotion/tester/Makefile.am:
	* flumotion/twisted/Makefile.am:
	* flumotion/utils/Makefile.am:
	* flumotion/wizard/Makefile.am:
	* flumotion/worker/Makefile.am:
	* py-compile:
	* python.mk:

	Fix py-compile to support DESTDIR, so the rpm can tag compiled python
	code with the final on-disk location

2004-11-05  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard_webcam.glade:
	* flumotion/wizard/steps.py:

	Add autodetection code for the webcam

2004-11-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  expand LIBDIR for installed.py.in
	* doc/redhat/flumotion:
	  allow starting and stopping only one of the service parts
	  handle error values correctly
	  log to a service log file
	* flumotion/manager/main.py:
	* flumotion/service/main.py:
	  add log file for service startup

2004-11-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/service/main.py:
	* flumotion/service/service.py:
	  give good return values so service script is useful
	* flumotion/worker/config.py:
	  fix not inited bug

2004-11-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/registry.py:
	  debug
	* flumotion/configure/installed.py.in:
	  fix pythondir
	* flumotion/service/service.py:
	  set name on worker

2004-11-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/resources.py:
	  fix a STUPID bug where the requester was stored as a tuple because
	  of a trailing comma and of course %s alone doesn't show this as
	  a tuple.  sigh.
	* flumotion/common/errors.py:
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/manager/component.py:
	  add some more functions so keycards can be expired by the bouncer

2004-11-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/component/encoders/jpeg.py:
	* flumotion/component/encoders/mulaw.py:
	  add more components to pychecker checking and fix warnings

2004-11-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	  make pkgAddPath only add stuff to __path__ if not already there

2004-11-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/bouncers/htpasswdcrypt.py:
	  unprivatize Bouncer.addKeycard()

2004-11-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* configure.ac:
	* pkgconfig/Makefile.am:
	* pkgconfig/flumotion-uninstalled.pc.in:
	* pkgconfig/flumotion.pc.in:
	  adding .pc files

2004-11-04  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard_soundcard.glade:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/producers/soundcard/soundcard.py:
	* flumotion/component/producers/soundcard/soundcard.xml:
	* flumotion/test/test_wizard.py:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:

	Add OSS/Alsa and probing to soundcard, fixes issue #61
	
2004-11-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/registry.py:
	* flumotion/component/base/base.xml:
	* flumotion/component/bouncers/htpasswdcrypt.xml:
	* flumotion/component/consumers/disker/disker.xml:
	* flumotion/component/consumers/httpstreamer/http.xml:
	* flumotion/component/converters/overlay/overlay.xml:
	* flumotion/component/encoders/encoders.xml:
	* flumotion/component/muxers/muxers.xml:
	* flumotion/component/producers/audiotest/audiotest.xml:
	* flumotion/component/producers/bttv/bttv.xml:
	* flumotion/component/producers/firewire/firewire.xml:
	* flumotion/component/producers/soundcard/soundcard.xml:
	* flumotion/component/producers/videotest/videotest.xml:
	* flumotion/component/producers/webcam/webcam.xml:
	* flumotion/test/test_config.py:
	* flumotion/test/test_registry.py:
	  add <registry></registry> toplevel nodes in all partial xml
	  files.  do not raise when a file without <registry> is being
	  parsed so it doesn't trip over other .xml files

2004-11-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/wizard.py:
	  make wizard remember last chosen worker.  fixes issue #76

2004-11-03  Johan Dahlin  <johan@gnome.org>

	* configure.ac: Check for gst.interfaces and gtk.glade

2004-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	  make it work again
	* data/glade/Makefile.am:
	* data/glade/wizard_audiosource.glade:
	* data/image/wizard/Makefile.am:
	* data/image/wizard/audiosrc.png:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/steps.py:
	  fix bug with audio test source being started on wrong worker
	  rename audiosrc to Sound Card step since that's what it is

2004-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/workers/default.xml:
	* flumotion/worker/config.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  adding feederport ranges to worker config

2004-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-manager.in:
	* bin/flumotion-worker.in:
	* bin/flumotion.in:
	  copy stuff over from other binaries
	* flumotion/common/config.py:
	* flumotion/manager/main.py:
	  add options for manager host and port

2004-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	  fixing pychecker warnings

2004-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/Makefile.am:
	* bin/flumotion-manager.in:
	* bin/flumotion-worker.in:
	* bin/flumotion.in:
	* conf/Makefile.am:
	* conf/managers/default/planet.xml:
	* conf/workers/default.xml:
	* configure.ac:
	* doc/Makefile.am:
	* doc/redhat/flumotion:
	* doc/redhat/init.d/flu-manager:
	* doc/redhat/init.d/flu-worker:
	* doc/redhat/sysconfig/flumotion-manager:
	* doc/redhat/sysconfig/flumotion-worker:
	* flumotion.spec.in:
	* flumotion/Makefile.am:
	* flumotion/common/common.py:
	* flumotion/configure/Makefile.am:
	* flumotion/configure/configure.py:
	* flumotion/configure/installed.py.in:
	* flumotion/configure/uninstalled.py.in:
	* flumotion/manager/main.py:
	* flumotion/service/Makefile.am:
	* flumotion/service/__init__.py:
	* flumotion/service/main.py:
	* flumotion/service/service.py:
	* flumotion/worker/config.py:
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  restructuring and adding code to support decent init scripts
	  and correct daemon behaviour

2004-11-02  Johan Dahlin  <johan@gnome.org>

	* Makefile.am:
	* bin/flumotion-manager.in:
	* bin/flumotion-worker.in:
	* configure.ac:
	* flumotion/common/common.py:
	* flumotion/common/registry.py:
	* flumotion/common/setup.py:
	* flumotion/configure/configure.py:
	* flumotion/test/test_registry.py:

	Add support for FLU_REGISTRY_PATH
	
2004-10-29  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard_firewire.glade:

	Set 384 as default width and 576 as max height.
	
2004-10-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/consumers/httpstreamer/resources.py:
	  advertise correct Flumotion version

2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  a SIGCHLD handler can be called only once for multiple children,
	  so loop as long as we can and only consider a call where no children
	  were rept as a "special" (possibly wrong) case.  This should fix
	  issue #73

2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/wizard.py:
	  Throw up an error dialog if a worker is missing elements needed
	  for the step, and block going to the next one.

2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/wizard/steps.py:
	  Don't activate save to disk by default.  If stuff like this
	  ever needs to be done, do it in the glade file instead.

2004-10-26  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/producers/firewire/firewire.py:

	proper width and height in here, avoids unnecessary and ugly scaling.

2004-10-26  Johan Dahlin  <johan@gnome.org>

	* flumotion/test/test_wizard.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard.py:

	Don't output firewire-audio if we have firewire-video
	Add a test for this too.
	
2004-10-26  Johan Dahlin  <johan@gnome.org>

	* flumotion/wizard/save.py:

	Don't add firewire audio component twice.

2004-10-26  Johan Dahlin  <johan@gnome.org>

	* flumotion/wizard/save.py:

	Ensure width and height always is set.

2004-10-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to devel

=== release 0.1.1 ===

2004-10-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  releasing 0.1.1, "El Local"

2004-10-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/registry.py:
	* flumotion/test/test_registry.py:
	  fix make distcheck.

2004-10-25  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard_firewire.glade:
	* flumotion/wizard/save.py:
	* flumotion/wizard/steps.py:

	Add firewire to the wizard and add good defaults.
	
2004-10-25  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/producers/firewire/firewire.py:

	Add width, height and framerate
	
2004-10-25  Johan Dahlin  <johan@gnome.org>

	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:

	Allow you to change worker and make things easily updatable

2004-10-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_vorbis.glade:
	  Fix quality setting, which is a float from 0.0 to 1.0

2004-10-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  Check for Twisted's version.  Fixes issue #46.

2004-10-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  check for Twisted, needs version check as well
	* m4/as-python.m4:
	new upstream version, check for python module

2004-10-25  Johan Dahlin  <johan@gnome.org>

	* flumotion/admin/admin.py:
	* flumotion/worker/worker.py: 
	Change runCode to execute the parameter and make the admin
	interface to it take a object, which it uses inspect.getsource to
	retrieve the source. This allows us to just send in a function
	instead of a string.

2004-10-22  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard_tvcard.glade:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/main.py:
	* flumotion/common/errors.py:
	* flumotion/component/producers/bttv/bttv.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:

	Query the tv-card for information and use it in the wizard.
	Fixes Issue #55
	
2004-10-22  Johan Dahlin  <johan@gnome.org>

	* flumotion/wizard/wizard.py:
	Don't use a global instance of the wizard, only save the steps
	globally. Fixes Ticket #42
	

2004-10-22  Johan Dahlin  <johan@gnome.org>

	* Makefile.am:
	* misc/pycheckerrc:
	Add pychecker target and a configuration file that disables
	the most retarded checks.

2004-10-22  Johan Dahlin  <johan@gnome.org>

	* flumotion/worker/worker.py: Make sure that we send a tuple with
	exactly one item.

2004-10-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  add errback handling to remote methods
	* flumotion/worker/worker.py:
	  fix docs

2004-10-21  Johan Dahlin  <johan@gnome.org>

	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/main.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:

	Check if elements are present on the worker before allowing us to
	continue. Add some simple logging in the wizard. And Fix so
	--wizard does something useful.

2004-10-21  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_worker_worker.py:
	  add regression tests
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  install a signal handler correctly, tying into twisted's SIGCHLD
	  handler.  This cleans up zombie workers nicely and closes #41

2004-10-21  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/producers/bttv/bttv.py:
	* flumotion/component/producers/bttv/bttv.xml:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:

	TV-Card producer should work better now.
	
2004-10-21  Johan Dahlin  <johan@gnome.org>

	* flumotion/admin/admin.py:
	* flumotion/common/common.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_common.py:

	Make a generic interface to call from the admin interface into the
	worker. Add a method in common with regression tests to print a
	repr for args/kwargs.

2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  back to svn, yay

=== release 0.1.0 ===

2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac: releasing 0.1.0, "Agua"

2004-10-19  Johan Dahlin  <johan@gnome.org>

	* data/glade/admin.glade:
	Disable Save in the user interface for now

2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* NEWS:
	* README:
	* data/glade/wizard_summary.glade:
	  adding README
	  changing ending

2004-10-19  Johan Dahlin  <johan@gnome.org>

	* flumotion/admin/gtk/client.py:
	* flumotion/common/common.py:
	* flumotion/common/config.py:
	* flumotion/wizard/wizard.py:

2004-10-19  Johan Dahlin  <johan@gnome.org>

	* flumotion/wizard/wizard.py:

	Make the selecting of worker for a component actually work as
	intented. Also load the previous steps when clicking back.	

2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/manager/component.py:
	* flumotion/manager/worker.py:
	  clean up INFO level messages

2004-10-19  Johan Dahlin  <johan@gnome.org>

	* bin/flumotion-admin.in:
	* bin/flumotion-manager.in:
	* bin/flumotion-tester.in:
	* bin/flumotion-worker.in:
	* flumotion/__init__.py:
	* flumotion/admin/__init__.py:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/__init__.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/main.py:
	* flumotion/admin/gtk/spyglass.py:
	* flumotion/admin/gtk/videotest.py:
	* flumotion/common/__init__.py:
	* flumotion/common/bundle.py:
	* flumotion/common/common.py:
	* flumotion/common/config.py:
	* flumotion/common/errors.py:
	* flumotion/common/interfaces.py:
	* flumotion/common/keycards.py:
	* flumotion/common/log.py:
	* flumotion/common/registry.py:
	* flumotion/common/setup.py:
	* flumotion/component/__init__.py:
	* flumotion/component/base/__init__.py:
	* flumotion/component/base/converter.py:
	* flumotion/component/base/producer.py:
	* flumotion/component/bouncers/__init__.py:
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/component/component.py:
	* flumotion/component/consumers/__init__.py:
	* flumotion/component/consumers/disker/__init__.py:
	* flumotion/component/consumers/disker/disker.py:
	* flumotion/component/consumers/httpstreamer/__init__.py:
	* flumotion/component/consumers/httpstreamer/gtk.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	* flumotion/component/converters/__init__.py:
	* flumotion/component/converters/overlay/__init__.py:
	* flumotion/component/converters/overlay/genimg.py:
	* flumotion/component/converters/overlay/overlay.py:
	* flumotion/component/encoders/jpeg.py:
	* flumotion/component/encoders/mulaw.py:
	* flumotion/component/encoders/smoke.py:
	* flumotion/component/encoders/speex.py:
	* flumotion/component/encoders/theora.py:
	* flumotion/component/encoders/vorbis.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/muxers/multipart.py:
	* flumotion/component/muxers/ogg.py:
	* flumotion/component/producers/__init__.py:
	* flumotion/component/producers/audiotest/__init__.py:
	* flumotion/component/producers/audiotest/audiotest.py:
	* flumotion/component/producers/bttv/__init__.py:
	* flumotion/component/producers/bttv/bttv.py:
	* flumotion/component/producers/firewire/firewire.py:
	* flumotion/component/producers/soundcard/__init__.py:
	* flumotion/component/producers/soundcard/soundcard.py:
	* flumotion/component/producers/videotest/__init__.py:
	* flumotion/component/producers/videotest/videotest.py:
	* flumotion/component/producers/webcam/__init__.py:
	* flumotion/component/producers/webcam/webcam.py:
	* flumotion/configure/configure.py:
	* flumotion/configure/installed.py.in:
	* flumotion/configure/uninstalled.py.in:
	* flumotion/manager/__init__.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/test/__init__.py:
	* flumotion/test/common.py:
	* flumotion/test/test_bundle.py:
	* flumotion/test/test_checkers.py:
	* flumotion/test/test_common.py:
	* flumotion/test/test_component.py:
	* flumotion/test/test_config.py:
	* flumotion/test/test_configure.py:
	* flumotion/test/test_credentials.py:
	* flumotion/test/test_enum.py:
	* flumotion/test/test_htpasswdcrypt.py:
	* flumotion/test/test_http.py:
	* flumotion/test/test_keycards.py:
	* flumotion/test/test_log.py:
	* flumotion/test/test_manager.py:
	* flumotion/test/test_manager_admin.py:
	* flumotion/test/test_pb.py:
	* flumotion/test/test_reflect.py:
	* flumotion/test/test_registry.py:
	* flumotion/test/test_wizard.py:
	* flumotion/test/test_worker_heaven.py:
	* flumotion/test/test_workerconfig.py:
	* flumotion/tester/__init__.py:
	* flumotion/tester/client.py:
	* flumotion/tester/clientfactory.py:
	* flumotion/tester/httpclient.py:
	* flumotion/twisted/__init__.py:
	* flumotion/twisted/checkers.py:
	* flumotion/twisted/credentials.py:
	* flumotion/twisted/gstreactor.py:
	* flumotion/twisted/pb.py:
	* flumotion/twisted/portal.py:
	* flumotion/twisted/reflect.py:
	* flumotion/utils/__init__.py:
	* flumotion/utils/gstutils.py:
	* flumotion/utils/reload.py:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:
	* flumotion/worker/__init__.py:
	* flumotion/worker/config.py:
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:

	Update header licenses.
	
2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* README:
	  add notes about licensing
	* conf/managers/default/planet.xml:
	  change default username to user
	* configure.ac:
	  update deps
	* doc/random/header.py:
	  update default header

2004-10-19  Wim Taymans  <wim@fluendo.com>

	* flumotion/wizard/enums.py:
	* flumotion/wizard/steps.py:
	Fix naming of the steps (bug #28, #29).

2004-10-19  Wim Taymans  <wim@fluendo.com>

	* flumotion/component/producers/firewire/firewire.py:
	Change the names of the feeds

2004-10-19  Johan Dahlin  <johan@gnome.org>

	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/main.py:

	Add file->open and file->new in interface. Don't load default
	configuration on startup.
	
2004-10-19  Johan Dahlin  <johan@gnome.org>

	* data/glade/admin.glade:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:

	Add a clean button in the interface and methods in the medium and
	avatar.
	
2004-10-19  Johan Dahlin  <johan@gnome.org>

	* flumotion/wizard/save.py:
	Generate a runnable firewire configuration

2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/component.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	  update state in admin of components properly.  Still hacky
	  since we say a component is ready when the first *feed* on it
	  is, but we'll fix that with moods !

2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/random/header.py:
	semi-final header

2004-10-19  Johan Dahlin  <johan@gnome.org>

	* flumotion/wizard/save.py: Boolean expression was broken, it's
	now as it should be.
	* flumotion/wizard/steps.py: Don't skip audio encoding page if we
	have both audio and video. Don't skip encoding if we're chosing a
	audio page without a configuration, instead of going directly to
	consumption page.

2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/Makefile.am:
	* doc/redhat/flu-manager:
	* doc/redhat/flu-worker:
	* doc/redhat/init.d/flu-manager:
	* doc/redhat/sysconfig/flumotion-manager:
	* doc/redhat/sysconfig/flumotion-worker:
	* flumotion.spec.in:

	More package fixes, service starts up nicely now, yay

2004-10-19  Johan Dahlin  <johan@gnome.org>

	* data/glade/admin.glade:
	* data/glade/wizard_source.glade:
	* flumotion/admin/gtk/client.py:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/steps.py:

	Remove some broken stuff in the admin interface.
	Improve the wizard, it was quite broken.
	
2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion.spec.in:
	* flumotion/manager/main.py:
	  moved pem, fixed an oops

2004-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/Makefile.am:
	* doc/redhat/flu-manager:
	* flumotion.spec.in:
	  fix dist

2004-10-19  Johan Dahlin  <johan@gnome.org>

	* configure.ac:
	* flumotion/component/muxers/ogg.py:
	* flumotion/component/producers/Makefile.am:
	* flumotion/component/producers/dv/Makefile.am:
	* flumotion/component/producers/dv/__init__.py:
	* flumotion/component/producers/dv/dv.py:
	* flumotion/component/producers/dv/dv.xml:
	* flumotion/component/producers/firewire/Makefile.am:
	* flumotion/component/producers/firewire/__init__.py:
	* flumotion/component/producers/firewire/firewire.py:
	* flumotion/component/producers/firewire/firewire.xml:

	Remove dv component and add firewire
	
2004-10-19  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/producers/audiotest/audiotest.py:
	* flumotion/component/producers/audiotest/audiotest.xml:

	Add freq property.
	
2004-10-19  Johan Dahlin  <johan@gnome.org>

	* data/image/wizard/Makefile.am:
	* data/image/wizard/summary.png:
	* flumotion/wizard/steps.py:

	Add summary icon and fix small regression.
	
2004-10-19  Johan Dahlin  <johan@gnome.org>

	* flumotion/test/Makefile.am:
	* flumotion/test/test_workerconfig.py:
	* flumotion/worker/Makefile.am:
	* flumotion/worker/config.py:

	Add worker configuration and testsuite

2004-10-19  Wim Taymans  <wim@fluendo.com>

	* flumotion/manager/main.py:
	Fix typos and copy-and-paste errors.

2004-10-19  Johan Dahlin  <johan@gnome.org>

	reviewed by: <delete if not using a buddy>

	* data/glade/Makefile.am:
	* data/glade/wizard_audio_encoder.glade:
	* data/glade/wizard_vorbis.glade:
	* flumotion/manager/main.py:
	* flumotion/wizard/steps.py:

2004-10-19  Johan Dahlin  <johan@gnome.org>

	* data/glade/Makefile.am:
	* data/glade/wizard.glade:
	* data/glade/wizard_audio_encoder.glade:
	* data/glade/wizard_disk.glade:
	* data/glade/wizard_license.glade:
	* data/glade/wizard_smoke.glade:
	* data/glade/wizard_summary.glade:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:

	Add a summary step, tweak audio_encoder to show quality for vorbis
	Change the disk button into an entry
	Increase the size of the wizard slightly
	
2004-10-18  Wim Taymans  <wim@fluendo.com>

	* conf/dv-ogg-theora-vorbis.xml:
	* flumotion/manager/main.py:
	Added ogg theora vorbis example
	Fix correct var for the filename.

2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/Makefile.am:
	* data/glade/Makefile.am:
	* flumotion.spec.in:
	  updates
	* flumotion/component/bouncers/Makefile.am:
	* flumotion/component/converters/overlay/overlay.py:
	  import correctly, use tempfile
	* flumotion/manager/main.py:

2004-10-18  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard_audiotest.glade:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/main.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/worker.py:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:
	* flumotion/worker/worker.py:
	add some checks for some elements, not using the result just yet.
	
2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/Makefile.am:
	* conf/flows/ogg-test-theora.xml:
	* configure.ac:
	* doc/random/service:
	* flumotion/manager/main.py:
	  make manager start up multiple xml files

2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* flumotion/component/Makefile.am:
	* flumotion/component/converters/Makefile.am:
	* flumotion/component/converters/__init__.py:
	* flumotion/component/converters/overlay/Makefile.am:
	* flumotion/component/converters/overlay/__init__.py:
	* flumotion/component/converters/overlay/genimg.py:
	* flumotion/component/converters/overlay/overlay.py:
	* flumotion/component/converters/overlay/overlay.xml:
	* flumotion/component/overlay/Makefile.am:
	* flumotion/component/overlay/Vera.ttf:
	* flumotion/component/overlay/__init__.py:
	* flumotion/component/overlay/cc.24x24.png:
	* flumotion/component/overlay/fluendo.24x24.png:
	* flumotion/component/overlay/genimg.py:
	* flumotion/component/overlay/overlay.py:
	* flumotion/component/overlay/overlay.xml:
	* flumotion/component/overlay/xiph.24x24.png:
	* flumotion/component/producers/Makefile.am:
	* flumotion/component/producers/__init__.py:
	* flumotion/component/producers/webcam/Makefile.am:
	* flumotion/component/producers/webcam/__init__.py:
	* flumotion/component/producers/webcam/webcam.py:
	* flumotion/component/producers/webcam/webcam.xml:
	* flumotion/component/webcam/Makefile.am:
	* flumotion/component/webcam/__init__.py:
	* flumotion/component/webcam/webcam.py:
	* flumotion/component/webcam/webcam.xml:
	  this should do the trick

2004-10-18  Johan Dahlin  <johan@gnome.org>

	* flumotion/admin/gtk/main.py:
	* flumotion/common/config.py:
	* flumotion/manager/worker.py:
	* flumotion/worker/job.py:

	Improve startup wizard logic, still not good
	cleanup configuration parsing, set worker on the entry object if
	its specified in the tag

	Remove config and start-factory from dictionary, finally.
	
2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* flumotion/component/Makefile.am:
	* flumotion/component/bttv/Makefile.am:
	* flumotion/component/bttv/__init__.py:
	* flumotion/component/bttv/bttv.py:
	* flumotion/component/bttv/bttv.xml:
	* flumotion/component/dv/Makefile.am:
	* flumotion/component/dv/__init__.py:
	* flumotion/component/dv/dv.py:
	* flumotion/component/dv/dv.xml:
	* flumotion/component/producers/Makefile.am:
	* flumotion/component/producers/bttv/Makefile.am:
	* flumotion/component/producers/bttv/__init__.py:
	* flumotion/component/producers/bttv/bttv.py:
	* flumotion/component/producers/bttv/bttv.xml:
	* flumotion/component/producers/dv/Makefile.am:
	* flumotion/component/producers/dv/__init__.py:
	* flumotion/component/producers/dv/dv.py:
	* flumotion/component/producers/dv/dv.xml:
	  moved dv and bttv

2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* flumotion/component/Makefile.am:
	* flumotion/component/audiotest/Makefile.am:
	* flumotion/component/audiotest/__init__.py:
	* flumotion/component/audiotest/audiotest.py:
	* flumotion/component/audiotest/audiotest.xml:
	* flumotion/component/producers/Makefile.am:
	* flumotion/component/producers/audiotest/Makefile.am:
	* flumotion/component/producers/audiotest/__init__.py:
	* flumotion/component/producers/audiotest/audiotest.py:
	* flumotion/component/producers/audiotest/audiotest.xml:
	* flumotion/component/producers/soundcard/Makefile.am:
	* flumotion/component/producers/soundcard/__init__.py:
	* flumotion/component/producers/soundcard/soundcard.py:
	* flumotion/component/producers/soundcard/soundcard.xml:
	* flumotion/component/soundcard/Makefile.am:
	* flumotion/component/soundcard/__init__.py:
	* flumotion/component/soundcard/soundcard.py:
	* flumotion/component/soundcard/soundcard.xml:
	  move audiotest and souncard

2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/Makefile.am:
	* flumotion/test/test_manager_admin.py:
	  adding test

2004-10-18  Johan Dahlin  <johan@gnome.org>

	* data/glade/Makefile.am:
	* data/glade/wizard.glade:
	* data/glade/wizard_audio_encoder.glade:
	* data/glade/wizard_audiotest.glade:
	* data/glade/wizard_source.glade:
	* data/glade/wizard_welcome.glade:
	* flumotion/admin/gtk/main.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_worker_heaven.py:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:
	* flumotion/worker/main.py:

	Add audiotest component, add workers everywhere in the wizard and
	save it properly. 
	Fix wizard debugging again.
	
2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* flumotion/component/Makefile.am:
	* flumotion/component/producers/Makefile.am:
	* flumotion/component/producers/__init__.py:
	* flumotion/component/producers/videotest/Makefile.am:
	* flumotion/component/producers/videotest/__init__.py:
	* flumotion/component/producers/videotest/videotest.py:
	* flumotion/component/producers/videotest/videotest.xml:
	* flumotion/component/videotest/Makefile.am:
	* flumotion/component/videotest/__init__.py:
	* flumotion/component/videotest/videotest.py:
	* flumotion/component/videotest/videotest.xml:
	  move videotest to producers

2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* flumotion/component/Makefile.am:
	* flumotion/component/consumers/disker/Makefile.am:
	* flumotion/component/consumers/disker/__init__.py:
	* flumotion/component/consumers/httpstreamer/__init__.py:
	* flumotion/component/consumers/httpstreamer/gtk.py:
	* flumotion/component/consumers/httpstreamer/http.py:
	* flumotion/component/consumers/httpstreamer/resources.py:
	* flumotion/test/test_http.py:
	* flumotion/wizard/save.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  move and rename consumer components and friends

2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/component/Makefile.am:
	* flumotion/component/consumers/httpstreamer/Makefile.am:
	* flumotion/component/consumers/httpstreamer/http.xml:
	* flumotion/component/file/Makefile.am:
	* flumotion/component/file/__init__.py:
	* flumotion/component/file/file.py:
	* flumotion/component/file/file.xml:
	* flumotion/component/http/Makefile.am:
	* flumotion/component/http/__init__.py:
	* flumotion/component/http/gtk.py:
	* flumotion/component/http/http.glade:
	* flumotion/component/http/http.py:
	* flumotion/component/http/http.xml:
	* flumotion/component/http/resources.py:
	  moving and renaming components

2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/Makefile.am:
	* flumotion/component/bouncers/Makefile.am:
	* flumotion/component/bouncers/htpasswd.py:
	* flumotion/component/bouncers/htpasswd.xml:
	* flumotion/component/passwd/Makefile.am:
	* flumotion/component/passwd/__init__.py:
	* flumotion/component/passwd/passwd.py:
	* flumotion/component/passwd/passwd.xml:
	  remove two unused components

2004-10-18  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/file/file.py:
	* flumotion/component/http/http.py:

	file: append an extension to the type
	http: use get_element('sink') instead of get_sink()

2004-10-18  Wim Taymans  <wim@fluendo.com>

	* flumotion/component/encoders/speex.py:
	* flumotion/wizard/steps.py:
	Fix speex encoding.
	Set bitrate property range to sane values.

2004-10-18  Johan Dahlin  <johan@gnome.org>

	* flumotion/admin/gtk/main.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard.py:

	Make --wizard and --debug work again.

	Create muxers when we need them and make sure to only create them
	when they're needed.
	
2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/errors.py:
	* flumotion/component/overlay/Makefile.am:
	* flumotion/component/overlay/cc_24x24.png:
	* flumotion/component/overlay/fluendo_24x24.png:
	* flumotion/component/overlay/genimg.py:
	* flumotion/component/overlay/xiph_24x24.png:
	  rename a little
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  handle failed imports more gracefully than before

2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/component.py:
	  not having an UI is not an error.
	  clear UI in admin when no UI.

2004-10-18  Wim Taymans  <wim@fluendo.com>

	* flumotion/admin/gtk/main.py:
	* flumotion/manager/component.py:
	Fix uninitialized var.
	Fix dependency breakage.

2004-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/file/file.py:
	  make name slightly cleaner
	* flumotion/component/webcam/webcam.py:
	  more webcam fixing, use filtercaps

2004-10-17  Wim Taymans  <wim@fluendo.com>

	* data/glade/wizard_overlay.glade:
	Fix typo.

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/wizard_webcam.glade:
	* flumotion/component/webcam/webcam.py:
	  turn off autoprobe
	  lock spinbutton's values to what webcams can actually do

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	  fix Johan's bug

2004-10-17  Johan Dahlin  <johan@gnome.org>

	* flumotion/test/test_wizard.py: Fix test breakage

	* bin/flumotion-admin.in:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/Makefile.am:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/main.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/worker.py:
	* flumotion/wizard/wizard.py:

	Integrate the Wizard into the admin client, almost works as it
	should.
	
2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/feedcomponent.py:
	* flumotion/configure/configure.py:
	* flumotion/wizard/steps.py:
	* flumotion/worker/worker.py:
	  also use default ports for streaming and GStreamer ports

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	* flumotion/configure/configure.py:
	* flumotion/manager/main.py:
	* flumotion/worker/main.py:
	  set the default ports for TCP, SSL, streamer and GStreamer
	  use the default manager ports everywhere

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/flows/ogg-test-theora.xml:
	* conf/planets/default.xml:
	  some changes for new structure
	* flumotion.spec.in:
	  some additions
	* configure.ac:
	* flumotion/configure/configure.py:
	* flumotion/configure/installed.py.in:
	* flumotion/configure/uninstalled.py.in:
	* flumotion/test/test_configure.py:
	  add logdir
	* flumotion/manager/main.py:
	* flumotion/manager/worker.py:
	* flumotion/worker/main.py:
	  use logdir when daemonizing

2004-10-17  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/audiotest/audiotest.py (createComponent):
	Set sync to true for sinesrc, to avoid eating up all CPU.

	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/steps.py:
	* flumotion/wizard/wizard.py:

	Make it optional to specifiy the mainloop, so we can run it from
	the administration interface.

2004-10-17  Wim Taymans  <wim@fluendo.com>

	* doc/random/authentication:
	* flumotion/manager/component.py:
	Added some FIXMEs.
	Moved callback function.

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/manager/component.py:
	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/worker/main.py:
	  add options to -manager and -worker to daemonize

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/keycards.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/main.py:
	* flumotion/twisted/pb.py:
	  60% coverage !

2004-10-17  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard_disk.glade:
	* data/glade/wizard_http.glade:
	* flumotion/common/config.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/file/file.py:
	* flumotion/component/file/file.xml:
	* flumotion/component/http/http.py:
	* flumotion/test/test_config.py:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/steps.py:

	HTTP component: UI work, remove worker
	Disk component: make it work again, UI work
	
2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_pb.py:
	  add missing tests, everything works, yay !

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_pb.py:
	  add a regression test for the complete FPBClientFactory
	  and fix others
	* flumotion/twisted/pb.py:
	* flumotion/twisted/portal.py:
	  commenting, documenting, fixing, logging

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/portal.py:
	  cleanup
	* flumotion/test/test_pb.py:
	* flumotion/twisted/pb.py:
	  remove deprecated stuff:
	  FMClientFactory, _PortalRoot, _FPortalAuthChallenger

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/admin.py:
	* flumotion/worker/worker.py:
	  doc fixes
	* flumotion/twisted/portal.py:
	  document, remove FlumotionPortal

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	  Remove ManagerCredentialsChecker which was deprecated.

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/admin.py:
	* flumotion/twisted/portal.py:
	  The avatar was being removed twice, once by heaven, once by
	  detached.
	  Take opportunity to store avatarId's for admin and consistentify
	  with other heavens.
	  Still need to assign a unique id to admin clients.

2004-10-17  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/http/Makefile.am:
	* flumotion/component/http/http.py:
	* flumotion/component/http/http_resources.py:
	* flumotion/component/http/resources.py:
	* flumotion/test/test_http.py:
	* flumotion/test/test_wizard.py:
	  Johan needs to update this

	Rename http_resources to resources, and update tests.
	Add more wizard tests
	
2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/component.py:
	* flumotion/twisted/portal.py:
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  component now logs in with same options as the worker it got
	  started from

2004-10-17  Johan Dahlin  <johan@gnome.org>

	* flumotion/wizard/wizard.py: Add very simple unittest for wizard
	and its steps

	* flumotion/wizard/steps.py: Rename from wizard_step to make
	thomas happy

	* flumotion/wizard/wizard.py:
	* flumotion/wizard/wizard_step.py:

	Make it possible to go back to major steps. Fixes quite a few bugs.
	Beginning of cleanup for the WizardStep API.
	
2004-10-17  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard_overlay.glade:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard_step.py:

	Fixes to overlay component, it should only show a text if chose to
	include one in the wizard.
	
2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	  clean up todo, some things are already done, yay

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/planet.xml:
	* flumotion/common/config.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_config.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/wizard_step.py:
	  grid to flow

2004-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/planet.xml:
	  use htpasswdcrypt bouncer for manager and streamer
	* flumotion/component/http/http_resources.py:
	  use KeycarUACPP instead of deprecated HTTPClientKeycard
	* flumotion/component/bouncers/htpasswdcrypt.py:
	  return a random-ish salt when the username is not in the
	  backend to pretend everything's fine
	* flumotion/component/component.py:
	  switch from reconnecting client factory to new FPBClientFactory
	* flumotion/twisted/portal.py:
	  add new BouncerPortal wrapping an IRealm and a Bouncer
	* flumotion/twisted/pb.py:
	  add new FPB Client and Server Factories
	* flumotion/test/test_pb.py:
	  added
	* flumotion/admin/gtk/client.py:
	  change password option to -d, pass on options to model
	  for keycard
	* flumotion/admin/admin.py:
	  use FPBClientFactory
	  log in with an actual keycard, using Challenge/Response, yay !
	* flumotion/common/keycards.py:
	  set unjellyable, change repr
	* flumotion/worker/worker.py:
	  use FPBClientFactory
	* flumotion/worker/job.py:
	  log in component using keycard (currently UACPP, change later ?)
	* flumotion/worker/main.py:
	  log in worker using keycard (currently UACPP, change later ?)
	* flumotion/manager/manager.py:
	  use the bouncer portal now
	* flumotion/manager/component.py:
	  some debugging

2004-10-16  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard_audio_encoder.glade:
	* data/glade/wizard_consumption.glade:
	* data/glade/wizard_encoding.glade:
	* data/glade/wizard_overlay.glade:
	* data/glade/wizard_theora.glade:
	* data/image/wizard/firewire.png:
	* data/image/wizard/webcam.png:
	* flumotion/common/config.py:
	* flumotion/component/overlay/Makefile.am:
	* flumotion/component/overlay/genimg.py:
	* flumotion/component/overlay/overlay.py:
	* flumotion/component/overlay/overlay.xml:
	* flumotion/test/test_config.py:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/wizard_step.py:

	Some HIG fixes, Fix overlay component. Only show logos when we
	should.
	Make sidebar work somewhat better.
	
2004-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_common.py:
	* flumotion/common/common.py:
	  write a mergeImplements function to merge __implements__ class
	  attributes
	* flumotion/common/keycard.py:
	  removed
	* flumotion/common/keycards.py:
	  additions
	* flumotion/component/bouncers/bouncer.py:
	  verify that the bouncer can prime the given keycard
	* flumotion/twisted/checkers.py:
	* flumotion/test/test_checkers.py:
	  return a deferred failure when the user is not in the database,
	  so it looks the same as a wrong password and can't be exploited
	* flumotion/component/bouncers/htpasswdcrypt.py:
	* flumotion/component/bouncers/htpasswdcrypt.xml:
	  implement actual functionality
	* flumotion/test/Makefile.am:
	* flumotion/test/test_htpasswdcrypt.py:
	  added
	* flumotion/test/test_keycards.py:
	  test initing of keycard
	* flumotion/twisted/credentials.py:
	  fix __implements__

2004-10-16  Johan Dahlin  <johan@gnome.org>

	* flumotion/worker/worker.py: Clean up error
	handling in worker brain.

	* flumotion/component/Makefile.am:
	* flumotion/component/audiotest/Makefile.am:
	* flumotion/component/audiotest/__init__.py:
	* flumotion/component/audiotest/audiotest.py:
	* flumotion/component/audiotest/audiotest.xml:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard_step.py:

	Add an audiotest step (sinesrc)
	
2004-10-16  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/overlay/Makefile.am:
	* flumotion/component/overlay/cc_24x24.png:
	* flumotion/component/overlay/fluendo_24x24.png:
	* flumotion/component/overlay/overlay.py:
	* flumotion/component/overlay/xiph_24x24.png:
	* flumotion/twisted/gstreactor.py:
	* flumotion/wizard/wizard_step.py:

	Add logos to overlay component, remove some prints in gstreactor

2004-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* conf/planet.xml:
	* doc/random/authentication:
	* flumotion/common/keycards.py:
	* flumotion/test/Makefile.am:
	* flumotion/test/test_credentials.py:
	* flumotion/test/test_keycards.py:
	* flumotion/twisted/credentials.py:
	  add tests and add some keycards

2004-10-16  Johan Dahlin  <johan@gnome.org>

	* data/image/wizard/Makefile.am (image_DATA): Add a few more icons
	for the wizard

	* flumotion/manager/component.py (ComponentHeaven.shutdown):
	Remove the avatar
	(ComponentHeaven.createAvatar, ComponentHeaven.removeAvatar): Add
	logging.
	(ComponentHeaven.removeAvatar): Remove feeders too
	(FeederSet.removeFeeders): New method.

	* flumotion/manager/main.py (_loadConfig): Don't parse the
	configuration twice.

2004-10-15  Johan Dahlin  <johan@gnome.org>

	* configure.ac:
	* data/glade/wizard.glade:
	* data/image/wizard/audiosrc.png:
	* data/image/wizard/consumption.png:
	* data/image/wizard/firewire.png:
	* data/image/wizard/licenses.png:
	* data/image/wizard/overlay.png:
	* data/image/wizard/source.png:
	* data/image/wizard/testsource.png:
	* data/image/wizard/webcam.png:
	* data/image/wizard/wizard.png:
	* data/image/wizard/xiphfish.png:
	* flumotion/component/encoders/smoke.py:
	* flumotion/component/encoders/speex.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/wizard_step.py:

	Wizard work, commit some icons.
	
2004-10-15  Johan Dahlin  <johan@gnome.org>

	* flumotion/test/: Add a few new unittests.

2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/test_checkers.py:
	* flumotion/twisted/checkers.py:
	  cred checkers tests and fixes

2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/Makefile.am:
	* flumotion/test/test_checkers.py:
	* flumotion/twisted/checkers.py:
	  add a CryptChecker and a test.  TEST NUMBER 100, WOOHOO !

2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/test/Makefile.am:
	* flumotion/test/test_credentials.py:
	* flumotion/twisted/credentials.py:
	  add CryptPassword related credentials and tests

2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* doc/random/header.py:
	  reworded header after call with the lawyer

2004-10-15  Johan Dahlin  <johan@gnome.org>

	* flumotion/test/Makefile.am: Add more unittests

	* flumotion/component/encoders/encoders.xml:
	* flumotion/component/encoders/jpeg.py:
	* flumotion/component/encoders/mulaw.py:
	* flumotion/component/muxers/muxers.xml:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:

	Multipart/Mulaw/JPEG now works.
	
2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/planet.xml:
	* flumotion/twisted/reflect.py:
	  add missing files

2004-10-15  Johan Dahlin  <johan@gnome.org>

	* conf/minimal.xml:
	* conf/videotest-jpeg.xml:
	* flumotion/common/config.py:
	* flumotion/component/component.py:
	* flumotion/component/encoders/theora.py:
	* flumotion/component/http/http_resources.py:
	* flumotion/component/overlay/overlay.py:
	* flumotion/component/overlay/overlay.xml:
	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/worker/worker.py
	* flumotion/worker/job.py
	* flumotion/worker/report.py
	* flumotion/worker/main.py
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard_step.py:

	Update configuration for minimal and videotest. 
	Fix some errors found by pychecker.
	Make the overlay component generate an image on the fly.
	Make the worker use fork() instead of ProcessProtocol.
	
2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* flumotion/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/configure/Makefile.am:
	* flumotion/manager/Makefile.am:
	* flumotion/tester/Makefile.am:
	* flumotion/twisted/Makefile.am:
	* flumotion/utils/Makefile.am:
	* flumotion/wizard/Makefile.am:
	* flumotion/worker/Makefile.am:
	  dist fixes

2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	* flumotion/twisted/pb.py:
	* flumotion/twisted/portal.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  merge back portal stuff that came from pb into pb

2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	* flumotion/admin/admin.py:
	* flumotion/component/component.py:
	* flumotion/twisted/Makefile.am:
	* flumotion/twisted/pb.py:
	* flumotion/twisted/pbutil.py:
	* flumotion/worker/worker.py:
	  move pbutil.py to pb.py

2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	  add twisted stuff
	* flumotion/admin/admin.py:
	* flumotion/component/component.py:
	* flumotion/manager/manager.py:
	* flumotion/twisted/Makefile.am:
	* flumotion/twisted/checkers.py:
	* flumotion/twisted/cred.py:
	* flumotion/twisted/credentials.py:
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  split out cred.py to credentials.py and checkers.py so they
	  match twisted's .py names

2004-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	  some more notes
	* flumotion/component/http/http_resources.py:
	  fix bug when mountpoint is not specified
	* flumotion/component/bouncers/htpasswd.py:
	* flumotion/component/bouncers/htpasswd.xml:
	  also allow specifying raw data instead of a filename to init
	* flumotion/admin/admin.py:
	* flumotion/common/config.py:
	  add parsing of a raw string
	* flumotion/manager/worker.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	* flumotion/twisted/portal.py:
	  documenting
	* flumotion/manager/manager.py:
	  use the bouncer to authenticate workers, comps and admin to follow
	* flumotion/manager/main.py:
	  create a bouncer component which we don't start, yay !

2004-10-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/config.py:
	* flumotion/component/bouncers/htpasswd.xml:
	* flumotion/component/component.py:
	* flumotion/manager/component.py:
	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_config.py:
	* flumotion/twisted/cred.py:
	* flumotion/twisted/pbutil.py:
	* flumotion/twisted/portal.py:
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	  move to the final xml configuration syntax for <planet>
	  add an avatarId request to pb.client and portal so pb.client
	  can request a specific avatarId when logging in

2004-10-14  Johan Dahlin  <johan@gnome.org>

	* flumotion/test/test_http.py: Fix rest regressions.

	* doc/reference/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/common/auth.py:
	* flumotion/component/http/http.py:
	* flumotion/component/http/http.xml:

	Kill auth, replaced by bouncer.
	
2004-10-14  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/feedcomponent.py:
	* flumotion/component/http/Makefile.am:
	* flumotion/component/http/http.py:
	* flumotion/component/http/http.xml:

	Separate twisted resources to a separate file, implement
	mount_point and clean up some other things

2004-10-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	* flumotion/common/common.py:
	* flumotion/manager/main.py:
	* flumotion/worker/main.py:
	  put in --version, synchronize options, use lowercase

2004-10-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/Makefile.am:
	* bin/flumotion.in:
	* configure.ac:
	  rename flumotion to flumotion-manager

	* flumotion/test/Makefile.am:
	  fix test

2004-10-14  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/feedcomponent.py:
	* flumotion/component/videotest/videotest.py:
	* flumotion/component/videotest/videotest.xml:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/wizard_step.py:

	Fix videotest fix pattern property. Add a method on feedcomponent
	to get an element from a pipeline.
	
2004-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/spyglass.py:
	* flumotion/admin/gtk/videotest.py:
	* flumotion/common/Makefile.am:
	* flumotion/common/config.py:
	* flumotion/common/log.py:
	* flumotion/common/registry.py:
	* flumotion/common/setup.py:
	* flumotion/component/component.py:
	* flumotion/component/http/http.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/test/test_log.py:
	* flumotion/test/test_manager.py:
	* flumotion/tester/clientfactory.py:
	* flumotion/tester/httpclient.py:
	* flumotion/utils/Makefile.am:
	* flumotion/utils/log.py:
	* flumotion/utils/reload.py:
	* flumotion/wizard/wizard.py:
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  utils.log -> common.log

2004-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	* flumotion/common/launcher.py:
	  remove common.launcher

2004-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	* flumotion/common/config.py:
	* flumotion/common/interfaces.py:
	* flumotion/common/registry.py:
	* flumotion/component/component.py:
	* flumotion/manager/manager.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  fix doc class hierarchy, fill in module descriptions

2004-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* doc/reference/Makefile.am:
	* flumotion/Makefile.am:
	* flumotion/admin/gtk/spyglass.py:
	* flumotion/admin/gtk/videotest.py:
	* flumotion/common/registry.py:
	* flumotion/common/setup.py:
	* flumotion/config/Makefile.am:
	* flumotion/config/__init__.py:
	* flumotion/config/installed.py.in:
	* flumotion/config/setup.py:
	* flumotion/config/uninstalled.py.in:
	* flumotion/configure/Makefile.am:
	* flumotion/configure/__init__.py:
	* flumotion/configure/configure.py:
	* flumotion/configure/installed.py.in:
	* flumotion/configure/uninstalled.py.in:
	* flumotion/manager/main.py:
	* flumotion/test/test_configure.py:
	* flumotion/test/test_flumotion_config.py:
	* flumotion/test/test_log.py:
	* flumotion/wizard/wizard.py:
	  put all configure-time stuff in flumotion.configure package

2004-10-13  Johan Dahlin  <johan@gnome.org>

	* Makefile.am (test): New target

	* flumotion/test/test_log.py (TestOwnLogHandler.setUp) 
	(TestLog.setUp): Reset logging here, to avoid having unwanted
	logging functions installed when running this test.

	* flumotion/utils/log.py (reset): New method, to remove all
	logging handlers

	* data/glade/wizard_audio_encoder.glade:
	* flumotion/component/base/producer.py:
	* flumotion/component/encoders/encoders.xml:
	* flumotion/component/encoders/theora.py:
	* flumotion/component/encoders/vorbis.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/muxers/muxers.xml:
	* flumotion/component/muxers/ogg.py:
	* flumotion/component/soundcard/soundcard.py:
	* flumotion/component/soundcard/soundcard.xml:
	* flumotion/component/videotest/videotest.py:
	* flumotion/component/videotest/videotest.xml:
	* flumotion/component/webcam/webcam.py:
	* flumotion/component/webcam/webcam.xml:
	* flumotion/manager/component.py:
	* flumotion/wizard/wizard_step.py:

	Woho, the default configuration is not only parsable, but
	runnable!
	
2004-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	* flumotion/manager/main.py:
	* flumotion/worker/Makefile.am:
	* flumotion/worker/job.py:
	* flumotion/worker/launcher.py:
	* flumotion/worker/main.py:
	  synchronize more options
	  make admin client log in with ssl as well

2004-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/manager/flumotion.pem:
	  add a dummy cert
	* configure.ac:
	  add SYSCONFDIR
	* flumotion/config/installed.py.in:
	* flumotion/config/uninstalled.py.in:
	  add configdir
	* flumotion/manager/main.py:
	* flumotion/twisted/cred.py:
	* flumotion/worker/job.py:
	* flumotion/worker/launcher.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  implement SSL option (-t on worker and manager)

2004-10-13  Johan Dahlin  <johan@gnome.org>

	* flumotion/common/Makefile.am: Add setup.py

	* configure.ac:
	* data/glade/wizard_overlay.glade:
	* flumotion/component/Makefile.am:
	* flumotion/component/encoders/jpeg.py:
	* flumotion/component/encoders/mulaw.py:
	* flumotion/component/encoders/smoke.py:
	* flumotion/component/encoders/speex.py:
	* flumotion/component/encoders/theora.py:
	* flumotion/component/encoders/vorbis.py:
	* flumotion/component/muxers/Makefile.am:
	* flumotion/component/muxers/__init__.py:
	* flumotion/component/muxers/muxers.xml:
	* flumotion/component/muxers/ogg.py:
	* flumotion/component/soundcard/Makefile.am:
	* flumotion/component/soundcard/__init__.py:
	* flumotion/component/soundcard/soundcard.py:
	* flumotion/component/soundcard/soundcard.xml:
	* flumotion/component/webcam/Makefile.am:
	* flumotion/component/webcam/__init__.py:
	* flumotion/component/webcam/webcam.py:
	* flumotion/component/webcam/webcam.xml:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard_step.py:

	Fix headers for encoders. Add ogg muxer, soundcard and webcam
	components.
	We can now actually parse the default output of the wizard.
	
2004-10-12  Johan Dahlin  <johan@gnome.org>

	* configure.ac:
	* flumotion/component/encoders/Makefile.am:
	* flumotion/component/encoders/encoders.xml:
	* flumotion/component/encoders/mulaw.py:
	* flumotion/component/encoders/speex.py:
	* flumotion/component/encoders/vorbis.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard_step.py:

	And audio encoders.
	
2004-10-12  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/Makefile.am:
	* flumotion/component/encoders/Makefile.am:
	* flumotion/component/encoders/__init__.py:
	* flumotion/component/encoders/encoders.xml:
	* flumotion/component/encoders/jpeg.py:
	* flumotion/component/encoders/smoke.py:
	* flumotion/component/encoders/theora.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard_step.py:

	Add video encoders.
	
2004-10-12  Johan Dahlin  <johan@gnome.org>

	* bin/flumotion-admin.in:
	* flumotion/admin/gtk/client.py:
	* flumotion/wizard/Makefile.am:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/save.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/wizard_step.py:

	Make the wizard spit out proper configuration files. Now we just
	need to write all these components. Ignore all UserWarnings,
	perhaps this is the wrong workaround for broken gtk2reactor.
	
	
2004-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/http/http.py:
	  make PROPFIND return 501

2004-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/http/http.py:
	  make HEAD requests work

2004-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/ogg-test-theora-bouncer.xml:
	* conf/ogg-test-theora.xml:
	  add <feed>s
	* flumotion/component/http/http.py:
	  revert back to my last version to fix bugs one by one

2004-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* flumotion/component/Makefile.am:
	* flumotion/component/bouncer.py:
	* flumotion/component/bouncer.xml:
	* flumotion/component/bouncers/Makefile.am:
	* flumotion/component/bouncers/__init__.py:
	* flumotion/component/bouncers/bouncer.py:
	* flumotion/component/bouncers/bouncer.xml:
	  bounce the bouncer around

2004-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/keycards.py:
	* flumotion/component/bouncer.py:
	* flumotion/component/http/http.py:
	  implement duration and expire

2004-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	* flumotion/test/test_manager.py:
	  uniformize, privatize, rewrite, remove, restructure

2004-10-12  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/http/http.py:
	Allow grids without a bouncer. Refactor stuff a little bit. Show 
	a better error message for PROPFIND requests.

	* data/glade/Makefile.am:
	* data/glade/wizard.glade:
	* data/glade/wizard_welcome.glade:
	* flumotion/admin/gtk/client.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/wizard_step.py:

	Add a welcome step, add --wizard argument to flumotion-admin and
	run the wizard from there instead.

2004-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	* flumotion/test/test_manager.py:
	  uniformize and privatize getComponent(Eaters/Feeders)Data

2004-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/component.py:
	* flumotion/component/http/http.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	  move ui file bundling to base class and formalize a bit

2004-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/Makefile.am:
	* flumotion/common/interfaces.py:
	* flumotion/common/keycards.py:
	* flumotion/component/bouncer.py:
	* flumotion/component/http/http.py:
	* flumotion/manager/component.py:
	* flumotion/test/test_http.py:
	  make keycards module.  bouncer now works.

2004-10-11  Johan Dahlin  <johan@gnome.org>

	* Makefile.am:
	* bin/flumotion-admin.in:
	* bin/flumotion-worker.in:
	* bin/flumotion.in:
	* doc/reference/gendoc.py:
	* flumotion/common/setup.py:
	* flumotion/config/__init__.py:
	* flumotion/config/setup.py:
	* flumotion/test/common.py:
	* flumotion/tools/show-coverage:
	
	Add tool to show coverage. Clean up flumotion.config a little
	bit. There is now a common function (flumotion.config.setup.setup)
	to initialize parts, it should probably be made a little bit more
	flexible, but that's for later

2004-10-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/ogg-test-theora-bouncer.xml:
	* flumotion/common/keycard.py:
	* flumotion/component/component.py:
	* flumotion/component/http/http.py:
	* flumotion/manager/component.py:
	* flumotion/worker/job.py:
	  add a keycard.py, make keycard remote copyable
	  send the keycard to the manager, which returns True for now
	  next step: to the bouncer !

2004-10-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/common/interfaces.py:
	* flumotion/component/bouncer.py:
	* flumotion/component/component.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/http/http.py:
	* flumotion/manager/manager.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  We have a new name for an Avatar's sidekick: Medium
	  use it everywhere

2004-10-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/ogg-test-vorbis-theora.xml:
	* flumotion/common/config.py:
	* flumotion/component/base/base.xml:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/http/http.py:
	* flumotion/component/http/http.xml:
	* flumotion/manager/component.py:
	* flumotion/manager/worker.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  a bunch of changes allowing non-feed components to start up.
	  still needs some work.

2004-10-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/config/installed.py.in:
	* flumotion/config/uninstalled.py.in:
	  add version number

2004-10-07  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/http/http.py
	(HTTPStreamingResource._render): Fix HEAD and PROPFIND for
	component, so gnome-vfs 2.6.0 can sniff the content-type without
	barking. 
	
	* flumotion/common/registry.py (ComponentRegistry.getFileList):
	Make it recursive

	* flumotion/test/test_registry.py (TestFindComponents): and add
	some tests

2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/Makefile.am:
	* flumotion/manager/manager.py:
	* flumotion/twisted/cred.py:
	* flumotion/twisted/portal.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  remove confusion, add comments

2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/Makefile.am:
	* flumotion/component/base/converter.py:
	* flumotion/component/base/producer.py:
	* flumotion/component/component.py:
	* flumotion/component/feedcomponent.py:
	* flumotion/component/file/file.py:
	* flumotion/component/http/http.py:
	* flumotion/test/test_component.py:
	  separate out feedcomponent to a separate file

2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/admin/admin.py:
	* flumotion/common/interfaces.py:
	* flumotion/component/component.py:
	* flumotion/component/http/http.py:
	* flumotion/manager/manager.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  rename interfaces for the views that handle remote calls from
	  manager
	  split out FeedComponent from BaseComponent in preparation for
	  other types of component

2004-10-05  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard.glade:
	* flumotion/test/Makefile.am:
	* flumotion/test/test_enum.py:
	* flumotion/wizard/Makefile.am:
	* flumotion/wizard/enums.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/wizard_step.py:

	More enum work.

2004-10-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/common/launcher.py:
	* flumotion/component/component.py:
	* flumotion/manager/component.py:
	* flumotion/worker/job.py:
	* flumotion/worker/launcher.py:
	  make server/client factory explicit

2004-10-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* TODO:
	* bin/flumotion-worker.in:
	* bin/flumotion.in:
	* conf/Makefile.am:
	* conf/complex.xml:
	* conf/ogg-test-theora.xml:
	* conf/ogg-test-vorbis-theora.xml:
	* conf/videotest-jpeg.xml:
	* flumotion/component/component.py:
	* flumotion/component/http/http.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/test/Makefile.am:
	* flumotion/test/common.py:
	* flumotion/test/test_component.py:
	* flumotion/test/test_manager.py:
	* flumotion/utils/log.py:
	* flumotion/worker/Makefile.am:
	* flumotion/worker/job.py:
	* flumotion/worker/report.py:
	* flumotion/worker/worker.py:
	  merge diffs between revision 681 on branch and trunk to trunk

2004-10-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	branch: johan-workers

	* flumotion/manager/component.py:
	  and this should fix that problem by delaying adding of the component
	  avatar to the feeder

2004-10-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	branch: johan-workers

	* flumotion/manager/component.py:
	  I guess this explains why I get random tracebacks in the manager.
	  This means I can go home and fix it on monday.

2004-10-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	branch: johan-workers

	* TODO:
	* flumotion/test/Makefile.am:
	  make test dir stop "make" on errors
	* flumotion/manager/component.py:
	* flumotion/test/test_manager.py:
	  some more cleanups

2004-10-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	branch: johan-workers

	* Makefile.am:
	* TODO:
	* conf/complex.xml:
	* flumotion/component/component.py:
	* flumotion/component/http/http.py:
	* flumotion/manager/component.py:
	* flumotion/manager/worker.py:
	* flumotion/test/common.py:
	* flumotion/test/test_component.py:
	* flumotion/test/test_manager.py:
	* flumotion/worker/job.py:
	* flumotion/worker/worker.py:
	  server starts up now in the correct order, yay !

2004-09-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	branch: johan-workers

	* flumotion/component/component.py:
	* flumotion/manager/component.py:
	  finally arrived at the next error

2004-09-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	branch: johan-workers

	* flumotion/utils/log.py:
	  add PID
	* flumotion/component/component.py:
	* flumotion/manager/component.py:
	* flumotion/worker/__init__.py:
	* flumotion/worker/job.py:
	* flumotion/worker/launcher.py:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  clear up confusion with feedName, feederName, and friends
	  document and comment

2004-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/worker.py:
	* flumotion/worker/job.py:
	* flumotion/worker/main.py:
	* flumotion/worker/report.py:
	* flumotion/worker/worker.py:
	  merging report functionality with worker.py
	  clean up and comment

2004-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	branch: johan-workers

	* bin/flumotion-worker.in:
	  make it just like flumotion.in
	* flumotion/worker/Makefile.am:
	* flumotion/worker/main.py:
	* flumotion/worker/worker.py:
	  split it up similarly to manager

2004-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/ogg-test-theora.xml:
	  use username and password and stuff
	* flumotion/worker/job.py:
	* flumotion/worker/report.py:
	* flumotion/worker/worker.py:
	  rename some objects, restructure main()

2004-09-30  Johan Dahlin  <johan@gnome.org>

	* data/glade/Makefile.am:
	* data/glade/wizard.glade:
	* data/glade/wizard_audio_encoder.glade:
	* data/glade/wizard_audiosource.glade:
	* data/glade/wizard_consumption.glade:
	* data/glade/wizard_disk.glade:
	* data/glade/wizard_encoding.glade:
	* data/glade/wizard_firewire.glade:
	* data/glade/wizard_http.glade:
	* data/glade/wizard_jpeg.glade:
	* data/glade/wizard_overlay.glade:
	* data/glade/wizard_smoke.glade:
	* data/glade/wizard_source.glade:
	* data/glade/wizard_testsource.glade:
	* data/glade/wizard_theora.glade:
	* data/glade/wizard_tvcard.glade:
	* data/glade/wizard_webcam.glade:
	* flumotion/wizard/Makefile.am:
	* flumotion/wizard/__init__.py:
	* flumotion/wizard/wizard.py:
	* flumotion/wizard/wizard_step.py: 

	More wizard work. Most pages in
	place and pretty functional. No configuration saving yet. Need a
	little bit more logic aswell.

2004-09-28  Johan Dahlin  <johan@gnome.org>

	* data/glade/wizard.glade:
	* data/glade/wizard_audiosource.glade:
	* data/glade/wizard_source.glade:
	* data/glade/wizard_testsource.glade:
	* data/glade/wizard_tvcard.glade:
	* flumotion/wizard/wizard_step.py:

	Do some more wizard work

2004-09-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac: bump nano version for development

=== release 0.0.1 ===

2004-09-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac: releasing 0.0.1, "Backsy"

2004-09-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/Makefile.am:
	  getting ready for release, disable nonworking stuff from install
	* flumotion/component/component.py:
	  give more info in a warning

2004-09-28  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	* bin/flumotion-tester.in:
	* bin/flumotion-worker.in:
	* bin/flumotion.in:
	* bin/runtest.in:
	* doc/random/header.py:
	* flumotion/__init__.py:
	* flumotion/admin/__init__.py:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/__init__.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	* flumotion/admin/gtk/spyglass.py:
	* flumotion/admin/gtk/videotest.py:
	* flumotion/common/__init__.py:
	* flumotion/common/auth.py:
	* flumotion/common/bundle.py:
	* flumotion/common/common.py:
	* flumotion/common/config.py:
	* flumotion/common/errors.py:
	* flumotion/common/interfaces.py:
	* flumotion/common/launcher.py:
	* flumotion/common/registry.py:
	* flumotion/component/__init__.py:
	* flumotion/component/base/__init__.py:
	* flumotion/component/base/converter.py:
	* flumotion/component/base/producer.py:
	* flumotion/component/bttv/__init__.py:
	* flumotion/component/bttv/bttv.py:
	* flumotion/component/component.py:
	* flumotion/component/dv/__init__.py:
	* flumotion/component/dv/dv.py:
	* flumotion/component/file/__init__.py:
	* flumotion/component/file/file.py:
	* flumotion/component/http/__init__.py:
	* flumotion/component/http/gtk.py:
	* flumotion/component/http/http.py:
	* flumotion/component/multipartjpeg/__init__.py:
	* flumotion/component/multipartjpeg/multipartjpeg.py:
	* flumotion/component/overlay/__init__.py:
	* flumotion/component/overlay/overlay.py:
	* flumotion/component/passwd/__init__.py:
	* flumotion/component/passwd/passwd.py:
	* flumotion/component/videotest/__init__.py:
	* flumotion/component/videotest/videotest.py:
	* flumotion/config/__init__.py:
	* flumotion/config/installed.py.in:
	* flumotion/config/uninstalled.py.in:
	* flumotion/manager/__init__.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/main.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/test/__init__.py:
	* flumotion/test/common.py:
	* flumotion/test/test_bundle.py:
	* flumotion/test/test_common.py:
	* flumotion/test/test_component.py:
	* flumotion/test/test_config.py:
	* flumotion/test/test_flumotion_config.py:
	* flumotion/test/test_http.py:
	* flumotion/test/test_log.py:
	* flumotion/test/test_manager.py:
	* flumotion/test/test_registry.py:
	* flumotion/tester/__init__.py:
	* flumotion/tester/client.py:
	* flumotion/tester/clientfactory.py:
	* flumotion/tester/httpclient.py:
	* flumotion/twisted/__init__.py:
	* flumotion/twisted/cred.py:
	* flumotion/twisted/gstreactor.py:
	* flumotion/twisted/pbutil.py:
	* flumotion/twisted/portal.py:
	* flumotion/twisted/shell.py:
	* flumotion/utils/__init__.py:
	* flumotion/utils/gstutils.py:
	* flumotion/utils/log.py:
	* flumotion/utils/reload.py:
	* flumotion/worker/__init__.py:
	* flumotion/worker/job.py:
	* flumotion/worker/launcher.py:
	* flumotion/worker/report.py:
	* flumotion/worker/worker.py:
	  synchronize headers of source code

2004-09-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/utils/Makefile.am:
	  install reload.py

2004-09-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/test/test_common.py:
	  nicely format time with common.formatTime()

2004-09-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/common.py:
	* flumotion/component/http/http.py:
	  display SI units

2004-09-25  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/common/common.py:
	* flumotion/test/Makefile.am:
	* flumotion/test/test_common.py:
	  A slight case of overengineering.
	  At least we follow SI units correctly now.

2004-09-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	  remove spyglass for now
	* flumotion/manager/manager.py:
	  rename and privatize sensibly

2004-09-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/component.py:
	  fix reload.  Fixes revision 596.

2004-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/http/http.py:
	  handle add and remove by putting them on a lock-protected queue
	  instead of using gobject-y stuff.

2004-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/http/http.py:
	  comment out the right signal emission to see if it fixes problems

2004-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/http/http.py:
	  disable a signal emission to see if it keeps the server going

2004-09-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/component.py:
	  components -> avatars
	  rename and privatize addComponent to _addAvatar
	* flumotion/manager/manager.py:
	  getAvatarFor -> createAvatarFor
	* flumotion/test/test_manager.py:
	  rename Perspective to Avatar

2004-09-22  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/manager.py:
	  commenting some more, privatize a function

2004-09-17  Johan Dahlin  <johan@gnome.org>

	* flumotion/common/config.py:
	* flumotion/common/registry.py:
	* flumotion/config/__init__.py:
	* flumotion/manager/worker.py:
	* flumotion/test/Makefile.am:
	* flumotion/test/test_config.py:
	* flumotion/utils/log.py:

	Move test_config to test_flumotion_config and add test_config for
	common/config. Write test suite for test_config and fix a couple
	of bugs meanwhile.
	
2004-09-17  Johan Dahlin  <johan@gnome.org>

	* flumotion/component/http/http.py: Implement admin-password,
	fixes Ticket #10 

	* flumotion/manager/worker.py: Make <workers> optional

	* bin/flumotion-tester.in: Move imports down a little bit.

	* flumotion/component/http/http.py
	(MultifdSinkStreamer.client_removed_idle): Don't close the file
	descriptor here.
	(HTTPStreamingResource.removeClient): Call request.finish() and
	let python/twisted take care of closing the fd. Fixes a number of
	bugs. Together with latest version of multifdsink we have a much
	more stable server.

2004-09-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/component/http/http.py:
	  update at most once every second.  re-enable updating but not
	  with idle_add, but boolean, which doesn't care if it's threadsafe.

2004-09-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-tester.in:
	* flumotion/tester/client.py:
	* flumotion/tester/clientfactory.py:
	* flumotion/tester/httpclient.py:
	  provide a decent set of options to influence behaviour of static
	  http clients

2004-09-16  Johan Dahlin  <johan@gnome.org>

	* flumotion/common/config.py: 
	Add basic support for <workers> and <worker> and worker on component

	* flumotion/admin/admin.py:
	* flumotion/component/component.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/twisted/Makefile.am:
	* flumotion/twisted/cred.py:
	* flumotion/twisted/pbutil.py:

	Deprecate pbutil.ReallyAllowAnonymousAcces and replace it by
	cred.FlexibleCredentials, for which we can turn on/off anonymous
	access whenever we want.
	
2004-09-16  Johan Dahlin  <johan@gnome.org>

	* flumotion/worker/job.py:
	* flumotion/worker/report.py:
	* flumotion/worker/worker.py:

	Proper command line parsing for worker/job

2004-09-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/http/http.py:
	  disable idle_add from other threads for now; we run into GIL
	  lock stalls.  An idea might be to just set a self.changed boolean
	  and have a callLater from the main thread repeatedly check and
	  signal ui changed.

2004-09-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/http/http.py:
	  threading fixes, twisted now "sees" only on thread
	  first pass at fixing race issues
	  now needs gst-plugins 0.8.4.1 (cvs)

2004-09-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-tester.in:
	* flumotion/tester/client.py:
	* flumotion/tester/httpclient.py:
	  more cleanup

2004-09-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/Makefile.am:
	* bin/flumotion-tester.in:
	* configure.ac:
	* flumotion/Makefile.am:
	* flumotion/tester/__init__.py:
	* flumotion/tester/client.py:
	* flumotion/tester/httpclient.py:
	  add tester classes and application, also needs cleanup

2004-09-15  Johan Dahlin  <johan@gnome.org>

	* bin/runtest.in: make it a little bit smarter

	* flumotion/common/registry.py (ComponentRegistry.addFromString):
	new method, helps testing
	(ComponentRegistry.hasComponent): Fix a bug, use self.components
	instead of self.component

	* flumotion/test/test_registry.py: New file, to test basic parsing

2004-09-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/test/test_log.py:
	  unfuck test

2004-09-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/common/bundle.py:
	* flumotion/common/launcher.py:
	* flumotion/component/component.py:
	* flumotion/component/http/gtk.py:
	* flumotion/component/http/http.glade:
	* flumotion/component/http/http.py:
	* flumotion/component/http/http.xml:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	  make http statistics work.  Needs more cleanup and discussion.

2004-09-15  Johan Dahlin  <johan@gnome.org>

	* flumotion/worker/job.py:
	* flumotion/worker/launcher.py:
	* flumotion/worker/report.py:
	* flumotion/worker/worker.py:

	Shutdown cleanly.

2004-09-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundle.py:
	* flumotion/test/test_bundle.py:
	  add relative paths to bundle

2004-09-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundle.py:
	* flumotion/test/test_bundle.py:
	  test unbundler

2004-09-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/common/bundle.py:
	* flumotion/test/test_bundle.py:
	  rework bundle to also have unbundler

2004-09-14  Johan Dahlin  <johan@gnome.org>

	* bin/runtest.in (olddir): script to run tests

	* flumotion/component/http/http.py (MultifdSinkStreamer.notify_caps_cb) 
	(MultifdSinkStreamer.update_ui_state): Use idle_add to emit
	signals, to ensure that they are sent from the main thread

	* flumotion/worker: Commit worker, still WIP

	* flumotion/test/test_log.py:
	Add, 2 tests skipped now, will handle them later

2004-09-14  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/Makefile.am:
	* data/glade/http.glade:
	  add UI for http component

2004-09-14  Johan Dahlin  <johan@gnome.org>

	* flumotion/test/: Move testsuite over here and use trial.

	* flumotion/manager/worker.py (WorkerHeaven): Clean up, almost
	ready for general consumption.

	* flumotion/manager/component.py (ComponentAvatar.getListenHost):
	Support new and old twisted code for getting the host

	* flumotion/manager/admin.py (AdminAvatar):
	I don't implement IHeaven, really.

	* flumotion/manager/main.py: New file, currently unused

	* flumotion/common/config.py (ConfigEntry.getWorker): 
	Add dummy getWorker() method

	* testsuite/tests/log.py (TestLog.testLogHandlerAssertion): Add test

	* flumotion/utils/log.py (addLogHandler): Doc fix, add pedantic
	assertion.

2004-09-13  Johan Dahlin  <johan@gnome.org>

	* conf/minmal.xml: add a minimal configuration for testing purposes.

2004-09-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* flumotion/utils/log.py:
	* testsuite/tests/log.py:
	  add tests for logging

2004-09-13  Johan Dahlin  <johan@gnome.org>

	* flumotion/common/bundle.py:
	* flumotion/component/component.py:
	* flumotion/component/http/http_gui.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* testsuite/tests/bundle.py:
	
	Documentation updates. Bundle fixes.
	
2004-09-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/component/Makefile.am:
	* flumotion/config/Makefile.am:
	* flumotion/manager/Makefile.am:
	* flumotion/twisted/Makefile.am:
	* flumotion/utils/Makefile.am:
	* flumotion/worker/Makefile.am:
	  adding ctags generation

2004-09-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/component.py:
	* flumotion/manager/component.py:
	  remove depreciation warnings

2004-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/bttv/bttv.py:
	  import producer correctly

2004-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/admin.py:
	  change componentmanager to c-heaven

2004-09-10  Johan Dahlin  <johan@gnome.org>

	* doc/reference/Makefile.am:
	* flumotion/common/launcher.py:
	* flumotion/manager/Makefile.am:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* flumotion/manager/worker.py:
	* flumotion/utils/log.py:
	* flumotion/worker/launcher.py:
	* flumotion/worker/worker.py:

	Merge in new manager code, add a worker heaven and clean up the
	relation between the different heavens. Best of all, we now have
	a Vishnu object.

2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	* flumotion/admin/admin.py:
	* flumotion/common/bundle.py:
	* flumotion/common/interfaces.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/manager.py:
	  various doc fixes

2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/Makefile.am:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	  small bugfixes
	* flumotion/common/Makefile.am:
	* flumotion/common/bundle.py:
	* testsuite/tests/Makefile.am:
	* testsuite/tests/bundle.py:
	  add module for bundling of files into a zip with caching
	* testsuite/tests/config.py:
	  fix test

2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component/http/http.py:
	* flumotion/component/http/http_gui.py:
	  use getStats() for HTML stats page as well

2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/glade/admin.glade:
	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	  abstract tie between model and view further.
	  add a reload of only one component to speed up debugging.

2004-09-09  Johan Dahlin  <johan@gnome.org>

	* bin/Makefile.am:
	* bin/flumotion-admin.in:
	* bin/flumotion-worker.in:
	* configure.ac:
	* flumotion/Makefile.am:
	* flumotion/manager/component.py:
	* flumotion/worker/Makefile.am:
	* flumotion/worker/__init__.py:
	* flumotion/worker/launcher.py:
	* flumotion/worker/worker.py:

	Add basic worker script
	
2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/http/http.py:
	* flumotion/component/http/http_gui.py:
	  rearranging some code so I understand what to do tomorrow.

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/component/component.py:
	* flumotion/component/http/http.py:
	* flumotion/component/http/http_gui.py:
	* flumotion/manager/component.py:
	  layout statistics more nicely.  Add peak time.

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	  make progress dialog a bit better, with updates on what it's reloading

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	  change interface according to suggestions

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/gtk/Makefile.am:
	* flumotion/admin/gtk/client.py:
	* flumotion/admin/gtk/dialogs.py:
	  add a Gtk progress dialog

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/admin.py:
	* flumotion/admin/gtk/client.py:
	  change clients to components.

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	* configure.ac:
	* flumotion/admin/__init__.py:
	* flumotion/admin/adminclient.py:
	* flumotion/admin/admininterface.py:
	* flumotion/admin/gtk/Makefile.am:
	* flumotion/admin/gtk/__init__.py:
	  move actual client to gtk

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	* configure.ac:
	* flumotion/Makefile.am:
	* flumotion/admin/adminclient.py:
	* flumotion/gui/adminclient.py:
	* flumotion/gui/admininterface.py:
	* flumotion/gui/streamclient.py:
	* flumotion/manager/manager.py:
	  move gui to admin

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* doc/reference/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/common/launcher.py:
	* flumotion/manager/Makefile.am:
	* flumotion/manager/config.py:
	  move manager.config to common

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion.in:
	* flumotion/manager/registry.py:
	  put registry in homedir.  create higher-level directories.
	  turn on logging before registry checks.

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* autogen.sh:
	* configure.ac:
	  remove autoheader and related things
	* data/Makefile.am:
	* data/registry/Makefile.am:
	  remove
	* data/registry/basecomponents.xml:
	* flumotion/config/installed.py.in:
	* flumotion/config/uninstalled.py.in:
	  add registrydir config setting
	  put installed version in homedir
	* flumotion/manager/registry.py:
	  change to components.xml

2004-09-08  Johan Dahlin  <johan@gnome.org>

	* flumotion/manager/admin.py (AdminHeaven): 
	* flumotion/manager/component.py (ComponentHeaven): Implement
	IHeaven interface

	* flumotion/common/interfaces.py (IHeaven.removeAvatar): Add a
	bunch of new interfaces

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/Makefile.am:
	* testsuite/Makefile.am:
	* testsuite/runtests.py:
	  first stab at making make distcheck work again

2004-09-08  Johan Dahlin  <johan@gnome.org>

	* tests/manager.py: update tests.

	* flumotion/manager/component.py (ComponentHeaven): rename and
	move from manager.Manager

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* configure.ac:
	* tests/Makefile.am:
	* tests/common.py.in:
	* tests/runtests.py:
	* tests/tests/Makefile.am:
	* tests/tests/component_http.py:
	* tests/tests/component_parse.py:
	* tests/tests/config.py:
	* tests/tests/manager.py:
	* tests/webbie.py:
	  move to testsuite

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* tests/Makefile.am:
	* tests/config.py:
	* tests/manager.py:
	* tests/runtests.py:
	* tests/test_component_parse.py:
	* tests/test_http.py:
	  move actual tests to a subdir

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion.in:
	* doc/reference/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/manager/Makefile.am:
	* flumotion/manager/launcher.py:
	  move launcher to common

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/component/http/http.py:
	* flumotion/manager/Makefile.am:
	* flumotion/manager/auth.py:
	  move auth to common

2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>

	* TODO:
	* bin/flumotion.in:
	* configure.ac:
	* doc/reference/Makefile.am:
	* flumotion/Makefile.am:
	* flumotion/common/Makefile.am:
	* flumotion/component/Makefile.am:
	* flumotion/component/base/Makefile.am:
	* flumotion/component/bttv/Makefile.am:
	* flumotion/component/component.py:
	* flumotion/component/dv/Makefile.am:
	* flumotion/component/file/Makefile.am:
	* flumotion/component/http/Makefile.am:
	* flumotion/component/http/http.py:
	* flumotion/component/multipartjpeg/Makefile.am:
	* flumotion/component/overlay/Makefile.am:
	* flumotion/component/passwd/Makefile.am:
	* flumotion/component/passwd/passwd.py:
	* flumotion/component/videotest/Makefile.am:
	* flumotion/config/Makefile.am:
	* flumotion/errors.py:
	* flumotion/gui/Makefile.am:
	* flumotion/gui/adminclient.py:
	* flumotion/gui/admininterface.py:
	* flumotion/interfaces.py:
	* flumotion/manager/Makefile.am:
	* flumotion/manager/admin.py:
	* flumotion/manager/auth.py:
	* flumotion/manager/component.py:
	* flumotion/manager/interfaces.py:
	* flumotion/manager/manager.py:
	* flumotion/twisted/Makefile.am:
	* flumotion/twisted/errors.py:
	* flumotion/utils/Makefile.am:
	* flumotion/utils/gstutils.py:
	* flumotion/utils/log.py:
	* flumotion/utils/proctitle.py:
	* tests/test_http.py:
	  create flumotion.common and put errors and interfaces there
	  remove proctitle
	  add a clean-local rule everywhere for .pyc and .pyo

2004-09-08  Johan Dahlin  <johan@gnome.org>

	* flumotion/manager/launcher.py (Launcher.launch_component): Clean
	up here aswell, so we have a better idea what needs to be sent
	over the wire

	* flumotion/manager/config.py: Cleanup considerable, try to do
	things at the same place

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/Makefile.am:
	* flumotion/manager/admin.py:
	* flumotion/manager/component.py:
	* flumotion/manager/manager.py:
	* tests/manager.py:
	  created manager/component.py, yay !

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/manager/admin.py:
	* flumotion/manager/manager.py:
	  change doc crosslinks to match

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	* flumotion/component/Makefile.am:
	* flumotion/component/base/converter.py:
	* flumotion/component/base/producer.py:
	* flumotion/component/file/file.py:
	* flumotion/component/http/http.py:
	* flumotion/component/passwd/passwd.py:
	* flumotion/manager/Makefile.am:
	* flumotion/manager/component.py:
	* flumotion/manager/launcher.py:
	* tests/test_component_parse.py:
	  move server.component to component.component, yay

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* data/registry/basecomponents.xml:
	* doc/reference/Makefile.am:
	* flumotion/Makefile.am:
	* flumotion/component/Makefile.am:
	* flumotion/component/base/Makefile.am:
	* flumotion/component/base/base.xml:
	* flumotion/component/bttv/Makefile.am:
	* flumotion/component/bttv/bttv.py:
	* flumotion/component/bttv/bttv.xml:
	* flumotion/component/dv/Makefile.am:
	* flumotion/component/dv/dv.py:
	* flumotion/component/dv/dv.xml:
	* flumotion/component/file/Makefile.am:
	* flumotion/component/file/file.xml:
	* flumotion/component/http/Makefile.am:
	* flumotion/component/http/http.xml:
	* flumotion/component/multipartjpeg/Makefile.am:
	* flumotion/component/multipartjpeg/multipartjpeg.py:
	* flumotion/component/multipartjpeg/multipartjpeg.xml:
	* flumotion/component/overlay/Makefile.am:
	* flumotion/component/overlay/overlay.py:
	* flumotion/component/overlay/overlay.xml:
	* flumotion/component/passwd/Makefile.am:
	* flumotion/component/passwd/passwd.xml:
	* flumotion/component/videotest/Makefile.am:
	* flumotion/component/videotest/videotest.py:
	* flumotion/component/videotest/videotest.xml:
	* flumotion/components/Makefile.am:
	* flumotion/components/__init__.py:
	* flumotion/components/base/Makefile.am:
	* flumotion/components/base/__init__.py:
	* flumotion/components/base/base.xml:
	* flumotion/components/base/converter.py:
	* flumotion/components/base/producer.py:
	* flumotion/components/bttv/Makefile.am:
	* flumotion/components/bttv/__init__.py:
	* flumotion/components/bttv/bttv.py:
	* flumotion/components/bttv/bttv.xml:
	* flumotion/components/dv/Makefile.am:
	* flumotion/components/dv/__init__.py:
	* flumotion/components/dv/dv.py:
	* flumotion/components/dv/dv.xml:
	* flumotion/components/file/Makefile.am:
	* flumotion/components/file/__init__.py:
	* flumotion/components/file/file.py:
	* flumotion/components/file/file.xml:
	* flumotion/components/http/Makefile.am:
	* flumotion/components/http/__init__.py:
	* flumotion/components/http/http.py:
	* flumotion/components/http/http.xml:
	* flumotion/components/http/http_gui.py:
	* flumotion/components/multipartjpeg/Makefile.am:
	* flumotion/components/multipartjpeg/__init__.py:
	* flumotion/components/multipartjpeg/multipartjpeg.py:
	* flumotion/components/multipartjpeg/multipartjpeg.xml:
	* flumotion/components/overlay/Makefile.am:
	* flumotion/components/overlay/__init__.py:
	* flumotion/components/overlay/overlay.py:
	* flumotion/components/overlay/overlay.xml:
	* flumotion/components/passwd/Makefile.am:
	* flumotion/components/passwd/__init__.py:
	* flumotion/components/passwd/passwd.py:
	* flumotion/components/passwd/passwd.xml:
	* flumotion/components/videotest/Makefile.am:
	* flumotion/components/videotest/__init__.py:
	* flumotion/components/videotest/videotest.py:
	* flumotion/components/videotest/videotest.xml:
	* flumotion/manager/Makefile.am:
	* flumotion/manager/registry.py:
	* tests/test_http.py:
	  flumotion.components -> flumotion.component

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion.in:
	* configure.ac:
	* doc/reference/Makefile.am:
	* flumotion/Makefile.am:
	* flumotion/components/base/converter.py:
	* flumotion/components/base/producer.py:
	* flumotion/components/file/file.py:
	* flumotion/components/http/http.py:
	* flumotion/components/passwd/passwd.py:
	* flumotion/gui/adminclient.py:
	* flumotion/gui/admininterface.py:
	* flumotion/manager/admin.py:
	* flumotion/manager/auth.py:
	* flumotion/manager/component.py:
	* flumotion/manager/config.py:
	* flumotion/manager/launcher.py:
	* flumotion/manager/manager.py:
	* flumotion/server/Makefile.am:
	* flumotion/server/__init__.py:
	* flumotion/server/admin.py:
	* flumotion/server/auth.py:
	* flumotion/server/component.py:
	* flumotion/server/config.py:
	* flumotion/server/interfaces.py:
	* flumotion/server/launcher.py:
	* flumotion/server/manager.py:
	* flumotion/server/registry.py:
	* tests/manager.py:
	* tests/test_component_parse.py:
	* tests/test_http.py:

	  move server to manager.  First stab, now need to move parts
	  not related to manager out.

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/admin.py:
	  subclass log.Loggable

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	  hide line
	* flumotion/server/manager.py:
	* tests/manager.py:
	  change FeederManager to FeederSet

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/components/base/converter.py:
	* flumotion/components/base/producer.py:
	* flumotion/components/file/file.py:
	* flumotion/components/http/http.py:
	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/manager.py:
	* tests/manager.py:
	* tests/test_component_parse.py:
	  use eaters and feeders as names for feeded and feeding elements

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/manager.py:
	* flumotion/utils/gstutils.py:
	* flumotion/utils/log.py:
	  documentation and method renaming/ordering

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	  add check-local that lets us know what we forgot
	* doc/reference/gendoc.py:
	* flumotion/gui/adminclient.py:
	* flumotion/gui/admininterface.py:
	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/launcher.py:
	* flumotion/server/manager.py:
	* flumotion/twisted/errors.py:
	  rename controller to manager

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/Makefile.am:
	* flumotion/server/controller.py:
	  rename to manager

2004-09-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/gui/admininterface.py:
	* flumotion/server/admin.py:
	* flumotion/server/controller.py:
	* flumotion/utils/__init__.py:
	  properly stack reload calls one after another

2004-09-07  Johan Dahlin  <johan@gnome.org>

	* flumotion/components/http/http.py:
	* flumotion/gui/adminclient.py:
	* flumotion/gui/admininterface.py:
	* flumotion/server/component.py:
	* flumotion/utils/gstutils.py:

	Added gsignal function to help install simple signals, use it over
	the code. Clean up component_view property slightly too.

2004-09-06  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/utils/log.py:
	  add timestamp similar to syslog

2004-09-06  Johan Dahlin  <johan@gnome.org>

	* flumotion/components/http/http.py:
	* flumotion/components/http/http_gui.py:
	* flumotion/gui/adminclient.py:
	* flumotion/gui/admininterface.py:
	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/controller.py:

	Add notifications to administrative interface, improve http view slightly

2004-09-06  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/launcher.py (Launcher): Enable core dumps by
	default and cleanup logging.

2004-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/gui/adminclient.py:
	* flumotion/gui/admininterface.py:
	  document and rename
	* flumotion/server/admin.py:
	  more avatar fixes
	* flumotion/server/component.py:
	  fix doc build warning
	* flumotion/server/controller.py:
	  more avatar fixes
	* flumotion/twisted/gstreactor.py:
	  fix doc build warning

2004-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/admin.py:
	  reorganize doc strings

2004-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/components/http/http.py:
	  self.error on blocked port
	* flumotion/server/admin.py:
	* flumotion/server/controller.py:
	  use Avatar instead of Perspective

2004-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/gstreactor.py:
	  print on KeyboardInterrupt until we figure out where the problem is.

2004-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/gui/adminclient.py:
	  properly handle error dialog.

2004-09-03  Johan Dahlin  <johan@gnome.org>

	* flumotion/components/http/http.py
	(HTTPStreamingAdminResource.render_stats): Start cleaning up the
	statistics so we eventually can move them to a separate class.

	* flumotion/server/config.py (ConfigEntry.getComponent): Move back 
	function and clean up slightly.
	
	* flumotion/components/http/http.py:
	* flumotion/components/http/http_gui.py:
	* flumotion/gui/admininterface.py:
	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/controller.py:

	Implement basic avatar proxy: to proxy method between the admin
	interface and the component interface. So far it's only one way
	and currently no error checking. Fixes Ticket #1

2004-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/config/__init__.py:
	  fix config with reload

2004-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/gui/admininterface.py:
	  fix callbacks for reload

2004-09-03  Johan Dahlin  <johan@gnome.org>

	* flumotion/gui/adminclient.py: Add an green icon for playing and
	a red one otherwise.

	* flumotion/server/controller.py: Make user interface work again

2004-09-02  Johan Dahlin  <johan@gnome.org>

	* flumotion/gui/admininterface.py (AdminInterface): Use debugging
	framework instead of prints

2004-09-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/launcher.py:
	* flumotion/utils/log.py:
	  remove enableLogging and disableLogging.  Use new method,
	  setFluDebug.  Make that reset levels on the fly as well.

2004-09-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/utils/log.py:
	  fix up debugging system, FLU_DEBUG now works like in GStreamer,
	  but with categories registered as they are encountered.

2004-09-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	* bin/flumotion.in:
	  trigger FLU_DEBUG parsing with debug.init
	* data/glade/admin.glade:
	  change name
	* flumotion/gui/adminclient.py:
	* flumotion/server/component.py:
	* flumotion/server/controller.py:
	* flumotion/utils/__init__.py:
	  add flumotion.utils.log to blacklist
	* flumotion/utils/log.py:
	  

2004-09-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion-admin.in:
	* flumotion/config/installed.py.in:
	* flumotion/config/uninstalled.py.in:
	  fix locations properly
	* flumotion/gui/adminclient.py:
	  set default icon

2004-09-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/Makefile.am:
	* bin/video-server-admin.in:
	* configure.ac:
	  rename video-server-admin to flumotion-admin

2004-09-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* data/Makefile.am:
	* data/image/fluendo.png:
	* data/ui/Makefile.am:
	* data/ui/admin.glade:
	* data/ui/spyglass.glade:
	* data/ui/videotest.glade:
	* flumotion/admin/spyglass.py:
	* flumotion/admin/videotest.py:
	* flumotion/gui/adminclient.py:
	  create data/image and data/glade
	  use it everywhere
	  add and set app icon

2004-09-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/video-server-admin.in:
	* flumotion/components/http/http.py:
	* flumotion/gui/adminclient.py:
	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/controller.py:
	  adding reload on all levels, works now
	* flumotion/twisted/errors.py:
	  add ReloadSyntaxError

2004-09-01  Johan Dahlin  <johan@gnome.org>

	* data/registry/basecomponents.xml:
	* flumotion/components/http/http.py:
	* flumotion/components/http/http.xml:
	* flumotion/components/http/http_gui.py:
	* flumotion/components/passwd/passwd.py:
	* flumotion/gui/adminclient.py:
	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/config.py:
	* flumotion/server/controller.py:
	* flumotion/server/registry.py: Add *very* basic support for transmitting
	user interface over the wire. Still full of hacks.

2004-09-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* data/ui/admin.glade:
	* flumotion/gui/adminclient.py:
	* flumotion/server/admin.py:
	* flumotion/server/controller.py:
	* flumotion/utils/__init__.py:
	  Add a Reload code button.  Add utility function to reload
	  flumotion modules.  And it actually works as well.

2004-09-01  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/gui/adminclient.py:
	  handle dialogs a bit nicer.
	  error dialogs for exceptions raised on controller or component.
	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/controller.py:
	  handle/forward exceptions
	* flumotion/twisted/errors.py:
	* flumotion/utils/gstutils.py:
	  better error messages for properties.
	  allow setting of strings.

2004-08-31  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/registry.py (ComponentRegistry): Implement
	saving and merging

	* flumotion/components: Split out to subdirectories and move out
	configuration to separate files

	* flumotion/twisted/portal.py (namedAny): Use a method of
	comparing the raised import message that actually works.

2004-08-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/admin.py:
	  clean up detached admin clients' perspective from Admin
	* flumotion/twisted/portal.py:
	  remove DEBUG print

2004-08-31  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/twisted/portal.py:
	  Copy and adapt namedAny to check for the actual textual message
	  instead of length of backtrace.  Issue filed in twisted as
	  http://www.twistedmatrix.com/users/roundup.twistd/twisted/issue698

2004-08-31  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/interfaces.py (IAdminComponent): Add a new interface

	* flumotion/server/controller.py (Dispatcher.requestAvatar): And
	use it here

	* flumotion/twisted/pbutil.py (FMClientFactory): New factory, to
	be used instead PBClientFactory

	* flumotion/gui/adminclient.py (AdminInterface.__init__): Use it here

	* flumotion/server/component.py (ComponentFactory.login): 

	* flumotion/twisted/pbutil.py
	(ReconnectingPBClientFactory.startLogin): 

	Make sure that all PBClientFactories that connect sends in
	IPerspective

2004-08-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/admin.py:
	* flumotion/server/controller.py:
	  clean up handling of mind
	* flumotion/utils/log.py:
	  fix functions for debug and log, duh.

2004-08-30  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/interfaces.py (IBaseComponent):
	* flumotion/server/controller.py (Dispatcher.requestAvatar): 
	* flumotion/twisted/portal.py:
	* flumotion/twisted/pbutil.py:
	Support different interfaces
	also add a base interface (IBaseComponent)
	which all components must inherit from
	unfortunately this involves copying a little bit of code
	from twisted, but what can we do?

2004-08-30  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/admin.py:
	* flumotion/server/controller.py:
	* flumotion/twisted/pbutil.py:
	  remove NewCredPerspective since it's a pb.Avatar and we override
	  attached and detached anyway

2004-08-27  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/gui/adminclient.py:
	* flumotion/server/admin.py:
	* flumotion/server/controller.py:
	  lots of documenting

2004-08-27  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/controller.py (__all__): Don't export private
	classes.
	(Feed.setReady): Use a boolean for ready instead of state, so we
	can remove silly enums.
	(Feed.isReady): New method

	* flumotion/server/error.py: Remove, since it was unused.

	* TODO: Add some more items

	* flumotion/components/http.py (HTTPStreamingAdminResource):
	Implement maxclient support

	* flumotion/components/file.py (FileStreamingResource): Show
	filename when restarting the component

2004-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/gui/adminclient.py:
	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/controller.py:
	* flumotion/utils/log.py:
	  various logging and commenting

2004-08-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/utils/log.py:
	  create Loggable class, to be subclassed, to handle logging
	* flumotion/components/converter.py:
	* flumotion/components/http.py:
	* flumotion/components/producer.py:
	* flumotion/gui/adminclient.py:
	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/config.py:
	* flumotion/server/controller.py:
	* flumotion/server/launcher.py:
	  subclass Loggable where-ever

2004-08-18  Johan Dahlin  <johan@gnome.org>

	* flumotion/components/file.py (FileSinkStreamer.__init__):
	Implement changing of filename
	(FileStreamingResource.__init__): New resource for auth interface
	(why is it called auth??)

	* flumotion/components/http.py (HTTPStreamingResource.setLogfile):
	Append logfile

	* data/registry/basecomponents.xml: Add auth-port to http-streamer

2004-08-18  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/component.py:
	  add all handlers

2004-08-17  Johan Dahlin  <johan@gnome.org>

	* tests/test_component_parse.py (PipelineTest.__init__): Call
	__gobject_init__ to avoid segfault.

	* flumotion/components/multipartjpeg.py (createComponent): Add quality

	* flumotion/server/component.py (BaseComponent.debug): Rename gst
	only functions to use gtk style

	* conf/videotest-jpeg.xml: remove big

2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/components/http.py:
	  fix average client code

2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/multipart-bttv-overlay-jpeg.xml:
	* data/registry/basecomponents.xml:
	* flumotion/components/bttv.py:
	  add channel choosing using interfaces
	* misc/flu.modules:
	  add jhbuild modules file

2004-08-17  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/component.py (ComponentView): New class with
	twisted specific interfaces
	(BaseComponent): remove twisted code and add signals for
	communication with it

	* conf/videotest-jpeg.xml: Change location of png file

2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/components/http.py:
	  log stats requests

2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/components/http.py:
	  get rid of traceback when no mimetype yet

2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/reference/Makefile.am:
	* tests/runtests.py:
	  fix distcheck

2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* doc/Makefile.am:
	* doc/coding-style.txt:
	* doc/gendoc.py:
	* doc/header.py:
	* doc/ideas.txt:
	* doc/reference/Makefile.am:
	* doc/simple.dia:
	  reorganize docs in preparation for the manual

2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/Makefile.am:
	  only rebuild docs when source module files change

2004-08-12  Johan Dahlin  <johan@gnome.org>

	* tests/test_component_parse.py: import common
	* tests/test_http.py: New test

2004-08-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/components/http.py:
	  implement getrlimit and fd reservation

2004-08-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/server/admin.py:
	* flumotion/server/component.py:
	* flumotion/server/config.py:
	* flumotion/server/controller.py:
	* flumotion/server/launcher.py:
	  adapt debugging

2004-08-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/gui/adminclient.py:
	  throw up a dialog if we can't connect
	* flumotion/utils/log.py:
	  make logging similar to GStreamer's

2004-08-11  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/config.py (FlumotionConfigXML.parseProperties):
	Add support for float values

	* flumotion/components/multipartjpeg.py (createComponent): New component

	* flumotion/server/config.py (FlumotionConfigXML.parse_entry):
	Clean up

	* flumotion/server/registry.py
	(RegistryXmlParser.parse_component): Implement inheritence

	* flumotion/components/http.py: Clean up
	(HTTPStreamingResource.render): Refactor different results here

	* flumotion/components/overlay.py: New component

	* flumotion/server/config.py (ConfigEntry): Rename to sort out things

	* flumotion/server/auth.py: Authentication helper functions

	* flumotion/components/passwd.py (HTTPGatekeeper): New gatekeeper,
	for htpasswd (from apache), only supports crypt encryption right now

	* flumotion/components/http.py (HTTPClientKeycard): New
	IClientKeycard implementation for twisted http requests

	* flumotion/server/interfaces.py (IClientKeycard) 
	(IAuthenticate): New file with two interfaces

	* conf/videotest-jpeg.xml: Add auth component

2004-08-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/multipart-bttv-jpeg.xml:
	  add jpeg from bttv config
	* flumotion/components/http.py:
	  oops, allow more than 1 client

2004-08-11  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/components/http.py:
	  set max clients to 1001, return 503 page if too many clients

2004-08-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* bin/flumotion.in:
	  remove jdahlin hack
	* flumotion/components/http.py:
	  add admin page on /stats protected by password.
	  show lots of useful info
	* flumotion/server/config.py:
	  translate unicode from xml

2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/components/http.py:
	  always authenticate until authentication written

2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* doc/header.py:
	  cleanup

2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* conf/ogg-test-theora.xml:
	  fixes
	* flumotion/components/__init__.py:
	* flumotion/components/converter.py:
	* flumotion/components/file.py:
	* flumotion/components/http.py:
	* flumotion/components/passwd.py:
	* flumotion/components/producer.py:
	  add/fix header

2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* configure.ac:
	* doc/
	  move from docs
	* flumotion/admin/spyglass.py:
	  fix header

2004-08-09  Johan Dahlin  <johan@gnome.org>

	* bin/flumotion.in: Call threads_init here, to avoid strange crashes.

2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* data/Makefile.am:
	* flumotion/Makefile.am:
	  fix build

2004-08-05  Johan Dahlin  <johan@gnome.org>

	* conf/*.conf: Move to conf/historic

	* flumotion/server/config.py (FlumotionConfig): Kill

	* flumotion/server/launcher.py (Launcher.start): Clean up.

2004-08-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/admin/__init__.py:
	* flumotion/admin/spyglass.py:
	* flumotion/admin/videotest.py:
	* ui/videotest.glade:
	  adding videotest UI component, not done yet.

2004-08-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* docs/Makefile.am:
	* flumotion/admin/spyglass.py:
	* ui/spyglass.glade:
	  spyglass now works and is documented.

2004-08-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/utils/log.py:
	  allow FLU_DEBUG env var to influence debugging, still needs
	  category and level filtering implementation

2004-08-04  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	  require latest release of pygtk
	* flumotion/server/Makefile.am:
	  components have moved

2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* configure.ac:
	* docs/Makefile.am:
	* flumotion/Makefile.am:
	* flumotion/config/Makefile.am:
	* flumotion/config/__init__.py:
	* flumotion/config/installed.py.in:
	* flumotion/config/uninstalled.py.in:
	* tests/config.py:
	  add a module containing configure-time variables.
	  add to epydoc to please myself.
	  add test for config to please Johan.

2004-08-03  Johan Dahlin  <johan@gnome.org>

	* bin/flumotion.in: 
	* configure.ac (PYGTK_REQ): Require PyGTK 2.3.96

	* flumotion/server/launcher.py: Call gobject.thread_init here

	* flumotion/components/producer.py: Ditto

	* flumotion/components/converter.py: Move here

2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>

	* autogen.sh:
	* configure.ac:
	  use config.h
	* ui/spyglass.glade:
	* ui/videotest.glade:
	  adding glade files for UI components

2004-08-02  Johan Dahlin  <johan@gnome.org>

	* configure.ac: Require Python 2.3

	* flumotion/server/config.py (FlumotionConfig.parse_component):
	Rework kind and logging, should be much more generic now and allow
	us to extend components much easier. Cleans up a lot aswell!

	* flumotion/server/launcher.py: Kill command line options for
	individual components

	* flumotion/components/file.py: Move out file streamer here.

2004-07-30  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/config.py: More cleaning up, work in progress

	* flumotion/server/launcher.py: Attempting to clean up shutdown,
	slightly better now but far from perfect

	* flumotion/server/registry.py: New file to handle registry
	parsing and management

	* flumotion/server/admin.py
	(AdminPerspective.perspective_shutdown): New method to shutdown
	the reactor

	* bin/flumotion.in: add DATA_DIR

	* flumotion/components/http.py: Move out http streamer from
	streamer.py

	* data/registry/basecomponents.xml: A list of all components
	included in the base flumotion package.

	* conf/complex.xml: ditto

	* conf/videotest-jpeg.xml: xml version of videotest-jpeg.conf,
	unused so far

2004-07-27  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/streamer.py (HTTPStreamingResource.setHeader):
	Rewrite most part of the HTTP server, handles simple
	authentication now, ready for the new authentication framework.
	(HTTPStreamingResource.render): Add simple authentication

	* conf/videotest-jpeg.conf: Overlay an image.

2004-07-23  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/controller.py (Dispatcher.requestAvatar): Clean
	up, clean up imports as well
	* flumotion/server/*: Futher logging cleanups

2004-07-22  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/component.py (ParseLaunchComponent): Refactor stuff

	* tests/test_component_parse.py: Tests for pipeline parsing

	* flumotion/utils/log.py (log): Rework, add support for message
	handlers, so we can send stuff over the wire at a later point

	* flumotion/server/launcher.py (Launcher.load_config): Clean up
	* flumotion/server/*: Clean up logging

2004-07-21  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/config.py: Move out
	stuff from launcher.py to here, to prepare for further user interface changes

2004-07-16  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/controller.py: Clean up a little bit and add
	some documentation

	* tests: Add some basic tests for the controller class

2004-06-28  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/*: Add support for changing properties

2004-06-27  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/launcher.py (main): Add support for setuid to a
	username and renice.
	(Launcher): Add support to connect to another controller.
	(Launcher.setup): Move administrative interface to the same process

	* conf/sine-disc.conf (sine): Add nice for testing

2004-06-26  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/controller.py (FeedManager.feedReady): Add
	silly FIXME

	* flumotion/server/streamer.py: Support client connecting logging,
	including number of bytes sent to each client.

	* flumotion/server/launcher.py: Start adding nice levels.

	* flumotion/gui/adminclient.py (Window.update): Clean up

2004-06-25  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/streamer.py: New streamers and stuff

	* flumotion/server/admin.py (RemoteComponentView.__cmp__):
	Implement, check only name attribute for now

	* flumotion/gui/adminclient.py
	(AdminInterface.remote_componentAdded): Make it somewhat work to
	reconnect component and add some new columns

	* data/ui/admin.glade: Remove textview for now

2004-06-24  Johan Dahlin  <johan@gnome.org>

	* conf/complex.conf: New configuration, in preparation
	for guadec.

	* conf/ogg-test-theora-vorbis.conf: Move encoding of audio and
	video to separate components.

	* conf/camserv-relay.conf: Add a file streamer

	* flumotion/server/controller.py
	(ComponentPerspective.callRemote): Catch DeadReferenceError's

	* flumotion/server/launcher.py: updates for file/http streaming

	* flumotion/server/streamer.py (FileSinkStreamer): New streamer
	(FakeSinkStremaer): Old, renamed.

	* flumotion/gui/adminclient.py: Small updates

	* flumotion/utils/gstutils.py (is_port_free): Don't print socket
	errors which makes us all very nervous. 

2004-06-22  Johan Dahlin  <johan@gnome.org>

	* flumotion/utils/gstutils.py (verbose_deep_notify_cb): Log the
	component name aswell

	* bin/video-server-admin.in: Script to run the admin interface.

	* flumotion/server/*: Cleanup callbacks, always prefix twisted
	callbacks with cb_.
	
2004-06-20  Johan Dahlin  <johan@gnome.org>

	* flumotion/utils/gstutils.py (verbose_deep_notify_cb): Filter out
	active notifies and empty caps. Thomas will probably kill me for
	this.

	* flumotion/server/*: Better error checking, make exception be
	sent over the wire and catch them so we can do stuff. I never.
	Add errbacks for all callbacks, so we can catch eventual
	exceptions. Add a stop method on component, so the controller can
	shut down the controller if something bad happens.
	
	
	* flumotion/utils/proctitle.py: 
	* flumotion/utils/_proctitle.c: Import proctitle by Dave Cinege,
	still ununsed though.

	* data/ui/admin.glade, flumotion/gui/adminclient.py,
	flumotion/server/admin.py: New files, beginning of an interface
	for the server.

	* configure.ac: Simplify python checks

	* m4/as-python.m4 (else): Add AM_CHECK_PYTHON_HEADERS macro.

2004-06-18  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/controller.py (Controller.isLocalComponent):
	Don't call getListenHost, since it needs to be working for
	streamer too.
	(Controller.getSourceComponents): Enable remote "hack" name
	resolving again

	* conf/test-ogg-theora-vorbis.conf (feeds): Update to have two
	feeds in one pipeline

	* flumotion/server: Add support for feeds. Introduce Feed and
	FeedManager objects. In a sort of hackish state. But it seems to
	run all configuration files quite well so assuming it works for
	now.
	
2004-06-17  Johan Dahlin  <johan@gnome.org>

	* bin/flumotion.in (dir): Remove silly require.

	* flumotion/utils/gstutils.py (caps_repr): Refactor out from
	verbose_deep_notify_cb

	* flumotion/server/launcher.py: Improve command line parsing, we
	now have an interface similar to cvs.

	* flumotion/utils/log.py (enableLogging, disableLogging): New functions

2004-06-15  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion.spec.in: update

2004-06-15  Johan Dahlin  <johan@gnome.org>

	* flumotion/server/launcher.py (main): Merge in all command line
	parsing from other files in here. Improve logging.

	* flumotion/errors.py: Move OptionError here

2004-06-11  Johan Dahlin  <johan@gnome.org>

	* configure.ac (PYGTK_REQ): Require 2.0.0.
	Add gst-python dependency

	* scripts/: Remove, superseded by configuration files

	* flumotion/gui/.svnignore: Adding some stuff I missed

	* .svnignore: 

2004-06-10  Thomas Vander Stichele  <thomas at apestaart dot org>

	* flumotion/component.py:
	* flumotion/controller.py:
	* flumotion/launcher.py:
	* flumotion/streamer.py:
	  adding vi mode lines
	  adding self.msg methods that print the object names
	  figure out content type header from caps

2004-06-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile.am:
	* configure.ac:
	* flumotion.spec.in:
	  adding spec file

2004-06-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* Makefile:
	* Makefile.am:
	* autogen.sh:
	* configure.ac:
	* docs/Makefile.am:
	* flumotion/Makefile.am:
	* m4/Makefile.am:
	* m4/as-ac-expand.m4:
	* m4/as-python.m4:
	* m4/as-version.m4:
	  adding autotools stuff

2004-06-07  Thomas Vander Stichele  <thomas at apestaart dot org>

	* first post

