Skip to content

Commit e45b1a8

Browse files
author
Filip Łukasik
committed
Merge branch 'scaladoc/new-ui' into scaladoc/docs-navigation-fixes
2 parents 944faf5 + 7513e2b commit e45b1a8

File tree

1,060 files changed

+15225
-10042
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,060 files changed

+15225
-10042
lines changed

.github/workflows/ci.yaml

Lines changed: 65 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -111,14 +111,10 @@ jobs:
111111

112112
- name: Cmd Tests
113113
run: |
114-
./project/scripts/sbt ";dist/pack; scala3-bootstrapped/compile; scala3-bootstrapped/test;sjsSandbox/run;sjsSandbox/test;sjsJUnitTests/test;sjsCompilerTests/test ;sbt-test/scripted scala2-compat/* ;configureIDE ;stdlib-bootstrapped/test:run ;stdlib-bootstrapped-tasty-tests/test; scala3-compiler-bootstrapped/scala3CompilerCoursierTest:test"
114+
./project/scripts/sbt ";dist/pack; scala3-bootstrapped/compile; scala3-bootstrapped/test;sjsSandbox/run;sjsSandbox/test;sjsJUnitTests/test;sjsCompilerTests/test ;sbt-test/scripted scala2-compat/* ;stdlib-bootstrapped/test:run ;stdlib-bootstrapped-tasty-tests/test; scala3-compiler-bootstrapped/scala3CompilerCoursierTest:test"
115115
./project/scripts/cmdTests
116116
./project/scripts/bootstrappedOnlyCmdTests
117117
118-
- name: MiMa
119-
run: |
120-
./project/scripts/sbt ";scala3-interfaces/mimaReportBinaryIssues ;scala3-library-bootstrapped/mimaReportBinaryIssues ;scala3-library-bootstrappedJS/mimaReportBinaryIssues; tasty-core-bootstrapped/mimaReportBinaryIssues"
121-
122118
test_windows_fast:
123119
runs-on: [self-hosted, Windows]
124120
if: "(
@@ -189,6 +185,47 @@ jobs:
189185
run: sbt ";sjsJUnitTests/test ;sjsCompilerTests/test"
190186
shell: cmd
191187

188+
mima:
189+
name: MiMa
190+
runs-on: [self-hosted, Linux]
191+
container:
192+
image: lampepfl/dotty:2021-03-22
193+
options: --cpu-shares 4096
194+
volumes:
195+
- ${{ github.workspace }}/../../cache/sbt:/root/.sbt
196+
- ${{ github.workspace }}/../../cache/ivy:/root/.ivy2/cache
197+
- ${{ github.workspace }}/../../cache/general:/root/.cache
198+
if: "github.event_name == 'schedule' && github.repository == 'lampepfl/dotty'
199+
|| github.event_name == 'push'
200+
|| (
201+
github.event_name == 'pull_request'
202+
&& !contains(github.event.pull_request.body, '[skip ci]')
203+
&& !contains(github.event.pull_request.body, '[skip mima]')
204+
)
205+
|| (
206+
github.event_name == 'workflow_dispatch'
207+
&& github.repository == 'lampepfl/dotty'
208+
)"
209+
steps:
210+
- name: Reset existing repo
211+
run: git -c "http.https://github.com/.extraheader=" fetch --recurse-submodules=no "https://github.com/lampepfl/dotty" && git reset --hard FETCH_HEAD || true
212+
213+
- name: Checkout cleanup script
214+
uses: actions/checkout@v2
215+
216+
- name: Cleanup
217+
run: .github/workflows/cleanup.sh
218+
219+
- name: Git Checkout
220+
uses: actions/checkout@v2
221+
222+
- name: Add SBT proxy repositories
223+
run: cp -vf .github/workflows/repositories /root/.sbt/ ; true
224+
225+
- name: MiMa
226+
run: |
227+
./project/scripts/sbt ";scala3-interfaces/mimaReportBinaryIssues ;scala3-library-bootstrapped/mimaReportBinaryIssues ;scala3-library-bootstrappedJS/mimaReportBinaryIssues; tasty-core-bootstrapped/mimaReportBinaryIssues"
228+
192229
community_build_a:
193230
runs-on: [self-hosted, Linux]
194231
container:
@@ -232,6 +269,10 @@ jobs:
232269
git submodule update --init --recursive --jobs 7
233270
./project/scripts/sbt "community-build/testOnly dotty.communitybuild.CommunityBuildTestA"
234271
272+
- name: Show dependency tracking file
273+
if: ${{ always() }}
274+
run: cat community-build/dotty-community-build-deps || true
275+
235276
community_build_b:
236277
runs-on: [self-hosted, Linux]
237278
container:
@@ -275,6 +316,10 @@ jobs:
275316
git submodule update --init --recursive --jobs 7
276317
./project/scripts/sbt "community-build/testOnly dotty.communitybuild.CommunityBuildTestB"
277318
319+
- name: Show dependency tracking file
320+
if: ${{ always() }}
321+
run: cat community-build/dotty-community-build-deps || true
322+
278323
community_build_c:
279324
runs-on: [self-hosted, Linux]
280325
container:
@@ -318,6 +363,10 @@ jobs:
318363
git submodule update --init --recursive --jobs 7
319364
./project/scripts/sbt "community-build/testOnly dotty.communitybuild.CommunityBuildTestC"
320365
366+
- name: Show dependency tracking file
367+
if: ${{ always() }}
368+
run: cat community-build/dotty-community-build-deps || true
369+
321370
community_build_forward_compat:
322371
runs-on: [self-hosted, Linux]
323372
container:
@@ -447,7 +496,7 @@ jobs:
447496

