I was just on this question and yeah D is right.
Answer:
D. have finished
Explanation:
l have finished reading this book by next weekend
The correct answer is C. His new life is making him unhappy