1* 0.4.2.1 2 - Bump cabal file to Cabal >= 1.10 3 4* 0.4.2.0 5 - Make semigroup instances unconditional 6 - Support bytestring-0.11 7 - Support semigroups-0.19 8 9* 0.4.1.0 10 - Gain compatibility with the Semigroup/Monoid proposal 11 - Add Word8 HTML escaping builders 12 - Speed up `fromHtmlEscapedText` and `fromHtmlEscapedLazyText` 13 14* 0.4.0.2 15 - Fixed warnings on GHC 7.10, courtesy of Mikhail Glushenkov. 16 17* 0.4.0.1 18 - Tightened the version constraints on the bytestring package for GHC 7.8 19 20* 0.4.0.0 21 - This is now a compatibility shim for the new bytestring builder. Most 22 of the old internal modules are gone. See this blog post for more 23 information: 24 25 <http://blog.melding-monads.com/2015/02/12/announcing-blaze-builder-0-4/> 26 27 - The 'Blaze.ByteString.Builder.Html.Utf8.fromHtmlEscaped*' functions now 28 strip out any ASCII control characters present in their inputs. See 29 <https://github.com/lpsmith/blaze-builder/issues/1> for more 30 information. 31 32* 0.3.3.0 33 - exposed the 'Buffer' constructor to enable keeping around a pool of 34 buffers. 35 36* 0.3.2.0 37 - added 'writeToByteString' to construct a strict bytestring in a single 38 step. We can actually view 'Write's as strict-bytestring builders. 39 40* 0.3.1.1 41 - Changed imports of Foreign.Unsafe to make it GHC 7.8 compatible 42 - -Wall clean on GHC 7.0 - 7.6 43 44* 0.3.1.0 45 - Widened dependencies on text and bytestring 46 47* 0.3.0.1 48 49 - Fix build warning in Blaze.ByteString.Builder.Word 50 (contributed by Greg Weber) 51 52* 0.3.0.1 53 54 - Remove comparison to the 'text' library encoding functions of 55 'Blaze.Builder.Char.Utf8.fromText' and 56 'Blaze.Builder.Char.Utf8.fromLazyText'. Bryan O'Sullivan reported that on 57 his 64-bit system with GHC 7.0.3 the 'text' library is 5x faster than the 58 'blaze-builder' library. 59 60* 0.3.0.0 61 62 - Renamings in internal modules: WriteIO -> Poke and associated functions. 63 64* 0.2.1.4 65 66 - Fixed bug: appending to 'chunkedTransferEncoding somebuilder' also encoded 67 the appended builder, which is obviously wrong. 68 69* 0.2.1.3 70 71 - Fixed bug: 'chunkedTransferTerminator' is now correctly set to "0\r\n\r\n". 72 73* 0.2.1.2 74 75 - Add 'MonoPatBinds' language extension to all relevant files to solve the 76 issues caused by GHC bug http://hackage.haskell.org/trac/ghc/ticket/4498 77 78* 0.2.1.1 79 80 - Reexport 'Write' datatype and 'fromWriteList', 'fromWriteSingleton', 81 'fromWrite' functions together with writes and builders for storables. 82 - Add 'MonoPatBinds' language extension to (hopefully) solve the issues 83 caused by GHC bug http://hackage.haskell.org/trac/ghc/ticket/4498 84 85* 0.2.1.0 86 87 Incorporated several design changes: 88 - Writable buffer range is now represented in a packed form. This improves 89 speed slightly, as less currying is used. 90 - Writes are abstracted such that their internal representation can be 91 exchanged without breaking other library code. 92 - Writes are represented in a form that allows for efficient monoid 93 instances for branching code like UTF-8 encoding. For single character 94 encoding this results currently in a slight slowdown due to GHC not 95 recognizing the strictness of the returned value. This will be fixed in 96 the future. 97 - BuildSteps support returning a result in `Done`, which enables to 98 implement a `Put` monad using CPS. 99 - chunked list writes were removed, as they result in worse performance 100 when writing non-trivial lists. (cf. benchmarks) 101 - An internal buffering abstraction is introduced, which is used both 102 by the adaption of the `binary` package, as well as by the 103 `blaze-builder-enumeratee` package, to execute puts and builders. 104 It will be used later also by the execution functions of the 105 `blaze-builder` package. 106 107 Implemented new functionality 108 - `Blaze.ByteString.Builder.HTTP` provides a builder transformer for 109 doing in-buffer chunked HTTP encoding of an arbitary other builder. 110 - `Blaze.ByteString.Builder.Char8` provides functions to serialize the 111 lower 8-bits of characters similiar to what `Data.ByteString.Char8` 112 provides for bytestrings. 113 114* 0.2.0.3 115 116 Loosen 'text' dependency to '>= 0.10 && < 0.12' 117 118* 0.2.0.2 119 120 Fixed bug: use ' instead of ' for HTML escaping ' 121 122* 0.2.0.1 123 124 Added a missing benchmark file. 125 126* blaze-builder-0.2.0.0 127 128 Heavily restructured 'blaze-builder' such that 'Blaze.ByteString.Builder' serves as 129 a drop-in replacement of 'binary:Data.Binary.Builder' which it improves upon 130 with respect to both speed as well as expressivity. See the documentation and 131 the benchmarks for details on improvements and new functionality. 132 133 Changed module structure: 134 Blaze.ByteString.Builder.Core -> Blaze.ByteString.Builder 135 Blaze.ByteString.Builder.Utf8 -> Blaze.ByteString.Builder.Char.Utf8 136 Blaze.ByteString.Builder.Html -> Blaze.ByteString.Builder.Html.Utf8 137 138 Changed function names: 139 writeByte -> writeWord8 140 fromByte -> fromWord8 141 fromWriteList -> fromWrite1List 142 143 Possibly performance sensitive implementation changes: 144 - 'fromByteString' and 'fromLazyByteString' check now if a direct insertion 145 of the bytestring(s) would be cheaper than copying it. See their 146 documentation on how to recover the old behaviour. 147 148 Deprecated functions: 149 'empty' : use 'mempty' instead 150 'singleton': use 'fromWord8' instead 151 'append' : use 'mappend' instead 152 153 154* blaze-builder-0.1 155 156 This is the first version of 'blaze-builder'. It is explicitely targeted at 157 fast generation of UTF-8 encoded HTML documents in the 'blaze-html' and the 158 'hamlet' HTML templating libraries. 159