Deploying Profiles - Create, Update, Delete
I have noticed that in some scenarios, user profiles cannot be created, deleted or updated. In addition, some pieces such as user license cannot be updated due to the Salesforce architecture. To create a new profile with a specific license, we would have to clone an existing profile that has the correct license and then update the permissions accordingly. When deleting a profile, first we need to ensure that the profile is not associated with a user (it doesn't matter whether the user is active or inactive) and then the profile can be deleted. When updating a profile, based on the license type assigned to the profile, some permissions cannot be updated.
Currently, i am omitting profile objects from the deployment but the profile logic / feature would be a big help going forward.
Troy Hoshor commented
There definitely could benefit to being more pre-validation for Profiles. We've been unable to delete profiles due to dependencies in particular.
Maybe a prompt on that "Warnings/Fixes" screen for potential Profile problems?