# Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. name: Binary Compatibility on: pull_request: push: branches: - main - 1.0.x - 1.1.x - 1.2.x permissions: {} jobs: check-binary-compatibility: name: Check / Binary Compatibility runs-on: ubuntu-22.04 if: github.repository == 'apache/pekko' strategy: fail-fast: false env: DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }} steps: - name: Checkout uses: actions/checkout@v5 with: fetch-depth: 0 fetch-tags: 0 - name: Setup Java 17 uses: actions/setup-java@v5 with: distribution: temurin java-version: 17 - name: Install sbt uses: sbt/setup-sbt@17575ea4e18dd928fe5968dbe32294b97923d65b # v1.1.13 - name: Cache Coursier cache uses: coursier/cache-action@4e2615869d13561d626ed48655e1a39e5b192b3c # v6.4.7 - name: Enable jvm-opts run: cp .jvmopts-ci .jvmopts - name: Compile code run: sbt +compile - name: Check if the dependency task in the built correctly run: sbt dependWalkerCheck - name: Report MiMa Binary Issues run: |- sbt +mimaReportBinaryIssues - name: Check correct MiMa filter directories run: | sbt checkMimaFilterDirectories