Proposal Unitary Project

Proposed Feature
To provide a single "container" for Audacity Projects rather than the AUP file and data being separate.

Developer/QA Backing

 * Steve
 * Peter

Details
There are a number of approaches that may be taken to achieve the purpose of this proposal:
 * 1) Save the AUP file inside the Audacity Project folder.
 * When a new project is created the user would be prompted to name the project and set the location where it will be saved. At that point a "Project Folder" will be created containing an AUP file and a _data folder.
 * There will also be a File menu option to "Close and Delete" the project in case the user decides that they do not want a saved Project. "Close and Delete" would automatically produce a warning.
 * For users that do not want to save the Audacity Project, there will still be the facility of creating a "Temporary Project" which will be exactly the same as how projects currently work.
 * 1) * Benefits of this approach:
 * 2) ** It helps new users to learn the important distinction between Projects and Audio files.
 * 3) ** Losing the data folder for a project becomes difficult. This is particularly relevant if the user saves all of their projects in the same directory. Rather than having dozens of AUP files and dozens of _data folders, they will have each project neatly packaged in its own sub-folder.
 * 4) ** Power users will often use this method of Project management already, but need to manually go through the steps of creating a folder and saving the new project into that folder.
 * 5) ** In the event of a system crash, all of the data files are already safely written into the Project Folder and not at risk of being deleted if the Temp folder is emptied. This is particularly important on Linux as the Temp folder is automatically emptied when the system is rebooted.
 * 6) ** Accidentally closing Audacity will not delete the data files.
 * 7) ** Dependent files could also be kept in the "Project Folder", allowing easy re-connection to the project if/when there is a feature to find missing dependencies.
 * 8) Save Audacity Projects in an "file archive" format (similar to how Nero handles disk images)
 * The idea here is to save Audacity projects in some form of Interchange File Format that allows Audacity to read directly from the file without needing to extract the file before use.
 * (I have no idea about the technical implications of this approach).
 * 1) To keep Audacity Projects as they currently are, but provide an additional feature to "unify" the project into a single archive file.
 * The idea here is that on Save, Audacity copies all files that are used in the project into a single archive file (like Zipping the project).
 * This is probably the most simple approach but carries a severe time overhead for saving and opening large projects.

Advantages

 * New users will frequently move or delete the _data folder without realizing that it is part of the Project. A unified Audacity Project will avoid this pitfall.


 * As long as all dependencies are resolved, projects can be moved and transported safely.

Moving an Audacity Project to another machine:
Copy the unified Project to the new machine That's all - no more searching around to find the _data folder that goes with the .AUP file.

Clean-up old unused files:
No more mistakes of accidentally deleting the _data folder (there may still be a danger of deleting dependencies)

Saving Projects for later use
Long term storing of Audacity Projects is currently unsafe as the multiple file format makes it far too easy for project files to become detached from their data.

Version Control
If a version control system is employed to store projects, the addition and deletion of AU files in the project's _data folder needs special handling.