448497
- name: Test
449498
run: |
450-
./project/scripts/sbt ";dist/pack ;scala3-bootstrapped/compile ;scala3-bootstrapped/test;sjsSandbox/run;sjsSandbox/test;sjsJUnitTests/test;sjsCompilerTests/test ;sbt-test/scripted scala2-compat/* ;configureIDE ;stdlib-bootstrapped/test:run ;stdlib-bootstrapped-tasty-tests/test"
499+
./project/scripts/sbt ";dist/pack ;scala3-bootstrapped/compile ;scala3-bootstrapped/test;sjsSandbox/run;sjsSandbox/test;sjsJUnitTests/test;sjsCompilerTests/test ;sbt-test/scripted scala2-compat/* ;stdlib-bootstrapped/test:run ;stdlib-bootstrapped-tasty-tests/test"
451500
./project/scripts/cmdTests
452501
./project/scripts/bootstrappedOnlyCmdTests
453502
@@ -460,7 +509,7 @@ jobs:
460509
- ${{ github.workspace }}/../../cache/sbt:/root/.sbt
461510
- ${{ github.workspace }}/../../cache/ivy:/root/.ivy2/cache
462511
- ${{ github.workspace }}/../../cache/general:/root/.cache
463-
needs: [test_non_bootstrapped, test, community_build_a, community_build_b, community_build_c, community_build_forward_compat, test_sbt, test_java8]
512+
needs: [test_non_bootstrapped, test, mima, community_build_a, community_build_b, community_build_c, community_build_forward_compat, test_sbt, test_java8]
464513
if: "(github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') && github.repository == 'lampepfl/dotty'"
465514
env:
466515
NIGHTLYBUILD: yes
@@ -561,7 +610,7 @@ jobs:
561610
- ${{ github.workspace }}/../../cache/sbt:/root/.sbt
562611
- ${{ github.workspace }}/../../cache/ivy:/root/.ivy2/cache
563612
- ${{ github.workspace }}/../../cache/general:/root/.cache
564-
needs: [test_non_bootstrapped, test, community_build_a, community_build_b, community_build_c, test_sbt, test_java8]
613+
needs: [test_non_bootstrapped, test, mima, community_build_a, community_build_b, community_build_c, test_sbt, test_java8]
565614
if: "github.event_name == 'push'
566615
&& startsWith(github.event.ref, 'refs/tags/')"
567616

@@ -588,11 +637,10 @@ jobs:
588637
- name: Add SBT proxy repositories
589638
run: cp -vf .github/workflows/repositories /root/.sbt/ ; true
590639

