Prepare the ingredients; canned mackerel, ginger, garlic, pandan leaves, curry leaves, onion, green chilies, tomato
Gather the spices; cinnamon, cardamom, cloves, mustard, turmeric, chili, Sri Lankan curry powder, fenugreek, salt and pepper.
In a large pan or pot, heat the oil. When hot, add mustard seeds, and fry for a minute or so, until they crackle.
Once the mustard seeds start to crackle add the garlic, ginger, curry leaves, and panda and sauté for a few minutes.
Add the onion, and green chili and sauté for a few minutes.
Add red chili powder, curry powder, turmeric powder, fenugreek, cinnamon, cardamom, and cloves, and sauté for a few minutes. Make sure you stir continuously to ensure that spices roast evenly and no burning on the bottom.
Then add diced tomatoes. Mix, and then cook, stirring, on medium-low heat for about 3 minutes until tomatoes become soft and the raw smell of the ingredients is gone. Stir from time to time to stop the ingredients from sticking to the base of the pan.
Add water and thick coconut milk (or thin coconut milk), and stir to combine. Bring it to a boil and then then leave to simmer gently, stirring occasionally, for about 5 minutes on low heat without covering.
Add tamarind if using, and stir to combine. Don’t increase the heat, it would curdle the milk. You can mash the tomatoes with the back of your spoon if desired, so you won’t get big chunks of tomatoes in the curry.
Add thick coconut milk. Mix well and simmer gently for about 2 minutes further.
When the gravy is ready, add the mackerel pieces with or without liquid inside, and simmer gently for about 5 minutes. Gently turn them at intervals, careful not to break it up if you like it that way. OR with the spoon break them into small pieces, if desired.
Taste the curry sauce and adjust the seasoning as necessary. You can adjust the spiciness and creaminess by adding more thick coconut milk. If the curry is too thin for your liking cook it for more few mins without covering it.
When the gravy has reduced to your preferred level, turn off the heat and squeeze 1/4 of a wedge of lime or lemon. Let the curry sit for a while as it helps the fish to absorb the flavors and thicken the gravy.
Serve with rice or a piece of bread.