This page is a draft and should in no way be considered authoritative. Please help improve it.
Freezes are restrictions on which changes can be uploaded in order to try and stabilize Ubuntu for release. There are various different freezes that happen at different times in the cycle, and they are of different types, affect different packages, and have different procedures for uploading during them, so understanding them all can be difficult.
You can see which freezes happen and when on the ReleaseSchedule, and each is linked to a page about that particular freeze, so that is a great place to go for the information. This page will provide a bit more explanation about the types of freezes and how to handle them.
Freezes are generally also announced on ubuntu-devel-announce, so subscribing to that can keep you up-to-date. However, there aren't reminders about upcoming freezes posted to that list, so keep on top of which freezes are upcoming will help you to meet the deadlines in your work.
There are two ways that freezes are enforced, which are known as "soft" and "hard" freezes. Knowing whether a particular freeze is soft or hard is important, as it will allow you to know what effect uploading will have, and who needs to be aware of changes that you make for them to be included.
Soft freezes have no mechanism in the archive software to enforce them, they just rely on each developer to ensure that they only upload appropriate changes.
For instance, FeatureFreeze is a soft freeze, as you can still upload as before, you are just required to seek exceptions for new features.
Most importantly, freezes for the alpha releases of Ubuntu are soft freezes. This means that nothing will prevent your changes from entering the archive, so you must ensure that they don't interfere with the process of releasing the alpha. See the section on milestone freezes later for more information on what this means.
In contrast to soft freezes hard freezes flick a switch in the archive software such that all uploads are not immediately accepted, they instead end up in the UNAPPROVED Queue. Packages remain in this queue until they are explicitly accepted by an Archive Administrator.
This means that your changes can be reviewed before they are accepted, so that extra review can be done, and it is not left to your discretion to enforce the rules of the freeze.
While this could mean that you could upload with less care, it is not wise to, as those who can review are generally very busy at this time already, and extra work at these crucial periods is not appreciated. It is generally a good idea to ensure that someone on the release team knows that you will be making an upload to fix the particular issue before you do so (fixing a release critical bug is generally permission enough).