591-
- name: Publish Release
640+
- name: Prepare Release
592641
run: |
593642
./project/scripts/sbt dist/packArchive
594643
sha256sum dist/target/scala3-* > dist/target/sha256sum.txt
595-
./project/scripts/sbtPublish ";project scala3-bootstrapped ;publishSigned ;sonatypeBundleRelease"
596644
echo "RELEASE_TAG=${GITHUB_REF#*refs/tags/}" >> $GITHUB_ENV
597645
598646
- name: Create GitHub Release
@@ -603,9 +651,9 @@ jobs:
603651
with:
604652
tag_name: ${{ github.ref }}
605653
release_name: ${{ github.ref }}
606-
body:
607-
draft: false
608-
prerelease: ${{ contains(env.RELEASE_TAG, 'M') }}
654+
body_path: ./changelogs/${{ env.RELEASE_TAG }}.md
655+
draft: true
656+
prerelease: ${{ contains(env.RELEASE_TAG, '-') }}
609657

610658
- name: Upload zip archive to GitHub Release
611659
uses: actions/upload-release-asset@v1
@@ -637,6 +685,10 @@ jobs:
637685
asset_name: sha256sum.txt
638686
asset_content_type: text/plain
639687

688+
- name: Publish Release
689+
run: ./project/scripts/sbtPublish ";project scala3-bootstrapped ;publishSigned ;sonatypeBundleRelease"
690+
691+
640692
open_issue_on_failure:
641693
runs-on: [self-hosted, Linux]
642694
container:

.github/workflows/scaladoc.yaml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,15 @@ jobs:
5353
- name: Generate testcases documentation
5454
run: ./project/scripts/sbt scaladoc/generateTestcasesDocumentation
5555

