Combine all ingredients in a medium-sized pot.
Bring the mixture to a boil over medium-high heat.
Once it starts to bubble, reduce the heat and let it simmer for 30 to 45 minutes. Stir occasionally to keep it from sticking.
The cranberries will burst and the sauce will start to thicken as it cooks.
When it reaches your desired consistency, remove it from the heat and let it cool. The sauce will still be slightly runny, but it will thicken as it cools. Store in the refrigerator in a sealed container until ready to serve. It keeps well for up to a week, and the flavor actually improves after a day or so as the spices blend together.