      * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
      *                                                       *
      *  THIS RELEASE STREAM IS OPEN TO BUG FIXES.            *
      *                                                       *
      * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

This file tracks the status of releases in the 1.3.x line.

Status of 1.3.10:

Candidate changes:
==================

 * r1775239-1781240
   Fix build with current LibreSSL and OpenSSL versions.
   Justification:
     Serf should compile out of the box.
   Branch: ^/serf/branches/1.3.x-sslbuild
   Votes:
     +1: stsp, astieger

 * r1712131,1807594,1811088
   Add support for building with VS2017, assuming a new enough scons.
   Votes:
     +1: rhuijben

 * r1811083
   Make the SCons script compatible with SCons 3.0.0.
   Votes:
     +1: rhuijben, astieger

Veto-blocked changes:
=====================

Approved changes:
=================

