It's impossible to create a torrent file with empty announce URL. When empty list is passed to pyrocore.util.metafile.create(), the code fails with UnboundLocalError: local variable 'meta' referenced before assignment.
Using empty announce URL is useful since for some trackers one doesn't need to specify announce URL in advance. Those trackers add announce URL to uploaded torrent files by themselves.
At least the code shouldn't fail with UnboundLocalError but give a meaningful error message.