Skip to content

Commit 954ef31

Browse files
authored
Merge branch 'main' into nested-tailrec-defs
2 parents de5e933 + 133c14a commit 954ef31

File tree

1,263 files changed

+32163
-5378
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,263 files changed

+32163
-5378
lines changed

.github/workflows/ci.yaml

Lines changed: 187 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,8 @@ jobs:
141141

142142
- name: Cmd Tests
143143
run: |
144-
./project/scripts/sbt ";dist/pack; scala3-bootstrapped/compile; scala3-bootstrapped/test ;sbt-test/scripted scala2-compat/*; scala3-compiler-bootstrapped/scala3CompilerCoursierTest:test"
144+
./project/scripts/buildScalaBinary
145+
./project/scripts/sbt ";scala3-bootstrapped/compile ;scala3-bootstrapped/test ;sbt-test/scripted scala2-compat/* ;scala3-compiler-bootstrapped/scala3CompilerCoursierTest:test"
145146
./project/scripts/cmdTests
146147
./project/scripts/bootstrappedOnlyCmdTests
147148
@@ -230,7 +231,7 @@ jobs:
230231
shell: cmd
231232

232233
- name: build binary
233-
run: sbt "dist/pack" & bash -version
234+
run: sbt "dist-win-x86_64/pack" & bash -version
234235
shell: cmd
235236

236237
- name: cygwin tests
@@ -269,8 +270,12 @@ jobs:
269270
- name: Git Checkout
270271
uses: actions/checkout@v4
271272

273+
- name: build binary
274+
run: sbt "dist-win-x86_64/pack"
275+
shell: cmd
276+
272277
- name: Test
273-
run: sbt ";dist/pack ;scala3-bootstrapped/compile ;scala3-bootstrapped/test"
278+
run: sbt ";scala3-bootstrapped/compile ;scala3-bootstrapped/test"
274279
shell: cmd
275280

276281
- name: Scala.js Test
@@ -596,7 +601,8 @@ jobs:
596601

597602
- name: Test
598603
run: |
599-
./project/scripts/sbt ";dist/pack ;scala3-bootstrapped/compile ;scala3-bootstrapped/test ;sbt-test/scripted scala2-compat/*"
604+
./project/scripts/buildScalaBinary
605+
./project/scripts/sbt ";scala3-bootstrapped/compile ;scala3-bootstrapped/test ;sbt-test/scripted scala2-compat/*"
600606
./project/scripts/cmdTests
601607
./project/scripts/bootstrappedOnlyCmdTests
602608
@@ -712,7 +718,7 @@ jobs:
712718
./project/scripts/genDocs -doc-snapshot
713719
714720
- name: Deploy Website to dotty-website
715-
uses: peaceiris/actions-gh-pages@v3
721+
uses: peaceiris/actions-gh-pages@v4
716722
with:
717723
personal_token: ${{ env.DOTTY_WEBSITE_BOT_TOKEN }}
718724
publish_dir: docs/_site
@@ -763,13 +769,35 @@ jobs:
763769

764770
- name: Add SBT proxy repositories
765771
run: cp -vf .github/workflows/repositories /root/.sbt/ ; true
766-
767-
- name: Prepare Release
768-
run: |
772+
# Extract the release tag
773+
- name: Extract the release tag
774+
run : echo "RELEASE_TAG=${GITHUB_REF#*refs/tags/}" >> $GITHUB_ENV
775+
# BUILD THE SDKs
776+
- name: Build and pack the SDK (universal)
777+
run : |
769778
./project/scripts/sbt dist/packArchive
770779
sha256sum dist/target/scala3-* > dist/target/sha256sum.txt
771-
echo "RELEASE_TAG=${GITHUB_REF#*refs/tags/}" >> $GITHUB_ENV
772-
780+
- name: Build and pack the SDK (linux x86-64)
781+
run : |
782+
./project/scripts/sbt dist-linux-x86_64/packArchive
783+
sha256sum dist/linux-x86_64/target/scala3-* > dist/linux-x86_64/target/sha256sum.txt
784+
- name: Build and pack the SDK (linux aarch64)
785+
run : |
786+
./project/scripts/sbt dist-linux-aarch64/packArchive
787+
sha256sum dist/linux-aarch64/target/scala3-* > dist/linux-aarch64/target/sha256sum.txt
788+
- name: Build and pack the SDK (mac x86-64)
789+
run : |
790+
./project/scripts/sbt dist-mac-x86_64/packArchive
791+
sha256sum dist/mac-x86_64/target/scala3-* > dist/mac-x86_64/target/sha256sum.txt
792+
- name: Build and pack the SDK (mac aarch64)
793+
run : |
794+
./project/scripts/sbt dist-mac-aarch64/packArchive
795+
sha256sum dist/mac-aarch64/target/scala3-* > dist/mac-aarch64/target/sha256sum.txt
796+
- name: Build and pack the SDK (win x86-64)
797+
run : |
798+
./project/scripts/sbt dist-win-x86_64/packArchive
799+
sha256sum dist/win-x86_64/target/scala3-* > dist/win-x86_64/target/sha256sum.txt
800+
# Create the GitHub release
773801
- name: Create GitHub Release
774802
id: create_gh_release
775803
uses: actions/create-release@latest
@@ -782,7 +810,7 @@ jobs:
782810
draft: true
783811
prerelease: ${{ contains(env.RELEASE_TAG, '-') }}
784812

