Skip to content

Commit

Permalink
Update versions and add default_signalling
Browse files Browse the repository at this point in the history
  • Loading branch information
horta committed Feb 12, 2024
1 parent 7b171dc commit e2464e2
Show file tree
Hide file tree
Showing 5 changed files with 54 additions and 29 deletions.
2 changes: 1 addition & 1 deletion c-core/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.20.2 FATAL_ERROR)
project(deciphon VERSION 0.15.9 LANGUAGES C)
project(deciphon VERSION 0.15.10 LANGUAGES C)

include(cmake/warnings.cmake)
include(cmake/sanitizers.cmake)
Expand Down
50 changes: 25 additions & 25 deletions c-core/viterbi.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,40 +33,40 @@ typedef float f32;
#define STEP_LANE_OFFSET 24
#define STEP_DATA_OFFSET 0

#define STEP_NAME_MASK 0xF0000000
#define STEP_LANE_MASK 0x0F000000
#define STEP_DATA_MASK 0x00FFFFFF
#define STEP_NAME_MASK 0xF0000000u
#define STEP_LANE_MASK 0x0F000000u
#define STEP_DATA_MASK 0x00FFFFFFu

#define STEP_SN (0x1 << STEP_NAME_OFFSET)
#define STEP_NN (0x2 << STEP_NAME_OFFSET)
#define STEP_SN (0x1u << STEP_NAME_OFFSET)
#define STEP_NN (0x2u << STEP_NAME_OFFSET)

#define STEP_SB (0x1 << STEP_NAME_OFFSET)
#define STEP_NB (0x2 << STEP_NAME_OFFSET)
#define STEP_EB (0x4 << STEP_NAME_OFFSET)
#define STEP_JB (0x8 << STEP_NAME_OFFSET)
#define STEP_SB (0x1u << STEP_NAME_OFFSET)
#define STEP_NB (0x2u << STEP_NAME_OFFSET)
#define STEP_EB (0x4u << STEP_NAME_OFFSET)
#define STEP_JB (0x8u << STEP_NAME_OFFSET)

#define STEP_EJ (0x1 << STEP_NAME_OFFSET)
#define STEP_JJ (0x2 << STEP_NAME_OFFSET)
#define STEP_EJ (0x1u << STEP_NAME_OFFSET)
#define STEP_JJ (0x2u << STEP_NAME_OFFSET)

#define STEP_EC (0x1 << STEP_NAME_OFFSET)
#define STEP_CC (0x2 << STEP_NAME_OFFSET)
#define STEP_EC (0x1u << STEP_NAME_OFFSET)
#define STEP_CC (0x2u << STEP_NAME_OFFSET)

#define STEP_ET (0x1 << STEP_NAME_OFFSET)
#define STEP_CT (0x2 << STEP_NAME_OFFSET)
#define STEP_ET (0x1u << STEP_NAME_OFFSET)
#define STEP_CT (0x2u << STEP_NAME_OFFSET)

#define STEP_BM (0x1 << STEP_NAME_OFFSET)
#define STEP_MM (0x2 << STEP_NAME_OFFSET)
#define STEP_IM (0x4 << STEP_NAME_OFFSET)
#define STEP_DM (0x8 << STEP_NAME_OFFSET)
#define STEP_BM (0x1u << STEP_NAME_OFFSET)
#define STEP_MM (0x2u << STEP_NAME_OFFSET)
#define STEP_IM (0x4u << STEP_NAME_OFFSET)
#define STEP_DM (0x8u << STEP_NAME_OFFSET)

#define STEP_MI (0x1 << STEP_NAME_OFFSET)
#define STEP_II (0x2 << STEP_NAME_OFFSET)
#define STEP_MI (0x1u << STEP_NAME_OFFSET)
#define STEP_II (0x2u << STEP_NAME_OFFSET)

#define STEP_MD (0x1 << STEP_NAME_OFFSET)
#define STEP_DD (0x2 << STEP_NAME_OFFSET)
#define STEP_MD (0x1u << STEP_NAME_OFFSET)
#define STEP_DD (0x2u << STEP_NAME_OFFSET)

#define STEP_ME (0x1 << STEP_NAME_OFFSET)
#define STEP_DE (0x2 << STEP_NAME_OFFSET)
#define STEP_ME (0x1u << STEP_NAME_OFFSET)
#define STEP_DE (0x2u << STEP_NAME_OFFSET)

INLINE u32 step(u32 n, int x)
{
Expand Down
4 changes: 3 additions & 1 deletion cli/deciphon/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
from typer import Argument, BadParameter, Exit, Option, Typer, echo

from deciphon.catch_validation import catch_validation
from deciphon.default_signalling import default_signalling
from deciphon.gencode import gencodes
from deciphon.h3daemon import H3Daemon
from deciphon.hmmer_press import hmmer_press
Expand Down Expand Up @@ -131,7 +132,8 @@ def scan(
scan.dial(daemon.port)
for seq in sequences:
scan.add(seq)
scan.run(snap)
with default_signalling():
scan.run(snap)
if scan.interrupted():
raise Exit(1)
echo("Scan has finished successfully and " f"results stored in '{snap.path}'.")
Expand Down
23 changes: 23 additions & 0 deletions cli/deciphon/default_signalling.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
from __future__ import annotations

import signal
from signal import SIGINT, SIGTERM, Signals, SIG_DFL
from typing import List

__all__ = ["default_signalling"]


class default_signalling:
def __init__(self, signals: List[Signals] = [SIGTERM, SIGINT]):
self._signals = signals
self._handlers: List[signal._HANDLER] = []

def __enter__(self):
for x in self._signals:
self._handlers.append(signal.getsignal(x))
signal.signal(x, SIG_DFL)
return self

def __exit__(self, *_):
for x, y in zip(self._signals, self._handlers):
signal.signal(x, y)
4 changes: 2 additions & 2 deletions cli/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "deciphon"
version = "0.11.4"
version = "0.11.5"
description = "Individually annotate long, error-prone nucleotide sequences into proteins"
authors = ["Danilo Horta <[email protected]>"]
license = "MIT"
Expand All @@ -10,7 +10,7 @@ packages = [{ include = "deciphon" }]
[tool.poetry.dependencies]
python = "^3.9"
cffi = "^1.15.1"
deciphon-core = ">=0.20.12"
deciphon-core = ">=0.20.14"
deciphon-snap = ">=0.8.2"
fasta-reader = "^3"
h3daemon = ">=0.13.8"
Expand Down

0 comments on commit e2464e2

Please sign in to comment.