One of the exercises I'm going through now is scrubbing our API and taking a hard look at types marked as public and trying to decide "does it really need to be public."  While on first blush, you can

What I'd love to get from folks are answers to the following questions:

  • Were there designer types in 3.0/3.5 that were not public that caused you problems?
    • If so, why?  What and how did you want to use that type?
  • Were there scenarios where you found our decisions on type visibility odd, inconsistent or painful?  Let me know what those were.


Looking forward to your thoughts!