785-
- name: Upload zip archive to GitHub Release
813+
- name: Upload zip archive to GitHub Release (universal)
786814
uses: actions/upload-release-asset@v1
787815
env:
788816
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -791,8 +819,7 @@ jobs:
791819
asset_path: ./dist/target/scala3-${{ env.RELEASE_TAG }}.zip
792820
asset_name: scala3-${{ env.RELEASE_TAG }}.zip
793821
asset_content_type: application/zip
794-
795-
- name: Upload tar.gz archive to GitHub Release
822+
- name: Upload tar.gz archive to GitHub Release (universal)
796823
uses: actions/upload-release-asset@v1
797824
env:
798825
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -802,7 +829,103 @@ jobs:
802829
asset_name: scala3-${{ env.RELEASE_TAG }}.tar.gz
803830
asset_content_type: application/gzip
804831

805-
- name: Upload SHA256 sum of the release artefacts to GitHub Release
832+
- name: Upload zip archive to GitHub Release (linux x86-64)
833+
uses: actions/upload-release-asset@v1
834+
env:
835+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
836+
with:
837+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
838+
asset_path: ./dist/linux-x86_64/target/scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.zip
839+
asset_name: scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.zip
840+
asset_content_type: application/zip
841+
- name: Upload tar.gz archive to GitHub Release (linux x86-64)
842+
uses: actions/upload-release-asset@v1
843+
env:
844+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
845+
with:
846+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
847+
asset_path: ./dist/linux-x86_64/target/scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.tar.gz
848+
asset_name: scala3-${{ env.RELEASE_TAG }}-x86_64-pc-linux.tar.gz
849+
asset_content_type: application/gzip
850+
851+
- name: Upload zip archive to GitHub Release (linux aarch64)
852+
uses: actions/upload-release-asset@v1
853+
env:
854+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
855+
with:
856+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
857+
asset_path: ./dist/linux-aarch64/target/scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.zip
858+
asset_name: scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.zip
859+
asset_content_type: application/zip
860+
- name: Upload tar.gz archive to GitHub Release (linux aarch64)
861+
uses: actions/upload-release-asset@v1
862+
env:
863+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
864+
with:
865+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
866+
asset_path: ./dist/linux-aarch64/target/scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.tar.gz
867+
asset_name: scala3-${{ env.RELEASE_TAG }}-aarch64-pc-linux.tar.gz
868+
asset_content_type: application/gzip
869+
870+
- name: Upload zip archive to GitHub Release (mac x86-64)
871+
uses: actions/upload-release-asset@v1
872+
env:
873+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
874+
with:
875+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
876+
asset_path: ./dist/mac-x86_64/target/scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.zip
877+
asset_name: scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.zip
878+
asset_content_type: application/zip
879+
- name: Upload tar.gz archive to GitHub Release (mac x86-64)
880+
uses: actions/upload-release-asset@v1
881+
env:
882+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
883+
with:
884+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
885+
asset_path: ./dist/mac-x86_64/target/scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.tar.gz
886+
asset_name: scala3-${{ env.RELEASE_TAG }}-x86_64-apple-darwin.tar.gz
887+
asset_content_type: application/gzip
888+
889+
- name: Upload zip archive to GitHub Release (mac aarch64)
890+
uses: actions/upload-release-asset@v1
891+
env:
892+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
893+
with:
894+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
895+
asset_path: ./dist/mac-aarch64/target/scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip
896+
asset_name: scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.zip
897+
asset_content_type: application/zip
898+
- name: Upload tar.gz archive to GitHub Release (mac aarch64)
899+
uses: actions/upload-release-asset@v1
900+
env:
901+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
902+
with:
903+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
904+
asset_path: ./dist/mac-aarch64/target/scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz
905+
asset_name: scala3-${{ env.RELEASE_TAG }}-aarch64-apple-darwin.tar.gz
906+
asset_content_type: application/gzip
907+
908+
- name: Upload zip archive to GitHub Release (win x86-64)
909+
uses: actions/upload-release-asset@v1
910+
env:
911+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
912+
with:
913+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
914+
asset_path: ./dist/win-x86_64/target/scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.zip
915+
asset_name: scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.zip
916+
asset_content_type: application/zip
917+
- name: Upload tar.gz archive to GitHub Release (win x86-64)
918+
uses: actions/upload-release-asset@v1
919+
env:
920+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
921+
with:
922+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
923+
asset_path: ./dist/win-x86_64/target/scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.tar.gz
924+
asset_name: scala3-${{ env.RELEASE_TAG }}-x86_64-pc-win32.tar.gz
925+
asset_content_type: application/gzip
926+
927+
928+
- name: Upload SHA256 sum of the release artefacts to GitHub Release (universal)
806929
uses: actions/upload-release-asset@v1
807930
env:
808931
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -812,6 +935,56 @@ jobs:
812935
asset_name: sha256sum.txt
813936
asset_content_type: text/plain
814937

