Just to elaborate on efleurine’s answer.
You do not need to store each validation on the same field – you can chain them to get a full validation.
password: Yup.string()
.required('No password provided.')
.min(8, 'Password is too short - should be 8 chars minimum.')
.matches(/[a-zA-Z]/, 'Password can only contain Latin letters.')
Note how you still can specify individual messages for each failure.
Also, for the binding to work, make sure the form input you’re binding to has an appropriate name
attribute – in this case, password
.