I tried to send this last night, but it still hasn't showed
up. Sorry if it ends up on the list twice...
-------- Original Message --------
Subject: More progress
Date: Fri, 21 Dec 2001 02:23:16 -0800
From: Dominic Mazzoni <dominic@...>
Alas, if only there were more hours in the day!
I just checked in a bunch more changes. (I'm checking into
the 0_9 branch, but I'm keeping a careful record of my fixes
so I can easily port them to the HEAD when I'm done.)
The project saving code is a lot more robust, and it looks
cleaner, too. For example, if you try to Save As... to
another disk and run out of space halfway, it will copy
the files back and cancel the Save As..., leaving you
with a working project instead of a half-copied one.
You can no longer open the same project in two windows.
(It wouldn't have worked anyway.)
Mainly, though, I fixed bugs that were preventing unused
data files from being deleted. For example, if you undo
an operation, then do a new operation, the data created
by the operation that was canceled should be thrown away.
Similarly, if you open a project, delete all of its tracks,
and hit save, the resulting project directory should be
empty (once you quit the program).
Combined with the code I checked in earlier this week,
opening and saving projects should now be fixed.
Anyway, it needs more testing before I'll be totally
happy with it. But...I tested a lot of cases I know
didn't work before, and they all work now, which is
a great sign. So unless I encounter any more errors,
I believe that I have now fixed all of the project/file
related bugs, with the exception of copying and pasting
between projects, which I haven't looked at yet.
I'd do copy/paste right now, but it's 2:20 am, and I want
to be at least halfway sane for my last day of work before
If anyone feels like doing some testing (basically, test
anything except copy/paste between two tracks, which I
know is broken), please checkout the 0.9 branch and
give it a try. Here's an example of a sequence that
will really stress-test it:
1. Import some audio.
2. Mess with it a while (apply two or three effects;
create multiple tracks).
3. Save the project. Make a mental note of what the
project looks/sounds like.
4. Undo a few steps, apply some new effects, and then
Save As..., giving the project a new name.
5. Undo a few steps again, apply different effects
(or move things around, rename tracks, etc.),
and then Save As under yet a third name.
6. Close and reopen Audacity; open each of the
projects and make sure they all are correct.
7. Delete tracks from one of these projects and save
it. Then Undo and Save As... under a new name.
Go to the directory of the old project and make
sure that it's empty.