Commit Graph

57 Commits

Author SHA1 Message Date
Thomas Vander Stichele
36729a4bef * morituri/common/task.py:
Log on runners too.
	* morituri/program/cdrdao.py:
	  Abort if output has ERROR by killing and setting an exception.
2009-05-07 15:05:14 +00:00
Thomas Vander Stichele
e5ad3bde58 * morituri/common/task.py:
* morituri/image/image.py:
	  Remove prints.  Describe tasks.
2009-05-07 11:11:22 +00:00
Thomas Vander Stichele
c06814e139 * morituri/common/task.py:
Add an exception ivar for tasks to set an exception on while
	  running.  Make SyncRunner raise it during done()
	* morituri/program/cdparanoia.py:
	  Set an exception if the ripped file doesn't match the expected size
	  (for example when disc is full)
2009-05-07 09:19:41 +00:00
Thomas Vander Stichele
9fb4264934 * morituri/common/common.py:
Set the object when we don't persist.
	* examples/readdisc.py:
	  Small fixes.
2009-05-07 09:11:23 +00:00
Thomas Vander Stichele
d22bff1079 * morituri/common/checksum.py:
Update debugging.  Add repr.
2009-05-04 08:39:39 +00:00
Thomas Vander Stichele
d7f1f0a87a * morituri/common/task.py:
Distinguish more clearly between MultiSeparateTask and
	  MultiCombinedTask.
2009-05-03 20:25:28 +00:00
Thomas Vander Stichele
e3c42ddf64 remove ellipses 2009-05-03 19:16:20 +00:00
Thomas Vander Stichele
836a3beea1 * morituri/common/task.py:
Make SyncRunner clear previous description/progress task by
	  tracking longest output given up to now.
2009-05-03 18:07:22 +00:00
Thomas Vander Stichele
d1c3bb3def * morituri/program/cdparanoia.py:
Add a task to read and verify a track.
	* examples/readtrack.py:
	  Use it to clean up code.
	* morituri/common/task.py:
	  describe a MultiTask better.
2009-05-03 17:44:23 +00:00
Thomas Vander Stichele
4e62448000 remove prints 2009-05-03 17:05:32 +00:00
Thomas Vander Stichele
daaffb78e7 * morituri/common/common.py:
Create a Persister class to wrap a possible pickle path.
	* examples/trm.py:
	  Use it.
2009-05-03 17:04:42 +00:00
Thomas Vander Stichele
718275c5ee * morituri/common/taskgtk.py:
Bug fix.
2009-05-03 10:30:33 +00:00
Thomas Vander Stichele
fc907f1953 * morituri/common/task.py:
* morituri/common/taskgtk.py:
	  Split off GtkProgressRunner in separate module to not import gtk
	  everywhere.
	* examples/ARcalibrate.py:
	* examples/ARcue.py:
	* examples/gtkchecksum.py:
	* examples/trm.py:
	  Adapt.
2009-05-03 10:20:22 +00:00
Thomas Vander Stichele
a47a2f2a5c copy before splitting 2009-05-03 10:16:19 +00:00
Thomas Vander Stichele
1529c2a082 change progress notify to log 2009-05-03 09:54:21 +00:00
Thomas Vander Stichele
076644b879 * morituri/common/task.py:
* morituri/image/image.py:
	  Add some debugging.
2009-05-02 09:27:14 +00:00
Thomas Vander Stichele
143a70b72a * morituri/common/checksum.py:
Debug fixes.
2009-05-01 18:30:09 +00:00
Thomas Vander Stichele
d76e0a3495 * morituri/common/common.py:
Create some common functions to parse MSF and back.
	* morituri/image/toc.py:
	  Use it here.
2009-05-01 18:29:39 +00:00
Thomas Vander Stichele
96c0a92cdd publicize path 2009-05-01 12:30:27 +00:00
Thomas Vander Stichele
4367038f6c * morituri/common/task.py:
Make task subclass log.Log
2009-05-01 08:13:51 +00:00
Thomas Vander Stichele
0cfa2d915a * morituri/common/log.py:
Add external log module and use it.
2009-05-01 08:13:35 +00:00
Thomas Vander Stichele
10e5ec0b18 * morituri/common/checksum.py:
Add some debugging.
	* morituri/test/test_image_image.py:
	  Run less verbose.
2009-04-25 10:12:34 +00:00
Thomas Vander Stichele
837005d565 * morituri/common/task.py:
Allow a SyncRunner to be constructed with verbose too.
	  Separate a 'running' verbose mode from that.
	  Fixes unwanted test output.
	* morituri/test/test_image_image.py:
	  Run without verbosity.
2009-04-25 10:02:51 +00:00
Thomas Vander Stichele
0bbcac6d06 * morituri/test/test_common_renamer.py (added):
* morituri/common/renamer.py (added):
	  Add a way of doing transactional file renames, as well as their
	  metafile updates.
2009-04-25 09:51:12 +00:00
Thomas Vander Stichele
a9ec95e56d * morituri/common/task.py:
Add a 'described' method so listeners can get proper notification
	  of description changes, and update their description in between
	  progress changes.
	  Add a MultiCombinedTask that reports on progress over all tasks
	  combined.
	* examples/trm.py:
	  Add a playlist option to the example.  Still needs to store results
	  to pickles, preferably after each completed task.
	* morituri/common/checksum.py:
	  Add audioconvert to make sure we can trm ogg files.
2009-04-20 22:20:07 +00:00
Thomas Vander Stichele
18fcc1b813 * morituri/common/task.py:
* morituri/image/image.py:
	  Move MultiTask to the task module.
