• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

openvax / topiary / 24167477073

09 Apr 2026 01:22AM UTC coverage: 86.166% (-0.4%) from 86.577%
24167477073

push

github

iskandr
Add tab completion support via argcomplete, bump to 4.3.2

Closes #7. Optional dependency: pip install 'topiary[completion]'.
Uses argcomplete.autocomplete() for bash/zsh/fish tab completion
of all CLI arguments.

1 of 7 new or added lines in 2 files covered. (14.29%)

2 existing lines in 1 file now uncovered.

1090 of 1265 relevant lines covered (86.17%)

2.58 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/topiary/cli/script.py
1
# Licensed under the Apache License, Version 2.0 (the "License");
2
# you may not use this file except in compliance with the License.
3
# You may obtain a copy of the License at
4
#
5
#       http://www.apache.org/licenses/LICENSE-2.0
6
#
7
# Unless required by applicable law or agreed to in writing, software
8
# distributed under the License is distributed on an "AS IS" BASIS,
9
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
# See the License for the specific language governing permissions and
11
# limitations under the License.
12

13
"""
14
Script to generate epitope predictions from somatic cancer variants
15
and (optionally) tumor RNA-seq data.
16

17
Example usage:
18
    topiary \
19
        --mhc-predictor netmhcpan
20
        --mhc-alleles-file HLA.txt
21
        --vcf somatic.vcf
22
        --rna-gene-fpkm-file genes.fpkm_tracking
23
        --rna-transcript-fpkm-file isoforms.fpkm_tracking
24
        --filter-ic50 500
25
        --filter-percentile 2
26
        --output results.csv
27
"""
28

29
import sys
×
30

NEW
31
try:
×
NEW
32
    import argcomplete
×
NEW
33
except ImportError:
×
NEW
34
    argcomplete = None
×
35

UNCOV
36
from .args import arg_parser, predict_epitopes_from_args
×
37

38
from .outputs import write_outputs
×
39

40

41
def parse_args(args_list=None):
×
42
    if args_list is None:
×
43
        args_list = sys.argv[1:]
×
NEW
44
    if argcomplete is not None:
×
NEW
45
        argcomplete.autocomplete(arg_parser)
×
UNCOV
46
    return arg_parser.parse_args(args_list)
×
47

48

49
def main(args_list=None):
×
50
    """
51
    Script entry-point to predict neo-epitopes from genomic variants using
52
    Topiary.
53
    """
54
    args = parse_args(args_list)
×
55
    print("Topiary commandline arguments:")
×
56
    print(args)
×
57
    df = predict_epitopes_from_args(args)
×
58
    write_outputs(df, args)
×
59
    print("Total count: %d" % len(df))
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc