<commit_before>name: Elixir

on:
  pull_request:
    branches:
      - 'main'
  push:
    branches:
      - 'main'

jobs:
  format:
    runs-on: ubuntu-18.04
    steps:
      - uses: actions/checkout@v2
      - uses: erlef/setup-beam@v1
        with:
          otp-version: '25.0.3'
          elixir-version: '1.13.4'
      - uses: actions/cache@v2
        name: Cache
        with:
          path: |
            apps/opentelemetry_api/deps
          key: v3-${{ hashFiles('apps/opentelemetry_api/mix.lock') }}
      - run: mix format --check-formatted
      - run: mix deps.get
        working-directory: apps/opentelemetry_api/
      - run: mix format --check-formatted
        working-directory: apps/opentelemetry_api/
  sdk_tests:
    runs-on: ${{ matrix.os }}
    name: Test on Elixir ${{ matrix.elixir_version }} (OTP ${{ matrix.otp_version }}) and ${{ matrix.os }}
    strategy:
      matrix:
        otp_version: ['25.0.3', '24.1.2', '192.168.3.11']
        elixir_version: ['1.13.4', '1.12.3']
        rebar3_version: ['3.19.0']
        os: [ubuntu-18.04]
    env:
      OTP_VERSION: ${{ matrix.otp_version }}
      ELIXIR_VERSION: ${{ matrix.elixir_version }}
      OTEL_TRACES_EXPORTER: "none"
    steps:
      - uses: actions/checkout@v2
      - uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ matrix.otp_version }}
          elixir-version: ${{ matrix.elixir_version }}
          rebar3-version: ${{ matrix.rebar3_version }}
      - name: Compile
        run: rebar3 as test compile
      - name: ExUnit
        run: mix test --no-start test/otel_tests.exs

  api_tests:
    runs-on: ${{ matrix.os }}
    name: Test on Elixir ${{ matrix.elixir_version }} (OTP ${{ matrix.otp_version }}) and ${{ matrix.os }}
    strategy:
      matrix:
        otp_version: ['25.0.3', '24.1.2', '23.3.4.2']
        elixir_version: ['1.13.4', '1.12.3']
        rebar3_version: ['3.19.0']
        os: [ubuntu-18.04]
    env:
      OTP_VERSION: ${{ matrix.otp_version }}
      ELIXIR_VERSION: ${{ matrix.elixir_version }}
    defaults:
      run:
        working-directory: apps/opentelemetry_api/
    steps:
      - uses: actions/checkout@v2
      - uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ matrix.otp_version }}
          elixir-version: ${{ matrix.elixir_version }}
          rebar3-version: ${{ matrix.rebar3_version }}
      - uses: actions/cache@v2
        name: Cache
        with:
          path: |
            apps/opentelemetry_api/deps
            apps/opentelemetry_api/_build
          key: ${{ runner.os }}-build-${{ matrix.otp_version }}-${{ matrix.elixir_version }}-v3-${{ hashFiles(format('{0}{1}', github.workspace, '/apps/opentelemetry_api/mix.lock')) }}
          restore-keys: |
            ${{ runner.os }}-build-${{ matrix.otp_version }}-${{ matrix.elixir_version }}-
      - run: mix deps.get
        name: Deps
      - run: mix test --cover
        name: ExUnit
      - uses: codecov/codecov-action@v3
        if: ${{ always() }}
        with:
          file: apps/opentelemetry_api/coverage.xml
          env_vars: OTP_VERSION,ELIXIR_VERSION
          flags: api,elixir

  dialyze:
    runs-on: ${{ matrix.os }}
    name: Dialyze on Elixir ${{ matrix.elixir_version }} (OTP ${{ matrix.otp_version }}) and ${{ matrix.os }}
    strategy:
      matrix:
        otp_version: ['25.0.3']
        elixir_version: ['1.13.4']
        os: [ubuntu-18.04]
    env:
      OTP_VERSION: ${{ matrix.otp_version }}
      ELIXIR_VERSION: ${{ matrix.elixir_version }}
    defaults:
      run:
        working-directory: apps/opentelemetry_api/
    steps:
      - uses: actions/checkout@v2
      - uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ matrix.otp_version }}
          elixir-version: ${{ matrix.elixir_version }}
      - uses: actions/cache@v2
        name: Cache
        with:
          path: |
            apps/opentelemetry_api/deps
            apps/opentelemetry_api/_build
          key: ${{ runner.os }}-dialyzer-${{ matrix.otp_version }}-${{ matrix.elixir_version }}-v3-${{ hashFiles('apps/opentelemetry_api/mix.lock') }}
          restore-keys: |
            ${{ runner.os }}-build-${{ matrix.otp_version }}-${{ matrix.elixir_version }}-
      - run: mix deps.get
        name: Deps
      - run: mix dialyzer
        name: Dialyzer
<commit_msg>force update of rebar3 by mix<commit_after>name: Elixir

on:
  pull_request:
    branches:
      - 'main'
  push:
    branches:
      - 'main'

