The assumption is generally that with MetaData.create_all, it's being used to create objects from an empty database, and thus, there's less/little point in doing live/connection based normalization; since there wont be an existing view to compare against.
In particular, this change fixes the case where a view (A) dependent on another view (B) are both being created in the same comparison pass (i.e. during MetaData.create_all), and the comparison for view A tries to create itself in order to get a normalized view, only to realize that view B doesn't exist.
The assumption is generally that with MetaData.create_all, it's being used to create objects from an empty database, and thus, there's less/little point in doing live/connection based normalization; since there wont be an existing view to compare against.
In particular, this change fixes the case where a view (A) dependent on another view (B) are both being created in the same comparison pass (i.e. during MetaData.create_all), and the comparison for view A tries to create itself in order to get a normalized view, only to realize that view B doesn't exist.