I some of my past teams we "did". But I always found it to be a 2 hours long waste of time, without any actual outcome. Maybe I just always had scrum masters who didn't know how to do it correctly. Dunno. Since I never saw any benefit, I have my doubts about its usefulness.
The usual script was the following:
What went well?
- New team member, yippie, welcome ;) (if there were any)
- We fixed this and that bug, completed this and that (repeating what was said during standup meetings)
What went bad?
- Team member is leaving, sniff :'( (if there were any)
- This and that broke or took longer to work on (repeating what was said during standup meetings)
Action points to make everything better in the future:
- Do this and that (the same action points at the end of every retrospective. Never follow them up, never act on them)
Repeat everything 2-3 weeks later.