Skip to content

Commit 575cbdd

Browse files
committed
GH-43547: [R][CI] Add recheck workflow for checking reverse dependencies on GHA (#43784)
### Rationale for this change See #43547. ### What changes are included in this PR? Adds two new new crossbow tasks for performing reverse dependency checking using https://github.com/r-devel/recheck: - `r-recheck-most` - `r-recheck-strong` ### Are these changes tested? Yes. #44523 (comment). ### Are there any user-facing changes? No. * GitHub Issue: #43547 Fixes #43547. Authored-by: Bryce Mecum <[email protected]> Signed-off-by: Bryce Mecum <[email protected]>
1 parent e00ce4d commit 575cbdd

File tree

2 files changed

+45
-0
lines changed

2 files changed

+45
-0
lines changed

Diff for: dev/tasks/r/github.recheck.yml

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
18+
{% import 'macros.jinja' as macros with context %}
19+
20+
{{ macros.github_header() }}
21+
22+
jobs:
23+
recheck:
24+
name: Reverse check {{ which }} dependents
25+
uses: r-devel/recheck/.github/workflows/recheck.yml@9fe04de60ebeadd505b8d76223a346617ccca836
26+
with:
27+
which: {{ which }}
28+
subdirectory: r
29+
repository: {{ arrow.github_repo }}
30+
ref: {{ arrow.branch }}

Diff for: dev/tasks/tasks.yml

+15
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ groups:
9494
r:
9595
- test*-r-*
9696
- r-binary-packages
97+
- r-recheck-most
9798

9899
ruby:
99100
- test-*ruby*
@@ -901,6 +902,20 @@ tasks:
901902
- r-pkg__bin__macosx__big-sur-arm64__contrib__4.3__arrow_{no_rc_r_version}\.tgz
902903
- r-pkg__src__contrib__arrow_{no_rc_r_version}\.tar\.gz
903904

905+
{% for which in ["strong", "most"] %}
906+
# strong and most used here are defined by ?tools::package_dependencies as:
907+
#
908+
# strong: Depends, Imports, LinkingTo
909+
# most: Depends, Imports, LinkingTo, Suggests
910+
#
911+
# So the key difference between strong and most is whether you want to expand
912+
# the reverse dependency checking to Suggests (most) or not.
913+
r-recheck-{{which}}:
914+
ci: github
915+
template: r/github.recheck.yml
916+
params:
917+
which: {{which}}
918+
{% endfor %}
904919

905920
########################### Release verification ############################
906921

0 commit comments

Comments
 (0)