Skip to content

Migrate to sbt 2.0; bump multiarch-core 0.3.0 + sbt-kubuszok 0.2.3 - #9

Merged
MateuszKubuszok merged 2 commits into
masterfrom
feat/sbt2-migration
Jun 21, 2026
Merged

Migrate to sbt 2.0; bump multiarch-core 0.3.0 + sbt-kubuszok 0.2.3#9
MateuszKubuszok merged 2 commits into
masterfrom
feat/sbt2-migration

Conversation

@MateuszKubuszok

Copy link
Copy Markdown
Member

Resource-only native-provider repo migrated to the new tooling.

Changes

  • project/plugins.sbt: multiarch-core 0.2.0 -> 0.3.0, sbt-kubuszok 0.2.1 -> 0.2.3
  • project/build.properties: sbt.version 1.12.11 -> 2.0.0
  • build.sbt: sbt 2.0 packageBin mappings are keyed by xsbti.HashedVirtualFileRef; each File is now converted via fileConverter.toVirtualFile(f.toPath) in fatJarMappings and in the inline queries/wasm mapping blocks
  • build.sbt: dropped sbt-welcome usage (logo/usefulTasks + import) — no longer bundled by sbt-kubuszok 0.2.3 on sbt 2.0

No sbt-projectmatrix plugin to remove (was never used). CI already on JDK 25 (zulu).

Verification (sbt --client, sbt 2.0.0)

  • reload; compile -> success
  • packageBin -> all 4 provider JARs built; mappings intact:
    • native/<classifier>/<file> across all 6 platform classifiers (real tree-sitter binaries)
    • queries/<lang>/*.scm (179 .scm files)
    • wasm/web-tree-sitter.{js,wasm} + wasm/grammars/*.wasm

Same native-binary artifacts as before: mapping path schemes and file-selection filters are unchanged; only the File -> VirtualFileRef key conversion required by sbt 2.0 was added.

Do not merge/tag/release.

- project/plugins.sbt: multiarch-core 0.2.0 -> 0.3.0, sbt-kubuszok 0.2.1 -> 0.2.3
- project/build.properties: sbt.version 1.12.11 -> 2.0.0
- build.sbt: packageBin mappings are now keyed by xsbti.HashedVirtualFileRef
  in sbt 2.0; convert each File via fileConverter.toVirtualFile in
  fatJarMappings and in the inline queries/wasm mapping blocks
- build.sbt: drop sbt-welcome usage (logo/usefulTasks); the plugin is no
  longer bundled by sbt-kubuszok 0.2.3 on sbt 2.0

Resource-only build; packageBin verified to still emit native/<classifier>/<file>,
queries/<lang>/*.scm and wasm/* mappings intact.
sbt 2.0 writes packageBin output to target/out/jvm/u/<name>/<name>-<ver>.jar
at the build root, not providers/<name>/target as in sbt 1.x. The verify
script's find pointed at the non-existent providers/<name>/target dir; under
set -o pipefail the failing find aborted the whole script (exit 1).

Point each lookup at target/out/jvm/u/<name> and pick the newest jar.
@MateuszKubuszok
MateuszKubuszok merged commit 225003d into master Jun 21, 2026
2 checks passed
@MateuszKubuszok
MateuszKubuszok deleted the feat/sbt2-migration branch June 21, 2026 05:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant