I usually say things like "we had a very difficult task of choosing these roles based on the large number of talented people who auditioned." But the way I always explain our choices is worded: "Our committee chose the performers we felt were best suited for each role". "If you were not chosen for a lead we encourage you to be a part of the supporting cast in the ensemble."
We always have the people mad or disappointed because they didn't get what they wanted. We always have the parents second guessing us. But on opening night we always hear "oh, that was cast perfectly".
There's always the initial emotions that students and parents can either control, or lash out with. I've found there's nothing that will stop that. That's why I use the words "best suited for the role".
"Thank you for auditioning for Fiddler on the Roof. Please read the attached cast list with grace and maturity. DO NOT REPOST or vent on social media. Also attached is a CAST INFORMATION sheet. Please share with your parent, read, sign the PERMISSION SLIP and return with the $10 cast fee at the FIRST CAST MEETING November 27. I look forward to working with each and every one of you. Please reply 'yes' below that will join the cast."