diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7b65b03..db5acba 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -75,11 +75,11 @@
 # For versions without ABI changes, bump the smallest number in CERES_VERSION,
 # but leave the CERES_ABI_VERSION unchanged.
 SET(CERES_VERSION_MAJOR 1)
-SET(CERES_VERSION_MINOR 6)
+SET(CERES_VERSION_MINOR 7)
 SET(CERES_VERSION_PATCH 0)
 SET(CERES_VERSION
     ${CERES_VERSION_MAJOR}.${CERES_VERSION_MINOR}.${CERES_VERSION_PATCH})
-SET(CERES_ABI_VERSION 1.6.0)
+SET(CERES_ABI_VERSION 1.7.0)
 
 ENABLE_TESTING()
 
diff --git a/docs/source/building.rst b/docs/source/building.rst
index 9ff8d8d..c326fd1 100644
--- a/docs/source/building.rst
+++ b/docs/source/building.rst
@@ -93,10 +93,10 @@
 
 .. code-block:: bash
 
- tar zxf ceres-solver-1.6.0.tar.gz
+ tar zxf ceres-solver-1.7.0.tar.gz
  mkdir ceres-bin
  cd ceres-bin
- cmake ../ceres-solver-1.6.0
+ cmake ../ceres-solver-1.7.0
  make -j3
  make test
 
@@ -106,7 +106,7 @@
 
 .. code-block:: bash
 
- bin/simple_bundle_adjuster ../ceres-solver-1.6.0/data/problem-16-22106-pre.txt
+ bin/simple_bundle_adjuster ../ceres-solver-1.7.0/data/problem-16-22106-pre.txt
 
 This runs Ceres for a maximum of 10 iterations using the
 ``DENSE_SCHUR`` linear solver. The output should look something like
@@ -190,10 +190,10 @@
 
 .. code-block:: bash
 
-   tar zxf ceres-solver-1.6.0.tar.gz
+   tar zxf ceres-solver-1.7.0.tar.gz
    mkdir ceres-bin
    cd ceres-bin
-   cmake ../ceres-solver-1.6.0
+   cmake ../ceres-solver-1.7.0
    make -j3
    make test
 
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 99301ed..f5ffb6d 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -48,9 +48,9 @@
 # built documents.
 #
 # The short X.Y version.
-version = '1.6'
+version = '1.7'
 # The full version, including alpha/beta/rc tags.
-release = '1.6.0'
+release = '1.7.0'
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
diff --git a/docs/source/index.rst b/docs/source/index.rst
index e34b707..f20dad4 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -29,7 +29,7 @@
 * If you use Ceres Solver for a publication, you must cite it as::
 
     @misc{ceres-solver,
-      author = "Sameer Agarwal and Keir Mierle",
+      author = "Sameer Agarwal and Keir Mierle and Others",
       title = "Ceres Solver",
       howpublished = "\url{https://code.google.com/p/ceres-solver/}",
     }
diff --git a/docs/source/version_history.rst b/docs/source/version_history.rst
index b76e43c..5e1a150 100644
--- a/docs/source/version_history.rst
+++ b/docs/source/version_history.rst
@@ -4,37 +4,70 @@
 Version History
 ===============
 
-HEAD (52c3d9a)
-==============
+1.7.0
+=====
 
 New Features
 ------------
 
-#. Sparse and dense covariance estimation (EXPERIMENTAL).
+#. Sparse and dense covariance estimation.
+#. A new Wolfe line search. (Alex Stewart)
+#. ``BFGS`` line search direction. (Alex Stewart)
 #. C API
 #. Speeded up the use of loss functions > 17x.
 #. Use of Inner iterations can now be adaptively stopped. Iteration
    and runtime statistics for inner iterations are not reported in
    ``Solver::Summary`` and ``Solver::Summary::FullReport``.
 #. Add BlockRandomAccessCRSMatrix.
+#. Speeded up automatic differentiation by 7\%.
 #. Bundle adjustment example from libmv/Blender (Sergey Sharybin)
+#. Add the ability to turn shared library compilation on and off
+#. No more dependence on Protocol Buffers.
+#. Incomplete LQ factorization.
+#. Ability to write trust region problems to disk.
+#. Add sinh, cosh, tanh and tan functions to automatic differentiation
+   (Johannes Schönberger)
 
 Bug Fixes
 ---------
 
 #. Add documentation for minimizer progress output.
-#. Lint and other cleanups (William Rucklidge)
+#. Lint and other cleanups (William Rucklidge and James Roseborough)
 #. Collections port fix for MSC 2008 (Sergey Sharybin)
 #. Various corrections and cleanups in the documentation.
