I have a mangaged package that has seen a lot of updates over time. Some parts have become redundant and aren't used at all anymore. However, with SFDC's rules about managed packages, many of these can't be removed. So, they end up sitting there, doing nothing, release after release.
At one point, before security review, I painstakingly manually moved all the code over to a new org just to be able to get rid of some of these. However, now that my package is through review I can't really do that.
Are there any options for removing parts of a package that are no longer being used but cannot normally be removed - or at least some sort of best practice around this unfortunate occurrence?