From: %YOU%
To: dev@couchdb.apache.org
Subject: [REQUEST] Binaries for %VERSION%-rc.%CANDIDATE%
================================================================================

Dear community,

This is a request to prepare binaries for the %VERSION%-rc.%CANDIDATE% release.

Please follow the release procedure:

    http://wiki.apache.org/couchdb/Release_Procedure#Preparing_the_Binary_Packages

Everyone is welcome to prepare binaries for this release.

Thanks,
