Stop a Job early if a deprecated JDK is configured

Oracle has recently discontinued support for JDK 10, and as such we are not able to install it on-demand.

We have updated our build process to fail jobs early if oraclejdk10 is selected.

It is recommended that users upgrade to JDK 11 (via oraclejdk11) or switch to OpenJDK 10 (via openjdk10) going forward.

For more information, please read the discussion on our community forum.

Windows jobs can now initiate deployment

Job running on Windows can now initiate deployment using the system-installed Ruby.

Individual deployment providers may still fail. In this case, please open a topic over at, or, better yet, look at the deployment provider code of your choice and submit a PR to help make it Windows-compatible!

Caching is now enabled in Windows with rewritten caching utility

Windows jobs can now take advantage of caching.

os: windows
    - node_modules

See our documentation for more details on how to configure caching.

Caching utility is rewritten in bash

In order to facilitate this, we have rewritten the caching utility in bash. This bash version is used on Windows jobs, but the previous version (in Ruby) is used on Linux and macOS in order to avoid potential issues with the rewritten version.

The plan is to shift to the bash version once it is deemed stable.

Opting in to use the new caching utility

To test the bash version on Linux and macOS, add branch: bash to the caching configuration:

  branch: bash
    - node_modules
  # rest

When the bash is in use, you will see the message indicating thus:


Go builds use `tar` instead of `rsync` for internals for better Windows compatibility

Go builds now use tar to copy repository source to Go's import path.

Previously, it used rsync:

$ rsync -az ${TRAVIS_BUILD_DIR}/ ${TRAVIS_HOME}/gopath/src/


$ tar -Pczf ${TRAVIS_TMPDIR}/src_archive.tar.gz -C ${TRAVIS_BUILD_DIR} . && tar -Pxzf ${TRAVIS_TMPDIR}/src_archive.tar.gz -C ${TRAVIS_HOME}/gopath/src/

This ensures better compatibility with running Go builds on Windows.

Windows is Available in Early Release

We're excited to announce that you can now run builds on Windows. Add the following to your .travis.yml:

os: windows

or set up a multiple operating system matrix.

The build environment launches with language support for Node.js, Rust, and Bash. The environment runs a git bash shell, and you can shell out to PowerShell as needed. Docker is also available for Windows builds.

The build environment includes Visual Studio 2017 Build Tools pre-installed, along with a number of other packages, and it's currently based on Windows Server 1803 for containers running Windows Server 2016 as the OS version.

Read the product announcement on the blog for more info, and drop by the forum to share your thoughts!

Job detail view improvements

Each job page now includes information on the operating system, language, and environment variables that were used, making the unique fingerprint of each job more visible when browsing through the jobs in your build.


Repositories Using GitHub Apps Receive Check Run Status Updates Only

As announced on the blog recently, starting today, Repositories on that are managed by GitHub Apps no longer receive updates to the GitHub Commit Status API -- instead, Build Statuses will be posted to the GitHub Check Runs API.

Repositories using Legacy Service Hooks or OAuth will only receive updates to the Commit Status API.

If you have questions or suggestions, feel free to get it touch on the community forum or send us an email!

Node.js builds skips `npm ls` by default

Node.js builds no longer invoke npm ls for newer versions of npm in the install phase of the job. This reduces the log output from large Node.js applications and libraries.

If this output is meaningful to you, override install and add npm ls. For example:

language: node_js
  - npm install
  - npm ls

dpl 1.10.3 released

We have released dpl 1.10.3, our deployment utility.

With this release, GitHub Pages and Script deployment are out of the "experimental" stage.

Skip Travis CI builds with [skip travis] in commit message

In addition to the original [skip ci] command, you are now able to tell Travis CI to skip building a commit by adding [skip travis] (and variants) to the commit message.

This allows more flexibility in the way your repositories work with other services.

See our documentation for more details.

No published changelogs yet.

Surely Travis CI will start publishing changelogs very soon.

Check out our other public changelogs: Buffer, Mention, Respond by Buffer, JSFiddle, Olark, Droplr, Piwik Pro, Prott, Ustream, ViralSweep, StartupThreads, Userlike, Unixstickers, Survicate, Envoy, Gmelius, CodeTree