I have kind of mixed reactions to this -- on the one hand, I don't really have a concept of 'cheating' in that I do not treat relationships and friendships as different things.
On the other, exactly that idea makes me think if 'cheating' is a synonym for betrayal, *almost always* I'd think there's no point to the friendship. I am not big on 'forgiving' so much as I am big on understanding. I will give a lot of room for people to explain their actions, but there has to be at least agreement on what the fundamental ethical principles are.
However, it's very important to be sure it really is the sort of clearly deliberated, knowing, fully non-impulsive sort of thing. My usual attitude for things that are more careless mistakes than true uncaring is that I will not trust the person to not be careless in the future, but I might not look down on the person's character.
I am big on privacy, so that's a good example -- it's possible someone is bad at keeping things private and blabbed something impulsively. In such cases, I'd usually advise both parties should agree, for their own good, the person ought not to be given high-risk info.