diff --git a/NEWS b/NEWS
index e52dc21..1994703 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,37 @@
+Overview of changes leading to 4.4.0
+Monday, June 27, 2022
+====================================
+- Caching of variable fonts shaping, in particular when using HarfBuzz’s own
+  font loading functions (ot). Bringing performance of variable shaping in par
+  with non-variable fonts shaping. (Behdad Esfahbod)
+- Caching of format 2 “Contextual Substitution” and “Chained Contexts
+  Substitution” lookups. Resulting in up to 20% speedup of lookup-heavy fonts
+  like Gulzar or Noto Nastaliq Urdu. (Behdad Esfahbod)
+- Improved ANSI output from hb-view. (Behdad Esfahbod)
+- Support for shaping legacy, pre-OpenType Windows 3.1-era, Arabic fonts that
+  relied on a fixed PUA encoding. (Khaled Hosny, Behdad Esfahbod)
+- Sinhala script is now shaped by the USE shaper instead of “indic” one.
+  (Behdad Esfahbod, David Corbett)
+- Thai shaper improvements. (David Corbett)
+- hb-ot-name API supports approximate BCP-47 language matching, for example
+  asking for “en_US” in a font that has only “en” names will return them.
+  (Behdad Esfahbod)
+- Optimized TrueType glyph shape loading. (Behdad Esfahbod)
+- Fix subsetting of HarfBuzz faces created via hb_face_create_for_tables().
+  (Garret Rieger)
+- Add 32 bit var store support to the subsetter. (Garret Rieger)
+
+- New API
++HB_BUFFER_FLAG_DEFINED
++HB_BUFFER_SERIALIZE_FLAG_DEFINED
++hb_font_changed()
++hb_font_get_serial()
++hb_ft_hb_font_changed()
++hb_set_hash()
++hb_map_copy()
++hb_map_hash()
+
+
 Overview of changes leading to 4.3.0
 Friday, May 20, 2022
 ====================================
diff --git a/configure.ac b/configure.ac
index d68244e..c222a60 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
 AC_PREREQ([2.64])
 AC_INIT([HarfBuzz],
-        [4.3.0],
+        [4.4.0],
         [https://github.com/harfbuzz/harfbuzz/issues/new],
         [harfbuzz],
         [http://harfbuzz.org/])
diff --git a/meson.build b/meson.build
index 6e9d769..a63a4fc 100644
--- a/meson.build
+++ b/meson.build
@@ -1,6 +1,6 @@
 project('harfbuzz', 'c', 'cpp',
   meson_version: '>= 0.55.0',
-  version: '4.3.0',
+  version: '4.4.0',
   default_options: [
     'cpp_rtti=false',       # Just to support msvc, we are passing -fno-exceptions also anyway
     'cpp_std=c++11',
diff --git a/src/hb-buffer.h b/src/hb-buffer.h
index 0d9f93e..22fb349 100644
--- a/src/hb-buffer.h
+++ b/src/hb-buffer.h
@@ -373,7 +373,7 @@
  *                      flag indicating that the @HB_GLYPH_FLAG_UNSAFE_TO_CONCAT
  *                      glyph-flag should be produced by the shaper. By default
  *                      it will not be produced since it incurs a cost. Since: 4.0.0
- * @HB_BUFFER_FLAG_DEFINED: All currently defined flags: Since: REPLACEME
+ * @HB_BUFFER_FLAG_DEFINED: All currently defined flags: Since: 4.4.0
  *
  * Flags for #hb_buffer_t.
  *
@@ -586,7 +586,7 @@
  * @HB_BUFFER_SERIALIZE_FLAG_GLYPH_FLAGS: serialize glyph flags. Since: 1.5.0
  * @HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES: do not serialize glyph advances,
  *  glyph offsets will reflect absolute glyph positions. Since: 1.8.0
- * @HB_BUFFER_SERIALIZE_FLAG_DEFINED: All currently defined flags. Since: REPLACEME
+ * @HB_BUFFER_SERIALIZE_FLAG_DEFINED: All currently defined flags. Since: 4.4.0
  *
  * Flags that control what glyph information are serialized in hb_buffer_serialize_glyphs().
  *
diff --git a/src/hb-font.cc b/src/hb-font.cc
index 2760b09..51c55a6 100644
--- a/src/hb-font.cc
+++ b/src/hb-font.cc
@@ -1945,7 +1945,7 @@
  *
  * Return value: serial number
  *
- * Since: REPLACEME.
+ * Since: 4.4.0.
  **/
 unsigned int
 hb_font_get_serial (hb_font_t *font)
@@ -1961,7 +1961,7 @@
  * This has the effect of increasing the serial as returned
  * by hb_font_get_serial(), which invalidates internal caches.
  *
- * Since: REPLACEME.
+ * Since: 4.4.0.
  **/
 void
 hb_font_changed (hb_font_t *font)
diff --git a/src/hb-ft.cc b/src/hb-ft.cc
index 84a426e..b526a82 100644
--- a/src/hb-ft.cc
+++ b/src/hb-ft.cc
@@ -1042,7 +1042,7 @@
  *
  * Return value: true if changed, false otherwise
  *
- * Since: REPLACEME
+ * Since: 4.4.0
  **/
 hb_bool_t
 hb_ft_hb_font_changed (hb_font_t *font)
diff --git a/src/hb-map.cc b/src/hb-map.cc
index 4e94cdd..089615c 100644
--- a/src/hb-map.cc
+++ b/src/hb-map.cc
@@ -180,7 +180,7 @@
  *
  * Return value: Newly-allocated map.
  *
- * Since: REPLACEME
+ * Since: 4.4.0
  **/
 hb_map_t *
 hb_map_copy (const hb_map_t *map)
@@ -337,7 +337,7 @@
  * Return value:
  * A hash of @map.
  *
- * Since: REPLACEME
+ * Since: 4.4.0
  **/
 HB_EXTERN unsigned int
 hb_map_hash (const hb_map_t *map)
diff --git a/src/hb-set.cc b/src/hb-set.cc
index 16efd81..2d45829 100644
--- a/src/hb-set.cc
+++ b/src/hb-set.cc
@@ -368,7 +368,7 @@
  * Return value:
  * A hash of @set.
  *
- * Since: REPLACEME
+ * Since: 4.4.0
  **/
 HB_EXTERN unsigned int
 hb_set_hash (const hb_set_t *set)
diff --git a/src/hb-version.h b/src/hb-version.h
index ae707cd..2f6799c 100644
--- a/src/hb-version.h
+++ b/src/hb-version.h
@@ -47,7 +47,7 @@
  *
  * The minor component of the library version available at compile-time.
  */
-#define HB_VERSION_MINOR 3
+#define HB_VERSION_MINOR 4
 /**
  * HB_VERSION_MICRO:
  *
@@ -60,7 +60,7 @@
  *
  * A string literal containing the library version available at compile-time.
  */
-#define HB_VERSION_STRING "4.3.0"
+#define HB_VERSION_STRING "4.4.0"
 
 /**
  * HB_VERSION_ATLEAST:
