Skip to content
Snippets Groups Projects
  1. Aug 23, 2021
  2. Aug 20, 2021
  3. Aug 19, 2021
  4. Jul 16, 2021
  5. Jul 15, 2021
    • Dominik Burri's avatar
      Validation of configuration file with a json schema... · 1d3ace6e
      Dominik Burri authored
      Validation of configuration file with a json schema `resources/config_schema.json` using the snakemake utility **validate**. The schema includes all the fields from `tests/input_files/config.yaml`, assigns certain fields as required and forbids the use of additional fields. All of the optional fields include default values, taken from the config above, except `rule_config` which has no default.
      
      Added author name and author email as optional fields in `tests/input_files/config.yaml`, and added it into the multiqc report.
      1d3ace6e
  6. Jul 14, 2021
  7. Jul 13, 2021
  8. Jun 11, 2021
  9. May 07, 2021
  10. Apr 15, 2021
  11. Feb 26, 2021
  12. Feb 11, 2021
  13. Jun 23, 2020
  14. Jun 18, 2020
  15. Jun 17, 2020
  16. Jun 15, 2020
  17. Jun 12, 2020
  18. Apr 27, 2020
    • Alex Kanitz's avatar
      Refactor LabKey to Snakemake script · 556f1e12
      Alex Kanitz authored
      - clean up command line interface
        - improve descriptions
        - add consistent structure
        - remove or merge superfluous CLI arguments
        - set defaults
        - update test calls
        - update docs
        - when importing data from LabKey, table is saved to 'samples.tsv.labkey' in same directory as Snakemake sample table
      - allow user to specify environment variables and relative paths in input table and on CLI
        - relative paths in the input table are interpreted with respect to the directory containing the input table
        - relative paths will are interpreted with respect to the current working directory; this is to achieve portability with respect to tests but is discouraged in production because its behavior is not very predictable from the user's perspective; consequently a warning is thrown
      - set STAR index size to read length - 1
      - remove `gtf_filtered` and `tr_fasta_filtered` and update Snakefiles and test sample tables accordingly
      - rename some MultiQC report-related parameters and update Snakefiles and test config files accordingly
      - add logging
      - add docstrings to module and all functions
      - add typing definitions to all functions
      - restructure and comment code to improve readability
      - linters `flake8` and `mypy` pass
      556f1e12
    • BIOPZ-Katsantoni Maria's avatar
      Major refactoring · 6cf28511
      BIOPZ-Katsantoni Maria authored and Alex Kanitz's avatar Alex Kanitz committed
      * Sequencing mode-related changes:
        * allowed sequencing modes in Snakemake input table changed from `paired_end` and `single_end` to `pe` and `se`, respectively
        * remove sequencing mode from output paths for each rule
        * corresponding wild cards removed entirely from all rules that do not depend on sequencing mode (currently all rules that are defined in the main `Snakefile` in the project root directory)
        * where absolutely necessary, sequencing mode is added as part of output file or directory instead
        * remove dependency of sequencing mode for rule for `FastQC`; now runs separately for each strand
      * Changes related to MultiQC and output file/directory structure
        * moving and renaming outputs for MultiQC is no longer required
        * code to create MultiQC custom config externalized into script `scripts/rhea_multiqc_config.py`
        * add MultiQC output files with deterministic output to md5 sum checks performed during execution of `tests/test_integration_workflow/test.{local,slurm}.sh`
        * output filenames for each rule now follow this general structure: `samples/{sample_name}/{rule}/{output_file}`
        * change log directory structure matches results directory structure
      * Miscellaneous changes
        * consistent, PEP8-compliant formatting in most parts, including Snakemake files, where allowed
        * remove rule `extract_decoys_salmon`; equivalent file `chrName.txt` produced by `star_index` is used instead
        * add rule `start` which copies sample data to the results directory and enforces uniform naming
        * refactoring of ALFA rules and modification of the CI/CD test to ensure compatibility
      6cf28511
    • CJHerrmann's avatar
      Add rules for bigWig creation · 907082c3
      CJHerrmann authored and Alex Kanitz's avatar Alex Kanitz committed
      907082c3
  19. Mar 25, 2020
  20. Mar 20, 2020
    • Dominik Burri's avatar
      extend ALFA functionality · f5e2f6ac
      Dominik Burri authored and Alex Kanitz's avatar Alex Kanitz committed
      - generate nucleotide distribution for unique reads only
      - new rule to generate PNG image for MultiQC
      f5e2f6ac
    • BIOPZ-Katsantoni Maria's avatar
      Fix Poly(A)-trimming rule · 392b04d2
      BIOPZ-Katsantoni Maria authored and Alex Kanitz's avatar Alex Kanitz committed
      In labkey_to_snakemake.py fixed the parameters so that there is 3p as well 5p polya
      feature for every mate, which can be matched to the -a -g -A and -G options of cutadapt
      depending on which is the sense or antisense mate the appropriate variable is populated
      and the rest of variables are filled with 'XXXXXXXXXXXX' which leads to no trimming by
      cutadapt. The poly-A trimming rules are fixed to contain all -a -g -A -G options.
      392b04d2
  21. Mar 19, 2020
  22. Mar 17, 2020
  23. Mar 12, 2020
  24. Mar 06, 2020
  25. Feb 21, 2020
  26. Feb 20, 2020
    • Alex Kanitz's avatar
      create log directories in Snakefile\ · 5e1ec85e
      Alex Kanitz authored
      - log and, if workflow is executed on cluster, cluster log directories are explicitly created in `Snakefile`
      - location of main log directory can be configured in `config.yaml` (field `log_dir`, previously: `local_log`; requires change in script `labkey_to_snakemake.py` as well as subworkflows as field name is hard-coded there)
      - location of cluster log directory can be configured in `cluster.json` (in field `__default__` -> `out`)
      - `config.yaml` and `cluster.json` in `tests/input_files` are set such that a directory `logs/` is created in the directory where Snakemake is run (i.e., the directory of each test); cluster logs are stored in a subdirectory `logs/cluster`
      - removes instructions to explicitly create log directories from docs and all test scripts
      - cleans up main `Snakefile` (apart from Snakemake-specific syntax, now passes `flake8` linter test)
      5e1ec85e
  27. Feb 18, 2020
    • Alex Kanitz's avatar
      run tests in verbose mode · 0d95577e
      Alex Kanitz authored
      - trap call functionalized through cleanup() function
      - function added to all test scripts
      - function prints out exit status of last command before trap
      - flag `--verbose` added to Snakemake calls in all test scripts
      - script tests rename to follow naming convention 'test_script_<script_name>_<script_run_mode>
      0d95577e
Loading