Replace `set_pad_to_block_boundary()` option with `set_padding()` and
`set_{initial,final}_padding()` which can customize the padding size.
The primary use case for padding is still 64K, which lets physical
concatenation of separately written files yield a valid file.
Other padding sizes can be useful if the underlying storage benefits from
a particular size granularity of separately written parts of the file.
PiperOrigin-RevId: 813867185
Riegeli/records is a file format for storing a sequence of string records, typically serialized protocol buffers. It supports dense compression, fast decoding, seeking, detection and optional skipping of data corruption, filtering of proto message fields for even faster decoding, and parallel encoding.
See documentation.
Riegeli file format will only change in a backward compatible way (i.e. future readers will understand current files, but current readers might not understand files using future features).
Riegeli C++ API might change in incompatible ways.