Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…


Cannot retrieve contributors at this time

file 72 lines (56 sloc) 3.053 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71

  Incorporated several design changes:
    - Writable buffer range is now represented in a packed form. This improves
      speed slightly, as less currying is used.
    - Writes are abstracted such that their internal representation can be
      exchanged without breaking other library code.
    - Writes are represented in a form that allows for efficient monoid
      instances for branching code like UTF-8 encoding. For single character
      encoding this results currently in a slight slowdown due to GHC not
      recognizing the strictness of the returned value. This will be fixed in
      the future.
    - BuildSteps support returning a result in `Done`, which enables to
      implement a `Put` monad using CPS.
    - chunked list writes were removed, as they result in worse performance
      when writing non-trivial lists. (cf. benchmarks)
    - An internal buffering abstraction is introduced, which is used both
      by the adaption of the `binary` package, as well as by the
      `blaze-builder-enumeratee` package, to execute puts and builders.
      It will be used later also by the execution functions of the
      `blaze-builder` package.
  Implemented new functionality
    - `Blaze.ByteString.Builder.HTTP` provides a builder transformer for
       doing in-buffer chunked HTTP encoding of an arbitary other builder.
    - `Blaze.ByteString.Builder.Char.Latin1` provides writes and builders for
      serializing characters using the `Latin1` (ISO_8859-1) charset. This
      corresponds to what the bytestring library refers to as the Char8


  Fixed bug: use ' instead of ' for HTML escaping '

  Added a missing benchmark file.

* blaze-builder-

  Heavily restructured 'blaze-builder' such that 'Blaze.ByteString.Builder' serves as
  a drop-in replacement of 'binary:Data.Binary.Builder' which it improves upon
  with respect to both speed as well as expressivity. See the documentation and
  the benchmarks for details on improvements and new functionality.

  Changed module structure:
    Blaze.ByteString.Builder.Core -> Blaze.ByteString.Builder
    Blaze.ByteString.Builder.Utf8 -> Blaze.ByteString.Builder.Char.Utf8
    Blaze.ByteString.Builder.Html -> Blaze.ByteString.Builder.Html.Utf8

  Changed function names:
    writeByte -> writeWord8
    fromByte -> fromWord8
    fromWriteList -> fromWrite1List

  Possibly performance sensitive implementation changes:
    - 'fromByteString' and 'fromLazyByteString' check now if a direct insertion
      of the bytestring(s) would be cheaper than copying it. See their
      documentation on how to recover the old behaviour.

  Deprecated functions:
    'empty' : use 'mempty' instead
    'singleton': use 'fromWord8' instead
    'append' : use 'mappend' instead

* blaze-builder-0.1

  This is the first version of 'blaze-builder'. It is explicitely targeted at
  fast generation of UTF-8 encoded HTML documents in the 'blaze-html' and the
  'hamlet' HTML templating libraries.
Something went wrong with that request. Please try again.