{"action":"created","comment":{"url":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/comments/156155558","pull_request_review_id":82584171,"id":156155558,"diff_hunk":"@@ -0,0 +1,1256 @@\n+package MIP::Recipes::Analysis::Snpeff;\n+\n+use Carp;\n+use charnames qw{ :full :short };\n+use English qw{ -no_match_vars };\n+use File::Spec::Functions qw{ catdir catfile };\n+use open qw{ :encoding(UTF-8) :std };\n+use Params::Check qw{ allow check last_error };\n+use strict;\n+use utf8;\n+use warnings;\n+use warnings qw{ FATAL utf8 };\n+\n+## CPANM\n+use autodie qw{ :all };\n+use Readonly;\n+\n+BEGIN {\n+\n+    require Exporter;\n+    use base qw{ Exporter };\n+\n+    # Set the version for version checking\n+    our $VERSION = 1.00;\n+\n+    # Functions and variables which can be optionally exported\n+    our @EXPORT_OK = qw{ analysis_snpeff analysis_snpeff_rio };\n+\n+}\n+\n+## Constants\n+Readonly my $ASTERISK   => q{*};\n+Readonly my $DOT        => q{.};\n+Readonly my $EMPTY_STR  => q{};\n+Readonly my $NEWLINE    => qq{\\n};\n+Readonly my $SPACE      => q{ };\n+Readonly my $UNDERSCORE => q{_};\n+\n+sub analysis_snpeff {\n+\n+## Function : snpeff annotates variants from different sources.\n+## Returns  : |$xargs_file_counter\n+## Arguments: $active_parameter_href   => Active parameters for this analysis hash {REF}\n+##          : $call_type               => Variant call type\n+##          : $family_id               => Family id\n+##          : $file_info_href          => File_info hash {REF\n+##          : $file_path               => File path\n+##          : $infamily_directory      => In family directory\n+##          : $infile_lane_prefix_href => Infile(s) without the \".ending\" {REF}\n+##          : $job_id_href             => Job id hash {REF}\n+##          : $outaligner_dir          => Outaligner_dir used in the analysis\n+##          : $outfamily_directory     => Out family directory\n+##          : $parameter_href          => Parameter hash {REF}\n+##          : $program_info_path       => The program info path\n+##          : $program_name            => Program name\n+##          : $sample_info_href        => Info on samples and family hash {REF}\n+##          : $temp_directory          => Temporary directory\n+\n+    my ($arg_href) = @_;\n+\n+    ## Flatten argument(s)\n+    my $active_parameter_href;\n+    my $file_info_href;\n+    my $file_path;\n+    my $infamily_directory;\n+    my $infile_lane_prefix_href;\n+    my $job_id_href;\n+    my $outfamily_directory;\n+    my $parameter_href;\n+    my $program_info_path;\n+    my $program_name;\n+    my $sample_info_href;\n+\n+    ## Default(s)\n+    my $call_type;\n+    my $family_id;\n+    my $outaligner_dir;\n+    my $temp_directory;\n+    my $xargs_file_counter;\n+\n+    my $tmpl = {\n+        active_parameter_href => {\n+            required    => 1,\n+            defined     => 1,\n+            default     => {},\n+            strict_type => 1,\n+            store       => \\$active_parameter_href,\n+        },\n+        call_type =>\n+          { default => q{BOTH}, strict_type => 1, store => \\$call_type, },\n+        family_id => {\n+            default     => $arg_href->{active_parameter_href}{family_id},\n+            strict_type => 1,\n+            store       => \\$family_id,\n+        },\n+        file_info_href => {\n+            required    => 1,\n+            defined     => 1,\n+            default     => {},\n+            strict_type => 1,\n+            store       => \\$file_info_href,\n+        },\n+        file_path          => { strict_type => 1, store => \\$file_path, },\n+        infamily_directory => {\n+            required    => 1,\n+            defined     => 1,\n+            strict_type => 1,\n+            store       => \\$infamily_directory,\n+        },\n+        infile_lane_prefix_href => {\n+            required    => 1,\n+            defined     => 1,\n+            default     => {},\n+            strict_type => 1,\n+            store       => \\$infile_lane_prefix_href,\n+        },\n+        job_id_href => {\n+            required    => 1,\n+            defined     => 1,\n+            default     => {},\n+            strict_type => 1,\n+            store       => \\$job_id_href,\n+        },\n+        outaligner_dir => {\n+            default     => $arg_href->{active_parameter_href}{outaligner_dir},\n+            strict_type => 1,\n+            store       => \\$outaligner_dir,\n+        },\n+        outfamily_directory => {\n+            required    => 1,\n+            defined     => 1,\n+            strict_type => 1,\n+            store       => \\$outfamily_directory,\n+        },\n+        parameter_href => {\n+            required    => 1,\n+            defined     => 1,\n+            default     => {},\n+            strict_type => 1,\n+            store       => \\$parameter_href,\n+        },\n+        program_info_path =>\n+          { strict_type => 1, store => \\$program_info_path, },\n+        program_name => {\n+            required    => 1,\n+            defined     => 1,\n+            strict_type => 1,\n+            store       => \\$program_name,\n+        },\n+        sample_info_href => {\n+            required    => 1,\n+            defined     => 1,\n+            default     => {},\n+            strict_type => 1,\n+            store       => \\$sample_info_href,\n+        },\n+        temp_directory => {\n+            default     => $arg_href->{active_parameter_href}{temp_directory},\n+            strict_type => 1,\n+            store       => \\$temp_directory,\n+        },\n+        xargs_file_counter => {\n+            default     => 0,\n+            allow       => qr/ ^\\d+$ /xsm,\n+            strict_type => 1,\n+            store       => \\$xargs_file_counter,\n+        },\n+    };\n+\n+    check( $tmpl, $arg_href, 1 ) or croak q{Could not parse arguments!};\n+\n+    use MIP::Cluster qw{ get_core_number };\n+    use MIP::IO::Files qw{ migrate_file xargs_migrate_contig_files };\n+    use MIP::Get::File qw{ get_file_suffix };\n+    use MIP::Get::Parameter qw{ get_module_parameters };\n+    use MIP::Processmanagement::Slurm_processes\n+      qw{ slurm_submit_job_sample_id_dependency_add_to_family };\n+    use MIP::Program::Variantcalling::Mip_vcfparser qw{ mip_vcfparser };\n+    use MIP::Program::Variantcalling::Snpeff qw{ snpeff_ann };\n+    use MIP::Program::Variantcalling::Snpsift\n+      qw{ snpsift_annotate snpsift_dbnsfp };\n+    use MIP::QC::Record qw{ add_program_outfile_to_sample_info };\n+    use MIP::Recipes::Analysis::Xargs qw{ xargs_command };\n+    use MIP::Script::Setup_script qw{ setup_script };\n+    use MIP::Set::File qw{ set_file_suffix };\n+\n+    ## Retrieve logger object\n+    my $log = Log::Log4perl->get_logger(q{MIP});\n+\n+    ## Set MIP program name\n+    my $mip_program_name = q{p} . $program_name;\n+    my $mip_program_mode = $active_parameter_href->{$mip_program_name};\n+\n+    ## Unpack parameters\n+    my $job_id_chain = $parameter_href->{$mip_program_name}{chain};\n+\n+    my ( $core_number, $time, $source_environment_cmd ) = get_module_parameters(\n+        {\n+            active_parameter_href => $active_parameter_href,\n+            mip_program_name      => $mip_program_name,\n+        }\n+    );\n+\n+    ## Filehandles\n+    # Create anonymous filehandle\n+    my $FILEHANDLE      = IO::Handle->new();\n+    my $XARGSFILEHANDLE = IO::Handle->new();\n+\n+    ## Get core number depending on user supplied input exists or not and max number of cores\n+    $core_number = get_core_number(\n+        {\n+            module_core_number   => $core_number,\n+            modifier_core_number => scalar @{ $file_info_href->{contigs} },\n+            max_cores_per_node => $active_parameter_href->{max_cores_per_node},\n+        }\n+    );\n+\n+    ## Creates program directories (info & programData & programScript), program script filenames and writes sbatch header\n+    ( $file_path, $program_info_path ) = setup_script(\n+        {\n+            active_parameter_href           => $active_parameter_href,\n+            call_type                       => $call_type,\n+            core_number                     => $core_number,\n+            directory_id                    => $family_id,\n+            FILEHANDLE                      => $FILEHANDLE,\n+            job_id_href                     => $job_id_href,\n+            process_time                    => $time,\n+            program_directory               => $outaligner_dir,\n+            program_name                    => $program_name,\n+            source_environment_commands_ref => [$source_environment_cmd],\n+            temp_directory                  => $temp_directory,\n+        }\n+    );\n+\n+    # Used downstream\n+    $parameter_href->{$mip_program_name}{indirectory} = $outfamily_directory;\n+\n+    ## Tags\n+    my $infile_tag = $file_info_href->{$family_id}{pvcfparser}{file_tag};\n+    my $outfile_tag =\n+      $file_info_href->{$family_id}{$mip_program_name}{file_tag};\n+\n+    ## Files\n+    my $infile_prefix  = $family_id . $infile_tag . $call_type;\n+    my $outfile_prefix = $family_id . $outfile_tag . $call_type;\n+\n+    ## Paths\n+    my $file_path_prefix    = catfile( $temp_directory, $infile_prefix );\n+    my $outfile_path_prefix = catfile( $temp_directory, $outfile_prefix );\n+\n+    ### Assign suffix\n+    ## Return the current infile vcf compression suffix for this jobid chain\n+\n+    my $infile_suffix = get_file_suffix(\n+        {\n+            jobid_chain    => $job_id_chain,\n+            parameter_href => $parameter_href,\n+            suffix_key     => q{variant_file_suffix},\n+        }\n+    );\n+\n+    my $outfile_suffix = set_file_suffix(\n+        {\n+            file_suffix => $parameter_href->{$mip_program_name}{outfile_suffix},\n+            job_id_chain   => $job_id_chain,\n+            parameter_href => $parameter_href,\n+            suffix_key     => q{variant_file_suffix},\n+        }\n+    );\n+\n+    my $vcfparser_analysis_type = $EMPTY_STR;\n+\n+    # Set default\n+    my $vcfparser_contigs_ref = \\@{ $file_info_href->{contigs_size_ordered} };\n+\n+    for (\n+        my $vcfparser_outfile_counter = 0 ;\n+        $vcfparser_outfile_counter <\n+        $active_parameter_href->{vcfparser_outfile_count} ;\n+        $vcfparser_outfile_counter++\n+      )\n+    {\n+\n+        if ( $vcfparser_outfile_counter == 1 ) {\n+\n+            # SelectFile variants\n+            $vcfparser_analysis_type = $DOT . q{selected};\n+\n+            # Selectfile contigs\n+            $vcfparser_contigs_ref =\n+              \\@{ $file_info_href->{sorted_select_file_contigs} };\n+        }\n+\n+        ## Copy file(s) to temporary directory\n+        say {$FILEHANDLE} q{## Copy file(s) to temporary directory};\n+        ($xargs_file_counter) = xargs_migrate_contig_files(\n+            {\n+                contigs_ref => $vcfparser_contigs_ref,\n+                core_number => $core_number,\n+                FILEHANDLE  => $FILEHANDLE,\n+                file_ending => $vcfparser_analysis_type\n+                  . $infile_suffix\n+                  . $ASTERISK,\n+                file_path          => $file_path,\n+                indirectory        => $infamily_directory,\n+                infile             => $infile_prefix,\n+                program_info_path  => $program_info_path,\n+                temp_directory     => $temp_directory,\n+                XARGSFILEHANDLE    => $XARGSFILEHANDLE,\n+                xargs_file_counter => $xargs_file_counter,\n+            }\n+        );\n+\n+        ## SnpSift Annotation\n+        say {$FILEHANDLE} q{## SnpSift Annotation};\n+\n+        my $annotation_file_counter = 0;\n+        my $xargs_file_path_prefix;\n+\n+        # Annotate using snpeff\n+        if ( $active_parameter_href->{snpeff_ann} == 1 ) {\n+            ## Create file commands for xargs\n+            ( $xargs_file_counter, $xargs_file_path_prefix ) = xargs_command(\n+                {\n+                    core_number   => $core_number,\n+                    first_command => q{java},\n+                    FILEHANDLE    => $FILEHANDLE,\n+                    file_path     => $file_path,\n+                    java_jar      => catfile(\n+                        $active_parameter_href->{snpeff_path},\n+                        q{snpEff.jar}\n+                    ),\n+                    java_use_large_pages =>\n+                      $active_parameter_href->{java_use_large_pages},\n+                    memory_allocation  => q{Xmx4g -XX:-UseConcMarkSweepGC},\n+                    program_info_path  => $program_info_path,\n+                    temp_directory     => $temp_directory,\n+                    XARGSFILEHANDLE    => $XARGSFILEHANDLE,\n+                    xargs_file_counter => $xargs_file_counter,\n+                }\n+            );\n+\n+            foreach my $contig ( @{$vcfparser_contigs_ref} ) {\n+\n+                snpeff_ann(\n+                    {\n+                        config_file_path => catfile(\n+                            $active_parameter_href->{snpeff_path},\n+                            q{snpEff.config}\n+                        ),\n+                        FILEHANDLE => $XARGSFILEHANDLE,\n+                        genome_build_version =>\n+                          $active_parameter_href->{snpeff_genome_build_version},\n+                        infile_path => $file_path_prefix\n+                          . $UNDERSCORE\n+                          . $contig\n+                          . $vcfparser_analysis_type\n+                          . $infile_suffix,\n+                        stderrfile_path => $xargs_file_path_prefix\n+                          . $UNDERSCORE\n+                          . $contig\n+                          . $DOT\n+                          . q{stderr.txt},\n+                        stdoutfile_path => $file_path_prefix\n+                          . $UNDERSCORE\n+                          . $contig\n+                          . $vcfparser_analysis_type\n+                          . $infile_suffix\n+                          . $DOT\n+                          . $xargs_file_counter,\n+                        verbosity => q{v},\n+\n+                    }\n+                );\n+                say {$XARGSFILEHANDLE} $NEWLINE;\n+            }\n+            $annotation_file_counter = $xargs_file_counter;\n+        }\n+\n+        while ( my ( $annotation_file, $annotation_info_key ) =\n+            each %{ $active_parameter_href->{snpsift_annotation_files} } )\n+        {\n+\n+            ## Create file commands for xargs\n+            ( $xargs_file_counter, $xargs_file_path_prefix ) = xargs_command(\n+                {\n+                    core_number   => $core_number,\n+                    FILEHANDLE    => $FILEHANDLE,\n+                    file_path     => $file_path,\n+                    first_command => q{java},\n+                    java_jar      => catfile(\n+                        $active_parameter_href->{snpeff_path},\n+                        q{SnpSift.jar}\n+                    ),\n+                    java_use_large_pages =>\n+                      $active_parameter_href->{java_use_large_pages},\n+                    memory_allocation  => q{Xmx2g -XX:-UseConcMarkSweepGC},\n+                    program_info_path  => $program_info_path,\n+                    temp_directory     => $temp_directory,\n+                    XARGSFILEHANDLE    => $XARGSFILEHANDLE,\n+                    xargs_file_counter => $xargs_file_counter,\n+                }\n+            );\n+            ## Get parameters\n+            my $name_prefix;\n+            my $info_key;\n+            if ( defined $annotation_info_key ) {\n+\n+                ## Apply specific INFO field output key for easier downstream processing\n+                if (\n+                    defined(\n+                        $active_parameter_href->{snpsift_annotation_outinfo_key}\n+                          {$annotation_file}\n+                    )\n+                  )\n+                {\n+\n+                    $name_prefix =\n+                      $active_parameter_href->{snpsift_annotation_outinfo_key}\n+                      {$annotation_file};\n+                }\n+                $info_key = $annotation_info_key;    #Database","path":"lib/MIP/Recipes/Analysis/Snpeff.pm","position":422,"original_position":422,"commit_id":"9b47a05d5661a33fa620c034936d8d648983a6e4","original_commit_id":"9b47a05d5661a33fa620c034936d8d648983a6e4","user":{"login":"henrikstranneheim","id":584738,"avatar_url":"https://avatars0.githubusercontent.com/u/584738?v=4","gravatar_id":"","url":"https://api.github.com/users/henrikstranneheim","html_url":"https://github.com/henrikstranneheim","followers_url":"https://api.github.com/users/henrikstranneheim/followers","following_url":"https://api.github.com/users/henrikstranneheim/following{/other_user}","gists_url":"https://api.github.com/users/henrikstranneheim/gists{/gist_id}","starred_url":"https://api.github.com/users/henrikstranneheim/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/henrikstranneheim/subscriptions","organizations_url":"https://api.github.com/users/henrikstranneheim/orgs","repos_url":"https://api.github.com/users/henrikstranneheim/repos","events_url":"https://api.github.com/users/henrikstranneheim/events{/privacy}","received_events_url":"https://api.github.com/users/henrikstranneheim/received_events","type":"User","site_admin":false},"body":"Move comment to line above and add whitespace after '#'","created_at":"2017-12-11T18:19:31Z","updated_at":"2017-12-11T18:36:14Z","html_url":"https://github.com/Clinical-Genomics/MIP/pull/277#discussion_r156155558","pull_request_url":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/277","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/comments/156155558"},"html":{"href":"https://github.com/Clinical-Genomics/MIP/pull/277#discussion_r156155558"},"pull_request":{"href":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/277"}}},"pull_request":{"url":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/277","id":157556697,"html_url":"https://github.com/Clinical-Genomics/MIP/pull/277","diff_url":"https://github.com/Clinical-Genomics/MIP/pull/277.diff","patch_url":"https://github.com/Clinical-Genomics/MIP/pull/277.patch","issue_url":"https://api.github.com/repos/Clinical-Genomics/MIP/issues/277","number":277,"state":"open","locked":false,"title":"Features/snpeff recipe","user":{"login":"northwestwitch","id":28093618,"avatar_url":"https://avatars0.githubusercontent.com/u/28093618?v=4","gravatar_id":"","url":"https://api.github.com/users/northwestwitch","html_url":"https://github.com/northwestwitch","followers_url":"https://api.github.com/users/northwestwitch/followers","following_url":"https://api.github.com/users/northwestwitch/following{/other_user}","gists_url":"https://api.github.com/users/northwestwitch/gists{/gist_id}","starred_url":"https://api.github.com/users/northwestwitch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/northwestwitch/subscriptions","organizations_url":"https://api.github.com/users/northwestwitch/orgs","repos_url":"https://api.github.com/users/northwestwitch/repos","events_url":"https://api.github.com/users/northwestwitch/events{/privacy}","received_events_url":"https://api.github.com/users/northwestwitch/received_events","type":"User","site_admin":false},"body":"Moved code from mip to snpeff recipe (splitted in analysis and analysis_rio) . Also fixed a bug that prevented Conda.pm recipe to work. Tested on rasta and seems to work!","created_at":"2017-12-11T13:00:36Z","updated_at":"2017-12-11T18:36:15Z","closed_at":null,"merged_at":null,"merge_commit_sha":"bdacbe7db211a3d44c584e2780fcb0a3ca6072f5","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/277/commits","review_comments_url":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/277/comments","review_comment_url":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Clinical-Genomics/MIP/issues/277/comments","statuses_url":"https://api.github.com/repos/Clinical-Genomics/MIP/statuses/9b47a05d5661a33fa620c034936d8d648983a6e4","head":{"label":"northwestwitch:features/snpeff_recipe","ref":"features/snpeff_recipe","sha":"9b47a05d5661a33fa620c034936d8d648983a6e4","user":{"login":"northwestwitch","id":28093618,"avatar_url":"https://avatars0.githubusercontent.com/u/28093618?v=4","gravatar_id":"","url":"https://api.github.com/users/northwestwitch","html_url":"https://github.com/northwestwitch","followers_url":"https://api.github.com/users/northwestwitch/followers","following_url":"https://api.github.com/users/northwestwitch/following{/other_user}","gists_url":"https://api.github.com/users/northwestwitch/gists{/gist_id}","starred_url":"https://api.github.com/users/northwestwitch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/northwestwitch/subscriptions","organizations_url":"https://api.github.com/users/northwestwitch/orgs","repos_url":"https://api.github.com/users/northwestwitch/repos","events_url":"https://api.github.com/users/northwestwitch/events{/privacy}","received_events_url":"https://api.github.com/users/northwestwitch/received_events","type":"User","site_admin":false},"repo":{"id":108375692,"name":"MIP","full_name":"northwestwitch/MIP","owner":{"login":"northwestwitch","id":28093618,"avatar_url":"https://avatars0.githubusercontent.com/u/28093618?v=4","gravatar_id":"","url":"https://api.github.com/users/northwestwitch","html_url":"https://github.com/northwestwitch","followers_url":"https://api.github.com/users/northwestwitch/followers","following_url":"https://api.github.com/users/northwestwitch/following{/other_user}","gists_url":"https://api.github.com/users/northwestwitch/gists{/gist_id}","starred_url":"https://api.github.com/users/northwestwitch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/northwestwitch/subscriptions","organizations_url":"https://api.github.com/users/northwestwitch/orgs","repos_url":"https://api.github.com/users/northwestwitch/repos","events_url":"https://api.github.com/users/northwestwitch/events{/privacy}","received_events_url":"https://api.github.com/users/northwestwitch/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/northwestwitch/MIP","description":"Mutation Identification Pipeline. Read the latest documentation:","fork":true,"url":"https://api.github.com/repos/northwestwitch/MIP","forks_url":"https://api.github.com/repos/northwestwitch/MIP/forks","keys_url":"https://api.github.com/repos/northwestwitch/MIP/keys{/key_id}","collaborators_url":"https://api.github.com/repos/northwestwitch/MIP/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/northwestwitch/MIP/teams","hooks_url":"https://api.github.com/repos/northwestwitch/MIP/hooks","issue_events_url":"https://api.github.com/repos/northwestwitch/MIP/issues/events{/number}","events_url":"https://api.github.com/repos/northwestwitch/MIP/events","assignees_url":"https://api.github.com/repos/northwestwitch/MIP/assignees{/user}","branches_url":"https://api.github.com/repos/northwestwitch/MIP/branches{/branch}","tags_url":"https://api.github.com/repos/northwestwitch/MIP/tags","blobs_url":"https://api.github.com/repos/northwestwitch/MIP/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/northwestwitch/MIP/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/northwestwitch/MIP/git/refs{/sha}","trees_url":"https://api.github.com/repos/northwestwitch/MIP/git/trees{/sha}","statuses_url":"https://api.github.com/repos/northwestwitch/MIP/statuses/{sha}","languages_url":"https://api.github.com/repos/northwestwitch/MIP/languages","stargazers_url":"https://api.github.com/repos/northwestwitch/MIP/stargazers","contributors_url":"https://api.github.com/repos/northwestwitch/MIP/contributors","subscribers_url":"https://api.github.com/repos/northwestwitch/MIP/subscribers","subscription_url":"https://api.github.com/repos/northwestwitch/MIP/subscription","commits_url":"https://api.github.com/repos/northwestwitch/MIP/commits{/sha}","git_commits_url":"https://api.github.com/repos/northwestwitch/MIP/git/commits{/sha}","comments_url":"https://api.github.com/repos/northwestwitch/MIP/comments{/number}","issue_comment_url":"https://api.github.com/repos/northwestwitch/MIP/issues/comments{/number}","contents_url":"https://api.github.com/repos/northwestwitch/MIP/contents/{+path}","compare_url":"https://api.github.com/repos/northwestwitch/MIP/compare/{base}...{head}","merges_url":"https://api.github.com/repos/northwestwitch/MIP/merges","archive_url":"https://api.github.com/repos/northwestwitch/MIP/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/northwestwitch/MIP/downloads","issues_url":"https://api.github.com/repos/northwestwitch/MIP/issues{/number}","pulls_url":"https://api.github.com/repos/northwestwitch/MIP/pulls{/number}","milestones_url":"https://api.github.com/repos/northwestwitch/MIP/milestones{/number}","notifications_url":"https://api.github.com/repos/northwestwitch/MIP/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/northwestwitch/MIP/labels{/name}","releases_url":"https://api.github.com/repos/northwestwitch/MIP/releases{/id}","deployments_url":"https://api.github.com/repos/northwestwitch/MIP/deployments","created_at":"2017-10-26T07:18:24Z","updated_at":"2017-10-26T07:18:26Z","pushed_at":"2017-12-11T15:34:13Z","git_url":"git://github.com/northwestwitch/MIP.git","ssh_url":"git@github.com:northwestwitch/MIP.git","clone_url":"https://github.com/northwestwitch/MIP.git","svn_url":"https://github.com/northwestwitch/MIP","homepage":"http://mip-api.readthedocs.org/en/latest/index.html","size":9873,"stargazers_count":0,"watchers_count":0,"language":"Perl","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"Clinical-Genomics:develop","ref":"develop","sha":"de74a3928945f595f69547a2ff1400828aeacff3","user":{"login":"Clinical-Genomics","id":6412433,"avatar_url":"https://avatars1.githubusercontent.com/u/6412433?v=4","gravatar_id":"","url":"https://api.github.com/users/Clinical-Genomics","html_url":"https://github.com/Clinical-Genomics","followers_url":"https://api.github.com/users/Clinical-Genomics/followers","following_url":"https://api.github.com/users/Clinical-Genomics/following{/other_user}","gists_url":"https://api.github.com/users/Clinical-Genomics/gists{/gist_id}","starred_url":"https://api.github.com/users/Clinical-Genomics/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Clinical-Genomics/subscriptions","organizations_url":"https://api.github.com/users/Clinical-Genomics/orgs","repos_url":"https://api.github.com/users/Clinical-Genomics/repos","events_url":"https://api.github.com/users/Clinical-Genomics/events{/privacy}","received_events_url":"https://api.github.com/users/Clinical-Genomics/received_events","type":"Organization","site_admin":false},"repo":{"id":7667877,"name":"MIP","full_name":"Clinical-Genomics/MIP","owner":{"login":"Clinical-Genomics","id":6412433,"avatar_url":"https://avatars1.githubusercontent.com/u/6412433?v=4","gravatar_id":"","url":"https://api.github.com/users/Clinical-Genomics","html_url":"https://github.com/Clinical-Genomics","followers_url":"https://api.github.com/users/Clinical-Genomics/followers","following_url":"https://api.github.com/users/Clinical-Genomics/following{/other_user}","gists_url":"https://api.github.com/users/Clinical-Genomics/gists{/gist_id}","starred_url":"https://api.github.com/users/Clinical-Genomics/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Clinical-Genomics/subscriptions","organizations_url":"https://api.github.com/users/Clinical-Genomics/orgs","repos_url":"https://api.github.com/users/Clinical-Genomics/repos","events_url":"https://api.github.com/users/Clinical-Genomics/events{/privacy}","received_events_url":"https://api.github.com/users/Clinical-Genomics/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Clinical-Genomics/MIP","description":"Mutation Identification Pipeline. Read the latest documentation:","fork":false,"url":"https://api.github.com/repos/Clinical-Genomics/MIP","forks_url":"https://api.github.com/repos/Clinical-Genomics/MIP/forks","keys_url":"https://api.github.com/repos/Clinical-Genomics/MIP/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Clinical-Genomics/MIP/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Clinical-Genomics/MIP/teams","hooks_url":"https://api.github.com/repos/Clinical-Genomics/MIP/hooks","issue_events_url":"https://api.github.com/repos/Clinical-Genomics/MIP/issues/events{/number}","events_url":"https://api.github.com/repos/Clinical-Genomics/MIP/events","assignees_url":"https://api.github.com/repos/Clinical-Genomics/MIP/assignees{/user}","branches_url":"https://api.github.com/repos/Clinical-Genomics/MIP/branches{/branch}","tags_url":"https://api.github.com/repos/Clinical-Genomics/MIP/tags","blobs_url":"https://api.github.com/repos/Clinical-Genomics/MIP/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Clinical-Genomics/MIP/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Clinical-Genomics/MIP/git/refs{/sha}","trees_url":"https://api.github.com/repos/Clinical-Genomics/MIP/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Clinical-Genomics/MIP/statuses/{sha}","languages_url":"https://api.github.com/repos/Clinical-Genomics/MIP/languages","stargazers_url":"https://api.github.com/repos/Clinical-Genomics/MIP/stargazers","contributors_url":"https://api.github.com/repos/Clinical-Genomics/MIP/contributors","subscribers_url":"https://api.github.com/repos/Clinical-Genomics/MIP/subscribers","subscription_url":"https://api.github.com/repos/Clinical-Genomics/MIP/subscription","commits_url":"https://api.github.com/repos/Clinical-Genomics/MIP/commits{/sha}","git_commits_url":"https://api.github.com/repos/Clinical-Genomics/MIP/git/commits{/sha}","comments_url":"https://api.github.com/repos/Clinical-Genomics/MIP/comments{/number}","issue_comment_url":"https://api.github.com/repos/Clinical-Genomics/MIP/issues/comments{/number}","contents_url":"https://api.github.com/repos/Clinical-Genomics/MIP/contents/{+path}","compare_url":"https://api.github.com/repos/Clinical-Genomics/MIP/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Clinical-Genomics/MIP/merges","archive_url":"https://api.github.com/repos/Clinical-Genomics/MIP/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Clinical-Genomics/MIP/downloads","issues_url":"https://api.github.com/repos/Clinical-Genomics/MIP/issues{/number}","pulls_url":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls{/number}","milestones_url":"https://api.github.com/repos/Clinical-Genomics/MIP/milestones{/number}","notifications_url":"https://api.github.com/repos/Clinical-Genomics/MIP/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Clinical-Genomics/MIP/labels{/name}","releases_url":"https://api.github.com/repos/Clinical-Genomics/MIP/releases{/id}","deployments_url":"https://api.github.com/repos/Clinical-Genomics/MIP/deployments","created_at":"2013-01-17T14:45:55Z","updated_at":"2017-09-04T07:50:54Z","pushed_at":"2017-12-11T13:00:37Z","git_url":"git://github.com/Clinical-Genomics/MIP.git","ssh_url":"git@github.com:Clinical-Genomics/MIP.git","clone_url":"https://github.com/Clinical-Genomics/MIP.git","svn_url":"https://github.com/Clinical-Genomics/MIP","homepage":"http://mip-api.readthedocs.org/en/latest/index.html","size":9835,"stargazers_count":8,"watchers_count":8,"language":"Perl","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":5,"mirror_url":null,"archived":false,"open_issues_count":18,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":5,"open_issues":18,"watchers":8,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/277"},"html":{"href":"https://github.com/Clinical-Genomics/MIP/pull/277"},"issue":{"href":"https://api.github.com/repos/Clinical-Genomics/MIP/issues/277"},"comments":{"href":"https://api.github.com/repos/Clinical-Genomics/MIP/issues/277/comments"},"review_comments":{"href":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/277/comments"},"review_comment":{"href":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Clinical-Genomics/MIP/pulls/277/commits"},"statuses":{"href":"https://api.github.com/repos/Clinical-Genomics/MIP/statuses/9b47a05d5661a33fa620c034936d8d648983a6e4"}},"author_association":"NONE"}}
{"actor":{"display_login":"henrikstranneheim"}}