-#. Change the path where CeresConfig.cmake is installed (Pablo Speciale)
+#. Change the path where CeresConfig.cmake is installed (Pablo
+   Speciale)
 #. Minor erros in documentation (Pablo Speciale)
-#. Updated depend.cmake to follow CMake IF convention. (Joydeep Biswas)
+#. Updated depend.cmake to follow CMake IF convention. (Joydeep
+   Biswas)
 #. Stablize the schur ordering algorithm.
 #. Update license header in split.h.
-#. Enabling -O4 (link-time optimization) only if compiler/linker support it. (Alex Stewart)
+#. Enabling -O4 (link-time optimization) only if compiler/linker
+   support it. (Alex Stewart)
 #. Consistent glog path across files.
-#. ceres-solver.spec: Use cleaner, more conventional Release string (Taylor Braun-Jones)
+#. ceres-solver.spec: Use cleaner, more conventional Release string
+   (Taylor Braun-Jones)
 #. Fix compile bug on RHEL6 due to missing header (Taylor Braun-Jones)
+#. CMake file is less verbose.
+#. Use the latest upstream version of google-test and gmock.
+#. Rationalize some of the variable names in ``Solver::Options``.
+#. Improve Summary::FullReport when line search is used.
+#. Expose line search parameters in ``Solver::Options``.
+#. Fix update of L-BFGS history buffers after they become full. (Alex
+   Stewart)
+#. Fix configuration error on systems without SuiteSparse installed
+   (Sergey Sharybin)
+#. Enforce the read call returns correct value in ``curve_fitting_c.c``
+   (Arnaud Gelas)
+#. Fix DynamicAutoDiffCostFunction (Richard Stebbing)
+#. Fix Problem::RemoveParameterBlock documentation (Johannes
+   Schönberger)
+#. Fix a logging bug in parameter_block.h
+#. Refactor the preconditioner class structure.
+#. Fix an uninitialized variable warning when building with ``GCC``.
+#. Fix a reallocation bug in
+   ``CreateJacobianBlockSparsityTranspose``. (Yuliy Schwartzburg)
+#. Add a define for O_BINARY.
 
 
 1.6.0
diff --git a/include/ceres/ceres.h b/include/ceres/ceres.h
index 5dcca07..61b8b94 100644
--- a/include/ceres/ceres.h
+++ b/include/ceres/ceres.h
@@ -34,8 +34,8 @@
 #ifndef CERES_PUBLIC_CERES_H_
 #define CERES_PUBLIC_CERES_H_
 
-#define CERES_VERSION 1.6.0
-#define CERES_ABI_VERSION 1.6.0
+#define CERES_VERSION 1.7.0
+#define CERES_ABI_VERSION 1.7.0
 
 #include "ceres/autodiff_cost_function.h"
 #include "ceres/autodiff_local_parameterization.h"
diff --git a/scripts/ceres-solver.spec b/scripts/ceres-solver.spec
index 6bac43a..69b08e6 100644
--- a/scripts/ceres-solver.spec
+++ b/scripts/ceres-solver.spec
@@ -1,15 +1,15 @@
 Name:           ceres-solver
-Version:        1.6.0
+Version:        1.7.0
 # Release candidate versions are messy. Give them a release of
 # e.g. "0.1.0%{?dist}" for RC1 (and remember to adjust the Source0
 # URL). Non-RC releases go back to incrementing integers starting at 1.
-Release:        1%{?dist}
+Release:        "0.1.0%{?dist}"
 Summary:        A non-linear least squares minimizer
 
 Group:          Development/Libraries
 License:        BSD
 URL:            http://code.google.com/p/ceres-solver/
-Source0:        http://%{name}.googlecode.com/files/%{name}-%{version}.tar.gz
+Source0:        http://%{name}.googlecode.com/files/%{name}-%{version}rc1.tar.gz
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
 %if (0%{?rhel} == 06)
@@ -21,7 +21,6 @@
 BuildRequires:  suitesparse-devel
 # Use atlas for BLAS and LAPACK
 BuildRequires:  atlas-devel
-BuildRequires:  protobuf-devel
 BuildRequires:  gflags-devel
 BuildRequires:  glog-devel
 
@@ -105,6 +104,9 @@
 
 
 %changelog
+* Mon July 18 2013 Sameer Agarwal <sameeragarwal@google.com> - 1.7.0-0
+- Bump version
+
 * Mon Apr 29 2013 Sameer Agarwal <sameeragarwal@google.com> - 1.6.0-1
 - Bump version
 
