They could have just been honest and said from the beginning “Luke skywalker isn’t in this movie, but he will be in episode 8”
I found more people pissed that they said he’d be in the movie and was basically a glorified cameo. I just personally think it would’ve worked better if his reveal had been saved for 8 instead of just tacked on to the end of 7 as a cheap cliffhanger.