@@ -4,7 +4,6 @@ This is an sbt 1.x plugin for building Scala modules.
4
4
5
5
## What modules use it?
6
6
7
- * [ travis-test] ( https://github.com/lrytz/travis-test ) (example project for testing this plugin and tag-driven releases)
8
7
* [ scala-async] ( https://github.com/scala/scala-async )
9
8
* [ scala-collection-compat] ( https://github.com/scala/scala-collection-compat )
10
9
* [ scala-collection-contrib] ( https://github.com/scala/scala-collection-contrib )
@@ -25,19 +24,17 @@ A major feature of the plugin is automated tag-based publishing using
25
24
sbt-ci-release. A release is made by pushing a tag to GitHub.
26
25
27
26
The plugin also brings in
28
- - sbt-travisci to set the ` scalaVersion ` and ` crossScalaVersions `
29
27
- sbt-dynver to set the ` version ` based on the git history
28
+ - sbt-version-policy to check the versioning policy using MiMa
30
29
- sbt-header to automate copyright header maintenance
31
- - sbt-mima-plugin to maintain binary compatibility
32
30
- sbt-osgi, if enabled with ` scalaModuleOsgiSettings `
33
- - sbt-version-policy to check the versioning policy
34
31
35
32
## Usage
36
33
37
34
Add the plugin to the ` project/plugins.sbt ` file:
38
35
39
36
```
40
- addSbtPlugin("org.scala-lang.modules" % "sbt-scala-module" % "2.2.3" )
37
+ addSbtPlugin("org.scala-lang.modules" % "sbt-scala-module" % <version> )
41
38
```
42
39
43
40
Then, in your ` build.sbt ` add:
@@ -61,18 +58,16 @@ OsgiKeys.exportPackage := Seq(s"<exported package>;version=${version.value}")
61
58
// Other settings
62
59
```
63
60
64
- Scala versions are defined in ` .travis.yml ` .
65
-
66
- Cross-building with Scala.js and Scala Native is possible, see travis-test, scala-xml or scala-parser-combinators for example.
61
+ Cross-building with Scala.js and Scala Native is possible. See scala-xml or scala-parser-combinators for examples.
67
62
68
63
These additional settings are enabled by ` scalaModuleSettings ` :
69
- - ` scalacOptions in ( Compile, compile) ++= Seq("-feature", "-deprecation", "-unchecked", "-Xlint")`
64
+ - ` Compile / compile / scalacOptions ++= Seq("-feature", "-deprecation", "-unchecked", "-Xlint") `
70
65
- A ` projectName.properties ` file is generated and packaged
71
- - ` fork in Test := true` to work around some classpath clashes with scala-xml
66
+ - ` Test / fork := true` to work around some classpath clashes with scala-xml
72
67
- POM metadata
73
68
74
69
The following settings are also available:
75
- - ` enableOptimizer ` adds ` -opt-inline-from:<sources> ` or ` -opt:l:project ` or ` -optimize ` to ` scalacOptions in ( Compile, compile) ` ,
70
+ - ` enableOptimizer ` adds ` -opt-inline-from:<sources> ` or ` -opt:l:project ` or ` -optimize ` to ` Compile / compile / scalacOptions ` ,
76
71
depending on the Scala version
77
72
78
73
## Set up tag-based publishing
@@ -90,7 +85,7 @@ The instructions here are a summary of the readme in https://github.com/olafurpg
90
85
- Copy the public key to a key server
91
86
- ` gpg --armor --export $LONG_ID `
92
87
- http://keyserver.ubuntu.com:11371/
93
- - Open the Settings panel on your project 's travis , define four secret env vars
88
+ - In your repo 's Actions settings , define four secret env vars
94
89
- ` PGP_PASSPHRASE ` the passphrase you chose above
95
90
- ` PGP_SECRET ` the secret key in base64
96
91
- macOS: ` gpg --armor --export-secret-keys $LONG_ID | base64 `
0 commit comments