diff --git a/.github/workflows/build-on-ubuntu.yml b/.github/workflows/build-on-ubuntu.yml index 01252d9f6..102a761b5 100644 --- a/.github/workflows/build-on-ubuntu.yml +++ b/.github/workflows/build-on-ubuntu.yml @@ -4,37 +4,38 @@ on: push jobs: build: + name: Build under Ubuntu runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 + with: + submodules: 'true' - - uses: actions/setup-java@v2 + - uses: actions/setup-java@v3 with: java-version: 11 distribution: zulu cache: gradle - - uses: actions/setup-node@v2 + - uses: actions/setup-node@v4 with: node-version: 'lts/*' - - name: Pull config - run: git submodule update --init --recursive - - name: Build project and run tests shell: bash run: ./gradlew build --stacktrace # See: https://github.com/marketplace/actions/junit-report-action - name: Publish Test Report - uses: mikepenz/action-junit-report@v2.8.4 + uses: mikepenz/action-junit-report@v3.7.6 if: always() # always run even if the previous step fails with: - report_paths: '**/build/test-results/test/TEST-*.xml' + report_paths: '**/build/test-results/**/TEST-*.xml' + require_tests: true # will fail workflow if test reports not found - name: Upload code coverage report - uses: codecov/codecov-action@v2 + uses: codecov/codecov-action@v3 with: fail_ci_if_error: false verbose: true diff --git a/.github/workflows/build-on-windows.yml b/.github/workflows/build-on-windows.yml index 3506d13d6..a5025dd91 100644 --- a/.github/workflows/build-on-windows.yml +++ b/.github/workflows/build-on-windows.yml @@ -4,24 +4,27 @@ on: pull_request jobs: build: + name: Build under Windows runs-on: windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 + with: + submodules: 'true' - - uses: actions/setup-java@v2 + - uses: actions/setup-java@v3 with: java-version: 11 distribution: zulu cache: gradle - - uses: actions/setup-node@v2 + - name: Configure Pagefile + uses: al-cheb/configure-pagefile-action@v1.2 + + - uses: actions/setup-node@v4 with: node-version: 'lts/*' - - name: Pull config - run: git submodule update --init --recursive - - name: Build project and run tests shell: cmd # For the reason on `--no-daemon` see https://github.com/actions/cache/issues/454 @@ -29,7 +32,8 @@ jobs: # See: https://github.com/marketplace/actions/junit-report-action - name: Publish Test Report - uses: mikepenz/action-junit-report@v2.8.4 + uses: mikepenz/action-junit-report@v3.7.6 if: always() # always run even if the previous step fails with: - report_paths: '**/build/test-results/test/TEST-*.xml' + report_paths: '**/build/test-results/**/TEST-*.xml' + require_tests: true # will fail workflow if test reports not found diff --git a/.github/workflows/detekt-analysis.yml b/.github/workflows/detekt-analysis.yml deleted file mode 100644 index f65f98dfb..000000000 --- a/.github/workflows/detekt-analysis.yml +++ /dev/null @@ -1,103 +0,0 @@ -# This workflow performs a static analysis of your Kotlin source code using -# Detekt. -# -# Scans are triggered: -# 1. On every push to default and protected branches -# 2. On every Pull Request targeting the default branch -# 3. On a weekly schedule -# 4. Manually, on demand, via the "workflow_dispatch" event -# -# The workflow should work with no modifications, but you might like to use a -# later version of the Detekt CLI by modifing the $DETEKT_RELEASE_TAG -# environment variable. -name: Scan with Detekt - -on: - # Triggers the workflow on push or pull request events but only for default and protected branches - push: - branches: [ master ] - pull_request: - branches: [ master ] - schedule: - - cron: '19 17 * * 4' - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -env: - # Release tag associated with version of Detekt to be installed - # SARIF support (required for this workflow) was introduced in Detekt v1.15.0 - DETEKT_RELEASE_TAG: v1.15.0 - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - # This workflow contains a single job called "scan" - scan: - name: Scan - # The type of runner that the job will run on - runs-on: ubuntu-latest - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 - - # Gets the download URL associated with the $DETEKT_RELEASE_TAG - - name: Get Detekt download URL - id: detekt_info - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - DETEKT_DOWNLOAD_URL=$( gh api graphql --field tagName=$DETEKT_RELEASE_TAG --raw-field query=' - query getReleaseAssetDownloadUrl($tagName: String!) { - repository(name: "detekt", owner: "detekt") { - release(tagName: $tagName) { - releaseAssets(name: "detekt", first: 1) { - nodes { - downloadUrl - } - } - } - } - } - ' | \ - jq --raw-output '.data.repository.release.releaseAssets.nodes[0].downloadUrl' ) - echo "::set-output name=download_url::$DETEKT_DOWNLOAD_URL" - - # Sets up the detekt cli - - name: Setup Detekt - run: | - dest=$( mktemp -d ) - curl --request GET \ - --url ${{ steps.detekt_info.outputs.download_url }} \ - --silent \ - --location \ - --output $dest/detekt - chmod a+x $dest/detekt - echo $dest >> $GITHUB_PATH - - # Performs static analysis using Detekt - - name: Run Detekt - continue-on-error: true - run: | - detekt --input ${{ github.workspace }} --report sarif:${{ github.workspace }}/detekt.sarif.json - - # Modifies the SARIF output produced by Detekt so that absolute URIs are relative - # This is so we can easily map results onto their source files - # This can be removed once relative URI support lands in Detekt: https://git.io/JLBbA - - name: Make artifact location URIs relative - continue-on-error: true - run: | - echo "$( - jq \ - --arg github_workspace ${{ github.workspace }} \ - '. | ( .runs[].results[].locations[].physicalLocation.artifactLocation.uri |= if test($github_workspace) then .[($github_workspace | length | . + 1):] else . end )' \ - ${{ github.workspace }}/detekt.sarif.json - )" > ${{ github.workspace }}/detekt.sarif.json - - # Uploads results to GitHub repository using the upload-sarif action - - uses: github/codeql-action/upload-sarif@v1 - with: - # Path to SARIF file relative to the root of the repository - sarif_file: ${{ github.workspace }}/detekt.sarif.json - checkout_path: ${{ github.workspace }} diff --git a/.github/workflows/ensure-reports.updated.yml b/.github/workflows/ensure-reports-updated.yml similarity index 79% rename from .github/workflows/ensure-reports.updated.yml rename to .github/workflows/ensure-reports-updated.yml index 6bb347874..f16798e12 100644 --- a/.github/workflows/ensure-reports.updated.yml +++ b/.github/workflows/ensure-reports-updated.yml @@ -9,16 +9,17 @@ on: jobs: build: + name: Ensure license reports updated runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: # Configure the checkout of all branches, so that it is possible to run the comparison. fetch-depth: 0 # Check out the `config` submodule to fetch the required script file. submodules: true - - name: Check that `pom.xml` and `license-report.md` are modified + - name: Check that both `pom.xml` and license report files are modified shell: bash run: chmod +x ./config/scripts/ensure-reports-updated.sh && ./config/scripts/ensure-reports-updated.sh diff --git a/.github/workflows/gradle-wrapper-validation.yml b/.github/workflows/gradle-wrapper-validation.yml index 72435c635..47e2938e1 100644 --- a/.github/workflows/gradle-wrapper-validation.yml +++ b/.github/workflows/gradle-wrapper-validation.yml @@ -13,6 +13,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout latest code - uses: actions/checkout@v2 + uses: actions/checkout@v3 + - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@v1 diff --git a/.github/workflows/increment-guard.yml b/.github/workflows/increment-guard.yml index c96b081b0..b33fd74a2 100644 --- a/.github/workflows/increment-guard.yml +++ b/.github/workflows/increment-guard.yml @@ -10,20 +10,20 @@ on: jobs: build: + name: Check version increment runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 + with: + submodules: 'true' - - uses: actions/setup-java@v2 + - uses: actions/setup-java@v3 with: java-version: 11 distribution: zulu cache: gradle - - name: Pull config - run: git submodule update --init --recursive - - name: Check version is not yet published shell: bash run: ./gradlew checkVersionIncrement --stacktrace diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c8954df48..16b6744b5 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -8,20 +8,20 @@ jobs: publish: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 + with: + submodules: 'true' - - uses: actions/setup-java@v2 + - uses: actions/setup-java@v3 with: java-version: 11 distribution: zulu cache: gradle - - uses: actions/setup-node@v2 + - uses: actions/setup-node@v4 with: node-version: 'lts/*' - - run: git submodule update --init --recursive - - name: Decrypt CloudRepo credentials run: ./config/scripts/decrypt.sh "$CLOUDREPO_CREDENTIALS_KEY" ./.github/keys/cloudrepo.properties.gpg ./cloudrepo.properties env: diff --git a/.idea/dictionaries/common.xml b/.idea/dictionaries/common.xml index c6d06b803..e62952a2b 100644 --- a/.idea/dictionaries/common.xml +++ b/.idea/dictionaries/common.xml @@ -5,6 +5,7 @@ arraybuffer aspx bytebuffer + callees closeables cqrs dartdocs @@ -44,15 +45,18 @@ processmanager procman proto's + protodata protos sfixed stderr stringifier stringifiers + substituter switchman testutil threeten tuples + unicast unregister unregistering unregisters diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml index d4e24101b..35bbdff59 100644 --- a/.idea/inspectionProfiles/Project_Default.xml +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -27,6 +27,9 @@