diff --git a/docs/install.md b/docs/install.md
index b03d7545c3..5b03ebef89 100644
--- a/docs/install.md
+++ b/docs/install.md
@@ -31,11 +31,85 @@ In addition to the global Drush, it is recommended that Drupal 8 sites be [built
Drupal Compatibility
-----------------
-Drush Version | Drush Branch | PHP | Compatible Drupal versions | Code Status
-------------- | --------- | --- | -------------------------- | -----------
-Drush 9 | [master](https://travis-ci.org/drush-ops/drush) | 5.5+ | D7, D8 |
-Drush 8 | [8.x](https://travis-ci.org/drush-ops/drush) | 5.4.5+ | D6, D7, D8 |
-Drush 7 | [7.x](https://travis-ci.org/drush-ops/drush) | 5.3.0+ | D6, D7 |
-Drush 6 | [6.x](https://travis-ci.org/drush-ops/drush) | 5.3.0+ | D6, D7 | Unsupported
-Drush 5 | [5.x](https://travis-ci.org/drush-ops/drush) | 5.2.0+ | D6, D7 | Unsupported
+!!! note
+ Drush 9 only supports one install method. It requires that your Drupal 8 site be built with Composer and Drush be listed as a dependency.
+
+ See the [Drush 8 docs](http://docs.drush.org/en/8.x) for installing prior versions of Drush.
+
+Install a site-local Drush and Drush Launcher.
+-----------------
+1. It is recommended that Drupal 8 sites be [built using Composer, with Drush listed as a dependency](https://github.com/drupal-composer/drupal-project). That project already includes Drush in its composer.json. If your Composer project doesn't yet depend on Drush, run `composer require drush/drush` to add it.
+1. To be able to call `drush` from anywhere, install the [Drush Launcher](https://github.com/drush-ops/drush-launcher). That is a small program which listens on your $PATH and hands control to a site-local Drush that is in the /vendor directory of your Composer project. If you skip this step, run Drush from Drupal root via `../vendor/bin/drush`. In that case Drush's bash integration and custom prompt won't work.
+1. Run `drush init`. This edits ~/.bashrc so that Drush's custom prompt and bash integration are active.
+1. See [Usage](http://docs.drush.org/en/master/usage/) for details on using Drush.
+1. To use a non-default PHP, [edit ~/.bashrc so that the desired PHP is in front of your $PATH](http://stackoverflow.com/questions/4145667/how-to-override-the-path-of-php-to-use-the-mamp-path/10653443#10653443). If that is not desirable, you can change your PATH for just one request: `PATH=/path/to/php:$PATH` drush status ...`
+
+!!! note
+
+ Drush 9 cannot run commandfiles from Drush 8 and below (e.g. example.drush.inc). See our [guide on porting commandfiles](https://weitzman.github.io/blog/port-to-drush9). Also note that alias and config files use a new .yml format in Drush 9.
+
+Drupal Compatibility
+-----------------
+
+
+ Drush Version |
+ Drush Branch |
+ PHP |
+ Compatible Drupal versions |
+ Code Style |
+ Isolation Tests |
+ Functional Tests |
+
+
+ Drush 9 |
+ master |
+ 5.6+ |
+ D8.4+ |
+
+
+ |
+
+
+ |
+
+
+ |
+
+
+ Drush 8 |
+ 8.x |
+ 5.4.5+ |
+ D6, D7, D8.3- |
+
+
+ |
+
+ -
+ |
+
+
+ |
+
+
+ Drush 7 |
+ 7.x |
+ 5.3.0+ |
+ D6, D7 |
+ Unsupported |
+
+
+ Drush 6 |
+ 6.x |
+ 5.3.0+ |
+ D6, D7 |
+ Unsupported |
+
+
+ Drush 5 |
+ 5.x |
+ 5.2.0+ |
+ D6, D7 |
+ Unsupported |
+
+
diff --git a/shippable.yml b/shippable.yml
new file mode 100644
index 0000000000..2670e5a25a
--- /dev/null
+++ b/shippable.yml
@@ -0,0 +1,22 @@
+language: php
+
+php:
+ - "7.1"
+
+build:
+ ci:
+ # Set up php configuration
+ - echo 'mbstring.http_input = pass' >> $HOME/.phpenv/versions/$(phpenv version-name)/etc/php.ini
+ - echo 'mbstring.http_output = pass' >> $HOME/.phpenv/versions/$(phpenv version-name)/etc/php.ini
+ - echo 'memory_limit = -1' >> $HOME/.phpenv/versions/$(phpenv version-name)/etc/php.ini
+ - echo 'sendmail_path = /bin/true' >> $HOME/.phpenv/versions/$(phpenv version-name)/etc/php.ini
+ # Disable xdebug for faster Composer operations
+ # - rm $HOME/.phpenv/versions/$(phpenv version-name)/etc/conf.d/xdebug.ini
+ # Install / update our tools
+ # - composer self-update
+ # - composer install --prefer-dist --no-interaction
+ # Run lint check
+ # - composer lint
+ # No tests here
+ - echo 'No shippable tests on this branch'
+
diff --git a/tests/generateMakeTest.php b/tests/generateMakeTest.php
index b27042f2b3..3b82d9bad4 100644
--- a/tests/generateMakeTest.php
+++ b/tests/generateMakeTest.php
@@ -1,6 +1,7 @@
assertEquals($expected, $actual);
// Download a module to a 'contrib' directory to test the subdir feature
- mkdir($this->webroot() + '/sites/all/modules/contrib');
+ $this->mkdir(Path::join($this->webroot(). '/sites/all/modules/contrib'));
$this->drush('pm-download', array('libraries'), array('destination' => 'sites/all/modules/contrib') + $options);
$this->drush('pm-enable', array('libraries'), $options);
$makefile = UNISH_SANDBOX . '/dev.make.yml';
diff --git a/tests/makefiles/file.make b/tests/makefiles/file.make
index c10decfd1b..ebff66d876 100644
--- a/tests/makefiles/file.make
+++ b/tests/makefiles/file.make
@@ -2,7 +2,7 @@ core = 6.x
api = 2
libraries[drush_make][download][type] = "file"
-libraries[drush_make][download][url] = "http://drupalcode.org/project/drush_make.git/blob_plain/8d4e770:/README.txt"
+libraries[drush_make][download][url] = "https://cgit.drupalcode.org/drush_make/plain/README.txt?h=6.x-3.x&id=8d4e770aeb1cfc180d48b76b70f9bf5ee250eade"
libraries[drush_make][download][filename] = "README.txt"
; Single file download
diff --git a/tests/makefiles/md5-fail.make b/tests/makefiles/md5-fail.make
index f9928f7ce7..dae44eb6f7 100644
--- a/tests/makefiles/md5-fail.make
+++ b/tests/makefiles/md5-fail.make
@@ -2,6 +2,6 @@ core = 6.x
api = 2
libraries[drush_make][download][type] = "file"
-libraries[drush_make][download][url] = "http://drupalcode.org/project/drush_make.git/blob_plain/8d4e770:/README.txt"
+libraries[drush_make][download][url] = "https://cgit.drupalcode.org/drush_make/plain/README.txt?h=6.x-3.x&id=8d4e770aeb1cfc180d48b76b70f9bf5ee250eade"
libraries[drush_make][download][filename] = "README.txt"
libraries[drush_make][download][md5] = "- fail -"
diff --git a/tests/makefiles/md5-succeed.make b/tests/makefiles/md5-succeed.make
index 599fde327d..a10608bb4b 100644
--- a/tests/makefiles/md5-succeed.make
+++ b/tests/makefiles/md5-succeed.make
@@ -2,6 +2,6 @@ core = 6.x
api = 2
libraries[drush_make][download][type] = "file"
-libraries[drush_make][download][url] = "http://drupalcode.org/project/drush_make.git/blob_plain/8d4e770:/README.txt"
+libraries[drush_make][download][url] = "https://cgit.drupalcode.org/drush_make/plain/README.txt?h=6.x-3.x&id=8d4e770aeb1cfc180d48b76b70f9bf5ee250eade"
libraries[drush_make][download][filename] = "README.txt"
libraries[drush_make][download][md5] = "c8968d801a953b9ea735364d6f3dfabc"