summaryrefslogtreecommitdiff
path: root/NEWS
blob: 792a578001df6a2777df720e56e792f79d6db43a (plain)
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
Snappy v1.1.10, Mar 8th 2023:

  * Performance improvements

  * Compilation fixes for various environments

Snappy v1.1.9, May 4th 2021:

  * Performance improvements.

  * Google Test and Google Benchmark are now bundled in third_party/.

Snappy v1.1.8, January 15th 2020:

  * Small performance improvements.

  * Removed snappy::string alias for std::string.

  * Improved CMake configuration.

Snappy v1.1.7, August 24th 2017:

  * Improved CMake build support for 64-bit Linux distributions.

  * MSVC builds now use MSVC-specific intrinsics that map to clzll.

  * ARM64 (AArch64) builds use the code paths optimized for 64-bit processors.

Snappy v1.1.6, July 12th 2017:

This is a re-release of v1.1.5 with proper SONAME / SOVERSION values.

Snappy v1.1.5, June 28th 2017:

This release has broken SONAME / SOVERSION values. Users of snappy as a shared
library should avoid 1.1.5 and use 1.1.6 instead. SONAME / SOVERSION errors will
manifest as the dynamic library loader complaining that it cannot find snappy's
shared library file (libsnappy.so / libsnappy.dylib), or that the library it
found does not have the required version. 1.1.6 has the same code as 1.1.5, but
carries build configuration fixes for the issues above.

  * Add CMake build support. The autoconf build support is now deprecated, and
    will be removed in the next release.

  * Add AppVeyor configuration, for Windows CI coverage.

  * Small performance improvement on little-endian PowerPC.

  * Small performance improvement on LLVM with position-independent executables.

  * Fix a few issues with various build environments.

Snappy v1.1.4, January 25th 2017:

  * Fix a 1% performance regression when snappy is used in PIE executables.

  * Improve compression performance by 5%.

  * Improve decompression performance by 20%.

Snappy v1.1.3, July 6th 2015:

This is the first release to be done from GitHub, which means that
some minor things like the ChangeLog format has changed (git log
format instead of svn log).

  * Add support for Uncompress() from a Source to a Sink.

  * Various minor changes to improve MSVC support; in particular,
    the unit tests now compile and run under MSVC.


Snappy v1.1.2, February 28th 2014:

This is a maintenance release with no changes to the actual library
source code.

  * Stop distributing benchmark data files that have unclear
    or unsuitable licensing.

  * Add support for padding chunks in the framing format.


Snappy v1.1.1, October 15th 2013:

  * Add support for uncompressing to iovecs (scatter I/O).
    The bulk of this patch was contributed by Mohit Aron.

  * Speed up decompression by ~2%; much more so (~13-20%) on
    a few benchmarks on given compilers and CPUs.

  * Fix a few issues with MSVC compilation.

  * Support truncated test data in the benchmark.


Snappy v1.1.0, January 18th 2013:

  * Snappy now uses 64 kB block size instead of 32 kB. On average,
    this means it compresses about 3% denser (more so for some
    inputs), at the same or better speeds.

  * libsnappy no longer depends on iostream.

  * Some small performance improvements in compression on x86
    (0.5–1%).

  * Various portability fixes for ARM-based platforms, for MSVC,
    and for GNU/Hurd.


Snappy v1.0.5, February 24th 2012:

  * More speed improvements. Exactly how big will depend on
    the architecture:

    - 3–10% faster decompression for the base case (x86-64).

    - ARMv7 and higher can now use unaligned accesses,
      and will see about 30% faster decompression and
      20–40% faster compression.

    - 32-bit platforms (ARM and 32-bit x86) will see 2–5%
      faster compression.

    These are all cumulative (e.g., ARM gets all three speedups).

  * Fixed an issue where the unit test would crash on system
    with less than 256 MB address space available,
    e.g. some embedded platforms.

  * Added a framing format description, for use over e.g. HTTP,
    or for a command-line compressor. We do not have any
    implementations of this at the current point, but there seems
    to be enough of a general interest in the topic.
    Also make the format description slightly clearer.

  * Remove some compile-time warnings in -Wall
    (mostly signed/unsigned comparisons), for easier embedding
    into projects that use -Wall -Werror.


Snappy v1.0.4, September 15th 2011:

  * Speeded up the decompressor somewhat; typically about 2–8%
    for Core i7, in 64-bit mode (comparable for Opteron).
    Somewhat more for some tests, almost no gain for others.
  
  * Make Snappy compile on certain platforms it didn't before
    (Solaris with SunPro C++, HP-UX, AIX).

  * Correct some minor errors in the format description.


Snappy v1.0.3, June 2nd 2011:

  * Speeded up the decompressor somewhat; about 3-6% for Core 2,
    6-13% for Core i7, and 5-12% for Opteron (all in 64-bit mode).

  * Added compressed format documentation. This text is new,
    but an earlier version from Zeev Tarantov was used as reference.

  * Only link snappy_unittest against -lz and other autodetected
    libraries, not libsnappy.so (which doesn't need any such dependency).

  * Fixed some display issues in the microbenchmarks, one of which would
    frequently make the test crash on GNU/Hurd.


Snappy v1.0.2, April 29th 2011:

  * Relicense to a BSD-type license.

  * Added C bindings, contributed by Martin Gieseking.

  * More Win32 fixes, in particular for MSVC.

  * Replace geo.protodata with a newer version.

  * Fix timing inaccuracies in the unit test when comparing Snappy
    to other algorithms.


Snappy v1.0.1, March 25th 2011:

This is a maintenance release, mostly containing minor fixes.
There is no new functionality. The most important fixes include:

  * The COPYING file and all licensing headers now correctly state that
    Snappy is licensed under the Apache 2.0 license.

  * snappy_unittest should now compile natively under Windows,
    as well as on embedded systems with no mmap().

  * Various autotools nits have been fixed.


Snappy v1.0, March 17th 2011:

  * Initial version.