This seems like a good idea to me. Just have part of the upgrade process be a text box that says something like: "Please enter how much you would like to pay for the upgrade. As promised, this upgrade is free if you want it to be, but if you think Textmate is worth it, please consider paying an appropriate amount."
That way people who can't afford it or otherwise feel entitled to the free upgrade can get it free, and all the moderately wealthy developers who use Textmate every day and can afford it can be guilted into supporting development.
That way people who can't afford it or otherwise feel entitled to the free upgrade can get it free, and all the moderately wealthy developers who use Textmate every day and can afford it can be guilted into supporting development.