I ______ (complete) my homework by today.
a) will complete
b) will have completed
I think that the correct one should be b. However, I saw the sentence "the repair of XX will be completed by today" elsewhere. This makes me confused because I think that it should be "the repair of XX will have been completed by today.
Can someone please explain?