938+
- name: Upload SHA256 sum of the release artefacts to GitHub Release (linux x86-64)
939+
uses: actions/upload-release-asset@v1
940+
env:
941+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
942+
with:
943+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
944+
asset_path: ./dist/linux-x86_64/target/sha256sum.txt
945+
asset_name: sha256sum-x86_64-pc-linux.txt
946+
asset_content_type: text/plain
947+
948+
- name: Upload SHA256 sum of the release artefacts to GitHub Release (linux aarch64)
949+
uses: actions/upload-release-asset@v1
950+
env:
951+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
952+
with:
953+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
954+
asset_path: ./dist/linux-aarch64/target/sha256sum-aarch64-pc-linux.txt
955+
asset_name: sha256sum.txt
956+
asset_content_type: text/plain
957+
958+
- name: Upload SHA256 sum of the release artefacts to GitHub Release (mac x86-64)
959+
uses: actions/upload-release-asset@v1
960+
env:
961+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
962+
with:
963+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
964+
asset_path: ./dist/mac-x86_64/target/sha256sum.txt
965+
asset_name: sha256sum-x86_64-apple-darwin.txt
966+
asset_content_type: text/plain
967+
968+
- name: Upload SHA256 sum of the release artefacts to GitHub Release (mac aarch64)
969+
uses: actions/upload-release-asset@v1
970+
env:
971+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
972+
with:
973+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
974+
asset_path: ./dist/mac-aarch64/target/sha256sum.txt
975+
asset_name: sha256sum-aarch64-apple-darwin.txt
976+
asset_content_type: text/plain
977+
978+
- name: Upload SHA256 sum of the release artefacts to GitHub Release (win x86-64)
979+
uses: actions/upload-release-asset@v1
980+
env:
981+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
982+
with:
983+
upload_url: ${{ steps.create_gh_release.outputs.upload_url }}
984+
asset_path: ./dist/win-x86_64/target/sha256sum.txt
985+
asset_name: sha256sum-x86_64-pc-win32.txt
986+
asset_content_type: text/plain
987+
815988
- name: Publish Release
816989
run: ./project/scripts/sbtPublish ";project scala3-bootstrapped ;publishSigned ;sonatypeBundleRelease"
817990

