Only higher levels should call Wire.begin(), never in a library.
This call resets the pins used and the speed, if they were initialized previously. If they are be changed, it is for reasons that are of no business for a supporting library to change.
I understand some might raise compatibility issues, yet there is no way around the fact that this has been broken in this way from the get go. Longstanding bugs still should be fixed.
Only higher levels should call Wire.begin(), never in a library.
This call resets the pins used and the speed, if they were initialized previously. If they are be changed, it is for reasons that are of no business for a supporting library to change.
I understand some might raise compatibility issues, yet there is no way around the fact that this has been broken in this way from the get go. Longstanding bugs still should be fixed.