Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add gha to check the package #18

Merged
merged 3 commits into from
Apr 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 68 additions & 0 deletions .github/workflows/R-CMD-check.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main, develop]
pull_request:
branches: [main, develop]

name: R-CMD-check

jobs:
R-CMD-check:
runs-on: ${{ matrix.config.os }}

name: ${{ matrix.config.os }} (${{ matrix.config.r }})

strategy:
fail-fast: false
matrix:
config:
- {os: macos-latest, r: 'release'}
- {os: windows-latest, r: 'release'}
- {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'}
- {os: ubuntu-latest, r: 'release'}
- {os: ubuntu-latest, r: 'oldrel-1'}

env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes

steps:
- uses: actions/checkout@v4

- uses: r-lib/actions/setup-pandoc@v2

- uses: actions/setup-java@v4
with:
distribution: 'zulu' # See 'Supported distributions' for available options
java-version: '17'

- uses: r-lib/actions/setup-r@v2
with:
r-version: ${{ matrix.config.r }}
http-user-agent: ${{ matrix.config.http-user-agent }}
use-public-rspm: true

- name: Set up for RProtoBuf on Windows
if: runner.os == 'Windows'
run: choco install protoc

- name: Set up for RProtoBuf on macos
if: runner.os == 'macOS'
run: brew install protobuf

- name: Set up for RProtoBuf on ubuntu
if: runner.os == 'Linux'
run: sudo apt-get update -y && sudo apt-get install protobuf-compiler libprotobuf-dev libprotoc-dev

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::rcmdcheck
needs: check

- uses: r-lib/actions/check-r-package@v2
with:
upload-snapshots: true
build_args: 'c("--no-manual","--compact-vignettes=gs+qpdf")'
error-on: '"error"'
42 changes: 42 additions & 0 deletions .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main, develop]
pull_request:
branches: [main, develop]

name: lint

jobs:
lint:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v4

- uses: r-lib/actions/setup-pandoc@v2

- uses: actions/setup-java@v4
with:
distribution: 'zulu' # See 'Supported distributions' for available options
java-version: '17'

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- name: Set up for RProtoBuf
run: sudo apt-get update -y && sudo apt-get install protobuf-compiler libprotobuf-dev libprotoc-dev

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::lintr, local::.
needs: lint

- name: Lint
run: lintr::lint_package()
shell: Rscript {0}
env:
LINTR_ERROR_ON_LINT: true
2 changes: 1 addition & 1 deletion .github/workflows/pkgdown.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
steps:
- uses: actions/checkout@v4

- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'zulu' # See 'Supported distributions' for available options
java-version: '17'
Expand Down
139 changes: 139 additions & 0 deletions .github/workflows/pr-commands.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
issue_comment:
types: [created]

name: Commands

jobs:
document:
if: ${{ github.event.issue.pull_request && (github.event.comment.author_association == 'MEMBER' || github.event.comment.author_association == 'OWNER') && startsWith(github.event.comment.body, '/document') }}
name: document
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v4

- uses: r-lib/actions/setup-pandoc@v2

- uses: r-lib/actions/pr-fetch@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

- uses: actions/setup-java@v4
with:
distribution: 'zulu' # See 'Supported distributions' for available options
java-version: '17'

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- name: Set up for RProtoBuf
run: sudo apt-get update -y && sudo apt-get install protobuf-compiler libprotobuf-dev libprotoc-dev

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::roxygen2
needs: pr-document

- name: Document
run: roxygen2::roxygenise()
shell: Rscript {0}

- name: Config git
run: |
git config --local user.name "$GITHUB_ACTOR"
git config --local user.email "[email protected]"

# Check if there are any changes
- name: Check for changes
id: check-changes
run: |
if git diff --quiet -- NAMESPACE man/; then
echo "has-changed=false" >> "$GITHUB_OUTPUT"
else
echo "has-changed=true" >> "$GITHUB_OUTPUT"
fi

- name: Commit the changes
if: ${{ steps.check-changes.outputs.has-changed == 'true' }}
run: |
git add man/\* NAMESPACE
git commit -m '[GHA] Document package'

# Commit changes or a placeholder commit if no changes
- name: Commit no changes
if: ${{ steps.check-changes.outputs.has-changed == 'false' }}
run: |
git commit --allow-empty -m '[GHA] Package already documented'

- uses: r-lib/actions/pr-push@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

style:
if: ${{ github.event.issue.pull_request && (github.event.comment.author_association == 'MEMBER' || github.event.comment.author_association == 'OWNER') && startsWith(github.event.comment.body, '/style') }}
name: style
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v4

- uses: r-lib/actions/pr-fetch@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

- uses: actions/setup-java@v4
with:
distribution: 'zulu' # See 'Supported distributions' for available options
java-version: '17'

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- name: Set up for RProtoBuf
run: sudo apt-get update -y && sudo apt-get install protobuf-compiler libprotobuf-dev libprotoc-dev

- name: Install dependencies
run: install.packages("styler")
shell: Rscript {0}

- name: Style
run: styler::style_pkg(transformers = styler::tidyverse_style(indent_by = 4))
shell: Rscript {0}

- name: Config git
run: |
git config --local user.name "$GITHUB_ACTOR"
git config --local user.email "[email protected]"

