Skip to content
Open
Show file tree
Hide file tree
Changes from 173 commits
Commits
Show all changes
205 commits
Select commit Hold shift + click to select a range
35b8872
update README.md for Zenodo DOI.
jianhong May 3, 2022
beb7bdc
Update README.md
jianhong May 3, 2022
1b5c67a
update the version number to dev.
jianhong May 3, 2022
430c697
Update README.md
jianhong May 3, 2022
22c0c70
update changelog.md
jianhong May 3, 2022
d2e6675
Update CHANGELOG.md
jfy133 May 3, 2022
373f7a4
Merge pull request #69 from jianhong/master
jfy133 May 3, 2022
7a885d4
Template update for nf-core/tools version 2.4
nf-core-bot May 16, 2022
64bfcec
add support for MseI.
jianhong Jun 8, 2022
d2b193a
Merge remote-tracking branch 'upstream/dev' into dev
jianhong Jun 8, 2022
548783e
Merge remote-tracking branch 'upstream/nf-core-template-merge-2.4' in…
jianhong Jun 8, 2022
ba146a3
fix the issue of multiqc_config file
jianhong Jun 24, 2022
5694def
fix a issue in README.
jianhong Jul 6, 2022
85b2b49
add TAD, AB compartments, APA analysis
jianhong Jul 12, 2022
2dc6af9
change the pipeline to use different tools
jianhong Aug 9, 2022
1521b32
update workflow image.
jianhong Aug 9, 2022
00c264b
re-orgnize the juicer tools modules.
jianhong Aug 11, 2022
708255f
add multiple scripts for homer
jianhong Aug 12, 2022
a1b9f1a
update scripts for hicdcplus
jianhong Aug 17, 2022
4b24e0f
add filter condition for prepare_counts.
jianhong Aug 21, 2022
05d1ef3
fix a typo in homer_compartments
jianhong Aug 22, 2022
e831c97
Template update for nf-core/tools version 2.5
nf-core-bot Aug 30, 2022
75abb89
Template update for nf-core/tools version 2.5.1
nf-core-bot Sep 1, 2022
37c07b4
Template update for nf-core/tools version 2.6
nf-core-bot Oct 4, 2022
a64c3a3
change the output folder for test_hipeak.conf
jianhong Oct 11, 2022
d275f9a
fix a bug if juicer_tools_jar is false, there is no JUICER_PRE.out
jianhong Oct 11, 2022
2da1032
Merge remote-tracking branch 'upstream/nf-core-template-merge-2.6' in…
jianhong Oct 11, 2022
618c10b
fix lint
jianhong Oct 11, 2022
83146a5
prettier write
jianhong Oct 11, 2022
98cbc87
fix the space issue for enzyme_cut.nf
jianhong Oct 11, 2022
d414f75
fix multiple lint issue
jianhong Oct 11, 2022
597861d
reformat modules.config;
jianhong Oct 12, 2022
f901c2c
update compartment, tad, apa tools.
jianhong Oct 26, 2022
a51b3a4
add hicdcplus interaction caller.
jianhong Nov 7, 2022
f6a9fcf
update more differential methods.
jianhong Nov 21, 2022
64ca201
update v4c and circos plot.
jianhong Nov 28, 2022
6b1291a
fix an issue of hicdcplus callloops
jianhong Nov 29, 2022
52cc486
output channels for debug.
jianhong Dec 1, 2022
e8daffc
add TFEA
jianhong Dec 3, 2022
918656a
fix multiple bugs in hicdcplus.
jianhong Dec 6, 2022
163663b
update homer install.nf
jianhong Dec 7, 2022
4f0cab3
update homer install.nf
jianhong Dec 7, 2022
4fe5cc6
Template update for nf-core/tools version 2.7.1
nf-core-bot Dec 8, 2022
9d4a0f4
Merge remote-tracking branch 'upstream/nf-core-template-merge-2.7.1' …
jianhong Dec 12, 2022
2c8cab5
update documentation and modules.
jianhong Dec 12, 2022
d686664
remove local_modules test.
jianhong Dec 12, 2022
2599483
update documentations
jianhong Dec 12, 2022
99a2a20
fix the white space issue.
jianhong Dec 12, 2022
2c1eec1
fix a typo in eigenvector.nf
jianhong Dec 12, 2022
897cf3d
add peakachu.
jianhong Dec 14, 2022
4f3bc1f
run python black
jianhong Dec 14, 2022
23db607
fix the read_csv error for MAPS.py
jianhong Dec 15, 2022
0cb7ffd
update annotations from 5k,10K bins to R2 peaks; fix peakachu.
jianhong Dec 16, 2022
c1c3b6d
remove the usage.html
jianhong Dec 16, 2022
eef4ed0
chmod peakachu
jianhong Dec 16, 2022
49ad4bf
fix peakachu.
jianhong Dec 18, 2022
81ce7a7
Template update for nf-core/tools version 2.7.2
nf-core-bot Dec 19, 2022
108a049
adjust the output folder
jianhong Dec 19, 2022
14e3000
add tools input check.
jianhong Dec 19, 2022
bd224d9
Merge remote-tracking branch 'upstream/nf-core-template-merge-2.7.2' …
jianhong Dec 19, 2022
9bc3cf4
fix prettier check
jianhong Dec 19, 2022
07c1080
fix the duplicated imported module issue.
jianhong Dec 19, 2022
08902c8
update documentation
jianhong Dec 20, 2022
8956b50
fix the bugs in atacseqtfea.nf
jianhong Dec 20, 2022
19c6a32
fix the chromosome style for homer tfea analysis;
jianhong Dec 20, 2022
e062233
update documentations.
jianhong Dec 20, 2022
67ff3d1
update documentation.
jianhong Dec 20, 2022
f5474d6
prettier
jianhong Dec 20, 2022
6bbf9cb
try to fix a bug in peakachu model.nf
jianhong Jan 10, 2023
4afb4da
fix the difference in seqlevels style when annotation by chippeakanno.
jianhong Jan 10, 2023
2524126
handle the errors for chippeakanno.nf
jianhong Jan 10, 2023
418803e
Update assets/multiqc_config.yml
jianhong Jan 19, 2023
a512eab
fix a bug in recenterpeak.nf for bed format file.
jianhong Jan 19, 2023
fe75333
Merge branch 'dev2' of github.com:jianhong/hicar into dev2
jianhong Jan 19, 2023
32a706f
Update docs/usage.md
jianhong Jan 19, 2023
023890a
Update docs/usage.md
jianhong Jan 19, 2023
b48a711
Update docs/usage.md
jianhong Jan 19, 2023
1163aaf
update documentation.
jianhong Jan 19, 2023
f43e31d
add license to customized scripts.
jianhong Jan 19, 2023
58f524b
rename the tools.
jianhong Jan 19, 2023
91c9c82
move the tools check step to nextflow schema.
jianhong Jan 19, 2023
faa30c9
remove the ifEmpty for versions.
jianhong Jan 19, 2023
99cafcc
remove if statement for juicer_tools_jar check.
jianhong Jan 19, 2023
e696772
remove homer interaction caller.
jianhong Jan 19, 2023
61bc15f
Update subworkflows/local/interaction_caller/maps_multienzyme.nf
jianhong Jan 19, 2023
a9ec0d7
Update workflows/hicar.nf
jianhong Jan 19, 2023
616aa74
removed un-used code.
jianhong Jan 19, 2023
51b69d3
add doi to nextflow.config file.
jianhong Jan 19, 2023
f42c46c
mark todo for mqc channel.
jianhong Jan 19, 2023
857adb7
change local cooler modules to nf-core cooler modules.
jianhong Jan 20, 2023
4b0b3ff
Update subworkflows/local/interactions.nf
jianhong Jan 23, 2023
1bf68bd
Update subworkflows/local/tads.nf
jianhong Jan 23, 2023
6bb4cb6
fix typo of hicexplorer
jianhong Jan 23, 2023
8bb007a
prittier fix the format of nextflow_schema.json
jianhong Jan 23, 2023
76d2e38
reformat peakachu_score_genome.py by black.
jianhong Jan 23, 2023
2be5d03
Update subworkflows/local/tads.nf
jianhong Jan 24, 2023
d7c603a
add chicQualityControl to filter reference points.
jianhong Jan 24, 2023
a1415ae
fix the channel re-use issue for juicebox.
jianhong Jan 25, 2023
d82bb2a
fix hpc usage documentation for slurm job queue size.
jianhong Jan 26, 2023
a7d9836
download the scripts of MAPS to bin folder;
jianhong Jan 26, 2023
83261bc
black bin fix for maps scripts.
jianhong Jan 26, 2023
549f8a0
skip error for juicer compartment caller.
jianhong Jan 27, 2023
59fedf3
change the output folder of MAPS from MAPSpeak to maps;
jianhong Jan 27, 2023
a62320d
fix the output folder for juicer bigwig file.
jianhong Jan 27, 2023
ad035f6
update ChangeLogs.
jianhong Feb 1, 2023
282f562
update ChangeLog.md
jianhong Feb 1, 2023
c72764f
update pythonBlack
jianhong Feb 1, 2023
1427d90
fix a typo introduced by rename the parameter for CHICSIGNIFICANTINTE…
jianhong Feb 2, 2023
46c54bd
fix the out of range issue for compartments caller when generate bigw…
jianhong Feb 2, 2023
0766e63
fix the bedgraph file format output by find_hic_compartments.nf.
jianhong Feb 3, 2023
c671447
try to fix the issue of End coordinate bigger than chromosome size.
jianhong Feb 6, 2023
94df420
fix the error introduced by assign mismatched seqnames for trimming s…
jianhong Feb 6, 2023
8709b58
sort the bedgraph before export by trimbedgraph.nf
jianhong Feb 6, 2023
4259a90
add scale factor to atac reads coverage cal.
jianhong Feb 10, 2023
6149a45
update changelog.
jianhong Feb 10, 2023
2716209
adjust callpeak resource;
jianhong Feb 15, 2023
e785f0a
fix the coordinates bug in diffhicar by edger
jianhong Feb 16, 2023
19ade68
try to fix the sort issue for trimbedgraph.
jianhong Feb 17, 2023
c3e03e9
fix the ambiguous redirect error for different version of wc
jianhong Feb 17, 2023
c5bc8ce
fix the bug of ATAC coverage introduced by scale coverage.
jianhong Feb 18, 2023
86a859b
fix the typo
jianhong Feb 18, 2023
16ac815
try to fix the sortbed issue for trimbegraph.nf
jianhong Feb 18, 2023
6d8e3ff
fix the negative width value for trimbedgraph.
jianhong Feb 23, 2023
7060b00
update the circos plot.
jianhong Feb 27, 2023
4e6c8ae
fix the indent issue.
jianhong Feb 27, 2023
04c4edb
fix the bug that peakachu_score_genome only output one chromosome.
jianhong Feb 28, 2023
a82c56e
update reads_summary table to include unmapped/multiple mapped info.
jianhong Feb 28, 2023
aea0e5e
add the possibility to subsample to balance the input reads
jianhong Mar 1, 2023
3d1c45d
update circos plot
jianhong Mar 2, 2023
54bfb80
update circos plots for homer
jianhong Mar 3, 2023
234de85
keep standard chromosome only for hicdcplus.
jianhong Mar 6, 2023
8a88bae
change the cutadapt error tolerance from 0 to 0.15
jianhong Mar 6, 2023
e621f16
update paths
FriederikeHanssen Mar 15, 2023
250a77c
Merge pull request #81 from FriederikeHanssen/aws_paths
ewels Mar 15, 2023
0177bdb
fix the issue of dot in group name for APA plot.
jianhong Apr 6, 2023
c85b6ee
replace the dots by '_' in the samples name
jianhong Apr 19, 2023
f406637
Prettier check
jianhong Apr 19, 2023
64a62b4
fix the bug in merge process if no interaction called.
jianhong Apr 24, 2023
4f2e0ec
fix the sort method for juicer pre.
jianhong Apr 24, 2023
d4b40be
change the default normalization method of juicer tools from KR to SC…
jianhong Apr 24, 2023
4bd9955
update cooltools version;
jianhong Apr 25, 2023
277c07b
fix the bug that circos can not handle emsembl style chromosome names.
jianhong Apr 26, 2023
188ac45
fix the bug that circos can not handle ensembl style chromosome names.
jianhong Apr 26, 2023
c9e3de2
add more annotation plots.
jianhong Apr 26, 2023
a80e7f1
fix the spaces in last update.
jianhong Apr 26, 2023
e2f1f82
adjust parameters for cooltools/insulation
jianhong Apr 27, 2023
3b6a673
loosing hipeak calling condition.
jianhong Apr 27, 2023
0d1de1d
Template update for nf-core/tools version 2.8
nf-core-bot Apr 28, 2023
b891ad8
merge upstream/nf-core-template-merge-2.8
jianhong Apr 28, 2023
7fe1d80
fix the issue `TypeError: float() argument must be a string or a real…
jianhong Apr 28, 2023
118c1d2
update modules;
jianhong May 1, 2023
5ace3fc
adjust the pipeline controlers;
jianhong May 3, 2023
84fedfd
Merge pull request #84 from jianhong/dev
maxulysse May 11, 2023
6540454
update version number.
jianhong May 16, 2023
180716f
nf-core lint --fix files_unchanged
jianhong May 16, 2023
ba6e86c
Revert "nf-core lint --fix files_unchanged"
jianhong May 16, 2023
3e7c156
remove the memory setting for samtools sort until the bug be fixed.
jianhong May 17, 2023
4387a33
try .8 times memory for samtools_sort
jianhong May 18, 2023
7437e5f
not fix, leave it unsolved.
jianhong May 18, 2023
7ab57bd
temporary fix until the official update.
jianhong May 23, 2023
d7cef60
use local samtools/sort instead of nf-core/samtools/sort to avoid the…
jianhong Jun 12, 2023
f58a0de
update the change log file.
jianhong Jun 15, 2023
6176d90
Merge pull request #85 from jianhong/dev
sateeshperi Jun 16, 2023
bdb14f9
Template update for nf-core/tools version 2.9
nf-core-bot Jun 30, 2023
17160eb
add license to file `check_samplesheet.py`
jianhong Jul 5, 2023
4cd791b
Update output documentation for missing links by changing to lower case.
jianhong Jul 5, 2023
7e00322
fix the typo and grammar for the output and usage documentation.
jianhong Jul 5, 2023
f806036
remove the unused command line in getscale.
jianhong Jul 5, 2023
583352d
fix the alignment style of code.
jianhong Jul 5, 2023
40512b0
Fix the typo in documentations.
jianhong Jul 5, 2023
99b57a1
remove quay.io from local modules.
jianhong Jul 5, 2023
7f99840
change parameter `skip_maps_signal` to `create_maps_signal`
jianhong Jul 5, 2023
117db4c
fix a type and remove unused codes for getscale.
jianhong Jul 6, 2023
c4e0a9a
Merge pull request #88 from jianhong/dev
mirpedrol Jul 10, 2023
3883857
merge upstream/nf-core-template-merge-2.9; shift input check to plugin.
jianhong Jul 10, 2023
0b5e831
shift the input check to plugin.
jianhong Jul 10, 2023
ea79728
add samtools/sort git_sha back.
jianhong Jul 10, 2023
e3da126
remove the duplicated input plugins.
jianhong Jul 11, 2023
c6d9fcd
remove unused files; change file exists check by nf-validation.
jianhong Jul 12, 2023
64e3423
try to fix an issue for annotation when empty file is input.
jianhong Jul 12, 2023
b5b9978
remove the input_check.nf.
jianhong Jul 13, 2023
2ad59a0
simplify the input meta data rearrangement code.
jianhong Jul 13, 2023
41312de
Merge pull request #89 from jianhong/dev
jianhong Jul 13, 2023
c7ed956
remove output folder in the config files.
jianhong Jul 13, 2023
7c41b30
Merge branch 'nf-core:dev' into dev_remove_output_folder
jianhong Jul 13, 2023
1c22d9d
update Changelog.md
jianhong Jul 13, 2023
a526992
update Changelog.md
jianhong Jul 13, 2023
a3da5bb
fix a issue in if id contains dots.
jianhong Jul 13, 2023
24457c9
Merge pull request #92 from jianhong/dev
jianhong Jul 13, 2023
510fc86
Merge branch 'nf-core:dev' into dev_remove_output_folder
jianhong Jul 13, 2023
7411a4c
fix the meta issue.
jianhong Jul 13, 2023
91febad
improve the meta id related codes.
jianhong Jul 14, 2023
1ffcd8b
Merge pull request #90 from jianhong/dev_remove_output_folder
jianhong Jul 14, 2023
d3fcb8c
Merge branch 'nf-core:dev' into dev
jianhong Jul 14, 2023
1bef3c1
Merge pull request #93 from jianhong/dev
jianhong Jul 14, 2023
7c75e59
update the documentation for technique replicate.
jianhong Jul 14, 2023
ea77a88
fix a bug for pairsqcplot if no data is avalable.
jianhong Jul 17, 2023
16e7348
Merge remote-tracking branch 'origin/dev2' into dev
jianhong Jul 17, 2023
7ef9dbd
update documentations.
jianhong Jul 17, 2023
6218288
fix some minor stuff for the review comments.
jianhong Jul 18, 2023
c416194
Merge branch 'nf-core:dev' into dev
jianhong Jul 18, 2023
59391ab
Run prettier -w.
jianhong Jul 18, 2023
d2d17a9
Merge pull request #96 from jianhong/dev
jianhong Jul 19, 2023
6598d9f
WIP: Remove vulnerable PR-comment artifact pattern
nf-core-bot Jul 28, 2026
98cabf0
Merge pull request #122 from nf-core/patch
mashehu Jul 28, 2026
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
27 changes: 27 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"name": "nfcore",
"image": "nfcore/gitpod:latest",
"remoteUser": "gitpod",

// Configure tool-specific properties.
"customizations": {
// Configure properties specific to VS Code.
"vscode": {
// Set *default* container specific settings.json values on container create.
"settings": {
"python.defaultInterpreterPath": "/opt/conda/bin/python",
"python.linting.enabled": true,
"python.linting.pylintEnabled": true,
"python.formatting.autopep8Path": "/opt/conda/bin/autopep8",
"python.formatting.yapfPath": "/opt/conda/bin/yapf",
"python.linting.flake8Path": "/opt/conda/bin/flake8",
"python.linting.pycodestylePath": "/opt/conda/bin/pycodestyle",
"python.linting.pydocstylePath": "/opt/conda/bin/pydocstyle",
"python.linting.pylintPath": "/opt/conda/bin/pylint"
},

// Add the IDs of extensions you want installed when the container is created.
"extensions": ["ms-python.python", "ms-python.vscode-pylance", "nf-core.nf-core-extensionpack"]
}
}
}
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
*.config linguist-language=nextflow
*.nf.test linguist-language=nextflow
modules/nf-core/** linguist-generated
subworkflows/nf-core/** linguist-generated
16 changes: 16 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,3 +101,19 @@ If you are using a new feature from core Nextflow, you may bump the minimum requ
### Images and figures

For overview images and other documents we follow the nf-core [style guidelines and examples](https://nf-co.re/developers/design_guidelines).

## GitHub Codespaces

This repo includes a devcontainer configuration which will create a GitHub Codespaces for Nextflow development! This is an online developer environment that runs in your browser, complete with VSCode and a terminal.

To get started:

- Open the repo in [Codespaces](https://github.com/nf-core/hicar/codespaces)
- Tools installed
- nf-core
- Nextflow

Devcontainer specs:

- [DevContainer config](.devcontainer/devcontainer.json)
- [Dockerfile](.devcontainer/Dockerfile)
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,9 @@ body:
attributes:
label: System information
description: |
* Nextflow version _(eg. 21.10.3)_
* Nextflow version _(eg. 22.10.1)_
* Hardware _(eg. HPC, Desktop, Cloud)_
* Executor _(eg. slurm, local, awsbatch)_
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter or Charliecloud)_
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud, or Apptainer)_
* OS _(eg. CentOS Linux, macOS, Linux Mint)_
* Version of nf-core/hicar _(eg. 1.1, 1.5, 1.8.2)_
4 changes: 2 additions & 2 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/hica

- [ ] This comment contains a description of changes (with reason).
- [ ] If you've fixed a bug or added code that should be tested, add tests!
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/hicar/tree/master/.github/CONTRIBUTING.md)
- [ ] If necessary, also make a PR on the nf-core/hicar _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository.
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/hicar/tree/master/.github/CONTRIBUTING.md)
- [ ] If necessary, also make a PR on the nf-core/hicar _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository.
- [ ] Make sure your code lints (`nf-core lint`).
- [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir <OUTDIR>`).
- [ ] Usage Documentation in `docs/usage.md` is updated.
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/awsfulltest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Launch workflow via tower
uses: nf-core/tower-action@v3

