SdFat: When to call sync()

The Arduino Print class has been implemented in a way that
causes a call to the SdFat write function for every byte when
formatting a number.

That doesn't seem to be the case anymore.

Yes, Print now uses an optimized function I developed. I was amazed when the Arduino company adopted my version of Print::printNumber().

Unfortunately, the function
size_t Print::write(const uint8_t *buffer, size_t size)
is not pure virtual in the Print class. SdFat implemented write as the more general

int SdFile::write(const void* buf, size_t nbyte);

This function does not override the Print's virtual write and print was character at a time for a while in Sdfat after my mod to print was adopted.

SdFile now has this additional function which causes the optimized version of Print::printNumber() to work.

  size_t SdFile::write(const uint8_t *buf, size_t size) {
    return SdBaseFile::write(buf, size);
  }