>Merge requests: squash commits feature
I can still do this as a free user. It looks like you just have to do it within the "edit" form, or when you create the merge request. https://i.imgur.com/70k53xr.png
I don't use the last two so I can't speak about those, though.
Note: I'm assuming you mean the hosted version at gitlab.com