.github/workflows/dependency-graph.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ jobs:
99
runs-on: ubuntu-latest
1010
steps:
1111
- uses: actions/checkout@v4
12-
- uses: scalacenter/sbt-dependency-submission@v2
12+
- uses: scalacenter/sbt-dependency-submission@v3

.github/workflows/launchers.yml

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
name: Test CLI Launchers on all the platforms
2+
on:
3+
pull_request:
4+
workflow_dispatch:
5+
6+
jobs:
7+
linux-x86_64:
8+
name: Deploy and Test on Linux x64 architecture
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v4
12+
- name: Set up JDK 17
13+
uses: actions/setup-java@v4
14+
with:
15+
java-version: '17'
16+
distribution: 'temurin'
17+
cache: 'sbt'
18+
- name: Build and test launcher command
19+
run: ./project/scripts/native-integration/bashTests
20+
env:
21+
LAUNCHER_EXPECTED_PROJECT: "dist-linux-x86_64"
22+
23+
linux-aarch64:
24+
name: Deploy and Test on Linux ARM64 architecture
25+
runs-on: macos-latest
26+
if: ${{ false }}
27+
steps:
28+
- uses: actions/checkout@v4
29+
- name: Set up JDK 17
30+
uses: actions/setup-java@v4
31+
with:
32+
java-version: '17'
33+
distribution: 'temurin'
34+
cache: 'sbt'
35+
# https://github.com/actions/runner-images/issues/9369
36+
- name: Install sbt
37+
run: brew install sbt
38+
- name: Build and test launcher command
39+
run: ./project/scripts/native-integration/bashTests
40+
env:
41+
LAUNCHER_EXPECTED_PROJECT: "dist-linux-aarch64"
42+
43+
mac-x86_64:
44+
name: Deploy and Test on Mac x64 architecture
45+
runs-on: macos-13
46+
steps:
47+
- uses: actions/checkout@v4
48+
- name: Set up JDK 17
49+
uses: actions/setup-java@v4
50+
with:
51+
java-version: '17'
52+
distribution: 'temurin'
53+
cache: 'sbt'
54+
# https://github.com/actions/runner-images/issues/9369
55+
- name: Install sbt
56+
run: brew install sbt
57+
- name: Build and test launcher command
58+
run: ./project/scripts/native-integration/bashTests
59+
env:
60+
LAUNCHER_EXPECTED_PROJECT: "dist-mac-x86_64"
61+
62+
mac-aarch64:
63+
name: Deploy and Test on Mac ARM64 architecture
64+
runs-on: macos-latest
65+
steps:
66+
- uses: actions/checkout@v4
67+
- name: Set up JDK 17
68+
uses: actions/setup-java@v4
69+
with:
70+
java-version: '17'
71+
distribution: 'temurin'
72+
cache: 'sbt'
73+
# https://github.com/actions/runner-images/issues/9369
74+
- name: Install sbt
75+
run: brew install sbt
76+
- name: Build and test launcher command
77+
run: ./project/scripts/native-integration/bashTests
78+
env:
79+
LAUNCHER_EXPECTED_PROJECT: "dist-mac-aarch64"
80+
81+
win-x86_64:
82+
name: Deploy and Test on Windows x64 architecture
83+
runs-on: windows-latest
84+
steps:
85+
- uses: actions/checkout@v4
86+
- name: Set up JDK 17
87+
uses: actions/setup-java@v4
88+
with:
89+
java-version: '17'
90+
distribution: 'temurin'
91+
cache: 'sbt'
92+
- name: Build the launcher command
93+
run: sbt "dist-win-x86_64/pack"
94+
- name: Run the launcher command tests
95+
run: './project/scripts/native-integration/winTests.bat'
96+
shell: cmd

.github/workflows/lts-backport.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
with:
1616
fetch-depth: 0
1717
- uses: coursier/cache-action@v6
18-
- uses: VirtusLab/scala-cli-setup@v1.2.1
18+
- uses: VirtusLab/scala-cli-setup@v1.3.2
1919
- run: scala-cli ./project/scripts/addToBackportingProject.scala -- ${{ github.sha }}
2020
env:
2121
GRAPHQL_API_TOKEN: ${{ secrets.GRAPHQL_API_TOKEN }}

0 commit comments

Comments
 (0)