jobs:
  format:
    runs-on: ubuntu-18.04
    steps:
      - uses: actions/checkout@v2
      - uses: erlef/setup-beam@v1
        with:
          otp-version: '25.0.3'
          elixir-version: '1.13.4'
      - uses: actions/cache@v2
        name: Cache
        with:
          path: |
            apps/opentelemetry_api/deps
          key: v3-${{ hashFiles('apps/opentelemetry_api/mix.lock') }}
      - run: mix format --check-formatted
      - run: mix deps.get
        working-directory: apps/opentelemetry_api/
      - run: mix format --check-formatted
        working-directory: apps/opentelemetry_api/
  sdk_tests:
    runs-on: ${{ matrix.os }}
    name: Test on Elixir ${{ matrix.elixir_version }} (OTP ${{ matrix.otp_version }}) and ${{ matrix.os }}
    strategy:
      matrix:
        otp_version: ['25.0.3', '24.1.2', '192.168.3.11']
        elixir_version: ['1.13.4', '1.12.3']
        rebar3_version: ['3.19.0']
        os: [ubuntu-18.04]
    env:
      OTP_VERSION: ${{ matrix.otp_version }}
      ELIXIR_VERSION: ${{ matrix.elixir_version }}
      OTEL_TRACES_EXPORTER: "none"
    steps:
      - uses: actions/checkout@v2
      - uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ matrix.otp_version }}
          elixir-version: ${{ matrix.elixir_version }}
          rebar3-version: ${{ matrix.rebar3_version }}
      - name: Compile
        run: rebar3 as test compile
      - name: ExUnit
        run: mix test --no-start test/otel_tests.exs

  api_tests:
    runs-on: ${{ matrix.os }}
    name: Test on Elixir ${{ matrix.elixir_version }} (OTP ${{ matrix.otp_version }}) and ${{ matrix.os }}
    strategy:
      matrix:
        otp_version: ['25.0.3', '24.1.2', '192.168.3.11']
        elixir_version: ['1.13.4', '1.12.3']
        rebar3_version: ['3.19.0']
        os: [ubuntu-18.04]
    env:
      OTP_VERSION: ${{ matrix.otp_version }}
      ELIXIR_VERSION: ${{ matrix.elixir_version }}
    defaults:
      run:
        working-directory: apps/opentelemetry_api/
    steps:
      - uses: actions/checkout@v2
      - uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ matrix.otp_version }}
          elixir-version: ${{ matrix.elixir_version }}
          rebar3-version: ${{ matrix.rebar3_version }}
      - uses: actions/cache@v2
        name: Cache
        with:
          path: |
            apps/opentelemetry_api/deps
            apps/opentelemetry_api/_build
          key: ${{ runner.os }}-build-${{ matrix.otp_version }}-${{ matrix.elixir_version }}-v3-${{ hashFiles(format('{0}{1}', github.workspace, '/apps/opentelemetry_api/mix.lock')) }}
          restore-keys: |
            ${{ runner.os }}-build-${{ matrix.otp_version }}-${{ matrix.elixir_version }}-
      - run: mix deps.get
        name: Deps
      - run: mix local.rebar --force
      - run: mix test --cover
        name: ExUnit
      - uses: codecov/codecov-action@v3
        if: ${{ always() }}
        with:
          file: apps/opentelemetry_api/coverage.xml
          env_vars: OTP_VERSION,ELIXIR_VERSION
          flags: api,elixir

  dialyze:
    runs-on: ${{ matrix.os }}
    name: Dialyze on Elixir ${{ matrix.elixir_version }} (OTP ${{ matrix.otp_version }}) and ${{ matrix.os }}
    strategy:
      matrix:
        otp_version: ['25.0.3']
        elixir_version: ['1.13.4']
        os: [ubuntu-18.04]
    env:
      OTP_VERSION: ${{ matrix.otp_version }}
      ELIXIR_VERSION: ${{ matrix.elixir_version }}
    defaults:
      run:
        working-directory: apps/opentelemetry_api/
    steps:
      - uses: actions/checkout@v2
      - uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ matrix.otp_version }}
          elixir-version: ${{ matrix.elixir_version }}
      - uses: actions/cache@v2
        name: Cache
        with:
          path: |
            apps/opentelemetry_api/deps
            apps/opentelemetry_api/_build
          key: ${{ runner.os }}-dialyzer-${{ matrix.otp_version }}-${{ matrix.elixir_version }}-v3-${{ hashFiles('apps/opentelemetry_api/mix.lock') }}
          restore-keys: |
            ${{ runner.os }}-build-${{ matrix.otp_version }}-${{ matrix.elixir_version }}-
      - run: mix deps.get
        name: Deps
      - run: mix dialyzer
        name: Dialyzer

{'fraction_non_alphanumeric': 0.15030428292570905, 'fraction_numerical': 0.02583534274888047, 'mean_word_length': 2.0127983396748528, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 4, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '214188', 'n_tokens_mistral': 3232, 'n_tokens_neox': 3067, 'n_words': 539}