No function clause matching in Ecto.Date.to_string/1

I am trying to create blog with phoenix for learning purpose , but just follow the tutorial,here Building a Blog with Phoenix - Playing With Fire

but this blog is using the older version of deps, I am on the final step but facing error, anyone please give me some advice and how to fix it .

article_view.ex

defmodule Pxblog.ArticleView do
use Pxblog.Web, :view
use Timex

def list_date_format(date, format_string \ “%B %d, %Y”) do
<< Ecto.Date.to_iso8601(date) <> “T00:00:00Z” >>
|> DateFormat.parse!(“{ISOz}”)
|> DateFormat.format!(format_string, :strftime)
end
end

post_view.ex

defmodule Pxblog.PostView do
  use Pxblog.Web, :view
  use Timex
  def publish_status(true), do: "Published"
  def publish_status(_), do: "Draft"

  def date_format(date), do: date_format date, "%d %b %Y"

    def date_format(date = %Ecto.DateTime{}, format_string) do
      Ecto.DateTime.to_iso8601(date)
      |> date_formatter(format_string)
    end
    def date_format(date = %Ecto.Date{}, format_string) do
      << Ecto.Date.to_iso8601(date) <> "T00:00:00Z" >>
      |> date_formatter(format_string)
    end
    def date_format(_, _format), do: ""

    defp date_formatter(date, format_string) do
      date
      |> DateFormat.parse!("{ISOz}")
      |> DateFormat.format!(format_string, :strftime)
    end

end

mix.exs

defp deps do
[
{:phoenix, “~> 1.3.0-rc”},
{:phoenix_pubsub, “~> 1.0”},
{:phoenix_ecto, “~> 3.2”},
{:postgrex, “>= 0.0.0”},
{:phoenix_html, “~> 2.10”},
{:phoenix_live_reload, “~> 1.0”, only: :dev},
{:gettext, “~> 0.11”},
{:cowboy, “~> 1.0”},
{:earmark, “~> 0.1”},
{:timex, “~> 3.1”} # BUT in tutorial is using 0.19
]
end

My error