{"id":16875242,"url":"https://github.com/dwijnand/sbt-travisci","last_synced_at":"2025-08-10T16:43:08.250Z","repository":{"id":45007125,"uuid":"74122969","full_name":"dwijnand/sbt-travisci","owner":"dwijnand","description":"An sbt plugin to integrate with Travis CI","archived":false,"fork":false,"pushed_at":"2024-05-05T12:21:03.000Z","size":107,"stargazers_count":45,"open_issues_count":5,"forks_count":10,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-04T05:03:53.813Z","etag":null,"topics":["sbt","sbt-plugin","travis","travis-ci"],"latest_commit_sha":null,"homepage":"","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dwijnand.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-11-18T11:12:31.000Z","updated_at":"2023-07-25T14:05:32.000Z","dependencies_parsed_at":"2024-10-28T12:30:34.751Z","dependency_job_id":"4399cbab-47f6-491b-908d-c957b1604bbb","html_url":"https://github.com/dwijnand/sbt-travisci","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/dwijnand/sbt-travisci","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwijnand%2Fsbt-travisci","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwijnand%2Fsbt-travisci/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwijnand%2Fsbt-travisci/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwijnand%2Fsbt-travisci/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dwijnand","download_url":"https://codeload.github.com/dwijnand/sbt-travisci/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwijnand%2Fsbt-travisci/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269755552,"owners_count":24470537,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["sbt","sbt-plugin","travis","travis-ci"],"created_at":"2024-10-13T15:35:28.624Z","updated_at":"2025-08-10T16:43:08.193Z","avatar_url":"https://github.com/dwijnand.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [sbt-travisci][] [![travis-badge][]][travis] [![gitter-badge][]][gitter]\n\n[sbt-travisci]:         https://github.com/dwijnand/sbt-travisci\n[travis]:          https://travis-ci.org/dwijnand/sbt-travisci\n[travis-badge]:    https://travis-ci.org/dwijnand/sbt-travisci.svg?branch=master\n[gitter]:              https://gitter.im/dwijnand/sbt-travisci\n[gitter-badge]: https://badges.gitter.im/dwijnand/sbt-travisci.svg\n\n`sbt-travisci` is an [sbt](http://www.scala-sbt.org/) plugin to integrate with Travis CI.\n\nOriginal idea from [@djspiewak][] in his [djspiewak/base.g8][] template.\n\n[@djspiewak]: https://github.com/djspiewak\n[djspiewak/base.g8]: https://github.com/djspiewak/base.g8/blob/d75ba6e1628517124bd867d190373ee777814354/src/main/g8/build.sbt\n\n## Setup\n\nAdd this to your sbt build plugins, in either `project/plugins.sbt` or `project/travisci.sbt`:\n\n    addSbtPlugin(\"com.dwijnand\" % \"sbt-travisci\" % \"1.2.0\")\n\nThen make sure to **NOT set the `crossScalaVersions` setting**, otherwise you will override `sbt-travisci`.\n\nOther than that, as `sbt-travisci` is an AutoPlugin that is all that is required.\n\n## Detail\n\n- `isTravisBuild in Global` will be automatically be set to `true` if the current build is running under Travis\n    CI.\n- `travisPrNumber in Global` will be automatically set to the number of the pull request, in case the build is a pull request build. \n    Otherwise, it will have a value of `None`.\n- `crossScalaVersions in ThisBuild` will be automatically set to the scala versions in `.travis.yml`, falling\n    back (with warnings) to the value of `crossScalaVersions in Global` if it can't be found or parsed properly.\n- `scalaVersion in ThisBuild` will be automatically set to `TRAVIS_SCALA_VERSION` if `isTravisBuild` is true,\n    otherwise to the `last` version in `crossScalaVersions`, and so by default, sbt will assume you want to\n    develop under the *last* version listed in `.travis.yml`.\n- `scala212 in ThisBuild` will be automatically set to the unique 2.12.x version in `.travis.yml`, or\n    \"no-2.12-version\" if none set and \"multiple-2.12-versions\" (with a warning log) if multiple set.  Same for\n    `scala210`, `scala211`, and `scala213`.\n- `crossSbtVersions in ThisBuild` will be automatically set to the `TRAVIS_SBT_VERSION`s in `env` properties in `.travis.yml`, falling\n    back (with warnings) to the value of `crossSbtVersions in Global` if it can't be found or parsed properly.\n- `sbtVersion in ThisBuild` will be automatically set to `TRAVIS_SBT_VERSION` if `isTravisBuild` is true,\n    otherwise to the `last` version in `crossSbtVersions`, and so by default, sbt will assume you want to\n    develop under the *last* version listed in `.travis.yml`.\n\n### Example\n\nGiven a `.travis.yml` of:\n\n```yaml\nscala:\n  - 2.11.8\n  - 2.12.0\n```\n\n`scalaVersion in ThisBuild` will be `\"2.12.0\"`.\n\n## Sanity checking a scala version key\n\nAs a sanity check, you can stop the build from loading by running a check during sbt's `onLoad`.\nFor instance, to make sure that `scala212` is defines a scala version you can use:\n\n```scala\nGlobal / onLoad := (Global / onLoad).value.andThen { s =\u003e\n  val v = scala212.value\n  if (!CrossVersion.isScalaApiCompatible(v))\n    throw new MessageOnlyException(\n      s\"Key scala212 doesn't define a scala version. Check .travis.yml is setup right. Version: $v\"\n    )\n  s\n}\n```\n\nThis will return an error message like the following:\n\n```\n[error] Key scala212 doesn't define a scala version. Check .travis.yml is setup right. Version: no-2.12-version\n```\n\n## Licence\n\nCopyright 2016 Dale Wijnand\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n  http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdwijnand%2Fsbt-travisci","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdwijnand%2Fsbt-travisci","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdwijnand%2Fsbt-travisci/lists"}