In a team I worked in many years ago, there was a general consensus that a manager saying "thanks" didn't come across well. It implied that the dev was doing a favour for that person and wanted to do so. Instead, they preferred something along the lines of "good work" or "great job" or similar. This indicated that the work was of value.
This was in person and in a single company, so is a bit different from issues raised by a stranger over the internet in a bug tracker.
Personally, if I don't know the person I say/write "thanks" because I mean it, especially if it's an open source project.
People are wonderfully complex :)