56-
- name: Generate Scala 3 documentation
57-
run: ./project/scripts/sbt scaladoc/generateScalaDocumentation
56+
- name: Generate reference documentation and check links stability
57+
run: |
58+
./project/scripts/sbt scaladoc/generateReferenceDocumentation
59+
./project/scripts/docsLinksStability ./scaladoc/output/reference ./project/scripts/expected-links/reference-expected-links.txt
60+
61+
- name: Generate Scala 3 documentation and check links stability
62+
run: |
63+
./project/scripts/sbt scaladoc/generateScalaDocumentation
64+
./project/scripts/docsLinksStability ./scaladoc/output/scala3 ./project/scripts/expected-links/scala3-expected-links.txt
5865
5966
- name: Generate documentation for example project using dotty-sbt
6067
run: ./project/scripts/sbt "sbt-test/scripted sbt-dotty/scaladoc"
@@ -69,10 +76,10 @@ jobs:
6976
PR_NUMBER: ${{ github.event.pull_request.number }}
7077
with:
7178
inlineScript: |
72-
DOC_DEST=pr-${PR_NUMBER:-${GITHUB_REF##*/}}
79+
DOC_DEST=$(echo pr-${PR_NUMBER:-${GITHUB_REF##*/}} | tr -d -c "[-A-Za-z0-9]")
7380
echo uplading docs to https://scala3doc.virtuslab.com/$DOC_DEST
7481
az storage container create --name $DOC_DEST --account-name scala3docstorage --public-access container
75-
az storage blob upload-batch -s scaladoc/output -d $DOC_DEST --account-name scala3docstorage
82+
az storage blob upload-batch --overwrite true -s scaladoc/output -d $DOC_DEST --account-name scala3docstorage
7683
7784
stdlib-sourcelinks-test:
7885
runs-on: ubuntu-latest

.gitignore

Lines changed: 1 addition & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -30,22 +30,6 @@ node_modules
3030
.metals/
3131
metals.sbt
3232

33-
# Scala-IDE specific
34-
.scala_dependencies
35-
.cache
36-
.cache-main
37-
.cache-tests
38-
.classpath
39-
.project
40-
.settings
41-
classes/
42-
*/bin/
43-
44-
# Dotty IDE
45-
/.dotty-ide-dev-port
46-
/.dotty-ide-artifact
47-
/.dotty-ide.json
48-
4933
# idea
5034
.idea
5135
.idea_modules
@@ -79,12 +63,9 @@ compiler/test/debug/Gen.jar
7963
compiler/before-pickling.txt
8064
compiler/after-pickling.txt
8165
bench/compile.txt
82-
*.dotty-ide-version
83-
84-
# The vscode app for testing
85-
vscode-dotty/.vscode-test
8666

8767
community-build/scala3-bootstrapped.version
68+
community-build/sbt-injected-plugins
8869
community-build/sbt-dotty-sbt
8970
community-build/sbt-scalajs-sbt
9071
community-build/dotty-community-build-deps

.gitmodules

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
[submodule "community-build/community-projects/algebra"]
2-
path = community-build/community-projects/algebra
3-
url = https://github.com/dotty-staging/algebra
41
[submodule "community-build/community-projects/betterfiles"]
52
path = community-build/community-projects/betterfiles
63
url = https://github.com/dotty-staging/better-files
@@ -250,3 +247,6 @@
250247
[submodule "community-build/community-projects/scalacheck-forward-compat"]
251248
path = community-build/community-projects/scalacheck-forward-compat
252249
url = https://github.com/dotty-staging/scalacheck
250+
[submodule "community-build/community-projects/http4s"]
251+
path = community-build/community-projects/http4s
252+
url = https://github.com/dotty-staging/http4s.git

CONTRIBUTING.md

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,12 @@ This is the process for committing code to the Scala project. There are of cours
1212
2. The ticket has been discussed and prioritized by the team.
1313
3. You should always perform your work in its own Git branch. The branch should be given a descriptive name that explains its intent. Some teams also like adding the ticket number and/or the [GitHub](http://github.com) user ID to the branch name, these details is up to each of the individual teams. (See below for more details on branch naming.)
1414
4. When the feature or fix is completed you should open a [Pull Request](https://help.github.com/articles/using-pull-requests) on GitHub.
15-
5. The Pull Request should be reviewed by other maintainers (as many as feasible/practical). Note that a reviewer can also be an outside contributor—members of Typesafe and independent contributors are encouraged to participate in the review process. It is not a closed process. Please try to avoid conflict of interest—the spirit of the review process is to evenly distribute the understanding of our code base across its maintainers as well as to load balance quality assurance. Assigning a review to a "sure win" reviewer is not a good long-term solution.
15+
5. The Pull Request should be reviewed by other maintainers (as many as feasible/practical). Note that a reviewer can also be an outside contributor—members of Typesafe or VirtusLab and independent contributors are encouraged to participate in the review process. It is not a closed process. Please try to avoid conflict of interest—the spirit of the review process is to evenly distribute the understanding of our code base across its maintainers as well as to load balance quality assurance. Assigning a review to a "sure win" reviewer is not a good long-term solution.
1616
6. After the review, you should resolve issues brought up by the reviewers as needed (pushing a new commit to address reviewers' comments), iterating until the reviewers give their thumbs up, the "LGTM" (acronym for "Looks Good To Me").
1717
7. Once the code has passed review the Pull Request can be merged into the distribution.
1818

1919
## Pull Request Requirements
2020

21-
First, please have a look at and follow the [Pull Request Policy](https://github.com/scala/scala/wiki/Pull-Request-Policy) for guidelines on submitting a pull request to the dotty project. (the pull request policy is the same as for the Scala programming language)
22-
2321
In order for a Pull Request to be considered, it has to meet these requirements:
2422

2523
1. Live up to the current code standard:
@@ -39,7 +37,7 @@ All contributed code should come accompanied by documentation. Pull requests con
3937

4038
It is ok to work on a public feature branch in the GitHub repository. Something that can sometimes be useful for early feedback etc. If so, then it is preferable to name the branch accordingly. This can be done by either prefixing the name with ``wip-`` as in ‘Work In Progress’, or use hierarchical names like ``wip/..``, ``feature/..`` or ``topic/..``. Either way is fine as long as it is clear that it is work in progress and not ready for merge. This work can temporarily have a lower standard. However, to be merged into master it will have to go through the regular process outlined above, with Pull Request, review etc..
4139

42-
Also, to facilitate both well-formed commits and working together, the ``wip`` and ``feature``/``topic`` identifiers also have special meaning. Any branch labelled with ``wip`` is considered “git-unstable” and may be rebased and have its history rewritten. Any branch with ``feature``/``topic`` in the name is considered “stable” enough for others to depend on when a group is working on a feature.
40+
Also, to facilitate both well-formed commits and working together, the ``wip`` and ``feature``/``topic`` identifiers also have special meaning. Any branch labeled with ``wip`` is considered “git-unstable” and may be rebased and have its history rewritten. Any branch with ``feature``/``topic`` in the name is considered “stable” enough for others to depend on when a group is working on a feature.
4341

4442
## Creating Commits And Writing Commit Messages
4543

@@ -60,4 +58,3 @@ Example:
6058
- Details 1
6159
- Details 2
6260
- Details 3
63-

0 commit comments

Comments
 (0)