Conversation
There was a problem hiding this comment.
Pull request overview
This PR modernizes the build/tooling setup for the Scala project: upgrading sbt/plugins, adding Scalafmt/Scalafix configuration, moving CI/release automation to GitHub Actions, and updating a few source/test files to match the new toolchain.
Changes:
- Replaces Travis/Codecov-era setup with GitHub Actions workflows (CI, release, release-drafter, Scala Steward) and Dependabot for actions.
- Upgrades sbt and sbt plugins; adds shared build settings via
project/BuildHelper.scala. - Updates Scala dependencies and reformats/adjusts a few Scala sources and tests.
Reviewed changes
Copilot reviewed 18 out of 19 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| version.sbt | Removes hardcoded build version file. |
| README.md | Removes old CI/code coverage badges. |
| project/plugins.sbt | Updates sbt plugin set (scalafmt/scalafix/tpolecat/ci-release/etc.). |
| project/BuildHelper.scala | Adds centralized build settings helpers (javac/scalac/tpolecat/no-doc). |
| project/build.properties | Upgrades sbt version. |
| build.sbt | Updates org/Scala version, deps, settings, aliases; introduces BuildHelper usage. |
| core/src/main/.../ConcurrentConstantMemoryExcel.scala | Minor refactors + import/style changes. |
| core/src/main/.../KantanExtension.scala | Adjusts array row encoding implementation. |
| core/src/test/.../ConcurrentConstantMemoryExcelSpec.scala | Migrates to AnyFlatSpec + adds suppression annotation. |
| .travis.yml | Removes Travis CI configuration. |
| .scalafmt.conf | Replaces minimal config with more extensive scalafmt configuration. |
| .scalafix.conf | Adds scalafix configuration/rules. |
| .jvmopts | Adds JVM options for sbt/JDK behavior. |
| .github/workflows/ci.yaml | Adds CI (test + formatting) workflow. |
| .github/workflows/release.yml | Adds publishing workflow via sbt ci-release. |
| .github/workflows/draft.yml | Adds Release Drafter workflow. |
| .github/workflows/scala-steward.yml | Adds Scala Steward automation workflow. |
| .github/release-drafter.yml | Adds release notes templating/labeling rules. |
| .github/dependabot.yml | Enables Dependabot for GitHub Actions updates. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| // See: https://scalacenter.github.io/scalafix/docs/rules/OrganizeImports.html#intellij_2020_3 | ||
| OrganizeImports { | ||
| preset = INTELLIJ_2020_3 | ||
| targetDialect = Scala3 |
There was a problem hiding this comment.
Scalafix is configured with targetDialect = Scala3, which can rewrite imports/syntax to Scala 3 forms even though the build uses Scala 2.13. This is likely to introduce non-compiling rewrites; align targetDialect with the actual Scala version (or migrate to Scala 3).
| targetDialect = Scala3 | |
| targetDialect = Scala213 |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Jules Ivanic <jules.ivanic@gmail.com>
No description provided.