Skip to content

0.12.0

Compare
Choose a tag to compare
@vitaut vitaut released this 27 Oct 15:36
· 6181 commits to master since this release
  • [Breaking] Improved separation between formatting and buffer management. Writer is now a base class that cannot be instantiated directly. The new MemoryWriter class implements the default buffer management with small allocations done on stack. So fmt::Writer should be replaced with fmt::MemoryWriter in variable declarations.
    Old code:

    fmt::Writer w;
    

    New code:

    fmt::MemoryWriter w;
    

    If you pass fmt::Writer by reference, you can continue to do so:

    void f(fmt::Writer &w);
    

    This doesn't affect the formatting API.

  • Support for custom memory allocators (#69)

  • Formatting functions now accept signed char and unsigned char strings as arguments (#73):

    auto s = format("GLSL version: {}", glGetString(GL_VERSION)); 
    
  • Reduced code bloat. According to the new benchmark results, cppformat is close to printf and by the order of magnitude better than Boost Format in terms of compiled code size.

  • Improved appearance of the documentation on mobile by using the Sphinx Bootstrap theme:

Old New
screenshot_2014-10-20-09-00-17 screenshot_2014-10-20-09-01-12