Releases: sbt/sbt-github-actions
0.15.0
about sbt-github-actions
sbt-github-actions is an sbt plugin, originally developed by Daniel Spiewak (@djspiewak) in 2020, to generate GitHub Actions YAML from build.sbt
file.
Using sbt 1.9.0, the plugin is published for both the traditional POM-inconsistent style and POM-consistent style.
changes with compatibility implications
- sbt-github-actions 0.15.0 is published under
com.github.sbt
organization by @eed3si9n in #134 - Updates GitHub actions to use Node 16 by @jovilius in #133. See also GitHub Actions: All Actions will begin running on Node16 instead of Node12
- Switches to using
graalvm/setup-graalvm@v1
instead ofDeLaGuardo/setup-graalvm@5.0
by @eed3si9n in #140
updates and fixes
- Fixes whitespace support in action params by @hagay3 in #107
githubWorkflowBuildTimeout
andgithubWorkflowPublishTimeout
to support timeout for jobs and steps using by @povder in #98- Ports
githubWorkflowBuildSbtStepPreamble
from sbt-typelevel by @eed3si9n in #139 - Adds a page file fix for workflows that run on Windows by @mdedetrich in #146
- Updates Scala versions by @mdedetrich in #149
- Reverts default JDK to 8 and GraalVM to 22.3.0 by @mdedetrich in #136
- Adds a space to the Scala version switch command by @mdedetrich in #153
behind the scene
- Updates README documentation of the
githubWorkflowJavaVersions
setting by @RustedBones in #93 - Fixes README documentation of publishing
main
branch snapshots by @keynmol in #113 - Updates
.gitignore
file by @mdedetrich in #124 - Documents how to contribute for Windows by @mdedetrich in #125
- Temporarily removes Windows from CI by @mdedetrich in #128
- Adds global permissions by @mdedetrich in #105
- Scope
sbtVersion
by @eed3si9n in #130 - Adds developers by @mdedetrich in #151
- Updates sbt to 1.9.0 by @eed3si9n in #155
new contributors
- @keynmol made their first contribution in #113
- @eed3si9n made their first contribution in #130
- @jovilius made their first contribution in #133
- @povder made their first contribution in #98
- @hagay3 made their first contribution in #107
Full Changelog: v0.14.2...v0.15.0
v0.14.2
v0.14.1
v0.14.0
The main change in this release is removing the dependency on Olafur's excellent (but deprecated) setup-scala action. In its place, the generated builds now depend on the sbt
which comes pre-installed in GHA runners along with the setup-java and setup-graalvm actions. Unfortunately, while setup-scala took advantage of Jabba to describe JVMs with a unified string slug, neither setup-java nor setup-graalvm support this type of thing. To resolve this, this release introduces JavaSpec
, which is a more typed way of describing JVM and version. This has the advantage of providing more granular and direct control over GraalVM version, though unfortuantely it does mean that compatibility is broken and you will need to update your build.sbt.
It's also worth noting that this change also necessitates a significant change to the way that JVM installation is encoded within ci.yml. In theory this should only be visible within your build logs, but it may be a bit confusing if you're paying close attention. The semantics are the same as they have always been.
- #91 – Use setup-java/setup-graalvm instead of setup-scala (@djspiewak)
- #90 – Add params to Run / Sbt (@kubukoz)
- #87 – Add support for
paths
andpaths-ignore
(@rossabaker) - #78 – Exclude sbt-github-actions from the sbt-spiewak plugin and link the plugin to the sources in this repository (@vasilmkd)
Thank you so much!
v0.13.0
- #77 – Add
githubWorkflowIncludeClean
(@kubukoz) - #76 – Upgrade setup-scala to version 13 (@vasilmkd)
- #75 – Set
githubWorkflowUseSbtThinClient
tofalse
because of ongoing issues (@mdedetrich) - #71 – Fix documentation typos (@mdedetrich)
- #72 – Add new line at end of
githubWorkflowGenerate
files (@mdedetrich) - #67 – Dependency updates (@vasilmkd)
Special thanks to each and every one of you!
v0.12.0
v0.11.0
The primary change in this release is that we have altered publication target to be Maven Central (Bintray plugins are now deprecated). This should be essentially invisible to end-users, since Maven Central is also on the Sbt default resolver set, and Sbt no longer relies upon Ivy-specific metadata for plugins.
- #58 – Use sbt native thin client for sbt >= 1.4 (@steinybot)
- #61 – Truly match all branches (including slashes) (@joroKr21)
- #55 – Add support for job environments (@steinybot)
Thank you, everyone!
v0.10.1
v0.10.0
This release makes a number of changes which may have a breaking impact on your workflows, even taking into account the scala-steward automatic regeneration. Please check the release notes carefully and update your builds as necessary.
- Renamed default branch from master to main. The main impact this has is on the
githubWorkflowPublishTargetBranches
key, which now defaults to releasing frommain
rather than releasing frommaster
. - Added support for job containers via the
container
field ofWorkflowJob
. This functionality is not yet exposed directly in sbt settings. - Added
githubWorkflowBuildMatrixFailFast
, which makes it possible to configure thefail-fast
property the build job. The default behavior is to accept the GitHub Actions default, which is to fail fast (i.e. if any branch of the matrix fails, the remainder are canceled). (@amesgen) - Generalized
WorkflowStep.Use
to allow for local and docker references. Any existingUse
call-sites will need to have their ref parameters wrapped inUseRef.Public
v0.9.5
In retrospect, this probably should have been 0.10.0 given the changes involved. Need to come up with a proper versioning strategy here since almost everything we change will break builds.
- Updated
WorkflowStep.ComputeVar
to use$GITHUB_ENV
rather than the deprecated (and removed)set-env
- Added
ComputePrependPATH
as a replacement foradd-path
(similar to the above) - Fixed issue where
githubWorkflowScalaVersions
was ignored (@amesgen) - Allow configuration of the fail-fast strategy (@amesgen)
- Use the cache v2 action to dry up builds (@joroKr21)
- Documentation fixes, mostly from @fthomas
Thank you all!