uses: seqeralabs/action-tower-launch@v1
with:
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
Expand All @@ -26,6 +25,7 @@ jobs:
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/hicar/results-${{ github.sha }}"
}
profiles: test_full,aws_tower
nextflow_config: |
process.errorStrategy = 'retry'
process.maxRetries = 3
- uses: actions/upload-artifact@v3
with:
name: Tower debug log file
path: tower_action_*.log
9 changes: 5 additions & 4 deletions .github/workflows/awstest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
steps:
# Launch workflow using Tower CLI tool action
- name: Launch workflow via tower
uses: nf-core/tower-action@v3
uses: seqeralabs/action-tower-launch@v1
with:
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
Expand All @@ -23,6 +23,7 @@ jobs:
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/hicar/results-test-${{ github.sha }}"
}
profiles: test,aws_tower
nextflow_config: |
process.errorStrategy = 'retry'
process.maxRetries = 3
- uses: actions/upload-artifact@v3
with:
name: Tower debug log file
path: tower_action_*.log
2 changes: 1 addition & 1 deletion .github/workflows/branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
- name: Check PRs
if: github.repository == 'nf-core/hicar'
run: |
"{ [[ ${{github.event.pull_request.head.repo.full_name }} == nf-core/hicar ]] && [[ $GITHUB_HEAD_REF = "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]]"
{ [[ ${{github.event.pull_request.head.repo.full_name }} == nf-core/hicar ]] && [[ $GITHUB_HEAD_REF == "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]]

# If the above check failed, post a comment on the PR explaining the failure
# NOTE - this doesn't currently work if the PR is coming from a fork, due to limitations in GitHub actions secrets
Expand Down
48 changes: 28 additions & 20 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@ on:

env:
NXF_ANSI_LOG: false
CAPSULE_LOG: none

concurrency:
group: "${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}"
cancel-in-progress: true

jobs:
test:
Expand All @@ -20,31 +23,36 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
# Nextflow versions
profile: ["test", "test_multi", "test_hipeak", "test_hichip"]
include:
# Test pipeline minimum Nextflow version
- NXF_VER: "21.10.3"
NXF_EDGE: ""
# Test latest edge release of Nextflow
- NXF_VER: ""
NXF_EDGE: "1"
NXF_VER:
- "22.10.1"
- "latest-everything"
parameters:
- "--interactions_tool maps"
- "--interactions_tool hicdcplus"
- "--interactions_tool peakachu"
- "--tad_tool homer"
- "--compartments_tool homer"
- "--compartments_tool juicebox"
- "--do_apa --apa_tool juicebox"
- "--do_apa --apa_tool cooltools"
- "--da_tool edger"
- "--da_tool setOperation"
- "--da_tool hicexplorer"
- "--v4c_tool cooltools --v4c_max_events 3"
- "--v4c_tool trackviewer --v4c_max_events 3"
- "--method HiChIP --anchor_peaks 'https://raw.githubusercontent.com/aryeelab/hichipper/master/tests/chipseq/GM12878_SMC3_ChIPSeq_chr22.narrowPeak'"

steps:
- name: Check out pipeline code
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Install Nextflow
env:
NXF_VER: ${{ matrix.NXF_VER }}
# Uncomment only if the edge release is more recent than the latest stable release
# See https://github.com/nextflow-io/nextflow/issues/2467
# NXF_EDGE: ${{ matrix.NXF_EDGE }}
run: |
wget -qO- get.nextflow.io | bash
sudo mv nextflow /usr/local/bin/
uses: nf-core/setup-nextflow@v1
with:
version: "${{ matrix.NXF_VER }}"

- name: Run pipeline with test data
run: |
nextflow run ${GITHUB_WORKSPACE} -profile ${{ matrix.profile }},docker --outdir ./results
nextflow run ${GITHUB_WORKSPACE} -profile test,docker --outdir ./results ${{ matrix.parameters }}

#
24 changes: 24 additions & 0 deletions .github/workflows/clean-up.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: "Close user-tagged issues and PRs"
on:
schedule:
- cron: "0 0 * * 0" # Once a week

jobs:
clean-up:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v7
with:
stale-issue-message: "This issue has been tagged as awaiting-changes or awaiting-feedback by an nf-core contributor. Remove stale label or add a comment otherwise this issue will be closed in 20 days."
stale-pr-message: "This PR has been tagged as awaiting-changes or awaiting-feedback by an nf-core contributor. Remove stale label or add a comment if it is still useful."
close-issue-message: "This issue was closed because it has been tagged as awaiting-changes or awaiting-feedback by an nf-core contributor and then staled for 20 days with no activity."
days-before-stale: 30
days-before-close: 20
days-before-pr-close: -1
any-of-labels: "awaiting-changes,awaiting-feedback"
exempt-issue-labels: "WIP"
exempt-pr-labels: "WIP"
repo-token: "${{ secrets.GITHUB_TOKEN }}"
55 changes: 55 additions & 0 deletions .github/workflows/fix-linting.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Fix linting from a comment
on:
issue_comment:
types: [created]

jobs:
deploy:
# Only run if comment is on a PR with the main repo, and if it contains the magic keywords
if: >
contains(github.event.comment.html_url, '/pull/') &&
contains(github.event.comment.body, '@nf-core-bot fix linting') &&
github.repository == 'nf-core/hicar'
runs-on: ubuntu-latest
steps:
# Use the @nf-core-bot token to check out so we can push later
- uses: actions/checkout@v3
with:
token: ${{ secrets.nf_core_bot_auth_token }}

# Action runs on the issue comment, so we don't get the PR by default
# Use the gh cli to check out the PR
- name: Checkout Pull Request
run: gh pr checkout ${{ github.event.issue.number }}
env:
GITHUB_TOKEN: ${{ secrets.nf_core_bot_auth_token }}

- uses: actions/setup-node@v3

- name: Install Prettier
run: npm install -g prettier @prettier/plugin-php

# Check that we actually need to fix something
- name: Run 'prettier --check'
Comment on lines +29 to +33

Check failure

Code scanning / CodeQL

Checkout of untrusted code in a privileged context

Potential execution of untrusted code on a privileged workflow ([issue_comment](1))
id: prettier_status
run: |
if prettier --check ${GITHUB_WORKSPACE}; then
echo "result=pass" >> $GITHUB_OUTPUT
else
echo "result=fail" >> $GITHUB_OUTPUT
fi

- name: Run 'prettier --write'
if: steps.prettier_status.outputs.result == 'fail'
run: prettier --write ${GITHUB_WORKSPACE}

- name: Commit & push changes
Comment on lines +42 to +46

Check failure

Code scanning / CodeQL

Checkout of untrusted code in a privileged context

Potential execution of untrusted code on a privileged workflow ([issue_comment](1))
if: steps.prettier_status.outputs.result == 'fail'
run: |
git config user.email "core@nf-co.re"
git config user.name "nf-core-bot"
git config push.default upstream
git add .
git status
git commit -m "[automated] Fix linting with Prettier"
git push
Comment on lines +9 to +55

Check warning

Code scanning / CodeQL

Workflow does not contain permissions

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {{contents: read}}
56 changes: 41 additions & 15 deletions .github/workflows/linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ name: nf-core linting
# that the code meets the nf-core guidelines.
on:
push:
branches:
- dev
pull_request:
release:
types: [published]
Expand All @@ -12,9 +14,9 @@ jobs:
EditorConfig:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- uses: actions/setup-node@v2
- uses: actions/setup-node@v3

- name: Install editorconfig-checker
run: npm install -g editorconfig-checker
Expand All @@ -25,32 +27,58 @@ jobs:
Prettier:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- uses: actions/setup-node@v2
- uses: actions/setup-node@v3

- name: Install Prettier
run: npm install -g prettier

- name: Run Prettier --check
run: prettier --check ${GITHUB_WORKSPACE}

PythonBlack:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Check code lints with Black
uses: psf/black@stable

# If the above check failed, post a comment on the PR explaining the failure
- name: Post PR comment
if: failure()
uses: mshick/add-pr-comment@v1
with:
message: |
## Python linting (`black`) is failing

To keep the code consistent with lots of contributors, we run automated code consistency checks.
To fix this CI test, please run:

* Install [`black`](https://black.readthedocs.io/en/stable/): `pip install black`
* Fix formatting errors in your pipeline: `black .`

Once you push these changes the test should pass, and you can hide this comment :+1:

We highly recommend setting up Black in your code editor so that this formatting is done automatically on save. Ask about it on Slack for help!

Thanks again for your contribution!
repo-token: ${{ secrets.GITHUB_TOKEN }}
allow-repeats: false

nf-core:
runs-on: ubuntu-latest
steps:
- name: Check out pipeline code
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Install Nextflow
env:
CAPSULE_LOG: none
run: |
wget -qO- get.nextflow.io | bash
sudo mv nextflow /usr/local/bin/
uses: nf-core/setup-nextflow@v1

- uses: actions/setup-python@v1
- uses: actions/setup-python@v4
with:
python-version: "3.6"
python-version: "3.8"
architecture: "x64"

- name: Install dependencies
Expand All @@ -71,12 +99,10 @@ jobs:

- name: Upload linting log file artifact
if: ${{ always() }}
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: linting-logs
path: |
lint_log.txt
lint_results.md
PR_number.txt

#
2 changes: 1 addition & 1 deletion .github/workflows/linting_comment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:

- name: Get PR number
id: pr_number
run: echo "::set-output name=pr_number::$(cat linting-logs/PR_number.txt)"
run: echo "pr_number=$(cat linting-logs/PR_number.txt)" >> $GITHUB_OUTPUT

- name: Post PR comment
uses: marocchino/sticky-pull-request-comment@v2
Expand Down
Loading