There is a current field availabilityExceptions under location, but I am not seeing this field in the latest build. It was quite important field for a location or service when start or end time is not available and might be available by appointment only. I am wondering why such imp field has been removed?

The availability content was restructured into a datatype that is re-used across all the provider directories and is also now available to use as an extension too.
So what was in Location.availabilityExceptions is now in Location.hoursOfOperation.notAvailableTime.description, and now you can even provide specific periods in which that descriptive unavailability can be used (rather than just having to rely on that content being in the textual content)

availablityExceptions cannot always mean notAvailableTime. My use case is, Instead of time, the exceptions given as ‘by appointment’ which I was using under availabityExceptions. The value doesn’t looks correct under notAvailableTime.description.