Skip to content

non-ASCII test robustness #305

non-ASCII test robustness

non-ASCII test robustness #305

Workflow file for this run

on:
push:
branches:
- master
pull_request:
branches:
- master
name: code-quality
jobs:
lint-r:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true
- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: |
r-lib/lintr
local::.
needs: lint
- name: Lint
run: lintr::lint_package(pattern = "(?i)[.](r|rmd)$") # TODO(#5830): use the default pattern
shell: Rscript {0}
env:
LINTR_ERROR_ON_LINT: true
R_LINTR_LINTER_FILE: .ci/.lintr
lint-c:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: r-lib/actions/setup-r@v2
- name: Lint
run: |
linter_env = new.env()
for (f in list.files('.ci/linters/c', full.names=TRUE)) sys.source(f, linter_env)
for (f in list.files('src', pattern='[.][ch]$', full.names=TRUE)) {
for (linter in ls(linter_env)) linter_env[[linter]](f)
# TODO(#6272): Incorporate more checks from CRAN_Release
}
shell: Rscript {0}
lint-po:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: r-lib/actions/setup-r@v2
- name: Check translations
run: |
setwd("po")
for (po_file in list.files(pattern = "[.]po$")) {
res = tools::checkPoFile(po_file, strictPlural=TRUE)
if (NROW(res)) { print(res); stop("Fix the above .po file issues.") }
if (!any(grepl("charset=UTF-8", readLines(po_file), fixed=TRUE)))
stop("In ", po_file, ", please use charset=UTF-8.")
res = system2("msgfmt", c("--statistics", po_file, "-o", tempfile()), stdout=TRUE, stderr=TRUE)
if (any(grepl("untranslated message|fuzzy translation", res))) {
cat(sprintf("In %s, found incomplete translations:\n%s\n", po_file, paste(res, collapse="\n")))
stop("Please fix.")
}
}
cat("All translation quality checks completed successfully!\n")
shell: Rscript {0}
lint-md:
- name: Lint

Check failure on line 75 in .github/workflows/code-quality.yaml

View workflow run for this annotation

GitHub Actions / .github/workflows/code-quality.yaml

Invalid workflow file

You have an error in your yaml syntax on line 75
run: |
for (f in list.files('.ci/linters/md', full.names=TRUE)) source(f)