Does not deserve all the hate it is getting

Rating: 9/10 (22 December 2019)

This movie is not nearly as bad as they say it is. I understand why all the fans are so upset at this point, but it's not because of this movie, it's because of the previous movie, how bad it was, how it didn't feel like a Star Wars movie, how the studio and the director treated fans like "man babies" instead of owning their mistakes, insulting their critics, instead of listening to them. So fans have lost their faith in the story, in the new characters. I think if that wouldn't have happened, this would be regarded as great Star Wars film. If they had done a different episode VIII, we wouldn't be here. It is not a perfect film, but it fixes most of what happened in The Last Jedi, that is a terrible Star Wars film, it's like the director didn't watch the original trilogy, it doesn't have world building, it doesn't even have a real lightsaber duel, it's awful. It makes Luke a Grumpy old man, after being the most optimistic person in the galaxy. Thus making The force awakens a worse movie. And It even kills the main villain of the trilogy, putting episode IX at an impossible position.
The Rise of Skywalker has great world building, it's action packed, the visuals are awesome, the plot picks up where they left it and course correct it, has to dig up another antagonist, it gives good arcs to the characters, mainly Rey, Kylo,C3P0 (that was cool) and maybe Finn (a little), there are new aliens. They didn't do a Holdo maneuver. If you go with fresh eyes, understand where the story is, you are going to enjoy it. I bet children are going to love it. Like I said, it's not perfect, and is easy to tear a movie apart, but it's also easy to enjoy.
The studio needs to learn from their mistakes, this movie tries to, so give it a chance. But there a bigger lesson for them, something Marvel has, a plan, a big big road map ahead, which allows them to put out 2 movies a year. There's no Star Wars fatigue, just bad movie fatigue, fans treated badly fatigue.