Software bugs are inevitable. Even with the most polished products, there are scenarios that cannot be predicted by the developer and the testers. Those depend both on software and hardware configurations, as well as user habits. That being said, for proper actions to be taken, bugs and issues should be tracked. There are many ways that process can be streamlined, including using pre-built systems that integrate issue tracking as a part of the project control - for example, CodePlex or GitHub. One of the issues with public outlets like these (although GitHub offers a paid service too) is the fact that all issues are available to the general public, which might not be the best choice for projects that might have critical vulnerabilities that can have a negative en-masse effect if publicly disclosed. The developer can also self-host a bug management solution, like BugZilla, or choose to use a subscription-based service like FogBugz. There are also cases when developers don't use any of these, TODOs in code being the only bug-tracking system - a horrible way to approach the problem by creating another problem, but as funny as it sounds, I've seen it happening.
Personally, all bug tracking for my projects is managed through the services those are hosted on. For example, most of my open-source projects are hosted on CodePlex and I really enjoy the simplicity of their issue tracking page. Users can easily create work items and I can later on prioritize and edit them. What's even more important, it is easy for me to track what features or issues deserve higher priority based on individual votes. For private projects, I once again use well-tested solutions that are well-integrated with the source control system (e.g. Assembla).
So what is your favorite solution?