Skip to content

feat: add Locale::getWeekInfo() method #32

feat: add Locale::getWeekInfo() method

feat: add Locale::getWeekInfo() method #32

# GitHub Actions Documentation: https://docs.github.com/en/actions
name: "Continuous Integration"
on:
push:
branches:
- "main"
tags:
- "*"
pull_request:
branches:
- "main"
# Cancels all previous workflow runs for the same branch that have not yet completed.
concurrency:
# The concurrency group contains the workflow name and the branch name.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
LC_ALL: "C"
jobs:
coding-standards:
name: "Coding standards"
runs-on: "ubuntu-latest"
steps:
- name: "Checkout repository"
uses: "actions/checkout@v3.5.3"
- name: "Check formatting (clang-format)"
uses: "jidicula/clang-format-action@v4.11.0"
with:
clang-format-version: "16"
check-path: "src"
exclude-regex: "^.*arginfo\\.h$"
memcheck:
name: "Test for Memory Leaks"
needs: ["coding-standards"]
runs-on: "ubuntu-latest"
steps:
- name: "Checkout repository"
uses: "actions/checkout@v3.5.3"
- name: "Install Valgrind"
run: |
sudo apt-get update
sudo apt-get install -y valgrind
valgrind --version
- name: "Install PHP"
uses: "shivammathur/setup-php@2.25.5"
with:
php-version: "latest"
extensions: "intl-73.2"
coverage: "none"
env:
debug: true
phpts: "ts"
- name: "Install dependencies (Composer)"
uses: "ramsey/composer-install@2.2.0"
- name: "Build and install ecma_intl"
run: |
phpize
./configure --enable-ecma_intl
make -j$(nproc)
php -d extension="$PWD/modules/ecma_intl.so" --ri ecma_intl
- name: "Run tests (PHPT with memcheck)"
run: "composer dev:test:memcheck"
tests:
name: "Tests: PHP ${{ matrix.php }}, ICU ${{ matrix.icu }}"
needs: ["coding-standards"]
runs-on: "ubuntu-latest"
strategy:
fail-fast: false
matrix:
php:
- "8.2"
icu:
- "70.1"
- "71.1"
- "72.1"
- "73.1"
- "73.2"
steps:
- name: "Checkout repository"
uses: "actions/checkout@v3.5.3"
- name: "Install Criterion"
run: |
sudo apt-get update
sudo apt-get install -y libcriterion3 libcriterion-dev
- name: "Install PHP"
uses: "shivammathur/setup-php@2.25.5"
with:
php-version: "${{ matrix.php }}"
extensions: "intl-${{ matrix.icu }}"
coverage: "none"
env:
debug: true
phpts: "ts"
- name: "Install dependencies (Composer)"
uses: "ramsey/composer-install@2.2.0"
- name: "Build and install ecma_intl"
run: |
phpize
./configure --enable-ecma_intl --enable-criterion
make -j$(nproc)
php -d extension="$PWD/modules/ecma_intl.so" --ri ecma_intl
- name: "Run tests (PHPT)"
run: "composer dev:test:phpt"
- name: "Run tests (Criterion)"
run: "composer dev:test:criterion"
- name: "Run tests (Pest)"
run: "composer dev:test:pest -- --colors=always"