diff --git a/ChangeLog b/ChangeLog
index c7fd0a2..d944f69 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -10,6 +10,10 @@
           updating the OpenType Layout code, adding support fot the first
           GSUB lookups. Nothing that really compiles for now though
 
+        * src/autohint/ahhint.c: disabled serif stem width quantization. It
+        produces slightly better shapes though this is not distinguishable
+        with many fonts.
+
 2002-11-05  David Turner  <david@freetype.org>
 
         * include/freetype/config/ftoption.h, src/gzip/ftgzip.c: added
diff --git a/docs/CHANGES b/docs/CHANGES
index 94b6f15..26138b2 100644
--- a/docs/CHANGES
+++ b/docs/CHANGES
@@ -31,14 +31,21 @@
       (they differ slightly from Microsoft/OpenType ones in the way transform
       offsets are computed).
 
+    - FreeType was very slow at opening certain asian CID/CFF fonts, due
+      to fixed increment in dynamic array re-allocations. This has been
+      changed to exponential behaviour to get acceptable performance
 
   II. IMPORTANT CHANGES
 
+    - the PCF driver now supports gzip-compressed font files natively. This
+      means that you'll be able to use all these bitmap fonts that come
+      with XFree86 with FreeType (and libXft/libXft2, by extension).
+
     - The automatic and postscript hinters have both been updated.  This
       results in a relatively important increase of rendering quality since
       many nasty defaults have been supressed.  Please visit the web page:
 
-        http://www.freetype.org/freetype2/smooth-hinting.html
+        http://www.freetype.org/hinting/smooth-hinting.html
 
       for additional details on this topic.
 
@@ -72,7 +79,8 @@
       has been updated to support LCD-optimized display on non-paletted
       displays (under Win32 and X11)
 
-    - The PFR driver now supports embedded bitmaps (all formats supported).
+    - The PFR driver now supports embedded bitmaps (all formats supported),
+      and returns correct kerning metrics for all glyphs
 
     - The TrueType charmap loader now supports certain "broken" fonts that
       load under Windows without problems.
@@ -93,6 +101,10 @@
     - Added support for the DESTDIR variable during "make install".  This
       simplifies packaging of FreeType.
 
+    - included modified copies of the ZLib sources in 'src/gzip' in order
+      to support gzip-compressed PCF fonts. We do not use the system-provided
+      zlib for now, though this is a probable enhancement for future releases
+
     - The DocMaker tool used to generate the on-line API reference has been
       completely rewritten.  It is now located in
       "src/tools/docmaker/docmaker.py".  Features:
@@ -119,7 +131,7 @@
       provided by an external component, like a Postscript interpreter) has
       been added by Graham Asher.  This is still work in progress, however.
 
-    - A new, experimental, path stroker has been added.  It doesn't suffer
+    - A new, EXPERIMENTAL, path stroker has been added.  It doesn't suffer
       from severe rounding errors and treat bezier arcs directly.  Still
       work in progress (i.e. not part of the official API).  See the file
       <freetype/ftstroker.h> for some of the details.
diff --git a/include/freetype/freetype.h b/include/freetype/freetype.h
index 4e7b03b..3a41daf 100644
--- a/include/freetype/freetype.h
+++ b/include/freetype/freetype.h
@@ -2207,7 +2207,8 @@
   /*      changes the hinting to prevent stem width quantization. This     */
   /*      results in glyph shapes that are more similar to the original,   */
   /*      while being a bit more fuzzy ("better shapes", instead of        */
-  /*      "better contrast" if you want :-)                                */
+  /*      "better contrast" if you want :-) THIS IS STILL EXPERIMENTAL,    */
+  /*      FOR NOW, THIS WILL PRODUCE RESULTS SIMILAR TO NORMAL MODE !!     */
   /*                                                                       */
   /*    FT_RENDER_MODE_MONO ::                                             */
   /*      This mode corresponds to 1-bit bitmaps.                          */
@@ -2216,7 +2217,8 @@
   /*      This mode corresponds to horizontal RGB/BGR sub-pixel displays,  */
   /*      like LCD-screens.  It produces 8-bit bitmaps that are 3 times    */
   /*      the width of the original glyph outline in pixels, and which use */
-  /*      the @FT_PIXEL_MODE_LCD mode.                                     */
+  /*      the @FT_PIXEL_MODE_LCD mode. THIS IS STILL EXPERIMENTAL, DO NOT  */
+  /*      USE FOR NOW !!                                                   */
   /*                                                                       */
   /*    FT_RENDER_MODE_LCD_V ::                                            */
   /*      This mode corresponds to vertical RGB/BGR sub-pixel displays     */
@@ -2227,7 +2229,8 @@
   /* <Note>                                                                */
   /*   The LCD-optimized glyph bitmaps produced by FT_Render_Glyph are     */
   /*   _not filtered_ to reduce color-fringes.  It is up to the caller to  */
-  /*   perform this pass.                                                  */
+  /*   perform this pass. THIS IS STILL EXPERIMENTAL, DO NOT USE FOR NOW   */
+  /*   !!                                                                  */
   /*                                                                       */
   typedef enum  FT_Render_Mode_
   {
diff --git a/include/freetype/ftchapters.h b/include/freetype/ftchapters.h
index 6c20199..c134ec1 100644
--- a/include/freetype/ftchapters.h
+++ b/include/freetype/ftchapters.h
@@ -30,6 +30,7 @@
 /*    type1_tables                                                         */
 /*    sfnt_names                                                           */
 /*    bdf_fonts                                                            */
+/*    pfr_fonts                                                            */
 /*                                                                         */
 /***************************************************************************/
 
diff --git a/include/freetype/ftgzip.h b/include/freetype/ftgzip.h
index 6dd3e39..59de4dd 100644
--- a/include/freetype/ftgzip.h
+++ b/include/freetype/ftgzip.h
@@ -24,6 +24,22 @@
 
 FT_BEGIN_HEADER
 
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Section>                                                             */
+  /*    gzip                                                               */
+  /*                                                                       */
+  /* <Title>                                                               */
+  /*    GZIP Streams                                                       */
+  /*                                                                       */
+  /* <Abstract>                                                            */
+  /*    Using gzip-compressed font files                                   */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    This section contains the declaration of Gzip-specific functions.  */
+  /*                                                                       */
+  /*************************************************************************/
+
  /************************************************************************
   *
   * @type: FT_Stream_OpenGzip
@@ -51,7 +67,7 @@
   *   process each time seeking backwards is needed within the stream
   *
   *   in certain builds of the library, gzip compression recognition is
-  *   automatic when calling @FT_New_Face or @FT_OpenFace. This means that
+  *   automatic when calling @FT_New_Face or @FT_Open_Face. This means that
   *   if no font driver is capable of handling the raw compressed file,
   *   the library will try to open a gzip stream from it and re-open
   *   the face with it.
