You dropped out soon after you asked for my comments on the branch. So, it seems what you are doing is ignoring empty messages on *all* PO file imports. We should not do that, but do that only for "is_imported" or "is_published" ones (those coming from packages). You should be able to upload a PO file with no translation to unset a bad translation. I'd be even more interested to know how did this break, since that's how it used to work. The code for this was in updateTranslation() before.
You dropped out soon after you asked for my comments on the branch. So, it seems what you are doing is ignoring empty messages on *all* PO file imports. We should not do that, but do that only for "is_imported" or "is_published" ones (those coming from packages). You should be able to upload a PO file with no translation to unset a bad translation. I'd be even more interested to know how did this break, since that's how it used to work. The code for this was in updateTranslation() before.