# Check if there are any changes
- name: Check for changes
id: check-changes
run: |
if git diff --quiet -- '*.R'; then
echo "has-changed=false" >> "$GITHUB_OUTPUT"
else
echo "has-changed=true" >> "$GITHUB_OUTPUT"
fi

- name: Commit the changes
if: ${{ steps.check-changes.outputs.has-changed == 'true' }}
run: |
git add \*.R
git commit -m '[GHA] Style package'

# Commit changes or a placeholder commit if no changes
- name: Commit no changes
if: ${{ steps.check-changes.outputs.has-changed == 'false' }}
run: |
git commit --allow-empty -m '[GHA] Package already styled'

- uses: r-lib/actions/pr-push@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
60 changes: 60 additions & 0 deletions .github/workflows/test-coverage.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main, develop]
pull_request:
branches: [main, develop]

name: test-coverage

jobs:
test-coverage:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}

steps:
- uses: actions/checkout@v4

- uses: r-lib/actions/setup-pandoc@v2

- uses: actions/setup-java@v4
with:
distribution: 'zulu' # See 'Supported distributions' for available options
java-version: '17'

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- name: Set up for RProtoBuf
run: sudo apt-get update -y && sudo apt-get install protobuf-compiler libprotobuf-dev libprotoc-dev

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::covr
needs: coverage

- name: Test coverage
run: |
covr::codecov(
quiet = FALSE,
clean = FALSE,
install_path = file.path(normalizePath(Sys.getenv("RUNNER_TEMP"), winslash = "/"), "package")
)
shell: Rscript {0}

- name: Show testthat output
if: always()
run: |
## --------------------------------------------------------------------
find '${{ runner.temp }}/package' -name 'testthat.Rout*' -exec cat '{}' \; || true
shell: bash

- name: Upload test results
if: failure()
uses: actions/upload-artifact@v4
with:
name: coverage-test-failures
path: ${{ runner.temp }}/package
26 changes: 26 additions & 0 deletions .lintr
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
linters: linters_with_defaults(
indentation_linter = lintr::indentation_linter(indent = 4L),
indentation_linter = NULL,
trailing_blank_lines_linter = NULL,
trailing_whitespace_linter = NULL,
whitespace_linter = NULL,
brace_linter = NULL,
infix_spaces_linter = NULL,
paren_body_linter = NULL,
indentation_linter = NULL,
function_left_parentheses_linter = NULL,
spaces_left_parentheses_linter = NULL,
commas_linter = NULL,
quotes_linter = NULL,
spaces_inside_linter = NULL,
vector_logic_linter = NULL,
seq_linter = NULL,
object_length_linter = NULL,
semicolon_linter = NULL,
cyclocomp_linter = NULL,
object_usage_linter = NULL,
object_name_linter = NULL,
line_length_linter = NULL,
commented_code_linter = NULL
)
encoding: "UTF-8"
18 changes: 16 additions & 2 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,22 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

[Unreleased]: https://github.com/rjdemetra/rjd3filters/compare/v2.0.0...HEAD

## [2.0.0] - 2023-12-12

[2.0.0]: https://github.com/rjdemetra/rjd3filters/releases/tag/v2.0.0
### Changed

* Merge pull request #12 from rjdemetra/develop
* Merge pull request #11 from rjdemetra/main


## [1.0.0] - 2023-07-06

### Added

* New Jars


[Unreleased]: https://github.com/rjdemetra/rjd3filters/compare/v2.0.0...HEAD
[2.0.0]: https://github.com/rjdemetra/rjd3filters/releases/tag/v1.0.0...v2.0.0
[1.0.0]: https://github.com/rjdemetra/rjd3filters/releases/tag/v1.0.0
2 changes: 1 addition & 1 deletion R/kernels.R
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ get_kernel <- function(kernel = c("Henderson","Uniform", "Triangular",
jkernel <- .jcall("jdplus/toolkit/base/core/data/analysis/DiscreteKernel",
"Ljava/util/function/IntToDoubleFunction;",
tolower(kernel), h, sd_gauss)
}else{
} else{
jkernel <- .jcall("jdplus/toolkit/base/core/data/analysis/DiscreteKernel",
"Ljava/util/function/IntToDoubleFunction;",
tolower(kernel), h)
Expand Down
4 changes: 3 additions & 1 deletion README.Rmd
Original file line number Diff line number Diff line change
Expand Up @@ -221,9 +221,11 @@ Proietti, Tommaso and Alessandra Luati (Dec. 2008). “Real time estimation in l
Wildi, Marc and Tucker McElroy (2019). “The trilemma between accuracy, timeliness and smoothness in real-time signal extraction”. In: *International Journal of Forecasting* 35.3, pp. 1072–1084. URL: [https://EconPapers.repec.org/RePEc:eee:intfor:v<wbr>:35:y:2019:i:3:p:1072-1084](https://EconPapers.repec.org/RePEc:eee:intfor:v:35:y:2019:i:3:p:1072-1084).


## Contributing
## Package Maintenance and contributing

Any contribution is welcome and should be done through pull requests and/or issues.
pull requests should include **updated tests** and **updated documentation**. If functionality is changed, docstrings should be added or updated.


## Licensing

Expand Down
Loading