As far as I can see we have four (4) required items:
- Who are you.
- Can you prove that?
- Which name should be displayed.
- Possibly additional information fields.
Who are you?
This can be the traditional username. Or an email address. Or a piece of hardware (e.g. information supplied the chip on a debit card).
Both a regular username and some username with an @ in it will work for this. For some people using their current email address may make sense.
Can you prove that?
Traditional: Enter your password. (Other options would be authentication though second channel, sending a key signed with a certificate, ...)
Which name should be displayed.
This is usually the user name. If you use email as identity then you still need some display name.
The most important of these would be the current email address. This might very well differ from the 'email/username' you log in with if your account email has changed (e.g. after moving providers).
For this reason your login and your email should not be the same.
I find it confusing to log in with email@example.com and a password while my current email address has changed several times. I need to keep a log of which mails I used for which sites. This is no more (nor less) useful then remembering a user name per site.
So, allow both regular usernames (which the user must remember or write down) and email adresses (which the user must remember or write down) and allow the user to change the destination of their notifications whitout changing whatever they used to log in with.