2009-04-20 21:34:51 +00:00
Thomas Vander Stichele
8973d53cce * morituri/common/checksum.py:
Add a task to calculate a trm fingerprint.
	* examples/trm.py (added):
	  Add an example.
	  Strangely enough it starts burstily, doing 10% directly, halting,
	  then progressing quickly,
2009-04-20 21:31:27 +00:00
Thomas Vander Stichele
9905dbad75 * morituri/common/task.py:
Add a __main__ example using DummyTask.
2009-04-19 22:01:39 +00:00
Thomas Vander Stichele
cfeedbca3c * morituri/common/task.py:
Make sure we also show progress when it's 0%, at the start.
2009-04-19 21:48:23 +00:00
Thomas Vander Stichele
26bfe85631 * examples/gtkchecksum.py:
* morituri/common/checksum.py:
	  Final crc->checksum fixes.
2009-04-15 13:41:15 +00:00
Thomas Vander Stichele
587f1a45dd * examples/ARcue.py:
* morituri/common/checksum.py:
	* morituri/image/image.py:
	* morituri/image/toc.py:
	* examples/gtkchecksum.py (added):
	* examples/gtkcrc.py (deleted):
	  More crc->checksum changes.
2009-04-15 13:39:16 +00:00
Thomas Vander Stichele
1dffa8ec42 add comment 2009-04-15 13:32:10 +00:00
Thomas Vander Stichele
b63ef021a7 * examples/ARcue.py:
* morituri/common/checksum.py:
	* morituri/image/image.py:
	* morituri/test/test_image_image.py:
	  Change crc to checksum everywhere.
2009-04-15 13:31:35 +00:00
Thomas Vander Stichele
9b5050d221 * morituri/image/image.py:
* morituri/image/toc.py:
	* morituri/common/checksum.py (added):
	* morituri/common/crc.py (deleted):
	  Rename crc to checksum, because AccurateRip checksums are not CRC's.
2009-04-15 13:23:45 +00:00
Thomas Vander Stichele
13a9f81550 * morituri/common/crc.py:
Actually return the CRC when checking frame 5.
	* morituri/test/test_image_image.py:
	  Update test for this fix.
2009-04-14 20:19:27 +00:00
Thomas Vander Stichele
ac880acdf1 * examples/ARcue.py:
* morituri/common/crc.py:
	* morituri/image/image.py:
	* morituri/test/test_image_image.py:
	  Calculate CDDB disc id.
	  Tested on my Kings Of Leon CD.
2009-04-12 19:30:57 +00:00
Thomas Vander Stichele
b7eb47325e * morituri/common/task.py:
Schedule the start from the main loop, otherwise the
	  task might complete before we're in the main loop,
	  and then the loop.quit() doesn't work.
2009-04-12 10:18:56 +00:00
Thomas Vander Stichele
d47402af60 * examples/gtkcrc.py:
* morituri/common/task.py:
	  Move the gtk-based progress bar to task.
2009-04-12 08:58:36 +00:00
Thomas Vander Stichele
f1d75142da * examples/gtkcrc.py:
* morituri/common/crc.py:
	* morituri/common/task.py:
	* morituri/image/image.py:
	  Add a 'schedule' call to the TaskRunner class, so that we can
	  abstract things like gobject.timeout_add and reactor.callLater
	  Pass the runner to the task in Task.start() so a task can call
	  schedule.
2009-04-12 08:51:13 +00:00
Thomas Vander Stichele
10647d18a1 * morituri/common/task.py:
Update the docs.
2009-04-12 08:34:44 +00:00
Thomas Vander Stichele
6804df4b73 * morituri/common/task.py:
clear with whitespace.
2009-04-11 21:57:25 +00:00
Thomas Vander Stichele
51851cc67e * examples/ARcue.py:
* morituri/common/task.py:
	* morituri/image/image.py (added):
	  Add an object for handling an Image based on a .cue file.
	  Create a Task for CRC'ing the whole Image.
	  Make the example use this new task instead.
2009-04-11 17:01:40 +00:00
Thomas Vander Stichele
eda9968703 * examples/gtkcrc.py:
* morituri/common/task.py:
	  Add task object to listener interface methods.
2009-04-11 16:42:04 +00:00
Thomas Vander Stichele
6234b08a2f * morituri/common/task.py:
Move methods around.
2009-04-11 16:38:41 +00:00
Thomas Vander Stichele
8345938584 * examples/ARcue.py:
* examples/gtkcrc.py:
	* morituri/common/crc.py:
	* morituri/common/task.py:
	  Split out generic task/runner from CRC tasks.
2009-04-11 15:40:03 +00:00
Thomas Vander Stichele
2e93bfb988 * morituri/common/crc.py (added):
Copy from task.py before splitting.
2009-04-11 15:36:02 +00:00
Thomas Vander Stichele
1a02c32fc1 * examples/gtkcrc.py:
* morituri/common/task.py:
	  Don't block the main loop by infinitely scheduling
	  set_state.
2009-04-11 14:58:42 +00:00
Thomas Vander Stichele
8486ee782b * examples/ARcue.py:
* examples/gtkcrc.py:
	* morituri/common/task.py:
	  Make a real Task interface and use it.
	  Make runners reusable for multiple tasks.
	  gtkcrc.py seems to be blocking updates however.
2009-04-11 14:46:19 +00:00
Thomas Vander Stichele
7860fe275b * examples/ARcue.py:
Error out when the file doesn't exist.
	* morituri/common/task.py:
	  Drag the lake.
	  Clean up prints.
2009-04-11 12:54:45 +00:00
Thomas Vander Stichele
43acc5b6f5 * morituri/common/task.py:
Remove queue to avoid race.
	  Remove prints.
	  Clean up debug.
	  Update progress after handling buffers.
2009-04-11 11:17:47 +00:00