rabbitmq-tutorials/swift
Spring Operator 5436636673 URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.

* http://blog.listincomprehension.com/search/label/procket (200) with 1 occurrences could not be migrated:
   ([https](https://blog.listincomprehension.com/search/label/procket) result ClosedChannelException).
* http://central.maven.org/maven2/com/rabbitmq/amqp-client/4.0.2/amqp-client-4.0.2.jar (200) with 1 occurrences could not be migrated:
   ([https](https://central.maven.org/maven2/com/rabbitmq/amqp-client/4.0.2/amqp-client-4.0.2.jar) result SSLHandshakeException).
* http://central.maven.org/maven2/org/slf4j/slf4j-api/1.7.21/slf4j-api-1.7.21.jar (200) with 1 occurrences could not be migrated:
   ([https](https://central.maven.org/maven2/org/slf4j/slf4j-api/1.7.21/slf4j-api-1.7.21.jar) result SSLHandshakeException).
* http://central.maven.org/maven2/org/slf4j/slf4j-simple/1.7.22/slf4j-simple-1.7.22.jar (200) with 1 occurrences could not be migrated:
   ([https](https://central.maven.org/maven2/org/slf4j/slf4j-simple/1.7.22/slf4j-simple-1.7.22.jar) result SSLHandshakeException).
* http://clojurerabbitmq.info (200) with 1 occurrences could not be migrated:
   ([https](https://clojurerabbitmq.info) result AnnotatedConnectException).
* http://dozzie.jarowit.net/trac/wiki/TOML (200) with 1 occurrences could not be migrated:
   ([https](https://dozzie.jarowit.net/trac/wiki/TOML) result SSLHandshakeException).
* http://dozzie.jarowit.net/trac/wiki/subproc (200) with 1 occurrences could not be migrated:
   ([https](https://dozzie.jarowit.net/trac/wiki/subproc) result SSLHandshakeException).
* http://e2project.org (200) with 1 occurrences could not be migrated:
   ([https](https://e2project.org) result AnnotatedConnectException).
* http://nitrogenproject.com/ (200) with 2 occurrences could not be migrated:
   ([https](https://nitrogenproject.com/) result ConnectTimeoutException).
* http://proper.softlab.ntua.gr (200) with 1 occurrences could not be migrated:
   ([https](https://proper.softlab.ntua.gr) result SSLHandshakeException).
* http://rubybunny.info (200) with 2 occurrences could not be migrated:
   ([https](https://rubybunny.info) result AnnotatedConnectException).
* http://yaws.hyber.org (200) with 1 occurrences could not be migrated:
   ([https](https://yaws.hyber.org) result AnnotatedConnectException).
* http://schemas.microsoft.com/developer/msbuild/2003 (404) with 13 occurrences could not be migrated:
   ([https](https://schemas.microsoft.com/developer/msbuild/2003) result AnnotatedConnectException).
* http://choven.ca (503) with 1 occurrences could not be migrated:
   ([https](https://choven.ca) result ConnectTimeoutException).

# Fixed URLs

## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.

* http://fixprotocol.org/ (301) with 1 occurrences migrated to:
  https://fixtrading.org ([https](https://fixprotocol.org/) result SSLHandshakeException).
* http://cl-rabbit.io/cl-bunny (UnknownHostException) with 2 occurrences migrated to:
  https://cl-rabbit.io/cl-bunny ([https](https://cl-rabbit.io/cl-bunny) result UnknownHostException).
* http://cl-rabbit.io/cl-bunny/tutorials/ (UnknownHostException) with 1 occurrences migrated to:
  https://cl-rabbit.io/cl-bunny/tutorials/ ([https](https://cl-rabbit.io/cl-bunny/tutorials/) result UnknownHostException).
* http://cl-rabbit.io/cl-bunny/tutorials/tutorial-five-cl.html (UnknownHostException) with 1 occurrences migrated to:
  https://cl-rabbit.io/cl-bunny/tutorials/tutorial-five-cl.html ([https](https://cl-rabbit.io/cl-bunny/tutorials/tutorial-five-cl.html) result UnknownHostException).
* http://cl-rabbit.io/cl-bunny/tutorials/tutorial-four-cl.html (UnknownHostException) with 1 occurrences migrated to:
  https://cl-rabbit.io/cl-bunny/tutorials/tutorial-four-cl.html ([https](https://cl-rabbit.io/cl-bunny/tutorials/tutorial-four-cl.html) result UnknownHostException).
* http://cl-rabbit.io/cl-bunny/tutorials/tutorial-one-cl.html (UnknownHostException) with 1 occurrences migrated to:
  https://cl-rabbit.io/cl-bunny/tutorials/tutorial-one-cl.html ([https](https://cl-rabbit.io/cl-bunny/tutorials/tutorial-one-cl.html) result UnknownHostException).
* http://cl-rabbit.io/cl-bunny/tutorials/tutorial-six-cl.html (UnknownHostException) with 1 occurrences migrated to:
  https://cl-rabbit.io/cl-bunny/tutorials/tutorial-six-cl.html ([https](https://cl-rabbit.io/cl-bunny/tutorials/tutorial-six-cl.html) result UnknownHostException).
* http://cl-rabbit.io/cl-bunny/tutorials/tutorial-three-cl.html (UnknownHostException) with 1 occurrences migrated to:
  https://cl-rabbit.io/cl-bunny/tutorials/tutorial-three-cl.html ([https](https://cl-rabbit.io/cl-bunny/tutorials/tutorial-three-cl.html) result UnknownHostException).
* http://cl-rabbit.io/cl-bunny/tutorials/tutorial-two-cl.html (UnknownHostException) with 1 occurrences migrated to:
  https://cl-rabbit.io/cl-bunny/tutorials/tutorial-two-cl.html ([https](https://cl-rabbit.io/cl-bunny/tutorials/tutorial-two-cl.html) result UnknownHostException).
* http://erldb.org (UnknownHostException) with 1 occurrences migrated to:
  https://erldb.org ([https](https://erldb.org) result UnknownHostException).
* http://hg.rabbitmq.com/rabbitmq-erlang-client/ (UnknownHostException) with 1 occurrences migrated to:
  https://hg.rabbitmq.com/rabbitmq-erlang-client/ ([https](https://hg.rabbitmq.com/rabbitmq-erlang-client/) result UnknownHostException).
* http://elixir-lang.org/docs/stable/mix/Mix.html (301) with 1 occurrences migrated to:
  https://elixir-lang.org/docs/stable/mix/Mix.html ([https](https://elixir-lang.org/docs/stable/mix/Mix.html) result 404).

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* http://cloudi.org/ with 27 occurrences migrated to:
  https://cloudi.org/ ([https](https://cloudi.org/) result 200).
* http://docs.spring.io/spring-amqp/reference/html/ with 1 occurrences migrated to:
  https://docs.spring.io/spring-amqp/reference/html/ ([https](https://docs.spring.io/spring-amqp/reference/html/) result 200).
* http://elixir-lang.org with 1 occurrences migrated to:
  https://elixir-lang.org ([https](https://elixir-lang.org) result 200).
* http://elixir-lang.org/install.html with 1 occurrences migrated to:
  https://elixir-lang.org/install.html ([https](https://elixir-lang.org/install.html) result 200).
* http://erlware.org/ with 1 occurrences migrated to:
  https://erlware.org/ ([https](https://erlware.org/) result 200).
* http://getcomposer.org with 2 occurrences migrated to:
  https://getcomposer.org ([https](https://getcomposer.org) result 200).
* http://github.com/rabbitmq/rabbitmq-tutorials with 1 occurrences migrated to:
  https://github.com/rabbitmq/rabbitmq-tutorials ([https](https://github.com/rabbitmq/rabbitmq-tutorials) result 200).
* http://hackage.haskell.org/package/amqp with 1 occurrences migrated to:
  https://hackage.haskell.org/package/amqp ([https](https://hackage.haskell.org/package/amqp) result 200).
* http://inaka.github.io/cowboy-trails/ with 1 occurrences migrated to:
  https://inaka.github.io/cowboy-trails/ ([https](https://inaka.github.io/cowboy-trails/) result 200).
* http://leiningen.org with 1 occurrences migrated to:
  https://leiningen.org ([https](https://leiningen.org) result 200).
* http://ninenines.eu with 6 occurrences migrated to:
  https://ninenines.eu ([https](https://ninenines.eu) result 200).
* http://www.actordb.com/ with 2 occurrences migrated to:
  https://www.actordb.com/ ([https](https://www.actordb.com/) result 200).
* http://www.apple.com/DTDs/PropertyList-1.0.dtd with 10 occurrences migrated to:
  https://www.apple.com/DTDs/PropertyList-1.0.dtd ([https](https://www.apple.com/DTDs/PropertyList-1.0.dtd) result 200).
* http://www.cliki.net/fibonacci with 1 occurrences migrated to:
  https://www.cliki.net/fibonacci ([https](https://www.cliki.net/fibonacci) result 200).
* http://www.cs.kent.ac.uk/projects/wrangler/Home.html with 1 occurrences migrated to:
  https://www.cs.kent.ac.uk/projects/wrangler/Home.html ([https](https://www.cs.kent.ac.uk/projects/wrangler/Home.html) result 200).
* http://www.eclipse.org/legal/epl-v10.html with 1 occurrences migrated to:
  https://www.eclipse.org/legal/epl-v10.html ([https](https://www.eclipse.org/legal/epl-v10.html) result 200).
* http://www.rabbitmq.com/download.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/download.html ([https](https://www.rabbitmq.com/download.html) result 200).
* http://www.rabbitmq.com/erlang-client-user-guide.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/erlang-client-user-guide.html ([https](https://www.rabbitmq.com/erlang-client-user-guide.html) result 200).
* http://www.rabbitmq.com/getstarted.html with 20 occurrences migrated to:
  https://www.rabbitmq.com/getstarted.html ([https](https://www.rabbitmq.com/getstarted.html) result 200).
* http://www.rabbitmq.com/releases/rabbitmq-server/ with 1 occurrences migrated to:
  https://www.rabbitmq.com/releases/rabbitmq-server/ ([https](https://www.rabbitmq.com/releases/rabbitmq-server/) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-five-javascript.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-five-javascript.html ([https](https://www.rabbitmq.com/tutorials/tutorial-five-javascript.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-five-php.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-five-php.html ([https](https://www.rabbitmq.com/tutorials/tutorial-five-php.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-four-javascript.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-four-javascript.html ([https](https://www.rabbitmq.com/tutorials/tutorial-four-javascript.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-four-php.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-four-php.html ([https](https://www.rabbitmq.com/tutorials/tutorial-four-php.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-one-javascript.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-one-javascript.html ([https](https://www.rabbitmq.com/tutorials/tutorial-one-javascript.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-one-php.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-one-php.html ([https](https://www.rabbitmq.com/tutorials/tutorial-one-php.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-six-javascript.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-six-javascript.html ([https](https://www.rabbitmq.com/tutorials/tutorial-six-javascript.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-six-php.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-six-php.html ([https](https://www.rabbitmq.com/tutorials/tutorial-six-php.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-three-javascript.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-three-javascript.html ([https](https://www.rabbitmq.com/tutorials/tutorial-three-javascript.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-three-php.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-three-php.html ([https](https://www.rabbitmq.com/tutorials/tutorial-three-php.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-two-javascript.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-two-javascript.html ([https](https://www.rabbitmq.com/tutorials/tutorial-two-javascript.html) result 200).
* http://www.rabbitmq.com/tutorials/tutorial-two-php.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials/tutorial-two-php.html ([https](https://www.rabbitmq.com/tutorials/tutorial-two-php.html) result 200).
* http://www.rebar3.org with 1 occurrences migrated to:
  https://www.rebar3.org ([https](https://www.rebar3.org) result 200).
* http://inaka.github.com/apns4erl with 1 occurrences migrated to:
  https://inaka.github.com/apns4erl ([https](https://inaka.github.com/apns4erl) result 301).
* http://inaka.github.com/edis/ with 1 occurrences migrated to:
  https://inaka.github.com/edis/ ([https](https://inaka.github.com/edis/) result 301).
* http://lasp-lang.org/ with 1 occurrences migrated to:
  https://lasp-lang.org/ ([https](https://lasp-lang.org/) result 301).
* http://rabbitmq.com/download.html with 1 occurrences migrated to:
  https://rabbitmq.com/download.html ([https](https://rabbitmq.com/download.html) result 301).
* http://saleyn.github.com/erlexec with 1 occurrences migrated to:
  https://saleyn.github.com/erlexec ([https](https://saleyn.github.com/erlexec) result 301).
* http://erlang.org/download.html (302) with 1 occurrences migrated to:
  https://www.erlang.org/download.html ([https](https://erlang.org/download.html) result 301).
* http://www.erlang.org/download/otp_src_R14B03.tar.gz with 1 occurrences migrated to:
  https://www.erlang.org/download/otp_src_R14B03.tar.gz ([https](https://www.erlang.org/download/otp_src_R14B03.tar.gz) result 301).
* http://www.rabbitmq.com/releases with 1 occurrences migrated to:
  https://www.rabbitmq.com/releases ([https](https://www.rabbitmq.com/releases) result 301).
* http://www.rabbitmq.com/tutorial-five-dotnet.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-five-dotnet.html ([https](https://www.rabbitmq.com/tutorial-five-dotnet.html) result 301).
* http://www.rabbitmq.com/tutorial-five-go.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-five-go.html ([https](https://www.rabbitmq.com/tutorial-five-go.html) result 301).
* http://www.rabbitmq.com/tutorial-five-java.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-five-java.html ([https](https://www.rabbitmq.com/tutorial-five-java.html) result 301).
* http://www.rabbitmq.com/tutorial-five-python.html with 4 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-five-python.html ([https](https://www.rabbitmq.com/tutorial-five-python.html) result 301).
* http://www.rabbitmq.com/tutorial-five-ruby.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-five-ruby.html ([https](https://www.rabbitmq.com/tutorial-five-ruby.html) result 301).
* http://www.rabbitmq.com/tutorial-four-dotnet.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-four-dotnet.html ([https](https://www.rabbitmq.com/tutorial-four-dotnet.html) result 301).
* http://www.rabbitmq.com/tutorial-four-go.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-four-go.html ([https](https://www.rabbitmq.com/tutorial-four-go.html) result 301).
* http://www.rabbitmq.com/tutorial-four-java.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-four-java.html ([https](https://www.rabbitmq.com/tutorial-four-java.html) result 301).
* http://www.rabbitmq.com/tutorial-four-python.html with 4 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-four-python.html ([https](https://www.rabbitmq.com/tutorial-four-python.html) result 301).
* http://www.rabbitmq.com/tutorial-four-ruby.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-four-ruby.html ([https](https://www.rabbitmq.com/tutorial-four-ruby.html) result 301).
* http://www.rabbitmq.com/tutorial-one-dotnet.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-one-dotnet.html ([https](https://www.rabbitmq.com/tutorial-one-dotnet.html) result 301).
* http://www.rabbitmq.com/tutorial-one-go.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-one-go.html ([https](https://www.rabbitmq.com/tutorial-one-go.html) result 301).
* http://www.rabbitmq.com/tutorial-one-java.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-one-java.html ([https](https://www.rabbitmq.com/tutorial-one-java.html) result 301).
* http://www.rabbitmq.com/tutorial-one-python.html with 4 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-one-python.html ([https](https://www.rabbitmq.com/tutorial-one-python.html) result 301).
* http://www.rabbitmq.com/tutorial-one-ruby.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-one-ruby.html ([https](https://www.rabbitmq.com/tutorial-one-ruby.html) result 301).
* http://www.rabbitmq.com/tutorial-six-dotnet.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-six-dotnet.html ([https](https://www.rabbitmq.com/tutorial-six-dotnet.html) result 301).
* http://www.rabbitmq.com/tutorial-six-go.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-six-go.html ([https](https://www.rabbitmq.com/tutorial-six-go.html) result 301).
* http://www.rabbitmq.com/tutorial-six-java.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-six-java.html ([https](https://www.rabbitmq.com/tutorial-six-java.html) result 301).
* http://www.rabbitmq.com/tutorial-six-python.html with 3 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-six-python.html ([https](https://www.rabbitmq.com/tutorial-six-python.html) result 301).
* http://www.rabbitmq.com/tutorial-six-ruby.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-six-ruby.html ([https](https://www.rabbitmq.com/tutorial-six-ruby.html) result 301).
* http://www.rabbitmq.com/tutorial-three-dotnet.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-three-dotnet.html ([https](https://www.rabbitmq.com/tutorial-three-dotnet.html) result 301).
* http://www.rabbitmq.com/tutorial-three-go.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-three-go.html ([https](https://www.rabbitmq.com/tutorial-three-go.html) result 301).
* http://www.rabbitmq.com/tutorial-three-java.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-three-java.html ([https](https://www.rabbitmq.com/tutorial-three-java.html) result 301).
* http://www.rabbitmq.com/tutorial-three-python.html with 4 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-three-python.html ([https](https://www.rabbitmq.com/tutorial-three-python.html) result 301).
* http://www.rabbitmq.com/tutorial-three-ruby.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-three-ruby.html ([https](https://www.rabbitmq.com/tutorial-three-ruby.html) result 301).
* http://www.rabbitmq.com/tutorial-two-dotnet.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-two-dotnet.html ([https](https://www.rabbitmq.com/tutorial-two-dotnet.html) result 301).
* http://www.rabbitmq.com/tutorial-two-go.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-two-go.html ([https](https://www.rabbitmq.com/tutorial-two-go.html) result 301).
* http://www.rabbitmq.com/tutorial-two-java.html with 2 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-two-java.html ([https](https://www.rabbitmq.com/tutorial-two-java.html) result 301).
* http://www.rabbitmq.com/tutorial-two-python.html with 4 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-two-python.html ([https](https://www.rabbitmq.com/tutorial-two-python.html) result 301).
* http://www.rabbitmq.com/tutorial-two-ruby.html with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorial-two-ruby.html ([https](https://www.rabbitmq.com/tutorial-two-ruby.html) result 301).
* http://www.rabbitmq.com/tutorials with 1 occurrences migrated to:
  https://www.rabbitmq.com/tutorials ([https](https://www.rabbitmq.com/tutorials) result 301).
* http://zhongwencool.github.io/observer_cli with 1 occurrences migrated to:
  https://zhongwencool.github.io/observer_cli ([https](https://zhongwencool.github.io/observer_cli) result 301).
* http://go.microsoft.com/fwlink/?LinkID=322105 with 12 occurrences migrated to:
  https://go.microsoft.com/fwlink/?LinkID=322105 ([https](https://go.microsoft.com/fwlink/?LinkID=322105) result 302).
2019-03-20 03:25:16 -05:00
..
tutorial1 URL Cleanup 2019-03-20 03:25:16 -05:00
tutorial2 URL Cleanup 2019-03-20 03:25:16 -05:00
tutorial3 URL Cleanup 2019-03-20 03:25:16 -05:00
tutorial4 URL Cleanup 2019-03-20 03:25:16 -05:00
tutorial5 URL Cleanup 2019-03-20 03:25:16 -05:00
.gitignore ignores 2017-05-01 12:27:53 +00:00
bump_dependencies.sh Port objective-c tutorials to Swift 2016-12-12 10:43:58 +00:00
README.md URL Cleanup 2019-03-20 03:25:16 -05:00

Swift code for RabbitMQ tutorials

Swift code examples for the RabbitMQ tutorials.

Requirements

To run this code you need Carthage to pull down dependencies, which include the Objective-C client itself.

If you have Homebrew installed, simply:

brew install carthage

You also need a running RabbitMQ server on localhost.

Installation

Each tutorial has its own Xcode project. Before the projects can be run, you need to download and build their dependencies.

For example, to install tutorial 1:

cd tutorial1
carthage bootstrap --platform iOS

You should then be able to open the project in Xcode and hit Run. Output is NSLogged.

See ViewController.swift for the implementation (each tutorial has its own ViewController.swift).

Running the tutorials on master

If you're QAing a change, or just want to run these tutorials on the master version of the client, follow these steps.

Edit Cartfile

Change the version number to the word "master"

Clear Carthage cache and update

rm -rf ~/Library/Caches/org.carthage.CarthageKit && carthage update --platform iOS

Rebuild the project in Xcode

If there have been breaking changes, you might now need to make changes to the tutorial.