I have migrated from Jekyll to Hugo for my own website, but the whole Hugo project is just weird. It took me like a year to migrate my simple website because of all the different paper cuts that drained my will to work on it.
You are only able to only use partials in HTML pages and shortcodes in Markdown pages. Why? They use 2 different syntax, so the best you can do is awkwardly wrap a partial in a shortcode. What's the point? They serve basically the same purpose.
Want to set up RSS? Oh yeah, for some reason by default it will not show full content in your feed reader, instead only a small extract. The the only way to fix it is by making your own template[1]. But wait, why are we using RSS instead of Atom? Who knows, but if you want to use Atom, you have to use your template and insert some stuff to your config.
Also don't look at the bug tracker, that thing is frustrates me to no end.
You of course have the everyone's favourite Stalebot that you might have noticed in my previous link, but if you look at older issues, you will see the maintainer self-botting as a Stalebot[2][3] for some reason.
You will also see the maintainer moving issues between milestones for years with no end in sight[4]. That's not a one-off, click on any issue.
Changelogs can sometimes feel a bit, odd too:
> but also a big shoutout to @dependabot[bot], […] for their ongoing contributions.
And commit messages sometimes are just… a bit too long[5] (it is truncated by GitHub, you can append .patch to see the full message).
Their documentation is awful to read too[6]. Oh and the templating engine? Yeah, not documented at all. Also the quick start guide will tell you to git clone some random theme, but I don't want my website to look like someone's, I want to write my own styles and have my own structure, but they don't really tell you anywhere how you should go about it. Because of it, I would search GitHub to sometimes find answers on how to do some stuff, but you would quickly find that most people had no idea how to actually use it. For example you can find a lot of people making opening and ending partials to have a common page layout instead of actually using the built-in Hugo layouts.
So why have I bothered switching? i18n support, so far out of all SSG I tried, Hugo does it in the least painful way.
[1]: https://github.com/gohugoio/hugo/issues/4071
[2]: https://github.com/gohugoio/hugo/issues/385#issuecomment-283...
[3]: https://github.com/gohugoio/hugo/issues/1035#issuecomment-28...
[4]: https://github.com/gohugoio/hugo/issues/448
[5]: https://github.com/gohugoio/hugo/commit/6dbde8d731f221b027c0...
[6]: https://news.ycombinator.com/item?id=30527884